TSTP Solution File: SYO299^5 by cocATP---0.2.0
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : cocATP---0.2.0
% Problem : SYO299^5 : TPTP v7.5.0. Released v4.0.0.
% Transfm : none
% Format : tptp:raw
% Command : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% Computer : n005.cluster.edu
% Model : x86_64 x86_64
% CPU : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory : 8042.1875MB
% OS : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit : 0s
% DateTime : Tue Mar 29 00:51:06 EDT 2022
% Result : Timeout 286.34s 286.75s
% Output : None
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----No solution output by system
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.03/0.11 % Problem : SYO299^5 : TPTP v7.5.0. Released v4.0.0.
% 0.03/0.11 % Command : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% 0.12/0.32 % Computer : n005.cluster.edu
% 0.12/0.32 % Model : x86_64 x86_64
% 0.12/0.32 % CPUModel : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.32 % RAMPerCPU : 8042.1875MB
% 0.12/0.32 % OS : Linux 3.10.0-693.el7.x86_64
% 0.12/0.32 % CPULimit : 300
% 0.12/0.32 % DateTime : Sat Mar 12 01:52:42 EST 2022
% 0.12/0.32 % CPUTime :
% 0.12/0.33 ModuleCmd_Load.c(213):ERROR:105: Unable to locate a modulefile for 'python/python27'
% 0.12/0.33 Python 2.7.5
% 2.88/3.12 Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox/benchmark/', '/export/starexec/sandbox/benchmark/']
% 2.88/3.12 FOF formula (forall (P:Prop) (Q:Prop) (R:Prop), ((ex Prop) (fun (S:Prop)=> (((iff ((iff P) Q)) R)->((iff P) ((iff Q) S)))))) of role conjecture named cTHM51
% 2.88/3.12 Conjecture to prove = (forall (P:Prop) (Q:Prop) (R:Prop), ((ex Prop) (fun (S:Prop)=> (((iff ((iff P) Q)) R)->((iff P) ((iff Q) S)))))):Prop
% 2.88/3.12 We need to prove ['(forall (P:Prop) (Q:Prop) (R:Prop), ((ex Prop) (fun (S:Prop)=> (((iff ((iff P) Q)) R)->((iff P) ((iff Q) S))))))']
% 2.88/3.12 Trying to prove (forall (P:Prop) (Q:Prop) (R:Prop), ((ex Prop) (fun (S:Prop)=> (((iff ((iff P) Q)) R)->((iff P) ((iff Q) S))))))
% 2.88/3.12 Found x000:=(x00 x010):R
% 2.88/3.12 Found (x00 x010) as proof of R
% 2.88/3.12 Found (x00 x010) as proof of R
% 2.88/3.12 Found x010:=(x01 x000):((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found x010:=(x01 x000):((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x00:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x00:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 2.88/3.12 Found x000:=(x00 x010):R
% 2.88/3.12 Found (x00 x010) as proof of R
% 2.88/3.12 Found (x00 x010) as proof of R
% 2.88/3.12 Found x010:=(x01 x000):((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found x000:=(x00 x010):R
% 2.88/3.12 Found (x00 x010) as proof of R
% 2.88/3.12 Found (x00 x010) as proof of R
% 2.88/3.12 Found x010:=(x01 x000):((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 2.88/3.12 Found x010:=(x01 x000):((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x00:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x00:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 2.88/3.12 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 2.88/3.12 Found x000:=(x00 x010):R
% 2.88/3.12 Found (x00 x010) as proof of R
% 2.88/3.12 Found (x00 x010) as proof of R
% 2.88/3.12 Found x010:=(x01 x000):((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found x010:=(x01 x000):((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found (x01 x000) as proof of ((iff P) Q)
% 2.88/3.12 Found x010:=(x01 x000):((iff P) Q)
% 2.88/3.12 Found x010 as proof of ((iff P) Q)
% 2.88/3.12 Found x010:=(x01 x000):((iff P) Q)
% 2.88/3.12 Found x010 as proof of ((iff P) Q)
% 2.88/3.12 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 2.88/3.12 Found x010:=(x01 x000):((iff P) Q)
% 2.88/3.12 Found x010 as proof of ((iff P) Q)
% 2.88/3.12 Found x010:=(x01 x000):((iff P) Q)
% 2.88/3.12 Found x010 as proof of ((iff P) Q)
% 2.88/3.12 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 2.88/3.12 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (iff_refl Q) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 2.88/3.12 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 2.88/3.12 Found x010:=(x01 x000):((iff P) Q)
% 2.88/3.12 Found x010 as proof of ((iff P) Q)
% 2.88/3.12 Found x010:=(x01 x000):((iff P) Q)
% 2.88/3.12 Found x010 as proof of ((iff P) Q)
% 2.88/3.12 Found x000:=(x00 x011):R
% 2.88/3.12 Found (x00 x011) as proof of R
% 2.88/3.12 Found (x00 x011) as proof of R
% 6.33/6.52 Found x010:=(x01 x001):((iff P) Q)
% 6.33/6.52 Found (x01 x001) as proof of ((iff P) Q)
% 6.33/6.52 Found (x01 x001) as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x001):((iff P) Q)
% 6.33/6.52 Found (x01 x001) as proof of ((iff P) Q)
% 6.33/6.52 Found (x01 x001) as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 6.33/6.52 Instantiate: x:=(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P))):Prop
% 6.33/6.52 Found ex_ind as proof of x
% 6.33/6.52 Found x010:x
% 6.33/6.52 Instantiate: x:=P:Prop
% 6.33/6.52 Found x010 as proof of P
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found x010:x
% 6.33/6.52 Instantiate: x:=P:Prop
% 6.33/6.52 Found (fun (x02:(x->Q))=> x010) as proof of P
% 6.33/6.52 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x020):x
% 6.33/6.52 Instantiate: x:=P:Prop
% 6.33/6.52 Found (x01 x020) as proof of P
% 6.33/6.52 Found (x01 x020) as proof of P
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found x000:=(x00 x011):R
% 6.33/6.52 Found (x00 x011) as proof of R
% 6.33/6.52 Found (x00 x011) as proof of R
% 6.33/6.52 Found x010:=(x01 x001):((iff P) Q)
% 6.33/6.52 Found (x01 x001) as proof of ((iff P) Q)
% 6.33/6.52 Found (x01 x001) as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x001):((iff P) Q)
% 6.33/6.52 Found (x01 x001) as proof of ((iff P) Q)
% 6.33/6.52 Found (x01 x001) as proof of ((iff P) Q)
% 6.33/6.52 Found relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 6.33/6.52 Instantiate: x:=(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y)))))))))):Prop
% 6.33/6.52 Found relational_choice as proof of x
% 6.33/6.52 Found (x02 relational_choice) as proof of Q
% 6.33/6.52 Found (x02 relational_choice) as proof of Q
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x020):x
% 6.33/6.52 Found (x01 x020) as proof of P
% 6.33/6.52 Found (x01 x020) as proof of P
% 6.33/6.52 Found (x01 x020) as proof of P
% 6.33/6.52 Found x000:=(x00 x011):R
% 6.33/6.52 Found (x00 x011) as proof of R
% 6.33/6.52 Found (x00 x011) as proof of R
% 6.33/6.52 Found x010:=(x01 x001):((iff P) Q)
% 6.33/6.52 Found (x01 x001) as proof of ((iff P) Q)
% 6.33/6.52 Found (x01 x001) as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x001):((iff P) Q)
% 6.33/6.52 Found (x01 x001) as proof of ((iff P) Q)
% 6.33/6.52 Found (x01 x001) as proof of ((iff P) Q)
% 6.33/6.52 Found x000:=(x00 x010):R
% 6.33/6.52 Found (x00 x010) as proof of R
% 6.33/6.52 Found (x00 x010) as proof of R
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 6.33/6.52 Found x010 as proof of ((iff P) Q)
% 6.33/6.52 Found x020:Q
% 6.33/6.52 Found x020 as proof of Q
% 6.33/6.52 Found (x01 x020) as proof of P
% 6.33/6.52 Found (x01 x020) as proof of P
% 6.33/6.52 Found (x01 x020) as proof of P
% 6.33/6.52 Found x010:x
% 6.33/6.52 Instantiate: x:=P:Prop
% 6.33/6.52 Found x010 as proof of P
% 6.33/6.52 Found relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 6.33/6.52 Instantiate: x:=(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y)))))))))):Prop
% 6.33/6.52 Found relational_choice as proof of x
% 6.33/6.52 Found x010:=(x01 x000):((iff P) Q)
% 9.03/9.22 Found x010 as proof of ((iff P) Q)
% 9.03/9.22 Found x030:x
% 9.03/9.22 Instantiate: x:=P:Prop
% 9.03/9.22 Found x030 as proof of P
% 9.03/9.22 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 9.03/9.22 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 9.03/9.22 Found iff_sym as proof of x
% 9.03/9.22 Found x010:=(x01 x000):((iff P) Q)
% 9.03/9.22 Found x010 as proof of ((iff P) Q)
% 9.03/9.22 Found x030:x
% 9.03/9.22 Instantiate: x:=P:Prop
% 9.03/9.22 Found x030 as proof of P
% 9.03/9.22 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 9.03/9.22 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 9.03/9.22 Found iff_sym as proof of x
% 9.03/9.22 Found x000:=(x00 x011):R
% 9.03/9.22 Found (x00 x011) as proof of R
% 9.03/9.22 Found (x00 x011) as proof of R
% 9.03/9.22 Found x010:=(x01 x001):((iff P) Q)
% 9.03/9.22 Found (x01 x001) as proof of ((iff P) Q)
% 9.03/9.22 Found (x01 x001) as proof of ((iff P) Q)
% 9.03/9.22 Found x000:=(x00 x011):R
% 9.03/9.22 Found (x00 x011) as proof of R
% 9.03/9.22 Found (x00 x011) as proof of R
% 9.03/9.22 Found x010:=(x01 x000):((iff P) Q)
% 9.03/9.22 Found (x01 x000) as proof of ((iff P) Q)
% 9.03/9.22 Found (x01 x000) as proof of ((iff P) Q)
% 9.03/9.22 Found x010:x
% 9.03/9.22 Instantiate: x:=P:Prop
% 9.03/9.22 Found (fun (x02:(x->Q))=> x010) as proof of P
% 9.03/9.22 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 9.03/9.22 Found x000:=(x00 x010):R
% 9.03/9.22 Found (x00 x010) as proof of R
% 9.03/9.22 Found (x00 x010) as proof of R
% 9.03/9.22 Found x030:x
% 9.03/9.22 Instantiate: x:=P:Prop
% 9.03/9.22 Found (fun (x04:(x->Q))=> x030) as proof of P
% 9.03/9.22 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 9.03/9.22 Found x010:=(x01 x000):((iff P) Q)
% 9.03/9.22 Found x010 as proof of ((iff P) Q)
% 9.03/9.22 Found x030:x
% 9.03/9.22 Instantiate: x:=P:Prop
% 9.03/9.22 Found (fun (x04:(x->Q))=> x030) as proof of P
% 9.03/9.22 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 9.03/9.22 Found x010:=(x01 x001):((iff P) Q)
% 9.03/9.22 Found (x01 x001) as proof of ((iff P) Q)
% 9.03/9.22 Found (x01 x001) as proof of ((iff P) Q)
% 9.03/9.22 Found x010:=(x01 x000):((iff P) Q)
% 9.03/9.22 Found (x01 x000) as proof of ((iff P) Q)
% 9.03/9.22 Found (x01 x000) as proof of ((iff P) Q)
% 9.03/9.22 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 9.03/9.22 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 9.03/9.22 Found iff_sym as proof of x
% 9.03/9.22 Found x010:x
% 9.03/9.22 Instantiate: x:=((((iff P) Q)->R)->((R->((iff P) Q))->P)):Prop
% 9.03/9.22 Found x010 as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 9.03/9.22 Found x010:=(x01 x020):x
% 9.03/9.22 Instantiate: x:=P:Prop
% 9.03/9.22 Found (x01 x020) as proof of P
% 9.03/9.22 Found (x01 x020) as proof of P
% 9.03/9.22 Found x030:=(x03 x040):x
% 9.03/9.22 Instantiate: x:=P:Prop
% 9.03/9.22 Found (x03 x040) as proof of P
% 9.03/9.22 Found (x03 x040) as proof of P
% 9.03/9.22 Found x1:(((iff P) Q)->R)
% 9.03/9.22 Instantiate: x:=(((iff P) Q)->R):Prop
% 9.03/9.22 Found x1 as proof of x
% 9.03/9.22 Found x010:x
% 9.03/9.22 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 9.03/9.22 Found x010 as proof of ((R->((iff P) Q))->P)
% 9.03/9.22 Found x010:=(x01 x000):((iff P) Q)
% 9.03/9.22 Found x010 as proof of ((iff P) Q)
% 9.03/9.22 Found x030:=(x03 x040):x
% 9.03/9.22 Instantiate: x:=P:Prop
% 9.03/9.22 Found (x03 x040) as proof of P
% 9.03/9.22 Found (x03 x040) as proof of P
% 9.03/9.22 Found x000:=(x00 x010):R
% 9.03/9.22 Found (x00 x010) as proof of R
% 9.03/9.22 Found (x00 x010) as proof of R
% 9.03/9.22 Found x010:=(x01 x001):((iff P) Q)
% 9.03/9.22 Found x010 as proof of ((iff P) Q)
% 9.03/9.22 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 9.03/9.22 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 9.03/9.22 Found iff_sym as proof of x
% 9.03/9.22 Found (x02 iff_sym) as proof of Q
% 9.03/9.22 Found (x02 iff_sym) as proof of Q
% 9.03/9.22 Found x010:=(x01 x000):((iff P) Q)
% 9.03/9.22 Found x010 as proof of ((iff P) Q)
% 9.03/9.22 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 9.03/9.22 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 9.03/9.22 Found iff_sym as proof of x
% 9.03/9.22 Found x010:x
% 9.03/9.22 Instantiate: x:=P:Prop
% 9.03/9.22 Found x010 as proof of P
% 9.03/9.22 Found x02:((iff Q) x)
% 9.03/9.22 Instantiate: x:=P:Prop
% 9.03/9.22 Found x02 as proof of ((iff Q) P)
% 10.22/10.39 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 10.22/10.39 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 10.22/10.39 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 10.22/10.39 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 10.22/10.39 Found x010:x
% 10.22/10.39 Instantiate: x:=P:Prop
% 10.22/10.39 Found x010 as proof of P
% 10.22/10.39 Found x2:(R->((iff P) Q))
% 10.22/10.39 Instantiate: x:=(R->((iff P) Q)):Prop
% 10.22/10.39 Found x2 as proof of x
% 10.22/10.39 Found x02:((iff Q) x)
% 10.22/10.39 Instantiate: x:=P:Prop
% 10.22/10.39 Found x02 as proof of ((iff Q) P)
% 10.22/10.39 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 10.22/10.39 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 10.22/10.39 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 10.22/10.39 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 10.22/10.39 Found x010:=(x01 x020):x
% 10.22/10.39 Instantiate: x:=((((iff P) Q)->R)->((R->((iff P) Q))->P)):Prop
% 10.22/10.39 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 10.22/10.39 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 10.22/10.39 Found x010:=(x01 x020):x
% 10.22/10.39 Found (x01 x020) as proof of P
% 10.22/10.39 Found (x01 x020) as proof of P
% 10.22/10.39 Found (x01 x020) as proof of P
% 10.22/10.39 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 10.22/10.39 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 10.22/10.39 Found eta_expansion as proof of x
% 10.22/10.39 Found (x04 eta_expansion) as proof of Q
% 10.22/10.39 Found (x04 eta_expansion) as proof of Q
% 10.22/10.39 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 10.22/10.39 Found (iff_refl Q) as proof of ((iff Q) x)
% 10.22/10.39 Found (iff_refl Q) as proof of ((iff Q) x)
% 10.22/10.39 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 10.22/10.39 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 10.22/10.39 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 10.22/10.39 Found (iff_refl Q) as proof of ((iff Q) x)
% 10.22/10.39 Found (iff_refl Q) as proof of ((iff Q) x)
% 10.22/10.39 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 10.22/10.39 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 10.22/10.39 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 10.22/10.39 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 10.22/10.39 Found eta_expansion as proof of x
% 10.22/10.39 Found (x04 eta_expansion) as proof of Q
% 10.22/10.39 Found (x04 eta_expansion) as proof of Q
% 10.22/10.39 Found x010:=(x01 x001):((iff P) Q)
% 10.22/10.39 Found x010 as proof of ((iff P) Q)
% 10.22/10.39 Found x010:=(x01 x001):((iff P) Q)
% 10.22/10.39 Found (x01 x001) as proof of ((iff P) Q)
% 10.22/10.39 Found (x01 x001) as proof of ((iff P) Q)
% 10.22/10.39 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 10.22/10.39 Found (iff_refl Q) as proof of ((iff Q) x)
% 10.22/10.39 Found (iff_refl Q) as proof of ((iff Q) x)
% 10.22/10.39 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 10.22/10.39 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 10.22/10.39 Found x00:((iff Q) x)
% 10.22/10.39 Instantiate: x:=P:Prop
% 10.22/10.39 Found x00 as proof of ((iff Q) P)
% 10.22/10.39 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 10.22/10.39 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 10.22/10.39 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 10.22/10.39 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 10.22/10.39 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 10.22/10.39 Found (iff_refl Q) as proof of ((iff Q) x)
% 10.22/10.39 Found (iff_refl Q) as proof of ((iff Q) x)
% 10.22/10.39 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 10.22/10.39 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 10.22/10.39 Found x030:=(x03 x040):x
% 10.22/10.39 Found (x03 x040) as proof of P
% 10.22/10.39 Found (x03 x040) as proof of P
% 10.22/10.39 Found (x03 x040) as proof of P
% 10.22/10.39 Found x010:x
% 10.22/10.39 Instantiate: x:=P:Prop
% 10.22/10.39 Found (fun (x02:(x->Q))=> x010) as proof of P
% 10.22/10.39 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 10.22/10.39 Found x010:=(x01 x000):((iff P) Q)
% 10.22/10.39 Found x010 as proof of ((iff P) Q)
% 10.22/10.39 Found x010:=(x01 x000):((iff P) Q)
% 10.22/10.39 Found x010 as proof of ((iff P) Q)
% 10.22/10.39 Found x030:=(x03 x040):x
% 10.22/10.39 Found (x03 x040) as proof of P
% 10.22/10.39 Found (x03 x040) as proof of P
% 10.22/10.39 Found (x03 x040) as proof of P
% 10.22/10.39 Found x010:=(x01 x020):x
% 10.22/10.39 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 10.22/10.39 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 10.22/10.39 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 10.22/10.39 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 10.22/10.39 Found (iff_refl Q) as proof of ((iff Q) x)
% 10.22/10.39 Found (iff_refl Q) as proof of ((iff Q) x)
% 10.22/10.39 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 10.22/10.39 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 12.46/12.62 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 12.46/12.62 Found (iff_refl Q) as proof of ((iff Q) x)
% 12.46/12.62 Found (iff_refl Q) as proof of ((iff Q) x)
% 12.46/12.62 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 12.46/12.62 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 12.46/12.62 Found x010:=(x01 x001):((iff P) Q)
% 12.46/12.62 Found x010 as proof of ((iff P) Q)
% 12.46/12.62 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 12.46/12.62 Found (iff_refl Q) as proof of ((iff Q) x)
% 12.46/12.62 Found (iff_refl Q) as proof of ((iff Q) x)
% 12.46/12.62 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 12.46/12.62 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 12.46/12.62 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 12.46/12.62 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 12.46/12.62 Found iff_sym as proof of x
% 12.46/12.62 Found (x02 iff_sym) as proof of Q
% 12.46/12.62 Found (x02 iff_sym) as proof of Q
% 12.46/12.62 Found x00:((iff Q) x)
% 12.46/12.62 Instantiate: x:=P:Prop
% 12.46/12.62 Found x00 as proof of ((iff Q) P)
% 12.46/12.62 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 12.46/12.62 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 12.46/12.62 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 12.46/12.62 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 12.46/12.62 Found x010:=(x01 x000):((iff P) Q)
% 12.46/12.62 Found x010 as proof of ((iff P) Q)
% 12.46/12.62 Found x010:=(x01 x000):((iff P) Q)
% 12.46/12.62 Found x010 as proof of ((iff P) Q)
% 12.46/12.62 Found x020:Q
% 12.46/12.62 Found x020 as proof of Q
% 12.46/12.62 Found (x01 x020) as proof of P
% 12.46/12.62 Found (x01 x020) as proof of P
% 12.46/12.62 Found (x01 x020) as proof of P
% 12.46/12.62 Found x010:=(x01 x020):x
% 12.46/12.62 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 12.46/12.62 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 12.46/12.62 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 12.46/12.62 Found x010:=(x01 x020):x
% 12.46/12.62 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 12.46/12.62 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 12.46/12.62 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 12.46/12.62 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 12.46/12.62 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 12.46/12.62 Found (iff_refl Q) as proof of ((iff Q) x)
% 12.46/12.62 Found (iff_refl Q) as proof of ((iff Q) x)
% 12.46/12.62 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 12.46/12.62 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 12.46/12.62 Found x040:Q
% 12.46/12.62 Found x040 as proof of Q
% 12.46/12.62 Found (x03 x040) as proof of P
% 12.46/12.62 Found (x03 x040) as proof of P
% 12.46/12.62 Found (x03 x040) as proof of P
% 12.46/12.62 Found x010:=(x01 x020):x
% 12.46/12.62 Instantiate: x:=P:Prop
% 12.46/12.62 Found (x01 x020) as proof of P
% 12.46/12.62 Found (x01 x020) as proof of P
% 12.46/12.62 Found x010:=(x01 x020):x
% 12.46/12.62 Instantiate: x:=P:Prop
% 12.46/12.62 Found (x01 x020) as proof of P
% 12.46/12.62 Found (x01 x020) as proof of P
% 12.46/12.62 Found x010:=(x01 x001):((iff P) Q)
% 12.46/12.62 Found x010 as proof of ((iff P) Q)
% 12.46/12.62 Found x040:Q
% 12.46/12.62 Found x040 as proof of Q
% 12.46/12.62 Found (x03 x040) as proof of P
% 12.46/12.62 Found (x03 x040) as proof of P
% 12.46/12.62 Found (x03 x040) as proof of P
% 12.46/12.62 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 12.46/12.62 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 12.46/12.62 Found iff_refl as proof of x
% 12.46/12.62 Found (x02 iff_refl) as proof of Q
% 12.46/12.62 Found (x02 iff_refl) as proof of Q
% 12.46/12.62 Found x010:=(x01 x000):((iff P) Q)
% 12.46/12.62 Found x010 as proof of ((iff P) Q)
% 12.46/12.62 Found x010:=(x01 x000):((iff P) Q)
% 12.46/12.62 Found x010 as proof of ((iff P) Q)
% 12.46/12.62 Found x010:=(x01 x000):((iff P) Q)
% 12.46/12.62 Found x010 as proof of ((iff P) Q)
% 12.46/12.62 Found x030:x
% 12.46/12.62 Instantiate: x:=P:Prop
% 12.46/12.62 Found x030 as proof of P
% 12.46/12.62 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 12.46/12.62 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 12.46/12.62 Found eta_expansion as proof of x
% 12.46/12.62 Found x010:=(x01 x020):x
% 12.46/12.62 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 12.46/12.62 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 12.46/12.62 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 12.46/12.62 Found x010:=(x01 x020):x
% 12.46/12.62 Instantiate: x:=P:Prop
% 12.46/12.62 Found (x01 x020) as proof of P
% 12.46/12.62 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 12.46/12.62 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 13.80/13.99 Found x010:=(x01 x001):((iff P) Q)
% 13.80/13.99 Found x010 as proof of ((iff P) Q)
% 13.80/13.99 Found x020:Q
% 13.80/13.99 Found x020 as proof of Q
% 13.80/13.99 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 13.80/13.99 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 13.80/13.99 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 13.80/13.99 Found x010:=(x01 x000):((iff P) Q)
% 13.80/13.99 Found x010 as proof of ((iff P) Q)
% 13.80/13.99 Found x02:((iff Q) x)
% 13.80/13.99 Instantiate: x:=P:Prop
% 13.80/13.99 Found x02 as proof of ((iff Q) P)
% 13.80/13.99 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 13.80/13.99 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 13.80/13.99 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 13.80/13.99 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 13.80/13.99 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 13.80/13.99 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 13.80/13.99 Found x010:=(x01 x000):((iff P) Q)
% 13.80/13.99 Found x010 as proof of ((iff P) Q)
% 13.80/13.99 Found x010:=(x01 x000):((iff P) Q)
% 13.80/13.99 Found x010 as proof of ((iff P) Q)
% 13.80/13.99 Found x1:(((iff P) Q)->R)
% 13.80/13.99 Instantiate: x:=(((iff P) Q)->R):Prop
% 13.80/13.99 Found x1 as proof of x
% 13.80/13.99 Found (x02 x1) as proof of Q
% 13.80/13.99 Found (x02 x1) as proof of Q
% 13.80/13.99 Found x1:(((iff P) Q)->R)
% 13.80/13.99 Instantiate: x:=(((iff P) Q)->R):Prop
% 13.80/13.99 Found x1 as proof of x
% 13.80/13.99 Found (x02 x1) as proof of Q
% 13.80/13.99 Found (x02 x1) as proof of Q
% 13.80/13.99 Found x030:x
% 13.80/13.99 Instantiate: x:=P:Prop
% 13.80/13.99 Found (fun (x04:(x->Q))=> x030) as proof of P
% 13.80/13.99 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 13.80/13.99 Found x02:((iff Q) x)
% 13.80/13.99 Instantiate: x:=P:Prop
% 13.80/13.99 Found x02 as proof of ((iff Q) P)
% 13.80/13.99 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 13.80/13.99 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 13.80/13.99 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 13.80/13.99 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 13.80/13.99 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 13.80/13.99 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 13.80/13.99 Found x02:(x->Q)
% 13.80/13.99 Instantiate: x:=(R->((iff P) Q)):Prop
% 13.80/13.99 Found (fun (x1:(((iff P) Q)->R))=> x02) as proof of ((R->((iff P) Q))->Q)
% 13.80/13.99 Found (fun (x1:(((iff P) Q)->R))=> x02) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->Q))
% 13.80/13.99 Found (and_rect10 (fun (x1:(((iff P) Q)->R))=> x02)) as proof of Q
% 13.80/13.99 Found ((and_rect1 Q) (fun (x1:(((iff P) Q)->R))=> x02)) as proof of Q
% 13.80/13.99 Found (((fun (P0:Type) (x1:((((iff P) Q)->R)->((R->((iff P) Q))->P0)))=> (((((and_rect (((iff P) Q)->R)) (R->((iff P) Q))) P0) x1) x0)) Q) (fun (x1:(((iff P) Q)->R))=> x02)) as proof of Q
% 13.80/13.99 Found (((fun (P0:Type) (x1:((((iff P) Q)->R)->((R->((iff P) Q))->P0)))=> (((((and_rect (((iff P) Q)->R)) (R->((iff P) Q))) P0) x1) x0)) Q) (fun (x1:(((iff P) Q)->R))=> x02)) as proof of Q
% 13.80/13.99 Found x010:=(x01 x020):x
% 13.80/13.99 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 13.80/13.99 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 13.80/13.99 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 13.80/13.99 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 13.80/13.99 Found x010:=(x01 x020):x
% 13.80/13.99 Instantiate: x:=P:Prop
% 13.80/13.99 Found (x01 x020) as proof of P
% 13.80/13.99 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 13.80/13.99 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 13.80/13.99 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 13.80/13.99 Found x030:x
% 13.80/13.99 Instantiate: x:=P:Prop
% 13.80/13.99 Found x030 as proof of P
% 13.80/13.99 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 13.80/13.99 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 13.80/13.99 Found eta_expansion as proof of x
% 13.80/13.99 Found x010:=(x01 x020):x
% 13.80/13.99 Found (x01 x020) as proof of P
% 13.80/13.99 Found (x01 x020) as proof of P
% 13.80/13.99 Found (x01 x020) as proof of P
% 13.80/13.99 Found x010:=(x01 x020):x
% 13.80/13.99 Found (x01 x020) as proof of P
% 13.80/13.99 Found (x01 x020) as proof of P
% 13.80/13.99 Found (x01 x020) as proof of P
% 13.80/13.99 Found x010:=(x01 x001):((iff P) Q)
% 13.80/13.99 Found x010 as proof of ((iff P) Q)
% 13.80/13.99 Found x02:((iff Q) x)
% 13.80/13.99 Instantiate: x:=P:Prop
% 13.80/13.99 Found x02 as proof of ((iff Q) P)
% 13.80/13.99 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 13.80/13.99 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 13.80/13.99 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 13.80/13.99 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 13.80/13.99 Found x030:x
% 15.26/15.45 Instantiate: x:=P:Prop
% 15.26/15.45 Found x030 as proof of P
% 15.26/15.45 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 15.26/15.45 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 15.26/15.45 Found eta_expansion as proof of x
% 15.26/15.45 Found x000:=(x00 x012):R
% 15.26/15.45 Found (x00 x012) as proof of R
% 15.26/15.45 Found (x00 x012) as proof of R
% 15.26/15.45 Found x010:=(x01 x000):((iff P) Q)
% 15.26/15.45 Found x010 as proof of ((iff P) Q)
% 15.26/15.45 Found x010:=(x01 x020):x
% 15.26/15.45 Instantiate: x:=((((iff P) Q)->R)->((R->((iff P) Q))->P)):Prop
% 15.26/15.45 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 15.26/15.45 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 15.26/15.45 Found (and_rect10 (x01 x020)) as proof of P
% 15.26/15.45 Found ((and_rect1 P) (x01 x020)) as proof of P
% 15.26/15.45 Found (((fun (P0:Type) (x1:((((iff P) Q)->R)->((R->((iff P) Q))->P0)))=> (((((and_rect (((iff P) Q)->R)) (R->((iff P) Q))) P0) x1) x0)) P) (x01 x020)) as proof of P
% 15.26/15.45 Found (((fun (P0:Type) (x1:((((iff P) Q)->R)->((R->((iff P) Q))->P0)))=> (((((and_rect (((iff P) Q)->R)) (R->((iff P) Q))) P0) x1) x0)) P) (x01 x020)) as proof of P
% 15.26/15.45 Found x010:=(x01 x002):((iff P) Q)
% 15.26/15.45 Found (x01 x002) as proof of ((iff P) Q)
% 15.26/15.45 Found (x01 x002) as proof of ((iff P) Q)
% 15.26/15.45 Found x010:=(x01 x000):((iff P) Q)
% 15.26/15.45 Found x010 as proof of ((iff P) Q)
% 15.26/15.45 Found x020:Q
% 15.26/15.45 Found x020 as proof of Q
% 15.26/15.45 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 15.26/15.45 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 15.26/15.45 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 15.26/15.45 Found x02:((iff Q) x)
% 15.26/15.45 Instantiate: x:=P:Prop
% 15.26/15.45 Found x02 as proof of ((iff Q) P)
% 15.26/15.45 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 15.26/15.45 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 15.26/15.45 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 15.26/15.45 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 15.26/15.45 Found x030:x
% 15.26/15.45 Instantiate: x:=P:Prop
% 15.26/15.45 Found (fun (x04:(x->Q))=> x030) as proof of P
% 15.26/15.45 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 15.26/15.45 Found x010:=(x01 x020):x
% 15.26/15.45 Found (x01 x020) as proof of P
% 15.26/15.45 Found (x01 x020) as proof of P
% 15.26/15.45 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 15.26/15.45 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 15.26/15.45 Found x00:((iff Q) x)
% 15.26/15.45 Instantiate: x:=P:Prop
% 15.26/15.45 Found x00 as proof of ((iff Q) P)
% 15.26/15.45 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 15.26/15.45 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 15.26/15.45 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 15.26/15.45 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 15.26/15.45 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 15.26/15.45 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 15.26/15.45 Found x030:x
% 15.26/15.45 Instantiate: x:=P:Prop
% 15.26/15.45 Found (fun (x04:(x->Q))=> x030) as proof of P
% 15.26/15.45 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 15.26/15.45 Found x010:=(x01 x002):((iff P) Q)
% 15.26/15.45 Found (x01 x002) as proof of ((iff P) Q)
% 15.26/15.45 Found (x01 x002) as proof of ((iff P) Q)
% 15.26/15.45 Found x010:=(x01 x000):((iff P) Q)
% 15.26/15.45 Found x010 as proof of ((iff P) Q)
% 15.26/15.45 Found x010:=(x01 x000):((iff P) Q)
% 15.26/15.45 Found x010 as proof of ((iff P) Q)
% 15.26/15.45 Found x010:x
% 15.26/15.45 Instantiate: x:=((((iff P) Q)->R)->((R->((iff P) Q))->P)):Prop
% 15.26/15.45 Found x010 as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 15.26/15.45 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 15.26/15.45 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 15.26/15.45 Found eta_expansion as proof of x
% 15.26/15.45 Found x020:Q
% 15.26/15.45 Found x020 as proof of Q
% 15.26/15.45 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 15.26/15.45 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 15.26/15.45 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 15.26/15.45 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 15.26/15.45 Found x030:=(x03 x040):x
% 15.26/15.45 Instantiate: x:=P:Prop
% 15.26/15.45 Found (x03 x040) as proof of P
% 15.26/15.45 Found (x03 x040) as proof of P
% 15.26/15.45 Found x02:((iff Q) x)
% 15.26/15.45 Instantiate: x:=P:Prop
% 15.26/15.45 Found x02 as proof of ((iff Q) P)
% 15.26/15.45 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 15.26/15.45 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 15.26/15.45 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 15.26/15.45 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 15.26/15.45 Found x020:Q
% 16.97/17.14 Found x020 as proof of Q
% 16.97/17.14 Found (x01 x020) as proof of P
% 16.97/17.14 Found (x01 x020) as proof of P
% 16.97/17.14 Found (x01 x020) as proof of P
% 16.97/17.14 Found x020:Q
% 16.97/17.14 Found x020 as proof of Q
% 16.97/17.14 Found (x01 x020) as proof of P
% 16.97/17.14 Found (x01 x020) as proof of P
% 16.97/17.14 Found (x01 x020) as proof of P
% 16.97/17.14 Found x02:((iff Q) x)
% 16.97/17.14 Instantiate: x:=P:Prop
% 16.97/17.14 Found x02 as proof of ((iff Q) P)
% 16.97/17.14 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 16.97/17.14 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 16.97/17.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 16.97/17.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 16.97/17.14 Found x000:=(x00 x010):R
% 16.97/17.14 Found (x00 x010) as proof of R
% 16.97/17.14 Found (x00 x010) as proof of R
% 16.97/17.14 Found x010:=(x01 x000):((iff P) Q)
% 16.97/17.14 Found (x01 x000) as proof of ((iff P) Q)
% 16.97/17.14 Found (x01 x000) as proof of ((iff P) Q)
% 16.97/17.14 Found x010:=(x01 x020):x
% 16.97/17.14 Found (x01 x020) as proof of P
% 16.97/17.14 Found (x01 x020) as proof of P
% 16.97/17.14 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 16.97/17.14 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 16.97/17.14 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 16.97/17.14 Found x000:=(x00 x010):R
% 16.97/17.14 Found (x00 x010) as proof of R
% 16.97/17.14 Found (x00 x010) as proof of R
% 16.97/17.14 Found x010:=(x01 x000):((iff P) Q)
% 16.97/17.14 Found (x01 x000) as proof of ((iff P) Q)
% 16.97/17.14 Found (x01 x000) as proof of ((iff P) Q)
% 16.97/17.14 Found x02:((iff Q) x)
% 16.97/17.14 Instantiate: x:=P:Prop
% 16.97/17.14 Found x02 as proof of ((iff Q) P)
% 16.97/17.14 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 16.97/17.14 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 16.97/17.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 16.97/17.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 16.97/17.14 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 16.97/17.14 Found (iff_refl Q) as proof of ((iff Q) x)
% 16.97/17.14 Found (iff_refl Q) as proof of ((iff Q) x)
% 16.97/17.14 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 16.97/17.14 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 16.97/17.14 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 16.97/17.14 Found (iff_refl Q) as proof of ((iff Q) x)
% 16.97/17.14 Found (iff_refl Q) as proof of ((iff Q) x)
% 16.97/17.14 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 16.97/17.14 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 16.97/17.14 Found x010:=(x01 x000):((iff P) Q)
% 16.97/17.14 Found x010 as proof of ((iff P) Q)
% 16.97/17.14 Found x010:=(x01 x000):((iff P) Q)
% 16.97/17.14 Found x010 as proof of ((iff P) Q)
% 16.97/17.14 Found x010:=(x01 x000):((iff P) Q)
% 16.97/17.14 Found x010 as proof of ((iff P) Q)
% 16.97/17.14 Found x010:=(x01 x000):((iff P) Q)
% 16.97/17.14 Found x010 as proof of ((iff P) Q)
% 16.97/17.14 Found x010:=(x01 x000):((iff P) Q)
% 16.97/17.14 Found x010 as proof of ((iff P) Q)
% 16.97/17.14 Found x010:x
% 16.97/17.14 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 16.97/17.14 Found x010 as proof of ((R->((iff P) Q))->P)
% 16.97/17.14 Found x1:(((iff P) Q)->R)
% 16.97/17.14 Instantiate: x:=(((iff P) Q)->R):Prop
% 16.97/17.14 Found x1 as proof of x
% 16.97/17.14 Found x020:Q
% 16.97/17.14 Found x020 as proof of Q
% 16.97/17.14 Found (x01 x020) as proof of P
% 16.97/17.14 Found (x01 x020) as proof of P
% 16.97/17.14 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 16.97/17.14 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 16.97/17.14 Found x030:=(x03 x040):x
% 16.97/17.14 Instantiate: x:=P:Prop
% 16.97/17.14 Found (x03 x040) as proof of P
% 16.97/17.14 Found (x03 x040) as proof of P
% 16.97/17.14 Found x02:((iff Q) x)
% 16.97/17.14 Instantiate: x:=P:Prop
% 16.97/17.14 Found x02 as proof of ((iff Q) P)
% 16.97/17.14 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 16.97/17.14 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 16.97/17.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 16.97/17.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 16.97/17.14 Found x010:=(x01 x000):((iff P) Q)
% 16.97/17.14 Found (x01 x000) as proof of ((iff P) Q)
% 16.97/17.14 Found (x01 x000) as proof of ((iff P) Q)
% 16.97/17.14 Found x000:=(x00 x010):R
% 16.97/17.14 Found (x00 x010) as proof of R
% 16.97/17.14 Found (x00 x010) as proof of R
% 16.97/17.14 Found x010:=(x01 x000):((iff P) Q)
% 16.97/17.14 Found (x01 x000) as proof of ((iff P) Q)
% 16.97/17.14 Found (x01 x000) as proof of ((iff P) Q)
% 16.97/17.14 Found x030:=(x03 x040):x
% 16.97/17.14 Instantiate: x:=P:Prop
% 16.97/17.14 Found (x03 x040) as proof of P
% 16.97/17.14 Found (x03 x040) as proof of P
% 16.97/17.14 Found x02:((iff Q) x)
% 16.97/17.14 Instantiate: x:=P:Prop
% 16.97/17.14 Found x02 as proof of ((iff Q) P)
% 16.97/17.14 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 16.97/17.14 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 16.97/17.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 16.97/17.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 16.97/17.14 Found x010:=(x01 x001):((iff P) Q)
% 16.97/17.14 Found x010 as proof of ((iff P) Q)
% 16.97/17.14 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 18.23/18.44 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 18.23/18.44 Found ex_intro0 as proof of x
% 18.23/18.44 Found (x04 ex_intro0) as proof of Q
% 18.23/18.44 Found (x04 ex_intro0) as proof of Q
% 18.23/18.44 Found x010:=(x01 x000):((iff P) Q)
% 18.23/18.44 Found (x01 x000) as proof of ((iff P) Q)
% 18.23/18.44 Found (x01 x000) as proof of ((iff P) Q)
% 18.23/18.44 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 18.23/18.44 Found (iff_refl Q) as proof of ((iff Q) x)
% 18.23/18.44 Found (iff_refl Q) as proof of ((iff Q) x)
% 18.23/18.44 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 18.23/18.44 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 18.23/18.44 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 18.23/18.44 Found (iff_refl Q) as proof of ((iff Q) x)
% 18.23/18.44 Found (iff_refl Q) as proof of ((iff Q) x)
% 18.23/18.44 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 18.23/18.44 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 18.23/18.44 Found x010:=(x01 x000):((iff P) Q)
% 18.23/18.44 Found x010 as proof of ((iff P) Q)
% 18.23/18.44 Found x010:=(x01 x000):((iff P) Q)
% 18.23/18.44 Found x010 as proof of ((iff P) Q)
% 18.23/18.44 Found x010:=(x01 x000):((iff P) Q)
% 18.23/18.44 Found x010 as proof of ((iff P) Q)
% 18.23/18.44 Found x010:=(x01 x000):((iff P) Q)
% 18.23/18.44 Found x010 as proof of ((iff P) Q)
% 18.23/18.44 Found x010:=(x01 x000):((iff P) Q)
% 18.23/18.44 Found x010 as proof of ((iff P) Q)
% 18.23/18.44 Found x02:((iff Q) x)
% 18.23/18.44 Instantiate: x:=P:Prop
% 18.23/18.44 Found x02 as proof of ((iff Q) P)
% 18.23/18.44 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 18.23/18.44 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 18.23/18.44 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 18.23/18.44 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 18.23/18.44 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 18.23/18.44 Found (iff_refl Q) as proof of ((iff Q) x)
% 18.23/18.44 Found (iff_refl Q) as proof of ((iff Q) x)
% 18.23/18.44 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 18.23/18.44 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 18.23/18.44 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 18.23/18.44 Found (iff_refl Q) as proof of ((iff Q) x)
% 18.23/18.44 Found (iff_refl Q) as proof of ((iff Q) x)
% 18.23/18.44 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 18.23/18.44 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 18.23/18.44 Found x020:Q
% 18.23/18.44 Found x020 as proof of Q
% 18.23/18.44 Found (x01 x020) as proof of P
% 18.23/18.44 Found (x01 x020) as proof of P
% 18.23/18.44 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 18.23/18.44 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 18.23/18.44 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 18.23/18.44 Found x030:=(x03 x040):x
% 18.23/18.44 Found (x03 x040) as proof of P
% 18.23/18.44 Found (x03 x040) as proof of P
% 18.23/18.44 Found (x03 x040) as proof of P
% 18.23/18.44 Found x010:=(x01 x000):((iff P) Q)
% 18.23/18.44 Found x010 as proof of ((iff P) Q)
% 18.23/18.44 Found x010:x
% 18.23/18.44 Instantiate: x:=P:Prop
% 18.23/18.44 Found x010 as proof of P
% 18.23/18.44 Found x1:(((iff P) Q)->R)
% 18.23/18.44 Instantiate: x:=(((iff P) Q)->R):Prop
% 18.23/18.44 Found x1 as proof of x
% 18.23/18.44 Found x02:((iff Q) x)
% 18.23/18.44 Instantiate: x:=P:Prop
% 18.23/18.44 Found x02 as proof of ((iff Q) P)
% 18.23/18.44 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 18.23/18.44 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 18.23/18.44 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 18.23/18.44 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 18.23/18.44 Found x2:(R->((iff P) Q))
% 18.23/18.44 Instantiate: x:=(R->((iff P) Q)):Prop
% 18.23/18.44 Found x2 as proof of x
% 18.23/18.44 Found x010:x
% 18.23/18.44 Instantiate: x:=P:Prop
% 18.23/18.44 Found x010 as proof of P
% 18.23/18.44 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 18.23/18.44 Found (iff_refl Q) as proof of ((iff Q) x)
% 18.23/18.44 Found (iff_refl Q) as proof of ((iff Q) x)
% 18.23/18.44 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 18.23/18.44 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 18.23/18.44 Found x010:=(x01 x000):((iff P) Q)
% 18.23/18.44 Found (x01 x000) as proof of ((iff P) Q)
% 18.23/18.44 Found (x01 x000) as proof of ((iff P) Q)
% 18.23/18.44 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 18.23/18.44 Found (iff_refl Q) as proof of ((iff Q) x)
% 18.23/18.44 Found (iff_refl Q) as proof of ((iff Q) x)
% 18.23/18.44 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 18.23/18.44 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 18.23/18.44 Found x010:=(x01 x020):x
% 18.23/18.44 Instantiate: x:=((((iff P) Q)->R)->((R->((iff P) Q))->P)):Prop
% 18.23/18.44 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 18.23/18.44 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 18.23/18.44 Found x00:((iff Q) x)
% 18.23/18.44 Instantiate: x:=P:Prop
% 18.23/18.44 Found x00 as proof of ((iff Q) P)
% 18.23/18.44 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 18.23/18.44 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 19.89/20.08 Found x00:((iff Q) x)
% 19.89/20.08 Instantiate: x:=P:Prop
% 19.89/20.08 Found x00 as proof of ((iff Q) P)
% 19.89/20.08 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 19.89/20.08 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 19.89/20.08 Found x010:=(x01 x000):((iff P) Q)
% 19.89/20.08 Found x010 as proof of ((iff P) Q)
% 19.89/20.08 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 19.89/20.08 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 19.89/20.08 Found ex_intro0 as proof of x
% 19.89/20.08 Found (x04 ex_intro0) as proof of Q
% 19.89/20.08 Found (x04 ex_intro0) as proof of Q
% 19.89/20.08 Found x010:=(x01 x001):((iff P) Q)
% 19.89/20.08 Found x010 as proof of ((iff P) Q)
% 19.89/20.08 Found x010:x
% 19.89/20.08 Instantiate: x:=Q:Prop
% 19.89/20.08 Found x010 as proof of Q
% 19.89/20.08 Found x02:((iff Q) x)
% 19.89/20.08 Instantiate: x:=P:Prop
% 19.89/20.08 Found x02 as proof of ((iff Q) P)
% 19.89/20.08 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 19.89/20.08 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 19.89/20.08 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 19.89/20.08 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 19.89/20.08 Found iff_sym000:=(iff_sym00 x02):((iff P) Q)
% 19.89/20.08 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 19.89/20.08 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 19.89/20.08 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 19.89/20.08 Found (iff_refl Q) as proof of ((iff Q) x)
% 19.89/20.08 Found (iff_refl Q) as proof of ((iff Q) x)
% 19.89/20.08 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 19.89/20.08 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 19.89/20.08 Found x010:=(x01 x000):((iff P) Q)
% 19.89/20.08 Found x010 as proof of ((iff P) Q)
% 19.89/20.08 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 19.89/20.08 Found (iff_refl Q) as proof of ((iff Q) x)
% 19.89/20.08 Found (iff_refl Q) as proof of ((iff Q) x)
% 19.89/20.08 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 19.89/20.08 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 19.89/20.08 Found x010:=(x01 x000):((iff P) Q)
% 19.89/20.08 Found x010 as proof of ((iff P) Q)
% 19.89/20.08 Found x010:=(x01 x000):((iff P) Q)
% 19.89/20.08 Found x010 as proof of ((iff P) Q)
% 19.89/20.08 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 19.89/20.08 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 19.89/20.08 Found ex_intro0 as proof of x
% 19.89/20.08 Found (x04 ex_intro0) as proof of Q
% 19.89/20.08 Found (x04 ex_intro0) as proof of Q
% 19.89/20.08 Found x010:x
% 19.89/20.08 Instantiate: x:=P:Prop
% 19.89/20.08 Found (fun (x02:(x->Q))=> x010) as proof of P
% 19.89/20.08 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 19.89/20.08 Found x02:((iff Q) x)
% 19.89/20.08 Instantiate: x:=P:Prop
% 19.89/20.08 Found x02 as proof of ((iff Q) P)
% 19.89/20.08 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 19.89/20.08 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 19.89/20.08 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 19.89/20.08 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 19.89/20.08 Found iff_sym000:=(iff_sym00 x02):((iff P) Q)
% 19.89/20.08 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 19.89/20.08 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 19.89/20.08 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 19.89/20.08 Found (iff_refl Q) as proof of ((iff Q) x)
% 19.89/20.08 Found (iff_refl Q) as proof of ((iff Q) x)
% 19.89/20.08 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 19.89/20.08 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 19.89/20.08 Found x030:=(x03 x040):x
% 19.89/20.08 Found (x03 x040) as proof of P
% 19.89/20.08 Found (x03 x040) as proof of P
% 19.89/20.08 Found (x03 x040) as proof of P
% 19.89/20.08 Found x010:x
% 19.89/20.08 Found x010 as proof of Q
% 19.89/20.08 Found x030:=(x03 x040):x
% 19.89/20.08 Found (x03 x040) as proof of P
% 19.89/20.08 Found (x03 x040) as proof of P
% 19.89/20.08 Found (x03 x040) as proof of P
% 19.89/20.08 Found x00:((iff Q) x)
% 19.89/20.08 Instantiate: x:=P:Prop
% 19.89/20.08 Found x00 as proof of ((iff Q) P)
% 19.89/20.08 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 19.89/20.08 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 19.89/20.08 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 19.89/20.08 Found x010:=(x01 x001):((iff P) Q)
% 21.85/22.04 Found x010 as proof of ((iff P) Q)
% 21.85/22.04 Found x00:((iff Q) x)
% 21.85/22.04 Instantiate: x:=P:Prop
% 21.85/22.04 Found x00 as proof of ((iff Q) P)
% 21.85/22.04 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 21.85/22.04 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 21.85/22.04 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 21.85/22.04 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 21.85/22.04 Found x010:=(x01 x020):x
% 21.85/22.04 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 21.85/22.04 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 21.85/22.04 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 21.85/22.04 Found x010:=(x01 x001):((iff P) Q)
% 21.85/22.04 Found x010 as proof of ((iff P) Q)
% 21.85/22.04 Found x00:((iff Q) x)
% 21.85/22.04 Instantiate: x:=P:Prop
% 21.85/22.04 Found x00 as proof of ((iff Q) P)
% 21.85/22.04 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 21.85/22.04 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 21.85/22.04 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 21.85/22.04 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 21.85/22.04 Found x020:Q
% 21.85/22.04 Instantiate: x:=Q:Prop
% 21.85/22.04 Found x020 as proof of x
% 21.85/22.04 Found x040:Q
% 21.85/22.04 Found x040 as proof of Q
% 21.85/22.04 Found (x03 x040) as proof of P
% 21.85/22.04 Found (x03 x040) as proof of P
% 21.85/22.04 Found (x03 x040) as proof of P
% 21.85/22.04 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 21.85/22.04 Found (iff_refl Q) as proof of ((iff Q) x)
% 21.85/22.04 Found (iff_refl Q) as proof of ((iff Q) x)
% 21.85/22.04 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 21.85/22.04 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 21.85/22.04 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 21.85/22.04 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 21.85/22.04 Found eta_expansion as proof of x
% 21.85/22.04 Found (x02 eta_expansion) as proof of Q
% 21.85/22.04 Found (x02 eta_expansion) as proof of Q
% 21.85/22.04 Found x02:((iff Q) x)
% 21.85/22.04 Instantiate: x:=P:Prop
% 21.85/22.04 Found x02 as proof of ((iff Q) P)
% 21.85/22.04 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 21.85/22.04 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 21.85/22.04 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 21.85/22.04 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 21.85/22.04 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 21.85/22.04 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 21.85/22.04 Found x010:=(x01 x000):((iff P) Q)
% 21.85/22.04 Found x010 as proof of ((iff P) Q)
% 21.85/22.04 Found x010:=(x01 x000):((iff P) Q)
% 21.85/22.04 Found x010 as proof of ((iff P) Q)
% 21.85/22.04 Found x010:=(x01 x001):((iff P) Q)
% 21.85/22.04 Found x010 as proof of ((iff P) Q)
% 21.85/22.04 Found x020:Q
% 21.85/22.04 Found x020 as proof of Q
% 21.85/22.04 Found x020:Q
% 21.85/22.04 Found x020 as proof of x
% 21.85/22.04 Found x010:x
% 21.85/22.04 Found x010 as proof of Q
% 21.85/22.04 Found x02:((iff Q) x)
% 21.85/22.04 Instantiate: x:=P:Prop
% 21.85/22.04 Found x02 as proof of ((iff Q) P)
% 21.85/22.04 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 21.85/22.04 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 21.85/22.04 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 21.85/22.04 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 21.85/22.04 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 21.85/22.04 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 21.85/22.04 Found x010:x
% 21.85/22.04 Found x010 as proof of x
% 21.85/22.04 Found x010:=(x01 x020):x
% 21.85/22.04 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 21.85/22.04 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 21.85/22.04 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 21.85/22.04 Found x010:=(x01 x020):x
% 21.85/22.04 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 21.85/22.04 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 21.85/22.04 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 21.85/22.04 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 21.85/22.04 Found x010:=(x01 x000):((iff P) Q)
% 21.85/22.04 Found x010 as proof of ((iff P) Q)
% 21.85/22.04 Found x010:=(x01 x020):x
% 21.85/22.04 Instantiate: x:=P:Prop
% 21.85/22.04 Found (x01 x020) as proof of P
% 21.85/22.04 Found (x01 x020) as proof of P
% 21.85/22.04 Found x010:=(x01 x001):((iff P) Q)
% 21.85/22.04 Found x010 as proof of ((iff P) Q)
% 21.85/22.04 Found x010:=(x01 x020):x
% 21.85/22.04 Instantiate: x:=P:Prop
% 21.85/22.04 Found (x01 x020) as proof of P
% 21.85/22.04 Found (x01 x020) as proof of P
% 21.85/22.04 Found x02:((iff Q) x)
% 21.85/22.04 Instantiate: x:=P:Prop
% 21.85/22.04 Found x02 as proof of ((iff Q) P)
% 21.85/22.04 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 21.85/22.04 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 21.85/22.04 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 21.85/22.04 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 21.85/22.04 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 21.85/22.04 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 21.85/22.04 Found x00:((iff Q) x)
% 21.85/22.04 Instantiate: x:=P:Prop
% 21.85/22.04 Found x00 as proof of ((iff Q) P)
% 23.65/23.84 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 23.65/23.84 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 23.65/23.84 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 23.65/23.84 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 23.65/23.84 Found x00:((iff Q) x)
% 23.65/23.84 Instantiate: x:=P:Prop
% 23.65/23.84 Found x00 as proof of ((iff Q) P)
% 23.65/23.84 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 23.65/23.84 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 23.65/23.84 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 23.65/23.84 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 23.65/23.84 Found x000:=(x00 x012):R
% 23.65/23.84 Found (x00 x012) as proof of R
% 23.65/23.84 Found (x00 x012) as proof of R
% 23.65/23.84 Found x040:Q
% 23.65/23.84 Found x040 as proof of Q
% 23.65/23.84 Found (x03 x040) as proof of P
% 23.65/23.84 Found (x03 x040) as proof of P
% 23.65/23.84 Found (x03 x040) as proof of P
% 23.65/23.84 Found x010:=(x01 x000):((iff P) Q)
% 23.65/23.84 Found x010 as proof of ((iff P) Q)
% 23.65/23.84 Found x010:=(x01 x002):((iff P) Q)
% 23.65/23.84 Found (x01 x002) as proof of ((iff P) Q)
% 23.65/23.84 Found (x01 x002) as proof of ((iff P) Q)
% 23.65/23.84 Found x010:=(x01 x000):((iff P) Q)
% 23.65/23.84 Found x010 as proof of ((iff P) Q)
% 23.65/23.84 Found x010:=(x01 x000):((iff P) Q)
% 23.65/23.84 Found x010 as proof of ((iff P) Q)
% 23.65/23.84 Found x010:=(x01 x000):((iff P) Q)
% 23.65/23.84 Found x010 as proof of ((iff P) Q)
% 23.65/23.84 Found x010:=(x01 x000):((iff P) Q)
% 23.65/23.84 Found x010 as proof of ((iff P) Q)
% 23.65/23.84 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 23.65/23.84 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 23.65/23.84 Found eq_sym as proof of x
% 23.65/23.84 Found (x02 eq_sym) as proof of Q
% 23.65/23.84 Found (x02 eq_sym) as proof of Q
% 23.65/23.84 Found x030:=(x03 x020):P
% 23.65/23.84 Found (x03 x020) as proof of P
% 23.65/23.84 Found (x03 x020) as proof of P
% 23.65/23.84 Found x020:=(x02 x030):Q
% 23.65/23.84 Found (x02 x030) as proof of Q
% 23.65/23.84 Found (x02 x030) as proof of Q
% 23.65/23.84 Found x040:Q
% 23.65/23.84 Found x040 as proof of Q
% 23.65/23.84 Found (x03 x040) as proof of P
% 23.65/23.84 Found (x03 x040) as proof of P
% 23.65/23.84 Found (x03 x040) as proof of P
% 23.65/23.84 Found x010:x
% 23.65/23.84 Found x010 as proof of x
% 23.65/23.84 Found x000:=(x00 x011):R
% 23.65/23.84 Found (x00 x011) as proof of R
% 23.65/23.84 Found (x00 x011) as proof of R
% 23.65/23.84 Found x010:x
% 23.65/23.84 Found x010 as proof of Q
% 23.65/23.84 Found x010:=(x01 x001):((iff P) Q)
% 23.65/23.84 Found x010 as proof of ((iff P) Q)
% 23.65/23.84 Found x010:=(x01 x000):((iff P) Q)
% 23.65/23.84 Found x010 as proof of ((iff P) Q)
% 23.65/23.84 Found x02:((iff Q) x)
% 23.65/23.84 Instantiate: x:=P:Prop
% 23.65/23.84 Found x02 as proof of ((iff Q) P)
% 23.65/23.84 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 23.65/23.84 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 23.65/23.84 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 23.65/23.84 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 23.65/23.84 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 23.65/23.84 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 23.65/23.84 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 23.65/23.84 Found (iff_refl Q) as proof of ((iff Q) x)
% 23.65/23.84 Found (iff_refl Q) as proof of ((iff Q) x)
% 23.65/23.84 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 23.65/23.84 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 23.65/23.84 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 23.65/23.84 Found (iff_refl Q) as proof of ((iff Q) x)
% 23.65/23.84 Found (iff_refl Q) as proof of ((iff Q) x)
% 23.65/23.84 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 23.65/23.84 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 23.65/23.84 Found x011:x
% 23.65/23.84 Instantiate: x:=P:Prop
% 23.65/23.84 Found (fun (x02:(x->Q))=> x011) as proof of P
% 23.65/23.84 Found (fun (x02:(x->Q))=> x011) as proof of ((x->Q)->P)
% 23.65/23.84 Found x010:=(x01 x000):((iff P) Q)
% 23.65/23.84 Found x010 as proof of ((iff P) Q)
% 23.65/23.84 Found x010:=(x01 x020):x
% 23.65/23.84 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 23.65/23.84 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 23.65/23.84 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 23.65/23.84 Found x010:=(x01 x001):((iff P) Q)
% 23.65/23.84 Found x010 as proof of ((iff P) Q)
% 23.65/23.84 Found x02:((iff Q) x)
% 23.65/23.84 Instantiate: x:=P:Prop
% 23.65/23.84 Found x02 as proof of ((iff Q) P)
% 23.65/23.84 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 23.65/23.84 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 23.65/23.84 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 23.65/23.84 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 23.65/23.84 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 23.65/23.84 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 23.65/23.84 Found x010:=(x01 x001):((iff P) Q)
% 23.65/23.84 Found x010 as proof of ((iff P) Q)
% 23.65/23.84 Found x010:=(x01 x020):x
% 23.65/23.84 Instantiate: x:=P:Prop
% 23.65/23.84 Found (x01 x020) as proof of P
% 23.65/23.84 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 23.65/23.84 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 24.75/24.97 Found x02:((iff Q) x)
% 24.75/24.97 Instantiate: x:=P:Prop
% 24.75/24.97 Found x02 as proof of ((iff Q) P)
% 24.75/24.97 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 24.75/24.97 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 24.75/24.97 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 24.75/24.97 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 24.75/24.97 Found x02:((iff Q) x)
% 24.75/24.97 Instantiate: x:=P:Prop
% 24.75/24.97 Found x02 as proof of ((iff Q) P)
% 24.75/24.97 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 24.75/24.97 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 24.75/24.97 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 24.75/24.97 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 24.75/24.97 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 24.75/24.97 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 24.75/24.97 Found iff_sym000:=(iff_sym00 x00):((iff P) Q)
% 24.75/24.97 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 24.75/24.97 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 24.75/24.97 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 24.75/24.97 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 24.75/24.97 Found x020:Q
% 24.75/24.97 Found x020 as proof of Q
% 24.75/24.97 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 24.75/24.97 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 24.75/24.97 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 24.75/24.97 Found x030:=(x03 x020):P
% 24.75/24.97 Found (x03 x020) as proof of P
% 24.75/24.97 Found (x03 x020) as proof of P
% 24.75/24.97 Found x000:=(x00 x010):R
% 24.75/24.97 Found (x00 x010) as proof of R
% 24.75/24.97 Found (x00 x010) as proof of R
% 24.75/24.97 Found x030:=(x03 x020):P
% 24.75/24.97 Found (x03 x020) as proof of P
% 24.75/24.97 Found (x03 x020) as proof of P
% 24.75/24.97 Found x020:=(x02 x030):Q
% 24.75/24.97 Found (x02 x030) as proof of Q
% 24.75/24.97 Found (x02 x030) as proof of Q
% 24.75/24.97 Found x000:=(x00 x010):R
% 24.75/24.97 Found (x00 x010) as proof of R
% 24.75/24.97 Found (x00 x010) as proof of R
% 24.75/24.97 Found x000:=(x00 x010):R
% 24.75/24.97 Found (x00 x010) as proof of R
% 24.75/24.97 Found (x00 x010) as proof of R
% 24.75/24.97 Found x010:=(x01 x000):((iff P) Q)
% 24.75/24.97 Found x010 as proof of ((iff P) Q)
% 24.75/24.97 Found x000:=(x00 x012):R
% 24.75/24.97 Found (x00 x012) as proof of R
% 24.75/24.97 Found (x00 x012) as proof of R
% 24.75/24.97 Found x010:=(x01 x002):((iff P) Q)
% 24.75/24.97 Found (x01 x002) as proof of ((iff P) Q)
% 24.75/24.97 Found (x01 x002) as proof of ((iff P) Q)
% 24.75/24.97 Found x010:=(x01 x000):((iff P) Q)
% 24.75/24.97 Found x010 as proof of ((iff P) Q)
% 24.75/24.97 Found x010:=(x01 x000):((iff P) Q)
% 24.75/24.97 Found (x01 x000) as proof of ((iff P) Q)
% 24.75/24.97 Found (x01 x000) as proof of ((iff P) Q)
% 24.75/24.97 Found x010:=(x01 x000):((iff P) Q)
% 24.75/24.97 Found (x01 x000) as proof of ((iff P) Q)
% 24.75/24.97 Found (x01 x000) as proof of ((iff P) Q)
% 24.75/24.97 Found x02:(x->Q)
% 24.75/24.97 Instantiate: x:=(R->((iff P) Q)):Prop
% 24.75/24.97 Found (fun (x1:(((iff P) Q)->R))=> x02) as proof of ((R->((iff P) Q))->Q)
% 24.75/24.97 Found (fun (x1:(((iff P) Q)->R))=> x02) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->Q))
% 24.75/24.97 Found (and_rect10 (fun (x1:(((iff P) Q)->R))=> x02)) as proof of Q
% 24.75/24.97 Found ((and_rect1 Q) (fun (x1:(((iff P) Q)->R))=> x02)) as proof of Q
% 24.75/24.97 Found (((fun (P0:Type) (x1:((((iff P) Q)->R)->((R->((iff P) Q))->P0)))=> (((((and_rect (((iff P) Q)->R)) (R->((iff P) Q))) P0) x1) x0)) Q) (fun (x1:(((iff P) Q)->R))=> x02)) as proof of Q
% 24.75/24.97 Found (((fun (P0:Type) (x1:((((iff P) Q)->R)->((R->((iff P) Q))->P0)))=> (((((and_rect (((iff P) Q)->R)) (R->((iff P) Q))) P0) x1) x0)) Q) (fun (x1:(((iff P) Q)->R))=> x02)) as proof of Q
% 24.75/24.97 Found x010:=(x01 x001):((iff P) Q)
% 24.75/24.97 Found x010 as proof of ((iff P) Q)
% 24.75/24.97 Found x010:=(x01 x000):((iff P) Q)
% 24.75/24.97 Found (x01 x000) as proof of ((iff P) Q)
% 24.75/24.97 Found (x01 x000) as proof of ((iff P) Q)
% 24.75/24.97 Found x010:=(x01 x000):((iff P) Q)
% 24.75/24.97 Found x010 as proof of ((iff P) Q)
% 24.75/24.97 Found x010:=(x01 x000):((iff P) Q)
% 24.75/24.97 Found x010 as proof of ((iff P) Q)
% 24.75/24.97 Found x02:((iff Q) x)
% 24.75/24.97 Instantiate: x:=P:Prop
% 24.75/24.97 Found x02 as proof of ((iff Q) P)
% 24.75/24.97 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 24.75/24.97 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 24.75/24.97 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 24.75/24.97 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 24.75/24.97 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 24.75/24.97 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 24.75/24.97 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 24.75/24.97 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 24.75/24.97 Found ex_intro0 as proof of x
% 24.75/24.97 Found (x02 ex_intro0) as proof of Q
% 24.75/24.97 Found (x02 ex_intro0) as proof of Q
% 24.75/24.97 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 25.92/26.11 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 25.92/26.11 Found ex_intro0 as proof of x
% 25.92/26.11 Found (x02 ex_intro0) as proof of Q
% 25.92/26.11 Found (x02 ex_intro0) as proof of Q
% 25.92/26.11 Found x000:=(x00 x010):R
% 25.92/26.11 Found (x00 x010) as proof of R
% 25.92/26.11 Found (x00 x010) as proof of R
% 25.92/26.11 Found x00:((iff Q) x)
% 25.92/26.11 Instantiate: x:=P:Prop
% 25.92/26.11 Found x00 as proof of ((iff Q) P)
% 25.92/26.11 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 25.92/26.11 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 25.92/26.11 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 25.92/26.11 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 25.92/26.11 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 25.92/26.11 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 25.92/26.11 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 25.92/26.11 Found (iff_refl Q) as proof of ((iff Q) x)
% 25.92/26.11 Found (iff_refl Q) as proof of ((iff Q) x)
% 25.92/26.11 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 25.92/26.11 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 25.92/26.11 Found x000:=(x00 x010):R
% 25.92/26.11 Found (x00 x010) as proof of R
% 25.92/26.11 Found (x00 x010) as proof of R
% 25.92/26.11 Found iff_sym000:=(iff_sym00 x00):((iff P) Q)
% 25.92/26.11 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 25.92/26.11 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 25.92/26.11 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 25.92/26.11 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 25.92/26.11 Found iff_sym000:=(iff_sym00 x00):((iff P) Q)
% 25.92/26.11 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 25.92/26.11 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 25.92/26.11 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 25.92/26.11 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 25.92/26.11 Found x010:=(x01 x000):((iff P) Q)
% 25.92/26.11 Found (x01 x000) as proof of ((iff P) Q)
% 25.92/26.11 Found (x01 x000) as proof of ((iff P) Q)
% 25.92/26.11 Found x010:=(x01 x020):x
% 25.92/26.11 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 25.92/26.11 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 25.92/26.11 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 25.92/26.11 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 25.92/26.11 Found x010:=(x01 x000):((iff P) Q)
% 25.92/26.11 Found (x01 x000) as proof of ((iff P) Q)
% 25.92/26.11 Found (x01 x000) as proof of ((iff P) Q)
% 25.92/26.11 Found x010:=(x01 x020):x
% 25.92/26.11 Instantiate: x:=P:Prop
% 25.92/26.11 Found (x01 x020) as proof of P
% 25.92/26.11 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 25.92/26.11 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 25.92/26.11 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 25.92/26.11 Found x010:=(x01 x000):((iff P) Q)
% 25.92/26.11 Found x010 as proof of ((iff P) Q)
% 25.92/26.11 Found x010:=(x01 x000):((iff P) Q)
% 25.92/26.11 Found x010 as proof of ((iff P) Q)
% 25.92/26.11 Found x010:=(x01 x000):((iff P) Q)
% 25.92/26.11 Found x010 as proof of ((iff P) Q)
% 25.92/26.11 Found x010:=(x01 x000):((iff P) Q)
% 25.92/26.11 Found x010 as proof of ((iff P) Q)
% 25.92/26.11 Found x010:=(x01 x000):((iff P) Q)
% 25.92/26.11 Found x010 as proof of ((iff P) Q)
% 25.92/26.11 Found x010:=(x01 x000):((iff P) Q)
% 25.92/26.11 Found x010 as proof of ((iff P) Q)
% 25.92/26.11 Found x010:=(x01 x020):x
% 25.92/26.11 Instantiate: x:=((((iff P) Q)->R)->((R->((iff P) Q))->P)):Prop
% 25.92/26.11 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 25.92/26.11 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 25.92/26.11 Found (and_rect10 (x01 x020)) as proof of P
% 25.92/26.11 Found ((and_rect1 P) (x01 x020)) as proof of P
% 25.92/26.11 Found (((fun (P0:Type) (x1:((((iff P) Q)->R)->((R->((iff P) Q))->P0)))=> (((((and_rect (((iff P) Q)->R)) (R->((iff P) Q))) P0) x1) x0)) P) (x01 x020)) as proof of P
% 25.92/26.11 Found (((fun (P0:Type) (x1:((((iff P) Q)->R)->((R->((iff P) Q))->P0)))=> (((((and_rect (((iff P) Q)->R)) (R->((iff P) Q))) P0) x1) x0)) P) (x01 x020)) as proof of P
% 25.92/26.11 Found x000:=(x00 x010):R
% 25.92/26.11 Found (x00 x010) as proof of R
% 25.92/26.11 Found (x00 x010) as proof of R
% 25.92/26.11 Found x010:=(x01 x001):((iff P) Q)
% 25.92/26.11 Found x010 as proof of ((iff P) Q)
% 25.92/26.11 Found x010:=(x01 x020):x
% 25.92/26.11 Found (x01 x020) as proof of P
% 25.92/26.11 Found (x01 x020) as proof of P
% 25.92/26.11 Found (x01 x020) as proof of P
% 25.92/26.11 Found x010:=(x01 x020):x
% 25.92/26.11 Found (x01 x020) as proof of P
% 25.92/26.11 Found (x01 x020) as proof of P
% 25.92/26.11 Found (x01 x020) as proof of P
% 25.92/26.11 Found x010:=(x01 x000):((iff P) Q)
% 25.92/26.11 Found (x01 x000) as proof of ((iff P) Q)
% 25.92/26.11 Found (x01 x000) as proof of ((iff P) Q)
% 25.92/26.11 Found x030:=(x03 x020):P
% 25.92/26.11 Found (x03 x020) as proof of P
% 25.92/26.11 Found (x03 x020) as proof of P
% 25.92/26.11 Found x010:=(x01 x021):x
% 25.92/26.11 Instantiate: x:=P:Prop
% 26.95/27.15 Found (x01 x021) as proof of P
% 26.95/27.15 Found (x01 x021) as proof of P
% 26.95/27.15 Found x010:=(x01 x001):((iff P) Q)
% 26.95/27.15 Found x010 as proof of ((iff P) Q)
% 26.95/27.15 Found x02:((iff Q) x)
% 26.95/27.15 Instantiate: x:=P:Prop
% 26.95/27.15 Found x02 as proof of ((iff Q) P)
% 26.95/27.15 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 26.95/27.15 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found x000:=(x00 x010):R
% 26.95/27.15 Found (x00 x010) as proof of R
% 26.95/27.15 Found (x00 x010) as proof of R
% 26.95/27.15 Found x000:=(x00 x010):R
% 26.95/27.15 Found (x00 x010) as proof of R
% 26.95/27.15 Found (x00 x010) as proof of R
% 26.95/27.15 Found x000:=(x00 x010):R
% 26.95/27.15 Found (x00 x010) as proof of R
% 26.95/27.15 Found (x00 x010) as proof of R
% 26.95/27.15 Found x010:=(x01 x000):((iff P) Q)
% 26.95/27.15 Found x010 as proof of ((iff P) Q)
% 26.95/27.15 Found x010:=(x01 x002):((iff P) Q)
% 26.95/27.15 Found (x01 x002) as proof of ((iff P) Q)
% 26.95/27.15 Found (x01 x002) as proof of ((iff P) Q)
% 26.95/27.15 Found x010:=(x01 x000):((iff P) Q)
% 26.95/27.15 Found x010 as proof of ((iff P) Q)
% 26.95/27.15 Found iff_sym000:=(iff_sym00 x02):((iff P) Q)
% 26.95/27.15 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 26.95/27.15 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 26.95/27.15 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 26.95/27.15 Found x010:=(x01 x000):((iff P) Q)
% 26.95/27.15 Found x010 as proof of ((iff P) Q)
% 26.95/27.15 Found x010:=(x01 x000):((iff P) Q)
% 26.95/27.15 Found (x01 x000) as proof of ((iff P) Q)
% 26.95/27.15 Found (x01 x000) as proof of ((iff P) Q)
% 26.95/27.15 Found x010:=(x01 x000):((iff P) Q)
% 26.95/27.15 Found (x01 x000) as proof of ((iff P) Q)
% 26.95/27.15 Found (x01 x000) as proof of ((iff P) Q)
% 26.95/27.15 Found x02:((iff Q) x)
% 26.95/27.15 Instantiate: x:=P:Prop
% 26.95/27.15 Found x02 as proof of ((iff Q) P)
% 26.95/27.15 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 26.95/27.15 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found iff_sym000:=(iff_sym00 x00):((iff P) Q)
% 26.95/27.15 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 26.95/27.15 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 26.95/27.15 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 26.95/27.15 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 26.95/27.15 Found x010:=(x01 x000):((iff P) Q)
% 26.95/27.15 Found (x01 x000) as proof of ((iff P) Q)
% 26.95/27.15 Found (x01 x000) as proof of ((iff P) Q)
% 26.95/27.15 Found x000:=(x00 x011):R
% 26.95/27.15 Found (x00 x011) as proof of R
% 26.95/27.15 Found (x00 x011) as proof of R
% 26.95/27.15 Found x010:=(x01 x002):((iff P) Q)
% 26.95/27.15 Found (x01 x002) as proof of ((iff P) Q)
% 26.95/27.15 Found (x01 x002) as proof of ((iff P) Q)
% 26.95/27.15 Found x000:=(x00 x010):R
% 26.95/27.15 Found (x00 x010) as proof of R
% 26.95/27.15 Found (x00 x010) as proof of R
% 26.95/27.15 Found x02:((iff Q) x)
% 26.95/27.15 Instantiate: x:=P:Prop
% 26.95/27.15 Found x02 as proof of ((iff Q) P)
% 26.95/27.15 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 26.95/27.15 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found x020:Q
% 26.95/27.15 Found x020 as proof of Q
% 26.95/27.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 26.95/27.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 26.95/27.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 26.95/27.15 Found x000:=(x00 x011):R
% 26.95/27.15 Found (x00 x011) as proof of R
% 26.95/27.15 Found (x00 x011) as proof of R
% 26.95/27.15 Found x02:((iff Q) x)
% 26.95/27.15 Instantiate: x:=P:Prop
% 26.95/27.15 Found x02 as proof of ((iff Q) P)
% 26.95/27.15 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 26.95/27.15 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 26.95/27.15 Found (fun (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((iff P) Q)
% 26.95/27.15 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((x->Q)->((iff P) Q))
% 26.95/27.15 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((Q->x)->((x->Q)->((iff P) Q)))
% 26.95/27.15 Found (and_rect10 (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 26.95/27.15 Found ((and_rect1 ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 26.95/27.15 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 26.95/27.15 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 27.90/28.12 Found x010:=(x01 x001):((iff P) Q)
% 27.90/28.12 Found x010 as proof of ((iff P) Q)
% 27.90/28.12 Found x000:=(x00 x010):R
% 27.90/28.12 Found (x00 x010) as proof of R
% 27.90/28.12 Found (x00 x010) as proof of R
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found x010 as proof of ((iff P) Q)
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found (x01 x000) as proof of ((iff P) Q)
% 27.90/28.12 Found (x01 x000) as proof of ((iff P) Q)
% 27.90/28.12 Found iff_sym000:=(iff_sym00 x02):((iff P) Q)
% 27.90/28.12 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 27.90/28.12 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 27.90/28.12 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 27.90/28.12 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 27.90/28.12 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 27.90/28.12 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found (x01 x000) as proof of ((iff P) Q)
% 27.90/28.12 Found (x01 x000) as proof of ((iff P) Q)
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found x010 as proof of ((iff P) Q)
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found x010 as proof of ((iff P) Q)
% 27.90/28.12 Found x000:=(x00 x010):R
% 27.90/28.12 Found (x00 x010) as proof of R
% 27.90/28.12 Found (x00 x010) as proof of R
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found x010 as proof of ((iff P) Q)
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found x010 as proof of ((iff P) Q)
% 27.90/28.12 Found x000:=(x00 x010):R
% 27.90/28.12 Found (x00 x010) as proof of R
% 27.90/28.12 Found (x00 x010) as proof of R
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found x010 as proof of ((iff P) Q)
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found x010 as proof of ((iff P) Q)
% 27.90/28.12 Found x02:((iff Q) x)
% 27.90/28.12 Instantiate: x:=P:Prop
% 27.90/28.12 Found x02 as proof of ((iff Q) P)
% 27.90/28.12 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 27.90/28.12 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 27.90/28.12 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 27.90/28.12 Found (fun (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((iff P) Q)
% 27.90/28.12 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((x->Q)->((iff P) Q))
% 27.90/28.12 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((Q->x)->((x->Q)->((iff P) Q)))
% 27.90/28.12 Found (and_rect10 (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 27.90/28.12 Found ((and_rect1 ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 27.90/28.12 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 27.90/28.12 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found x010 as proof of ((iff P) Q)
% 27.90/28.12 Found x00:((iff Q) x)
% 27.90/28.12 Instantiate: x:=P:Prop
% 27.90/28.12 Found x00 as proof of ((iff Q) P)
% 27.90/28.12 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 27.90/28.12 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 27.90/28.12 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 27.90/28.12 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 27.90/28.12 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 27.90/28.12 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found (x01 x000) as proof of ((iff P) Q)
% 27.90/28.12 Found (x01 x000) as proof of ((iff P) Q)
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found x010 as proof of ((iff P) Q)
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found (x01 x000) as proof of ((iff P) Q)
% 27.90/28.12 Found (x01 x000) as proof of ((iff P) Q)
% 27.90/28.12 Found x000:=(x00 x010):R
% 27.90/28.12 Found (x00 x010) as proof of R
% 27.90/28.12 Found (x00 x010) as proof of R
% 27.90/28.12 Found x00:((iff Q) x)
% 27.90/28.12 Instantiate: x:=P:Prop
% 27.90/28.12 Found x00 as proof of ((iff Q) P)
% 27.90/28.12 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 27.90/28.12 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 27.90/28.12 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 27.90/28.12 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 27.90/28.12 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 27.90/28.12 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 27.90/28.12 Found x010:=(x01 x001):((iff P) Q)
% 27.90/28.12 Found x010 as proof of ((iff P) Q)
% 27.90/28.12 Found x010:=(x01 x000):((iff P) Q)
% 27.90/28.12 Found (x01 x000) as proof of ((iff P) Q)
% 27.90/28.12 Found (x01 x000) as proof of ((iff P) Q)
% 27.90/28.12 Found x010:=(x01 x020):x
% 27.90/28.12 Found (x01 x020) as proof of P
% 27.90/28.12 Found (x01 x020) as proof of P
% 27.90/28.12 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 27.90/28.12 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 29.96/30.15 Found x010:=(x01 x000):((iff P) Q)
% 29.96/30.15 Found x010 as proof of ((iff P) Q)
% 29.96/30.15 Found x000:=(x00 x011):R
% 29.96/30.15 Found (x00 x011) as proof of R
% 29.96/30.15 Found (x00 x011) as proof of R
% 29.96/30.15 Found x000:=(x00 x011):R
% 29.96/30.15 Found (x00 x011) as proof of R
% 29.96/30.15 Found (x00 x011) as proof of R
% 29.96/30.15 Found x000:=(x00 x011):R
% 29.96/30.15 Found (x00 x011) as proof of R
% 29.96/30.15 Found (x00 x011) as proof of R
% 29.96/30.15 Found x010:=(x01 x000):((iff P) Q)
% 29.96/30.15 Found x010 as proof of ((iff P) Q)
% 29.96/30.15 Found x000:=(x00 x010):R
% 29.96/30.15 Found (x00 x010) as proof of R
% 29.96/30.15 Found (x00 x010) as proof of R
% 29.96/30.15 Found x000:=(x00 x010):R
% 29.96/30.15 Found (x00 x010) as proof of R
% 29.96/30.15 Found (x00 x010) as proof of R
% 29.96/30.15 Found x010:=(x01 x000):((iff P) Q)
% 29.96/30.15 Found (x01 x000) as proof of ((iff P) Q)
% 29.96/30.15 Found (x01 x000) as proof of ((iff P) Q)
% 29.96/30.15 Found x010:=(x01 x000):((iff P) Q)
% 29.96/30.15 Found (x01 x000) as proof of ((iff P) Q)
% 29.96/30.15 Found (x01 x000) as proof of ((iff P) Q)
% 29.96/30.15 Found x020:Q
% 29.96/30.15 Found x020 as proof of Q
% 29.96/30.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 29.96/30.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 29.96/30.15 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 29.96/30.15 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 29.96/30.15 Found x010:=(x01 x001):((iff P) Q)
% 29.96/30.15 Found x010 as proof of ((iff P) Q)
% 29.96/30.15 Found x000:=(x00 x010):R
% 29.96/30.15 Found (x00 x010) as proof of R
% 29.96/30.15 Found (x00 x010) as proof of R
% 29.96/30.15 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 29.96/30.15 Found (iff_refl Q) as proof of ((iff Q) x)
% 29.96/30.15 Found (iff_refl Q) as proof of ((iff Q) x)
% 29.96/30.15 Found (fun (x00:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 29.96/30.15 Found (fun (x00:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 29.96/30.15 Found x010:=(x01 x000):((iff P) Q)
% 29.96/30.15 Found x010 as proof of ((iff P) Q)
% 29.96/30.15 Found x010:=(x01 x001):((iff P) Q)
% 29.96/30.15 Found x010 as proof of ((iff P) Q)
% 29.96/30.15 Found x000:=(x00 x010):R
% 29.96/30.15 Found (x00 x010) as proof of R
% 29.96/30.15 Found (x00 x010) as proof of R
% 29.96/30.15 Found x010:=(x01 x000):((iff P) Q)
% 29.96/30.15 Found (x01 x000) as proof of ((iff P) Q)
% 29.96/30.15 Found (x01 x000) as proof of ((iff P) Q)
% 29.96/30.15 Found x02:((iff Q) x)
% 29.96/30.15 Instantiate: x:=P:Prop
% 29.96/30.15 Found x02 as proof of ((iff Q) P)
% 29.96/30.15 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 29.96/30.15 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 29.96/30.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 29.96/30.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 29.96/30.15 Found x010:=(x01 x000):((iff P) Q)
% 29.96/30.15 Found (x01 x000) as proof of ((iff P) Q)
% 29.96/30.15 Found (x01 x000) as proof of ((iff P) Q)
% 29.96/30.15 Found x010:=(x01 x000):((iff P) Q)
% 29.96/30.15 Found x010 as proof of ((iff P) Q)
% 29.96/30.15 Found x010:=(x01 x000):((iff P) Q)
% 29.96/30.15 Found x010 as proof of ((iff P) Q)
% 29.96/30.15 Found x02:((iff Q) x)
% 29.96/30.15 Instantiate: x:=P:Prop
% 29.96/30.15 Found x02 as proof of ((iff Q) P)
% 29.96/30.15 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 29.96/30.15 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 29.96/30.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 29.96/30.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 29.96/30.15 Found x010:=(x01 x000):((iff P) Q)
% 29.96/30.15 Found x010 as proof of ((iff P) Q)
% 29.96/30.15 Found x010:=(x01 x000):((iff P) Q)
% 29.96/30.15 Found x010 as proof of ((iff P) Q)
% 29.96/30.15 Found x020:Q
% 29.96/30.15 Found x020 as proof of Q
% 29.96/30.15 Found (x01 x020) as proof of P
% 29.96/30.15 Found (x01 x020) as proof of P
% 29.96/30.15 Found (x01 x020) as proof of P
% 29.96/30.15 Found x020:Q
% 29.96/30.15 Found x020 as proof of Q
% 29.96/30.15 Found (x01 x020) as proof of P
% 29.96/30.15 Found (x01 x020) as proof of P
% 29.96/30.15 Found (x01 x020) as proof of P
% 29.96/30.15 Found x010:=(x01 x000):((iff P) Q)
% 29.96/30.15 Found (x01 x000) as proof of ((iff P) Q)
% 29.96/30.15 Found (x01 x000) as proof of ((iff P) Q)
% 29.96/30.15 Found x010:=(x01 x000):((iff P) Q)
% 29.96/30.15 Found (x01 x000) as proof of ((iff P) Q)
% 29.96/30.15 Found (x01 x000) as proof of ((iff P) Q)
% 29.96/30.15 Found x02:((iff Q) x)
% 29.96/30.15 Instantiate: x:=P:Prop
% 29.96/30.15 Found x02 as proof of ((iff Q) P)
% 29.96/30.15 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 29.96/30.15 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 29.96/30.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 29.96/30.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 29.96/30.15 Found x000:=(x00 x010):R
% 29.96/30.15 Found (x00 x010) as proof of R
% 29.96/30.15 Found (x00 x010) as proof of R
% 29.96/30.15 Found x010:=(x01 x020):x
% 29.96/30.15 Found (x01 x020) as proof of P
% 29.96/30.15 Found (x01 x020) as proof of P
% 29.96/30.15 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 29.96/30.15 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 29.96/30.15 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 31.20/31.47 Found x010:=(x01 x000):((iff P) Q)
% 31.20/31.47 Found (x01 x000) as proof of ((iff P) Q)
% 31.20/31.47 Found (x01 x000) as proof of ((iff P) Q)
% 31.20/31.47 Found x010:=(x01 x000):((iff P) Q)
% 31.20/31.47 Found x010 as proof of ((iff P) Q)
% 31.20/31.47 Found x000:=(x00 x012):R
% 31.20/31.47 Found (x00 x012) as proof of R
% 31.20/31.47 Found (x00 x012) as proof of R
% 31.20/31.47 Found x010:=(x01 x002):((iff P) Q)
% 31.20/31.47 Found (x01 x002) as proof of ((iff P) Q)
% 31.20/31.47 Found (x01 x002) as proof of ((iff P) Q)
% 31.20/31.47 Found x010:=(x01 x000):((iff P) Q)
% 31.20/31.47 Found x010 as proof of ((iff P) Q)
% 31.20/31.47 Found x010:=(x01 x000):((iff P) Q)
% 31.20/31.47 Found x010 as proof of ((iff P) Q)
% 31.20/31.47 Found x010:=(x01 x000):((iff P) Q)
% 31.20/31.47 Found x010 as proof of ((iff P) Q)
% 31.20/31.47 Found x010:=(x01 x000):((iff P) Q)
% 31.20/31.47 Found x010 as proof of ((iff P) Q)
% 31.20/31.47 Found x010:=(x01 x000):((iff P) Q)
% 31.20/31.47 Found x010 as proof of ((iff P) Q)
% 31.20/31.47 Found x10:=(x1 x20):R
% 31.20/31.47 Found (x1 x20) as proof of R
% 31.20/31.47 Found (x1 x20) as proof of R
% 31.20/31.47 Found x010:=(x01 x002):((iff P) Q)
% 31.20/31.47 Found (x01 x002) as proof of ((iff P) Q)
% 31.20/31.47 Found (x01 x002) as proof of ((iff P) Q)
% 31.20/31.47 Found x010:=(x01 x000):((iff P) Q)
% 31.20/31.47 Found x010 as proof of ((iff P) Q)
% 31.20/31.47 Found x000:=(x00 x012):R
% 31.20/31.47 Found (x00 x012) as proof of R
% 31.20/31.47 Found (x00 x012) as proof of R
% 31.20/31.47 Found x010:=(x01 x000):((iff P) Q)
% 31.20/31.47 Found x010 as proof of ((iff P) Q)
% 31.20/31.47 Found x010:=(x01 x000):((iff P) Q)
% 31.20/31.47 Found (x01 x000) as proof of ((iff P) Q)
% 31.20/31.47 Found (x01 x000) as proof of ((iff P) Q)
% 31.20/31.47 Found x010:=(x01 x000):((iff P) Q)
% 31.20/31.47 Found x010 as proof of ((iff P) Q)
% 31.20/31.47 Found x000:=(x00 x010):R
% 31.20/31.47 Found (x00 x010) as proof of R
% 31.20/31.47 Found (x00 x010) as proof of R
% 31.20/31.47 Found x20:=(x2 x10):((iff P) Q)
% 31.20/31.47 Found (x2 x10) as proof of ((iff P) Q)
% 31.20/31.47 Found (x2 x10) as proof of ((iff P) Q)
% 31.20/31.47 Found x000:=(x00 x010):R
% 31.20/31.47 Found (x00 x010) as proof of R
% 31.20/31.47 Found (x00 x010) as proof of R
% 31.20/31.47 Found x010:x
% 31.20/31.47 Instantiate: x:=Q:Prop
% 31.20/31.47 Found x010 as proof of Q
% 31.20/31.47 Found x00:((iff Q) x)
% 31.20/31.47 Instantiate: x:=P:Prop
% 31.20/31.47 Found x00 as proof of ((iff Q) P)
% 31.20/31.47 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 31.20/31.47 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 31.20/31.47 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 31.20/31.47 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 31.20/31.47 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 31.20/31.47 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 31.20/31.47 Found x00:((iff Q) x)
% 31.20/31.47 Instantiate: x:=P:Prop
% 31.20/31.47 Found x00 as proof of ((iff Q) P)
% 31.20/31.47 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 31.20/31.47 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 31.20/31.47 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 31.20/31.47 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 31.20/31.47 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 31.20/31.47 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 31.20/31.47 Found x010:=(x01 x000):((iff P) Q)
% 31.20/31.47 Found (x01 x000) as proof of ((iff P) Q)
% 31.20/31.47 Found (x01 x000) as proof of ((iff P) Q)
% 31.20/31.47 Found x010:=(x01 x001):((iff P) Q)
% 31.20/31.47 Found x010 as proof of ((iff P) Q)
% 31.20/31.47 Found x010:=(x01 x000):((iff P) Q)
% 31.20/31.47 Found (x01 x000) as proof of ((iff P) Q)
% 31.20/31.47 Found (x01 x000) as proof of ((iff P) Q)
% 31.20/31.47 Found x000:=(x00 x011):R
% 31.20/31.47 Found (x00 x011) as proof of R
% 31.20/31.47 Found (x00 x011) as proof of R
% 31.20/31.47 Found x000:=(x00 x011):R
% 31.20/31.47 Found (x00 x011) as proof of R
% 31.20/31.47 Found (x00 x011) as proof of R
% 31.20/31.47 Found x030:x
% 31.20/31.47 Instantiate: x:=R:Prop
% 31.20/31.47 Found x030 as proof of R
% 31.20/31.47 Found x030:x
% 31.20/31.47 Instantiate: x:=Q:Prop
% 31.20/31.47 Found x030 as proof of Q
% 31.20/31.47 Found x030:x
% 31.20/31.47 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 31.20/31.47 Found x030 as proof of ((iff P) Q)
% 31.20/31.47 Found x030:x
% 31.20/31.47 Instantiate: x:=R:Prop
% 31.20/31.47 Found x030 as proof of R
% 31.20/31.47 Found x030:x
% 31.20/31.47 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 31.20/31.47 Found x030 as proof of ((iff P) Q)
% 31.20/31.47 Found x00:((iff Q) x)
% 31.20/31.47 Instantiate: x:=P:Prop
% 31.20/31.47 Found x00 as proof of ((iff Q) P)
% 31.20/31.47 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 31.20/31.47 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 31.20/31.47 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 31.20/31.47 Found (fun (x02:(x->Q))=> (((iff_sym Q) P) x00)) as proof of ((iff P) Q)
% 31.20/31.47 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00)) as proof of ((x->Q)->((iff P) Q))
% 31.20/31.47 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00)) as proof of ((Q->x)->((x->Q)->((iff P) Q)))
% 31.20/31.47 Found (and_rect10 (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 31.20/31.47 Found ((and_rect1 ((iff P) Q)) (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 31.20/31.47 Found (((fun (P0:Type) (x2:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x2) x00)) ((iff P) Q)) (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 33.08/33.30 Found (((fun (P0:Type) (x2:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x2) x00)) ((iff P) Q)) (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 33.08/33.30 Found x000:=(x00 x011):R
% 33.08/33.30 Found (x00 x011) as proof of R
% 33.08/33.30 Found (x00 x011) as proof of R
% 33.08/33.30 Found x010:=(x01 x001):((iff P) Q)
% 33.08/33.30 Found x010 as proof of ((iff P) Q)
% 33.08/33.30 Found x10:=(x1 x20):R
% 33.08/33.30 Found (x1 x20) as proof of R
% 33.08/33.30 Found (x1 x20) as proof of R
% 33.08/33.30 Found x010:=(x01 x000):((iff P) Q)
% 33.08/33.30 Found x010 as proof of ((iff P) Q)
% 33.08/33.30 Found x020:Q
% 33.08/33.30 Found x020 as proof of Q
% 33.08/33.30 Found (x01 x020) as proof of P
% 33.08/33.30 Found (x01 x020) as proof of P
% 33.08/33.30 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 33.08/33.30 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 33.08/33.30 Found x20:=(x2 x10):((iff P) Q)
% 33.08/33.30 Found (x2 x10) as proof of ((iff P) Q)
% 33.08/33.30 Found (x2 x10) as proof of ((iff P) Q)
% 33.08/33.30 Found x030:x
% 33.08/33.30 Instantiate: x:=R:Prop
% 33.08/33.30 Found x030 as proof of R
% 33.08/33.30 Found x010:x
% 33.08/33.30 Found x010 as proof of Q
% 33.08/33.30 Found x030:x
% 33.08/33.30 Instantiate: x:=R:Prop
% 33.08/33.30 Found x030 as proof of R
% 33.08/33.30 Found x030:x
% 33.08/33.30 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 33.08/33.30 Found x030 as proof of ((iff P) Q)
% 33.08/33.30 Found x030:x
% 33.08/33.30 Instantiate: x:=Q:Prop
% 33.08/33.30 Found x030 as proof of Q
% 33.08/33.30 Found x030:x
% 33.08/33.30 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 33.08/33.30 Found x030 as proof of ((iff P) Q)
% 33.08/33.30 Found x010:=(x01 x000):((iff P) Q)
% 33.08/33.30 Found x010 as proof of ((iff P) Q)
% 33.08/33.30 Found x010:=(x01 x002):((iff P) Q)
% 33.08/33.30 Found (x01 x002) as proof of ((iff P) Q)
% 33.08/33.30 Found (x01 x002) as proof of ((iff P) Q)
% 33.08/33.30 Found x010:=(x01 x000):((iff P) Q)
% 33.08/33.30 Found x010 as proof of ((iff P) Q)
% 33.08/33.30 Found x010:=(x01 x002):((iff P) Q)
% 33.08/33.30 Found (x01 x002) as proof of ((iff P) Q)
% 33.08/33.30 Found (x01 x002) as proof of ((iff P) Q)
% 33.08/33.30 Found x02:((iff Q) x)
% 33.08/33.30 Instantiate: x:=P:Prop
% 33.08/33.30 Found x02 as proof of ((iff Q) P)
% 33.08/33.30 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 33.08/33.30 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 33.08/33.30 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 33.08/33.30 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 33.08/33.30 Found x010:=(x01 x000):((iff P) Q)
% 33.08/33.30 Found x010 as proof of ((iff P) Q)
% 33.08/33.30 Found x010:=(x01 x000):((iff P) Q)
% 33.08/33.30 Found (x01 x000) as proof of ((iff P) Q)
% 33.08/33.30 Found (x01 x000) as proof of ((iff P) Q)
% 33.08/33.30 Found x010:=(x01 x000):((iff P) Q)
% 33.08/33.30 Found x010 as proof of ((iff P) Q)
% 33.08/33.30 Found x010:=(x01 x021):x
% 33.08/33.30 Found (x01 x021) as proof of P
% 33.08/33.30 Found (x01 x021) as proof of P
% 33.08/33.30 Found (x01 x021) as proof of P
% 33.08/33.30 Found x20:=(x2 x10):((iff P) Q)
% 33.08/33.30 Found (x2 x10) as proof of ((iff P) Q)
% 33.08/33.30 Found (x2 x10) as proof of ((iff P) Q)
% 33.08/33.30 Found x000:=(x00 x011):R
% 33.08/33.30 Found (x00 x011) as proof of R
% 33.08/33.30 Found (x00 x011) as proof of R
% 33.08/33.30 Found x010:=(x01 x001):((iff P) Q)
% 33.08/33.30 Found x010 as proof of ((iff P) Q)
% 33.08/33.30 Found x000:=(x00 x010):R
% 33.08/33.30 Found (x00 x010) as proof of R
% 33.08/33.30 Found (x00 x010) as proof of R
% 33.08/33.30 Found x000:=(x00 x010):R
% 33.08/33.30 Found (x00 x010) as proof of R
% 33.08/33.30 Found (x00 x010) as proof of R
% 33.08/33.30 Found x000:=(x00 x011):R
% 33.08/33.30 Found (x00 x011) as proof of R
% 33.08/33.30 Found (x00 x011) as proof of R
% 33.08/33.30 Found x000:=(x00 x011):R
% 33.08/33.30 Found (x00 x011) as proof of R
% 33.08/33.30 Found (x00 x011) as proof of R
% 33.08/33.30 Found x010:=(x01 x000):((iff P) Q)
% 33.08/33.30 Found x010 as proof of ((iff P) Q)
% 33.08/33.30 Found x010:=(x01 x000):((iff P) Q)
% 33.08/33.30 Found x010 as proof of ((iff P) Q)
% 33.08/33.30 Found x030:x
% 33.08/33.30 Found x030 as proof of Q
% 33.08/33.30 Found x010:=(x01 x000):((iff P) Q)
% 33.08/33.30 Found (x01 x000) as proof of ((iff P) Q)
% 33.08/33.30 Found (x01 x000) as proof of ((iff P) Q)
% 33.08/33.30 Found x010:=(x01 x000):((iff P) Q)
% 33.08/33.30 Found x010 as proof of ((iff P) Q)
% 33.08/33.30 Found x020:Q
% 33.08/33.30 Instantiate: x:=Q:Prop
% 33.08/33.30 Found x020 as proof of x
% 33.08/33.30 Found x02:((iff Q) x)
% 33.08/33.30 Instantiate: x:=P:Prop
% 33.08/33.30 Found x02 as proof of ((iff Q) P)
% 33.08/33.30 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 33.08/33.30 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 33.08/33.30 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 33.08/33.30 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 33.08/33.30 Found x010:=(x01 x000):((iff P) Q)
% 33.08/33.30 Found x010 as proof of ((iff P) Q)
% 33.08/33.30 Found x010:=(x01 x000):((iff P) Q)
% 33.08/33.30 Found (x01 x000) as proof of ((iff P) Q)
% 33.08/33.30 Found (x01 x000) as proof of ((iff P) Q)
% 33.08/33.30 Found x02:((iff Q) x)
% 33.08/33.30 Instantiate: x:=P:Prop
% 33.08/33.30 Found x02 as proof of ((iff Q) P)
% 33.08/33.30 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 33.08/33.30 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 34.81/35.05 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 34.81/35.05 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 34.81/35.05 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 34.81/35.05 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 34.81/35.05 Found x000:=(x00 x010):R
% 34.81/35.05 Found (x00 x010) as proof of R
% 34.81/35.05 Found (x00 x010) as proof of R
% 34.81/35.05 Found x000:=(x00 x010):R
% 34.81/35.05 Found (x00 x010) as proof of R
% 34.81/35.05 Found (x00 x010) as proof of R
% 34.81/35.05 Found x030:x
% 34.81/35.05 Found x030 as proof of Q
% 34.81/35.05 Found x010:=(x01 x000):((iff P) Q)
% 34.81/35.05 Found (x01 x000) as proof of ((iff P) Q)
% 34.81/35.05 Found (x01 x000) as proof of ((iff P) Q)
% 34.81/35.05 Found x010:=(x01 x001):((iff P) Q)
% 34.81/35.05 Found x010 as proof of ((iff P) Q)
% 34.81/35.05 Found x010:=(x01 x000):((iff P) Q)
% 34.81/35.05 Found (x01 x000) as proof of ((iff P) Q)
% 34.81/35.05 Found (x01 x000) as proof of ((iff P) Q)
% 34.81/35.05 Found x010:=(x01 x000):((iff P) Q)
% 34.81/35.05 Found x010 as proof of ((iff P) Q)
% 34.81/35.05 Found iff_sym100:=(iff_sym10 x02):((iff P) Q)
% 34.81/35.05 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 34.81/35.05 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 34.81/35.05 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 34.81/35.05 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 34.81/35.05 Found x030:x
% 34.81/35.05 Instantiate: x:=R:Prop
% 34.81/35.05 Found x030 as proof of R
% 34.81/35.05 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 34.81/35.05 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 34.81/35.05 Found iff_sym as proof of x
% 34.81/35.05 Found x20:=(x2 x10):((iff P) Q)
% 34.81/35.05 Found (x2 x10) as proof of ((iff P) Q)
% 34.81/35.05 Found (x2 x10) as proof of ((iff P) Q)
% 34.81/35.05 Found x020:Q
% 34.81/35.05 Found x020 as proof of Q
% 34.81/35.05 Found (x01 x020) as proof of P
% 34.81/35.05 Found (x01 x020) as proof of P
% 34.81/35.05 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 34.81/35.05 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 34.81/35.05 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 34.81/35.05 Found x010:((iff P) Q)
% 34.81/35.05 Instantiate: x:=((iff P) Q):Prop
% 34.81/35.05 Found x010 as proof of x
% 34.81/35.05 Found x010:=(x01 x000):((iff P) Q)
% 34.81/35.05 Found x010 as proof of ((iff P) Q)
% 34.81/35.05 Found x030:x
% 34.81/35.05 Instantiate: x:=P:Prop
% 34.81/35.05 Found x030 as proof of P
% 34.81/35.05 Found x030:x
% 34.81/35.05 Instantiate: x:=P:Prop
% 34.81/35.05 Found x030 as proof of P
% 34.81/35.05 Found x000:R
% 34.81/35.05 Instantiate: x:=R:Prop
% 34.81/35.05 Found x000 as proof of x
% 34.81/35.05 Found x030:x
% 34.81/35.05 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 34.81/35.05 Found x030 as proof of ((iff P) Q)
% 34.81/35.05 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 34.81/35.05 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 34.81/35.05 Found iff_sym as proof of x
% 34.81/35.05 Found x040:Q
% 34.81/35.05 Instantiate: x:=Q:Prop
% 34.81/35.05 Found x040 as proof of x
% 34.81/35.05 Found x010:=(x01 x000):((iff P) Q)
% 34.81/35.05 Found x010 as proof of ((iff P) Q)
% 34.81/35.05 Found x000:=(x00 x010):R
% 34.81/35.05 Found (x00 x010) as proof of R
% 34.81/35.05 Found (x00 x010) as proof of R
% 34.81/35.05 Found x010:x
% 34.81/35.05 Found x010 as proof of x
% 34.81/35.05 Found x020:Q
% 34.81/35.05 Found x020 as proof of Q
% 34.81/35.05 Found x020:Q
% 34.81/35.05 Found x020 as proof of x
% 34.81/35.05 Found x010:x
% 34.81/35.05 Found x010 as proof of Q
% 34.81/35.05 Found x00:((iff Q) x)
% 34.81/35.05 Instantiate: x:=P:Prop
% 34.81/35.05 Found x00 as proof of ((iff Q) P)
% 34.81/35.05 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 34.81/35.05 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 34.81/35.05 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 34.81/35.05 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 34.81/35.05 Found x010:=(x01 x000):((iff P) Q)
% 34.81/35.05 Found (x01 x000) as proof of ((iff P) Q)
% 34.81/35.05 Found (x01 x000) as proof of ((iff P) Q)
% 34.81/35.05 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 34.81/35.05 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 34.81/35.05 Found iff_sym as proof of x
% 34.81/35.05 Found x030:x
% 34.81/35.05 Instantiate: x:=R:Prop
% 34.81/35.05 Found x030 as proof of R
% 34.81/35.05 Found iff_sym000:=(iff_sym00 x00):((iff P) Q)
% 34.81/35.05 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 34.81/35.05 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 34.81/35.05 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 34.81/35.05 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 34.81/35.05 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 34.81/35.05 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 34.81/35.05 Found x010:((iff P) Q)
% 36.30/36.54 Instantiate: x:=((iff P) Q):Prop
% 36.30/36.54 Found x010 as proof of x
% 36.30/36.54 Found x030:x
% 36.30/36.54 Instantiate: x:=P:Prop
% 36.30/36.54 Found x030 as proof of P
% 36.30/36.54 Found x000:R
% 36.30/36.54 Instantiate: x:=R:Prop
% 36.30/36.54 Found x000 as proof of x
% 36.30/36.54 Found iff_sym000:=(iff_sym00 x00):((iff P) Q)
% 36.30/36.54 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 36.30/36.54 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 36.30/36.54 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 36.30/36.54 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 36.30/36.54 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 36.30/36.54 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 36.30/36.54 Found x040:Q
% 36.30/36.54 Instantiate: x:=Q:Prop
% 36.30/36.54 Found x040 as proof of x
% 36.30/36.54 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 36.30/36.54 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 36.30/36.54 Found iff_sym as proof of x
% 36.30/36.54 Found x030:x
% 36.30/36.54 Instantiate: x:=P:Prop
% 36.30/36.54 Found x030 as proof of P
% 36.30/36.54 Found x030:x
% 36.30/36.54 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 36.30/36.54 Found x030 as proof of ((iff P) Q)
% 36.30/36.54 Found x000:=(x00 x010):R
% 36.30/36.54 Found (x00 x010) as proof of R
% 36.30/36.54 Found (x00 x010) as proof of R
% 36.30/36.54 Found x000:=(x00 x010):R
% 36.30/36.54 Found (x00 x010) as proof of R
% 36.30/36.54 Found (x00 x010) as proof of R
% 36.30/36.54 Found x000:=(x00 x010):R
% 36.30/36.54 Found (x00 x010) as proof of R
% 36.30/36.54 Found (x00 x010) as proof of R
% 36.30/36.54 Found x000:=(x00 x010):R
% 36.30/36.54 Found (x00 x010) as proof of R
% 36.30/36.54 Found (x00 x010) as proof of R
% 36.30/36.54 Found x010:=(x01 x000):((iff P) Q)
% 36.30/36.54 Found x010 as proof of ((iff P) Q)
% 36.30/36.54 Found x010:=(x01 x000):((iff P) Q)
% 36.30/36.54 Found x010 as proof of ((iff P) Q)
% 36.30/36.54 Found x010:=(x01 x000):((iff P) Q)
% 36.30/36.54 Found x010 as proof of ((iff P) Q)
% 36.30/36.54 Found x010:=(x01 x000):((iff P) Q)
% 36.30/36.54 Found x010 as proof of ((iff P) Q)
% 36.30/36.54 Found x010:=(x01 x000):((iff P) Q)
% 36.30/36.54 Found x010 as proof of ((iff P) Q)
% 36.30/36.54 Found x010:=(x01 x000):((iff P) Q)
% 36.30/36.54 Found (x01 x000) as proof of ((iff P) Q)
% 36.30/36.54 Found (x01 x000) as proof of ((iff P) Q)
% 36.30/36.54 Found x010:=(x01 x000):((iff P) Q)
% 36.30/36.54 Found (x01 x000) as proof of ((iff P) Q)
% 36.30/36.54 Found (x01 x000) as proof of ((iff P) Q)
% 36.30/36.54 Found x010:=(x01 x000):((iff P) Q)
% 36.30/36.54 Found (x01 x000) as proof of ((iff P) Q)
% 36.30/36.54 Found (x01 x000) as proof of ((iff P) Q)
% 36.30/36.54 Found x00:((iff Q) x)
% 36.30/36.54 Instantiate: x:=P:Prop
% 36.30/36.54 Found x00 as proof of ((iff Q) P)
% 36.30/36.54 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 36.30/36.54 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 36.30/36.54 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 36.30/36.54 Found (fun (x02:(x->Q))=> (((iff_sym Q) P) x00)) as proof of ((iff P) Q)
% 36.30/36.54 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00)) as proof of ((x->Q)->((iff P) Q))
% 36.30/36.54 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00)) as proof of ((Q->x)->((x->Q)->((iff P) Q)))
% 36.30/36.54 Found (and_rect10 (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 36.30/36.54 Found ((and_rect1 ((iff P) Q)) (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 36.30/36.54 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x00)) ((iff P) Q)) (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 36.30/36.54 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x00)) ((iff P) Q)) (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 36.30/36.54 Found x010:=(x01 x000):((iff P) Q)
% 36.30/36.54 Found (x01 x000) as proof of ((iff P) Q)
% 36.30/36.54 Found (x01 x000) as proof of ((iff P) Q)
% 36.30/36.54 Found x010:=(x01 x000):((iff P) Q)
% 36.30/36.54 Found x010 as proof of ((iff P) Q)
% 36.30/36.54 Found x030:x
% 36.30/36.54 Found x030 as proof of Q
% 36.30/36.54 Found x040:Q
% 36.30/36.54 Found x040 as proof of x
% 36.30/36.54 Found x030:x
% 36.30/36.54 Found x030 as proof of x
% 36.30/36.54 Found x040:Q
% 36.30/36.54 Found x040 as proof of Q
% 36.30/36.54 Found x010:=(x01 x000):((iff P) Q)
% 36.30/36.54 Found (x01 x000) as proof of ((iff P) Q)
% 36.30/36.54 Found (x01 x000) as proof of ((iff P) Q)
% 36.30/36.54 Found x010:=(x01 x000):((iff P) Q)
% 36.30/36.54 Found (x01 x000) as proof of ((iff P) Q)
% 36.30/36.54 Found (x01 x000) as proof of ((iff P) Q)
% 36.30/36.54 Found x02:((iff Q) x)
% 36.30/36.54 Instantiate: x:=P:Prop
% 36.30/36.54 Found x02 as proof of ((iff Q) P)
% 36.30/36.54 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 36.30/36.54 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 36.30/36.54 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 36.30/36.54 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 36.30/36.54 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 36.30/36.54 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 37.30/37.52 Found x030:x
% 37.30/37.52 Instantiate: x:=P:Prop
% 37.30/37.52 Found x030 as proof of P
% 37.30/37.52 Found x010:((iff P) Q)
% 37.30/37.52 Instantiate: x:=((iff P) Q):Prop
% 37.30/37.52 Found x010 as proof of x
% 37.30/37.52 Found x010:=(x01 x000):((iff P) Q)
% 37.30/37.52 Found x010 as proof of ((iff P) Q)
% 37.30/37.52 Found x000:=(x00 x011):R
% 37.30/37.52 Found (x00 x011) as proof of R
% 37.30/37.52 Found (x00 x011) as proof of R
% 37.30/37.52 Found x030:x
% 37.30/37.52 Found x030 as proof of Q
% 37.30/37.52 Found x040:Q
% 37.30/37.52 Found x040 as proof of x
% 37.30/37.52 Found x000:=(x00 x011):R
% 37.30/37.52 Found (x00 x011) as proof of R
% 37.30/37.52 Found (x00 x011) as proof of R
% 37.30/37.52 Found x010:=(x01 x000):((iff P) Q)
% 37.30/37.52 Found x010 as proof of ((iff P) Q)
% 37.30/37.52 Found x040:Q
% 37.30/37.52 Found x040 as proof of Q
% 37.30/37.52 Found x030:x
% 37.30/37.52 Found x030 as proof of x
% 37.30/37.52 Found x010:=(x01 x000):((iff P) Q)
% 37.30/37.52 Found x010 as proof of ((iff P) Q)
% 37.30/37.52 Found x000:R
% 37.30/37.52 Instantiate: x:=R:Prop
% 37.30/37.52 Found x000 as proof of x
% 37.30/37.52 Found x000:=(x00 x011):R
% 37.30/37.52 Found (x00 x011) as proof of R
% 37.30/37.52 Found (x00 x011) as proof of R
% 37.30/37.52 Found x010:=(x01 x000):((iff P) Q)
% 37.30/37.52 Found x010 as proof of ((iff P) Q)
% 37.30/37.52 Found x010:=(x01 x000):((iff P) Q)
% 37.30/37.52 Found x010 as proof of ((iff P) Q)
% 37.30/37.52 Found x030:x
% 37.30/37.52 Instantiate: x:=P:Prop
% 37.30/37.52 Found x030 as proof of P
% 37.30/37.52 Found x010:=(x01 x000):((iff P) Q)
% 37.30/37.52 Found x010 as proof of ((iff P) Q)
% 37.30/37.52 Found iff_sym000:=(iff_sym00 x00):((iff P) Q)
% 37.30/37.52 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 37.30/37.52 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 37.30/37.52 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 37.30/37.52 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 37.30/37.52 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 37.30/37.52 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 37.30/37.52 Found x02:((iff Q) x)
% 37.30/37.52 Instantiate: x:=P:Prop
% 37.30/37.52 Found x02 as proof of ((iff Q) P)
% 37.30/37.52 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 37.30/37.52 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 37.30/37.52 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 37.30/37.52 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 37.30/37.52 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 37.30/37.52 Found (fun (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of R
% 37.30/37.52 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of ((x->Q)->R)
% 37.30/37.52 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of ((Q->x)->((x->Q)->R))
% 37.30/37.52 Found (and_rect10 (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 37.30/37.52 Found ((and_rect1 R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 37.30/37.52 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 37.30/37.52 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 37.30/37.52 Found x02:((iff Q) x)
% 37.30/37.52 Instantiate: x:=P:Prop
% 37.30/37.52 Found x02 as proof of ((iff Q) P)
% 37.30/37.52 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 37.30/37.52 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 37.30/37.52 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 37.30/37.52 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 37.30/37.52 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 37.30/37.52 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 37.30/37.52 Found x000:=(x00 x010):R
% 37.30/37.52 Found (x00 x010) as proof of R
% 37.30/37.52 Found (x00 x010) as proof of R
% 37.30/37.52 Found x010:x
% 37.30/37.52 Found x010 as proof of Q
% 37.30/37.52 Found x010:x
% 37.30/37.52 Found x010 as proof of x
% 37.30/37.52 Found x02:((iff Q) x)
% 37.30/37.52 Instantiate: x:=P:Prop
% 37.30/37.52 Found x02 as proof of ((iff Q) P)
% 37.30/37.52 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 37.30/37.52 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 37.30/37.52 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 37.30/37.52 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 37.30/37.52 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 37.30/37.52 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 37.30/37.52 Found iff_sym100:=(iff_sym10 x02):((iff P) Q)
% 37.30/37.52 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 37.30/37.52 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 37.30/37.52 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 37.30/37.52 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 37.30/37.52 Found x010:=(x01 x000):((iff P) Q)
% 37.30/37.52 Found (x01 x000) as proof of ((iff P) Q)
% 37.30/37.52 Found (x01 x000) as proof of ((iff P) Q)
% 37.30/37.52 Found x010:=(x01 x000):((iff P) Q)
% 37.30/37.52 Found (x01 x000) as proof of ((iff P) Q)
% 37.30/37.52 Found (x01 x000) as proof of ((iff P) Q)
% 37.30/37.52 Found x010:((iff P) Q)
% 37.30/37.52 Instantiate: x:=((iff P) Q):Prop
% 37.30/37.52 Found x010 as proof of x
% 37.30/37.52 Found x030:x
% 37.30/37.52 Instantiate: x:=P:Prop
% 38.84/39.05 Found x030 as proof of P
% 38.84/39.05 Found x000:R
% 38.84/39.05 Instantiate: x:=R:Prop
% 38.84/39.05 Found x000 as proof of x
% 38.84/39.05 Found x030:x
% 38.84/39.05 Instantiate: x:=P:Prop
% 38.84/39.05 Found x030 as proof of P
% 38.84/39.05 Found x010:=(x01 x001):((iff P) Q)
% 38.84/39.05 Found x010 as proof of ((iff P) Q)
% 38.84/39.05 Found x02:((iff Q) x)
% 38.84/39.05 Instantiate: x:=P:Prop
% 38.84/39.05 Found x02 as proof of ((iff Q) P)
% 38.84/39.05 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 38.84/39.05 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 38.84/39.05 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 38.84/39.05 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 38.84/39.05 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 38.84/39.05 Found (fun (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of R
% 38.84/39.05 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of ((x->Q)->R)
% 38.84/39.05 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of ((Q->x)->((x->Q)->R))
% 38.84/39.05 Found (and_rect10 (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 38.84/39.05 Found ((and_rect1 R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 38.84/39.05 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 38.84/39.05 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 38.84/39.05 Found x011:x
% 38.84/39.05 Instantiate: x:=P:Prop
% 38.84/39.05 Found (fun (x02:(x->Q))=> x011) as proof of P
% 38.84/39.05 Found (fun (x02:(x->Q))=> x011) as proof of ((x->Q)->P)
% 38.84/39.05 Found x010:=(x01 x000):((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found x010:=(x01 x000):((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found x000:=(x00 x010):R
% 38.84/39.05 Found (x00 x010) as proof of R
% 38.84/39.05 Found (x00 x010) as proof of R
% 38.84/39.05 Found x010:=(x01 x000):((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found x010:=(x01 x000):((iff P) Q)
% 38.84/39.05 Found x010 as proof of ((iff P) Q)
% 38.84/39.05 Found x010:=(x01 x000):((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found x020:Q
% 38.84/39.05 Instantiate: x:=Q:Prop
% 38.84/39.05 Found x020 as proof of x
% 38.84/39.05 Found iff_sym100:=(iff_sym10 x02):((iff P) Q)
% 38.84/39.05 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 38.84/39.05 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 38.84/39.05 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 38.84/39.05 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 38.84/39.05 Found x010:=(x01 x000):((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found x010:=(x01 x000):((iff P) Q)
% 38.84/39.05 Found x010 as proof of ((iff P) Q)
% 38.84/39.05 Found x010:=(x01 x000):((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found x00:((iff Q) x)
% 38.84/39.05 Instantiate: x:=P:Prop
% 38.84/39.05 Found x00 as proof of ((iff Q) P)
% 38.84/39.05 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 38.84/39.05 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 38.84/39.05 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 38.84/39.05 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 38.84/39.05 Found x00:((iff Q) x)
% 38.84/39.05 Instantiate: x:=P:Prop
% 38.84/39.05 Found x00 as proof of ((iff Q) P)
% 38.84/39.05 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 38.84/39.05 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 38.84/39.05 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 38.84/39.05 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 38.84/39.05 Found x000:=(x00 x011):R
% 38.84/39.05 Found (x00 x011) as proof of R
% 38.84/39.05 Found (x00 x011) as proof of R
% 38.84/39.05 Found x030:x
% 38.84/39.05 Found x030 as proof of Q
% 38.84/39.05 Found x000:=(x00 x011):R
% 38.84/39.05 Found (x00 x011) as proof of R
% 38.84/39.05 Found (x00 x011) as proof of R
% 38.84/39.05 Found x000:=(x00 x011):R
% 38.84/39.05 Found (x00 x011) as proof of R
% 38.84/39.05 Found (x00 x011) as proof of R
% 38.84/39.05 Found x030:x
% 38.84/39.05 Found x030 as proof of x
% 38.84/39.05 Found x000:=(x00 x010):R
% 38.84/39.05 Found (x00 x010) as proof of R
% 38.84/39.05 Found (x00 x010) as proof of R
% 38.84/39.05 Found x021:Q
% 38.84/39.05 Found x021 as proof of Q
% 38.84/39.05 Found (x01 x021) as proof of P
% 38.84/39.05 Found (x01 x021) as proof of P
% 38.84/39.05 Found (x01 x021) as proof of P
% 38.84/39.05 Found x010:=(x01 x000):((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found (x01 x000) as proof of ((iff P) Q)
% 38.84/39.05 Found x000:=(x00 x010):R
% 38.84/39.05 Found (x00 x010) as proof of R
% 38.84/39.05 Found (x00 x010) as proof of R
% 38.84/39.05 Found x030:x
% 38.84/39.05 Instantiate: x:=P:Prop
% 38.84/39.05 Found (fun (x04:(x->Q))=> x030) as proof of P
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found x010 as proof of ((iff P) Q)
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found x010 as proof of ((iff P) Q)
% 39.99/40.25 Found x000:R
% 39.99/40.25 Instantiate: x:=R:Prop
% 39.99/40.25 Found x000 as proof of x
% 39.99/40.25 Found x030:x
% 39.99/40.25 Instantiate: x:=P:Prop
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of P
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 39.99/40.25 Found x030:x
% 39.99/40.25 Instantiate: x:=P:Prop
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of P
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 39.99/40.25 Found x030:x
% 39.99/40.25 Instantiate: x:=P:Prop
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of P
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found (x01 x000) as proof of ((iff P) Q)
% 39.99/40.25 Found (x01 x000) as proof of ((iff P) Q)
% 39.99/40.25 Found x030:x
% 39.99/40.25 Instantiate: x:=P:Prop
% 39.99/40.25 Found x030 as proof of P
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found x010 as proof of ((iff P) Q)
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found x010 as proof of ((iff P) Q)
% 39.99/40.25 Found x031:x
% 39.99/40.25 Instantiate: x:=P:Prop
% 39.99/40.25 Found (fun (x04:(x->Q))=> x031) as proof of P
% 39.99/40.25 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 39.99/40.25 Found x030:x
% 39.99/40.25 Found x030 as proof of x
% 39.99/40.25 Found x030:x
% 39.99/40.25 Found x030 as proof of Q
% 39.99/40.25 Found x010:=(x01 x002):((iff P) Q)
% 39.99/40.25 Found x010 as proof of ((iff P) Q)
% 39.99/40.25 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 39.99/40.25 Found (iff_refl Q) as proof of ((iff Q) x)
% 39.99/40.25 Found (iff_refl Q) as proof of ((iff Q) x)
% 39.99/40.25 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 39.99/40.25 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 39.99/40.25 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 39.99/40.25 Found (iff_refl Q) as proof of ((iff Q) x)
% 39.99/40.25 Found (iff_refl Q) as proof of ((iff Q) x)
% 39.99/40.25 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 39.99/40.25 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 39.99/40.25 Found x000:=(x00 x010):R
% 39.99/40.25 Found (x00 x010) as proof of R
% 39.99/40.25 Found (x00 x010) as proof of R
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found (x01 x000) as proof of ((iff P) Q)
% 39.99/40.25 Found (x01 x000) as proof of ((iff P) Q)
% 39.99/40.25 Found x000:=(x00 x010):R
% 39.99/40.25 Found (x00 x010) as proof of R
% 39.99/40.25 Found (x00 x010) as proof of R
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found (x01 x000) as proof of ((iff P) Q)
% 39.99/40.25 Found (x01 x000) as proof of ((iff P) Q)
% 39.99/40.25 Found x020:Q
% 39.99/40.25 Found x020 as proof of x
% 39.99/40.25 Found x000:=(x00 x010):R
% 39.99/40.25 Found (x00 x010) as proof of R
% 39.99/40.25 Found (x00 x010) as proof of R
% 39.99/40.25 Found x020:Q
% 39.99/40.25 Found x020 as proof of Q
% 39.99/40.25 Found x030:x
% 39.99/40.25 Instantiate: x:=P:Prop
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of P
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found (x01 x000) as proof of ((iff P) Q)
% 39.99/40.25 Found (x01 x000) as proof of ((iff P) Q)
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found (x01 x000) as proof of ((iff P) Q)
% 39.99/40.25 Found (x01 x000) as proof of ((iff P) Q)
% 39.99/40.25 Found x000:R
% 39.99/40.25 Instantiate: x:=R:Prop
% 39.99/40.25 Found x000 as proof of x
% 39.99/40.25 Found x031:x
% 39.99/40.25 Instantiate: x:=P:Prop
% 39.99/40.25 Found (fun (x04:(x->Q))=> x031) as proof of P
% 39.99/40.25 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 39.99/40.25 Found x030:x
% 39.99/40.25 Instantiate: x:=P:Prop
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of P
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 39.99/40.25 Found x030:x
% 39.99/40.25 Instantiate: x:=P:Prop
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of P
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 39.99/40.25 Found x030:x
% 39.99/40.25 Instantiate: x:=P:Prop
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of P
% 39.99/40.25 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found (x01 x000) as proof of ((iff P) Q)
% 39.99/40.25 Found (x01 x000) as proof of ((iff P) Q)
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found x010 as proof of ((iff P) Q)
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found x010 as proof of ((iff P) Q)
% 39.99/40.25 Found x030:x
% 39.99/40.25 Instantiate: x:=P:Prop
% 39.99/40.25 Found x030 as proof of P
% 39.99/40.25 Found x010:=(x01 x001):((iff P) Q)
% 39.99/40.25 Found x010 as proof of ((iff P) Q)
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found x010 as proof of ((iff P) Q)
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found x010 as proof of ((iff P) Q)
% 39.99/40.25 Found x010:=(x01 x000):((iff P) Q)
% 39.99/40.25 Found x010 as proof of ((iff P) Q)
% 39.99/40.25 Found x02:((iff Q) x)
% 39.99/40.25 Instantiate: x:=P:Prop
% 39.99/40.25 Found x02 as proof of ((iff Q) P)
% 39.99/40.25 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 41.41/41.66 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 41.41/41.66 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 41.41/41.66 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 41.41/41.66 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 41.41/41.66 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 41.41/41.66 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 41.41/41.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 41.41/41.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 41.41/41.66 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 41.41/41.66 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 41.41/41.66 Found x000:=(x00 x010):R
% 41.41/41.66 Found (x00 x010) as proof of R
% 41.41/41.66 Found (x00 x010) as proof of R
% 41.41/41.66 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 41.41/41.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 41.41/41.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 41.41/41.66 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 41.41/41.66 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 41.41/41.66 Found x010:=(x01 x000):((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found x000:=(x00 x010):R
% 41.41/41.66 Found (x00 x010) as proof of R
% 41.41/41.66 Found (x00 x010) as proof of R
% 41.41/41.66 Found x000:=(x00 x010):R
% 41.41/41.66 Found (x00 x010) as proof of R
% 41.41/41.66 Found (x00 x010) as proof of R
% 41.41/41.66 Found x010:=(x01 x000):((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found x010:=(x01 x000):((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found x010:=(x01 x000):((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found x010:=(x01 x002):((iff P) Q)
% 41.41/41.66 Found (x01 x002) as proof of ((iff P) Q)
% 41.41/41.66 Found (x01 x002) as proof of ((iff P) Q)
% 41.41/41.66 Found x010:x
% 41.41/41.66 Instantiate: x:=R:Prop
% 41.41/41.66 Found x010 as proof of R
% 41.41/41.66 Found x010:=(x01 x000):((iff P) Q)
% 41.41/41.66 Found x010 as proof of ((iff P) Q)
% 41.41/41.66 Found x010:x
% 41.41/41.66 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 41.41/41.66 Found x010 as proof of ((iff P) Q)
% 41.41/41.66 Found x010:x
% 41.41/41.66 Instantiate: x:=R:Prop
% 41.41/41.66 Found x010 as proof of R
% 41.41/41.66 Found x010:x
% 41.41/41.66 Instantiate: x:=Q:Prop
% 41.41/41.66 Found x010 as proof of Q
% 41.41/41.66 Found x1:(((iff P) Q)->R)
% 41.41/41.66 Instantiate: x:=(((iff P) Q)->R):Prop
% 41.41/41.66 Found x1 as proof of x
% 41.41/41.66 Found x02:((iff Q) x)
% 41.41/41.66 Instantiate: x:=P:Prop
% 41.41/41.66 Found x02 as proof of ((iff Q) P)
% 41.41/41.66 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 41.41/41.66 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 41.41/41.66 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 41.41/41.66 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 41.41/41.66 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 41.41/41.66 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 41.41/41.66 Found x010:x
% 41.41/41.66 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 41.41/41.66 Found x010 as proof of ((iff P) Q)
% 41.41/41.66 Found x010:x
% 41.41/41.66 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 41.41/41.66 Found x010 as proof of ((iff P) Q)
% 41.41/41.66 Found x000:=(x00 x010):R
% 41.41/41.66 Found (x00 x010) as proof of R
% 41.41/41.66 Found (x00 x010) as proof of R
% 41.41/41.66 Found x02:((iff Q) x)
% 41.41/41.66 Instantiate: x:=P:Prop
% 41.41/41.66 Found x02 as proof of ((iff Q) P)
% 41.41/41.66 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 41.41/41.66 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 41.41/41.66 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 41.41/41.66 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 41.41/41.66 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 41.41/41.66 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 41.41/41.66 Found x010:=(x01 x000):((iff P) Q)
% 41.41/41.66 Found x010 as proof of ((iff P) Q)
% 41.41/41.66 Found x010:=(x01 x000):((iff P) Q)
% 41.41/41.66 Found x010 as proof of ((iff P) Q)
% 41.41/41.66 Found x10:R
% 41.41/41.66 Instantiate: x:=R:Prop
% 41.41/41.66 Found x10 as proof of x
% 41.41/41.66 Found x020:Q
% 41.41/41.66 Instantiate: x:=Q:Prop
% 41.41/41.66 Found x020 as proof of x
% 41.41/41.66 Found x010:x
% 41.41/41.66 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 41.41/41.66 Found x010 as proof of ((R->((iff P) Q))->P)
% 41.41/41.66 Found x010:=(x01 x000):((iff P) Q)
% 41.41/41.66 Found x010 as proof of ((iff P) Q)
% 41.41/41.66 Found x010:=(x01 x000):((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found x010:=(x01 x001):((iff P) Q)
% 41.41/41.66 Found x010 as proof of ((iff P) Q)
% 41.41/41.66 Found x010:=(x01 x000):((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found x000:=(x00 x010):R
% 41.41/41.66 Found (x00 x010) as proof of R
% 41.41/41.66 Found (x00 x010) as proof of R
% 41.41/41.66 Found x010:=(x01 x000):((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found (x01 x000) as proof of ((iff P) Q)
% 41.41/41.66 Found x030:x
% 41.41/41.66 Instantiate: x:=P:Prop
% 41.41/41.66 Found (fun (x04:(x->Q))=> x030) as proof of P
% 41.41/41.66 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 43.56/43.77 Found x020:=(x02 x030):Q
% 43.56/43.77 Found (x02 x030) as proof of Q
% 43.56/43.77 Found (x02 x030) as proof of Q
% 43.56/43.77 Found x030:=(x03 x020):P
% 43.56/43.77 Found (x03 x020) as proof of P
% 43.56/43.77 Found (x03 x020) as proof of P
% 43.56/43.77 Found x010:=(x01 x002):((iff P) Q)
% 43.56/43.77 Found x010 as proof of ((iff P) Q)
% 43.56/43.77 Found x030:x
% 43.56/43.77 Instantiate: x:=R:Prop
% 43.56/43.77 Found x030 as proof of R
% 43.56/43.77 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 43.56/43.77 Found (iff_refl Q) as proof of ((iff Q) x)
% 43.56/43.77 Found (iff_refl Q) as proof of ((iff Q) x)
% 43.56/43.77 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 43.56/43.77 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 43.56/43.77 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 43.56/43.77 Found (iff_refl Q) as proof of ((iff Q) x)
% 43.56/43.77 Found (iff_refl Q) as proof of ((iff Q) x)
% 43.56/43.77 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 43.56/43.77 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 43.56/43.77 Found x000:=(x00 x010):R
% 43.56/43.77 Found (x00 x010) as proof of R
% 43.56/43.77 Found (x00 x010) as proof of R
% 43.56/43.77 Found x00:((iff Q) x)
% 43.56/43.77 Instantiate: x:=P:Prop
% 43.56/43.77 Found x00 as proof of ((iff Q) P)
% 43.56/43.77 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 43.56/43.77 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 43.56/43.77 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 43.56/43.77 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 43.56/43.77 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 43.56/43.77 Found (iff_refl Q) as proof of ((iff Q) x)
% 43.56/43.77 Found (iff_refl Q) as proof of ((iff Q) x)
% 43.56/43.77 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 43.56/43.77 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 43.56/43.77 Found x00:((iff Q) x)
% 43.56/43.77 Instantiate: x:=P:Prop
% 43.56/43.77 Found x00 as proof of ((iff Q) P)
% 43.56/43.77 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 43.56/43.77 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 43.56/43.77 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 43.56/43.77 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 43.56/43.77 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 43.56/43.77 Found (iff_refl Q) as proof of ((iff Q) x)
% 43.56/43.77 Found (iff_refl Q) as proof of ((iff Q) x)
% 43.56/43.77 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 43.56/43.77 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 43.56/43.77 Found x000:=(x00 x010):R
% 43.56/43.77 Found (x00 x010) as proof of R
% 43.56/43.77 Found (x00 x010) as proof of R
% 43.56/43.77 Found x010:=(x01 x021):x
% 43.56/43.77 Instantiate: x:=P:Prop
% 43.56/43.77 Found (x01 x021) as proof of P
% 43.56/43.77 Found (x01 x021) as proof of P
% 43.56/43.77 Found x010:=(x01 x000):((iff P) Q)
% 43.56/43.77 Found (x01 x000) as proof of ((iff P) Q)
% 43.56/43.77 Found (x01 x000) as proof of ((iff P) Q)
% 43.56/43.77 Found x010:=(x01 x000):((iff P) Q)
% 43.56/43.77 Found x010 as proof of ((iff P) Q)
% 43.56/43.77 Found x010:=(x01 x000):((iff P) Q)
% 43.56/43.77 Found x010 as proof of ((iff P) Q)
% 43.56/43.77 Found x030:x
% 43.56/43.77 Instantiate: x:=P:Prop
% 43.56/43.77 Found (fun (x04:(x->Q))=> x030) as proof of P
% 43.56/43.77 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 43.56/43.77 Found x010:=(x01 x000):((iff P) Q)
% 43.56/43.77 Found (x01 x000) as proof of ((iff P) Q)
% 43.56/43.77 Found (x01 x000) as proof of ((iff P) Q)
% 43.56/43.77 Found x010:=(x01 x000):((iff P) Q)
% 43.56/43.77 Found x010 as proof of ((iff P) Q)
% 43.56/43.77 Found x010:=(x01 x000):((iff P) Q)
% 43.56/43.77 Found x010 as proof of ((iff P) Q)
% 43.56/43.77 Found x000:=(x00 x010):R
% 43.56/43.77 Found (x00 x010) as proof of R
% 43.56/43.77 Found (x00 x010) as proof of R
% 43.56/43.77 Found x010:=(x01 x000):((iff P) Q)
% 43.56/43.77 Found x010 as proof of ((iff P) Q)
% 43.56/43.77 Found x020:Q
% 43.56/43.77 Found x020 as proof of Q
% 43.56/43.77 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 43.56/43.77 Found (iff_refl Q) as proof of ((iff Q) x)
% 43.56/43.77 Found (iff_refl Q) as proof of ((iff Q) x)
% 43.56/43.77 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 43.56/43.77 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 43.56/43.77 Found x010:x
% 43.56/43.77 Found x010 as proof of x
% 43.56/43.77 Found x020:Q
% 43.56/43.77 Found x020 as proof of x
% 43.56/43.77 Found x030:x
% 43.56/43.77 Instantiate: x:=R:Prop
% 43.56/43.77 Found x030 as proof of R
% 43.56/43.77 Found x010:=(x01 x000):((iff P) Q)
% 43.56/43.77 Found x010 as proof of ((iff P) Q)
% 43.56/43.77 Found x010:x
% 43.56/43.77 Found x010 as proof of Q
% 43.56/43.77 Found x010:=(x01 x000):((iff P) Q)
% 43.56/43.77 Found (x01 x000) as proof of ((iff P) Q)
% 43.56/43.77 Found (x01 x000) as proof of ((iff P) Q)
% 43.56/43.77 Found x010:x
% 43.56/43.77 Found x010 as proof of Q
% 43.56/43.77 Found x000:=(x00 x010):R
% 43.56/43.77 Found (x00 x010) as proof of R
% 43.56/43.77 Found (x00 x010) as proof of R
% 43.56/43.77 Found x000:=(x00 x010):R
% 43.56/43.77 Found (x00 x010) as proof of R
% 43.56/43.77 Found (x00 x010) as proof of R
% 43.56/43.77 Found x010:=(x01 x001):((iff P) Q)
% 43.56/43.77 Found x010 as proof of ((iff P) Q)
% 43.56/43.77 Found x010:=(x01 x000):((iff P) Q)
% 43.56/43.77 Found (x01 x000) as proof of ((iff P) Q)
% 43.56/43.77 Found (x01 x000) as proof of ((iff P) Q)
% 43.56/43.77 Found x010:=(x01 x000):((iff P) Q)
% 43.56/43.77 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found x010:=(x01 x001):((iff P) Q)
% 45.02/45.22 Found x010 as proof of ((iff P) Q)
% 45.02/45.22 Found x010:=(x01 x000):((iff P) Q)
% 45.02/45.22 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found x010:=(x01 x000):((iff P) Q)
% 45.02/45.22 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found x010:=(x01 x000):((iff P) Q)
% 45.02/45.22 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found x010:=(x01 x000):((iff P) Q)
% 45.02/45.22 Found x010 as proof of ((iff P) Q)
% 45.02/45.22 Found x030:=(x03 x040):x
% 45.02/45.22 Instantiate: x:=R:Prop
% 45.02/45.22 Found (x03 x040) as proof of R
% 45.02/45.22 Found (x03 x040) as proof of R
% 45.02/45.22 Found x010:=(x01 x000):((iff P) Q)
% 45.02/45.22 Found x010 as proof of ((iff P) Q)
% 45.02/45.22 Found x010:=(x01 x000):((iff P) Q)
% 45.02/45.22 Found x010 as proof of ((iff P) Q)
% 45.02/45.22 Found x030:=(x03 x040):x
% 45.02/45.22 Instantiate: x:=R:Prop
% 45.02/45.22 Found (x03 x040) as proof of R
% 45.02/45.22 Found (x03 x040) as proof of R
% 45.02/45.22 Found x000:=(x00 x010):R
% 45.02/45.22 Found (x00 x010) as proof of R
% 45.02/45.22 Found (x00 x010) as proof of R
% 45.02/45.22 Found x030:=(x03 x040):x
% 45.02/45.22 Instantiate: x:=P:Prop
% 45.02/45.22 Found (x03 x040) as proof of P
% 45.02/45.22 Found (x03 x040) as proof of P
% 45.02/45.22 Found x000:=(x00 x010):R
% 45.02/45.22 Found (x00 x010) as proof of R
% 45.02/45.22 Found (x00 x010) as proof of R
% 45.02/45.22 Found x000:=(x00 x010):R
% 45.02/45.22 Found (x00 x010) as proof of R
% 45.02/45.22 Found (x00 x010) as proof of R
% 45.02/45.22 Found x010:=(x01 x000):((iff P) Q)
% 45.02/45.22 Found x010 as proof of ((iff P) Q)
% 45.02/45.22 Found x1:(((iff P) Q)->R)
% 45.02/45.22 Instantiate: x:=(((iff P) Q)->R):Prop
% 45.02/45.22 Found x1 as proof of x
% 45.02/45.22 Found x030:=(x03 x040):x
% 45.02/45.22 Instantiate: x:=P:Prop
% 45.02/45.22 Found (x03 x040) as proof of P
% 45.02/45.22 Found (x03 x040) as proof of P
% 45.02/45.22 Found x030:=(x03 x040):x
% 45.02/45.22 Instantiate: x:=P:Prop
% 45.02/45.22 Found (x03 x040) as proof of P
% 45.02/45.22 Found (x03 x040) as proof of P
% 45.02/45.22 Found x030:=(x03 x041):x
% 45.02/45.22 Instantiate: x:=P:Prop
% 45.02/45.22 Found (x03 x041) as proof of P
% 45.02/45.22 Found (x03 x041) as proof of P
% 45.02/45.22 Found x030:=(x03 x040):x
% 45.02/45.22 Instantiate: x:=P:Prop
% 45.02/45.22 Found (x03 x040) as proof of P
% 45.02/45.22 Found (x03 x040) as proof of P
% 45.02/45.22 Found x030:=(x03 x040):x
% 45.02/45.22 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 45.02/45.22 Found (x03 x040) as proof of ((iff P) Q)
% 45.02/45.22 Found (x03 x040) as proof of ((iff P) Q)
% 45.02/45.22 Found x030:=(x03 x040):x
% 45.02/45.22 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 45.02/45.22 Found (x03 x040) as proof of ((iff P) Q)
% 45.02/45.22 Found (x03 x040) as proof of ((iff P) Q)
% 45.02/45.22 Found x010:=(x01 x000):((iff P) Q)
% 45.02/45.22 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found x010:=(x01 x000):((iff P) Q)
% 45.02/45.22 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found x000:=(x00 x010):R
% 45.02/45.22 Found (x00 x010) as proof of R
% 45.02/45.22 Found (x00 x010) as proof of R
% 45.02/45.22 Found x010:=(x01 x000):((iff P) Q)
% 45.02/45.22 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found (x01 x000) as proof of ((iff P) Q)
% 45.02/45.22 Found x010:x
% 45.02/45.22 Instantiate: x:=R:Prop
% 45.02/45.22 Found x010 as proof of R
% 45.02/45.22 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 45.02/45.22 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 45.02/45.22 Found iff_sym as proof of x
% 45.02/45.22 Found x010:x
% 45.02/45.22 Instantiate: x:=R:Prop
% 45.02/45.22 Found x010 as proof of R
% 45.02/45.22 Found x010:x
% 45.02/45.22 Instantiate: x:=P:Prop
% 45.02/45.22 Found x010 as proof of P
% 45.02/45.22 Found x20:((iff P) Q)
% 45.02/45.22 Instantiate: x:=((iff P) Q):Prop
% 45.02/45.22 Found x20 as proof of x
% 45.02/45.22 Found x2:(R->((iff P) Q))
% 45.02/45.22 Instantiate: x:=(R->((iff P) Q)):Prop
% 45.02/45.22 Found x2 as proof of x
% 45.02/45.22 Found x030:=(x03 x020):P
% 45.02/45.22 Found (x03 x020) as proof of P
% 45.02/45.22 Found (x03 x020) as proof of P
% 45.02/45.22 Found x010:x
% 45.02/45.22 Instantiate: x:=P:Prop
% 45.02/45.22 Found x010 as proof of P
% 45.02/45.22 Found x20:((iff P) Q)
% 45.02/45.22 Instantiate: x:=((iff P) Q):Prop
% 45.02/45.22 Found x20 as proof of x
% 45.02/45.22 Found x010:x
% 45.02/45.22 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 45.02/45.22 Found x010 as proof of ((iff P) Q)
% 45.02/45.22 Found x020:Q
% 45.02/45.22 Instantiate: x:=Q:Prop
% 45.02/45.22 Found x020 as proof of x
% 45.02/45.22 Found x010:x
% 45.02/45.22 Instantiate: x:=P:Prop
% 45.02/45.22 Found x010 as proof of P
% 45.02/45.22 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 45.02/45.22 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 45.02/45.22 Found iff_sym as proof of x
% 45.02/45.22 Found x10:R
% 45.02/45.22 Instantiate: x:=R:Prop
% 45.02/45.22 Found x10 as proof of x
% 45.02/45.22 Found x000:=(x00 x010):R
% 45.02/45.22 Found (x00 x010) as proof of R
% 46.01/46.23 Found (x00 x010) as proof of R
% 46.01/46.23 Found x030:=(x03 x040):x
% 46.01/46.23 Instantiate: x:=R:Prop
% 46.01/46.23 Found (x03 x040) as proof of R
% 46.01/46.23 Found (x03 x040) as proof of R
% 46.01/46.23 Found x02:((iff Q) x)
% 46.01/46.23 Instantiate: x:=P:Prop
% 46.01/46.23 Found x02 as proof of ((iff Q) P)
% 46.01/46.23 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 46.01/46.23 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 46.01/46.23 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 46.01/46.23 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 46.01/46.23 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 46.01/46.23 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 46.01/46.23 Found x010:x
% 46.01/46.23 Instantiate: x:=P:Prop
% 46.01/46.23 Found x010 as proof of P
% 46.01/46.23 Found x10:R
% 46.01/46.23 Instantiate: x:=R:Prop
% 46.01/46.23 Found x10 as proof of x
% 46.01/46.23 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 46.01/46.23 Found (iff_refl Q) as proof of ((iff Q) x)
% 46.01/46.23 Found (iff_refl Q) as proof of ((iff Q) x)
% 46.01/46.23 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 46.01/46.23 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 46.01/46.23 Found x2:(R->((iff P) Q))
% 46.01/46.23 Instantiate: x:=(R->((iff P) Q)):Prop
% 46.01/46.23 Found x2 as proof of x
% 46.01/46.23 Found x010:x
% 46.01/46.23 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 46.01/46.23 Found x010 as proof of ((iff P) Q)
% 46.01/46.23 Found x020:Q
% 46.01/46.23 Instantiate: x:=Q:Prop
% 46.01/46.23 Found x020 as proof of x
% 46.01/46.23 Found x030:=(x03 x040):x
% 46.01/46.23 Instantiate: x:=R:Prop
% 46.01/46.23 Found (x03 x040) as proof of R
% 46.01/46.23 Found (x03 x040) as proof of R
% 46.01/46.23 Found x000:=(x00 x010):R
% 46.01/46.23 Found (x00 x010) as proof of R
% 46.01/46.23 Found (x00 x010) as proof of R
% 46.01/46.23 Found x030:=(x03 x040):x
% 46.01/46.23 Instantiate: x:=P:Prop
% 46.01/46.23 Found (x03 x040) as proof of P
% 46.01/46.23 Found (x03 x040) as proof of P
% 46.01/46.23 Found x030:=(x03 x040):x
% 46.01/46.23 Instantiate: x:=P:Prop
% 46.01/46.23 Found (x03 x040) as proof of P
% 46.01/46.23 Found (x03 x040) as proof of P
% 46.01/46.23 Found x030:=(x03 x041):x
% 46.01/46.23 Instantiate: x:=P:Prop
% 46.01/46.23 Found (x03 x041) as proof of P
% 46.01/46.23 Found (x03 x041) as proof of P
% 46.01/46.23 Found x030:=(x03 x040):x
% 46.01/46.23 Instantiate: x:=P:Prop
% 46.01/46.23 Found (x03 x040) as proof of P
% 46.01/46.23 Found (x03 x040) as proof of P
% 46.01/46.23 Found x030:=(x03 x040):x
% 46.01/46.23 Instantiate: x:=P:Prop
% 46.01/46.23 Found (x03 x040) as proof of P
% 46.01/46.23 Found (x03 x040) as proof of P
% 46.01/46.23 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 46.01/46.23 Found (iff_refl Q) as proof of ((iff Q) x)
% 46.01/46.23 Found (iff_refl Q) as proof of ((iff Q) x)
% 46.01/46.23 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 46.01/46.23 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 46.01/46.23 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 46.01/46.23 Found (iff_refl Q) as proof of ((iff Q) x)
% 46.01/46.23 Found (iff_refl Q) as proof of ((iff Q) x)
% 46.01/46.23 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 46.01/46.23 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 46.01/46.23 Found x010:=(x01 x000):((iff P) Q)
% 46.01/46.23 Found (x01 x000) as proof of ((iff P) Q)
% 46.01/46.23 Found (x01 x000) as proof of ((iff P) Q)
% 46.01/46.23 Found x030:=(x03 x040):x
% 46.01/46.23 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 46.01/46.23 Found (x03 x040) as proof of ((iff P) Q)
% 46.01/46.23 Found (x03 x040) as proof of ((iff P) Q)
% 46.01/46.23 Found x030:=(x03 x040):x
% 46.01/46.23 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 46.01/46.23 Found (x03 x040) as proof of ((iff P) Q)
% 46.01/46.23 Found (x03 x040) as proof of ((iff P) Q)
% 46.01/46.23 Found x000:=(x00 x010):R
% 46.01/46.23 Found (x00 x010) as proof of R
% 46.01/46.23 Found (x00 x010) as proof of R
% 46.01/46.23 Found x000:=(x00 x010):R
% 46.01/46.23 Found (x00 x010) as proof of R
% 46.01/46.23 Found (x00 x010) as proof of R
% 46.01/46.23 Found x010:=(x01 x000):((iff P) Q)
% 46.01/46.23 Found (x01 x000) as proof of ((iff P) Q)
% 46.01/46.23 Found (x01 x000) as proof of ((iff P) Q)
% 46.01/46.23 Found x010:=(x01 x002):((iff P) Q)
% 46.01/46.23 Found x010 as proof of ((iff P) Q)
% 46.01/46.23 Found x010:=(x01 x000):((iff P) Q)
% 46.01/46.23 Found (x01 x000) as proof of ((iff P) Q)
% 46.01/46.23 Found (x01 x000) as proof of ((iff P) Q)
% 46.01/46.23 Found x010:=(x01 x000):((iff P) Q)
% 46.01/46.23 Found (x01 x000) as proof of ((iff P) Q)
% 46.01/46.23 Found (x01 x000) as proof of ((iff P) Q)
% 46.01/46.23 Found x010:=(x01 x000):((iff P) Q)
% 46.01/46.23 Found (x01 x000) as proof of ((iff P) Q)
% 46.01/46.23 Found (x01 x000) as proof of ((iff P) Q)
% 46.01/46.23 Found x010:=(x01 x000):((iff P) Q)
% 46.01/46.23 Found x010 as proof of ((iff P) Q)
% 46.01/46.23 Found x030:=(x03 x020):P
% 46.01/46.23 Found (x03 x020) as proof of P
% 46.01/46.23 Found (x03 x020) as proof of P
% 46.01/46.23 Found x020:=(x02 x030):Q
% 46.01/46.23 Found (x02 x030) as proof of Q
% 46.01/46.23 Found (x02 x030) as proof of Q
% 46.01/46.23 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 46.01/46.23 Found (iff_refl Q) as proof of ((iff Q) x)
% 46.01/46.23 Found (iff_refl Q) as proof of ((iff Q) x)
% 46.01/46.23 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 46.01/46.23 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 46.01/46.23 Found x02:((iff Q) x)
% 46.01/46.23 Instantiate: x:=P:Prop
% 46.01/46.23 Found x02 as proof of ((iff Q) P)
% 47.37/47.62 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 47.37/47.62 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 47.37/47.62 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 47.37/47.62 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 47.37/47.62 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 47.37/47.62 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 47.37/47.62 Found x010:=(x01 x000):((iff P) Q)
% 47.37/47.62 Found x010 as proof of ((iff P) Q)
% 47.37/47.62 Found x000:=(x00 x010):R
% 47.37/47.62 Found (x00 x010) as proof of R
% 47.37/47.62 Found (x00 x010) as proof of R
% 47.37/47.62 Found x020:Q
% 47.37/47.62 Found x020 as proof of x
% 47.37/47.62 Found x010:=(x01 x000):((iff P) Q)
% 47.37/47.62 Found x010 as proof of ((iff P) Q)
% 47.37/47.62 Found x020:Q
% 47.37/47.62 Found x020 as proof of Q
% 47.37/47.62 Found x000:=(x00 x010):R
% 47.37/47.62 Found (x00 x010) as proof of R
% 47.37/47.62 Found (x00 x010) as proof of R
% 47.37/47.62 Found x030:x
% 47.37/47.62 Instantiate: x:=R:Prop
% 47.37/47.62 Found x030 as proof of R
% 47.37/47.62 Found x010:=(x01 x001):((iff P) Q)
% 47.37/47.62 Found x010 as proof of ((iff P) Q)
% 47.37/47.62 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 47.37/47.62 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 47.37/47.62 Found eta_expansion as proof of x
% 47.37/47.62 Found x000:=(x00 x010):R
% 47.37/47.62 Found (x00 x010) as proof of R
% 47.37/47.62 Found (x00 x010) as proof of R
% 47.37/47.62 Found x000:=(x00 x010):R
% 47.37/47.62 Found (x00 x010) as proof of R
% 47.37/47.62 Found (x00 x010) as proof of R
% 47.37/47.62 Found x010:=(x01 x000):((iff P) Q)
% 47.37/47.62 Found (x01 x000) as proof of ((iff P) Q)
% 47.37/47.62 Found (x01 x000) as proof of ((iff P) Q)
% 47.37/47.62 Found x010:=(x01 x001):((iff P) Q)
% 47.37/47.62 Found x010 as proof of ((iff P) Q)
% 47.37/47.62 Found x010:=(x01 x002):((iff P) Q)
% 47.37/47.62 Found (x01 x002) as proof of ((iff P) Q)
% 47.37/47.62 Found (x01 x002) as proof of ((iff P) Q)
% 47.37/47.62 Found x010:=(x01 x000):((iff P) Q)
% 47.37/47.62 Found (x01 x000) as proof of ((iff P) Q)
% 47.37/47.62 Found (x01 x000) as proof of ((iff P) Q)
% 47.37/47.62 Found x010:=(x01 x000):((iff P) Q)
% 47.37/47.62 Found (x01 x000) as proof of ((iff P) Q)
% 47.37/47.62 Found (x01 x000) as proof of ((iff P) Q)
% 47.37/47.62 Found x010:=(x01 x000):((iff P) Q)
% 47.37/47.62 Found (x01 x000) as proof of ((iff P) Q)
% 47.37/47.62 Found (x01 x000) as proof of ((iff P) Q)
% 47.37/47.62 Found x02:((iff Q) x)
% 47.37/47.62 Instantiate: x:=P:Prop
% 47.37/47.62 Found x02 as proof of ((iff Q) P)
% 47.37/47.62 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 47.37/47.62 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 47.37/47.62 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 47.37/47.62 Found (fun (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((iff P) Q)
% 47.37/47.62 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((x->Q)->((iff P) Q))
% 47.37/47.62 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((Q->x)->((x->Q)->((iff P) Q)))
% 47.37/47.62 Found (and_rect10 (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 47.37/47.62 Found ((and_rect1 ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 47.37/47.62 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 47.37/47.62 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 47.37/47.62 Found x020:Q
% 47.37/47.62 Found x020 as proof of x
% 47.37/47.62 Found iff_sym100:=(iff_sym10 x00):((iff P) Q)
% 47.37/47.62 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 47.37/47.62 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 47.37/47.62 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 47.37/47.62 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 47.37/47.62 Found x020:Q
% 47.37/47.62 Found x020 as proof of Q
% 47.37/47.62 Found x010:x
% 47.37/47.62 Found x010 as proof of x
% 47.37/47.62 Found x010:x
% 47.37/47.62 Found x010 as proof of Q
% 47.37/47.62 Found x010:x
% 47.37/47.62 Found x010 as proof of x
% 47.37/47.62 Found x020:Q
% 47.37/47.62 Found x020 as proof of x
% 47.37/47.62 Found x020:Q
% 47.37/47.62 Found x020 as proof of Q
% 47.37/47.62 Found x010:x
% 47.37/47.62 Found x010 as proof of Q
% 47.37/47.62 Found x000:=(x00 x010):R
% 47.37/47.62 Found (x00 x010) as proof of R
% 47.37/47.62 Found (x00 x010) as proof of R
% 47.37/47.62 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 47.37/47.62 Found (iff_refl Q) as proof of ((iff Q) x)
% 47.37/47.62 Found (iff_refl Q) as proof of ((iff Q) x)
% 47.37/47.62 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 47.37/47.62 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 47.37/47.62 Found x010:=(x01 x000):((iff P) Q)
% 47.37/47.62 Found x010 as proof of ((iff P) Q)
% 47.37/47.62 Found x010:=(x01 x000):((iff P) Q)
% 47.37/47.62 Found x010 as proof of ((iff P) Q)
% 47.37/47.62 Found x010:=(x01 x000):((iff P) Q)
% 48.73/48.95 Found x010 as proof of ((iff P) Q)
% 48.73/48.95 Found x010:=(x01 x000):((iff P) Q)
% 48.73/48.95 Found (x01 x000) as proof of ((iff P) Q)
% 48.73/48.95 Found (x01 x000) as proof of ((iff P) Q)
% 48.73/48.95 Found x000:=(x00 x010):R
% 48.73/48.95 Found (x00 x010) as proof of R
% 48.73/48.95 Found (x00 x010) as proof of R
% 48.73/48.95 Found x030:=(x03 x040):x
% 48.73/48.95 Instantiate: x:=P:Prop
% 48.73/48.95 Found (x03 x040) as proof of P
% 48.73/48.95 Found (x03 x040) as proof of P
% 48.73/48.95 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 48.73/48.95 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 48.73/48.95 Found eta_expansion as proof of x
% 48.73/48.95 Found x030:x
% 48.73/48.95 Instantiate: x:=R:Prop
% 48.73/48.95 Found x030 as proof of R
% 48.73/48.95 Found x000:=(x00 x010):R
% 48.73/48.95 Found (x00 x010) as proof of R
% 48.73/48.95 Found (x00 x010) as proof of R
% 48.73/48.95 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 48.73/48.95 Found (iff_refl Q) as proof of ((iff Q) x)
% 48.73/48.95 Found (iff_refl Q) as proof of ((iff Q) x)
% 48.73/48.95 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 48.73/48.95 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 48.73/48.95 Found x030:=(x03 x040):x
% 48.73/48.95 Instantiate: x:=P:Prop
% 48.73/48.95 Found (x03 x040) as proof of P
% 48.73/48.95 Found (x03 x040) as proof of P
% 48.73/48.95 Found x000:=(x00 x010):R
% 48.73/48.95 Found (x00 x010) as proof of R
% 48.73/48.95 Found (x00 x010) as proof of R
% 48.73/48.95 Found x010:=(x01 x000):((iff P) Q)
% 48.73/48.95 Found (x01 x000) as proof of ((iff P) Q)
% 48.73/48.95 Found (x01 x000) as proof of ((iff P) Q)
% 48.73/48.95 Found x010:=(x01 x000):((iff P) Q)
% 48.73/48.95 Found (x01 x000) as proof of ((iff P) Q)
% 48.73/48.95 Found (x01 x000) as proof of ((iff P) Q)
% 48.73/48.95 Found x00:((iff Q) x)
% 48.73/48.95 Instantiate: x:=P:Prop
% 48.73/48.95 Found x00 as proof of ((iff Q) P)
% 48.73/48.95 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 48.73/48.95 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 48.73/48.95 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 48.73/48.95 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 48.73/48.95 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 48.73/48.95 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 48.73/48.95 Found x20:((iff P) Q)
% 48.73/48.95 Instantiate: x:=((iff P) Q):Prop
% 48.73/48.95 Found x20 as proof of x
% 48.73/48.95 Found x010:x
% 48.73/48.95 Instantiate: x:=P:Prop
% 48.73/48.95 Found x010 as proof of P
% 48.73/48.95 Found iff_sym100:=(iff_sym10 x02):((iff P) Q)
% 48.73/48.95 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 48.73/48.95 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 48.73/48.95 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 48.73/48.95 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 48.73/48.95 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 48.73/48.95 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 48.73/48.95 Found x000:=(x00 x010):R
% 48.73/48.95 Found (x00 x010) as proof of R
% 48.73/48.95 Found (x00 x010) as proof of R
% 48.73/48.95 Found x010:x
% 48.73/48.95 Instantiate: x:=P:Prop
% 48.73/48.95 Found x010 as proof of P
% 48.73/48.95 Found x010:=(x01 x000):((iff P) Q)
% 48.73/48.95 Found x010 as proof of ((iff P) Q)
% 48.73/48.95 Found x10:R
% 48.73/48.95 Instantiate: x:=R:Prop
% 48.73/48.95 Found x10 as proof of x
% 48.73/48.95 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 48.73/48.95 Found (iff_refl Q) as proof of ((iff Q) x)
% 48.73/48.95 Found (iff_refl Q) as proof of ((iff Q) x)
% 48.73/48.95 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 48.73/48.95 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 48.73/48.95 Found x010:=(x01 x000):((iff P) Q)
% 48.73/48.95 Found x010 as proof of ((iff P) Q)
% 48.73/48.95 Found x010:=(x01 x000):((iff P) Q)
% 48.73/48.95 Found x010 as proof of ((iff P) Q)
% 48.73/48.95 Found x2:(R->((iff P) Q))
% 48.73/48.95 Instantiate: x:=(R->((iff P) Q)):Prop
% 48.73/48.95 Found x2 as proof of x
% 48.73/48.95 Found x2:(R->((iff P) Q))
% 48.73/48.95 Instantiate: x:=(R->((iff P) Q)):Prop
% 48.73/48.95 Found x2 as proof of x
% 48.73/48.95 Found x010:x
% 48.73/48.95 Instantiate: x:=P:Prop
% 48.73/48.95 Found x010 as proof of P
% 48.73/48.95 Found x000:=(x00 x010):R
% 48.73/48.95 Found (x00 x010) as proof of R
% 48.73/48.95 Found (x00 x010) as proof of R
% 48.73/48.95 Found x010:=(x01 x000):((iff P) Q)
% 48.73/48.95 Found (x01 x000) as proof of ((iff P) Q)
% 48.73/48.95 Found (x01 x000) as proof of ((iff P) Q)
% 48.73/48.95 Found x00:((iff Q) x)
% 48.73/48.95 Instantiate: x:=P:Prop
% 48.73/48.95 Found x00 as proof of ((iff Q) P)
% 48.73/48.95 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 48.73/48.95 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 48.73/48.95 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 48.73/48.95 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 48.73/48.95 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 48.73/48.95 Found (fun (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00))) as proof of R
% 48.73/48.95 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00))) as proof of ((x->Q)->R)
% 48.73/48.95 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00))) as proof of ((Q->x)->((x->Q)->R))
% 48.73/48.95 Found (and_rect10 (fun (x01:(Q->x)) (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00)))) as proof of R
% 50.73/50.95 Found ((and_rect1 R) (fun (x01:(Q->x)) (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00)))) as proof of R
% 50.73/50.95 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x00)) R) (fun (x01:(Q->x)) (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00)))) as proof of R
% 50.73/50.95 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x00)) R) (fun (x01:(Q->x)) (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00)))) as proof of R
% 50.73/50.95 Found x010:=(x01 x000):((iff P) Q)
% 50.73/50.95 Found x010 as proof of ((iff P) Q)
% 50.73/50.95 Found x030:=(x03 x040):x
% 50.73/50.95 Instantiate: x:=P:Prop
% 50.73/50.95 Found (x03 x040) as proof of P
% 50.73/50.95 Found (x03 x040) as proof of P
% 50.73/50.95 Found x000:=(x00 x010):R
% 50.73/50.95 Found (x00 x010) as proof of R
% 50.73/50.95 Found (x00 x010) as proof of R
% 50.73/50.95 Found x010:=(x01 x000):((iff P) Q)
% 50.73/50.95 Found x010 as proof of ((iff P) Q)
% 50.73/50.95 Found x030:=(x03 x040):x
% 50.73/50.95 Instantiate: x:=P:Prop
% 50.73/50.95 Found (x03 x040) as proof of P
% 50.73/50.95 Found (x03 x040) as proof of P
% 50.73/50.95 Found x010:=(x01 x000):((iff P) Q)
% 50.73/50.95 Found x010 as proof of ((iff P) Q)
% 50.73/50.95 Found x010:=(x01 x000):((iff P) Q)
% 50.73/50.95 Found (x01 x000) as proof of ((iff P) Q)
% 50.73/50.95 Found (x01 x000) as proof of ((iff P) Q)
% 50.73/50.95 Found x010:=(x01 x000):((iff P) Q)
% 50.73/50.95 Found x010 as proof of ((iff P) Q)
% 50.73/50.95 Found x010:=(x01 x000):((iff P) Q)
% 50.73/50.95 Found x010 as proof of ((iff P) Q)
% 50.73/50.95 Found x20:=(x2 x10):((iff P) Q)
% 50.73/50.95 Found (x2 x10) as proof of ((iff P) Q)
% 50.73/50.95 Found (x2 x10) as proof of ((iff P) Q)
% 50.73/50.95 Found x010:=(x01 x000):((iff P) Q)
% 50.73/50.95 Found (x01 x000) as proof of ((iff P) Q)
% 50.73/50.95 Found (x01 x000) as proof of ((iff P) Q)
% 50.73/50.95 Found iff_sym100:=(iff_sym10 x00):((iff P) Q)
% 50.73/50.95 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 50.73/50.95 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 50.73/50.95 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 50.73/50.95 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 50.73/50.95 Found x010:=(x01 x002):((iff P) Q)
% 50.73/50.95 Found x010 as proof of ((iff P) Q)
% 50.73/50.95 Found x010:=(x01 x021):x
% 50.73/50.95 Instantiate: x:=((((iff P) Q)->R)->((R->((iff P) Q))->P)):Prop
% 50.73/50.95 Found (x01 x021) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 50.73/50.95 Found (x01 x021) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 50.73/50.95 Found iff_sym100:=(iff_sym10 x00):((iff P) Q)
% 50.73/50.95 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 50.73/50.95 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 50.73/50.95 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 50.73/50.95 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 50.73/50.95 Found x030:=(x03 x020):P
% 50.73/50.95 Found (x03 x020) as proof of P
% 50.73/50.95 Found (x03 x020) as proof of P
% 50.73/50.95 Found x020:=(x02 x030):Q
% 50.73/50.95 Found (x02 x030) as proof of Q
% 50.73/50.95 Found (x02 x030) as proof of Q
% 50.73/50.95 Found x030:=(x03 x020):P
% 50.73/50.95 Found (x03 x020) as proof of P
% 50.73/50.95 Found (x03 x020) as proof of P
% 50.73/50.95 Found x000:=(x00 x010):R
% 50.73/50.95 Found (x00 x010) as proof of R
% 50.73/50.95 Found (x00 x010) as proof of R
% 50.73/50.95 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 50.73/50.95 Found (iff_refl Q) as proof of ((iff Q) x)
% 50.73/50.95 Found (iff_refl Q) as proof of ((iff Q) x)
% 50.73/50.95 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 50.73/50.95 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 50.73/50.95 Found x010:=(x01 x000):((iff P) Q)
% 50.73/50.95 Found x010 as proof of ((iff P) Q)
% 50.73/50.95 Found x010:=(x01 x000):((iff P) Q)
% 50.73/50.95 Found (x01 x000) as proof of ((iff P) Q)
% 50.73/50.95 Found (x01 x000) as proof of ((iff P) Q)
% 50.73/50.95 Found x000:=(x00 x010):R
% 50.73/50.95 Found (x00 x010) as proof of R
% 50.73/50.95 Found (x00 x010) as proof of R
% 50.73/50.95 Found x010:=(x01 x000):((iff P) Q)
% 50.73/50.95 Found (x01 x000) as proof of ((iff P) Q)
% 50.73/50.95 Found (x01 x000) as proof of ((iff P) Q)
% 50.73/50.95 Found x020:Q
% 50.73/50.95 Found x020 as proof of Q
% 50.73/50.95 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 50.73/50.95 Found (iff_refl Q) as proof of ((iff Q) x)
% 50.73/50.95 Found (iff_refl Q) as proof of ((iff Q) x)
% 50.73/50.95 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 50.73/50.95 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 50.73/50.95 Found x010:x
% 50.73/50.95 Found x010 as proof of x
% 50.73/50.95 Found x020:Q
% 50.73/50.95 Found x020 as proof of x
% 50.73/50.95 Found x000:=(x00 x010):R
% 50.73/50.95 Found (x00 x010) as proof of R
% 50.73/50.95 Found (x00 x010) as proof of R
% 50.73/50.95 Found x010:x
% 50.73/50.95 Found x010 as proof of Q
% 50.73/50.95 Found x010:x
% 50.73/50.95 Found x010 as proof of Q
% 50.73/50.95 Found x010:x
% 50.73/50.95 Found x010 as proof of x
% 50.73/50.95 Found x010:=(x01 x000):((iff P) Q)
% 50.73/50.95 Found x010 as proof of ((iff P) Q)
% 50.73/50.95 Found x000:=(x00 x010):R
% 50.73/50.95 Found (x00 x010) as proof of R
% 50.73/50.95 Found (x00 x010) as proof of R
% 50.73/50.95 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 50.73/50.95 Found (iff_refl Q) as proof of ((iff Q) x)
% 50.73/50.95 Found (iff_refl Q) as proof of ((iff Q) x)
% 52.29/52.55 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 52.29/52.55 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 52.29/52.55 Found x010:=(x01 x001):((iff P) Q)
% 52.29/52.55 Found x010 as proof of ((iff P) Q)
% 52.29/52.55 Found x010:=(x01 x000):((iff P) Q)
% 52.29/52.55 Found (x01 x000) as proof of ((iff P) Q)
% 52.29/52.55 Found (x01 x000) as proof of ((iff P) Q)
% 52.29/52.55 Found x010:=(x01 x001):((iff P) Q)
% 52.29/52.55 Found x010 as proof of ((iff P) Q)
% 52.29/52.55 Found x010:=(x01 x000):((iff P) Q)
% 52.29/52.55 Found (x01 x000) as proof of ((iff P) Q)
% 52.29/52.55 Found (x01 x000) as proof of ((iff P) Q)
% 52.29/52.55 Found x000:=(x00 x010):R
% 52.29/52.55 Found (x00 x010) as proof of R
% 52.29/52.55 Found (x00 x010) as proof of R
% 52.29/52.55 Found x030:=(x03 x040):x
% 52.29/52.55 Instantiate: x:=P:Prop
% 52.29/52.55 Found (x03 x040) as proof of P
% 52.29/52.55 Found (x03 x040) as proof of P
% 52.29/52.55 Found x020:=(x02 x030):Q
% 52.29/52.55 Found (x02 x030) as proof of Q
% 52.29/52.55 Found (x02 x030) as proof of Q
% 52.29/52.55 Found x030:=(x03 x020):P
% 52.29/52.55 Found (x03 x020) as proof of P
% 52.29/52.55 Found (x03 x020) as proof of P
% 52.29/52.55 Found x010:=(x01 x001):((iff P) Q)
% 52.29/52.55 Found x010 as proof of ((iff P) Q)
% 52.29/52.55 Found x10:=(x1 x20):R
% 52.29/52.55 Found (x1 x20) as proof of R
% 52.29/52.55 Found (x1 x20) as proof of R
% 52.29/52.55 Found x010:=(x01 x000):((iff P) Q)
% 52.29/52.55 Found (x01 x000) as proof of ((iff P) Q)
% 52.29/52.55 Found (x01 x000) as proof of ((iff P) Q)
% 52.29/52.55 Found x010:=(x01 x000):((iff P) Q)
% 52.29/52.55 Found (x01 x000) as proof of ((iff P) Q)
% 52.29/52.55 Found (x01 x000) as proof of ((iff P) Q)
% 52.29/52.55 Found x02:((iff Q) x)
% 52.29/52.55 Instantiate: x:=P:Prop
% 52.29/52.55 Found x02 as proof of ((iff Q) P)
% 52.29/52.55 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 52.29/52.55 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 52.29/52.55 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 52.29/52.55 Found (fun (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((iff P) Q)
% 52.29/52.55 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((x->Q)->((iff P) Q))
% 52.29/52.55 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((Q->x)->((x->Q)->((iff P) Q)))
% 52.29/52.55 Found (and_rect10 (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 52.29/52.55 Found ((and_rect1 ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 52.29/52.55 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 52.29/52.55 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 52.29/52.55 Found x010:x
% 52.29/52.55 Instantiate: x:=P:Prop
% 52.29/52.55 Found (fun (x02:(x->Q))=> x010) as proof of P
% 52.29/52.55 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 52.29/52.55 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 52.29/52.55 Found (iff_refl Q) as proof of ((iff Q) x)
% 52.29/52.55 Found (iff_refl Q) as proof of ((iff Q) x)
% 52.29/52.55 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 52.29/52.55 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 52.29/52.55 Found x10:R
% 52.29/52.55 Instantiate: x:=R:Prop
% 52.29/52.55 Found x10 as proof of x
% 52.29/52.55 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 52.29/52.55 Found (iff_refl Q) as proof of ((iff Q) x)
% 52.29/52.55 Found (iff_refl Q) as proof of ((iff Q) x)
% 52.29/52.55 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 52.29/52.55 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 52.29/52.55 Found x010:x
% 52.29/52.55 Instantiate: x:=P:Prop
% 52.29/52.55 Found x010 as proof of P
% 52.29/52.55 Found x010:x
% 52.29/52.55 Instantiate: x:=P:Prop
% 52.29/52.55 Found (fun (x02:(x->Q))=> x010) as proof of P
% 52.29/52.55 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 52.29/52.55 Found x011:x
% 52.29/52.55 Instantiate: x:=P:Prop
% 52.29/52.55 Found (fun (x02:(x->Q))=> x011) as proof of P
% 52.29/52.55 Found (fun (x02:(x->Q))=> x011) as proof of ((x->Q)->P)
% 52.29/52.55 Found x010:x
% 52.29/52.55 Instantiate: x:=P:Prop
% 52.29/52.55 Found (fun (x02:(x->Q))=> x010) as proof of P
% 52.29/52.55 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 52.29/52.55 Found x010:x
% 52.29/52.55 Instantiate: x:=P:Prop
% 52.29/52.55 Found (fun (x02:(x->Q))=> x010) as proof of P
% 52.29/52.55 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 52.29/52.55 Found x010:=(x01 x000):((iff P) Q)
% 52.29/52.55 Found x010 as proof of ((iff P) Q)
% 52.29/52.55 Found x20:=(x2 x10):((iff P) Q)
% 52.29/52.55 Found (x2 x10) as proof of ((iff P) Q)
% 52.29/52.55 Found (x2 x10) as proof of ((iff P) Q)
% 52.29/52.55 Found x010:=(x01 x000):((iff P) Q)
% 52.29/52.55 Found x010 as proof of ((iff P) Q)
% 52.29/52.55 Found x000:=(x00 x010):R
% 52.29/52.55 Found (x00 x010) as proof of R
% 52.29/52.55 Found (x00 x010) as proof of R
% 52.29/52.55 Found iff_sym100:=(iff_sym10 x00):((iff P) Q)
% 52.29/52.55 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 52.29/52.55 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 53.57/53.77 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 53.57/53.77 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 53.57/53.77 Found x010:=(x01 x000):((iff P) Q)
% 53.57/53.77 Found x010 as proof of ((iff P) Q)
% 53.57/53.77 Found x010:=(x01 x000):((iff P) Q)
% 53.57/53.77 Found x010 as proof of ((iff P) Q)
% 53.57/53.77 Found x010:=(x01 x000):((iff P) Q)
% 53.57/53.77 Found x010 as proof of ((iff P) Q)
% 53.57/53.77 Found x010:=(x01 x000):((iff P) Q)
% 53.57/53.77 Found x010 as proof of ((iff P) Q)
% 53.57/53.77 Found x2:(R->((iff P) Q))
% 53.57/53.77 Instantiate: x:=(R->((iff P) Q)):Prop
% 53.57/53.77 Found x2 as proof of x
% 53.57/53.77 Found x010:=(x01 x000):((iff P) Q)
% 53.57/53.77 Found (x01 x000) as proof of ((iff P) Q)
% 53.57/53.77 Found (x01 x000) as proof of ((iff P) Q)
% 53.57/53.77 Found x010:=(x01 x000):((iff P) Q)
% 53.57/53.77 Found x010 as proof of ((iff P) Q)
% 53.57/53.77 Found x010:=(x01 x000):((iff P) Q)
% 53.57/53.77 Found (x01 x000) as proof of ((iff P) Q)
% 53.57/53.77 Found (x01 x000) as proof of ((iff P) Q)
% 53.57/53.77 Found x010:=(x01 x001):((iff P) Q)
% 53.57/53.77 Found x010 as proof of ((iff P) Q)
% 53.57/53.77 Found x010:=(x01 x000):((iff P) Q)
% 53.57/53.77 Found x010 as proof of ((iff P) Q)
% 53.57/53.77 Found x20:=(x2 x10):((iff P) Q)
% 53.57/53.77 Found (x2 x10) as proof of ((iff P) Q)
% 53.57/53.77 Found (x2 x10) as proof of ((iff P) Q)
% 53.57/53.77 Found x030:=(x03 x040):x
% 53.57/53.77 Instantiate: x:=P:Prop
% 53.57/53.77 Found (x03 x040) as proof of P
% 53.57/53.77 Found (x03 x040) as proof of P
% 53.57/53.77 Found x010:=(x01 x000):((iff P) Q)
% 53.57/53.77 Found x010 as proof of ((iff P) Q)
% 53.57/53.77 Found x010:=(x01 x000):((iff P) Q)
% 53.57/53.77 Found x010 as proof of ((iff P) Q)
% 53.57/53.77 Found x000:=(x00 x010):R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found x000:=(x00 x010):R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found x000:=(x00 x010):R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found x010:=(x01 x000):((iff P) Q)
% 53.57/53.77 Found x010 as proof of ((iff P) Q)
% 53.57/53.77 Found x20:=(x2 x10):((iff P) Q)
% 53.57/53.77 Found (x2 x10) as proof of ((iff P) Q)
% 53.57/53.77 Found (x2 x10) as proof of ((iff P) Q)
% 53.57/53.77 Found x010:=(x01 x000):((iff P) Q)
% 53.57/53.77 Found (x01 x000) as proof of ((iff P) Q)
% 53.57/53.77 Found (x01 x000) as proof of ((iff P) Q)
% 53.57/53.77 Found x030:=(x03 x020):P
% 53.57/53.77 Found (x03 x020) as proof of P
% 53.57/53.77 Found (x03 x020) as proof of P
% 53.57/53.77 Found x020:=(x02 x030):Q
% 53.57/53.77 Found (x02 x030) as proof of Q
% 53.57/53.77 Found (x02 x030) as proof of Q
% 53.57/53.77 Found x000:=(x00 x010):R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found x000:=(x00 x010):R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found iff_sym100:=(iff_sym10 x02):((iff P) Q)
% 53.57/53.77 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 53.57/53.77 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 53.57/53.77 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 53.57/53.77 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 53.57/53.77 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 53.57/53.77 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 53.57/53.77 Found x02:((iff Q) x)
% 53.57/53.77 Instantiate: x:=P:Prop
% 53.57/53.77 Found x02 as proof of ((iff Q) P)
% 53.57/53.77 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 53.57/53.77 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 53.57/53.77 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 53.57/53.77 Found (fun (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((iff P) Q)
% 53.57/53.77 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((x->Q)->((iff P) Q))
% 53.57/53.77 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02)) as proof of ((Q->x)->((x->Q)->((iff P) Q)))
% 53.57/53.77 Found (and_rect10 (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 53.57/53.77 Found ((and_rect1 ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 53.57/53.77 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 53.57/53.77 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) ((iff P) Q)) (fun (x03:(Q->x)) (x04:(x->Q))=> (((iff_sym Q) P) x02))) as proof of ((iff P) Q)
% 53.57/53.77 Found x030:x
% 53.57/53.77 Instantiate: x:=R:Prop
% 53.57/53.77 Found x030 as proof of R
% 53.57/53.77 Found x000:=(x00 x010):R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found x030:=(x03 x020):P
% 53.57/53.77 Found (x03 x020) as proof of P
% 53.57/53.77 Found (x03 x020) as proof of P
% 53.57/53.77 Found x000:=(x00 x010):R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found (x00 x010) as proof of R
% 53.57/53.77 Found x030:x
% 53.57/53.77 Instantiate: x:=Q:Prop
% 53.57/53.77 Found x030 as proof of Q
% 53.57/53.77 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 53.57/53.77 Found (iff_refl Q) as proof of ((iff Q) x)
% 54.04/54.31 Found (iff_refl Q) as proof of ((iff Q) x)
% 54.04/54.31 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 54.04/54.31 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 54.04/54.31 Found x000:=(x00 x010):R
% 54.04/54.31 Found (x00 x010) as proof of R
% 54.04/54.31 Found (x00 x010) as proof of R
% 54.04/54.31 Found x030:x
% 54.04/54.31 Instantiate: x:=R:Prop
% 54.04/54.31 Found x030 as proof of R
% 54.04/54.31 Found x030:x
% 54.04/54.31 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 54.04/54.31 Found x030 as proof of ((iff P) Q)
% 54.04/54.31 Found x030:x
% 54.04/54.31 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 54.04/54.31 Found x030 as proof of ((iff P) Q)
% 54.04/54.31 Found x010:=(x01 x000):((iff P) Q)
% 54.04/54.31 Found (x01 x000) as proof of ((iff P) Q)
% 54.04/54.31 Found (x01 x000) as proof of ((iff P) Q)
% 54.04/54.31 Found x010:=(x01 x000):((iff P) Q)
% 54.04/54.31 Found x010 as proof of ((iff P) Q)
% 54.04/54.31 Found x010:=(x01 x000):((iff P) Q)
% 54.04/54.31 Found (x01 x000) as proof of ((iff P) Q)
% 54.04/54.31 Found (x01 x000) as proof of ((iff P) Q)
% 54.04/54.31 Found x10:=(x1 x20):R
% 54.04/54.31 Found (x1 x20) as proof of R
% 54.04/54.31 Found (x1 x20) as proof of R
% 54.04/54.31 Found x010:=(x01 x020):x
% 54.04/54.31 Found (x01 x020) as proof of P
% 54.04/54.31 Found (x01 x020) as proof of P
% 54.04/54.31 Found (x01 x020) as proof of P
% 54.04/54.31 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 54.04/54.31 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 54.04/54.31 Found eq_sym as proof of x
% 54.04/54.31 Found (x04 eq_sym) as proof of Q
% 54.04/54.31 Found (x04 eq_sym) as proof of Q
% 54.04/54.31 Found x00:((iff Q) x)
% 54.04/54.31 Instantiate: x:=P:Prop
% 54.04/54.31 Found x00 as proof of ((iff Q) P)
% 54.04/54.31 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 54.04/54.31 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 54.04/54.31 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 54.04/54.31 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 54.04/54.31 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 54.04/54.31 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 54.04/54.31 Found x000:=(x00 x010):R
% 54.04/54.31 Found (x00 x010) as proof of R
% 54.04/54.31 Found (x00 x010) as proof of R
% 54.04/54.31 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 54.04/54.31 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 54.04/54.31 Found eq_sym as proof of x
% 54.04/54.31 Found (x04 eq_sym) as proof of Q
% 54.04/54.31 Found (x04 eq_sym) as proof of Q
% 54.04/54.31 Found x010:=(x01 x000):((iff P) Q)
% 54.04/54.31 Found (x01 x000) as proof of ((iff P) Q)
% 54.04/54.31 Found (x01 x000) as proof of ((iff P) Q)
% 54.04/54.31 Found x010:=(x01 x000):((iff P) Q)
% 54.04/54.31 Found (x01 x000) as proof of ((iff P) Q)
% 54.04/54.31 Found (x01 x000) as proof of ((iff P) Q)
% 54.04/54.31 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 54.04/54.31 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 54.04/54.31 Found eta_expansion as proof of x
% 54.04/54.31 Found (x04 eta_expansion) as proof of Q
% 54.04/54.31 Found (x04 eta_expansion) as proof of Q
% 54.04/54.31 Found x010:=(x01 x002):((iff P) Q)
% 54.04/54.31 Found x010 as proof of ((iff P) Q)
% 54.04/54.31 Found x010:=(x01 x020):x
% 54.04/54.31 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 54.04/54.31 Found (x01 x020) as proof of ((iff P) Q)
% 54.04/54.31 Found (x01 x020) as proof of ((iff P) Q)
% 54.04/54.31 Found x20:=(x2 x10):((iff P) Q)
% 54.04/54.31 Found (x2 x10) as proof of ((iff P) Q)
% 54.04/54.31 Found (x2 x10) as proof of ((iff P) Q)
% 54.04/54.31 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 54.04/54.31 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 54.04/54.31 Found eta_expansion as proof of x
% 54.04/54.31 Found (x04 eta_expansion) as proof of Q
% 54.04/54.31 Found (x04 eta_expansion) as proof of Q
% 54.04/54.31 Found iff_sym100:=(iff_sym10 x02):((iff P) Q)
% 54.04/54.31 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 54.04/54.31 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 54.04/54.31 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 54.04/54.31 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 54.04/54.31 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 54.04/54.31 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 54.04/54.31 Found x010:=(x01 x000):((iff P) Q)
% 54.04/54.31 Found x010 as proof of ((iff P) Q)
% 54.04/54.31 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 55.23/55.49 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 55.23/55.49 Found eq_sym as proof of x
% 55.23/55.49 Found (x04 eq_sym) as proof of Q
% 55.23/55.49 Found (x04 eq_sym) as proof of Q
% 55.23/55.49 Found x10:=(x1 x20):R
% 55.23/55.49 Found (x1 x20) as proof of R
% 55.23/55.49 Found (x1 x20) as proof of R
% 55.23/55.49 Found x010:=(x01 x021):x
% 55.23/55.49 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 55.23/55.49 Found (x01 x021) as proof of ((R->((iff P) Q))->P)
% 55.23/55.49 Found (x01 x021) as proof of ((R->((iff P) Q))->P)
% 55.23/55.49 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 55.23/55.49 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 55.23/55.49 Found eq_sym as proof of x
% 55.23/55.49 Found (x04 eq_sym) as proof of Q
% 55.23/55.49 Found (x04 eq_sym) as proof of Q
% 55.23/55.49 Found x010:=(x01 x020):x
% 55.23/55.49 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 55.23/55.49 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 55.23/55.49 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 55.23/55.49 Found x010:=(x01 x020):x
% 55.23/55.49 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 55.23/55.49 Found (x01 x020) as proof of ((iff P) Q)
% 55.23/55.49 Found (x01 x020) as proof of ((iff P) Q)
% 55.23/55.49 Found x010:=(x01 x020):x
% 55.23/55.49 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 55.23/55.49 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 55.23/55.49 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 55.23/55.49 Found x010:=(x01 x000):((iff P) Q)
% 55.23/55.49 Found (x01 x000) as proof of ((iff P) Q)
% 55.23/55.49 Found (x01 x000) as proof of ((iff P) Q)
% 55.23/55.49 Found x020:Q
% 55.23/55.49 Found x020 as proof of x
% 55.23/55.49 Found x000:=(x00 x010):R
% 55.23/55.49 Found (x00 x010) as proof of R
% 55.23/55.49 Found (x00 x010) as proof of R
% 55.23/55.49 Found x020:Q
% 55.23/55.49 Found x020 as proof of Q
% 55.23/55.49 Found x000:=(x00 x010):R
% 55.23/55.49 Found (x00 x010) as proof of R
% 55.23/55.49 Found (x00 x010) as proof of R
% 55.23/55.49 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 55.23/55.49 Found (iff_refl Q) as proof of ((iff Q) x)
% 55.23/55.49 Found (iff_refl Q) as proof of ((iff Q) x)
% 55.23/55.49 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 55.23/55.49 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 55.23/55.49 Found x20:=(x2 x10):((iff P) Q)
% 55.23/55.49 Found (x2 x10) as proof of ((iff P) Q)
% 55.23/55.49 Found (x2 x10) as proof of ((iff P) Q)
% 55.23/55.49 Found x010:=(x01 x001):((iff P) Q)
% 55.23/55.49 Found x010 as proof of ((iff P) Q)
% 55.23/55.49 Found x000:=(x00 x010):R
% 55.23/55.49 Found (x00 x010) as proof of R
% 55.23/55.49 Found (x00 x010) as proof of R
% 55.23/55.49 Found x010:=(x01 x003):((iff P) Q)
% 55.23/55.49 Found (x01 x003) as proof of ((iff P) Q)
% 55.23/55.49 Found (x01 x003) as proof of ((iff P) Q)
% 55.23/55.49 Found x010:=(x01 x001):((iff P) Q)
% 55.23/55.49 Found x010 as proof of ((iff P) Q)
% 55.23/55.49 Found x000:=(x00 x010):R
% 55.23/55.49 Found (x00 x010) as proof of R
% 55.23/55.49 Found (x00 x010) as proof of R
% 55.23/55.49 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 55.23/55.49 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 55.23/55.49 Found eq_sym as proof of x
% 55.23/55.49 Found (x04 eq_sym) as proof of Q
% 55.23/55.49 Found (x04 eq_sym) as proof of Q
% 55.23/55.49 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 55.23/55.49 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 55.23/55.49 Found eq_sym as proof of x
% 55.23/55.49 Found (x04 eq_sym) as proof of Q
% 55.23/55.49 Found (x04 eq_sym) as proof of Q
% 55.23/55.49 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 55.23/55.49 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 55.23/55.49 Found eta_expansion as proof of x
% 55.23/55.49 Found (x04 eta_expansion) as proof of Q
% 55.23/55.49 Found (x04 eta_expansion) as proof of Q
% 55.23/55.49 Found x000:=(x00 x013):R
% 55.23/55.49 Found (x00 x013) as proof of R
% 55.23/55.49 Found (x00 x013) as proof of R
% 55.23/55.49 Found x010:=(x01 x000):((iff P) Q)
% 55.23/55.49 Found (x01 x000) as proof of ((iff P) Q)
% 55.23/55.49 Found (x01 x000) as proof of ((iff P) Q)
% 55.23/55.49 Found x010:=(x01 x000):((iff P) Q)
% 55.23/55.49 Found (x01 x000) as proof of ((iff P) Q)
% 55.23/55.49 Found (x01 x000) as proof of ((iff P) Q)
% 55.23/55.49 Found x030:=(x03 x020):P
% 55.23/55.49 Found (x03 x020) as proof of P
% 55.23/55.49 Found (x03 x020) as proof of P
% 55.23/55.49 Found x010:=(x01 x001):((iff P) Q)
% 55.23/55.49 Found x010 as proof of ((iff P) Q)
% 55.23/55.49 Found x010:=(x01 x000):((iff P) Q)
% 55.23/55.49 Found (x01 x000) as proof of ((iff P) Q)
% 55.23/55.49 Found (x01 x000) as proof of ((iff P) Q)
% 56.30/56.55 Found x020:=(x02 x030):Q
% 56.30/56.55 Found (x02 x030) as proof of Q
% 56.30/56.55 Found (x02 x030) as proof of Q
% 56.30/56.55 Found x030:x
% 56.30/56.55 Instantiate: x:=P:Prop
% 56.30/56.55 Found x030 as proof of P
% 56.30/56.55 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 56.30/56.55 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 56.30/56.55 Found eq_sym as proof of x
% 56.30/56.55 Found (x04 eq_sym) as proof of Q
% 56.30/56.55 Found (x04 eq_sym) as proof of Q
% 56.30/56.55 Found x010:=(x01 x000):((iff P) Q)
% 56.30/56.55 Found x010 as proof of ((iff P) Q)
% 56.30/56.55 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 56.30/56.55 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 56.30/56.55 Found iff_refl as proof of x
% 56.30/56.55 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 56.30/56.55 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 56.30/56.55 Found eta_expansion as proof of x
% 56.30/56.55 Found (x04 eta_expansion) as proof of Q
% 56.30/56.55 Found (x04 eta_expansion) as proof of Q
% 56.30/56.55 Found x010:=(x01 x000):((iff P) Q)
% 56.30/56.55 Found x010 as proof of ((iff P) Q)
% 56.30/56.55 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 56.30/56.55 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 56.30/56.55 Found eq_sym as proof of x
% 56.30/56.55 Found (x04 eq_sym) as proof of Q
% 56.30/56.55 Found (x04 eq_sym) as proof of Q
% 56.30/56.55 Found x010:=(x01 x000):((iff P) Q)
% 56.30/56.55 Found (x01 x000) as proof of ((iff P) Q)
% 56.30/56.55 Found (x01 x000) as proof of ((iff P) Q)
% 56.30/56.55 Found x010:=(x01 x000):((iff P) Q)
% 56.30/56.55 Found x010 as proof of ((iff P) Q)
% 56.30/56.55 Found x010:=(x01 x000):((iff P) Q)
% 56.30/56.55 Found x010 as proof of ((iff P) Q)
% 56.30/56.55 Found x20:=(x2 x10):((iff P) Q)
% 56.30/56.55 Found (x2 x10) as proof of ((iff P) Q)
% 56.30/56.55 Found (x2 x10) as proof of ((iff P) Q)
% 56.30/56.55 Found x010:x
% 56.30/56.55 Instantiate: x:=P:Prop
% 56.30/56.55 Found (fun (x02:(x->Q))=> x010) as proof of P
% 56.30/56.55 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 56.30/56.55 Found x20:=(x2 x10):((iff P) Q)
% 56.30/56.55 Found (x2 x10) as proof of ((iff P) Q)
% 56.30/56.55 Found (x2 x10) as proof of ((iff P) Q)
% 56.30/56.55 Found x030:=(x03 x040):x
% 56.30/56.55 Found (x03 x040) as proof of R
% 56.30/56.55 Found (x03 x040) as proof of R
% 56.30/56.55 Found (x03 x040) as proof of R
% 56.30/56.55 Found x000:=(x00 x010):R
% 56.30/56.55 Found (x00 x010) as proof of R
% 56.30/56.55 Found (x00 x010) as proof of R
% 56.30/56.55 Found x010:=(x01 x000):((iff P) Q)
% 56.30/56.55 Found x010 as proof of ((iff P) Q)
% 56.30/56.55 Found x030:=(x03 x040):x
% 56.30/56.55 Found (x03 x040) as proof of P
% 56.30/56.55 Found (x03 x040) as proof of P
% 56.30/56.55 Found (x03 x040) as proof of P
% 56.30/56.55 Found x000:=(x00 x010):R
% 56.30/56.55 Found (x00 x010) as proof of R
% 56.30/56.55 Found (x00 x010) as proof of R
% 56.30/56.55 Found x000:=(x00 x010):R
% 56.30/56.55 Found (x00 x010) as proof of R
% 56.30/56.55 Found (x00 x010) as proof of R
% 56.30/56.55 Found x000:=(x00 x010):R
% 56.30/56.55 Found (x00 x010) as proof of R
% 56.30/56.55 Found (x00 x010) as proof of R
% 56.30/56.55 Found x010:=(x01 x000):((iff P) Q)
% 56.30/56.55 Found x010 as proof of ((iff P) Q)
% 56.30/56.55 Found x010:=(x01 x000):((iff P) Q)
% 56.30/56.55 Found x010 as proof of ((iff P) Q)
% 56.30/56.55 Found x030:=(x03 x040):x
% 56.30/56.55 Found (x03 x040) as proof of P
% 56.30/56.55 Found (x03 x040) as proof of P
% 56.30/56.55 Found (x03 x040) as proof of P
% 56.30/56.55 Found x030:=(x03 x040):x
% 56.30/56.55 Found (x03 x040) as proof of R
% 56.30/56.55 Found (x03 x040) as proof of R
% 56.30/56.55 Found (x03 x040) as proof of R
% 56.30/56.55 Found x010:x
% 56.30/56.55 Instantiate: x:=R:Prop
% 56.30/56.55 Found x010 as proof of R
% 56.30/56.55 Found x020:Q
% 56.30/56.55 Found x020 as proof of x
% 56.30/56.55 Found x020:Q
% 56.30/56.55 Found x020 as proof of Q
% 56.30/56.55 Found x010:x
% 56.30/56.55 Found x010 as proof of x
% 56.30/56.55 Found x010:x
% 56.30/56.55 Found x010 as proof of Q
% 56.30/56.55 Found x030:=(x03 x040):x
% 56.30/56.55 Found (x03 x040) as proof of P
% 56.30/56.55 Found (x03 x040) as proof of P
% 56.30/56.55 Found (x03 x040) as proof of P
% 56.30/56.55 Found x030:=(x03 x041):x
% 56.30/56.55 Found (x03 x041) as proof of P
% 56.30/56.55 Found (x03 x041) as proof of P
% 56.30/56.55 Found (x03 x041) as proof of P
% 56.30/56.55 Found x030:x
% 56.30/56.55 Instantiate: x:=P:Prop
% 56.30/56.55 Found x030 as proof of P
% 56.30/56.55 Found x030:x
% 56.30/56.55 Found x030 as proof of Q
% 56.30/56.55 Found x010:=(x01 x000):((iff P) Q)
% 56.30/56.55 Found (x01 x000) as proof of ((iff P) Q)
% 56.30/56.55 Found (x01 x000) as proof of ((iff P) Q)
% 56.30/56.55 Found x030:=(x03 x040):x
% 56.30/56.55 Found (x03 x040) as proof of P
% 56.30/56.55 Found (x03 x040) as proof of P
% 56.30/56.55 Found (x03 x040) as proof of P
% 56.30/56.55 Found x030:=(x03 x040):x
% 56.30/56.55 Found (x03 x040) as proof of ((iff P) Q)
% 57.66/57.88 Found (x03 x040) as proof of ((iff P) Q)
% 57.66/57.88 Found (x03 x040) as proof of ((iff P) Q)
% 57.66/57.88 Found x010:=(x01 x000):((iff P) Q)
% 57.66/57.88 Found x010 as proof of ((iff P) Q)
% 57.66/57.88 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 57.66/57.88 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 57.66/57.88 Found iff_refl as proof of x
% 57.66/57.88 Found x010:=(x01 x000):((iff P) Q)
% 57.66/57.88 Found (x01 x000) as proof of ((iff P) Q)
% 57.66/57.88 Found (x01 x000) as proof of ((iff P) Q)
% 57.66/57.88 Found x10:=(x1 x20):R
% 57.66/57.88 Found (x1 x20) as proof of R
% 57.66/57.88 Found (x1 x20) as proof of R
% 57.66/57.88 Found x030:=(x03 x040):x
% 57.66/57.88 Found (x03 x040) as proof of ((iff P) Q)
% 57.66/57.88 Found (x03 x040) as proof of ((iff P) Q)
% 57.66/57.88 Found (x03 x040) as proof of ((iff P) Q)
% 57.66/57.88 Found x030:=(x03 x020):P
% 57.66/57.88 Found (x03 x020) as proof of P
% 57.66/57.88 Found (x03 x020) as proof of P
% 57.66/57.88 Found x030:x
% 57.66/57.88 Instantiate: x:=P:Prop
% 57.66/57.88 Found x030 as proof of P
% 57.66/57.88 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 57.66/57.88 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 57.66/57.88 Found iff_refl as proof of x
% 57.66/57.88 Found x010:=(x01 x000):((iff P) Q)
% 57.66/57.88 Found (x01 x000) as proof of ((iff P) Q)
% 57.66/57.88 Found (x01 x000) as proof of ((iff P) Q)
% 57.66/57.88 Found x020:=(x02 x030):Q
% 57.66/57.88 Found (x02 x030) as proof of Q
% 57.66/57.88 Found (x02 x030) as proof of Q
% 57.66/57.88 Found x030:=(x03 x020):P
% 57.66/57.88 Found (x03 x020) as proof of P
% 57.66/57.88 Found (x03 x020) as proof of P
% 57.66/57.88 Found x000:=(x00 x010):R
% 57.66/57.88 Found (x00 x010) as proof of R
% 57.66/57.88 Found (x00 x010) as proof of R
% 57.66/57.88 Found x20:=(x2 x10):((iff P) Q)
% 57.66/57.88 Found (x2 x10) as proof of ((iff P) Q)
% 57.66/57.88 Found (x2 x10) as proof of ((iff P) Q)
% 57.66/57.88 Found x030:x
% 57.66/57.88 Instantiate: x:=P:Prop
% 57.66/57.88 Found x030 as proof of P
% 57.66/57.88 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 57.66/57.88 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 57.66/57.88 Found iff_refl as proof of x
% 57.66/57.88 Found x010:=(x01 x000):((iff P) Q)
% 57.66/57.88 Found x010 as proof of ((iff P) Q)
% 57.66/57.88 Found x10:=(x1 x20):R
% 57.66/57.88 Found (x1 x20) as proof of R
% 57.66/57.88 Found (x1 x20) as proof of R
% 57.66/57.88 Found x030:=(x03 x040):x
% 57.66/57.88 Found (x03 x040) as proof of R
% 57.66/57.88 Found (x03 x040) as proof of R
% 57.66/57.88 Found (x03 x040) as proof of R
% 57.66/57.88 Found x000:=(x00 x010):R
% 57.66/57.88 Found (x00 x010) as proof of R
% 57.66/57.88 Found (x00 x010) as proof of R
% 57.66/57.88 Found x000:=(x00 x010):R
% 57.66/57.88 Found (x00 x010) as proof of R
% 57.66/57.88 Found (x00 x010) as proof of R
% 57.66/57.88 Found x030:=(x03 x040):x
% 57.66/57.88 Found (x03 x040) as proof of P
% 57.66/57.88 Found (x03 x040) as proof of P
% 57.66/57.88 Found (x03 x040) as proof of P
% 57.66/57.88 Found x030:=(x03 x040):x
% 57.66/57.88 Found (x03 x040) as proof of R
% 57.66/57.88 Found (x03 x040) as proof of R
% 57.66/57.88 Found (x03 x040) as proof of R
% 57.66/57.88 Found x030:=(x03 x040):x
% 57.66/57.88 Found (x03 x040) as proof of P
% 57.66/57.88 Found (x03 x040) as proof of P
% 57.66/57.88 Found (x03 x040) as proof of P
% 57.66/57.88 Found x20:=(x2 x10):((iff P) Q)
% 57.66/57.88 Found (x2 x10) as proof of ((iff P) Q)
% 57.66/57.88 Found (x2 x10) as proof of ((iff P) Q)
% 57.66/57.88 Found x030:=(x03 x041):x
% 57.66/57.88 Found (x03 x041) as proof of P
% 57.66/57.88 Found (x03 x041) as proof of P
% 57.66/57.88 Found (x03 x041) as proof of P
% 57.66/57.88 Found x030:=(x03 x040):x
% 57.66/57.88 Found (x03 x040) as proof of P
% 57.66/57.88 Found (x03 x040) as proof of P
% 57.66/57.88 Found (x03 x040) as proof of P
% 57.66/57.88 Found x030:=(x03 x040):x
% 57.66/57.88 Found (x03 x040) as proof of P
% 57.66/57.88 Found (x03 x040) as proof of P
% 57.66/57.88 Found (x03 x040) as proof of P
% 57.66/57.88 Found x030:=(x03 x040):x
% 57.66/57.88 Found (x03 x040) as proof of ((iff P) Q)
% 57.66/57.88 Found (x03 x040) as proof of ((iff P) Q)
% 57.66/57.88 Found (x03 x040) as proof of ((iff P) Q)
% 57.66/57.88 Found x030:x
% 57.66/57.88 Instantiate: x:=P:Prop
% 57.66/57.88 Found x030 as proof of P
% 57.66/57.88 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 57.66/57.88 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 57.66/57.88 Found iff_refl as proof of x
% 57.66/57.88 Found x010:=(x01 x000):((iff P) Q)
% 57.66/57.88 Found (x01 x000) as proof of ((iff P) Q)
% 57.66/57.88 Found (x01 x000) as proof of ((iff P) Q)
% 57.66/57.88 Found x030:=(x03 x040):x
% 57.66/57.88 Found (x03 x040) as proof of ((iff P) Q)
% 57.66/57.88 Found (x03 x040) as proof of ((iff P) Q)
% 57.66/57.88 Found (x03 x040) as proof of ((iff P) Q)
% 57.66/57.88 Found x010:=(x01 x002):((iff P) Q)
% 57.66/57.88 Found x010 as proof of ((iff P) Q)
% 57.66/57.88 Found x010:=(x01 x000):((iff P) Q)
% 57.66/57.88 Found (x01 x000) as proof of ((iff P) Q)
% 57.66/57.88 Found (x01 x000) as proof of ((iff P) Q)
% 57.66/57.88 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 58.86/59.08 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 58.86/59.08 Found eq_sym as proof of x
% 58.86/59.08 Found (x04 eq_sym) as proof of Q
% 58.86/59.08 Found (x04 eq_sym) as proof of Q
% 58.86/59.08 Found x20:=(x2 x10):((iff P) Q)
% 58.86/59.08 Found (x2 x10) as proof of ((iff P) Q)
% 58.86/59.08 Found (x2 x10) as proof of ((iff P) Q)
% 58.86/59.08 Found x030:x
% 58.86/59.08 Instantiate: x:=P:Prop
% 58.86/59.08 Found x030 as proof of P
% 58.86/59.08 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 58.86/59.08 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 58.86/59.08 Found iff_refl as proof of x
% 58.86/59.08 Found x010:=(x01 x000):((iff P) Q)
% 58.86/59.08 Found x010 as proof of ((iff P) Q)
% 58.86/59.08 Found x010:=(x01 x020):x
% 58.86/59.08 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 58.86/59.08 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 58.86/59.08 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 58.86/59.08 Found x010:=(x01 x021):x
% 58.86/59.08 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 58.86/59.08 Found (x01 x021) as proof of ((R->((iff P) Q))->P)
% 58.86/59.08 Found (x01 x021) as proof of ((R->((iff P) Q))->P)
% 58.86/59.08 Found x010:=(x01 x020):x
% 58.86/59.08 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 58.86/59.08 Found (x01 x020) as proof of ((iff P) Q)
% 58.86/59.08 Found (x01 x020) as proof of ((iff P) Q)
% 58.86/59.08 Found x010:=(x01 x000):((iff P) Q)
% 58.86/59.08 Found x010 as proof of ((iff P) Q)
% 58.86/59.08 Found x010:=(x01 x000):((iff P) Q)
% 58.86/59.08 Found x010 as proof of ((iff P) Q)
% 58.86/59.08 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 58.86/59.08 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 58.86/59.08 Found eq_sym as proof of x
% 58.86/59.08 Found (x04 eq_sym) as proof of Q
% 58.86/59.08 Found (x04 eq_sym) as proof of Q
% 58.86/59.08 Found x030:x
% 58.86/59.08 Instantiate: x:=R:Prop
% 58.86/59.08 Found x030 as proof of R
% 58.86/59.08 Found x000:=(x00 x010):R
% 58.86/59.08 Found (x00 x010) as proof of R
% 58.86/59.08 Found (x00 x010) as proof of R
% 58.86/59.08 Found x010:=(x01 x001):((iff P) Q)
% 58.86/59.08 Found x010 as proof of ((iff P) Q)
% 58.86/59.08 Found x20:=(x2 x10):((iff P) Q)
% 58.86/59.08 Found (x2 x10) as proof of ((iff P) Q)
% 58.86/59.08 Found (x2 x10) as proof of ((iff P) Q)
% 58.86/59.08 Found x030:x
% 58.86/59.08 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 58.86/59.08 Found x030 as proof of ((iff P) Q)
% 58.86/59.08 Found x030:x
% 58.86/59.08 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 58.86/59.08 Found x030 as proof of ((iff P) Q)
% 58.86/59.08 Found x030:x
% 58.86/59.08 Instantiate: x:=R:Prop
% 58.86/59.08 Found x030 as proof of R
% 58.86/59.08 Found x030:x
% 58.86/59.08 Instantiate: x:=Q:Prop
% 58.86/59.08 Found x030 as proof of Q
% 58.86/59.08 Found x010:=(x01 x020):x
% 58.86/59.08 Instantiate: x:=R:Prop
% 58.86/59.08 Found (x01 x020) as proof of R
% 58.86/59.08 Found (x01 x020) as proof of R
% 58.86/59.08 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 58.86/59.08 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 58.86/59.08 Found eta_expansion as proof of x
% 58.86/59.08 Found x010:=(x01 x000):((iff P) Q)
% 58.86/59.08 Found (x01 x000) as proof of ((iff P) Q)
% 58.86/59.08 Found (x01 x000) as proof of ((iff P) Q)
% 58.86/59.08 Found x010:=(x01 x001):((iff P) Q)
% 58.86/59.08 Found x010 as proof of ((iff P) Q)
% 58.86/59.08 Found x010:=(x01 x003):((iff P) Q)
% 58.86/59.08 Found (x01 x003) as proof of ((iff P) Q)
% 58.86/59.08 Found (x01 x003) as proof of ((iff P) Q)
% 58.86/59.08 Found x030:x
% 58.86/59.08 Instantiate: x:=R:Prop
% 58.86/59.08 Found x030 as proof of R
% 58.86/59.08 Found x010:((iff P) Q)
% 58.86/59.08 Instantiate: x:=((iff P) Q):Prop
% 58.86/59.08 Found x010 as proof of x
% 58.86/59.08 Found x10:=(x1 x20):R
% 58.86/59.08 Found (x1 x20) as proof of R
% 58.86/59.08 Found (x1 x20) as proof of R
% 58.86/59.08 Found x010:=(x01 x020):x
% 58.86/59.08 Instantiate: x:=R:Prop
% 58.86/59.08 Found (x01 x020) as proof of R
% 58.86/59.08 Found (x01 x020) as proof of R
% 58.86/59.08 Found x030:x
% 58.86/59.08 Instantiate: x:=P:Prop
% 58.86/59.08 Found x030 as proof of P
% 58.86/59.08 Found x010:=(x01 x020):x
% 58.86/59.08 Instantiate: x:=R:Prop
% 58.86/59.08 Found (x01 x020) as proof of R
% 58.86/59.08 Found (x01 x020) as proof of R
% 58.86/59.08 Found x030:x
% 58.86/59.08 Instantiate: x:=P:Prop
% 58.86/59.08 Found x030 as proof of P
% 58.86/59.08 Found x040:Q
% 58.86/59.08 Instantiate: x:=Q:Prop
% 58.86/59.08 Found x040 as proof of x
% 58.86/59.08 Found x030:x
% 58.86/59.08 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 58.86/59.08 Found x030 as proof of ((iff P) Q)
% 58.86/59.08 Found x000:R
% 58.86/59.08 Instantiate: x:=R:Prop
% 58.86/59.08 Found x000 as proof of x
% 58.86/59.08 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 58.86/59.08 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 58.86/59.08 Found eta_expansion as proof of x
% 58.86/59.08 Found x010:=(x01 x020):x
% 58.86/59.08 Instantiate: x:=P:Prop
% 58.86/59.08 Found (x01 x020) as proof of P
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found x010:=(x01 x020):x
% 59.82/60.11 Instantiate: x:=P:Prop
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found x010:=(x01 x021):x
% 59.82/60.11 Instantiate: x:=P:Prop
% 59.82/60.11 Found (x01 x021) as proof of P
% 59.82/60.11 Found (x01 x021) as proof of P
% 59.82/60.11 Found x010:=(x01 x020):x
% 59.82/60.11 Instantiate: x:=P:Prop
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found x010:=(x01 x020):x
% 59.82/60.11 Instantiate: x:=P:Prop
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found x010:=(x01 x000):((iff P) Q)
% 59.82/60.11 Found x010 as proof of ((iff P) Q)
% 59.82/60.11 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 59.82/60.11 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 59.82/60.11 Found eq_sym as proof of x
% 59.82/60.11 Found (x04 eq_sym) as proof of Q
% 59.82/60.11 Found (x04 eq_sym) as proof of Q
% 59.82/60.11 Found x10:=(x1 x20):R
% 59.82/60.11 Found (x1 x20) as proof of R
% 59.82/60.11 Found (x1 x20) as proof of R
% 59.82/60.11 Found x010:=(x01 x020):x
% 59.82/60.11 Instantiate: x:=P:Prop
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found x010:=(x01 x020):x
% 59.82/60.11 Instantiate: x:=R:Prop
% 59.82/60.11 Found (x01 x020) as proof of R
% 59.82/60.11 Found (x01 x020) as proof of R
% 59.82/60.11 Found x010:=(x01 x020):x
% 59.82/60.11 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 59.82/60.11 Found (x01 x020) as proof of ((iff P) Q)
% 59.82/60.11 Found (x01 x020) as proof of ((iff P) Q)
% 59.82/60.11 Found x010:=(x01 x020):x
% 59.82/60.11 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 59.82/60.11 Found (x01 x020) as proof of ((iff P) Q)
% 59.82/60.11 Found (x01 x020) as proof of ((iff P) Q)
% 59.82/60.11 Found x030:x
% 59.82/60.11 Instantiate: x:=P:Prop
% 59.82/60.11 Found (fun (x04:(x->Q))=> x030) as proof of P
% 59.82/60.11 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 59.82/60.11 Found x010:=(x01 x021):x
% 59.82/60.11 Instantiate: x:=P:Prop
% 59.82/60.11 Found (x01 x021) as proof of P
% 59.82/60.11 Found (x01 x021) as proof of P
% 59.82/60.11 Found x010:=(x01 x020):x
% 59.82/60.11 Instantiate: x:=P:Prop
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found x010:=(x01 x020):x
% 59.82/60.11 Instantiate: x:=P:Prop
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found x20:=(x2 x10):((iff P) Q)
% 59.82/60.11 Found (x2 x10) as proof of ((iff P) Q)
% 59.82/60.11 Found (x2 x10) as proof of ((iff P) Q)
% 59.82/60.11 Found x010:=(x01 x020):x
% 59.82/60.11 Instantiate: x:=P:Prop
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found (x01 x020) as proof of P
% 59.82/60.11 Found x010:=(x01 x000):((iff P) Q)
% 59.82/60.11 Found x010 as proof of ((iff P) Q)
% 59.82/60.11 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 59.82/60.11 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 59.82/60.11 Found eq_sym as proof of x
% 59.82/60.11 Found (x04 eq_sym) as proof of Q
% 59.82/60.11 Found (x04 eq_sym) as proof of Q
% 59.82/60.11 Found x010:=(x01 x020):x
% 59.82/60.11 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 59.82/60.11 Found (x01 x020) as proof of ((iff P) Q)
% 59.82/60.11 Found (x01 x020) as proof of ((iff P) Q)
% 59.82/60.11 Found x010:=(x01 x020):x
% 59.82/60.11 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 59.82/60.11 Found (x01 x020) as proof of ((iff P) Q)
% 59.82/60.11 Found (x01 x020) as proof of ((iff P) Q)
% 59.82/60.11 Found x010:=(x01 x000):((iff P) Q)
% 59.82/60.11 Found x010 as proof of ((iff P) Q)
% 59.82/60.11 Found x000:=(x00 x010):R
% 59.82/60.11 Found (x00 x010) as proof of R
% 59.82/60.11 Found (x00 x010) as proof of R
% 59.82/60.11 Found x030:x
% 59.82/60.11 Instantiate: x:=R:Prop
% 59.82/60.11 Found x030 as proof of R
% 59.82/60.11 Found x20:=(x2 x10):((iff P) Q)
% 59.82/60.11 Found (x2 x10) as proof of ((iff P) Q)
% 59.82/60.11 Found (x2 x10) as proof of ((iff P) Q)
% 59.82/60.11 Found x010:=(x01 x000):((iff P) Q)
% 59.82/60.11 Found x010 as proof of ((iff P) Q)
% 59.82/60.11 Found x010:=(x01 x000):((iff P) Q)
% 59.82/60.11 Found x010 as proof of ((iff P) Q)
% 59.82/60.11 Found x030:x
% 59.82/60.11 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 59.82/60.11 Found x030 as proof of ((iff P) Q)
% 59.82/60.11 Found x030:x
% 59.82/60.11 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 59.82/60.11 Found x030 as proof of ((iff P) Q)
% 59.82/60.11 Found x030:x
% 59.82/60.11 Instantiate: x:=Q:Prop
% 59.82/60.11 Found x030 as proof of Q
% 59.82/60.11 Found x030:x
% 59.82/60.11 Instantiate: x:=R:Prop
% 59.82/60.11 Found x030 as proof of R
% 59.82/60.11 Found x00:((iff Q) x)
% 59.82/60.11 Instantiate: x:=P:Prop
% 59.82/60.11 Found x00 as proof of ((iff Q) P)
% 59.82/60.11 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 59.82/60.11 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 59.82/60.11 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 59.82/60.11 Found (fun (x02:(x->Q))=> (((iff_sym Q) P) x00)) as proof of ((iff P) Q)
% 59.82/60.11 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00)) as proof of ((x->Q)->((iff P) Q))
% 59.82/60.11 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00)) as proof of ((Q->x)->((x->Q)->((iff P) Q)))
% 61.25/61.47 Found (and_rect10 (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 61.25/61.47 Found ((and_rect1 ((iff P) Q)) (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 61.25/61.47 Found (((fun (P0:Type) (x2:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x2) x00)) ((iff P) Q)) (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 61.25/61.47 Found (((fun (P0:Type) (x2:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x2) x00)) ((iff P) Q)) (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 61.25/61.47 Found x000:=(x00 x010):R
% 61.25/61.47 Found (x00 x010) as proof of R
% 61.25/61.47 Found (x00 x010) as proof of R
% 61.25/61.47 Found x010:=(x01 x000):((iff P) Q)
% 61.25/61.47 Found (x01 x000) as proof of ((iff P) Q)
% 61.25/61.47 Found (x01 x000) as proof of ((iff P) Q)
% 61.25/61.47 Found x00:((iff Q) x)
% 61.25/61.47 Instantiate: x:=P:Prop
% 61.25/61.47 Found x00 as proof of ((iff Q) P)
% 61.25/61.47 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 61.25/61.47 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 61.25/61.47 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 61.25/61.47 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 61.25/61.47 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 61.25/61.47 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 61.25/61.47 Found x030:=(x03 x040):x
% 61.25/61.47 Found (x03 x040) as proof of P
% 61.25/61.47 Found (x03 x040) as proof of P
% 61.25/61.47 Found (x03 x040) as proof of P
% 61.25/61.47 Found x00:((iff Q) x)
% 61.25/61.47 Instantiate: x:=P:Prop
% 61.25/61.47 Found x00 as proof of ((iff Q) P)
% 61.25/61.47 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 61.25/61.47 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 61.25/61.47 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 61.25/61.47 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 61.25/61.47 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 61.25/61.47 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 61.25/61.47 Found x010:x
% 61.25/61.47 Found x010 as proof of Q
% 61.25/61.47 Found x010:x
% 61.25/61.47 Found x010 as proof of x
% 61.25/61.47 Found x030:x
% 61.25/61.47 Instantiate: x:=P:Prop
% 61.25/61.47 Found (fun (x04:(x->Q))=> x030) as proof of P
% 61.25/61.47 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 61.25/61.47 Found x030:=(x03 x040):x
% 61.25/61.47 Found (x03 x040) as proof of P
% 61.25/61.47 Found (x03 x040) as proof of P
% 61.25/61.47 Found (x03 x040) as proof of P
% 61.25/61.47 Found x010:=(x01 x000):((iff P) Q)
% 61.25/61.47 Found (x01 x000) as proof of ((iff P) Q)
% 61.25/61.47 Found (x01 x000) as proof of ((iff P) Q)
% 61.25/61.47 Found x020:=(x02 x030):Q
% 61.25/61.47 Found (x02 x030) as proof of Q
% 61.25/61.47 Found (x02 x030) as proof of Q
% 61.25/61.47 Found x10:=(x1 x20):R
% 61.25/61.47 Found (x1 x20) as proof of R
% 61.25/61.47 Found (x1 x20) as proof of R
% 61.25/61.47 Found x030:=(x03 x020):P
% 61.25/61.47 Found (x03 x020) as proof of P
% 61.25/61.47 Found (x03 x020) as proof of P
% 61.25/61.47 Found x030:x
% 61.25/61.47 Instantiate: x:=P:Prop
% 61.25/61.47 Found (fun (x04:(x->Q))=> x030) as proof of P
% 61.25/61.47 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 61.25/61.47 Found x000:=(x00 x011):R
% 61.25/61.47 Found (x00 x011) as proof of R
% 61.25/61.47 Found (x00 x011) as proof of R
% 61.25/61.47 Found x030:=(x03 x020):P
% 61.25/61.47 Found (x03 x020) as proof of P
% 61.25/61.47 Found (x03 x020) as proof of P
% 61.25/61.47 Found x030:x
% 61.25/61.47 Instantiate: x:=P:Prop
% 61.25/61.47 Found (fun (x04:(x->Q))=> x030) as proof of P
% 61.25/61.47 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 61.25/61.47 Found x20:=(x2 x10):((iff P) Q)
% 61.25/61.47 Found (x2 x10) as proof of ((iff P) Q)
% 61.25/61.47 Found (x2 x10) as proof of ((iff P) Q)
% 61.25/61.47 Found x010:=(x01 x000):((iff P) Q)
% 61.25/61.47 Found x010 as proof of ((iff P) Q)
% 61.25/61.47 Found x000:=(x00 x010):R
% 61.25/61.47 Found (x00 x010) as proof of R
% 61.25/61.47 Found (x00 x010) as proof of R
% 61.25/61.47 Found x010:=(x01 x001):((iff P) Q)
% 61.25/61.47 Found (x01 x001) as proof of ((iff P) Q)
% 61.25/61.47 Found (x01 x001) as proof of ((iff P) Q)
% 61.25/61.47 Found x030:=(x03 x040):x
% 61.25/61.47 Instantiate: x:=R:Prop
% 61.25/61.47 Found (x03 x040) as proof of R
% 61.25/61.47 Found (x03 x040) as proof of R
% 61.25/61.47 Found x000:=(x00 x010):R
% 61.25/61.47 Found (x00 x010) as proof of R
% 61.25/61.47 Found (x00 x010) as proof of R
% 61.25/61.47 Found x030:=(x03 x040):x
% 61.25/61.47 Found (x03 x040) as proof of P
% 61.25/61.47 Found (x03 x040) as proof of P
% 61.25/61.47 Found (x03 x040) as proof of P
% 61.25/61.47 Found x20:=(x2 x10):((iff P) Q)
% 61.25/61.47 Found (x2 x10) as proof of ((iff P) Q)
% 61.25/61.47 Found (x2 x10) as proof of ((iff P) Q)
% 61.25/61.47 Found x10:=(x1 x20):R
% 61.25/61.47 Found (x1 x20) as proof of R
% 61.25/61.47 Found (x1 x20) as proof of R
% 61.25/61.47 Found x030:x
% 61.25/61.47 Instantiate: x:=P:Prop
% 61.25/61.47 Found (fun (x04:(x->Q))=> x030) as proof of P
% 61.25/61.47 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 61.25/61.47 Found x030:x
% 61.25/61.47 Found x030 as proof of Q
% 61.25/61.47 Found x010:=(x01 x000):((iff P) Q)
% 61.25/61.47 Found (x01 x000) as proof of ((iff P) Q)
% 61.25/61.47 Found (x01 x000) as proof of ((iff P) Q)
% 62.69/62.90 Found x10:=(x1 x20):R
% 62.69/62.90 Found (x1 x20) as proof of R
% 62.69/62.90 Found (x1 x20) as proof of R
% 62.69/62.90 Found x010:=(x01 x000):((iff P) Q)
% 62.69/62.90 Found (x01 x000) as proof of ((iff P) Q)
% 62.69/62.90 Found (x01 x000) as proof of ((iff P) Q)
% 62.69/62.90 Found x030:=(x03 x040):x
% 62.69/62.90 Found (x03 x040) as proof of P
% 62.69/62.90 Found (x03 x040) as proof of P
% 62.69/62.90 Found (x03 x040) as proof of P
% 62.69/62.90 Found x010:x
% 62.69/62.90 Instantiate: x:=R:Prop
% 62.69/62.90 Found x010 as proof of R
% 62.69/62.90 Found x1:(((iff P) Q)->R)
% 62.69/62.90 Instantiate: x:=(((iff P) Q)->R):Prop
% 62.69/62.90 Found x1 as proof of x
% 62.69/62.90 Found x030:x
% 62.69/62.90 Found x030 as proof of Q
% 62.69/62.90 Found x040:Q
% 62.69/62.90 Found x040 as proof of x
% 62.69/62.90 Found x030:x
% 62.69/62.90 Found x030 as proof of x
% 62.69/62.90 Found x040:Q
% 62.69/62.90 Found x040 as proof of Q
% 62.69/62.90 Found x010:=(x01 x020):x
% 62.69/62.90 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 62.69/62.90 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 62.69/62.90 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 62.69/62.90 Found x000:R
% 62.69/62.90 Found (fun (x04:(x->Q))=> x000) as proof of R
% 62.69/62.90 Found (fun (x04:(x->Q))=> x000) as proof of ((x->Q)->R)
% 62.69/62.90 Found x000:=(x00 x011):R
% 62.69/62.90 Found (x00 x011) as proof of R
% 62.69/62.90 Found (x00 x011) as proof of R
% 62.69/62.90 Found x20:=(x2 x10):((iff P) Q)
% 62.69/62.90 Found (x2 x10) as proof of ((iff P) Q)
% 62.69/62.90 Found (x2 x10) as proof of ((iff P) Q)
% 62.69/62.90 Found x010:x
% 62.69/62.90 Instantiate: x:=R:Prop
% 62.69/62.90 Found x010 as proof of R
% 62.69/62.90 Found x010:((iff P) Q)
% 62.69/62.90 Found (fun (x04:(x->Q))=> x010) as proof of ((iff P) Q)
% 62.69/62.90 Found (fun (x04:(x->Q))=> x010) as proof of ((x->Q)->((iff P) Q))
% 62.69/62.90 Found x20:=(x2 x10):((iff P) Q)
% 62.69/62.90 Found (x2 x10) as proof of ((iff P) Q)
% 62.69/62.90 Found (x2 x10) as proof of ((iff P) Q)
% 62.69/62.90 Found x000:=(x00 x010):R
% 62.69/62.90 Found (x00 x010) as proof of R
% 62.69/62.90 Found (x00 x010) as proof of R
% 62.69/62.90 Found x1:(((iff P) Q)->R)
% 62.69/62.90 Instantiate: x:=(((iff P) Q)->R):Prop
% 62.69/62.90 Found x1 as proof of x
% 62.69/62.90 Found x030:x
% 62.69/62.90 Instantiate: x:=P:Prop
% 62.69/62.90 Found (fun (x04:(x->Q))=> x030) as proof of P
% 62.69/62.90 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 62.69/62.90 Found x010:=(x01 x000):((iff P) Q)
% 62.69/62.90 Found x010 as proof of ((iff P) Q)
% 62.69/62.90 Found x010:=(x01 x000):((iff P) Q)
% 62.69/62.90 Found x010 as proof of ((iff P) Q)
% 62.69/62.90 Found x010:=(x01 x000):((iff P) Q)
% 62.69/62.90 Found x010 as proof of ((iff P) Q)
% 62.69/62.90 Found x010:=(x01 x001):((iff P) Q)
% 62.69/62.90 Found (x01 x001) as proof of ((iff P) Q)
% 62.69/62.90 Found (x01 x001) as proof of ((iff P) Q)
% 62.69/62.90 Found x030:=(x03 x040):x
% 62.69/62.90 Instantiate: x:=R:Prop
% 62.69/62.90 Found (x03 x040) as proof of R
% 62.69/62.90 Found (x03 x040) as proof of R
% 62.69/62.90 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 62.69/62.90 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 62.69/62.90 Found eq_sym as proof of x
% 62.69/62.90 Found (x04 eq_sym) as proof of Q
% 62.69/62.90 Found (x04 eq_sym) as proof of Q
% 62.69/62.90 Found x010:=(x01 x021):x
% 62.69/62.90 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 62.69/62.90 Found (x01 x021) as proof of ((R->((iff P) Q))->P)
% 62.69/62.90 Found (fun (x1:(((iff P) Q)->R))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 62.69/62.90 Found (fun (x1:(((iff P) Q)->R))=> (x01 x021)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 62.69/62.90 Found x010:=(x01 x000):((iff P) Q)
% 62.69/62.90 Found (x01 x000) as proof of ((iff P) Q)
% 62.69/62.90 Found (x01 x000) as proof of ((iff P) Q)
% 62.69/62.90 Found x000:=(x00 x010):R
% 62.69/62.90 Found (x00 x010) as proof of R
% 62.69/62.90 Found (x00 x010) as proof of R
% 62.69/62.90 Found x010:=(x01 x001):((iff P) Q)
% 62.69/62.90 Found x010 as proof of ((iff P) Q)
% 62.69/62.90 Found x000:=(x00 x010):R
% 62.69/62.90 Found (x00 x010) as proof of R
% 62.69/62.90 Found (x00 x010) as proof of R
% 62.69/62.90 Found x000:=(x00 x010):R
% 62.69/62.90 Found (x00 x010) as proof of R
% 62.69/62.90 Found (x00 x010) as proof of R
% 62.69/62.90 Found x010:=(x01 x001):((iff P) Q)
% 62.69/62.90 Found x010 as proof of ((iff P) Q)
% 62.69/62.90 Found x010:=(x01 x000):((iff P) Q)
% 62.69/62.90 Found (x01 x000) as proof of ((iff P) Q)
% 62.69/62.90 Found (x01 x000) as proof of ((iff P) Q)
% 62.69/62.90 Found x010:((iff P) Q)
% 62.69/62.90 Instantiate: x:=((iff P) Q):Prop
% 62.69/62.90 Found x010 as proof of x
% 62.69/62.90 Found x010:=(x01 x000):((iff P) Q)
% 62.69/62.90 Found (x01 x000) as proof of ((iff P) Q)
% 62.69/62.90 Found (x01 x000) as proof of ((iff P) Q)
% 62.69/62.90 Found x030:x
% 62.69/62.90 Found x030 as proof of Q
% 62.69/62.90 Found x030:x
% 62.69/62.90 Instantiate: x:=P:Prop
% 62.69/62.90 Found x030 as proof of P
% 62.69/62.90 Found x10:=(x1 x20):R
% 62.69/62.90 Found (x1 x20) as proof of R
% 62.69/62.90 Found (x1 x20) as proof of R
% 62.69/62.90 Found x00:((iff Q) x)
% 62.69/62.90 Instantiate: x:=P:Prop
% 62.69/62.90 Found x00 as proof of ((iff Q) P)
% 62.69/62.90 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 62.69/62.90 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 62.69/62.90 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 63.77/64.06 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 63.77/64.06 Found x010:=(x01 x020):x
% 63.77/64.06 Instantiate: x:=P:Prop
% 63.77/64.06 Found (x01 x020) as proof of P
% 63.77/64.06 Found (x01 x020) as proof of P
% 63.77/64.06 Found x010:=(x01 x000):((iff P) Q)
% 63.77/64.06 Found (x01 x000) as proof of ((iff P) Q)
% 63.77/64.06 Found (x01 x000) as proof of ((iff P) Q)
% 63.77/64.06 Found x000:R
% 63.77/64.06 Instantiate: x:=R:Prop
% 63.77/64.06 Found x000 as proof of x
% 63.77/64.06 Found x000:R
% 63.77/64.06 Found (fun (x04:(x->Q))=> x000) as proof of R
% 63.77/64.06 Found (fun (x04:(x->Q))=> x000) as proof of ((x->Q)->R)
% 63.77/64.06 Found x010:=(x01 x020):x
% 63.77/64.06 Instantiate: x:=P:Prop
% 63.77/64.06 Found (x01 x020) as proof of P
% 63.77/64.06 Found (x01 x020) as proof of P
% 63.77/64.06 Found x010:=(x01 x000):((iff P) Q)
% 63.77/64.06 Found (x01 x000) as proof of ((iff P) Q)
% 63.77/64.06 Found (x01 x000) as proof of ((iff P) Q)
% 63.77/64.06 Found x030:x
% 63.77/64.06 Instantiate: x:=P:Prop
% 63.77/64.06 Found x030 as proof of P
% 63.77/64.06 Found x010:((iff P) Q)
% 63.77/64.06 Found (fun (x04:(x->Q))=> x010) as proof of ((iff P) Q)
% 63.77/64.06 Found (fun (x04:(x->Q))=> x010) as proof of ((x->Q)->((iff P) Q))
% 63.77/64.06 Found x010:=(x01 x020):x
% 63.77/64.06 Instantiate: x:=R:Prop
% 63.77/64.06 Found (x01 x020) as proof of R
% 63.77/64.06 Found (x01 x020) as proof of R
% 63.77/64.06 Found x20:=(x2 x10):((iff P) Q)
% 63.77/64.06 Found (x2 x10) as proof of ((iff P) Q)
% 63.77/64.06 Found (x2 x10) as proof of ((iff P) Q)
% 63.77/64.06 Found x010:=(x01 x020):x
% 63.77/64.06 Instantiate: x:=P:Prop
% 63.77/64.06 Found (x01 x020) as proof of P
% 63.77/64.06 Found (x01 x020) as proof of P
% 63.77/64.06 Found x010:=(x01 x000):((iff P) Q)
% 63.77/64.06 Found x010 as proof of ((iff P) Q)
% 63.77/64.06 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 63.77/64.06 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 63.77/64.06 Found eq_sym as proof of x
% 63.77/64.06 Found (x04 eq_sym) as proof of Q
% 63.77/64.06 Found (x04 eq_sym) as proof of Q
% 63.77/64.06 Found x010:=(x01 x020):x
% 63.77/64.06 Instantiate: x:=P:Prop
% 63.77/64.06 Found (x01 x020) as proof of P
% 63.77/64.06 Found (x01 x020) as proof of P
% 63.77/64.06 Found x010:=(x01 x021):x
% 63.77/64.06 Instantiate: x:=P:Prop
% 63.77/64.06 Found (x01 x021) as proof of P
% 63.77/64.06 Found (x01 x021) as proof of P
% 63.77/64.06 Found x010:=(x01 x020):x
% 63.77/64.06 Instantiate: x:=P:Prop
% 63.77/64.06 Found (x01 x020) as proof of P
% 63.77/64.06 Found (x01 x020) as proof of P
% 63.77/64.06 Found x010:=(x01 x000):((iff P) Q)
% 63.77/64.06 Found x010 as proof of ((iff P) Q)
% 63.77/64.06 Found x010:=(x01 x000):((iff P) Q)
% 63.77/64.06 Found (x01 x000) as proof of ((iff P) Q)
% 63.77/64.06 Found (x01 x000) as proof of ((iff P) Q)
% 63.77/64.06 Found x010:=(x01 x000):((iff P) Q)
% 63.77/64.06 Found x010 as proof of ((iff P) Q)
% 63.77/64.06 Found x000:=(x00 x010):R
% 63.77/64.06 Found (x00 x010) as proof of R
% 63.77/64.06 Found (x00 x010) as proof of R
% 63.77/64.06 Found x010:=(x01 x020):x
% 63.77/64.06 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 63.77/64.06 Found (x01 x020) as proof of ((iff P) Q)
% 63.77/64.06 Found (x01 x020) as proof of ((iff P) Q)
% 63.77/64.06 Found x000:=(x00 x010):R
% 63.77/64.06 Found (x00 x010) as proof of R
% 63.77/64.06 Found (x00 x010) as proof of R
% 63.77/64.06 Found x20:=(x2 x10):((iff P) Q)
% 63.77/64.06 Found (x2 x10) as proof of ((iff P) Q)
% 63.77/64.06 Found (x2 x10) as proof of ((iff P) Q)
% 63.77/64.06 Found x030:x
% 63.77/64.06 Instantiate: x:=R:Prop
% 63.77/64.06 Found x030 as proof of R
% 63.77/64.06 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 63.77/64.06 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 63.77/64.06 Found eta_expansion as proof of x
% 63.77/64.06 Found x010:=(x01 x000):((iff P) Q)
% 63.77/64.06 Found (x01 x000) as proof of ((iff P) Q)
% 63.77/64.06 Found (x01 x000) as proof of ((iff P) Q)
% 63.77/64.06 Found x030:x
% 63.77/64.06 Instantiate: x:=P:Prop
% 63.77/64.06 Found x030 as proof of P
% 63.77/64.06 Found x010:((iff P) Q)
% 63.77/64.06 Instantiate: x:=((iff P) Q):Prop
% 63.77/64.06 Found x010 as proof of x
% 63.77/64.06 Found x010:=(x01 x000):((iff P) Q)
% 63.77/64.06 Found x010 as proof of ((iff P) Q)
% 63.77/64.06 Found x000:R
% 63.77/64.06 Instantiate: x:=R:Prop
% 63.77/64.06 Found x000 as proof of x
% 63.77/64.06 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 63.77/64.06 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 63.77/64.06 Found eta_expansion as proof of x
% 63.77/64.06 Found x040:Q
% 63.77/64.06 Instantiate: x:=Q:Prop
% 63.77/64.06 Found x040 as proof of x
% 63.77/64.06 Found x010:=(x01 x000):((iff P) Q)
% 63.77/64.06 Found (x01 x000) as proof of ((iff P) Q)
% 63.77/64.06 Found (x01 x000) as proof of ((iff P) Q)
% 63.77/64.06 Found x010:=(x01 x000):((iff P) Q)
% 63.77/64.06 Found (x01 x000) as proof of ((iff P) Q)
% 63.77/64.06 Found (x01 x000) as proof of ((iff P) Q)
% 63.77/64.06 Found x030:x
% 63.77/64.06 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 63.77/64.06 Found x030 as proof of ((iff P) Q)
% 65.74/65.97 Found x030:x
% 65.74/65.97 Instantiate: x:=P:Prop
% 65.74/65.97 Found x030 as proof of P
% 65.74/65.97 Found x030:=(x03 x040):x
% 65.74/65.97 Found (x03 x040) as proof of P
% 65.74/65.97 Found (x03 x040) as proof of P
% 65.74/65.97 Found (x03 x040) as proof of P
% 65.74/65.97 Found x030:=(x03 x020):P
% 65.74/65.97 Found (x03 x020) as proof of P
% 65.74/65.97 Found (x03 x020) as proof of P
% 65.74/65.97 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 65.74/65.97 Found (iff_refl Q) as proof of ((iff Q) x)
% 65.74/65.97 Found (iff_refl Q) as proof of ((iff Q) x)
% 65.74/65.97 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 65.74/65.97 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 65.74/65.97 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 65.74/65.97 Found (iff_refl Q) as proof of ((iff Q) x)
% 65.74/65.97 Found (iff_refl Q) as proof of ((iff Q) x)
% 65.74/65.97 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 65.74/65.97 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 65.74/65.97 Found x1:(((iff P) Q)->R)
% 65.74/65.97 Instantiate: x:=(((iff P) Q)->R):Prop
% 65.74/65.97 Found x1 as proof of x
% 65.74/65.97 Found (x02 x1) as proof of Q
% 65.74/65.97 Found (x02 x1) as proof of Q
% 65.74/65.97 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 65.74/65.97 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 65.74/65.97 Found iff_refl as proof of x
% 65.74/65.97 Found (x02 iff_refl) as proof of Q
% 65.74/65.97 Found (x02 iff_refl) as proof of Q
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found x010 as proof of ((iff P) Q)
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found x010 as proof of ((iff P) Q)
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found x010 as proof of ((iff P) Q)
% 65.74/65.97 Found x000:=(x00 x011):R
% 65.74/65.97 Found (x00 x011) as proof of R
% 65.74/65.97 Found (x00 x011) as proof of R
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found x010 as proof of ((iff P) Q)
% 65.74/65.97 Found x000:=(x00 x010):R
% 65.74/65.97 Found (x00 x010) as proof of R
% 65.74/65.97 Found (x00 x010) as proof of R
% 65.74/65.97 Found x020:Q
% 65.74/65.97 Found x020 as proof of Q
% 65.74/65.97 Found (x01 x020) as proof of P
% 65.74/65.97 Found (x01 x020) as proof of P
% 65.74/65.97 Found (x01 x020) as proof of P
% 65.74/65.97 Found x000:=(x00 x011):R
% 65.74/65.97 Found (x00 x011) as proof of R
% 65.74/65.97 Found (x00 x011) as proof of R
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found x010 as proof of ((iff P) Q)
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found x010 as proof of ((iff P) Q)
% 65.74/65.97 Found x020:Q
% 65.74/65.97 Found x020 as proof of x
% 65.74/65.97 Found x1:(((iff P) Q)->R)
% 65.74/65.97 Instantiate: x:=(((iff P) Q)->R):Prop
% 65.74/65.97 Found x1 as proof of x
% 65.74/65.97 Found (x02 x1) as proof of Q
% 65.74/65.97 Found (x02 x1) as proof of Q
% 65.74/65.97 Found x020:Q
% 65.74/65.97 Found x020 as proof of Q
% 65.74/65.97 Found x010:x
% 65.74/65.97 Found x010 as proof of Q
% 65.74/65.97 Found x000:=(x00 x010):R
% 65.74/65.97 Found (x00 x010) as proof of R
% 65.74/65.97 Found (x00 x010) as proof of R
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found x010 as proof of ((iff P) Q)
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found x010 as proof of ((iff P) Q)
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found x010 as proof of ((iff P) Q)
% 65.74/65.97 Found x000:=(x00 x010):R
% 65.74/65.97 Found (x00 x010) as proof of R
% 65.74/65.97 Found (x00 x010) as proof of R
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found x010 as proof of ((iff P) Q)
% 65.74/65.97 Found x010:x
% 65.74/65.97 Found x010 as proof of x
% 65.74/65.97 Found x000:=(x00 x010):R
% 65.74/65.97 Found (x00 x010) as proof of R
% 65.74/65.97 Found (x00 x010) as proof of R
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found (x01 x000) as proof of ((iff P) Q)
% 65.74/65.97 Found (x01 x000) as proof of ((iff P) Q)
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found (x01 x000) as proof of ((iff P) Q)
% 65.74/65.97 Found (x01 x000) as proof of ((iff P) Q)
% 65.74/65.97 Found x010:=(x01 x001):((iff P) Q)
% 65.74/65.97 Found (x01 x001) as proof of ((iff P) Q)
% 65.74/65.97 Found (x01 x001) as proof of ((iff P) Q)
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found x010 as proof of ((iff P) Q)
% 65.74/65.97 Found x000:=(x00 x010):R
% 65.74/65.97 Found (x00 x010) as proof of R
% 65.74/65.97 Found (x00 x010) as proof of R
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found x010 as proof of ((iff P) Q)
% 65.74/65.97 Found x010:=(x01 x000):((iff P) Q)
% 65.74/65.97 Found x010 as proof of ((iff P) Q)
% 65.74/65.97 Found x030:x
% 65.74/65.97 Instantiate: x:=R:Prop
% 65.74/65.97 Found x030 as proof of R
% 65.74/65.97 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 65.74/65.97 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 65.74/65.97 Found eta_expansion as proof of x
% 65.74/65.97 Found x010:((iff P) Q)
% 65.74/65.97 Instantiate: x:=((iff P) Q):Prop
% 65.74/65.97 Found x010 as proof of x
% 65.74/65.97 Found x030:x
% 65.74/65.97 Instantiate: x:=P:Prop
% 65.74/65.97 Found x030 as proof of P
% 65.74/65.97 Found x030:=(x03 x040):x
% 65.74/65.97 Found (x03 x040) as proof of P
% 65.74/65.97 Found (x03 x040) as proof of P
% 67.21/67.43 Found (x03 x040) as proof of P
% 67.21/67.43 Found x030:x
% 67.21/67.43 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 67.21/67.43 Found x030 as proof of ((iff P) Q)
% 67.21/67.43 Found x030:x
% 67.21/67.43 Instantiate: x:=P:Prop
% 67.21/67.43 Found x030 as proof of P
% 67.21/67.43 Found x040:Q
% 67.21/67.43 Instantiate: x:=Q:Prop
% 67.21/67.43 Found x040 as proof of x
% 67.21/67.43 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 67.21/67.43 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 67.21/67.43 Found eta_expansion as proof of x
% 67.21/67.43 Found x000:R
% 67.21/67.43 Instantiate: x:=R:Prop
% 67.21/67.43 Found x000 as proof of x
% 67.21/67.43 Found x010:=(x01 x000):((iff P) Q)
% 67.21/67.43 Found (x01 x000) as proof of ((iff P) Q)
% 67.21/67.43 Found (x01 x000) as proof of ((iff P) Q)
% 67.21/67.43 Found x010:=(x01 x001):((iff P) Q)
% 67.21/67.43 Found x010 as proof of ((iff P) Q)
% 67.21/67.43 Found x02:((iff Q) x)
% 67.21/67.43 Instantiate: x:=P:Prop
% 67.21/67.43 Found x02 as proof of ((iff Q) P)
% 67.21/67.43 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 67.21/67.43 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 67.21/67.43 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 67.21/67.43 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 67.21/67.43 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 67.21/67.43 Found (fun (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of R
% 67.21/67.43 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of ((x->Q)->R)
% 67.21/67.43 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of ((Q->x)->((x->Q)->R))
% 67.21/67.43 Found (and_rect10 (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 67.21/67.43 Found ((and_rect1 R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 67.21/67.43 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 67.21/67.43 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 67.21/67.43 Found x010:=(x01 x000):((iff P) Q)
% 67.21/67.43 Found (x01 x000) as proof of ((iff P) Q)
% 67.21/67.43 Found (x01 x000) as proof of ((iff P) Q)
% 67.21/67.43 Found x010:=(x01 x000):((iff P) Q)
% 67.21/67.43 Found (x01 x000) as proof of ((iff P) Q)
% 67.21/67.43 Found (x01 x000) as proof of ((iff P) Q)
% 67.21/67.43 Found x10:=(x1 x20):R
% 67.21/67.43 Found (x1 x20) as proof of R
% 67.21/67.43 Found (x1 x20) as proof of R
% 67.21/67.43 Found x030:x
% 67.21/67.43 Found x030 as proof of x
% 67.21/67.43 Found x030:x
% 67.21/67.43 Found x030 as proof of Q
% 67.21/67.43 Found x000:R
% 67.21/67.43 Found (fun (x04:(x->Q))=> x000) as proof of R
% 67.21/67.43 Found (fun (x03:(Q->x)) (x04:(x->Q))=> x000) as proof of ((x->Q)->R)
% 67.21/67.43 Found (fun (x03:(Q->x)) (x04:(x->Q))=> x000) as proof of ((Q->x)->((x->Q)->R))
% 67.21/67.43 Found x20:=(x2 x10):((iff P) Q)
% 67.21/67.43 Found (x2 x10) as proof of ((iff P) Q)
% 67.21/67.43 Found (x2 x10) as proof of ((iff P) Q)
% 67.21/67.43 Found x000:=(x00 x010):R
% 67.21/67.43 Found (x00 x010) as proof of R
% 67.21/67.43 Found (x00 x010) as proof of R
% 67.21/67.43 Found x010:=(x01 x001):((iff P) Q)
% 67.21/67.43 Found (x01 x001) as proof of ((iff P) Q)
% 67.21/67.43 Found (x01 x001) as proof of ((iff P) Q)
% 67.21/67.43 Found x000:=(x00 x010):R
% 67.21/67.43 Found (x00 x010) as proof of R
% 67.21/67.43 Found (x00 x010) as proof of R
% 67.21/67.43 Found x20:=(x2 x10):((iff P) Q)
% 67.21/67.43 Found (x2 x10) as proof of ((iff P) Q)
% 67.21/67.43 Found (x2 x10) as proof of ((iff P) Q)
% 67.21/67.43 Found x000:=(x00 x010):R
% 67.21/67.43 Found (x00 x010) as proof of R
% 67.21/67.43 Found (x00 x010) as proof of R
% 67.21/67.43 Found x010:=(x01 x000):((iff P) Q)
% 67.21/67.43 Found (x01 x000) as proof of ((iff P) Q)
% 67.21/67.43 Found (x01 x000) as proof of ((iff P) Q)
% 67.21/67.43 Found x010:=(x01 x000):((iff P) Q)
% 67.21/67.43 Found (x01 x000) as proof of ((iff P) Q)
% 67.21/67.43 Found (x01 x000) as proof of ((iff P) Q)
% 67.21/67.43 Found x030:x
% 67.21/67.43 Instantiate: x:=P:Prop
% 67.21/67.43 Found (fun (x04:(x->Q))=> x030) as proof of P
% 67.21/67.43 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 67.21/67.43 Found x010:=(x01 x000):((iff P) Q)
% 67.21/67.43 Found (x01 x000) as proof of ((iff P) Q)
% 67.21/67.43 Found (x01 x000) as proof of ((iff P) Q)
% 67.21/67.43 Found x010:=(x01 x020):x
% 67.21/67.43 Found (x01 x020) as proof of ((iff P) Q)
% 67.21/67.43 Found (x01 x020) as proof of ((iff P) Q)
% 67.21/67.43 Found (x01 x020) as proof of ((iff P) Q)
% 67.21/67.43 Found x030:x
% 67.21/67.43 Instantiate: x:=P:Prop
% 67.21/67.43 Found x030 as proof of P
% 67.21/67.43 Found x030:x
% 67.21/67.43 Found x030 as proof of x
% 67.21/67.43 Found x040:Q
% 67.21/67.43 Found x040 as proof of x
% 67.21/67.43 Found x040:Q
% 67.21/67.43 Found x040 as proof of Q
% 67.21/67.43 Found x030:x
% 67.21/67.43 Instantiate: x:=P:Prop
% 67.21/67.43 Found (fun (x04:(x->Q))=> x030) as proof of P
% 67.21/67.43 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 67.21/67.43 Found x031:x
% 67.21/67.43 Instantiate: x:=P:Prop
% 67.92/68.15 Found (fun (x04:(x->Q))=> x031) as proof of P
% 67.92/68.15 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 67.92/68.15 Found x030:x
% 67.92/68.15 Instantiate: x:=P:Prop
% 67.92/68.15 Found (fun (x04:(x->Q))=> x030) as proof of P
% 67.92/68.15 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 67.92/68.15 Found x030:x
% 67.92/68.15 Instantiate: x:=P:Prop
% 67.92/68.15 Found (fun (x04:(x->Q))=> x030) as proof of P
% 67.92/68.15 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 67.92/68.15 Found x010:=(x01 x000):((iff P) Q)
% 67.92/68.15 Found (x01 x000) as proof of ((iff P) Q)
% 67.92/68.15 Found (x01 x000) as proof of ((iff P) Q)
% 67.92/68.15 Found x010:=(x01 x000):((iff P) Q)
% 67.92/68.15 Found (x01 x000) as proof of ((iff P) Q)
% 67.92/68.15 Found (x01 x000) as proof of ((iff P) Q)
% 67.92/68.15 Found x030:x
% 67.92/68.15 Found x030 as proof of Q
% 67.92/68.15 Found x000:R
% 67.92/68.15 Instantiate: x:=R:Prop
% 67.92/68.15 Found x000 as proof of x
% 67.92/68.15 Found x010:=(x01 x020):x
% 67.92/68.15 Instantiate: x:=P:Prop
% 67.92/68.15 Found (x01 x020) as proof of P
% 67.92/68.15 Found (x01 x020) as proof of P
% 67.92/68.15 Found x000:=(x00 x010):R
% 67.92/68.15 Found (x00 x010) as proof of R
% 67.92/68.15 Found (x00 x010) as proof of R
% 67.92/68.15 Found x000:R
% 67.92/68.15 Found (fun (x04:(x->Q))=> x000) as proof of R
% 67.92/68.15 Found (fun (x03:(Q->x)) (x04:(x->Q))=> x000) as proof of ((x->Q)->R)
% 67.92/68.15 Found (fun (x03:(Q->x)) (x04:(x->Q))=> x000) as proof of ((Q->x)->((x->Q)->R))
% 67.92/68.15 Found x010:=(x01 x020):x
% 67.92/68.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 67.92/68.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 67.92/68.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 67.92/68.15 Found x010:=(x01 x020):x
% 67.92/68.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 67.92/68.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 67.92/68.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 67.92/68.15 Found x010:=(x01 x000):((iff P) Q)
% 67.92/68.15 Found x010 as proof of ((iff P) Q)
% 67.92/68.15 Found x010:=(x01 x020):x
% 67.92/68.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 67.92/68.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 67.92/68.15 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 67.92/68.15 Found x010:=(x01 x020):x
% 67.92/68.15 Found (x01 x020) as proof of ((iff P) Q)
% 67.92/68.15 Found (x01 x020) as proof of ((iff P) Q)
% 67.92/68.15 Found (x01 x020) as proof of ((iff P) Q)
% 67.92/68.15 Found x040:Q
% 67.92/68.15 Found x040 as proof of Q
% 67.92/68.15 Found (x03 x040) as proof of R
% 67.92/68.15 Found (x03 x040) as proof of R
% 67.92/68.15 Found (x03 x040) as proof of R
% 67.92/68.15 Found x010:=(x01 x020):x
% 67.92/68.15 Instantiate: x:=R:Prop
% 67.92/68.15 Found (x01 x020) as proof of R
% 67.92/68.15 Found (x01 x020) as proof of R
% 67.92/68.15 Found x20:=(x2 x10):((iff P) Q)
% 67.92/68.15 Found (x2 x10) as proof of ((iff P) Q)
% 67.92/68.15 Found (x2 x10) as proof of ((iff P) Q)
% 67.92/68.15 Found x010:=(x01 x000):((iff P) Q)
% 67.92/68.15 Found x010 as proof of ((iff P) Q)
% 67.92/68.15 Found x010:=(x01 x000):((iff P) Q)
% 67.92/68.15 Found x010 as proof of ((iff P) Q)
% 67.92/68.15 Found x040:Q
% 67.92/68.15 Found x040 as proof of Q
% 67.92/68.15 Found (x03 x040) as proof of P
% 67.92/68.15 Found (x03 x040) as proof of P
% 67.92/68.15 Found (x03 x040) as proof of P
% 67.92/68.15 Found x010:=(x01 x020):x
% 67.92/68.15 Instantiate: x:=P:Prop
% 67.92/68.15 Found (x01 x020) as proof of P
% 67.92/68.15 Found (x01 x020) as proof of P
% 67.92/68.15 Found x010:=(x01 x020):x
% 67.92/68.15 Instantiate: x:=P:Prop
% 67.92/68.15 Found (x01 x020) as proof of P
% 67.92/68.15 Found (x01 x020) as proof of P
% 67.92/68.15 Found x010:=(x01 x021):x
% 67.92/68.15 Instantiate: x:=P:Prop
% 67.92/68.15 Found (x01 x021) as proof of P
% 67.92/68.15 Found (x01 x021) as proof of P
% 67.92/68.15 Found x010:=(x01 x000):((iff P) Q)
% 67.92/68.15 Found x010 as proof of ((iff P) Q)
% 67.92/68.15 Found x040:Q
% 67.92/68.15 Found x040 as proof of Q
% 67.92/68.15 Found (x03 x040) as proof of R
% 67.92/68.15 Found (x03 x040) as proof of R
% 67.92/68.15 Found (x03 x040) as proof of R
% 67.92/68.15 Found x010:=(x01 x020):x
% 67.92/68.15 Instantiate: x:=P:Prop
% 67.92/68.15 Found (x01 x020) as proof of P
% 67.92/68.15 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 67.92/68.15 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 67.92/68.15 Found x010:=(x01 x021):x
% 67.92/68.15 Instantiate: x:=P:Prop
% 67.92/68.15 Found (x01 x021) as proof of P
% 67.92/68.15 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 67.92/68.15 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 67.92/68.15 Found x010:=(x01 x020):x
% 67.92/68.15 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 67.92/68.15 Found (x01 x020) as proof of ((iff P) Q)
% 67.92/68.15 Found (x01 x020) as proof of ((iff P) Q)
% 67.92/68.15 Found x010:=(x01 x000):((iff P) Q)
% 67.92/68.15 Found (x01 x000) as proof of ((iff P) Q)
% 67.92/68.15 Found (x01 x000) as proof of ((iff P) Q)
% 67.92/68.15 Found x010:=(x01 x001):((iff P) Q)
% 67.92/68.15 Found x010 as proof of ((iff P) Q)
% 67.92/68.15 Found x00:((iff Q) x)
% 67.92/68.15 Instantiate: x:=P:Prop
% 67.92/68.15 Found x00 as proof of ((iff Q) P)
% 67.92/68.15 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 67.92/68.15 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 67.92/68.15 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 67.92/68.15 Found (fun (x02:(x->Q))=> (((iff_sym Q) P) x00)) as proof of ((iff P) Q)
% 69.14/69.37 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00)) as proof of ((x->Q)->((iff P) Q))
% 69.14/69.37 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00)) as proof of ((Q->x)->((x->Q)->((iff P) Q)))
% 69.14/69.37 Found (and_rect10 (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 69.14/69.37 Found ((and_rect1 ((iff P) Q)) (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 69.14/69.37 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x00)) ((iff P) Q)) (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 69.14/69.37 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x00)) ((iff P) Q)) (fun (x01:(Q->x)) (x02:(x->Q))=> (((iff_sym Q) P) x00))) as proof of ((iff P) Q)
% 69.14/69.37 Found x010:=(x01 x001):((iff P) Q)
% 69.14/69.37 Found x010 as proof of ((iff P) Q)
% 69.14/69.37 Found x040:Q
% 69.14/69.37 Found x040 as proof of Q
% 69.14/69.37 Found (x03 x040) as proof of P
% 69.14/69.37 Found (x03 x040) as proof of P
% 69.14/69.37 Found (x03 x040) as proof of P
% 69.14/69.37 Found x010:=(x01 x020):x
% 69.14/69.37 Instantiate: x:=P:Prop
% 69.14/69.37 Found (x01 x020) as proof of P
% 69.14/69.37 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 69.14/69.37 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 69.14/69.37 Found x040:Q
% 69.14/69.37 Found x040 as proof of Q
% 69.14/69.37 Found (x03 x040) as proof of P
% 69.14/69.37 Found (x03 x040) as proof of P
% 69.14/69.37 Found (x03 x040) as proof of P
% 69.14/69.37 Found x040:Q
% 69.14/69.37 Found x040 as proof of Q
% 69.14/69.37 Found (x03 x040) as proof of P
% 69.14/69.37 Found (x03 x040) as proof of P
% 69.14/69.37 Found (x03 x040) as proof of P
% 69.14/69.37 Found x041:Q
% 69.14/69.37 Found x041 as proof of Q
% 69.14/69.37 Found (x03 x041) as proof of P
% 69.14/69.37 Found (x03 x041) as proof of P
% 69.14/69.37 Found (x03 x041) as proof of P
% 69.14/69.37 Found x040:Q
% 69.14/69.37 Found x040 as proof of Q
% 69.14/69.37 Found (x03 x040) as proof of ((iff P) Q)
% 69.14/69.37 Found (x03 x040) as proof of ((iff P) Q)
% 69.14/69.37 Found (x03 x040) as proof of ((iff P) Q)
% 69.14/69.37 Found x040:Q
% 69.14/69.37 Found x040 as proof of Q
% 69.14/69.37 Found (x03 x040) as proof of ((iff P) Q)
% 69.14/69.37 Found (x03 x040) as proof of ((iff P) Q)
% 69.14/69.37 Found (x03 x040) as proof of ((iff P) Q)
% 69.14/69.37 Found x010:=(x01 x001):((iff P) Q)
% 69.14/69.37 Found x010 as proof of ((iff P) Q)
% 69.14/69.37 Found x020:=(x02 x030):Q
% 69.14/69.37 Found (x02 x030) as proof of Q
% 69.14/69.37 Found (x02 x030) as proof of Q
% 69.14/69.37 Found x030:=(x03 x020):P
% 69.14/69.37 Found (x03 x020) as proof of P
% 69.14/69.37 Found (x03 x020) as proof of P
% 69.14/69.37 Found x010:=(x01 x001):((iff P) Q)
% 69.14/69.37 Found x010 as proof of ((iff P) Q)
% 69.14/69.37 Found x010:((iff P) Q)
% 69.14/69.37 Instantiate: x:=((iff P) Q):Prop
% 69.14/69.37 Found x010 as proof of x
% 69.14/69.37 Found x030:x
% 69.14/69.37 Instantiate: x:=P:Prop
% 69.14/69.37 Found x030 as proof of P
% 69.14/69.37 Found x010:=(x01 x000):((iff P) Q)
% 69.14/69.37 Found x010 as proof of ((iff P) Q)
% 69.14/69.37 Found x010:=(x01 x001):((iff P) Q)
% 69.14/69.37 Found x010 as proof of ((iff P) Q)
% 69.14/69.37 Found x040:Q
% 69.14/69.37 Found x040 as proof of x
% 69.14/69.37 Found x040:Q
% 69.14/69.37 Found x040 as proof of Q
% 69.14/69.37 Found x030:x
% 69.14/69.37 Found x030 as proof of x
% 69.14/69.37 Found x030:x
% 69.14/69.37 Found x030 as proof of Q
% 69.14/69.37 Found x20:=(x2 x10):((iff P) Q)
% 69.14/69.37 Found (x2 x10) as proof of ((iff P) Q)
% 69.14/69.37 Found (x2 x10) as proof of ((iff P) Q)
% 69.14/69.37 Found x000:R
% 69.14/69.37 Instantiate: x:=R:Prop
% 69.14/69.37 Found x000 as proof of x
% 69.14/69.37 Found x030:x
% 69.14/69.37 Instantiate: x:=P:Prop
% 69.14/69.37 Found x030 as proof of P
% 69.14/69.37 Found x000:=(x00 x010):R
% 69.14/69.37 Found (x00 x010) as proof of R
% 69.14/69.37 Found (x00 x010) as proof of R
% 69.14/69.37 Found x010:=(x01 x000):((iff P) Q)
% 69.14/69.37 Found x010 as proof of ((iff P) Q)
% 69.14/69.37 Found x010:=(x01 x000):((iff P) Q)
% 69.14/69.37 Found x010 as proof of ((iff P) Q)
% 69.14/69.37 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 69.14/69.37 Found (iff_refl Q) as proof of ((iff Q) x)
% 69.14/69.37 Found (iff_refl Q) as proof of ((iff Q) x)
% 69.14/69.37 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 69.14/69.37 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 69.14/69.37 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 69.14/69.37 Found (iff_refl Q) as proof of ((iff Q) x)
% 69.14/69.37 Found (iff_refl Q) as proof of ((iff Q) x)
% 69.14/69.37 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 69.14/69.37 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 69.14/69.37 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 69.14/69.37 Found (iff_refl Q) as proof of ((iff Q) x)
% 69.14/69.37 Found (iff_refl Q) as proof of ((iff Q) x)
% 69.14/69.37 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 69.14/69.37 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 69.14/69.37 Found x040:Q
% 69.14/69.37 Found x040 as proof of Q
% 69.14/69.37 Found (x03 x040) as proof of R
% 69.14/69.37 Found (x03 x040) as proof of R
% 69.14/69.37 Found (x03 x040) as proof of R
% 69.14/69.37 Found x010:=(x01 x000):((iff P) Q)
% 69.14/69.37 Found x010 as proof of ((iff P) Q)
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found x010 as proof of ((iff P) Q)
% 70.27/70.50 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 70.27/70.50 Found (iff_refl Q) as proof of ((iff Q) x)
% 70.27/70.50 Found (iff_refl Q) as proof of ((iff Q) x)
% 70.27/70.50 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 70.27/70.50 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found (x01 x000) as proof of ((iff P) Q)
% 70.27/70.50 Found (x01 x000) as proof of ((iff P) Q)
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found x010 as proof of ((iff P) Q)
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found x010 as proof of ((iff P) Q)
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found x010 as proof of ((iff P) Q)
% 70.27/70.50 Found x000:=(x00 x010):R
% 70.27/70.50 Found (x00 x010) as proof of R
% 70.27/70.50 Found (x00 x010) as proof of R
% 70.27/70.50 Found x040:Q
% 70.27/70.50 Found x040 as proof of Q
% 70.27/70.50 Found (x03 x040) as proof of P
% 70.27/70.50 Found (x03 x040) as proof of P
% 70.27/70.50 Found (x03 x040) as proof of P
% 70.27/70.50 Found x040:Q
% 70.27/70.50 Found x040 as proof of Q
% 70.27/70.50 Found (x03 x040) as proof of R
% 70.27/70.50 Found (x03 x040) as proof of R
% 70.27/70.50 Found (x03 x040) as proof of R
% 70.27/70.50 Found x040:Q
% 70.27/70.50 Found x040 as proof of Q
% 70.27/70.50 Found (x03 x040) as proof of P
% 70.27/70.50 Found (x03 x040) as proof of P
% 70.27/70.50 Found (x03 x040) as proof of P
% 70.27/70.50 Found iff_sym100:=(iff_sym10 x00):((iff P) Q)
% 70.27/70.50 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 70.27/70.50 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 70.27/70.50 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 70.27/70.50 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 70.27/70.50 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 70.27/70.50 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found (x01 x000) as proof of ((iff P) Q)
% 70.27/70.50 Found (x01 x000) as proof of ((iff P) Q)
% 70.27/70.50 Found x000:=(x00 x010):R
% 70.27/70.50 Found (x00 x010) as proof of R
% 70.27/70.50 Found (x00 x010) as proof of R
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found x010 as proof of ((iff P) Q)
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found x010 as proof of ((iff P) Q)
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found x010 as proof of ((iff P) Q)
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found x010 as proof of ((iff P) Q)
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found x010 as proof of ((iff P) Q)
% 70.27/70.50 Found x010:x
% 70.27/70.50 Found x010 as proof of x
% 70.27/70.50 Found iff_sym100:=(iff_sym10 x00):((iff P) Q)
% 70.27/70.50 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 70.27/70.50 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 70.27/70.50 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 70.27/70.50 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 70.27/70.50 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 70.27/70.50 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 70.27/70.50 Found x010:x
% 70.27/70.50 Found x010 as proof of Q
% 70.27/70.50 Found x040:Q
% 70.27/70.50 Found x040 as proof of Q
% 70.27/70.50 Found (x03 x040) as proof of P
% 70.27/70.50 Found (x03 x040) as proof of P
% 70.27/70.50 Found (x03 x040) as proof of P
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found (x01 x000) as proof of ((iff P) Q)
% 70.27/70.50 Found (x01 x000) as proof of ((iff P) Q)
% 70.27/70.50 Found x010:=(x01 x001):((iff P) Q)
% 70.27/70.50 Found (x01 x001) as proof of ((iff P) Q)
% 70.27/70.50 Found (x01 x001) as proof of ((iff P) Q)
% 70.27/70.50 Found x040:Q
% 70.27/70.50 Found x040 as proof of Q
% 70.27/70.50 Found (x03 x040) as proof of P
% 70.27/70.50 Found (x03 x040) as proof of P
% 70.27/70.50 Found (x03 x040) as proof of P
% 70.27/70.50 Found x041:Q
% 70.27/70.50 Found x041 as proof of Q
% 70.27/70.50 Found (x03 x041) as proof of P
% 70.27/70.50 Found (x03 x041) as proof of P
% 70.27/70.50 Found (x03 x041) as proof of P
% 70.27/70.50 Found x040:Q
% 70.27/70.50 Found x040 as proof of Q
% 70.27/70.50 Found (x03 x040) as proof of ((iff P) Q)
% 70.27/70.50 Found (x03 x040) as proof of ((iff P) Q)
% 70.27/70.50 Found (x03 x040) as proof of ((iff P) Q)
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found (x01 x000) as proof of ((iff P) Q)
% 70.27/70.50 Found (x01 x000) as proof of ((iff P) Q)
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found x010 as proof of ((iff P) Q)
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found x010 as proof of ((iff P) Q)
% 70.27/70.50 Found x040:Q
% 70.27/70.50 Found x040 as proof of Q
% 70.27/70.50 Found (x03 x040) as proof of ((iff P) Q)
% 70.27/70.50 Found (x03 x040) as proof of ((iff P) Q)
% 70.27/70.50 Found (x03 x040) as proof of ((iff P) Q)
% 70.27/70.50 Found x030:x
% 70.27/70.50 Instantiate: x:=P:Prop
% 70.27/70.50 Found x030 as proof of P
% 70.27/70.50 Found x010:((iff P) Q)
% 70.27/70.50 Instantiate: x:=((iff P) Q):Prop
% 70.27/70.50 Found x010 as proof of x
% 70.27/70.50 Found x010:=(x01 x000):((iff P) Q)
% 70.27/70.50 Found (x01 x000) as proof of ((iff P) Q)
% 70.27/70.50 Found (x01 x000) as proof of ((iff P) Q)
% 70.27/70.50 Found x020:Q
% 70.27/70.50 Instantiate: x:=Q:Prop
% 70.27/70.50 Found x020 as proof of x
% 70.27/70.50 Found x030:x
% 70.27/70.50 Instantiate: x:=P:Prop
% 70.27/70.50 Found x030 as proof of P
% 70.27/70.50 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 70.88/71.10 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 70.88/71.10 Found eq_sym as proof of x
% 70.88/71.10 Found (x02 eq_sym) as proof of Q
% 70.88/71.10 Found (x02 eq_sym) as proof of Q
% 70.88/71.10 Found x000:R
% 70.88/71.10 Instantiate: x:=R:Prop
% 70.88/71.10 Found x000 as proof of x
% 70.88/71.10 Found x000:=(x00 x010):R
% 70.88/71.10 Found (x00 x010) as proof of R
% 70.88/71.10 Found (x00 x010) as proof of R
% 70.88/71.10 Found x10:=(x1 x20):R
% 70.88/71.10 Found (x1 x20) as proof of R
% 70.88/71.10 Found (x1 x20) as proof of R
% 70.88/71.10 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 70.88/71.10 Found (iff_refl Q) as proof of ((iff Q) x)
% 70.88/71.10 Found (iff_refl Q) as proof of ((iff Q) x)
% 70.88/71.10 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 70.88/71.10 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 70.88/71.10 Found x010:=(x01 x000):((iff P) Q)
% 70.88/71.10 Found (x01 x000) as proof of ((iff P) Q)
% 70.88/71.10 Found (x01 x000) as proof of ((iff P) Q)
% 70.88/71.10 Found x030:=(x03 x040):x
% 70.88/71.10 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 70.88/71.10 Found (x03 x040) as proof of ((iff P) Q)
% 70.88/71.10 Found (x03 x040) as proof of ((iff P) Q)
% 70.88/71.10 Found (x00 (x03 x040)) as proof of R
% 70.88/71.10 Found (x00 (x03 x040)) as proof of R
% 70.88/71.10 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 70.88/71.10 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 70.88/71.10 Found eq_sym as proof of x
% 70.88/71.10 Found (x02 eq_sym) as proof of Q
% 70.88/71.10 Found (x02 eq_sym) as proof of Q
% 70.88/71.10 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 70.88/71.10 Found (iff_refl Q) as proof of ((iff Q) x)
% 70.88/71.10 Found (iff_refl Q) as proof of ((iff Q) x)
% 70.88/71.10 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 70.88/71.10 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 70.88/71.10 Found x1:(((iff P) Q)->R)
% 70.88/71.10 Instantiate: x:=(((iff P) Q)->R):Prop
% 70.88/71.10 Found x1 as proof of x
% 70.88/71.10 Found (x02 x1) as proof of Q
% 70.88/71.10 Found (x02 x1) as proof of Q
% 70.88/71.10 Found x040:=(x04 x000):Q
% 70.88/71.10 Found (x04 x000) as proof of Q
% 70.88/71.10 Found (x04 x000) as proof of Q
% 70.88/71.10 Found x010:=(x01 x000):((iff P) Q)
% 70.88/71.10 Found (x01 x000) as proof of ((iff P) Q)
% 70.88/71.10 Found (x01 x000) as proof of ((iff P) Q)
% 70.88/71.10 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 70.88/71.10 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 70.88/71.10 Found eq_sym as proof of x
% 70.88/71.10 Found (x02 eq_sym) as proof of Q
% 70.88/71.10 Found (x02 eq_sym) as proof of Q
% 70.88/71.10 Found x030:=(x03 x040):x
% 70.88/71.10 Instantiate: x:=R:Prop
% 70.88/71.10 Found (x03 x040) as proof of R
% 70.88/71.10 Found (x03 x040) as proof of R
% 70.88/71.10 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 70.88/71.10 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 70.88/71.10 Found x1:(((iff P) Q)->R)
% 70.88/71.10 Instantiate: x:=(((iff P) Q)->R):Prop
% 70.88/71.10 Found x1 as proof of x
% 70.88/71.10 Found (x02 x1) as proof of Q
% 70.88/71.10 Found (x02 x1) as proof of Q
% 70.88/71.10 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 70.88/71.10 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 70.88/71.10 Found eq_sym as proof of x
% 70.88/71.10 Found (x02 eq_sym) as proof of Q
% 70.88/71.10 Found (x02 eq_sym) as proof of Q
% 70.88/71.10 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 70.88/71.10 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 70.88/71.10 Found eq_sym as proof of x
% 70.88/71.10 Found (x02 eq_sym) as proof of Q
% 70.88/71.10 Found (x02 eq_sym) as proof of Q
% 70.88/71.10 Found x000:=(x00 x010):R
% 70.88/71.10 Found (x00 x010) as proof of R
% 70.88/71.10 Found (x00 x010) as proof of R
% 70.88/71.10 Found x030:=(x03 x040):x
% 70.88/71.10 Instantiate: x:=R:Prop
% 70.88/71.10 Found (x03 x040) as proof of R
% 70.88/71.10 Found (x03 x040) as proof of R
% 70.88/71.10 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 70.88/71.10 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 70.88/71.10 Found x030:=(x03 x040):x
% 70.88/71.10 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 70.88/71.10 Found (x03 x040) as proof of ((iff P) Q)
% 70.88/71.10 Found (x03 x040) as proof of ((iff P) Q)
% 70.88/71.10 Found (x00 (x03 x040)) as proof of R
% 70.88/71.10 Found (x00 (x03 x040)) as proof of R
% 70.88/71.10 Found x1:(((iff P) Q)->R)
% 70.88/71.10 Instantiate: x:=(((iff P) Q)->R):Prop
% 70.88/71.10 Found x1 as proof of x
% 70.88/71.10 Found (x02 x1) as proof of Q
% 71.82/72.09 Found (x02 x1) as proof of Q
% 71.82/72.09 Found x000:=(x00 x010):R
% 71.82/72.09 Found (x00 x010) as proof of R
% 71.82/72.09 Found (x00 x010) as proof of R
% 71.82/72.09 Found x010:=(x01 x000):((iff P) Q)
% 71.82/72.09 Found (x01 x000) as proof of ((iff P) Q)
% 71.82/72.09 Found (x01 x000) as proof of ((iff P) Q)
% 71.82/72.09 Found x20:=(x2 x10):((iff P) Q)
% 71.82/72.09 Found (x2 x10) as proof of ((iff P) Q)
% 71.82/72.09 Found (x2 x10) as proof of ((iff P) Q)
% 71.82/72.09 Found x000:=(x00 x010):R
% 71.82/72.09 Found (x00 x010) as proof of R
% 71.82/72.09 Found (x00 x010) as proof of R
% 71.82/72.09 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 71.82/72.09 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 71.82/72.09 Found eq_sym as proof of x
% 71.82/72.09 Found (x02 eq_sym) as proof of Q
% 71.82/72.09 Found (x02 eq_sym) as proof of Q
% 71.82/72.09 Found x1:(((iff P) Q)->R)
% 71.82/72.09 Instantiate: x:=(((iff P) Q)->R):Prop
% 71.82/72.09 Found x1 as proof of x
% 71.82/72.09 Found (x02 x1) as proof of Q
% 71.82/72.09 Found (x02 x1) as proof of Q
% 71.82/72.09 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 71.82/72.09 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 71.82/72.09 Found eq_sym as proof of x
% 71.82/72.09 Found (x02 eq_sym) as proof of Q
% 71.82/72.09 Found (x02 eq_sym) as proof of Q
% 71.82/72.09 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 71.82/72.09 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 71.82/72.09 Found eq_sym as proof of x
% 71.82/72.09 Found (x02 eq_sym) as proof of Q
% 71.82/72.09 Found (x02 eq_sym) as proof of Q
% 71.82/72.09 Found x010:=(x01 x000):((iff P) Q)
% 71.82/72.09 Found (x01 x000) as proof of ((iff P) Q)
% 71.82/72.09 Found (x01 x000) as proof of ((iff P) Q)
% 71.82/72.09 Found x010:=(x01 x000):((iff P) Q)
% 71.82/72.09 Found (x01 x000) as proof of ((iff P) Q)
% 71.82/72.09 Found (x01 x000) as proof of ((iff P) Q)
% 71.82/72.09 Found x010:=(x01 x000):((iff P) Q)
% 71.82/72.09 Found x010 as proof of ((iff P) Q)
% 71.82/72.09 Found x010:=(x01 x000):((iff P) Q)
% 71.82/72.09 Found x010 as proof of ((iff P) Q)
% 71.82/72.09 Found x010:=(x01 x000):((iff P) Q)
% 71.82/72.09 Found (x01 x000) as proof of ((iff P) Q)
% 71.82/72.09 Found (x01 x000) as proof of ((iff P) Q)
% 71.82/72.09 Found x010:=(x01 x000):((iff P) Q)
% 71.82/72.09 Found x010 as proof of ((iff P) Q)
% 71.82/72.09 Found x030:=(x03 x040):x
% 71.82/72.09 Instantiate: x:=P:Prop
% 71.82/72.09 Found (x03 x040) as proof of P
% 71.82/72.09 Found (x03 x040) as proof of P
% 71.82/72.09 Found x10:=(x1 x20):R
% 71.82/72.09 Found (x1 x20) as proof of R
% 71.82/72.09 Found (x1 x20) as proof of R
% 71.82/72.09 Found x010:=(x01 x000):((iff P) Q)
% 71.82/72.09 Found x010 as proof of ((iff P) Q)
% 71.82/72.09 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 71.82/72.09 Found (iff_refl Q) as proof of ((iff Q) x)
% 71.82/72.09 Found (iff_refl Q) as proof of ((iff Q) x)
% 71.82/72.09 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 71.82/72.09 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 71.82/72.09 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 71.82/72.09 Found (iff_refl Q) as proof of ((iff Q) x)
% 71.82/72.09 Found (iff_refl Q) as proof of ((iff Q) x)
% 71.82/72.09 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 71.82/72.09 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 71.82/72.09 Found x030:x
% 71.82/72.09 Instantiate: x:=P:Prop
% 71.82/72.09 Found (fun (x04:(x->Q))=> x030) as proof of P
% 71.82/72.09 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 71.82/72.09 Found x02:((iff Q) x)
% 71.82/72.09 Instantiate: x:=P:Prop
% 71.82/72.09 Found x02 as proof of ((iff Q) P)
% 71.82/72.09 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 71.82/72.09 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 71.82/72.09 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 71.82/72.09 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 71.82/72.09 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 71.82/72.09 Found (fun (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of R
% 71.82/72.09 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of ((x->Q)->R)
% 71.82/72.09 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of ((Q->x)->((x->Q)->R))
% 71.82/72.09 Found (and_rect10 (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 71.82/72.09 Found ((and_rect1 R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 71.82/72.09 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 71.82/72.09 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 72.66/72.90 Found x030:=(x03 x040):x
% 72.66/72.90 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 72.66/72.90 Found (x03 x040) as proof of ((iff P) Q)
% 72.66/72.90 Found (x03 x040) as proof of ((iff P) Q)
% 72.66/72.90 Found (x00 (x03 x040)) as proof of R
% 72.66/72.90 Found (x00 (x03 x040)) as proof of R
% 72.66/72.90 Found x010:=(x01 x000):((iff P) Q)
% 72.66/72.90 Found (x01 x000) as proof of ((iff P) Q)
% 72.66/72.90 Found (x01 x000) as proof of ((iff P) Q)
% 72.66/72.90 Found x010:=(x01 x002):((iff P) Q)
% 72.66/72.90 Found (x01 x002) as proof of ((iff P) Q)
% 72.66/72.90 Found (x01 x002) as proof of ((iff P) Q)
% 72.66/72.90 Found x030:x
% 72.66/72.90 Found x030 as proof of Q
% 72.66/72.90 Found x030:x
% 72.66/72.90 Found x030 as proof of x
% 72.66/72.90 Found x20:=(x2 x10):((iff P) Q)
% 72.66/72.90 Found (x2 x10) as proof of ((iff P) Q)
% 72.66/72.90 Found (x2 x10) as proof of ((iff P) Q)
% 72.66/72.90 Found x040:=(x04 x000):Q
% 72.66/72.90 Found (x04 x000) as proof of Q
% 72.66/72.90 Found (x04 x000) as proof of Q
% 72.66/72.90 Found x030:=(x03 x040):x
% 72.66/72.90 Instantiate: x:=R:Prop
% 72.66/72.90 Found (x03 x040) as proof of R
% 72.66/72.90 Found (x03 x040) as proof of R
% 72.66/72.90 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 72.66/72.90 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 72.66/72.90 Found x010:=(x01 x002):((iff P) Q)
% 72.66/72.90 Found x010 as proof of ((iff P) Q)
% 72.66/72.90 Found x000:=(x00 x010):R
% 72.66/72.90 Found (x00 x010) as proof of R
% 72.66/72.90 Found (x00 x010) as proof of R
% 72.66/72.90 Found x030:=(x03 x040):x
% 72.66/72.90 Instantiate: x:=R:Prop
% 72.66/72.90 Found (x03 x040) as proof of R
% 72.66/72.90 Found (x03 x040) as proof of R
% 72.66/72.90 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 72.66/72.90 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 72.66/72.90 Found x030:=(x03 x040):x
% 72.66/72.90 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 72.66/72.90 Found (x03 x040) as proof of ((iff P) Q)
% 72.66/72.90 Found (x03 x040) as proof of ((iff P) Q)
% 72.66/72.90 Found (x00 (x03 x040)) as proof of R
% 72.66/72.90 Found (x00 (x03 x040)) as proof of R
% 72.66/72.90 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 72.66/72.90 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 72.66/72.90 Found iff_refl as proof of x
% 72.66/72.90 Found x000:=(x00 x010):R
% 72.66/72.90 Found (x00 x010) as proof of R
% 72.66/72.90 Found (x00 x010) as proof of R
% 72.66/72.90 Found x010:=(x01 x020):x
% 72.66/72.90 Found (x01 x020) as proof of ((iff P) Q)
% 72.66/72.90 Found (x01 x020) as proof of ((iff P) Q)
% 72.66/72.90 Found (x01 x020) as proof of ((iff P) Q)
% 72.66/72.90 Found x010:=(x01 x020):x
% 72.66/72.90 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 72.66/72.90 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 72.66/72.90 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 72.66/72.90 Found x010:=(x01 x020):x
% 72.66/72.90 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 72.66/72.90 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 72.66/72.90 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 72.66/72.90 Found x010:x
% 72.66/72.90 Instantiate: x:=P:Prop
% 72.66/72.90 Found x010 as proof of P
% 72.66/72.90 Found x000:=(x00 x010):R
% 72.66/72.90 Found (x00 x010) as proof of R
% 72.66/72.90 Found (x00 x010) as proof of R
% 72.66/72.90 Found x000:=(x00 x010):R
% 72.66/72.90 Found (x00 x010) as proof of R
% 72.66/72.90 Found (x00 x010) as proof of R
% 72.66/72.90 Found x000:=(x00 x010):R
% 72.66/72.90 Found (x00 x010) as proof of R
% 72.66/72.90 Found (x00 x010) as proof of R
% 72.66/72.90 Found x010:=(x01 x001):((iff P) Q)
% 72.66/72.90 Found x010 as proof of ((iff P) Q)
% 72.66/72.90 Found x010:=(x01 x001):((iff P) Q)
% 72.66/72.90 Found x010 as proof of ((iff P) Q)
% 72.66/72.90 Found x040:Q
% 72.66/72.90 Found x040 as proof of Q
% 72.66/72.90 Found (x03 x040) as proof of P
% 72.66/72.90 Found (x03 x040) as proof of P
% 72.66/72.90 Found (x03 x040) as proof of P
% 72.66/72.90 Found x010:=(x01 x000):((iff P) Q)
% 72.66/72.90 Found (x01 x000) as proof of ((iff P) Q)
% 72.66/72.90 Found (x01 x000) as proof of ((iff P) Q)
% 72.66/72.90 Found x010:=(x01 x021):x
% 72.66/72.90 Instantiate: x:=P:Prop
% 72.66/72.90 Found (x01 x021) as proof of P
% 72.66/72.90 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 72.66/72.90 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 72.66/72.90 Found x010:=(x01 x000):((iff P) Q)
% 72.66/72.90 Found (x01 x000) as proof of ((iff P) Q)
% 72.66/72.90 Found (x01 x000) as proof of ((iff P) Q)
% 72.66/72.90 Found x010:=(x01 x020):x
% 72.66/72.90 Instantiate: x:=P:Prop
% 72.66/72.90 Found (x01 x020) as proof of P
% 72.66/72.90 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 72.66/72.90 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 72.66/72.90 Found x010:=(x01 x000):((iff P) Q)
% 72.66/72.90 Found (x01 x000) as proof of ((iff P) Q)
% 72.66/72.90 Found (x01 x000) as proof of ((iff P) Q)
% 72.66/72.90 Found x000:=(x00 x010):R
% 72.66/72.90 Found (x00 x010) as proof of R
% 72.66/72.90 Found (x00 x010) as proof of R
% 72.66/72.90 Found x040:Q
% 72.66/72.90 Found x040 as proof of Q
% 72.66/72.90 Found (x03 x040) as proof of P
% 72.66/72.90 Found (x03 x040) as proof of P
% 72.66/72.90 Found (x03 x040) as proof of P
% 72.66/72.90 Found x010:=(x01 x000):((iff P) Q)
% 73.21/73.47 Found (x01 x000) as proof of ((iff P) Q)
% 73.21/73.47 Found (x01 x000) as proof of ((iff P) Q)
% 73.21/73.47 Found x000:=(x00 x010):R
% 73.21/73.47 Found (x00 x010) as proof of R
% 73.21/73.47 Found (x00 x010) as proof of R
% 73.21/73.47 Found x030:=(x03 x040):x
% 73.21/73.47 Instantiate: x:=P:Prop
% 73.21/73.47 Found (x03 x040) as proof of P
% 73.21/73.47 Found (x03 x040) as proof of P
% 73.21/73.47 Found x010:=(x01 x000):((iff P) Q)
% 73.21/73.47 Found (x01 x000) as proof of ((iff P) Q)
% 73.21/73.47 Found (x01 x000) as proof of ((iff P) Q)
% 73.21/73.47 Found x010:=(x01 x001):((iff P) Q)
% 73.21/73.47 Found x010 as proof of ((iff P) Q)
% 73.21/73.47 Found x010:=(x01 x001):((iff P) Q)
% 73.21/73.47 Found x010 as proof of ((iff P) Q)
% 73.21/73.47 Found x030:=(x03 x020):P
% 73.21/73.47 Found (x03 x020) as proof of P
% 73.21/73.47 Found (x03 x020) as proof of P
% 73.21/73.47 Found x020:=(x02 x030):Q
% 73.21/73.47 Found (x02 x030) as proof of Q
% 73.21/73.47 Found (x02 x030) as proof of Q
% 73.21/73.47 Found x010:=(x01 x020):x
% 73.21/73.47 Found (x01 x020) as proof of R
% 73.21/73.47 Found (x01 x020) as proof of R
% 73.21/73.47 Found (x01 x020) as proof of R
% 73.21/73.47 Found x030:=(x03 x020):P
% 73.21/73.47 Found (x03 x020) as proof of P
% 73.21/73.47 Found (x03 x020) as proof of P
% 73.21/73.47 Found x010:=(x01 x001):((iff P) Q)
% 73.21/73.47 Found x010 as proof of ((iff P) Q)
% 73.21/73.47 Found x030:=(x03 x040):x
% 73.21/73.47 Instantiate: x:=P:Prop
% 73.21/73.47 Found (x03 x040) as proof of P
% 73.21/73.47 Found (x03 x040) as proof of P
% 73.21/73.47 Found x010:=(x01 x000):((iff P) Q)
% 73.21/73.47 Found x010 as proof of ((iff P) Q)
% 73.21/73.47 Found x030:x
% 73.21/73.47 Instantiate: x:=R:Prop
% 73.21/73.47 Found x030 as proof of R
% 73.21/73.47 Found x010:=(x01 x000):((iff P) Q)
% 73.21/73.47 Found x010 as proof of ((iff P) Q)
% 73.21/73.47 Found iff_sym100:=(iff_sym10 x00):((iff P) Q)
% 73.21/73.47 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 73.21/73.47 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 73.21/73.47 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 73.21/73.47 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 73.21/73.47 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 73.21/73.47 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 73.21/73.47 Found x020:Q
% 73.21/73.47 Found x020 as proof of x
% 73.21/73.47 Found x020:Q
% 73.21/73.47 Found x020 as proof of Q
% 73.21/73.47 Found x010:=(x01 x020):x
% 73.21/73.47 Found (x01 x020) as proof of P
% 73.21/73.47 Found (x01 x020) as proof of P
% 73.21/73.47 Found (x01 x020) as proof of P
% 73.21/73.47 Found x010:=(x01 x000):((iff P) Q)
% 73.21/73.47 Found (x01 x000) as proof of ((iff P) Q)
% 73.21/73.47 Found (x01 x000) as proof of ((iff P) Q)
% 73.21/73.47 Found x010:=(x01 x020):x
% 73.21/73.47 Found (x01 x020) as proof of R
% 73.21/73.47 Found (x01 x020) as proof of R
% 73.21/73.47 Found (x01 x020) as proof of R
% 73.21/73.47 Found x010:=(x01 x020):x
% 73.21/73.47 Found (x01 x020) as proof of R
% 73.21/73.47 Found (x01 x020) as proof of R
% 73.21/73.47 Found (x01 x020) as proof of R
% 73.21/73.47 Found x030:x
% 73.21/73.47 Instantiate: x:=P:Prop
% 73.21/73.47 Found (fun (x04:(x->Q))=> x030) as proof of P
% 73.21/73.47 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 73.21/73.47 Found x010:=(x01 x020):x
% 73.21/73.47 Found (x01 x020) as proof of P
% 73.21/73.47 Found (x01 x020) as proof of P
% 73.21/73.47 Found (x01 x020) as proof of P
% 73.21/73.47 Found x02:((iff Q) x)
% 73.21/73.47 Instantiate: x:=P:Prop
% 73.21/73.47 Found x02 as proof of ((iff Q) P)
% 73.21/73.47 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 73.21/73.47 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 73.21/73.47 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 73.21/73.47 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 73.21/73.47 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 73.21/73.47 Found (fun (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of R
% 73.21/73.47 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of ((x->Q)->R)
% 73.21/73.47 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02))) as proof of ((Q->x)->((x->Q)->R))
% 73.21/73.47 Found (and_rect10 (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 73.21/73.47 Found ((and_rect1 R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 73.21/73.47 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 73.21/73.47 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) R) (fun (x03:(Q->x)) (x04:(x->Q))=> (x00 (((iff_sym Q) P) x02)))) as proof of R
% 73.21/73.47 Found x000:R
% 73.21/73.47 Instantiate: x:=R:Prop
% 73.21/73.47 Found x000 as proof of x
% 73.21/73.47 Found x030:x
% 73.21/73.47 Instantiate: x:=P:Prop
% 73.21/73.47 Found x030 as proof of P
% 73.21/73.47 Found x030:x
% 73.21/73.47 Instantiate: x:=P:Prop
% 73.21/73.47 Found (fun (x04:(x->Q))=> x030) as proof of P
% 73.21/73.47 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 73.21/73.47 Found x030:x
% 73.21/73.47 Instantiate: x:=P:Prop
% 73.21/73.47 Found (fun (x04:(x->Q))=> x030) as proof of P
% 73.21/73.47 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 73.21/73.47 Found x031:x
% 73.21/73.47 Instantiate: x:=P:Prop
% 73.21/73.47 Found (fun (x04:(x->Q))=> x031) as proof of P
% 73.21/73.47 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 74.40/74.62 Found x030:x
% 74.40/74.62 Instantiate: x:=P:Prop
% 74.40/74.62 Found (fun (x04:(x->Q))=> x030) as proof of P
% 74.40/74.62 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 74.40/74.62 Found x010:=(x01 x020):x
% 74.40/74.62 Found (x01 x020) as proof of ((iff P) Q)
% 74.40/74.62 Found (x01 x020) as proof of ((iff P) Q)
% 74.40/74.62 Found (x01 x020) as proof of ((iff P) Q)
% 74.40/74.62 Found x010:=(x01 x020):x
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found x010:=(x01 x020):x
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found x030:=(x03 x040):x
% 74.40/74.62 Instantiate: x:=P:Prop
% 74.40/74.62 Found (x03 x040) as proof of P
% 74.40/74.62 Found (x03 x040) as proof of P
% 74.40/74.62 Found x010:=(x01 x000):((iff P) Q)
% 74.40/74.62 Found (x01 x000) as proof of ((iff P) Q)
% 74.40/74.62 Found (x01 x000) as proof of ((iff P) Q)
% 74.40/74.62 Found x010:=(x01 x020):x
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found x010:=(x01 x021):x
% 74.40/74.62 Found (x01 x021) as proof of P
% 74.40/74.62 Found (x01 x021) as proof of P
% 74.40/74.62 Found (x01 x021) as proof of P
% 74.40/74.62 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 74.40/74.62 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 74.40/74.62 Found eta_expansion as proof of x
% 74.40/74.62 Found (x04 eta_expansion) as proof of Q
% 74.40/74.62 Found (x04 eta_expansion) as proof of Q
% 74.40/74.62 Found x030:x
% 74.40/74.62 Found x030 as proof of Q
% 74.40/74.62 Found x010:=(x01 x020):x
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found x20:=(x2 x10):((iff P) Q)
% 74.40/74.62 Found (x2 x10) as proof of ((iff P) Q)
% 74.40/74.62 Found (x2 x10) as proof of ((iff P) Q)
% 74.40/74.62 Found x010:=(x01 x020):x
% 74.40/74.62 Found (x01 x020) as proof of ((iff P) Q)
% 74.40/74.62 Found (x01 x020) as proof of ((iff P) Q)
% 74.40/74.62 Found (x01 x020) as proof of ((iff P) Q)
% 74.40/74.62 Found x010:=(x01 x020):x
% 74.40/74.62 Found (x01 x020) as proof of R
% 74.40/74.62 Found (x01 x020) as proof of R
% 74.40/74.62 Found (x01 x020) as proof of R
% 74.40/74.62 Found x030:x
% 74.40/74.62 Found x030 as proof of x
% 74.40/74.62 Found x010:=(x01 x020):x
% 74.40/74.62 Found (x01 x020) as proof of ((iff P) Q)
% 74.40/74.62 Found (x01 x020) as proof of ((iff P) Q)
% 74.40/74.62 Found (x01 x020) as proof of ((iff P) Q)
% 74.40/74.62 Found x010:=(x01 x021):x
% 74.40/74.62 Found (x01 x021) as proof of P
% 74.40/74.62 Found (x01 x021) as proof of P
% 74.40/74.62 Found (x01 x021) as proof of P
% 74.40/74.62 Found x010:=(x01 x020):x
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found x010:=(x01 x000):((iff P) Q)
% 74.40/74.62 Found (x01 x000) as proof of ((iff P) Q)
% 74.40/74.62 Found (x01 x000) as proof of ((iff P) Q)
% 74.40/74.62 Found x010:=(x01 x020):x
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found (x01 x020) as proof of P
% 74.40/74.62 Found x000:=(x00 x010):R
% 74.40/74.62 Found (x00 x010) as proof of R
% 74.40/74.62 Found (x00 x010) as proof of R
% 74.40/74.62 Found x010:=(x01 x000):((iff P) Q)
% 74.40/74.62 Found x010 as proof of ((iff P) Q)
% 74.40/74.62 Found x010:=(x01 x020):x
% 74.40/74.62 Found (x01 x020) as proof of ((iff P) Q)
% 74.40/74.62 Found (x01 x020) as proof of ((iff P) Q)
% 74.40/74.62 Found (x01 x020) as proof of ((iff P) Q)
% 74.40/74.62 Found x040:Q
% 74.40/74.62 Found x040 as proof of Q
% 74.40/74.62 Found (x03 x040) as proof of P
% 74.40/74.62 Found (x03 x040) as proof of P
% 74.40/74.62 Found (x03 x040) as proof of P
% 74.40/74.62 Found x010:=(x01 x000):((iff P) Q)
% 74.40/74.62 Found x010 as proof of ((iff P) Q)
% 74.40/74.62 Found x000:=(x00 x010):R
% 74.40/74.62 Found (x00 x010) as proof of R
% 74.40/74.62 Found (x00 x010) as proof of R
% 74.40/74.62 Found x010:=(x01 x000):((iff P) Q)
% 74.40/74.62 Found (x01 x000) as proof of ((iff P) Q)
% 74.40/74.62 Found (x01 x000) as proof of ((iff P) Q)
% 74.40/74.62 Found x010:=(x01 x000):((iff P) Q)
% 74.40/74.62 Found x010 as proof of ((iff P) Q)
% 74.40/74.62 Found x010:=(x01 x000):((iff P) Q)
% 74.40/74.62 Found (x01 x000) as proof of ((iff P) Q)
% 74.40/74.62 Found (x01 x000) as proof of ((iff P) Q)
% 74.40/74.62 Found x010:=(x01 x000):((iff P) Q)
% 74.40/74.62 Found x010 as proof of ((iff P) Q)
% 74.40/74.62 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 74.40/74.62 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 74.40/74.62 Found iff_refl as proof of x
% 74.40/74.62 Found x000:=(x00 x010):R
% 74.40/74.62 Found (x00 x010) as proof of R
% 74.40/74.62 Found (x00 x010) as proof of R
% 74.40/74.62 Found x000:=(x00 x010):R
% 74.40/74.62 Found (x00 x010) as proof of R
% 74.40/74.62 Found (x00 x010) as proof of R
% 74.40/74.62 Found x030:=(x03 x040):x
% 74.40/74.62 Instantiate: x:=P:Prop
% 74.40/74.62 Found (x03 x040) as proof of P
% 74.40/74.62 Found (x03 x040) as proof of P
% 74.40/74.62 Found x020:Q
% 74.40/74.62 Found x020 as proof of Q
% 74.40/74.62 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 75.62/75.85 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 75.62/75.85 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 75.62/75.85 Found x040:Q
% 75.62/75.85 Found x040 as proof of Q
% 75.62/75.85 Found (x03 x040) as proof of P
% 75.62/75.85 Found (x03 x040) as proof of P
% 75.62/75.85 Found (x03 x040) as proof of P
% 75.62/75.85 Found x030:x
% 75.62/75.85 Instantiate: x:=P:Prop
% 75.62/75.85 Found x030 as proof of P
% 75.62/75.85 Found x010:=(x01 x000):((iff P) Q)
% 75.62/75.85 Found (x01 x000) as proof of ((iff P) Q)
% 75.62/75.85 Found (x01 x000) as proof of ((iff P) Q)
% 75.62/75.85 Found x030:x
% 75.62/75.85 Instantiate: x:=P:Prop
% 75.62/75.85 Found (fun (x04:(x->Q))=> x030) as proof of P
% 75.62/75.85 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 75.62/75.85 Found x010:=(x01 x000):((iff P) Q)
% 75.62/75.85 Found (x01 x000) as proof of ((iff P) Q)
% 75.62/75.85 Found (x01 x000) as proof of ((iff P) Q)
% 75.62/75.85 Found x000:R
% 75.62/75.85 Instantiate: x:=R:Prop
% 75.62/75.85 Found x000 as proof of x
% 75.62/75.85 Found x030:x
% 75.62/75.85 Instantiate: x:=P:Prop
% 75.62/75.85 Found (fun (x04:(x->Q))=> x030) as proof of P
% 75.62/75.85 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 75.62/75.85 Found x030:x
% 75.62/75.85 Instantiate: x:=P:Prop
% 75.62/75.85 Found (fun (x04:(x->Q))=> x030) as proof of P
% 75.62/75.85 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 75.62/75.85 Found x031:x
% 75.62/75.85 Instantiate: x:=P:Prop
% 75.62/75.85 Found (fun (x04:(x->Q))=> x031) as proof of P
% 75.62/75.85 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 75.62/75.85 Found x030:x
% 75.62/75.85 Instantiate: x:=P:Prop
% 75.62/75.85 Found (fun (x04:(x->Q))=> x030) as proof of P
% 75.62/75.85 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 75.62/75.85 Found x030:x
% 75.62/75.85 Instantiate: x:=P:Prop
% 75.62/75.85 Found x030 as proof of P
% 75.62/75.85 Found x030:=(x03 x040):x
% 75.62/75.85 Instantiate: x:=P:Prop
% 75.62/75.85 Found (x03 x040) as proof of P
% 75.62/75.85 Found (x03 x040) as proof of P
% 75.62/75.85 Found x010:=(x01 x000):((iff P) Q)
% 75.62/75.85 Found x010 as proof of ((iff P) Q)
% 75.62/75.85 Found x010:=(x01 x000):((iff P) Q)
% 75.62/75.85 Found x010 as proof of ((iff P) Q)
% 75.62/75.85 Found x010:=(x01 x000):((iff P) Q)
% 75.62/75.85 Found x010 as proof of ((iff P) Q)
% 75.62/75.85 Found x010:=(x01 x001):((iff P) Q)
% 75.62/75.85 Found x010 as proof of ((iff P) Q)
% 75.62/75.85 Found x010:=(x01 x000):((iff P) Q)
% 75.62/75.85 Found x010 as proof of ((iff P) Q)
% 75.62/75.85 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 75.62/75.85 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 75.62/75.85 Found eta_expansion as proof of x
% 75.62/75.85 Found (x04 eta_expansion) as proof of Q
% 75.62/75.85 Found (x04 eta_expansion) as proof of Q
% 75.62/75.85 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 75.62/75.85 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 75.62/75.85 Found iff_refl as proof of x
% 75.62/75.85 Found x030:x
% 75.62/75.85 Instantiate: x:=P:Prop
% 75.62/75.85 Found x030 as proof of P
% 75.62/75.85 Found x010:=(x01 x000):((iff P) Q)
% 75.62/75.85 Found (x01 x000) as proof of ((iff P) Q)
% 75.62/75.85 Found (x01 x000) as proof of ((iff P) Q)
% 75.62/75.85 Found x010:=(x01 x000):((iff P) Q)
% 75.62/75.85 Found x010 as proof of ((iff P) Q)
% 75.62/75.85 Found x010:=(x01 x000):((iff P) Q)
% 75.62/75.85 Found (x01 x000) as proof of ((iff P) Q)
% 75.62/75.85 Found (x01 x000) as proof of ((iff P) Q)
% 75.62/75.85 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 75.62/75.85 Found (iff_refl Q) as proof of ((iff Q) x)
% 75.62/75.85 Found (iff_refl Q) as proof of ((iff Q) x)
% 75.62/75.85 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 75.62/75.85 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 75.62/75.85 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 75.62/75.85 Found (iff_refl Q) as proof of ((iff Q) x)
% 75.62/75.85 Found (iff_refl Q) as proof of ((iff Q) x)
% 75.62/75.85 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 75.62/75.85 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 75.62/75.85 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 75.62/75.85 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 75.62/75.85 Found eq_sym as proof of x
% 75.62/75.85 Found (x02 eq_sym) as proof of Q
% 75.62/75.85 Found (x02 eq_sym) as proof of Q
% 75.62/75.85 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 75.62/75.85 Found (iff_refl Q) as proof of ((iff Q) x)
% 75.62/75.85 Found (iff_refl Q) as proof of ((iff Q) x)
% 75.62/75.85 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 75.62/75.85 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 75.62/75.85 Found x020:Q
% 75.62/75.85 Found x020 as proof of Q
% 75.62/75.85 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 75.62/75.85 Found (iff_refl Q) as proof of ((iff Q) x)
% 75.62/75.85 Found (iff_refl Q) as proof of ((iff Q) x)
% 76.65/76.88 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 76.65/76.88 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 76.65/76.88 Found x000:=(x00 x010):R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found x000:=(x00 x010):R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found x000:=(x00 x010):R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found x000:=(x00 x010):R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found x010:=(x01 x002):((iff P) Q)
% 76.65/76.88 Found (x01 x002) as proof of ((iff P) Q)
% 76.65/76.88 Found (x01 x002) as proof of ((iff P) Q)
% 76.65/76.88 Found x010:x
% 76.65/76.88 Found x010 as proof of Q
% 76.65/76.88 Found x020:Q
% 76.65/76.88 Found x020 as proof of x
% 76.65/76.88 Found x010:x
% 76.65/76.88 Found x010 as proof of x
% 76.65/76.88 Found x000:=(x00 x010):R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found x000:=(x00 x010):R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found x010:=(x01 x000):((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 76.65/76.88 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 76.65/76.88 Found eq_sym as proof of x
% 76.65/76.88 Found (x02 eq_sym) as proof of Q
% 76.65/76.88 Found (x02 eq_sym) as proof of Q
% 76.65/76.88 Found x030:x
% 76.65/76.88 Instantiate: x:=P:Prop
% 76.65/76.88 Found x030 as proof of P
% 76.65/76.88 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 76.65/76.88 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 76.65/76.88 Found iff_refl as proof of x
% 76.65/76.88 Found x030:=(x03 x040):x
% 76.65/76.88 Found (x03 x040) as proof of R
% 76.65/76.88 Found (x03 x040) as proof of R
% 76.65/76.88 Found (x03 x040) as proof of R
% 76.65/76.88 Found x000:=(x00 x010):R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found x000:=(x00 x010):R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found (x00 x010) as proof of R
% 76.65/76.88 Found x010:=(x01 x000):((iff P) Q)
% 76.65/76.88 Found x010 as proof of ((iff P) Q)
% 76.65/76.88 Found x010:=(x01 x000):((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found x010:=(x01 x000):((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found x030:=(x03 x040):x
% 76.65/76.88 Instantiate: x:=R:Prop
% 76.65/76.88 Found (x03 x040) as proof of R
% 76.65/76.88 Found (x03 x040) as proof of R
% 76.65/76.88 Found x010:x
% 76.65/76.88 Instantiate: x:=R:Prop
% 76.65/76.88 Found x010 as proof of R
% 76.65/76.88 Found x010:=(x01 x000):((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 76.65/76.88 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 76.65/76.88 Found eq_sym as proof of x
% 76.65/76.88 Found (x02 eq_sym) as proof of Q
% 76.65/76.88 Found (x02 eq_sym) as proof of Q
% 76.65/76.88 Found x010:=(x01 x000):((iff P) Q)
% 76.65/76.88 Found x010 as proof of ((iff P) Q)
% 76.65/76.88 Found x010:=(x01 x000):((iff P) Q)
% 76.65/76.88 Found x010 as proof of ((iff P) Q)
% 76.65/76.88 Found x010:=(x01 x000):((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found x010:=(x01 x000):((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found x010:x
% 76.65/76.88 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 76.65/76.88 Found x010 as proof of ((iff P) Q)
% 76.65/76.88 Found x010:=(x01 x000):((iff P) Q)
% 76.65/76.88 Found x010 as proof of ((iff P) Q)
% 76.65/76.88 Found x010:x
% 76.65/76.88 Instantiate: x:=R:Prop
% 76.65/76.88 Found x010 as proof of R
% 76.65/76.88 Found x1:(((iff P) Q)->R)
% 76.65/76.88 Instantiate: x:=(((iff P) Q)->R):Prop
% 76.65/76.88 Found x1 as proof of x
% 76.65/76.88 Found x010:x
% 76.65/76.88 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 76.65/76.88 Found x010 as proof of ((iff P) Q)
% 76.65/76.88 Found x010:=(x01 x000):((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found (x01 x000) as proof of ((iff P) Q)
% 76.65/76.88 Found x030:=(x03 x040):x
% 76.65/76.88 Instantiate: x:=P:Prop
% 76.65/76.88 Found (x03 x040) as proof of P
% 76.65/76.88 Found (x03 x040) as proof of P
% 76.65/76.88 Found x030:=(x03 x040):x
% 76.65/76.88 Instantiate: x:=R:Prop
% 76.65/76.88 Found (x03 x040) as proof of R
% 76.65/76.88 Found (x03 x040) as proof of R
% 76.65/76.88 Found x010:x
% 76.65/76.88 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 76.65/76.88 Found x010 as proof of ((iff P) Q)
% 76.65/76.88 Found x010:=(x01 x000):((iff P) Q)
% 76.65/76.88 Found x010 as proof of ((iff P) Q)
% 77.86/78.10 Found x010:x
% 77.86/78.10 Instantiate: x:=Q:Prop
% 77.86/78.10 Found x010 as proof of Q
% 77.86/78.10 Found x011:x
% 77.86/78.10 Found x011 as proof of Q
% 77.86/78.10 Found x010:=(x01 x000):((iff P) Q)
% 77.86/78.10 Found x010 as proof of ((iff P) Q)
% 77.86/78.10 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 77.86/78.10 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 77.86/78.10 Found iff_sym as proof of x
% 77.86/78.10 Found x030:x
% 77.86/78.10 Instantiate: x:=R:Prop
% 77.86/78.10 Found x030 as proof of R
% 77.86/78.10 Found x010:=(x01 x000):((iff P) Q)
% 77.86/78.10 Found (x01 x000) as proof of ((iff P) Q)
% 77.86/78.10 Found (x01 x000) as proof of ((iff P) Q)
% 77.86/78.10 Found x030:=(x03 x041):x
% 77.86/78.10 Instantiate: x:=P:Prop
% 77.86/78.10 Found (x03 x041) as proof of P
% 77.86/78.10 Found (x03 x041) as proof of P
% 77.86/78.10 Found x030:=(x03 x040):x
% 77.86/78.10 Instantiate: x:=P:Prop
% 77.86/78.10 Found (x03 x040) as proof of P
% 77.86/78.10 Found (x03 x040) as proof of P
% 77.86/78.10 Found x030:=(x03 x040):x
% 77.86/78.10 Instantiate: x:=P:Prop
% 77.86/78.10 Found (x03 x040) as proof of P
% 77.86/78.10 Found (x03 x040) as proof of P
% 77.86/78.10 Found x030:=(x03 x040):x
% 77.86/78.10 Instantiate: x:=P:Prop
% 77.86/78.10 Found (x03 x040) as proof of P
% 77.86/78.10 Found (x03 x040) as proof of P
% 77.86/78.10 Found x030:x
% 77.86/78.10 Instantiate: x:=P:Prop
% 77.86/78.10 Found x030 as proof of P
% 77.86/78.10 Found x000:=(x00 x010):R
% 77.86/78.10 Found (x00 x010) as proof of R
% 77.86/78.10 Found (x00 x010) as proof of R
% 77.86/78.10 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 77.86/78.10 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 77.86/78.10 Found iff_refl as proof of x
% 77.86/78.10 Found x010:=(x01 x000):((iff P) Q)
% 77.86/78.10 Found (x01 x000) as proof of ((iff P) Q)
% 77.86/78.10 Found (x01 x000) as proof of ((iff P) Q)
% 77.86/78.10 Found x010:x
% 77.86/78.10 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 77.86/78.10 Found x010 as proof of ((R->((iff P) Q))->P)
% 77.86/78.10 Found x020:Q
% 77.86/78.10 Instantiate: x:=Q:Prop
% 77.86/78.10 Found x020 as proof of x
% 77.86/78.10 Found x030:=(x03 x040):x
% 77.86/78.10 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 77.86/78.10 Found (x03 x040) as proof of ((iff P) Q)
% 77.86/78.10 Found (x03 x040) as proof of ((iff P) Q)
% 77.86/78.10 Found x10:R
% 77.86/78.10 Instantiate: x:=R:Prop
% 77.86/78.10 Found x10 as proof of x
% 77.86/78.10 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 77.86/78.10 Found (iff_refl Q) as proof of ((iff Q) x)
% 77.86/78.10 Found (iff_refl Q) as proof of ((iff Q) x)
% 77.86/78.10 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 77.86/78.10 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 77.86/78.10 Found x030:=(x03 x040):x
% 77.86/78.10 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 77.86/78.10 Found (x03 x040) as proof of ((iff P) Q)
% 77.86/78.10 Found (x03 x040) as proof of ((iff P) Q)
% 77.86/78.10 Found x20:=(x2 x10):((iff P) Q)
% 77.86/78.10 Found (x2 x10) as proof of ((iff P) Q)
% 77.86/78.10 Found (x2 x10) as proof of ((iff P) Q)
% 77.86/78.10 Found x010:=(x01 x000):((iff P) Q)
% 77.86/78.10 Found (x01 x000) as proof of ((iff P) Q)
% 77.86/78.10 Found (x01 x000) as proof of ((iff P) Q)
% 77.86/78.10 Found x010:=(x01 x000):((iff P) Q)
% 77.86/78.10 Found (x01 x000) as proof of ((iff P) Q)
% 77.86/78.10 Found (x01 x000) as proof of ((iff P) Q)
% 77.86/78.10 Found x010:x
% 77.86/78.10 Instantiate: x:=P:Prop
% 77.86/78.10 Found (fun (x02:(x->Q))=> x010) as proof of P
% 77.86/78.10 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 77.86/78.10 Found x010:=(x01 x020):x
% 77.86/78.10 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 77.86/78.10 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 77.86/78.10 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 77.86/78.10 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 77.86/78.10 Found x000:=(x00 x010):R
% 77.86/78.10 Found (x00 x010) as proof of R
% 77.86/78.10 Found (x00 x010) as proof of R
% 77.86/78.10 Found x000:=(x00 x010):R
% 77.86/78.10 Found (x00 x010) as proof of R
% 77.86/78.10 Found (x00 x010) as proof of R
% 77.86/78.10 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 77.86/78.10 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 77.86/78.10 Found iff_refl as proof of x
% 77.86/78.10 Found x010:x
% 77.86/78.10 Instantiate: x:=P:Prop
% 77.86/78.10 Found x010 as proof of P
% 77.86/78.10 Found x000:=(x00 x010):R
% 77.86/78.10 Found (x00 x010) as proof of R
% 77.86/78.10 Found (x00 x010) as proof of R
% 77.86/78.10 Found x030:=(x03 x040):x
% 77.86/78.10 Found (x03 x040) as proof of R
% 77.86/78.10 Found (x03 x040) as proof of R
% 77.86/78.10 Found (x03 x040) as proof of R
% 77.86/78.10 Found x010:=(x01 x000):((iff P) Q)
% 77.86/78.10 Found (x01 x000) as proof of ((iff P) Q)
% 77.86/78.10 Found (x01 x000) as proof of ((iff P) Q)
% 77.86/78.10 Found x010:=(x01 x000):((iff P) Q)
% 77.86/78.10 Found (x01 x000) as proof of ((iff P) Q)
% 77.86/78.10 Found (x01 x000) as proof of ((iff P) Q)
% 77.86/78.10 Found x010:=(x01 x021):x
% 77.86/78.10 Instantiate: x:=P:Prop
% 77.86/78.10 Found (x01 x021) as proof of P
% 79.59/79.82 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 79.59/79.82 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 79.59/79.82 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 79.59/79.82 Found x010:=(x01 x000):((iff P) Q)
% 79.59/79.82 Found (x01 x000) as proof of ((iff P) Q)
% 79.59/79.82 Found (x01 x000) as proof of ((iff P) Q)
% 79.59/79.82 Found x010:=(x01 x001):((iff P) Q)
% 79.59/79.82 Found x010 as proof of ((iff P) Q)
% 79.59/79.82 Found x030:=(x03 x020):P
% 79.59/79.82 Found (x03 x020) as proof of P
% 79.59/79.82 Found (x03 x020) as proof of P
% 79.59/79.82 Found x000:=(x00 x010):R
% 79.59/79.82 Found (x00 x010) as proof of R
% 79.59/79.82 Found (x00 x010) as proof of R
% 79.59/79.82 Found x010:=(x01 x000):((iff P) Q)
% 79.59/79.82 Found (x01 x000) as proof of ((iff P) Q)
% 79.59/79.82 Found (x01 x000) as proof of ((iff P) Q)
% 79.59/79.82 Found x010:=(x01 x000):((iff P) Q)
% 79.59/79.82 Found x010 as proof of ((iff P) Q)
% 79.59/79.82 Found x040:Q
% 79.59/79.82 Found x040 as proof of Q
% 79.59/79.82 Found (x03 x040) as proof of P
% 79.59/79.82 Found (x03 x040) as proof of P
% 79.59/79.82 Found (x03 x040) as proof of P
% 79.59/79.82 Found x010:=(x01 x000):((iff P) Q)
% 79.59/79.82 Found (x01 x000) as proof of ((iff P) Q)
% 79.59/79.82 Found (x01 x000) as proof of ((iff P) Q)
% 79.59/79.82 Found x010:=(x01 x020):x
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found x030:x
% 79.59/79.82 Instantiate: x:=R:Prop
% 79.59/79.82 Found x030 as proof of R
% 79.59/79.82 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 79.59/79.82 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 79.59/79.82 Found iff_sym as proof of x
% 79.59/79.82 Found x010:=(x01 x000):((iff P) Q)
% 79.59/79.82 Found (x01 x000) as proof of ((iff P) Q)
% 79.59/79.82 Found (x01 x000) as proof of ((iff P) Q)
% 79.59/79.82 Found x030:x
% 79.59/79.82 Instantiate: x:=P:Prop
% 79.59/79.82 Found (fun (x04:(x->Q))=> x030) as proof of P
% 79.59/79.82 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 79.59/79.82 Found x010:=(x01 x020):x
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found x010:=(x01 x000):((iff P) Q)
% 79.59/79.82 Found (x01 x000) as proof of ((iff P) Q)
% 79.59/79.82 Found (x01 x000) as proof of ((iff P) Q)
% 79.59/79.82 Found x010:=(x01 x000):((iff P) Q)
% 79.59/79.82 Found (x01 x000) as proof of ((iff P) Q)
% 79.59/79.82 Found (x01 x000) as proof of ((iff P) Q)
% 79.59/79.82 Found x010:=(x01 x002):((iff P) Q)
% 79.59/79.82 Found x010 as proof of ((iff P) Q)
% 79.59/79.82 Found x010:=(x01 x020):x
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found x010:=(x01 x020):x
% 79.59/79.82 Found (x01 x020) as proof of R
% 79.59/79.82 Found (x01 x020) as proof of R
% 79.59/79.82 Found (x01 x020) as proof of R
% 79.59/79.82 Found x010:=(x01 x020):x
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found x010:=(x01 x020):x
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found (x01 x020) as proof of P
% 79.59/79.82 Found x010:=(x01 x021):x
% 79.59/79.82 Found (x01 x021) as proof of P
% 79.59/79.82 Found (x01 x021) as proof of P
% 79.59/79.82 Found (x01 x021) as proof of P
% 79.59/79.82 Found x010:=(x01 x000):((iff P) Q)
% 79.59/79.82 Found x010 as proof of ((iff P) Q)
% 79.59/79.82 Found x000:=(x00 x010):R
% 79.59/79.82 Found (x00 x010) as proof of R
% 79.59/79.82 Found (x00 x010) as proof of R
% 79.59/79.82 Found x010:=(x01 x000):((iff P) Q)
% 79.59/79.82 Found x010 as proof of ((iff P) Q)
% 79.59/79.82 Found x010:=(x01 x000):((iff P) Q)
% 79.59/79.82 Found x010 as proof of ((iff P) Q)
% 79.59/79.82 Found x010:=(x01 x020):x
% 79.59/79.82 Found (x01 x020) as proof of ((iff P) Q)
% 79.59/79.82 Found (x01 x020) as proof of ((iff P) Q)
% 79.59/79.82 Found (x01 x020) as proof of ((iff P) Q)
% 79.59/79.82 Found x000:=(x00 x010):R
% 79.59/79.82 Found (x00 x010) as proof of R
% 79.59/79.82 Found (x00 x010) as proof of R
% 79.59/79.82 Found x000:=(x00 x010):R
% 79.59/79.82 Found (x00 x010) as proof of R
% 79.59/79.82 Found (x00 x010) as proof of R
% 79.59/79.82 Found x010:=(x01 x020):x
% 79.59/79.82 Instantiate: x:=R:Prop
% 79.59/79.82 Found (x01 x020) as proof of R
% 79.59/79.82 Found (x01 x020) as proof of R
% 79.59/79.82 Found x040:Q
% 79.59/79.82 Found x040 as proof of Q
% 79.59/79.82 Found (x03 x040) as proof of P
% 79.59/79.82 Found (x03 x040) as proof of P
% 79.59/79.82 Found (x03 x040) as proof of P
% 79.59/79.82 Found x030:x
% 79.59/79.82 Instantiate: x:=P:Prop
% 79.59/79.82 Found (fun (x04:(x->Q))=> x030) as proof of P
% 79.59/79.82 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 79.59/79.82 Found x010:=(x01 x000):((iff P) Q)
% 79.59/79.82 Found x010 as proof of ((iff P) Q)
% 79.59/79.82 Found x030:x
% 79.59/79.82 Instantiate: x:=R:Prop
% 79.59/79.82 Found x030 as proof of R
% 79.59/79.82 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 79.59/79.82 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 81.88/82.17 Found iff_refl as proof of x
% 81.88/82.17 Found x010:=(x01 x000):((iff P) Q)
% 81.88/82.17 Found x010 as proof of ((iff P) Q)
% 81.88/82.17 Found x010:=(x01 x000):((iff P) Q)
% 81.88/82.17 Found x010 as proof of ((iff P) Q)
% 81.88/82.17 Found x010:=(x01 x000):((iff P) Q)
% 81.88/82.17 Found (x01 x000) as proof of ((iff P) Q)
% 81.88/82.17 Found (x01 x000) as proof of ((iff P) Q)
% 81.88/82.17 Found x030:x
% 81.88/82.17 Instantiate: x:=P:Prop
% 81.88/82.17 Found x030 as proof of P
% 81.88/82.17 Found x010:=(x01 x020):x
% 81.88/82.17 Instantiate: x:=R:Prop
% 81.88/82.17 Found (x01 x020) as proof of R
% 81.88/82.17 Found (x01 x020) as proof of R
% 81.88/82.17 Found x010:=(x01 x000):((iff P) Q)
% 81.88/82.17 Found (x01 x000) as proof of ((iff P) Q)
% 81.88/82.17 Found (x01 x000) as proof of ((iff P) Q)
% 81.88/82.17 Found x010:=(x01 x000):((iff P) Q)
% 81.88/82.17 Found x010 as proof of ((iff P) Q)
% 81.88/82.17 Found x010:=(x01 x000):((iff P) Q)
% 81.88/82.17 Found x010 as proof of ((iff P) Q)
% 81.88/82.17 Found x010:=(x01 x000):((iff P) Q)
% 81.88/82.17 Found x010 as proof of ((iff P) Q)
% 81.88/82.17 Found x010:=(x01 x000):((iff P) Q)
% 81.88/82.17 Found x010 as proof of ((iff P) Q)
% 81.88/82.17 Found x010:=(x01 x000):((iff P) Q)
% 81.88/82.17 Found x010 as proof of ((iff P) Q)
% 81.88/82.17 Found x010:=(x01 x000):((iff P) Q)
% 81.88/82.17 Found x010 as proof of ((iff P) Q)
% 81.88/82.17 Found x000:=(x00 x010):R
% 81.88/82.17 Found (x00 x010) as proof of R
% 81.88/82.17 Found (x00 x010) as proof of R
% 81.88/82.17 Found x010:=(x01 x001):((iff P) Q)
% 81.88/82.17 Found x010 as proof of ((iff P) Q)
% 81.88/82.17 Found x010:=(x01 x001):((iff P) Q)
% 81.88/82.17 Found x010 as proof of ((iff P) Q)
% 81.88/82.17 Found x020:Q
% 81.88/82.17 Found x020 as proof of x
% 81.88/82.17 Found x010:x
% 81.88/82.17 Found x010 as proof of Q
% 81.88/82.17 Found x020:Q
% 81.88/82.17 Found x020 as proof of Q
% 81.88/82.17 Found x030:x
% 81.88/82.17 Instantiate: x:=P:Prop
% 81.88/82.17 Found (fun (x04:(x->Q))=> x030) as proof of P
% 81.88/82.17 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 81.88/82.17 Found x010:x
% 81.88/82.17 Found x010 as proof of x
% 81.88/82.17 Found x010:=(x01 x000):((iff P) Q)
% 81.88/82.17 Found (x01 x000) as proof of ((iff P) Q)
% 81.88/82.17 Found (x01 x000) as proof of ((iff P) Q)
% 81.88/82.17 Found x20:=(x2 x10):((iff P) Q)
% 81.88/82.17 Found (x2 x10) as proof of ((iff P) Q)
% 81.88/82.17 Found (x2 x10) as proof of ((iff P) Q)
% 81.88/82.17 Found x010:=(x01 x001):((iff P) Q)
% 81.88/82.17 Found x010 as proof of ((iff P) Q)
% 81.88/82.17 Found x030:x
% 81.88/82.17 Instantiate: x:=P:Prop
% 81.88/82.17 Found (fun (x04:(x->Q))=> x030) as proof of P
% 81.88/82.17 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 81.88/82.17 Found x010:x
% 81.88/82.17 Found x010 as proof of Q
% 81.88/82.17 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 81.88/82.17 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 81.88/82.17 Found iff_refl as proof of x
% 81.88/82.17 Found x10:R
% 81.88/82.17 Found (fun (x02:(x->Q))=> x10) as proof of R
% 81.88/82.17 Found (fun (x02:(x->Q))=> x10) as proof of ((x->Q)->R)
% 81.88/82.17 Found x010:=(x01 x000):((iff P) Q)
% 81.88/82.17 Found (x01 x000) as proof of ((iff P) Q)
% 81.88/82.17 Found (x01 x000) as proof of ((iff P) Q)
% 81.88/82.17 Found x030:x
% 81.88/82.17 Instantiate: x:=P:Prop
% 81.88/82.17 Found x030 as proof of P
% 81.88/82.17 Found x010:=(x01 x000):((iff P) Q)
% 81.88/82.17 Found x010 as proof of ((iff P) Q)
% 81.88/82.17 Found x20:((iff P) Q)
% 81.88/82.17 Found (fun (x02:(x->Q))=> x20) as proof of ((iff P) Q)
% 81.88/82.17 Found (fun (x02:(x->Q))=> x20) as proof of ((x->Q)->((iff P) Q))
% 81.88/82.17 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 81.88/82.17 Found (iff_refl Q) as proof of ((iff Q) x)
% 81.88/82.17 Found (iff_refl Q) as proof of ((iff Q) x)
% 81.88/82.17 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 81.88/82.17 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 81.88/82.17 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 81.88/82.17 Found (iff_refl Q) as proof of ((iff Q) x)
% 81.88/82.17 Found (iff_refl Q) as proof of ((iff Q) x)
% 81.95/82.17 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 81.95/82.17 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 81.95/82.17 Found x010:x
% 81.95/82.17 Found x010 as proof of x
% 81.95/82.17 Found x010:x
% 81.95/82.17 Found x010 as proof of Q
% 81.95/82.17 Found x030:x
% 81.95/82.17 Instantiate: x:=R:Prop
% 81.95/82.17 Found x030 as proof of R
% 81.95/82.17 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 81.95/82.17 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 81.95/82.17 Found ex_intro0 as proof of x
% 81.95/82.17 Found x020:Q
% 81.95/82.17 Found x020 as proof of Q
% 81.95/82.17 Found (x01 x020) as proof of ((iff P) Q)
% 81.95/82.17 Found (x01 x020) as proof of ((iff P) Q)
% 81.95/82.17 Found (x01 x020) as proof of ((iff P) Q)
% 81.95/82.17 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 81.95/82.17 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 81.95/82.17 Found eq_sym as proof of x
% 81.95/82.17 Found (x02 eq_sym) as proof of Q
% 81.95/82.17 Found (x02 eq_sym) as proof of Q
% 81.95/82.17 Found x000:=(x00 x010):R
% 83.72/83.97 Found (x00 x010) as proof of R
% 83.72/83.97 Found (x00 x010) as proof of R
% 83.72/83.97 Found x030:x
% 83.72/83.97 Instantiate: x:=P:Prop
% 83.72/83.97 Found (fun (x04:(x->Q))=> x030) as proof of P
% 83.72/83.97 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found x030:x
% 83.72/83.97 Instantiate: x:=R:Prop
% 83.72/83.97 Found x030 as proof of R
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found x020:Q
% 83.72/83.97 Found x020 as proof of Q
% 83.72/83.97 Found (x01 x020) as proof of ((iff P) Q)
% 83.72/83.97 Found (x01 x020) as proof of ((iff P) Q)
% 83.72/83.97 Found (x01 x020) as proof of ((iff P) Q)
% 83.72/83.97 Found x020:Q
% 83.72/83.97 Found x020 as proof of Q
% 83.72/83.97 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 83.72/83.97 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 83.72/83.97 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 83.72/83.97 Found x020:Q
% 83.72/83.97 Found x020 as proof of Q
% 83.72/83.97 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 83.72/83.97 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 83.72/83.97 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 83.72/83.97 Found x020:Q
% 83.72/83.97 Found x020 as proof of Q
% 83.72/83.97 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 83.72/83.97 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 83.72/83.97 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 83.72/83.97 Found x000:=(x00 x010):R
% 83.72/83.97 Found (x00 x010) as proof of R
% 83.72/83.97 Found (x00 x010) as proof of R
% 83.72/83.97 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 83.72/83.97 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 83.72/83.97 Found iff_refl as proof of x
% 83.72/83.97 Found x030:x
% 83.72/83.97 Instantiate: x:=P:Prop
% 83.72/83.97 Found x030 as proof of P
% 83.72/83.97 Found x030:=(x03 x040):x
% 83.72/83.97 Instantiate: x:=P:Prop
% 83.72/83.97 Found (x03 x040) as proof of P
% 83.72/83.97 Found (x03 x040) as proof of P
% 83.72/83.97 Found x000:=(x00 x010):R
% 83.72/83.97 Found (x00 x010) as proof of R
% 83.72/83.97 Found (x00 x010) as proof of R
% 83.72/83.97 Found x000:=(x00 x010):R
% 83.72/83.97 Found (x00 x010) as proof of R
% 83.72/83.97 Found (x00 x010) as proof of R
% 83.72/83.97 Found x030:x
% 83.72/83.97 Instantiate: x:=P:Prop
% 83.72/83.97 Found (fun (x04:(x->Q))=> x030) as proof of P
% 83.72/83.97 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 83.72/83.97 Found x030:=(x03 x040):x
% 83.72/83.97 Instantiate: x:=P:Prop
% 83.72/83.97 Found (x03 x040) as proof of P
% 83.72/83.97 Found (x03 x040) as proof of P
% 83.72/83.97 Found x1:(((iff P) Q)->R)
% 83.72/83.97 Instantiate: x:=(((iff P) Q)->R):Prop
% 83.72/83.97 Found x1 as proof of x
% 83.72/83.97 Found x000:=(x00 x010):R
% 83.72/83.97 Found (x00 x010) as proof of R
% 83.72/83.97 Found (x00 x010) as proof of R
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found x021:Q
% 83.72/83.97 Found x021 as proof of Q
% 83.72/83.97 Found x010:x
% 83.72/83.97 Found x010 as proof of Q
% 83.72/83.97 Found x020:Q
% 83.72/83.97 Found x020 as proof of x
% 83.72/83.97 Found x011:x
% 83.72/83.97 Found x011 as proof of x
% 83.72/83.97 Found x011:x
% 83.72/83.97 Found x011 as proof of Q
% 83.72/83.97 Found x010:x
% 83.72/83.97 Found x010 as proof of x
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found x010 as proof of ((iff P) Q)
% 83.72/83.97 Found x021:Q
% 83.72/83.97 Found x021 as proof of x
% 83.72/83.97 Found x020:Q
% 83.72/83.97 Found x020 as proof of Q
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found x010 as proof of ((iff P) Q)
% 83.72/83.97 Found x010:x
% 83.72/83.97 Instantiate: x:=P:Prop
% 83.72/83.97 Found (fun (x02:(x->Q))=> x010) as proof of P
% 83.72/83.97 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found x010 as proof of ((iff P) Q)
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found x010 as proof of ((iff P) Q)
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found x010 as proof of ((iff P) Q)
% 83.72/83.97 Found x10:=(x1 x20):R
% 83.72/83.97 Found (x1 x20) as proof of R
% 83.72/83.97 Found (x1 x20) as proof of R
% 83.72/83.97 Found x030:=(x03 x040):x
% 83.72/83.97 Instantiate: x:=R:Prop
% 83.72/83.97 Found (x03 x040) as proof of R
% 83.72/83.97 Found (x03 x040) as proof of R
% 83.72/83.97 Found x010:=(x01 x000):((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 83.72/83.97 Found (x01 x000) as proof of ((iff P) Q)
% 85.09/85.36 Found x010:=(x01 x000):((iff P) Q)
% 85.09/85.36 Found (x01 x000) as proof of ((iff P) Q)
% 85.09/85.36 Found (x01 x000) as proof of ((iff P) Q)
% 85.09/85.36 Found x010:=(x01 x000):((iff P) Q)
% 85.09/85.36 Found x010 as proof of ((iff P) Q)
% 85.09/85.36 Found x010:=(x01 x000):((iff P) Q)
% 85.09/85.36 Found (x01 x000) as proof of ((iff P) Q)
% 85.09/85.36 Found (x01 x000) as proof of ((iff P) Q)
% 85.09/85.36 Found x010:=(x01 x000):((iff P) Q)
% 85.09/85.36 Found x010 as proof of ((iff P) Q)
% 85.09/85.36 Found x010:=(x01 x000):((iff P) Q)
% 85.09/85.36 Found x010 as proof of ((iff P) Q)
% 85.09/85.36 Found x030:=(x03 x040):x
% 85.09/85.36 Instantiate: x:=R:Prop
% 85.09/85.36 Found (x03 x040) as proof of R
% 85.09/85.36 Found (x03 x040) as proof of R
% 85.09/85.36 Found x1:(((iff P) Q)->R)
% 85.09/85.36 Instantiate: x:=(((iff P) Q)->R):Prop
% 85.09/85.36 Found x1 as proof of x
% 85.09/85.36 Found x030:=(x03 x040):x
% 85.09/85.36 Instantiate: x:=P:Prop
% 85.09/85.36 Found (x03 x040) as proof of P
% 85.09/85.36 Found (x03 x040) as proof of P
% 85.09/85.36 Found x030:=(x03 x040):x
% 85.09/85.36 Instantiate: x:=P:Prop
% 85.09/85.36 Found (x03 x040) as proof of P
% 85.09/85.36 Found (x03 x040) as proof of P
% 85.09/85.36 Found x030:=(x03 x040):x
% 85.09/85.36 Instantiate: x:=P:Prop
% 85.09/85.36 Found (x03 x040) as proof of P
% 85.09/85.36 Found (x03 x040) as proof of P
% 85.09/85.36 Found x030:=(x03 x041):x
% 85.09/85.36 Instantiate: x:=P:Prop
% 85.09/85.36 Found (x03 x041) as proof of P
% 85.09/85.36 Found (x03 x041) as proof of P
% 85.09/85.36 Found x030:=(x03 x040):x
% 85.09/85.36 Instantiate: x:=P:Prop
% 85.09/85.36 Found (x03 x040) as proof of P
% 85.09/85.36 Found (x03 x040) as proof of P
% 85.09/85.36 Found x000:=(x00 x010):R
% 85.09/85.36 Found (x00 x010) as proof of R
% 85.09/85.36 Found (x00 x010) as proof of R
% 85.09/85.36 Found x010:x
% 85.09/85.36 Instantiate: x:=R:Prop
% 85.09/85.36 Found x010 as proof of R
% 85.09/85.36 Found x010:=(x01 x002):((iff P) Q)
% 85.09/85.36 Found x010 as proof of ((iff P) Q)
% 85.09/85.36 Found x2:(R->((iff P) Q))
% 85.09/85.36 Instantiate: x:=(R->((iff P) Q)):Prop
% 85.09/85.36 Found x2 as proof of x
% 85.09/85.36 Found x010:x
% 85.09/85.36 Instantiate: x:=P:Prop
% 85.09/85.36 Found x010 as proof of P
% 85.09/85.36 Found x010:x
% 85.09/85.36 Instantiate: x:=R:Prop
% 85.09/85.36 Found x010 as proof of R
% 85.09/85.36 Found x010:=(x01 x020):x
% 85.09/85.36 Found (x01 x020) as proof of P
% 85.09/85.36 Found (x01 x020) as proof of P
% 85.09/85.36 Found (x01 x020) as proof of P
% 85.09/85.36 Found x030:=(x03 x040):x
% 85.09/85.36 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 85.09/85.36 Found (x03 x040) as proof of ((iff P) Q)
% 85.09/85.36 Found (x03 x040) as proof of ((iff P) Q)
% 85.09/85.36 Found x030:=(x03 x040):x
% 85.09/85.36 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 85.09/85.36 Found (x03 x040) as proof of ((iff P) Q)
% 85.09/85.36 Found (x03 x040) as proof of ((iff P) Q)
% 85.09/85.36 Found x20:=(x2 x10):((iff P) Q)
% 85.09/85.36 Found (x2 x10) as proof of ((iff P) Q)
% 85.09/85.36 Found (x2 x10) as proof of ((iff P) Q)
% 85.09/85.36 Found x20:((iff P) Q)
% 85.09/85.36 Instantiate: x:=((iff P) Q):Prop
% 85.09/85.36 Found x20 as proof of x
% 85.09/85.36 Found x010:=(x01 x000):((iff P) Q)
% 85.09/85.36 Found x010 as proof of ((iff P) Q)
% 85.09/85.36 Found x010:=(x01 x002):((iff P) Q)
% 85.09/85.36 Found x010 as proof of ((iff P) Q)
% 85.09/85.36 Found x010:x
% 85.09/85.36 Instantiate: x:=P:Prop
% 85.09/85.36 Found x010 as proof of P
% 85.09/85.36 Found x10:R
% 85.09/85.36 Instantiate: x:=R:Prop
% 85.09/85.36 Found x10 as proof of x
% 85.09/85.36 Found x20:((iff P) Q)
% 85.09/85.36 Instantiate: x:=((iff P) Q):Prop
% 85.09/85.36 Found x20 as proof of x
% 85.09/85.36 Found x010:x
% 85.09/85.36 Instantiate: x:=P:Prop
% 85.09/85.36 Found x010 as proof of P
% 85.09/85.36 Found x1:(((iff P) Q)->R)
% 85.09/85.36 Instantiate: x:=(((iff P) Q)->R):Prop
% 85.09/85.36 Found x1 as proof of x
% 85.09/85.36 Found x010:x
% 85.09/85.36 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 85.09/85.36 Found x010 as proof of ((iff P) Q)
% 85.09/85.36 Found x020:Q
% 85.09/85.36 Instantiate: x:=Q:Prop
% 85.09/85.36 Found x020 as proof of x
% 85.09/85.36 Found x000:=(x00 x010):R
% 85.09/85.36 Found (x00 x010) as proof of R
% 85.09/85.36 Found (x00 x010) as proof of R
% 85.09/85.36 Found x010:=(x01 x000):((iff P) Q)
% 85.09/85.36 Found (x01 x000) as proof of ((iff P) Q)
% 85.09/85.36 Found (x01 x000) as proof of ((iff P) Q)
% 85.09/85.36 Found x10:R
% 85.09/85.36 Instantiate: x:=R:Prop
% 85.09/85.36 Found x10 as proof of x
% 85.09/85.36 Found x020:Q
% 85.09/85.36 Instantiate: x:=Q:Prop
% 85.09/85.36 Found x020 as proof of x
% 85.09/85.36 Found x010:x
% 85.09/85.36 Instantiate: x:=P:Prop
% 85.09/85.36 Found x010 as proof of P
% 85.09/85.36 Found x2:(R->((iff P) Q))
% 85.09/85.36 Instantiate: x:=(R->((iff P) Q)):Prop
% 85.09/85.36 Found x2 as proof of x
% 85.09/85.36 Found x010:=(x01 x020):x
% 85.09/85.36 Found (x01 x020) as proof of R
% 85.09/85.36 Found (x01 x020) as proof of R
% 85.09/85.36 Found (x01 x020) as proof of R
% 85.09/85.36 Found x010:=(x01 x020):x
% 85.09/85.36 Found (x01 x020) as proof of P
% 85.09/85.36 Found (x01 x020) as proof of P
% 85.09/85.36 Found (x01 x020) as proof of P
% 85.09/85.36 Found x010:x
% 85.09/85.36 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 85.09/85.36 Found x010 as proof of ((iff P) Q)
% 85.09/85.36 Found x010:=(x01 x021):x
% 85.09/85.36 Found (x01 x021) as proof of P
% 85.09/85.36 Found (x01 x021) as proof of P
% 85.09/85.36 Found (x01 x021) as proof of P
% 85.09/85.36 Found x010:=(x01 x000):((iff P) Q)
% 85.09/85.36 Found x010 as proof of ((iff P) Q)
% 85.09/85.36 Found x010:=(x01 x020):x
% 85.09/85.36 Found (x01 x020) as proof of P
% 85.09/85.36 Found (x01 x020) as proof of P
% 85.09/85.36 Found (x01 x020) as proof of P
% 85.09/85.36 Found x010:=(x01 x000):((iff P) Q)
% 85.09/85.36 Found x010 as proof of ((iff P) Q)
% 85.09/85.36 Found iff_sym000:=(iff_sym00 x00):((iff P) Q)
% 86.38/86.63 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 86.38/86.63 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 86.38/86.63 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 86.38/86.63 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 86.38/86.63 Found x010:=(x01 x000):((iff P) Q)
% 86.38/86.63 Found x010 as proof of ((iff P) Q)
% 86.38/86.63 Found x010:=(x01 x000):((iff P) Q)
% 86.38/86.63 Found x010 as proof of ((iff P) Q)
% 86.38/86.63 Found x010:=(x01 x020):x
% 86.38/86.63 Found (x01 x020) as proof of ((iff P) Q)
% 86.38/86.63 Found (x01 x020) as proof of ((iff P) Q)
% 86.38/86.63 Found (x01 x020) as proof of ((iff P) Q)
% 86.38/86.63 Found x010:=(x01 x021):x
% 86.38/86.63 Found (x01 x021) as proof of P
% 86.38/86.63 Found (x01 x021) as proof of P
% 86.38/86.63 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 86.38/86.63 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 86.38/86.63 Found x010:=(x01 x020):x
% 86.38/86.63 Found (x01 x020) as proof of P
% 86.38/86.63 Found (x01 x020) as proof of P
% 86.38/86.63 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 86.38/86.63 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 86.38/86.63 Found x010:=(x01 x020):x
% 86.38/86.63 Found (x01 x020) as proof of P
% 86.38/86.63 Found (x01 x020) as proof of P
% 86.38/86.63 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 86.38/86.63 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 86.38/86.63 Found x000:=(x00 x010):R
% 86.38/86.63 Found (x00 x010) as proof of R
% 86.38/86.63 Found (x00 x010) as proof of R
% 86.38/86.63 Found x010:=(x01 x000):((iff P) Q)
% 86.38/86.63 Found x010 as proof of ((iff P) Q)
% 86.38/86.63 Found x030:=(x03 x040):x
% 86.38/86.63 Instantiate: x:=R:Prop
% 86.38/86.63 Found (x03 x040) as proof of R
% 86.38/86.63 Found (x03 x040) as proof of R
% 86.38/86.63 Found x010:=(x01 x000):((iff P) Q)
% 86.38/86.63 Found x010 as proof of ((iff P) Q)
% 86.38/86.63 Found x010:=(x01 x000):((iff P) Q)
% 86.38/86.63 Found x010 as proof of ((iff P) Q)
% 86.38/86.63 Found x010:=(x01 x000):((iff P) Q)
% 86.38/86.63 Found (x01 x000) as proof of ((iff P) Q)
% 86.38/86.63 Found (x01 x000) as proof of ((iff P) Q)
% 86.38/86.63 Found x010:=(x01 x000):((iff P) Q)
% 86.38/86.63 Found x010 as proof of ((iff P) Q)
% 86.38/86.63 Found x010:=(x01 x000):((iff P) Q)
% 86.38/86.63 Found (x01 x000) as proof of ((iff P) Q)
% 86.38/86.63 Found (x01 x000) as proof of ((iff P) Q)
% 86.38/86.63 Found x030:=(x03 x040):x
% 86.38/86.63 Instantiate: x:=R:Prop
% 86.38/86.63 Found (x03 x040) as proof of R
% 86.38/86.63 Found (x03 x040) as proof of R
% 86.38/86.63 Found x030:=(x03 x040):x
% 86.38/86.63 Instantiate: x:=P:Prop
% 86.38/86.63 Found (x03 x040) as proof of P
% 86.38/86.63 Found (x03 x040) as proof of P
% 86.38/86.63 Found x010:=(x01 x000):((iff P) Q)
% 86.38/86.63 Found x010 as proof of ((iff P) Q)
% 86.38/86.63 Found x010:=(x01 x000):((iff P) Q)
% 86.38/86.63 Found x010 as proof of ((iff P) Q)
% 86.38/86.63 Found x010:=(x01 x000):((iff P) Q)
% 86.38/86.63 Found x010 as proof of ((iff P) Q)
% 86.38/86.63 Found x000:=(x00 x010):R
% 86.38/86.63 Found (x00 x010) as proof of R
% 86.38/86.63 Found (x00 x010) as proof of R
% 86.38/86.63 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 86.38/86.63 Found (iff_refl Q) as proof of ((iff Q) x)
% 86.38/86.63 Found (iff_refl Q) as proof of ((iff Q) x)
% 86.38/86.63 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 86.38/86.63 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 86.38/86.63 Found x030:x
% 86.38/86.63 Instantiate: x:=P:Prop
% 86.38/86.63 Found (fun (x04:(x->Q))=> x030) as proof of P
% 86.38/86.63 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 86.38/86.63 Found x030:=(x03 x040):x
% 86.38/86.63 Instantiate: x:=P:Prop
% 86.38/86.63 Found (x03 x040) as proof of P
% 86.38/86.63 Found (x03 x040) as proof of P
% 86.38/86.63 Found x010:=(x01 x000):((iff P) Q)
% 86.38/86.63 Found (x01 x000) as proof of ((iff P) Q)
% 86.38/86.63 Found (x01 x000) as proof of ((iff P) Q)
% 86.38/86.63 Found x030:=(x03 x040):x
% 86.38/86.63 Instantiate: x:=P:Prop
% 86.38/86.63 Found (x03 x040) as proof of P
% 86.38/86.63 Found (x03 x040) as proof of P
% 86.38/86.63 Found x030:=(x03 x041):x
% 86.38/86.63 Instantiate: x:=P:Prop
% 86.38/86.63 Found (x03 x041) as proof of P
% 86.38/86.63 Found (x03 x041) as proof of P
% 86.38/86.63 Found x030:=(x03 x040):x
% 86.38/86.63 Instantiate: x:=P:Prop
% 86.38/86.63 Found (x03 x040) as proof of P
% 86.38/86.63 Found (x03 x040) as proof of P
% 86.38/86.63 Found x010:=(x01 x000):((iff P) Q)
% 86.38/86.63 Found (x01 x000) as proof of ((iff P) Q)
% 86.38/86.63 Found (x01 x000) as proof of ((iff P) Q)
% 86.38/86.63 Found x020:Q
% 86.38/86.63 Found x020 as proof of x
% 86.38/86.63 Found x030:=(x03 x040):x
% 86.38/86.63 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 86.38/86.63 Found (x03 x040) as proof of ((iff P) Q)
% 86.38/86.63 Found (x03 x040) as proof of ((iff P) Q)
% 86.38/86.63 Found x000:=(x00 x010):R
% 86.38/86.63 Found (x00 x010) as proof of R
% 86.38/86.63 Found (x00 x010) as proof of R
% 86.38/86.63 Found x030:=(x03 x040):x
% 86.38/86.63 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 86.38/86.63 Found (x03 x040) as proof of ((iff P) Q)
% 86.38/86.63 Found (x03 x040) as proof of ((iff P) Q)
% 86.38/86.63 Found x020:Q
% 86.38/86.63 Found x020 as proof of Q
% 86.38/86.63 Found iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 86.38/86.63 Instantiate: x:=(forall (P:Prop), ((iff P) P)):Prop
% 88.34/88.57 Found iff_refl as proof of x
% 88.34/88.57 Found x20:=(x2 x10):((iff P) Q)
% 88.34/88.57 Found (x2 x10) as proof of ((iff P) Q)
% 88.34/88.57 Found (x2 x10) as proof of ((iff P) Q)
% 88.34/88.57 Found x010:=(x01 x000):((iff P) Q)
% 88.34/88.57 Found (x01 x000) as proof of ((iff P) Q)
% 88.34/88.57 Found (x01 x000) as proof of ((iff P) Q)
% 88.34/88.57 Found x030:x
% 88.34/88.57 Instantiate: x:=P:Prop
% 88.34/88.57 Found x030 as proof of P
% 88.34/88.57 Found x030:x
% 88.34/88.57 Instantiate: x:=P:Prop
% 88.34/88.57 Found (fun (x04:(x->Q))=> x030) as proof of P
% 88.34/88.57 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 88.34/88.57 Found x000:=(x00 x010):R
% 88.34/88.57 Found (x00 x010) as proof of R
% 88.34/88.57 Found (x00 x010) as proof of R
% 88.34/88.57 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 88.34/88.57 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 88.34/88.57 Found eq_sym as proof of x
% 88.34/88.57 Found (x04 eq_sym) as proof of Q
% 88.34/88.57 Found (x04 eq_sym) as proof of Q
% 88.34/88.57 Found x010:=(x01 x000):((iff P) Q)
% 88.34/88.57 Found (x01 x000) as proof of ((iff P) Q)
% 88.34/88.57 Found (x01 x000) as proof of ((iff P) Q)
% 88.34/88.57 Found x10:R
% 88.34/88.57 Found (fun (x02:(x->Q))=> x10) as proof of R
% 88.34/88.57 Found (fun (x01:(Q->x)) (x02:(x->Q))=> x10) as proof of ((x->Q)->R)
% 88.34/88.57 Found (fun (x01:(Q->x)) (x02:(x->Q))=> x10) as proof of ((Q->x)->((x->Q)->R))
% 88.34/88.57 Found x000:=(x00 x012):R
% 88.34/88.57 Found (x00 x012) as proof of R
% 88.34/88.57 Found (x00 x012) as proof of R
% 88.34/88.57 Found x010:=(x01 x000):((iff P) Q)
% 88.34/88.57 Found x010 as proof of ((iff P) Q)
% 88.34/88.57 Found x000:=(x00 x010):R
% 88.34/88.57 Found (x00 x010) as proof of R
% 88.34/88.57 Found (x00 x010) as proof of R
% 88.34/88.57 Found x010:=(x01 x000):((iff P) Q)
% 88.34/88.57 Found x010 as proof of ((iff P) Q)
% 88.34/88.57 Found x010:=(x01 x000):((iff P) Q)
% 88.34/88.57 Found x010 as proof of ((iff P) Q)
% 88.34/88.57 Found x010:=(x01 x000):((iff P) Q)
% 88.34/88.57 Found (x01 x000) as proof of ((iff P) Q)
% 88.34/88.57 Found (x01 x000) as proof of ((iff P) Q)
% 88.34/88.57 Found x010:=(x01 x000):((iff P) Q)
% 88.34/88.57 Found (x01 x000) as proof of ((iff P) Q)
% 88.34/88.57 Found (x01 x000) as proof of ((iff P) Q)
% 88.34/88.57 Found x020:Q
% 88.34/88.57 Found x020 as proof of Q
% 88.34/88.57 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 88.34/88.57 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 88.34/88.57 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 88.34/88.57 Found x020:Q
% 88.34/88.57 Found x020 as proof of Q
% 88.34/88.58 Found (x01 x020) as proof of ((iff P) Q)
% 88.34/88.58 Found (x01 x020) as proof of ((iff P) Q)
% 88.34/88.58 Found (x01 x020) as proof of ((iff P) Q)
% 88.34/88.58 Found x000:=(x00 x010):R
% 88.34/88.58 Found (x00 x010) as proof of R
% 88.34/88.58 Found (x00 x010) as proof of R
% 88.34/88.58 Found x020:Q
% 88.34/88.58 Found x020 as proof of Q
% 88.34/88.58 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 88.34/88.58 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 88.34/88.58 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 88.34/88.58 Found x010:=(x01 x001):((iff P) Q)
% 88.34/88.58 Found x010 as proof of ((iff P) Q)
% 88.34/88.58 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 88.34/88.58 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 88.34/88.58 Found eq_sym as proof of x
% 88.34/88.58 Found (x04 eq_sym) as proof of Q
% 88.34/88.58 Found (x04 eq_sym) as proof of Q
% 88.34/88.58 Found x030:x
% 88.34/88.58 Instantiate: x:=P:Prop
% 88.34/88.58 Found (fun (x04:(x->Q))=> x030) as proof of P
% 88.34/88.58 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 88.34/88.58 Found x010:=(x01 x001):((iff P) Q)
% 88.34/88.58 Found x010 as proof of ((iff P) Q)
% 88.34/88.58 Found x010:=(x01 x003):((iff P) Q)
% 88.34/88.58 Found (x01 x003) as proof of ((iff P) Q)
% 88.34/88.58 Found (x01 x003) as proof of ((iff P) Q)
% 88.34/88.58 Found x000:=(x00 x010):R
% 88.34/88.58 Found (x00 x010) as proof of R
% 88.34/88.58 Found (x00 x010) as proof of R
% 88.34/88.58 Found x010:=(x01 x000):((iff P) Q)
% 88.34/88.58 Found (x01 x000) as proof of ((iff P) Q)
% 88.34/88.58 Found (x01 x000) as proof of ((iff P) Q)
% 88.34/88.58 Found x020:Q
% 88.34/88.58 Found x020 as proof of x
% 88.34/88.58 Found x030:=(x03 x040):x
% 88.34/88.58 Instantiate: x:=P:Prop
% 88.34/88.58 Found (x03 x040) as proof of P
% 88.34/88.58 Found (x03 x040) as proof of P
% 88.34/88.58 Found x010:x
% 88.34/88.58 Found x010 as proof of x
% 88.34/88.58 Found x020:Q
% 88.34/88.58 Found x020 as proof of Q
% 88.34/88.58 Found x010:x
% 88.34/88.58 Found x010 as proof of Q
% 88.34/88.58 Found x010:=(x01 x000):((iff P) Q)
% 88.34/88.58 Found (x01 x000) as proof of ((iff P) Q)
% 88.34/88.58 Found (x01 x000) as proof of ((iff P) Q)
% 88.34/88.58 Found x000:=(x00 x010):R
% 88.34/88.58 Found (x00 x010) as proof of R
% 88.34/88.58 Found (x00 x010) as proof of R
% 88.34/88.58 Found x000:=(x00 x013):R
% 88.34/88.58 Found (x00 x013) as proof of R
% 88.34/88.58 Found (x00 x013) as proof of R
% 88.34/88.58 Found x020:Q
% 88.34/88.58 Found x020 as proof of Q
% 88.34/88.58 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 88.34/88.58 Found (iff_refl Q) as proof of ((iff Q) x)
% 89.50/89.80 Found (iff_refl Q) as proof of ((iff Q) x)
% 89.50/89.80 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 89.50/89.80 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 89.50/89.80 Found x010:x
% 89.50/89.80 Found x010 as proof of x
% 89.50/89.80 Found x010:x
% 89.50/89.80 Found x010 as proof of Q
% 89.50/89.80 Found x020:Q
% 89.50/89.80 Found x020 as proof of x
% 89.50/89.80 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 89.50/89.80 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 89.50/89.80 Found eq_sym as proof of x
% 89.50/89.80 Found (x04 eq_sym) as proof of Q
% 89.50/89.80 Found (x04 eq_sym) as proof of Q
% 89.50/89.80 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 89.50/89.80 Found (iff_refl Q) as proof of ((iff Q) x)
% 89.50/89.80 Found (iff_refl Q) as proof of ((iff Q) x)
% 89.50/89.80 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 89.50/89.80 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 89.50/89.80 Found x010:=(x01 x000):((iff P) Q)
% 89.50/89.80 Found (x01 x000) as proof of ((iff P) Q)
% 89.50/89.80 Found (x01 x000) as proof of ((iff P) Q)
% 89.50/89.80 Found x011:x
% 89.50/89.80 Found x011 as proof of x
% 89.50/89.80 Found x011:x
% 89.50/89.80 Found x011 as proof of Q
% 89.50/89.80 Found x010:=(x01 x000):((iff P) Q)
% 89.50/89.80 Found (x01 x000) as proof of ((iff P) Q)
% 89.50/89.80 Found (x01 x000) as proof of ((iff P) Q)
% 89.50/89.80 Found x000:=(x00 x010):R
% 89.50/89.80 Found (x00 x010) as proof of R
% 89.50/89.80 Found (x00 x010) as proof of R
% 89.50/89.80 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 89.50/89.80 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 89.50/89.80 Found ex_intro0 as proof of x
% 89.50/89.80 Found x020:Q
% 89.50/89.80 Found x020 as proof of x
% 89.50/89.80 Found x011:x
% 89.50/89.80 Found x011 as proof of Q
% 89.50/89.80 Found x020:Q
% 89.50/89.80 Found x020 as proof of Q
% 89.50/89.80 Found x030:x
% 89.50/89.80 Instantiate: x:=R:Prop
% 89.50/89.80 Found x030 as proof of R
% 89.50/89.80 Found x011:x
% 89.50/89.80 Found x011 as proof of x
% 89.50/89.80 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 89.50/89.80 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 89.50/89.80 Found eq_sym as proof of x
% 89.50/89.80 Found (x04 eq_sym) as proof of Q
% 89.50/89.80 Found (x04 eq_sym) as proof of Q
% 89.50/89.80 Found x020:Q
% 89.50/89.80 Found x020 as proof of Q
% 89.50/89.80 Found (x01 x020) as proof of R
% 89.50/89.80 Found (x01 x020) as proof of R
% 89.50/89.80 Found (x01 x020) as proof of R
% 89.50/89.80 Found x010:=(x01 x000):((iff P) Q)
% 89.50/89.80 Found x010 as proof of ((iff P) Q)
% 89.50/89.80 Found x020:Q
% 89.50/89.80 Found x020 as proof of Q
% 89.50/89.80 Found (x01 x020) as proof of R
% 89.50/89.80 Found (x01 x020) as proof of R
% 89.50/89.80 Found (x01 x020) as proof of R
% 89.50/89.80 Found x020:Q
% 89.50/89.80 Found x020 as proof of Q
% 89.50/89.80 Found (x01 x020) as proof of R
% 89.50/89.80 Found (x01 x020) as proof of R
% 89.50/89.80 Found (x01 x020) as proof of R
% 89.50/89.80 Found x020:Q
% 89.50/89.80 Found x020 as proof of Q
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found x020:Q
% 89.50/89.80 Found x020 as proof of Q
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found x010:=(x01 x000):((iff P) Q)
% 89.50/89.80 Found x010 as proof of ((iff P) Q)
% 89.50/89.80 Found x010:=(x01 x000):((iff P) Q)
% 89.50/89.80 Found (x01 x000) as proof of ((iff P) Q)
% 89.50/89.80 Found (x01 x000) as proof of ((iff P) Q)
% 89.50/89.80 Found x021:Q
% 89.50/89.80 Found x021 as proof of Q
% 89.50/89.80 Found (x01 x021) as proof of P
% 89.50/89.80 Found (x01 x021) as proof of P
% 89.50/89.80 Found (x01 x021) as proof of P
% 89.50/89.80 Found x010:=(x01 x000):((iff P) Q)
% 89.50/89.80 Found x010 as proof of ((iff P) Q)
% 89.50/89.80 Found x020:Q
% 89.50/89.80 Found x020 as proof of Q
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found x020:Q
% 89.50/89.80 Found x020 as proof of Q
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found x020:Q
% 89.50/89.80 Found x020 as proof of Q
% 89.50/89.80 Found (x01 x020) as proof of ((iff P) Q)
% 89.50/89.80 Found (x01 x020) as proof of ((iff P) Q)
% 89.50/89.80 Found (x01 x020) as proof of ((iff P) Q)
% 89.50/89.80 Found x020:Q
% 89.50/89.80 Found x020 as proof of Q
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found x010:=(x01 x000):((iff P) Q)
% 89.50/89.80 Found x010 as proof of ((iff P) Q)
% 89.50/89.80 Found x000:=(x00 x010):R
% 89.50/89.80 Found (x00 x010) as proof of R
% 89.50/89.80 Found (x00 x010) as proof of R
% 89.50/89.80 Found x010:=(x01 x000):((iff P) Q)
% 89.50/89.80 Found x010 as proof of ((iff P) Q)
% 89.50/89.80 Found x020:Q
% 89.50/89.80 Found x020 as proof of Q
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found (x01 x020) as proof of P
% 89.50/89.80 Found x030:=(x03 x040):x
% 90.75/91.04 Found (x03 x040) as proof of P
% 90.75/91.04 Found (x03 x040) as proof of P
% 90.75/91.04 Found (x03 x040) as proof of P
% 90.75/91.04 Found x000:=(x00 x010):R
% 90.75/91.04 Found (x00 x010) as proof of R
% 90.75/91.04 Found (x00 x010) as proof of R
% 90.75/91.04 Found x020:Q
% 90.75/91.04 Found x020 as proof of Q
% 90.75/91.04 Found (x01 x020) as proof of R
% 90.75/91.04 Found (x01 x020) as proof of R
% 90.75/91.04 Found (x01 x020) as proof of R
% 90.75/91.04 Found x010:=(x01 x000):((iff P) Q)
% 90.75/91.04 Found x010 as proof of ((iff P) Q)
% 90.75/91.04 Found x020:Q
% 90.75/91.04 Found x020 as proof of Q
% 90.75/91.04 Found (x01 x020) as proof of ((iff P) Q)
% 90.75/91.04 Found (x01 x020) as proof of ((iff P) Q)
% 90.75/91.04 Found (x01 x020) as proof of ((iff P) Q)
% 90.75/91.04 Found x010:=(x01 x000):((iff P) Q)
% 90.75/91.04 Found (x01 x000) as proof of ((iff P) Q)
% 90.75/91.04 Found (x01 x000) as proof of ((iff P) Q)
% 90.75/91.04 Found x030:=(x03 x040):x
% 90.75/91.04 Instantiate: x:=P:Prop
% 90.75/91.04 Found (x03 x040) as proof of P
% 90.75/91.04 Found (x03 x040) as proof of P
% 90.75/91.04 Found x000:=(x00 x010):R
% 90.75/91.04 Found (x00 x010) as proof of R
% 90.75/91.04 Found (x00 x010) as proof of R
% 90.75/91.04 Found x020:Q
% 90.75/91.04 Found x020 as proof of Q
% 90.75/91.04 Found (x01 x020) as proof of P
% 90.75/91.04 Found (x01 x020) as proof of P
% 90.75/91.04 Found (x01 x020) as proof of P
% 90.75/91.04 Found x030:=(x03 x020):P
% 90.75/91.04 Found (x03 x020) as proof of P
% 90.75/91.04 Found (x03 x020) as proof of P
% 90.75/91.04 Found x020:=(x02 x030):Q
% 90.75/91.04 Found (x02 x030) as proof of Q
% 90.75/91.04 Found (x02 x030) as proof of Q
% 90.75/91.04 Found x010:=(x01 x000):((iff P) Q)
% 90.75/91.04 Found x010 as proof of ((iff P) Q)
% 90.75/91.04 Found x021:Q
% 90.75/91.04 Found x021 as proof of Q
% 90.75/91.04 Found (x01 x021) as proof of P
% 90.75/91.04 Found (x01 x021) as proof of P
% 90.75/91.04 Found (x01 x021) as proof of P
% 90.75/91.04 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 90.75/91.04 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 90.75/91.04 Found eq_sym as proof of x
% 90.75/91.04 Found (x04 eq_sym) as proof of Q
% 90.75/91.04 Found (x04 eq_sym) as proof of Q
% 90.75/91.04 Found x020:Q
% 90.75/91.04 Found x020 as proof of Q
% 90.75/91.04 Found (x01 x020) as proof of ((iff P) Q)
% 90.75/91.04 Found (x01 x020) as proof of ((iff P) Q)
% 90.75/91.04 Found (x01 x020) as proof of ((iff P) Q)
% 90.75/91.04 Found x010:=(x01 x000):((iff P) Q)
% 90.75/91.04 Found x010 as proof of ((iff P) Q)
% 90.75/91.04 Found x020:Q
% 90.75/91.04 Found x020 as proof of Q
% 90.75/91.04 Found (x01 x020) as proof of P
% 90.75/91.04 Found (x01 x020) as proof of P
% 90.75/91.04 Found (x01 x020) as proof of P
% 90.75/91.04 Found x010:=(x01 x000):((iff P) Q)
% 90.75/91.04 Found x010 as proof of ((iff P) Q)
% 90.75/91.04 Found x030:=(x03 x040):x
% 90.75/91.04 Instantiate: x:=P:Prop
% 90.75/91.04 Found (x03 x040) as proof of P
% 90.75/91.04 Found (x03 x040) as proof of P
% 90.75/91.04 Found x020:=(x02 x030):Q
% 90.75/91.04 Found (x02 x030) as proof of Q
% 90.75/91.04 Found (x02 x030) as proof of Q
% 90.75/91.04 Found x010:x
% 90.75/91.04 Instantiate: x:=P:Prop
% 90.75/91.04 Found x010 as proof of P
% 90.75/91.04 Found x030:=(x03 x020):P
% 90.75/91.04 Found (x03 x020) as proof of P
% 90.75/91.04 Found (x03 x020) as proof of P
% 90.75/91.04 Found x020:Q
% 90.75/91.04 Found x020 as proof of Q
% 90.75/91.04 Found (x01 x020) as proof of ((iff P) Q)
% 90.75/91.04 Found (x01 x020) as proof of ((iff P) Q)
% 90.75/91.04 Found (x01 x020) as proof of ((iff P) Q)
% 90.75/91.04 Found x010:=(x01 x000):((iff P) Q)
% 90.75/91.04 Found x010 as proof of ((iff P) Q)
% 90.75/91.04 Found x010:=(x01 x000):((iff P) Q)
% 90.75/91.04 Found x010 as proof of ((iff P) Q)
% 90.75/91.04 Found x20:((iff P) Q)
% 90.75/91.04 Instantiate: x:=((iff P) Q):Prop
% 90.75/91.04 Found x20 as proof of x
% 90.75/91.04 Found x010:=(x01 x000):((iff P) Q)
% 90.75/91.04 Found (x01 x000) as proof of ((iff P) Q)
% 90.75/91.04 Found (x01 x000) as proof of ((iff P) Q)
% 90.75/91.04 Found x20:=(x2 x10):((iff P) Q)
% 90.75/91.04 Found x20 as proof of ((iff P) Q)
% 90.75/91.04 Found x010:=(x01 x000):((iff P) Q)
% 90.75/91.04 Found x010 as proof of ((iff P) Q)
% 90.75/91.04 Found x20:=(x2 x10):((iff P) Q)
% 90.75/91.04 Found (x2 x10) as proof of ((iff P) Q)
% 90.75/91.04 Found (x2 x10) as proof of ((iff P) Q)
% 90.75/91.04 Found x010:=(x01 x000):((iff P) Q)
% 90.75/91.04 Found (x01 x000) as proof of ((iff P) Q)
% 90.75/91.04 Found (x01 x000) as proof of ((iff P) Q)
% 90.75/91.04 Found x10:R
% 90.75/91.04 Instantiate: x:=R:Prop
% 90.75/91.04 Found x10 as proof of x
% 90.75/91.04 Found x010:x
% 90.75/91.04 Instantiate: x:=P:Prop
% 90.75/91.04 Found x010 as proof of P
% 90.75/91.04 Found x020:=(x02 x030):Q
% 90.75/91.04 Found (x02 x030) as proof of Q
% 90.75/91.04 Found (x02 x030) as proof of Q
% 90.75/91.04 Found x030:=(x03 x020):P
% 90.75/91.04 Found (x03 x020) as proof of P
% 90.75/91.04 Found (x03 x020) as proof of P
% 90.75/91.04 Found x010:=(x01 x000):((iff P) Q)
% 90.75/91.04 Found x010 as proof of ((iff P) Q)
% 90.75/91.04 Found x010:=(x01 x000):((iff P) Q)
% 90.75/91.04 Found (x01 x000) as proof of ((iff P) Q)
% 90.75/91.04 Found (x01 x000) as proof of ((iff P) Q)
% 90.75/91.04 Found x000:=(x00 x012):R
% 90.75/91.04 Found (x00 x012) as proof of R
% 90.75/91.04 Found (x00 x012) as proof of R
% 90.75/91.04 Found x010:=(x01 x000):((iff P) Q)
% 90.75/91.04 Found x010 as proof of ((iff P) Q)
% 90.75/91.04 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 92.40/92.66 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 92.40/92.66 Found eq_sym as proof of x
% 92.40/92.66 Found (x04 eq_sym) as proof of Q
% 92.40/92.66 Found (x04 eq_sym) as proof of Q
% 92.40/92.66 Found x010:=(x01 x000):((iff P) Q)
% 92.40/92.66 Found x010 as proof of ((iff P) Q)
% 92.40/92.66 Found x030:x
% 92.40/92.66 Instantiate: x:=R:Prop
% 92.40/92.66 Found x030 as proof of R
% 92.40/92.66 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 92.40/92.66 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 92.40/92.66 Found ex_intro0 as proof of x
% 92.40/92.66 Found x2:(R->((iff P) Q))
% 92.40/92.66 Instantiate: x:=(R->((iff P) Q)):Prop
% 92.40/92.66 Found x2 as proof of x
% 92.40/92.66 Found x010:x
% 92.40/92.66 Instantiate: x:=P:Prop
% 92.40/92.66 Found x010 as proof of P
% 92.40/92.66 Found x2:(R->((iff P) Q))
% 92.40/92.66 Instantiate: x:=(R->((iff P) Q)):Prop
% 92.40/92.66 Found x2 as proof of x
% 92.40/92.66 Found x010:=(x01 x021):x
% 92.40/92.66 Found (x01 x021) as proof of P
% 92.40/92.66 Found (x01 x021) as proof of P
% 92.40/92.66 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 92.40/92.66 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 92.40/92.66 Found x010:=(x01 x000):((iff P) Q)
% 92.40/92.66 Found x010 as proof of ((iff P) Q)
% 92.40/92.66 Found x010:=(x01 x020):x
% 92.40/92.66 Found (x01 x020) as proof of P
% 92.40/92.66 Found (x01 x020) as proof of P
% 92.40/92.66 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 92.40/92.66 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 92.40/92.66 Found x030:=(x03 x040):x
% 92.40/92.66 Found (x03 x040) as proof of P
% 92.40/92.66 Found (x03 x040) as proof of P
% 92.40/92.66 Found (x03 x040) as proof of P
% 92.40/92.66 Found x20:=(x2 x10):((iff P) Q)
% 92.40/92.66 Found (x2 x10) as proof of ((iff P) Q)
% 92.40/92.66 Found (x2 x10) as proof of ((iff P) Q)
% 92.40/92.66 Found x010:=(x01 x000):((iff P) Q)
% 92.40/92.66 Found (x01 x000) as proof of ((iff P) Q)
% 92.40/92.66 Found (x01 x000) as proof of ((iff P) Q)
% 92.40/92.66 Found x010:=(x01 x001):((iff P) Q)
% 92.40/92.66 Found x010 as proof of ((iff P) Q)
% 92.40/92.66 Found x010:=(x01 x000):((iff P) Q)
% 92.40/92.66 Found x010 as proof of ((iff P) Q)
% 92.40/92.66 Found x010:=(x01 x021):x
% 92.40/92.66 Instantiate: x:=((((iff P) Q)->R)->((R->((iff P) Q))->P)):Prop
% 92.40/92.66 Found (x01 x021) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 92.40/92.66 Found (x01 x021) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 92.40/92.66 Found x010:=(x01 x000):((iff P) Q)
% 92.40/92.66 Found x010 as proof of ((iff P) Q)
% 92.40/92.66 Found x030:=(x03 x040):x
% 92.40/92.66 Found (x03 x040) as proof of P
% 92.40/92.66 Found (x03 x040) as proof of P
% 92.40/92.66 Found (x03 x040) as proof of P
% 92.40/92.66 Found x030:=(x03 x040):x
% 92.40/92.66 Instantiate: x:=P:Prop
% 92.40/92.66 Found (x03 x040) as proof of P
% 92.40/92.66 Found (x03 x040) as proof of P
% 92.40/92.66 Found x000:=(x00 x010):R
% 92.40/92.66 Found (x00 x010) as proof of R
% 92.40/92.66 Found (x00 x010) as proof of R
% 92.40/92.66 Found x000:=(x00 x010):R
% 92.40/92.66 Found (x00 x010) as proof of R
% 92.40/92.66 Found (x00 x010) as proof of R
% 92.40/92.66 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 92.40/92.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 92.40/92.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 92.40/92.66 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 92.40/92.66 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 92.40/92.66 Found x010:=(x01 x000):((iff P) Q)
% 92.40/92.66 Found x010 as proof of ((iff P) Q)
% 92.40/92.66 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 92.40/92.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 92.40/92.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 92.40/92.66 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 92.40/92.66 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 92.40/92.66 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 92.40/92.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 92.40/92.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 92.40/92.66 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 92.40/92.66 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 92.40/92.66 Found x030:=(x03 x040):x
% 92.40/92.66 Found (x03 x040) as proof of P
% 92.40/92.66 Found (x03 x040) as proof of P
% 92.40/92.66 Found (x03 x040) as proof of P
% 92.40/92.66 Found x000:=(x00 x010):R
% 92.40/92.66 Found (x00 x010) as proof of R
% 92.40/92.66 Found (x00 x010) as proof of R
% 92.40/92.66 Found x030:=(x03 x040):x
% 92.40/92.66 Instantiate: x:=P:Prop
% 92.40/92.66 Found (x03 x040) as proof of P
% 92.40/92.66 Found (x03 x040) as proof of P
% 92.40/92.66 Found x010:=(x01 x002):((iff P) Q)
% 92.40/92.66 Found x010 as proof of ((iff P) Q)
% 92.40/92.66 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 92.40/92.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 92.40/92.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 92.40/92.66 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 92.40/92.66 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 92.40/92.66 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 92.40/92.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 92.40/92.66 Found (iff_refl Q) as proof of ((iff Q) x)
% 93.20/93.47 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 93.20/93.47 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 93.20/93.47 Found x000:=(x00 x010):R
% 93.20/93.47 Found (x00 x010) as proof of R
% 93.20/93.47 Found (x00 x010) as proof of R
% 93.20/93.47 Found x030:x
% 93.20/93.47 Instantiate: x:=P:Prop
% 93.20/93.47 Found (fun (x04:(x->Q))=> x030) as proof of P
% 93.20/93.47 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 93.20/93.47 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 93.20/93.47 Found (iff_refl Q) as proof of ((iff Q) x)
% 93.20/93.47 Found (iff_refl Q) as proof of ((iff Q) x)
% 93.20/93.47 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 93.20/93.47 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 93.20/93.47 Found x010:=(x01 x020):x
% 93.20/93.47 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 93.20/93.47 Found (x01 x020) as proof of ((iff P) Q)
% 93.20/93.47 Found (x01 x020) as proof of ((iff P) Q)
% 93.20/93.47 Found (x1 (x01 x020)) as proof of R
% 93.20/93.47 Found (x1 (x01 x020)) as proof of R
% 93.20/93.47 Found x010:=(x01 x000):((iff P) Q)
% 93.20/93.47 Found (x01 x000) as proof of ((iff P) Q)
% 93.20/93.47 Found (x01 x000) as proof of ((iff P) Q)
% 93.20/93.47 Found x020:=(x02 x10):Q
% 93.20/93.47 Found (x02 x10) as proof of Q
% 93.20/93.47 Found (x02 x10) as proof of Q
% 93.20/93.47 Found x010:=(x01 x020):x
% 93.20/93.47 Instantiate: x:=R:Prop
% 93.20/93.47 Found (x01 x020) as proof of R
% 93.20/93.47 Found (x01 x020) as proof of R
% 93.20/93.47 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 93.20/93.47 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 93.20/93.47 Found x010:=(x01 x000):((iff P) Q)
% 93.20/93.47 Found x010 as proof of ((iff P) Q)
% 93.20/93.47 Found x000:=(x00 x010):R
% 93.20/93.47 Found (x00 x010) as proof of R
% 93.20/93.47 Found (x00 x010) as proof of R
% 93.20/93.47 Found x010:=(x01 x000):((iff P) Q)
% 93.20/93.47 Found (x01 x000) as proof of ((iff P) Q)
% 93.20/93.47 Found (x01 x000) as proof of ((iff P) Q)
% 93.20/93.47 Found x010:=(x01 x000):((iff P) Q)
% 93.20/93.47 Found x010 as proof of ((iff P) Q)
% 93.20/93.47 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 93.20/93.47 Found (iff_refl Q) as proof of ((iff Q) x)
% 93.20/93.47 Found (iff_refl Q) as proof of ((iff Q) x)
% 93.20/93.47 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 93.20/93.47 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 93.20/93.47 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 93.20/93.47 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 93.20/93.47 Found or_ind as proof of x
% 93.20/93.47 Found (x04 or_ind) as proof of Q
% 93.20/93.47 Found (x04 or_ind) as proof of Q
% 93.20/93.47 Found x010:=(x01 x000):((iff P) Q)
% 93.20/93.47 Found x010 as proof of ((iff P) Q)
% 93.20/93.47 Found x010:=(x01 x020):x
% 93.20/93.47 Instantiate: x:=R:Prop
% 93.20/93.47 Found (x01 x020) as proof of R
% 93.20/93.47 Found (x01 x020) as proof of R
% 93.20/93.47 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 93.20/93.47 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 93.20/93.47 Found x010:=(x01 x020):x
% 93.20/93.47 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 93.20/93.47 Found (x01 x020) as proof of ((iff P) Q)
% 93.20/93.47 Found (x01 x020) as proof of ((iff P) Q)
% 93.20/93.47 Found (x1 (x01 x020)) as proof of R
% 93.20/93.47 Found (x1 (x01 x020)) as proof of R
% 93.20/93.47 Found x010:=(x01 x000):((iff P) Q)
% 93.20/93.47 Found (x01 x000) as proof of ((iff P) Q)
% 93.20/93.47 Found (x01 x000) as proof of ((iff P) Q)
% 93.20/93.47 Found x010:=(x01 x020):x
% 93.20/93.47 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 93.20/93.47 Found (x01 x020) as proof of ((iff P) Q)
% 93.20/93.47 Found (x01 x020) as proof of ((iff P) Q)
% 93.20/93.47 Found (x1 (x01 x020)) as proof of R
% 93.20/93.47 Found (x1 (x01 x020)) as proof of R
% 93.20/93.47 Found x000:=(x00 x010):R
% 93.20/93.47 Found (x00 x010) as proof of R
% 93.20/93.47 Found (x00 x010) as proof of R
% 93.20/93.47 Found x010:=(x01 x000):((iff P) Q)
% 93.20/93.47 Found (x01 x000) as proof of ((iff P) Q)
% 93.20/93.47 Found (x01 x000) as proof of ((iff P) Q)
% 93.20/93.47 Found x020:=(x02 x10):Q
% 93.20/93.47 Found (x02 x10) as proof of Q
% 93.20/93.47 Found (x02 x10) as proof of Q
% 93.20/93.47 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 93.20/93.47 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 93.20/93.47 Found or_ind as proof of x
% 93.20/93.47 Found (x04 or_ind) as proof of Q
% 93.20/93.47 Found (x04 or_ind) as proof of Q
% 93.20/93.47 Found x040:Q
% 93.20/93.47 Found x040 as proof of Q
% 93.20/93.47 Found (x03 x040) as proof of R
% 93.20/93.47 Found (x03 x040) as proof of R
% 93.20/93.47 Found (x03 x040) as proof of R
% 93.20/93.47 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 93.20/93.47 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 93.20/93.47 Found ex_intro0 as proof of x
% 93.20/93.47 Found (x04 ex_intro0) as proof of Q
% 93.20/93.47 Found (x04 ex_intro0) as proof of Q
% 93.20/93.47 Found x010:=(x01 x020):x
% 93.20/93.47 Instantiate: x:=R:Prop
% 93.20/93.47 Found (x01 x020) as proof of R
% 93.20/93.47 Found (x01 x020) as proof of R
% 93.20/93.47 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 93.20/93.47 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 94.61/94.86 Found x030:=(x03 x040):x
% 94.61/94.86 Found (x03 x040) as proof of P
% 94.61/94.86 Found (x03 x040) as proof of P
% 94.61/94.86 Found (x03 x040) as proof of P
% 94.61/94.86 Found x10:=(x1 x20):R
% 94.61/94.86 Found (x1 x20) as proof of R
% 94.61/94.86 Found (x1 x20) as proof of R
% 94.61/94.86 Found x02:((iff Q) x)
% 94.61/94.86 Instantiate: x:=P:Prop
% 94.61/94.86 Found x02 as proof of ((iff Q) P)
% 94.61/94.86 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 94.61/94.86 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 94.61/94.86 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 94.61/94.86 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 94.61/94.86 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 94.61/94.86 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 94.61/94.86 Found or_ind as proof of x
% 94.61/94.86 Found (x04 or_ind) as proof of Q
% 94.61/94.86 Found (x04 or_ind) as proof of Q
% 94.61/94.86 Found x010:=(x01 x020):x
% 94.61/94.86 Instantiate: x:=R:Prop
% 94.61/94.86 Found (x01 x020) as proof of R
% 94.61/94.86 Found (x01 x020) as proof of R
% 94.61/94.86 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 94.61/94.86 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 94.61/94.86 Found x010:=(x01 x020):x
% 94.61/94.86 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 94.61/94.86 Found (x01 x020) as proof of ((iff P) Q)
% 94.61/94.86 Found (x01 x020) as proof of ((iff P) Q)
% 94.61/94.86 Found (x1 (x01 x020)) as proof of R
% 94.61/94.86 Found (x1 (x01 x020)) as proof of R
% 94.61/94.86 Found x20:=(x2 x10):((iff P) Q)
% 94.61/94.86 Found (x2 x10) as proof of ((iff P) Q)
% 94.61/94.86 Found (x2 x10) as proof of ((iff P) Q)
% 94.61/94.86 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 94.61/94.86 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 94.61/94.86 Found ex_intro0 as proof of x
% 94.61/94.86 Found (x04 ex_intro0) as proof of Q
% 94.61/94.86 Found (x04 ex_intro0) as proof of Q
% 94.61/94.86 Found x10:=(x1 x20):R
% 94.61/94.86 Found (x1 x20) as proof of R
% 94.61/94.86 Found (x1 x20) as proof of R
% 94.61/94.86 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 94.61/94.86 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 94.61/94.86 Found eq_sym as proof of x
% 94.61/94.86 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 94.61/94.86 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 94.61/94.87 Found or_ind as proof of x
% 94.61/94.87 Found (x04 or_ind) as proof of Q
% 94.61/94.87 Found (x04 or_ind) as proof of Q
% 94.61/94.87 Found x030:x
% 94.61/94.87 Instantiate: x:=P:Prop
% 94.61/94.87 Found x030 as proof of P
% 94.61/94.87 Found x010:=(x01 x000):((iff P) Q)
% 94.61/94.87 Found (x01 x000) as proof of ((iff P) Q)
% 94.61/94.87 Found (x01 x000) as proof of ((iff P) Q)
% 94.61/94.87 Found x000:=(x00 x010):R
% 94.61/94.87 Found (x00 x010) as proof of R
% 94.61/94.87 Found (x00 x010) as proof of R
% 94.61/94.87 Found x20:=(x2 x10):((iff P) Q)
% 94.61/94.87 Found (x2 x10) as proof of ((iff P) Q)
% 94.61/94.87 Found (x2 x10) as proof of ((iff P) Q)
% 94.61/94.87 Found x010:=(x01 x000):((iff P) Q)
% 94.61/94.87 Found x010 as proof of ((iff P) Q)
% 94.61/94.87 Found x020:Q
% 94.61/94.87 Found x020 as proof of Q
% 94.61/94.87 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 94.61/94.87 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 94.61/94.87 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 94.61/94.87 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 94.61/94.87 Found x010:=(x01 x001):((iff P) Q)
% 94.61/94.87 Found x010 as proof of ((iff P) Q)
% 94.61/94.87 Found x030:=(x03 x040):x
% 94.61/94.87 Found (x03 x040) as proof of P
% 94.61/94.87 Found (x03 x040) as proof of P
% 94.61/94.87 Found (x03 x040) as proof of P
% 94.61/94.87 Found x010:=(x01 x020):x
% 94.61/94.87 Instantiate: x:=P:Prop
% 94.61/94.87 Found (x01 x020) as proof of P
% 94.61/94.87 Found (x01 x020) as proof of P
% 94.61/94.87 Found x010:=(x01 x001):((iff P) Q)
% 94.61/94.87 Found x010 as proof of ((iff P) Q)
% 94.61/94.87 Found x010:=(x01 x001):((iff P) Q)
% 94.61/94.87 Found x010 as proof of ((iff P) Q)
% 94.61/94.87 Found x000:=(x00 x010):R
% 94.61/94.87 Found (x00 x010) as proof of R
% 94.61/94.87 Found (x00 x010) as proof of R
% 94.61/94.87 Found x010:=(x01 x001):((iff P) Q)
% 94.61/94.87 Found x010 as proof of ((iff P) Q)
% 94.61/94.87 Found x20:=(x2 x10):((iff P) Q)
% 94.61/94.87 Found (x2 x10) as proof of ((iff P) Q)
% 94.61/94.87 Found (x2 x10) as proof of ((iff P) Q)
% 94.61/94.87 Found x010:=(x01 x001):((iff P) Q)
% 94.61/94.87 Found x010 as proof of ((iff P) Q)
% 94.61/94.87 Found x020:=(x02 x030):Q
% 94.61/94.87 Found (x02 x030) as proof of Q
% 94.61/94.87 Found (x02 x030) as proof of Q
% 94.61/94.87 Found x020:Q
% 94.61/94.87 Found x020 as proof of x
% 94.61/94.87 Found x030:=(x03 x020):P
% 94.61/94.87 Found (x03 x020) as proof of P
% 94.61/94.87 Found (x03 x020) as proof of P
% 94.61/94.87 Found x00:((iff Q) x)
% 94.61/94.87 Instantiate: x:=P:Prop
% 94.61/94.87 Found x00 as proof of ((iff Q) P)
% 94.61/94.87 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 95.79/96.04 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 95.79/96.04 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 95.79/96.04 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 95.79/96.04 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 95.79/96.04 Found (fun (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00))) as proof of R
% 95.79/96.04 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00))) as proof of ((x->Q)->R)
% 95.79/96.04 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00))) as proof of ((Q->x)->((x->Q)->R))
% 95.79/96.04 Found (and_rect10 (fun (x01:(Q->x)) (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00)))) as proof of R
% 95.79/96.04 Found ((and_rect1 R) (fun (x01:(Q->x)) (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00)))) as proof of R
% 95.79/96.04 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x00)) R) (fun (x01:(Q->x)) (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00)))) as proof of R
% 95.79/96.04 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x00)) R) (fun (x01:(Q->x)) (x02:(x->Q))=> (x1 (((iff_sym Q) P) x00)))) as proof of R
% 95.79/96.04 Found x010:=(x01 x001):((iff P) Q)
% 95.79/96.04 Found x010 as proof of ((iff P) Q)
% 95.79/96.04 Found x010:x
% 95.79/96.04 Found x010 as proof of x
% 95.79/96.04 Found x010:x
% 95.79/96.04 Found x010 as proof of Q
% 95.79/96.04 Found x020:Q
% 95.79/96.04 Found x020 as proof of Q
% 95.79/96.04 Found x000:=(x00 x011):R
% 95.79/96.04 Found (x00 x011) as proof of R
% 95.79/96.04 Found (x00 x011) as proof of R
% 95.79/96.04 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 95.79/96.04 Found (iff_refl Q) as proof of ((iff Q) x)
% 95.79/96.04 Found (iff_refl Q) as proof of ((iff Q) x)
% 95.79/96.04 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 95.79/96.04 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 95.79/96.04 Found x010:x
% 95.79/96.04 Found x010 as proof of x
% 95.79/96.04 Found x010:x
% 95.79/96.04 Found x010 as proof of Q
% 95.79/96.04 Found x000:=(x00 x011):R
% 95.79/96.04 Found (x00 x011) as proof of R
% 95.79/96.04 Found (x00 x011) as proof of R
% 95.79/96.04 Found x20:=(x2 x10):((iff P) Q)
% 95.79/96.04 Found x20 as proof of ((iff P) Q)
% 95.79/96.04 Found x010:=(x01 x000):((iff P) Q)
% 95.79/96.04 Found (x01 x000) as proof of ((iff P) Q)
% 95.79/96.04 Found (x01 x000) as proof of ((iff P) Q)
% 95.79/96.04 Found x000:=(x00 x011):R
% 95.79/96.04 Found (x00 x011) as proof of R
% 95.79/96.04 Found (x00 x011) as proof of R
% 95.79/96.04 Found x010:=(x01 x000):((iff P) Q)
% 95.79/96.04 Found (x01 x000) as proof of ((iff P) Q)
% 95.79/96.04 Found (x01 x000) as proof of ((iff P) Q)
% 95.79/96.04 Found x010:=(x01 x000):((iff P) Q)
% 95.79/96.04 Found (x01 x000) as proof of ((iff P) Q)
% 95.79/96.04 Found (x01 x000) as proof of ((iff P) Q)
% 95.79/96.04 Found x040:Q
% 95.79/96.04 Found x040 as proof of Q
% 95.79/96.04 Found (x03 x040) as proof of R
% 95.79/96.04 Found (x03 x040) as proof of R
% 95.79/96.04 Found (x03 x040) as proof of R
% 95.79/96.04 Found x10:=(x1 x20):R
% 95.79/96.04 Found (x1 x20) as proof of R
% 95.79/96.04 Found (x1 x20) as proof of R
% 95.79/96.04 Found x030:x
% 95.79/96.04 Instantiate: x:=P:Prop
% 95.79/96.04 Found x030 as proof of P
% 95.79/96.04 Found x010:=(x01 x000):((iff P) Q)
% 95.79/96.04 Found x010 as proof of ((iff P) Q)
% 95.79/96.04 Found x02:((iff Q) x)
% 95.79/96.04 Instantiate: x:=P:Prop
% 95.79/96.04 Found x02 as proof of ((iff Q) P)
% 95.79/96.04 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 95.79/96.04 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 95.79/96.04 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 95.79/96.04 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 95.79/96.04 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 95.79/96.04 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 95.79/96.04 Found eq_sym as proof of x
% 95.79/96.04 Found x010:=(x01 x001):((iff P) Q)
% 95.79/96.04 Found (x01 x001) as proof of ((iff P) Q)
% 95.79/96.04 Found (x01 x001) as proof of ((iff P) Q)
% 95.79/96.04 Found x010:=(x01 x001):((iff P) Q)
% 95.79/96.04 Found (x01 x001) as proof of ((iff P) Q)
% 95.79/96.04 Found (x01 x001) as proof of ((iff P) Q)
% 95.79/96.04 Found x020:Q
% 95.79/96.04 Found x020 as proof of Q
% 95.79/96.04 Found (x01 x020) as proof of P
% 95.79/96.04 Found (x01 x020) as proof of P
% 95.79/96.04 Found (x01 x020) as proof of P
% 95.79/96.04 Found x010:=(x01 x000):((iff P) Q)
% 95.79/96.04 Found x010 as proof of ((iff P) Q)
% 95.79/96.04 Found x010:=(x01 x001):((iff P) Q)
% 95.79/96.04 Found (x01 x001) as proof of ((iff P) Q)
% 95.79/96.04 Found (x01 x001) as proof of ((iff P) Q)
% 95.79/96.04 Found x010:=(x01 x000):((iff P) Q)
% 95.79/96.04 Found (x01 x000) as proof of ((iff P) Q)
% 95.79/96.04 Found (x01 x000) as proof of ((iff P) Q)
% 95.79/96.04 Found x000:=(x00 x012):R
% 95.79/96.04 Found (x00 x012) as proof of R
% 95.79/96.04 Found (x00 x012) as proof of R
% 95.79/96.04 Found x000:=(x00 x012):R
% 95.79/96.04 Found (x00 x012) as proof of R
% 95.79/96.04 Found (x00 x012) as proof of R
% 95.79/96.04 Found x020:Q
% 95.79/96.04 Found x020 as proof of Q
% 95.79/96.04 Found (x01 x020) as proof of P
% 95.79/96.04 Found (x01 x020) as proof of P
% 95.79/96.04 Found (x01 x020) as proof of P
% 95.79/96.04 Found x20:=(x2 x10):((iff P) Q)
% 96.66/96.92 Found (x2 x10) as proof of ((iff P) Q)
% 96.66/96.92 Found (x2 x10) as proof of ((iff P) Q)
% 96.66/96.92 Found x010:=(x01 x002):((iff P) Q)
% 96.66/96.92 Found x010 as proof of ((iff P) Q)
% 96.66/96.92 Found x010:=(x01 x020):x
% 96.66/96.92 Instantiate: x:=((((iff P) Q)->R)->((R->((iff P) Q))->P)):Prop
% 96.66/96.92 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 96.66/96.92 Found (x01 x020) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 96.66/96.92 Found (and_rect10 (x01 x020)) as proof of P
% 96.66/96.92 Found ((and_rect1 P) (x01 x020)) as proof of P
% 96.66/96.92 Found (((fun (P0:Type) (x1:((((iff P) Q)->R)->((R->((iff P) Q))->P0)))=> (((((and_rect (((iff P) Q)->R)) (R->((iff P) Q))) P0) x1) x0)) P) (x01 x020)) as proof of P
% 96.66/96.92 Found (((fun (P0:Type) (x1:((((iff P) Q)->R)->((R->((iff P) Q))->P0)))=> (((((and_rect (((iff P) Q)->R)) (R->((iff P) Q))) P0) x1) x0)) P) (x01 x020)) as proof of P
% 96.66/96.92 Found x010:=(x01 x000):((iff P) Q)
% 96.66/96.92 Found (x01 x000) as proof of ((iff P) Q)
% 96.66/96.92 Found (x01 x000) as proof of ((iff P) Q)
% 96.66/96.92 Found x030:=(x03 x020):P
% 96.66/96.92 Found (x03 x020) as proof of P
% 96.66/96.92 Found (x03 x020) as proof of P
% 96.66/96.92 Found x020:=(x02 x030):Q
% 96.66/96.92 Found (x02 x030) as proof of Q
% 96.66/96.92 Found (x02 x030) as proof of Q
% 96.66/96.92 Found x030:=(x03 x020):P
% 96.66/96.92 Found (x03 x020) as proof of P
% 96.66/96.92 Found (x03 x020) as proof of P
% 96.66/96.92 Found x020:Q
% 96.66/96.92 Found x020 as proof of Q
% 96.66/96.92 Found (x01 x020) as proof of P
% 96.66/96.92 Found (x01 x020) as proof of P
% 96.66/96.92 Found (x01 x020) as proof of P
% 96.66/96.92 Found x000:=(x00 x010):R
% 96.66/96.92 Found (x00 x010) as proof of R
% 96.66/96.92 Found (x00 x010) as proof of R
% 96.66/96.92 Found x030:=(x03 x020):P
% 96.66/96.92 Found (x03 x020) as proof of P
% 96.66/96.92 Found (x03 x020) as proof of P
% 96.66/96.92 Found x030:=(x03 x020):P
% 96.66/96.92 Found (x03 x020) as proof of P
% 96.66/96.92 Found (x03 x020) as proof of P
% 96.66/96.92 Found x020:Q
% 96.66/96.92 Found x020 as proof of Q
% 96.66/96.92 Found (x01 x020) as proof of R
% 96.66/96.92 Found (x01 x020) as proof of R
% 96.66/96.92 Found (x01 x020) as proof of R
% 96.66/96.92 Found x010:=(x01 x002):((iff P) Q)
% 96.66/96.92 Found x010 as proof of ((iff P) Q)
% 96.66/96.92 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 96.66/96.92 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 96.66/96.92 Found eq_sym as proof of x
% 96.66/96.92 Found x030:x
% 96.66/96.92 Instantiate: x:=P:Prop
% 96.66/96.92 Found x030 as proof of P
% 96.66/96.92 Found x020:=(x02 x030):Q
% 96.66/96.92 Found (x02 x030) as proof of Q
% 96.66/96.92 Found (x02 x030) as proof of Q
% 96.66/96.92 Found x021:Q
% 96.66/96.92 Found x021 as proof of Q
% 96.66/96.92 Found (x01 x021) as proof of P
% 96.66/96.92 Found (x01 x021) as proof of P
% 96.66/96.92 Found (x01 x021) as proof of P
% 96.66/96.92 Found x020:Q
% 96.66/96.92 Found x020 as proof of Q
% 96.66/96.92 Found (x01 x020) as proof of P
% 96.66/96.92 Found (x01 x020) as proof of P
% 96.66/96.92 Found (x01 x020) as proof of P
% 96.66/96.92 Found x020:Q
% 96.66/96.92 Found x020 as proof of Q
% 96.66/96.92 Found (x01 x020) as proof of P
% 96.66/96.92 Found (x01 x020) as proof of P
% 96.66/96.92 Found (x01 x020) as proof of P
% 96.66/96.92 Found x010:=(x01 x000):((iff P) Q)
% 96.66/96.92 Found x010 as proof of ((iff P) Q)
% 96.66/96.92 Found x010:x
% 96.66/96.92 Instantiate: x:=P:Prop
% 96.66/96.92 Found (fun (x02:(x->Q))=> x010) as proof of P
% 96.66/96.92 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 96.66/96.92 Found x010:=(x01 x003):((iff P) Q)
% 96.66/96.92 Found (x01 x003) as proof of ((iff P) Q)
% 96.66/96.92 Found (x01 x003) as proof of ((iff P) Q)
% 96.66/96.92 Found x010:=(x01 x000):((iff P) Q)
% 96.66/96.92 Found (x01 x000) as proof of ((iff P) Q)
% 96.66/96.92 Found (x01 x000) as proof of ((iff P) Q)
% 96.66/96.92 Found x030:=(x03 x040):x
% 96.66/96.92 Instantiate: x:=P:Prop
% 96.66/96.92 Found (x03 x040) as proof of P
% 96.66/96.92 Found (x03 x040) as proof of P
% 96.66/96.92 Found x030:=(x03 x040):x
% 96.66/96.92 Found (x03 x040) as proof of R
% 96.66/96.92 Found (x03 x040) as proof of R
% 96.66/96.92 Found (x03 x040) as proof of R
% 96.66/96.92 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 96.66/96.92 Found (iff_refl Q) as proof of ((iff Q) x)
% 96.66/96.92 Found (iff_refl Q) as proof of ((iff Q) x)
% 96.66/96.92 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 96.66/96.92 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 96.66/96.92 Found x020:Q
% 96.66/96.92 Found x020 as proof of Q
% 96.66/96.92 Found (x01 x020) as proof of ((iff P) Q)
% 96.66/96.92 Found (x01 x020) as proof of ((iff P) Q)
% 96.66/96.92 Found (x01 x020) as proof of ((iff P) Q)
% 96.66/96.92 Found x020:=(x02 x030):Q
% 96.66/96.92 Found (x02 x030) as proof of Q
% 96.66/96.92 Found (x02 x030) as proof of Q
% 96.66/96.92 Found x030:=(x03 x040):x
% 96.66/96.92 Found (x03 x040) as proof of P
% 96.66/96.92 Found (x03 x040) as proof of P
% 96.66/96.92 Found (x03 x040) as proof of P
% 96.66/96.92 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 97.30/97.55 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 97.30/97.55 Found eq_substitution as proof of x
% 97.30/97.55 Found (x04 eq_substitution) as proof of Q
% 97.30/97.55 Found (x04 eq_substitution) as proof of Q
% 97.30/97.55 Found (x2 (x04 eq_substitution)) as proof of P
% 97.30/97.55 Found (fun (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of P
% 97.30/97.55 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of ((Q->P)->P)
% 97.30/97.55 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of ((P->Q)->((Q->P)->P))
% 97.30/97.55 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 97.30/97.55 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 97.30/97.55 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 97.30/97.55 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 97.30/97.55 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 97.30/97.55 Found x030:=(x03 x020):P
% 97.30/97.55 Found (x03 x020) as proof of P
% 97.30/97.55 Found (x03 x020) as proof of P
% 97.30/97.55 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 97.30/97.55 Found (iff_refl Q) as proof of ((iff Q) x)
% 97.30/97.55 Found (iff_refl Q) as proof of ((iff Q) x)
% 97.30/97.55 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 97.30/97.55 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 97.30/97.55 Found x010:x
% 97.30/97.55 Instantiate: x:=P:Prop
% 97.30/97.55 Found x010 as proof of P
% 97.30/97.55 Found x1:(((iff P) Q)->R)
% 97.30/97.55 Instantiate: x:=(((iff P) Q)->R):Prop
% 97.30/97.55 Found x1 as proof of x
% 97.30/97.55 Found (x02 x1) as proof of Q
% 97.30/97.55 Found (x02 x1) as proof of Q
% 97.30/97.55 Found x010:=(x01 x000):((iff P) Q)
% 97.30/97.55 Found x010 as proof of ((iff P) Q)
% 97.30/97.55 Found x010:=(x01 x000):((iff P) Q)
% 97.30/97.55 Found x010 as proof of ((iff P) Q)
% 97.30/97.55 Found x10:R
% 97.30/97.55 Instantiate: x:=R:Prop
% 97.30/97.55 Found x10 as proof of x
% 97.30/97.55 Found x010:x
% 97.30/97.55 Instantiate: x:=P:Prop
% 97.30/97.55 Found (fun (x02:(x->Q))=> x010) as proof of P
% 97.30/97.55 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 97.30/97.55 Found x010:x
% 97.30/97.55 Instantiate: x:=P:Prop
% 97.30/97.55 Found (fun (x02:(x->Q))=> x010) as proof of P
% 97.30/97.55 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 97.30/97.55 Found x010:x
% 97.30/97.55 Instantiate: x:=P:Prop
% 97.30/97.55 Found (fun (x02:(x->Q))=> x010) as proof of P
% 97.30/97.55 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 97.30/97.55 Found x011:x
% 97.30/97.55 Instantiate: x:=P:Prop
% 97.30/97.55 Found (fun (x02:(x->Q))=> x011) as proof of P
% 97.30/97.55 Found (fun (x02:(x->Q))=> x011) as proof of ((x->Q)->P)
% 97.30/97.55 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 97.30/97.55 Found (iff_refl Q) as proof of ((iff Q) x)
% 97.30/97.55 Found (iff_refl Q) as proof of ((iff Q) x)
% 97.30/97.55 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 97.30/97.55 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 97.30/97.55 Found x010:=(x01 x001):((iff P) Q)
% 97.30/97.55 Found x010 as proof of ((iff P) Q)
% 97.30/97.55 Found x030:=(x03 x040):x
% 97.30/97.55 Found (x03 x040) as proof of R
% 97.30/97.55 Found (x03 x040) as proof of R
% 97.30/97.55 Found (x03 x040) as proof of R
% 97.30/97.55 Found x010:=(x01 x000):((iff P) Q)
% 97.30/97.55 Found (x01 x000) as proof of ((iff P) Q)
% 97.30/97.55 Found (x01 x000) as proof of ((iff P) Q)
% 97.30/97.55 Found x20:=(x2 x10):((iff P) Q)
% 97.30/97.55 Found x20 as proof of ((iff P) Q)
% 97.30/97.55 Found x010:=(x01 x000):((iff P) Q)
% 97.30/97.55 Found x010 as proof of ((iff P) Q)
% 97.30/97.55 Found x000:=(x00 x011):R
% 97.30/97.55 Found (x00 x011) as proof of R
% 97.30/97.55 Found (x00 x011) as proof of R
% 97.30/97.55 Found x030:=(x03 x040):x
% 97.30/97.55 Found (x03 x040) as proof of P
% 97.30/97.55 Found (x03 x040) as proof of P
% 97.30/97.55 Found (x03 x040) as proof of P
% 97.30/97.55 Found x010:=(x01 x000):((iff P) Q)
% 97.30/97.55 Found (x01 x000) as proof of ((iff P) Q)
% 97.30/97.55 Found (x01 x000) as proof of ((iff P) Q)
% 97.30/97.55 Found x000:=(x00 x011):R
% 97.30/97.55 Found (x00 x011) as proof of R
% 97.30/97.55 Found (x00 x011) as proof of R
% 97.30/97.55 Found x010:=(x01 x000):((iff P) Q)
% 97.30/97.55 Found x010 as proof of ((iff P) Q)
% 97.30/97.55 Found x030:=(x03 x040):x
% 97.30/97.55 Found (x03 x040) as proof of ((iff P) Q)
% 97.30/97.55 Found (x03 x040) as proof of ((iff P) Q)
% 97.30/97.55 Found (x03 x040) as proof of ((iff P) Q)
% 97.30/97.55 Found x000:=(x00 x010):R
% 97.30/97.55 Found (x00 x010) as proof of R
% 97.30/97.55 Found (x00 x010) as proof of R
% 97.30/97.55 Found x1:(((iff P) Q)->R)
% 97.30/97.55 Instantiate: x:=(((iff P) Q)->R):Prop
% 97.30/97.55 Found x1 as proof of x
% 99.03/99.29 Found (x02 x1) as proof of Q
% 99.03/99.29 Found (x02 x1) as proof of Q
% 99.03/99.29 Found x030:=(x03 x040):x
% 99.03/99.29 Instantiate: x:=P:Prop
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found x000:=(x00 x013):R
% 99.03/99.29 Found (x00 x013) as proof of R
% 99.03/99.29 Found (x00 x013) as proof of R
% 99.03/99.29 Found x030:=(x03 x040):x
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found x030:=(x03 x040):x
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found x030:=(x03 x040):x
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found x010:=(x01 x000):((iff P) Q)
% 99.03/99.29 Found x010 as proof of ((iff P) Q)
% 99.03/99.29 Found x010:=(x01 x000):((iff P) Q)
% 99.03/99.29 Found x010 as proof of ((iff P) Q)
% 99.03/99.29 Found x2:(R->((iff P) Q))
% 99.03/99.29 Instantiate: x:=(R->((iff P) Q)):Prop
% 99.03/99.29 Found x2 as proof of x
% 99.03/99.29 Found x010:=(x01 x001):((iff P) Q)
% 99.03/99.29 Found (x01 x001) as proof of ((iff P) Q)
% 99.03/99.29 Found (x01 x001) as proof of ((iff P) Q)
% 99.03/99.29 Found x030:=(x03 x040):x
% 99.03/99.29 Found (x03 x040) as proof of ((iff P) Q)
% 99.03/99.29 Found (x03 x040) as proof of ((iff P) Q)
% 99.03/99.29 Found (x03 x040) as proof of ((iff P) Q)
% 99.03/99.29 Found x010:=(x01 x000):((iff P) Q)
% 99.03/99.29 Found x010 as proof of ((iff P) Q)
% 99.03/99.29 Found x011:x
% 99.03/99.29 Instantiate: x:=Q:Prop
% 99.03/99.29 Found x011 as proof of Q
% 99.03/99.29 Found x010:=(x01 x001):((iff P) Q)
% 99.03/99.29 Found x010 as proof of ((iff P) Q)
% 99.03/99.29 Found x010:=(x01 x001):((iff P) Q)
% 99.03/99.29 Found (x01 x001) as proof of ((iff P) Q)
% 99.03/99.29 Found (x01 x001) as proof of ((iff P) Q)
% 99.03/99.29 Found x010:=(x01 x021):x
% 99.03/99.29 Found (x01 x021) as proof of P
% 99.03/99.29 Found (x01 x021) as proof of P
% 99.03/99.29 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 99.03/99.29 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 99.03/99.29 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 99.03/99.29 Found x010:=(x01 x000):((iff P) Q)
% 99.03/99.29 Found x010 as proof of ((iff P) Q)
% 99.03/99.29 Found x030:=(x03 x040):x
% 99.03/99.29 Instantiate: x:=P:Prop
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found x10:=(x1 x20):R
% 99.03/99.29 Found (x1 x20) as proof of R
% 99.03/99.29 Found (x1 x20) as proof of R
% 99.03/99.29 Found x010:=(x01 x000):((iff P) Q)
% 99.03/99.29 Found x010 as proof of ((iff P) Q)
% 99.03/99.29 Found x000:=(x00 x010):R
% 99.03/99.29 Found (x00 x010) as proof of R
% 99.03/99.29 Found (x00 x010) as proof of R
% 99.03/99.29 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 99.03/99.29 Found (iff_refl Q) as proof of ((iff Q) x)
% 99.03/99.29 Found (iff_refl Q) as proof of ((iff Q) x)
% 99.03/99.29 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 99.03/99.29 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 99.03/99.29 Found x010:=(x01 x000):((iff P) Q)
% 99.03/99.29 Found x010 as proof of ((iff P) Q)
% 99.03/99.29 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 99.03/99.29 Found (iff_refl Q) as proof of ((iff Q) x)
% 99.03/99.29 Found (iff_refl Q) as proof of ((iff Q) x)
% 99.03/99.29 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 99.03/99.29 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 99.03/99.29 Found x010:=(x01 x000):((iff P) Q)
% 99.03/99.29 Found (x01 x000) as proof of ((iff P) Q)
% 99.03/99.29 Found (x01 x000) as proof of ((iff P) Q)
% 99.03/99.29 Found x030:=(x03 x040):x
% 99.03/99.29 Instantiate: x:=P:Prop
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found (x03 x040) as proof of P
% 99.03/99.29 Found x010:=(x01 x000):((iff P) Q)
% 99.03/99.29 Found (x01 x000) as proof of ((iff P) Q)
% 99.03/99.29 Found (x01 x000) as proof of ((iff P) Q)
% 99.03/99.29 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 99.03/99.29 Found (iff_refl Q) as proof of ((iff Q) x)
% 99.03/99.29 Found (iff_refl Q) as proof of ((iff Q) x)
% 99.03/99.29 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 99.03/99.29 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 99.03/99.29 Found x010:=(x01 x000):((iff P) Q)
% 99.03/99.29 Found x010 as proof of ((iff P) Q)
% 99.03/99.29 Found x010:=(x01 x000):((iff P) Q)
% 99.03/99.29 Found x010 as proof of ((iff P) Q)
% 99.03/99.29 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 99.03/99.29 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 99.03/99.29 Found eq_substitution as proof of x
% 99.03/99.29 Found (x04 eq_substitution) as proof of Q
% 99.03/99.29 Found (x04 eq_substitution) as proof of Q
% 99.03/99.29 Found (x2 (x04 eq_substitution)) as proof of P
% 99.03/99.29 Found (fun (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of P
% 101.51/101.80 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of ((Q->P)->P)
% 101.51/101.80 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of ((P->Q)->((Q->P)->P))
% 101.51/101.80 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 101.51/101.80 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 101.51/101.80 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 101.51/101.80 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 101.51/101.80 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 101.51/101.80 Found x010:=(x01 x002):((iff P) Q)
% 101.51/101.80 Found x010 as proof of ((iff P) Q)
% 101.51/101.80 Found x010:=(x01 x000):((iff P) Q)
% 101.51/101.80 Found x010 as proof of ((iff P) Q)
% 101.51/101.80 Found x010:=(x01 x000):((iff P) Q)
% 101.51/101.80 Found x010 as proof of ((iff P) Q)
% 101.51/101.80 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 101.51/101.80 Found (iff_refl Q) as proof of ((iff Q) x)
% 101.51/101.80 Found (iff_refl Q) as proof of ((iff Q) x)
% 101.51/101.80 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 101.51/101.80 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 101.51/101.80 Found x20:=(x2 x10):((iff P) Q)
% 101.51/101.80 Found (x2 x10) as proof of ((iff P) Q)
% 101.51/101.80 Found (x2 x10) as proof of ((iff P) Q)
% 101.51/101.80 Found x010:=(x01 x000):((iff P) Q)
% 101.51/101.80 Found x010 as proof of ((iff P) Q)
% 101.51/101.80 Found x010:=(x01 x000):((iff P) Q)
% 101.51/101.80 Found x010 as proof of ((iff P) Q)
% 101.51/101.80 Found x010:=(x01 x000):((iff P) Q)
% 101.51/101.80 Found x010 as proof of ((iff P) Q)
% 101.51/101.80 Found x010:=(x01 x002):((iff P) Q)
% 101.51/101.80 Found x010 as proof of ((iff P) Q)
% 101.51/101.80 Found x010:=(x01 x000):((iff P) Q)
% 101.51/101.80 Found (x01 x000) as proof of ((iff P) Q)
% 101.51/101.80 Found (x01 x000) as proof of ((iff P) Q)
% 101.51/101.80 Found x010:=(x01 x000):((iff P) Q)
% 101.51/101.80 Found (x01 x000) as proof of ((iff P) Q)
% 101.51/101.80 Found (x01 x000) as proof of ((iff P) Q)
% 101.51/101.80 Found x000:=(x00 x010):R
% 101.51/101.80 Found (x00 x010) as proof of R
% 101.51/101.80 Found (x00 x010) as proof of R
% 101.51/101.80 Found x010:=(x01 x000):((iff P) Q)
% 101.51/101.80 Found x010 as proof of ((iff P) Q)
% 101.51/101.80 Found x010:=(x01 x000):((iff P) Q)
% 101.51/101.80 Found x010 as proof of ((iff P) Q)
% 101.51/101.80 Found x030:=(x03 x040):x
% 101.51/101.80 Instantiate: x:=P:Prop
% 101.51/101.80 Found (x03 x040) as proof of P
% 101.51/101.80 Found (x03 x040) as proof of P
% 101.51/101.80 Found x010:=(x01 x000):((iff P) Q)
% 101.51/101.80 Found x010 as proof of ((iff P) Q)
% 101.51/101.80 Found x10:=(x1 x20):R
% 101.51/101.80 Found (x1 x20) as proof of R
% 101.51/101.80 Found (x1 x20) as proof of R
% 101.51/101.80 Found x010:=(x01 x000):((iff P) Q)
% 101.51/101.80 Found (x01 x000) as proof of ((iff P) Q)
% 101.51/101.80 Found (x01 x000) as proof of ((iff P) Q)
% 101.51/101.80 Found x000:=(x00 x011):R
% 101.51/101.80 Found (x00 x011) as proof of R
% 101.51/101.80 Found (x00 x011) as proof of R
% 101.51/101.80 Found x010:=(x01 x002):((iff P) Q)
% 101.51/101.80 Found x010 as proof of ((iff P) Q)
% 101.51/101.80 Found x030:=(x03 x040):x
% 101.51/101.80 Instantiate: x:=R:Prop
% 101.51/101.80 Found (x03 x040) as proof of R
% 101.51/101.80 Found (x03 x040) as proof of R
% 101.51/101.80 Found x10:=(x1 x20):R
% 101.51/101.80 Found (x1 x20) as proof of R
% 101.51/101.80 Found (x1 x20) as proof of R
% 101.51/101.80 Found x010:=(x01 x020):x
% 101.51/101.80 Found (x01 x020) as proof of R
% 101.51/101.80 Found (x01 x020) as proof of R
% 101.51/101.80 Found (x01 x020) as proof of R
% 101.51/101.80 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 101.51/101.80 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 101.51/101.80 Found or_ind as proof of x
% 101.51/101.80 Found (x04 or_ind) as proof of Q
% 101.51/101.80 Found (x04 or_ind) as proof of Q
% 101.51/101.80 Found x030:=(x03 x040):x
% 101.51/101.80 Instantiate: x:=P:Prop
% 101.51/101.80 Found (x03 x040) as proof of P
% 101.51/101.80 Found (x03 x040) as proof of P
% 101.51/101.80 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 101.51/101.80 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 101.51/101.80 Found eq_substitution as proof of x
% 101.51/101.80 Found (x06 eq_substitution) as proof of Q
% 101.51/101.80 Found (x06 eq_substitution) as proof of Q
% 101.51/101.80 Found (x05 (x06 eq_substitution)) as proof of P
% 101.51/101.80 Found (fun (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of P
% 101.51/101.80 Found (fun (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 102.20/102.46 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of ((Q->P)->((x->Q)->P))
% 102.20/102.46 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of ((P->Q)->((Q->P)->((x->Q)->P)))
% 102.20/102.46 Found (and_rect20 (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 102.20/102.46 Found ((and_rect2 ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 102.20/102.46 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 102.20/102.46 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 102.20/102.46 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 102.20/102.46 Found x010:=(x01 x000):((iff P) Q)
% 102.20/102.46 Found x010 as proof of ((iff P) Q)
% 102.20/102.46 Found x010:=(x01 x001):((iff P) Q)
% 102.20/102.46 Found (x01 x001) as proof of ((iff P) Q)
% 102.20/102.46 Found (x01 x001) as proof of ((iff P) Q)
% 102.20/102.46 Found x000:=(x00 x010):R
% 102.20/102.46 Found (x00 x010) as proof of R
% 102.20/102.46 Found (x00 x010) as proof of R
% 102.20/102.46 Found x20:=(x2 x10):((iff P) Q)
% 102.20/102.46 Found (x2 x10) as proof of ((iff P) Q)
% 102.20/102.46 Found (x2 x10) as proof of ((iff P) Q)
% 102.20/102.46 Found x010:=(x01 x020):x
% 102.20/102.46 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 102.20/102.46 Found (x01 x020) as proof of ((iff P) Q)
% 102.20/102.46 Found (x01 x020) as proof of ((iff P) Q)
% 102.20/102.46 Found (x1 (x01 x020)) as proof of R
% 102.20/102.46 Found (x1 (x01 x020)) as proof of R
% 102.20/102.46 Found x010:=(x01 x020):x
% 102.20/102.46 Instantiate: x:=R:Prop
% 102.20/102.46 Found (x01 x020) as proof of R
% 102.20/102.46 Found (x01 x020) as proof of R
% 102.20/102.46 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 102.20/102.46 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 102.20/102.46 Found x010:=(x01 x000):((iff P) Q)
% 102.20/102.46 Found x010 as proof of ((iff P) Q)
% 102.20/102.46 Found x010:=(x01 x000):((iff P) Q)
% 102.20/102.46 Found (x01 x000) as proof of ((iff P) Q)
% 102.20/102.46 Found (x01 x000) as proof of ((iff P) Q)
% 102.20/102.46 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 102.20/102.46 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 102.20/102.46 Found or_ind as proof of x
% 102.20/102.46 Found (x04 or_ind) as proof of Q
% 102.20/102.46 Found (x04 or_ind) as proof of Q
% 102.20/102.46 Found x030:x
% 102.20/102.46 Instantiate: x:=P:Prop
% 102.20/102.46 Found (fun (x04:(x->Q))=> x030) as proof of P
% 102.20/102.46 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 102.20/102.46 Found x010:=(x01 x020):x
% 102.20/102.46 Found (x01 x020) as proof of R
% 102.20/102.46 Found (x01 x020) as proof of R
% 102.20/102.46 Found (x01 x020) as proof of R
% 102.20/102.46 Found x010:=(x01 x000):((iff P) Q)
% 102.20/102.46 Found (x01 x000) as proof of ((iff P) Q)
% 102.20/102.46 Found (x01 x000) as proof of ((iff P) Q)
% 102.20/102.46 Found x20:=(x2 x10):((iff P) Q)
% 102.20/102.46 Found (x2 x10) as proof of ((iff P) Q)
% 102.20/102.46 Found (x2 x10) as proof of ((iff P) Q)
% 102.20/102.46 Found x010:=(x01 x020):x
% 102.20/102.46 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 102.20/102.46 Found (x01 x020) as proof of ((iff P) Q)
% 102.20/102.46 Found (x01 x020) as proof of ((iff P) Q)
% 102.20/102.46 Found x010:=(x01 x000):((iff P) Q)
% 102.20/102.46 Found x010 as proof of ((iff P) Q)
% 102.20/102.46 Found x010:=(x01 x000):((iff P) Q)
% 102.20/102.46 Found x010 as proof of ((iff P) Q)
% 102.20/102.46 Found x000:=(x00 x010):R
% 102.20/102.46 Found (x00 x010) as proof of R
% 102.20/102.46 Found (x00 x010) as proof of R
% 102.20/102.46 Found x010:=(x01 x000):((iff P) Q)
% 102.20/102.46 Found x010 as proof of ((iff P) Q)
% 102.20/102.46 Found x000:=(x00 x010):R
% 102.20/102.46 Found (x00 x010) as proof of R
% 102.20/102.46 Found (x00 x010) as proof of R
% 102.20/102.46 Found x010:=(x01 x020):x
% 102.20/102.46 Instantiate: x:=P:Prop
% 102.20/102.46 Found (x01 x020) as proof of P
% 102.20/102.46 Found (x01 x020) as proof of P
% 102.20/102.46 Found x010:x
% 102.20/102.46 Instantiate: x:=R:Prop
% 102.20/102.46 Found x010 as proof of R
% 102.20/102.46 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 102.20/102.46 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 102.20/102.46 Found iff_sym as proof of x
% 102.20/102.46 Found x20:=(x2 x10):((iff P) Q)
% 102.20/102.46 Found (x2 x10) as proof of ((iff P) Q)
% 102.20/102.46 Found (x2 x10) as proof of ((iff P) Q)
% 102.20/102.46 Found x010:=(x01 x020):x
% 102.20/102.46 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 103.34/103.60 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 103.34/103.60 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 103.34/103.60 Found x010:=(x01 x021):x
% 103.34/103.60 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 103.34/103.60 Found (x01 x021) as proof of ((R->((iff P) Q))->P)
% 103.34/103.60 Found (x01 x021) as proof of ((R->((iff P) Q))->P)
% 103.34/103.60 Found x010:=(x01 x020):x
% 103.34/103.60 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 103.34/103.60 Found (x01 x020) as proof of ((iff P) Q)
% 103.34/103.60 Found (x01 x020) as proof of ((iff P) Q)
% 103.34/103.60 Found x010:=(x01 x020):x
% 103.34/103.60 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 103.34/103.60 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 103.34/103.60 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 103.34/103.60 Found x010:=(x01 x000):((iff P) Q)
% 103.34/103.60 Found x010 as proof of ((iff P) Q)
% 103.34/103.60 Found x010:=(x01 x000):((iff P) Q)
% 103.34/103.60 Found x010 as proof of ((iff P) Q)
% 103.34/103.60 Found x010:=(x01 x000):((iff P) Q)
% 103.34/103.60 Found (x01 x000) as proof of ((iff P) Q)
% 103.34/103.60 Found (x01 x000) as proof of ((iff P) Q)
% 103.34/103.60 Found x010:=(x01 x001):((iff P) Q)
% 103.34/103.60 Found (x01 x001) as proof of ((iff P) Q)
% 103.34/103.60 Found (x01 x001) as proof of ((iff P) Q)
% 103.34/103.60 Found x030:=(x03 x020):P
% 103.34/103.60 Found (x03 x020) as proof of P
% 103.34/103.60 Found (x03 x020) as proof of P
% 103.34/103.60 Found x010:=(x01 x000):((iff P) Q)
% 103.34/103.60 Found x010 as proof of ((iff P) Q)
% 103.34/103.60 Found x020:=(x02 x030):Q
% 103.34/103.60 Found (x02 x030) as proof of Q
% 103.34/103.60 Found (x02 x030) as proof of Q
% 103.34/103.60 Found x030:=(x03 x020):P
% 103.34/103.60 Found (x03 x020) as proof of P
% 103.34/103.60 Found (x03 x020) as proof of P
% 103.34/103.60 Found x020:Q
% 103.34/103.60 Found x020 as proof of Q
% 103.34/103.60 Found x020:Q
% 103.34/103.60 Found x020 as proof of x
% 103.34/103.60 Found x000:=(x00 x010):R
% 103.34/103.60 Found (x00 x010) as proof of R
% 103.34/103.60 Found (x00 x010) as proof of R
% 103.34/103.60 Found x000:=(x00 x010):R
% 103.34/103.60 Found (x00 x010) as proof of R
% 103.34/103.60 Found (x00 x010) as proof of R
% 103.34/103.60 Found x010:=(x01 x000):((iff P) Q)
% 103.34/103.60 Found (x01 x000) as proof of ((iff P) Q)
% 103.34/103.60 Found (x01 x000) as proof of ((iff P) Q)
% 103.34/103.60 Found x010:=(x01 x000):((iff P) Q)
% 103.34/103.60 Found x010 as proof of ((iff P) Q)
% 103.34/103.60 Found x20:=(x2 x10):((iff P) Q)
% 103.34/103.60 Found (x2 x10) as proof of ((iff P) Q)
% 103.34/103.60 Found (x2 x10) as proof of ((iff P) Q)
% 103.34/103.60 Found x000:=(x00 x011):R
% 103.34/103.60 Found (x00 x011) as proof of R
% 103.34/103.60 Found (x00 x011) as proof of R
% 103.34/103.60 Found x20:=(x2 x10):((iff P) Q)
% 103.34/103.60 Found (x2 x10) as proof of ((iff P) Q)
% 103.34/103.60 Found (x2 x10) as proof of ((iff P) Q)
% 103.34/103.60 Found x010:=(x01 x000):((iff P) Q)
% 103.34/103.60 Found x010 as proof of ((iff P) Q)
% 103.34/103.60 Found x20:=(x2 x10):((iff P) Q)
% 103.34/103.60 Found x20 as proof of ((iff P) Q)
% 103.34/103.60 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 103.34/103.60 Found (iff_refl Q) as proof of ((iff Q) x)
% 103.34/103.60 Found (iff_refl Q) as proof of ((iff Q) x)
% 103.34/103.60 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 103.34/103.60 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 103.34/103.60 Found x000:=(x00 x011):R
% 103.34/103.60 Found (x00 x011) as proof of R
% 103.34/103.60 Found (x00 x011) as proof of R
% 103.34/103.60 Found x010:=(x01 x000):((iff P) Q)
% 103.34/103.60 Found (x01 x000) as proof of ((iff P) Q)
% 103.34/103.60 Found (x01 x000) as proof of ((iff P) Q)
% 103.34/103.60 Found x010:=(x01 x000):((iff P) Q)
% 103.34/103.60 Found x010 as proof of ((iff P) Q)
% 103.34/103.60 Found x010:=(x01 x000):((iff P) Q)
% 103.34/103.60 Found x010 as proof of ((iff P) Q)
% 103.34/103.60 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 103.34/103.60 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 103.34/103.60 Found or_ind as proof of x
% 103.34/103.60 Found (x04 or_ind) as proof of Q
% 103.34/103.60 Found (x04 or_ind) as proof of Q
% 103.34/103.60 Found x000:=(x00 x012):R
% 103.34/103.60 Found (x00 x012) as proof of R
% 103.34/103.60 Found (x00 x012) as proof of R
% 103.34/103.60 Found x010:=(x01 x000):((iff P) Q)
% 103.34/103.60 Found x010 as proof of ((iff P) Q)
% 103.34/103.60 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 103.34/103.60 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 103.34/103.60 Found or_ind as proof of x
% 103.34/103.60 Found (x04 or_ind) as proof of Q
% 103.34/103.60 Found (x04 or_ind) as proof of Q
% 103.34/103.60 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 103.34/103.60 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 103.34/103.60 Found ex_intro0 as proof of x
% 103.34/103.60 Found (x04 ex_intro0) as proof of Q
% 103.34/103.60 Found (x04 ex_intro0) as proof of Q
% 103.34/103.60 Found x000:=(x00 x011):R
% 103.34/103.60 Found (x00 x011) as proof of R
% 103.34/103.60 Found (x00 x011) as proof of R
% 103.34/103.60 Found x010:=(x01 x000):((iff P) Q)
% 103.34/103.60 Found x010 as proof of ((iff P) Q)
% 103.34/103.60 Found x010:=(x01 x000):((iff P) Q)
% 103.34/103.60 Found x010 as proof of ((iff P) Q)
% 103.34/103.60 Found x030:=(x03 x040):x
% 103.34/103.60 Instantiate: x:=R:Prop
% 103.34/103.60 Found (x03 x040) as proof of R
% 103.34/103.60 Found (x03 x040) as proof of R
% 103.99/104.29 Found x010:=(x01 x000):((iff P) Q)
% 103.99/104.29 Found x010 as proof of ((iff P) Q)
% 103.99/104.29 Found x010:=(x01 x000):((iff P) Q)
% 103.99/104.29 Found x010 as proof of ((iff P) Q)
% 103.99/104.29 Found x20:=(x2 x10):((iff P) Q)
% 103.99/104.29 Found (x2 x10) as proof of ((iff P) Q)
% 103.99/104.29 Found (x2 x10) as proof of ((iff P) Q)
% 103.99/104.29 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 103.99/104.29 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 103.99/104.29 Found or_ind as proof of x
% 103.99/104.29 Found (x04 or_ind) as proof of Q
% 103.99/104.29 Found (x04 or_ind) as proof of Q
% 103.99/104.29 Found x030:x
% 103.99/104.29 Instantiate: x:=P:Prop
% 103.99/104.29 Found (fun (x04:(x->Q))=> x030) as proof of P
% 103.99/104.29 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 103.99/104.29 Found x010:=(x01 x000):((iff P) Q)
% 103.99/104.29 Found x010 as proof of ((iff P) Q)
% 103.99/104.29 Found x010:=(x01 x000):((iff P) Q)
% 103.99/104.29 Found x010 as proof of ((iff P) Q)
% 103.99/104.29 Found x010:x
% 103.99/104.29 Found x010 as proof of x
% 103.99/104.29 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 103.99/104.29 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 103.99/104.29 Found eq_substitution as proof of x
% 103.99/104.29 Found (x06 eq_substitution) as proof of Q
% 103.99/104.29 Found (x06 eq_substitution) as proof of Q
% 103.99/104.29 Found (x05 (x06 eq_substitution)) as proof of P
% 103.99/104.29 Found (fun (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of P
% 103.99/104.29 Found (fun (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 103.99/104.29 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of ((Q->P)->((x->Q)->P))
% 103.99/104.29 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of ((P->Q)->((Q->P)->((x->Q)->P)))
% 103.99/104.29 Found (and_rect20 (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 103.99/104.29 Found ((and_rect2 ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 103.99/104.29 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 103.99/104.29 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 103.99/104.29 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 103.99/104.29 Found x010:x
% 103.99/104.29 Found x010 as proof of Q
% 103.99/104.29 Found x020:Q
% 103.99/104.29 Found x020 as proof of Q
% 103.99/104.29 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 103.99/104.29 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 103.99/104.29 Found ex_intro0 as proof of x
% 103.99/104.29 Found (x04 ex_intro0) as proof of Q
% 103.99/104.29 Found (x04 ex_intro0) as proof of Q
% 103.99/104.29 Found x020:Q
% 103.99/104.29 Found x020 as proof of x
% 103.99/104.29 Found x010:=(x01 x000):((iff P) Q)
% 103.99/104.29 Found x010 as proof of ((iff P) Q)
% 103.99/104.29 Found x010:=(x01 x001):((iff P) Q)
% 103.99/104.29 Found (x01 x001) as proof of ((iff P) Q)
% 103.99/104.29 Found (x01 x001) as proof of ((iff P) Q)
% 103.99/104.29 Found x010:=(x01 x001):((iff P) Q)
% 103.99/104.29 Found (x01 x001) as proof of ((iff P) Q)
% 103.99/104.29 Found (x01 x001) as proof of ((iff P) Q)
% 103.99/104.29 Found x010:=(x01 x000):((iff P) Q)
% 103.99/104.29 Found (x01 x000) as proof of ((iff P) Q)
% 103.99/104.29 Found (x01 x000) as proof of ((iff P) Q)
% 103.99/104.29 Found x010:=(x01 x000):((iff P) Q)
% 103.99/104.29 Found x010 as proof of ((iff P) Q)
% 103.99/104.29 Found x020:Q
% 103.99/104.29 Found x020 as proof of Q
% 103.99/104.29 Found (x01 x020) as proof of P
% 103.99/104.29 Found (x01 x020) as proof of P
% 103.99/104.29 Found (x01 x020) as proof of P
% 103.99/104.29 Found x010:=(x01 x002):((iff P) Q)
% 103.99/104.29 Found x010 as proof of ((iff P) Q)
% 103.99/104.29 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 103.99/104.29 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 103.99/104.29 Found eq_sym as proof of x
% 103.99/104.29 Found x030:x
% 103.99/104.29 Instantiate: x:=P:Prop
% 103.99/104.29 Found x030 as proof of P
% 104.87/105.14 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 104.87/105.14 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 104.87/105.14 Found or_ind as proof of x
% 104.87/105.14 Found (x04 or_ind) as proof of Q
% 104.87/105.14 Found (x04 or_ind) as proof of Q
% 104.87/105.14 Found x010:=(x01 x000):((iff P) Q)
% 104.87/105.14 Found (x01 x000) as proof of ((iff P) Q)
% 104.87/105.14 Found (x01 x000) as proof of ((iff P) Q)
% 104.87/105.14 Found x030:=(x03 x020):P
% 104.87/105.14 Found (x03 x020) as proof of P
% 104.87/105.14 Found (x03 x020) as proof of P
% 104.87/105.14 Found x000:=(x00 x010):R
% 104.87/105.14 Found (x00 x010) as proof of R
% 104.87/105.14 Found (x00 x010) as proof of R
% 104.87/105.14 Found x030:=(x03 x020):P
% 104.87/105.14 Found (x03 x020) as proof of P
% 104.87/105.14 Found (x03 x020) as proof of P
% 104.87/105.14 Found x010:=(x01 x002):((iff P) Q)
% 104.87/105.14 Found x010 as proof of ((iff P) Q)
% 104.87/105.14 Found x000:=(x00 x010):R
% 104.87/105.14 Found (x00 x010) as proof of R
% 104.87/105.14 Found (x00 x010) as proof of R
% 104.87/105.14 Found x000:=(x00 x010):R
% 104.87/105.14 Found (x00 x010) as proof of R
% 104.87/105.14 Found (x00 x010) as proof of R
% 104.87/105.14 Found x010:=(x01 x001):((iff P) Q)
% 104.87/105.14 Found (x01 x001) as proof of ((iff P) Q)
% 104.87/105.14 Found (x01 x001) as proof of ((iff P) Q)
% 104.87/105.14 Found x020:Q
% 104.87/105.14 Found x020 as proof of Q
% 104.87/105.14 Found (x01 x020) as proof of R
% 104.87/105.14 Found (x01 x020) as proof of R
% 104.87/105.14 Found (x01 x020) as proof of R
% 104.87/105.14 Found x02:((iff Q) x)
% 104.87/105.14 Instantiate: x:=P:Prop
% 104.87/105.14 Found x02 as proof of ((iff Q) P)
% 104.87/105.14 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 104.87/105.14 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 104.87/105.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 104.87/105.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 104.87/105.14 Found x020:Q
% 104.87/105.14 Found x020 as proof of Q
% 104.87/105.14 Found (x01 x020) as proof of P
% 104.87/105.14 Found (x01 x020) as proof of P
% 104.87/105.14 Found (x01 x020) as proof of P
% 104.87/105.14 Found x010:=(x01 x000):((iff P) Q)
% 104.87/105.14 Found x010 as proof of ((iff P) Q)
% 104.87/105.14 Found x010:=(x01 x001):((iff P) Q)
% 104.87/105.14 Found x010 as proof of ((iff P) Q)
% 104.87/105.14 Found x030:x
% 104.87/105.14 Instantiate: x:=P:Prop
% 104.87/105.14 Found (fun (x04:(x->Q))=> x030) as proof of P
% 104.87/105.14 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 104.87/105.14 Found x020:Q
% 104.87/105.14 Found x020 as proof of Q
% 104.87/105.14 Found (x01 x020) as proof of P
% 104.87/105.14 Found (x01 x020) as proof of P
% 104.87/105.14 Found (x01 x020) as proof of P
% 104.87/105.14 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 104.87/105.14 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 104.87/105.14 Found eq_substitution as proof of x
% 104.87/105.14 Found (x04 eq_substitution) as proof of Q
% 104.87/105.14 Found (x04 eq_substitution) as proof of Q
% 104.87/105.14 Found (x2 (x04 eq_substitution)) as proof of P
% 104.87/105.14 Found (fun (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of P
% 104.87/105.14 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of ((Q->P)->P)
% 104.87/105.14 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of ((P->Q)->((Q->P)->P))
% 104.87/105.14 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 104.87/105.14 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 104.87/105.14 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 104.87/105.14 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 104.87/105.14 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))))) as proof of P
% 104.87/105.14 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))))) as proof of ((x->Q)->P)
% 104.87/105.14 Found x021:Q
% 104.87/105.14 Found x021 as proof of Q
% 104.87/105.14 Found (x01 x021) as proof of P
% 104.87/105.14 Found (x01 x021) as proof of P
% 104.87/105.14 Found (x01 x021) as proof of P
% 104.87/105.14 Found x010:=(x01 x001):((iff P) Q)
% 104.87/105.14 Found x010 as proof of ((iff P) Q)
% 104.87/105.14 Found x010:=(x01 x003):((iff P) Q)
% 104.87/105.14 Found (x01 x003) as proof of ((iff P) Q)
% 104.87/105.14 Found (x01 x003) as proof of ((iff P) Q)
% 104.87/105.14 Found x020:Q
% 104.87/105.14 Found x020 as proof of Q
% 104.87/105.14 Found (x01 x020) as proof of ((iff P) Q)
% 105.74/106.03 Found (x01 x020) as proof of ((iff P) Q)
% 105.74/106.03 Found (x01 x020) as proof of ((iff P) Q)
% 105.74/106.03 Found x030:=(x03 x040):x
% 105.74/106.03 Found (x03 x040) as proof of P
% 105.74/106.03 Found (x03 x040) as proof of P
% 105.74/106.03 Found (x03 x040) as proof of P
% 105.74/106.03 Found x000:=(x00 x011):R
% 105.74/106.03 Found (x00 x011) as proof of R
% 105.74/106.03 Found (x00 x011) as proof of R
% 105.74/106.03 Found x021:Q
% 105.74/106.03 Found x021 as proof of Q
% 105.74/106.03 Found (x01 x021) as proof of P
% 105.74/106.03 Found (x01 x021) as proof of P
% 105.74/106.03 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 105.74/106.03 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 105.74/106.03 Found x020:Q
% 105.74/106.03 Found x020 as proof of Q
% 105.74/106.03 Found (x01 x020) as proof of P
% 105.74/106.03 Found (x01 x020) as proof of P
% 105.74/106.03 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 105.74/106.03 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 105.74/106.03 Found x010:x
% 105.74/106.03 Instantiate: x:=P:Prop
% 105.74/106.03 Found (fun (x02:(x->Q))=> x010) as proof of P
% 105.74/106.03 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 105.74/106.03 Found x020:Q
% 105.74/106.03 Found x020 as proof of Q
% 105.74/106.03 Found (x01 x020) as proof of P
% 105.74/106.03 Found (x01 x020) as proof of P
% 105.74/106.03 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 105.74/106.03 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 105.74/106.03 Found x000:=(x00 x010):R
% 105.74/106.03 Found (x00 x010) as proof of R
% 105.74/106.03 Found (x00 x010) as proof of R
% 105.74/106.03 Found x010:=(x01 x000):((iff P) Q)
% 105.74/106.03 Found (x01 x000) as proof of ((iff P) Q)
% 105.74/106.03 Found (x01 x000) as proof of ((iff P) Q)
% 105.74/106.03 Found x010:=(x01 x001):((iff P) Q)
% 105.74/106.03 Found x010 as proof of ((iff P) Q)
% 105.74/106.03 Found x02:((iff Q) x)
% 105.74/106.03 Instantiate: x:=P:Prop
% 105.74/106.03 Found x02 as proof of ((iff Q) P)
% 105.74/106.03 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 105.74/106.03 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 105.74/106.03 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 105.74/106.03 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 105.74/106.03 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 105.74/106.03 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 105.74/106.03 Found or_ind as proof of x
% 105.74/106.03 Found (x04 or_ind) as proof of Q
% 105.74/106.03 Found (x04 or_ind) as proof of Q
% 105.74/106.03 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 105.74/106.03 Found (iff_refl Q) as proof of ((iff Q) x)
% 105.74/106.03 Found (iff_refl Q) as proof of ((iff Q) x)
% 105.74/106.03 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 105.74/106.03 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 105.74/106.03 Found x010:=(x01 x000):((iff P) Q)
% 105.74/106.03 Found x010 as proof of ((iff P) Q)
% 105.74/106.03 Found x010:=(x01 x000):((iff P) Q)
% 105.74/106.03 Found x010 as proof of ((iff P) Q)
% 105.74/106.03 Found x010:=(x01 x000):((iff P) Q)
% 105.74/106.03 Found (x01 x000) as proof of ((iff P) Q)
% 105.74/106.03 Found (x01 x000) as proof of ((iff P) Q)
% 105.74/106.03 Found x010:=(x01 x000):((iff P) Q)
% 105.74/106.03 Found (x01 x000) as proof of ((iff P) Q)
% 105.74/106.03 Found (x01 x000) as proof of ((iff P) Q)
% 105.74/106.03 Found x030:=(x03 x040):x
% 105.74/106.03 Found (x03 x040) as proof of P
% 105.74/106.03 Found (x03 x040) as proof of P
% 105.74/106.03 Found (x03 x040) as proof of P
% 105.74/106.03 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 105.74/106.03 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 105.74/106.03 Found or_ind as proof of x
% 105.74/106.03 Found (x04 or_ind) as proof of Q
% 105.74/106.03 Found (x04 or_ind) as proof of Q
% 105.74/106.03 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 105.74/106.03 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 105.74/106.03 Found ex_intro0 as proof of x
% 105.74/106.03 Found (x04 ex_intro0) as proof of Q
% 105.74/106.03 Found (x04 ex_intro0) as proof of Q
% 105.74/106.03 Found x010:=(x01 x000):((iff P) Q)
% 105.74/106.03 Found x010 as proof of ((iff P) Q)
% 105.74/106.03 Found x010:=(x01 x000):((iff P) Q)
% 105.74/106.03 Found x010 as proof of ((iff P) Q)
% 105.74/106.03 Found x030:=(x03 x021):P
% 105.74/106.03 Found (x03 x021) as proof of P
% 105.74/106.03 Found (x03 x021) as proof of P
% 105.74/106.03 Found x030:=(x03 x020):P
% 105.74/106.03 Found (x03 x020) as proof of P
% 105.74/106.03 Found (x03 x020) as proof of P
% 105.74/106.03 Found x020:=(x02 x030):Q
% 105.74/106.03 Found (x02 x030) as proof of Q
% 105.74/106.03 Found (x02 x030) as proof of Q
% 105.74/106.03 Found x020:=(x02 x031):Q
% 105.74/106.03 Found (x02 x031) as proof of Q
% 105.74/106.03 Found (x02 x031) as proof of Q
% 105.74/106.03 Found x02:((iff Q) x)
% 105.74/106.03 Instantiate: x:=P:Prop
% 105.74/106.03 Found x02 as proof of ((iff Q) P)
% 105.74/106.03 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 105.74/106.03 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 105.74/106.03 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 105.74/106.03 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 105.74/106.03 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 106.34/106.60 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 106.34/106.60 Found eq_substitution as proof of x
% 106.34/106.60 Found (x06 eq_substitution) as proof of Q
% 106.34/106.60 Found (x06 eq_substitution) as proof of Q
% 106.34/106.60 Found (x04 (x06 eq_substitution)) as proof of P
% 106.34/106.60 Found (fun (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of P
% 106.34/106.60 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 106.34/106.60 Found (fun (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 106.34/106.60 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 106.34/106.60 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 106.34/106.60 Found (and_rect20 (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 106.34/106.60 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 106.34/106.60 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 106.34/106.60 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 106.34/106.60 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 106.34/106.60 Found x010:=(x01 x000):((iff P) Q)
% 106.34/106.60 Found x010 as proof of ((iff P) Q)
% 106.34/106.60 Found x010:=(x01 x000):((iff P) Q)
% 106.34/106.60 Found x010 as proof of ((iff P) Q)
% 106.34/106.60 Found x010:=(x01 x001):((iff P) Q)
% 106.34/106.60 Found (x01 x001) as proof of ((iff P) Q)
% 106.34/106.60 Found (x01 x001) as proof of ((iff P) Q)
% 106.34/106.60 Found x030:=(x03 x040):x
% 106.34/106.60 Instantiate: x:=P:Prop
% 106.34/106.60 Found (x03 x040) as proof of P
% 106.34/106.60 Found (x03 x040) as proof of P
% 106.34/106.60 Found x030:x
% 106.34/106.60 Instantiate: x:=P:Prop
% 106.34/106.60 Found x030 as proof of P
% 106.34/106.60 Found x010:=(x01 x000):((iff P) Q)
% 106.34/106.60 Found (x01 x000) as proof of ((iff P) Q)
% 106.34/106.60 Found (x01 x000) as proof of ((iff P) Q)
% 106.34/106.60 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 106.34/106.60 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 106.34/106.60 Found eq_sym as proof of x
% 106.34/106.60 Found x000:=(x00 x010):R
% 106.34/106.60 Found (x00 x010) as proof of R
% 106.34/106.60 Found (x00 x010) as proof of R
% 106.34/106.60 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 106.34/106.60 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 106.34/106.60 Found or_ind as proof of x
% 106.34/106.60 Found (x04 or_ind) as proof of Q
% 106.34/106.60 Found (x04 or_ind) as proof of Q
% 106.34/106.60 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 106.34/106.60 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 106.34/106.60 Found ex_intro0 as proof of x
% 106.34/106.60 Found (x04 ex_intro0) as proof of Q
% 106.34/106.60 Found (x04 ex_intro0) as proof of Q
% 106.34/106.60 Found x20:=(x2 x10):((iff P) Q)
% 106.34/106.60 Found x20 as proof of ((iff P) Q)
% 106.34/106.60 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 106.34/106.60 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 106.34/106.60 Found eq_sym as proof of x
% 106.34/106.60 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 106.34/106.60 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 106.34/106.60 Found or_ind as proof of x
% 107.39/107.64 Found (x04 or_ind) as proof of Q
% 107.39/107.64 Found (x04 or_ind) as proof of Q
% 107.39/107.64 Found x000:R
% 107.39/107.64 Found (fun (x04:(x->Q))=> x000) as proof of R
% 107.39/107.64 Found (fun (x04:(x->Q))=> x000) as proof of ((x->Q)->R)
% 107.39/107.64 Found x10:=(x1 x20):R
% 107.39/107.64 Found (x1 x20) as proof of R
% 107.39/107.64 Found (x1 x20) as proof of R
% 107.39/107.64 Found x010:=(x01 x000):((iff P) Q)
% 107.39/107.64 Found (x01 x000) as proof of ((iff P) Q)
% 107.39/107.64 Found (x01 x000) as proof of ((iff P) Q)
% 107.39/107.64 Found x030:x
% 107.39/107.64 Instantiate: x:=P:Prop
% 107.39/107.64 Found x030 as proof of P
% 107.39/107.64 Found x010:=(x01 x000):((iff P) Q)
% 107.39/107.64 Found x010 as proof of ((iff P) Q)
% 107.39/107.64 Found x010:((iff P) Q)
% 107.39/107.64 Found (fun (x04:(x->Q))=> x010) as proof of ((iff P) Q)
% 107.39/107.64 Found (fun (x04:(x->Q))=> x010) as proof of ((x->Q)->((iff P) Q))
% 107.39/107.64 Found x010:=(x01 x001):((iff P) Q)
% 107.39/107.64 Found (x01 x001) as proof of ((iff P) Q)
% 107.39/107.64 Found (x01 x001) as proof of ((iff P) Q)
% 107.39/107.64 Found x000:=(x00 x012):R
% 107.39/107.64 Found (x00 x012) as proof of R
% 107.39/107.64 Found (x00 x012) as proof of R
% 107.39/107.64 Found x030:=(x03 x040):x
% 107.39/107.64 Instantiate: x:=P:Prop
% 107.39/107.64 Found (x03 x040) as proof of P
% 107.39/107.64 Found (x03 x040) as proof of P
% 107.39/107.64 Found x000:=(x00 x010):R
% 107.39/107.64 Found (x00 x010) as proof of R
% 107.39/107.64 Found (x00 x010) as proof of R
% 107.39/107.64 Found x021:Q
% 107.39/107.64 Instantiate: x:=Q:Prop
% 107.39/107.64 Found x021 as proof of x
% 107.39/107.64 Found x030:x
% 107.39/107.64 Instantiate: x:=P:Prop
% 107.39/107.64 Found x030 as proof of P
% 107.39/107.64 Found x010:=(x01 x000):((iff P) Q)
% 107.39/107.64 Found x010 as proof of ((iff P) Q)
% 107.39/107.64 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 107.39/107.64 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 107.39/107.64 Found eq_sym as proof of x
% 107.39/107.64 Found x02:((iff Q) x)
% 107.39/107.64 Instantiate: x:=P:Prop
% 107.39/107.64 Found x02 as proof of ((iff Q) P)
% 107.39/107.64 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 107.39/107.64 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 107.39/107.64 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 107.39/107.64 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 107.39/107.64 Found x010:x
% 107.39/107.64 Instantiate: x:=R:Prop
% 107.39/107.64 Found x010 as proof of R
% 107.39/107.64 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 107.39/107.64 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 107.39/107.64 Found eq_substitution as proof of x
% 107.39/107.64 Found (x04 eq_substitution) as proof of Q
% 107.39/107.64 Found (x04 eq_substitution) as proof of Q
% 107.39/107.64 Found (x2 (x04 eq_substitution)) as proof of P
% 107.39/107.64 Found (fun (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of P
% 107.39/107.64 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of ((Q->P)->P)
% 107.39/107.64 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of ((P->Q)->((Q->P)->P))
% 107.39/107.64 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 107.39/107.64 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 107.39/107.64 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 107.39/107.64 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 107.39/107.64 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))))) as proof of P
% 107.39/107.64 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))))) as proof of ((x->Q)->P)
% 107.39/107.64 Found x20:=(x2 x10):((iff P) Q)
% 107.39/107.64 Found (x2 x10) as proof of ((iff P) Q)
% 107.39/107.64 Found (x2 x10) as proof of ((iff P) Q)
% 107.39/107.64 Found x010:=(x01 x000):((iff P) Q)
% 107.39/107.64 Found x010 as proof of ((iff P) Q)
% 107.39/107.64 Found x010:=(x01 x000):((iff P) Q)
% 107.39/107.64 Found x010 as proof of ((iff P) Q)
% 107.39/107.64 Found x000:=(x00 x011):R
% 107.39/107.64 Found (x00 x011) as proof of R
% 107.39/107.64 Found (x00 x011) as proof of R
% 107.39/107.64 Found x030:=(x03 x040):x
% 107.39/107.64 Found (x03 x040) as proof of R
% 107.39/107.64 Found (x03 x040) as proof of R
% 107.39/107.64 Found (x03 x040) as proof of R
% 107.39/107.64 Found x010:=(x01 x000):((iff P) Q)
% 108.40/108.65 Found (x01 x000) as proof of ((iff P) Q)
% 108.40/108.65 Found (x01 x000) as proof of ((iff P) Q)
% 108.40/108.65 Found x010:=(x01 x000):((iff P) Q)
% 108.40/108.65 Found x010 as proof of ((iff P) Q)
% 108.40/108.65 Found x010:=(x01 x000):((iff P) Q)
% 108.40/108.65 Found x010 as proof of ((iff P) Q)
% 108.40/108.65 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 108.40/108.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 108.40/108.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 108.40/108.65 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 108.40/108.65 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 108.40/108.65 Found x20:=(x2 x10):((iff P) Q)
% 108.40/108.65 Found (x2 x10) as proof of ((iff P) Q)
% 108.40/108.65 Found (x2 x10) as proof of ((iff P) Q)
% 108.40/108.65 Found x010:=(x01 x001):((iff P) Q)
% 108.40/108.65 Found x010 as proof of ((iff P) Q)
% 108.40/108.65 Found x000:=(x00 x010):R
% 108.40/108.65 Found (x00 x010) as proof of R
% 108.40/108.65 Found (x00 x010) as proof of R
% 108.40/108.65 Found x010:=(x01 x000):((iff P) Q)
% 108.40/108.65 Found x010 as proof of ((iff P) Q)
% 108.40/108.65 Found x010:=(x01 x001):((iff P) Q)
% 108.40/108.65 Found x010 as proof of ((iff P) Q)
% 108.40/108.65 Found x030:=(x03 x040):x
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found x010:=(x01 x000):((iff P) Q)
% 108.40/108.65 Found x010 as proof of ((iff P) Q)
% 108.40/108.65 Found x010:=(x01 x000):((iff P) Q)
% 108.40/108.65 Found x010 as proof of ((iff P) Q)
% 108.40/108.65 Found x000:=(x00 x011):R
% 108.40/108.65 Found (x00 x011) as proof of R
% 108.40/108.65 Found (x00 x011) as proof of R
% 108.40/108.65 Found x030:=(x03 x040):x
% 108.40/108.65 Found (x03 x040) as proof of R
% 108.40/108.65 Found (x03 x040) as proof of R
% 108.40/108.65 Found (x03 x040) as proof of R
% 108.40/108.65 Found x030:=(x03 x040):x
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found x010:=(x01 x000):((iff P) Q)
% 108.40/108.65 Found (x01 x000) as proof of ((iff P) Q)
% 108.40/108.65 Found (x01 x000) as proof of ((iff P) Q)
% 108.40/108.65 Found x02:((iff Q) x)
% 108.40/108.65 Instantiate: x:=P:Prop
% 108.40/108.65 Found x02 as proof of ((iff Q) P)
% 108.40/108.65 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 108.40/108.65 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 108.40/108.65 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 108.40/108.65 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 108.40/108.65 Found x030:=(x03 x040):x
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found x030:=(x03 x040):x
% 108.40/108.65 Found (x03 x040) as proof of ((iff P) Q)
% 108.40/108.65 Found (x03 x040) as proof of ((iff P) Q)
% 108.40/108.65 Found (x03 x040) as proof of ((iff P) Q)
% 108.40/108.65 Found x02:((iff Q) x)
% 108.40/108.65 Instantiate: x:=P:Prop
% 108.40/108.65 Found x02 as proof of ((iff Q) P)
% 108.40/108.65 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 108.40/108.65 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 108.40/108.65 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 108.40/108.65 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 108.40/108.65 Found x000:=(x00 x012):R
% 108.40/108.65 Found (x00 x012) as proof of R
% 108.40/108.65 Found (x00 x012) as proof of R
% 108.40/108.65 Found x030:=(x03 x040):x
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found x030:=(x03 x040):x
% 108.40/108.65 Instantiate: x:=R:Prop
% 108.40/108.65 Found (x03 x040) as proof of R
% 108.40/108.65 Found (x03 x040) as proof of R
% 108.40/108.65 Found x030:=(x03 x040):x
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found (x03 x040) as proof of P
% 108.40/108.65 Found x010:=(x01 x001):((iff P) Q)
% 108.40/108.65 Found x010 as proof of ((iff P) Q)
% 108.40/108.65 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 108.40/108.65 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 108.40/108.65 Found eq_substitution as proof of x
% 108.40/108.65 Found (x06 eq_substitution) as proof of Q
% 108.40/108.65 Found (x06 eq_substitution) as proof of Q
% 108.40/108.65 Found (x04 (x06 eq_substitution)) as proof of P
% 108.40/108.65 Found (fun (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of P
% 108.40/108.65 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 108.40/108.65 Found (fun (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 108.40/108.65 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 108.40/108.65 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 108.40/108.65 Found (and_rect20 (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 109.09/109.39 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 109.09/109.39 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 109.09/109.39 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 109.09/109.39 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 109.09/109.39 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 109.09/109.39 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 109.09/109.39 Found eq_sym as proof of x
% 109.09/109.39 Found x010:=(x01 x001):((iff P) Q)
% 109.09/109.39 Found (x01 x001) as proof of ((iff P) Q)
% 109.09/109.39 Found (x01 x001) as proof of ((iff P) Q)
% 109.09/109.39 Found x010:=(x01 x001):((iff P) Q)
% 109.09/109.39 Found (x01 x001) as proof of ((iff P) Q)
% 109.09/109.39 Found (x01 x001) as proof of ((iff P) Q)
% 109.09/109.39 Found x030:x
% 109.09/109.39 Instantiate: x:=P:Prop
% 109.09/109.39 Found x030 as proof of P
% 109.09/109.39 Found x030:=(x03 x040):x
% 109.09/109.39 Found (x03 x040) as proof of ((iff P) Q)
% 109.09/109.39 Found (x03 x040) as proof of ((iff P) Q)
% 109.09/109.39 Found (x03 x040) as proof of ((iff P) Q)
% 109.09/109.39 Found x000:=(x00 x012):R
% 109.09/109.39 Found (x00 x012) as proof of R
% 109.09/109.39 Found (x00 x012) as proof of R
% 109.09/109.39 Found x010:=(x01 x001):((iff P) Q)
% 109.09/109.39 Found x010 as proof of ((iff P) Q)
% 109.09/109.39 Found x030:=(x03 x040):x
% 109.09/109.39 Instantiate: x:=P:Prop
% 109.09/109.39 Found (x03 x040) as proof of P
% 109.09/109.39 Found (x03 x040) as proof of P
% 109.09/109.39 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 109.09/109.39 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 109.09/109.39 Found eq_substitution as proof of x
% 109.09/109.39 Found (x06 eq_substitution) as proof of Q
% 109.09/109.39 Found (x06 eq_substitution) as proof of Q
% 109.09/109.39 Found (x05 (x06 eq_substitution)) as proof of P
% 109.09/109.39 Found (fun (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of P
% 109.09/109.39 Found (fun (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 109.09/109.39 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of ((Q->P)->((x->Q)->P))
% 109.09/109.39 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of ((P->Q)->((Q->P)->((x->Q)->P)))
% 109.09/109.39 Found (and_rect20 (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 109.09/109.39 Found ((and_rect2 ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 109.09/109.39 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 109.09/109.39 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 109.09/109.39 Found (fun (x03:(Q->x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))))) as proof of ((x->Q)->P)
% 109.09/109.39 Found (fun (x03:(Q->x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))))) as proof of ((Q->x)->((x->Q)->P))
% 109.09/109.39 Found x010:=(x01 x000):((iff P) Q)
% 109.09/109.39 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x001):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x000):((iff P) Q)
% 110.52/110.81 Found (x01 x000) as proof of ((iff P) Q)
% 110.52/110.81 Found (x01 x000) as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x001):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x000):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x000):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x020):x
% 110.52/110.81 Instantiate: x:=R:Prop
% 110.52/110.81 Found (x01 x020) as proof of R
% 110.52/110.81 Found (x01 x020) as proof of R
% 110.52/110.81 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 110.52/110.81 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x000):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x000):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x000):((iff P) Q)
% 110.52/110.81 Found (x01 x000) as proof of ((iff P) Q)
% 110.52/110.81 Found (x01 x000) as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x020):x
% 110.52/110.81 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 110.52/110.81 Found (x01 x020) as proof of ((iff P) Q)
% 110.52/110.81 Found (x01 x020) as proof of ((iff P) Q)
% 110.52/110.81 Found (x1 (x01 x020)) as proof of R
% 110.52/110.81 Found (x1 (x01 x020)) as proof of R
% 110.52/110.81 Found x20:=(x2 x10):((iff P) Q)
% 110.52/110.81 Found (x2 x10) as proof of ((iff P) Q)
% 110.52/110.81 Found (x2 x10) as proof of ((iff P) Q)
% 110.52/110.81 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 110.52/110.81 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 110.52/110.81 Found or_ind as proof of x
% 110.52/110.81 Found (x04 or_ind) as proof of Q
% 110.52/110.81 Found (x04 or_ind) as proof of Q
% 110.52/110.81 Found x20:=(x2 x10):((iff P) Q)
% 110.52/110.81 Found (x2 x10) as proof of ((iff P) Q)
% 110.52/110.81 Found (x2 x10) as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x000):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x030:x
% 110.52/110.81 Instantiate: x:=P:Prop
% 110.52/110.81 Found x030 as proof of P
% 110.52/110.81 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 110.52/110.81 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 110.52/110.81 Found eq_sym as proof of x
% 110.52/110.81 Found x000:=(x00 x011):R
% 110.52/110.81 Found (x00 x011) as proof of R
% 110.52/110.81 Found (x00 x011) as proof of R
% 110.52/110.81 Found x20:=(x2 x10):((iff P) Q)
% 110.52/110.81 Found (x2 x10) as proof of ((iff P) Q)
% 110.52/110.81 Found (x2 x10) as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x000):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x000):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x20:=(x2 x10):((iff P) Q)
% 110.52/110.81 Found (x2 x10) as proof of ((iff P) Q)
% 110.52/110.81 Found (x2 x10) as proof of ((iff P) Q)
% 110.52/110.81 Found x000:=(x00 x010):R
% 110.52/110.81 Found (x00 x010) as proof of R
% 110.52/110.81 Found (x00 x010) as proof of R
% 110.52/110.81 Found x030:=(x03 x040):x
% 110.52/110.81 Found (x03 x040) as proof of R
% 110.52/110.81 Found (x03 x040) as proof of R
% 110.52/110.81 Found (x03 x040) as proof of R
% 110.52/110.81 Found x030:=(x03 x020):P
% 110.52/110.81 Found (x03 x020) as proof of P
% 110.52/110.81 Found (x03 x020) as proof of P
% 110.52/110.81 Found x010:=(x01 x000):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x001):((iff P) Q)
% 110.52/110.81 Found (x01 x001) as proof of ((iff P) Q)
% 110.52/110.81 Found (x01 x001) as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x020):x
% 110.52/110.81 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 110.52/110.81 Found (x01 x020) as proof of ((iff P) Q)
% 110.52/110.81 Found (x01 x020) as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x021):x
% 110.52/110.81 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 110.52/110.81 Found (x01 x021) as proof of ((R->((iff P) Q))->P)
% 110.52/110.81 Found (x01 x021) as proof of ((R->((iff P) Q))->P)
% 110.52/110.81 Found x010:=(x01 x020):x
% 110.52/110.81 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 110.52/110.81 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 110.52/110.81 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 110.52/110.81 Found x030:=(x03 x040):x
% 110.52/110.81 Found (x03 x040) as proof of P
% 110.52/110.81 Found (x03 x040) as proof of P
% 110.52/110.81 Found (x03 x040) as proof of P
% 110.52/110.81 Found x010:=(x01 x000):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x000):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x030:=(x03 x040):x
% 110.52/110.81 Found (x03 x040) as proof of R
% 110.52/110.81 Found (x03 x040) as proof of R
% 110.52/110.81 Found (x03 x040) as proof of R
% 110.52/110.81 Found x010:=(x01 x002):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x010:=(x01 x000):((iff P) Q)
% 110.52/110.81 Found x010 as proof of ((iff P) Q)
% 110.52/110.81 Found x030:=(x03 x040):x
% 110.52/110.81 Found (x03 x040) as proof of P
% 110.52/110.81 Found (x03 x040) as proof of P
% 110.52/110.81 Found (x03 x040) as proof of P
% 110.52/110.81 Found x000:=(x00 x010):R
% 110.52/110.81 Found (x00 x010) as proof of R
% 111.62/111.92 Found (x00 x010) as proof of R
% 111.62/111.92 Found x030:=(x03 x040):x
% 111.62/111.92 Found (x03 x040) as proof of P
% 111.62/111.92 Found (x03 x040) as proof of P
% 111.62/111.92 Found (x03 x040) as proof of P
% 111.62/111.92 Found x030:=(x03 x040):x
% 111.62/111.92 Found (x03 x040) as proof of P
% 111.62/111.92 Found (x03 x040) as proof of P
% 111.62/111.92 Found (x03 x040) as proof of P
% 111.62/111.92 Found x030:=(x03 x040):x
% 111.62/111.92 Found (x03 x040) as proof of ((iff P) Q)
% 111.62/111.92 Found (x03 x040) as proof of ((iff P) Q)
% 111.62/111.92 Found (x03 x040) as proof of ((iff P) Q)
% 111.62/111.92 Found x010:=(x01 x000):((iff P) Q)
% 111.62/111.92 Found x010 as proof of ((iff P) Q)
% 111.62/111.92 Found x030:=(x03 x040):x
% 111.62/111.92 Found (x03 x040) as proof of P
% 111.62/111.92 Found (x03 x040) as proof of P
% 111.62/111.92 Found (x03 x040) as proof of P
% 111.62/111.92 Found x030:=(x03 x040):x
% 111.62/111.92 Found (x03 x040) as proof of ((iff P) Q)
% 111.62/111.92 Found (x03 x040) as proof of ((iff P) Q)
% 111.62/111.92 Found (x03 x040) as proof of ((iff P) Q)
% 111.62/111.92 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 111.62/111.92 Found (iff_refl Q) as proof of ((iff Q) x)
% 111.62/111.92 Found (iff_refl Q) as proof of ((iff Q) x)
% 111.62/111.92 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 111.62/111.92 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 111.62/111.92 Found x000:=(x00 x010):R
% 111.62/111.92 Found (x00 x010) as proof of R
% 111.62/111.92 Found (x00 x010) as proof of R
% 111.62/111.92 Found x010:=(x01 x000):((iff P) Q)
% 111.62/111.92 Found x010 as proof of ((iff P) Q)
% 111.62/111.92 Found x010:=(x01 x000):((iff P) Q)
% 111.62/111.92 Found x010 as proof of ((iff P) Q)
% 111.62/111.92 Found x040:Q
% 111.62/111.92 Found x040 as proof of Q
% 111.62/111.92 Found (x03 x040) as proof of P
% 111.62/111.92 Found (x03 x040) as proof of P
% 111.62/111.92 Found (x03 x040) as proof of P
% 111.62/111.92 Found x010:=(x01 x000):((iff P) Q)
% 111.62/111.92 Found x010 as proof of ((iff P) Q)
% 111.62/111.92 Found x010:=(x01 x000):((iff P) Q)
% 111.62/111.92 Found x010 as proof of ((iff P) Q)
% 111.62/111.92 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 111.62/111.92 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 111.62/111.92 Found or_ind as proof of x
% 111.62/111.92 Found (x04 or_ind) as proof of Q
% 111.62/111.92 Found (x04 or_ind) as proof of Q
% 111.62/111.92 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 111.62/111.92 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 111.62/111.92 Found eq_substitution as proof of x
% 111.62/111.92 Found (x06 eq_substitution) as proof of Q
% 111.62/111.92 Found (x06 eq_substitution) as proof of Q
% 111.62/111.92 Found (x05 (x06 eq_substitution)) as proof of P
% 111.62/111.92 Found (fun (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of P
% 111.62/111.92 Found (fun (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 111.62/111.92 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of ((Q->P)->((x->Q)->P))
% 111.62/111.92 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))) as proof of ((P->Q)->((Q->P)->((x->Q)->P)))
% 111.62/111.92 Found (and_rect20 (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 111.62/111.92 Found ((and_rect2 ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 111.62/111.92 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 111.62/111.92 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution)))) as proof of ((x->Q)->P)
% 111.62/111.92 Found (fun (x03:(Q->x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))))) as proof of ((x->Q)->P)
% 111.62/111.92 Found (fun (x03:(Q->x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 eq_substitution))))) as proof of ((Q->x)->((x->Q)->P))
% 111.62/111.92 Found x010:=(x01 x000):((iff P) Q)
% 111.62/111.92 Found x010 as proof of ((iff P) Q)
% 111.62/111.92 Found x010:=(x01 x000):((iff P) Q)
% 111.62/111.92 Found x010 as proof of ((iff P) Q)
% 111.62/111.92 Found x010:=(x01 x000):((iff P) Q)
% 111.62/111.92 Found (x01 x000) as proof of ((iff P) Q)
% 112.98/113.26 Found (x01 x000) as proof of ((iff P) Q)
% 112.98/113.26 Found x010:=(x01 x000):((iff P) Q)
% 112.98/113.26 Found x010 as proof of ((iff P) Q)
% 112.98/113.26 Found x010:x
% 112.98/113.26 Found x010 as proof of x
% 112.98/113.26 Found x010:=(x01 x000):((iff P) Q)
% 112.98/113.26 Found x010 as proof of ((iff P) Q)
% 112.98/113.26 Found x010:=(x01 x000):((iff P) Q)
% 112.98/113.26 Found x010 as proof of ((iff P) Q)
% 112.98/113.26 Found x010:x
% 112.98/113.26 Found x010 as proof of Q
% 112.98/113.26 Found x010:=(x01 x000):((iff P) Q)
% 112.98/113.26 Found x010 as proof of ((iff P) Q)
% 112.98/113.26 Found x010:=(x01 x000):((iff P) Q)
% 112.98/113.26 Found x010 as proof of ((iff P) Q)
% 112.98/113.26 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 112.98/113.26 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 112.98/113.26 Found or_ind as proof of x
% 112.98/113.26 Found (x04 or_ind) as proof of Q
% 112.98/113.26 Found (x04 or_ind) as proof of Q
% 112.98/113.26 Found x010:=(x01 x000):((iff P) Q)
% 112.98/113.26 Found x010 as proof of ((iff P) Q)
% 112.98/113.26 Found x010:=(x01 x000):((iff P) Q)
% 112.98/113.26 Found x010 as proof of ((iff P) Q)
% 112.98/113.26 Found x030:x
% 112.98/113.26 Instantiate: x:=P:Prop
% 112.98/113.26 Found (fun (x04:(x->Q))=> x030) as proof of P
% 112.98/113.26 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 112.98/113.26 Found x000:=(x00 x011):R
% 112.98/113.26 Found (x00 x011) as proof of R
% 112.98/113.26 Found (x00 x011) as proof of R
% 112.98/113.26 Found x000:=(x00 x011):R
% 112.98/113.26 Found (x00 x011) as proof of R
% 112.98/113.26 Found (x00 x011) as proof of R
% 112.98/113.26 Found x010:=(x01 x020):x
% 112.98/113.26 Instantiate: x:=R:Prop
% 112.98/113.26 Found (x01 x020) as proof of R
% 112.98/113.26 Found (x01 x020) as proof of R
% 112.98/113.26 Found x20:=(x2 x10):((iff P) Q)
% 112.98/113.26 Found x20 as proof of ((iff P) Q)
% 112.98/113.26 Found x010:=(x01 x000):((iff P) Q)
% 112.98/113.26 Found x010 as proof of ((iff P) Q)
% 112.98/113.26 Found x010:=(x01 x000):((iff P) Q)
% 112.98/113.26 Found x010 as proof of ((iff P) Q)
% 112.98/113.26 Found x000:=(x00 x011):R
% 112.98/113.26 Found (x00 x011) as proof of R
% 112.98/113.26 Found (x00 x011) as proof of R
% 112.98/113.26 Found x010:=(x01 x000):((iff P) Q)
% 112.98/113.26 Found (x01 x000) as proof of ((iff P) Q)
% 112.98/113.26 Found (x01 x000) as proof of ((iff P) Q)
% 112.98/113.26 Found x000:=(x00 x012):R
% 112.98/113.26 Found (x00 x012) as proof of R
% 112.98/113.26 Found (x00 x012) as proof of R
% 112.98/113.26 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 112.98/113.26 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 112.98/113.26 Found eq_substitution as proof of x
% 112.98/113.26 Found (x04 eq_substitution) as proof of Q
% 112.98/113.26 Found (x04 eq_substitution) as proof of Q
% 112.98/113.26 Found (x2 (x04 eq_substitution)) as proof of P
% 112.98/113.26 Found (fun (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of P
% 112.98/113.26 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of ((Q->P)->P)
% 112.98/113.26 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of ((P->Q)->((Q->P)->P))
% 112.98/113.26 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 112.98/113.26 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 112.98/113.26 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 112.98/113.26 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 112.98/113.26 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))))) as proof of P
% 112.98/113.26 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))))) as proof of ((x->Q)->P)
% 112.98/113.26 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))))) as proof of ((Q->x)->((x->Q)->P))
% 112.98/113.26 Found x010:=(x01 x001):((iff P) Q)
% 112.98/113.26 Found x010 as proof of ((iff P) Q)
% 112.98/113.26 Found x010:=(x01 x001):((iff P) Q)
% 112.98/113.26 Found (x01 x001) as proof of ((iff P) Q)
% 112.98/113.26 Found (x01 x001) as proof of ((iff P) Q)
% 112.98/113.26 Found x010:=(x01 x000):((iff P) Q)
% 112.98/113.26 Found x010 as proof of ((iff P) Q)
% 112.98/113.26 Found x10:=(x1 x20):R
% 112.98/113.26 Found (x1 x20) as proof of R
% 113.90/114.17 Found (x1 x20) as proof of R
% 113.90/114.17 Found x010:=(x01 x020):x
% 113.90/114.17 Instantiate: x:=R:Prop
% 113.90/114.17 Found (x01 x020) as proof of R
% 113.90/114.17 Found (x01 x020) as proof of R
% 113.90/114.17 Found x010:=(x01 x020):x
% 113.90/114.17 Instantiate: x:=R:Prop
% 113.90/114.17 Found (x01 x020) as proof of R
% 113.90/114.17 Found (x01 x020) as proof of R
% 113.90/114.17 Found x000:=(x00 x012):R
% 113.90/114.17 Found (x00 x012) as proof of R
% 113.90/114.17 Found (x00 x012) as proof of R
% 113.90/114.17 Found x010:=(x01 x000):((iff P) Q)
% 113.90/114.17 Found x010 as proof of ((iff P) Q)
% 113.90/114.17 Found x010:=(x01 x000):((iff P) Q)
% 113.90/114.17 Found x010 as proof of ((iff P) Q)
% 113.90/114.17 Found x010:=(x01 x001):((iff P) Q)
% 113.90/114.17 Found x010 as proof of ((iff P) Q)
% 113.90/114.17 Found x010:=(x01 x001):((iff P) Q)
% 113.90/114.17 Found (x01 x001) as proof of ((iff P) Q)
% 113.90/114.17 Found (x01 x001) as proof of ((iff P) Q)
% 113.90/114.17 Found x010:=(x01 x001):((iff P) Q)
% 113.90/114.17 Found (x01 x001) as proof of ((iff P) Q)
% 113.90/114.17 Found (x01 x001) as proof of ((iff P) Q)
% 113.90/114.17 Found x010:=(x01 x020):x
% 113.90/114.17 Instantiate: x:=P:Prop
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found x010:=(x01 x021):x
% 113.90/114.17 Instantiate: x:=P:Prop
% 113.90/114.17 Found (x01 x021) as proof of P
% 113.90/114.17 Found (x01 x021) as proof of P
% 113.90/114.17 Found x000:=(x00 x012):R
% 113.90/114.17 Found (x00 x012) as proof of R
% 113.90/114.17 Found (x00 x012) as proof of R
% 113.90/114.17 Found x010:=(x01 x020):x
% 113.90/114.17 Instantiate: x:=P:Prop
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found x010:=(x01 x020):x
% 113.90/114.17 Instantiate: x:=P:Prop
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found x010:=(x01 x020):x
% 113.90/114.17 Instantiate: x:=P:Prop
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found x000:=(x00 x010):R
% 113.90/114.17 Found (x00 x010) as proof of R
% 113.90/114.17 Found (x00 x010) as proof of R
% 113.90/114.17 Found x010:=(x01 x000):((iff P) Q)
% 113.90/114.17 Found x010 as proof of ((iff P) Q)
% 113.90/114.17 Found x030:=(x03 x020):P
% 113.90/114.17 Found (x03 x020) as proof of P
% 113.90/114.17 Found (x03 x020) as proof of P
% 113.90/114.17 Found x010:=(x01 x000):((iff P) Q)
% 113.90/114.17 Found x010 as proof of ((iff P) Q)
% 113.90/114.17 Found x020:Q
% 113.90/114.17 Found x020 as proof of Q
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 113.90/114.17 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 113.90/114.17 Found x010:=(x01 x001):((iff P) Q)
% 113.90/114.17 Found x010 as proof of ((iff P) Q)
% 113.90/114.17 Found x040:Q
% 113.90/114.17 Found x040 as proof of Q
% 113.90/114.17 Found (x03 x040) as proof of P
% 113.90/114.17 Found (x03 x040) as proof of P
% 113.90/114.17 Found (x03 x040) as proof of P
% 113.90/114.17 Found x021:Q
% 113.90/114.17 Found x021 as proof of Q
% 113.90/114.17 Found (x01 x021) as proof of P
% 113.90/114.17 Found (x01 x021) as proof of P
% 113.90/114.17 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 113.90/114.17 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 113.90/114.17 Found x010:=(x01 x020):x
% 113.90/114.17 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 113.90/114.17 Found (x01 x020) as proof of ((iff P) Q)
% 113.90/114.17 Found (x01 x020) as proof of ((iff P) Q)
% 113.90/114.17 Found x010:=(x01 x020):x
% 113.90/114.17 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 113.90/114.17 Found (x01 x020) as proof of ((iff P) Q)
% 113.90/114.17 Found (x01 x020) as proof of ((iff P) Q)
% 113.90/114.17 Found x010:=(x01 x020):x
% 113.90/114.17 Instantiate: x:=R:Prop
% 113.90/114.17 Found (x01 x020) as proof of R
% 113.90/114.17 Found (x01 x020) as proof of R
% 113.90/114.17 Found x000:=(x00 x011):R
% 113.90/114.17 Found (x00 x011) as proof of R
% 113.90/114.17 Found (x00 x011) as proof of R
% 113.90/114.17 Found x010:=(x01 x000):((iff P) Q)
% 113.90/114.17 Found x010 as proof of ((iff P) Q)
% 113.90/114.17 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 113.90/114.17 Found (iff_refl Q) as proof of ((iff Q) x)
% 113.90/114.17 Found (iff_refl Q) as proof of ((iff Q) x)
% 113.90/114.17 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 113.90/114.17 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 113.90/114.17 Found x010:=(x01 x020):x
% 113.90/114.17 Instantiate: x:=P:Prop
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found x010:=(x01 x021):x
% 113.90/114.17 Instantiate: x:=P:Prop
% 113.90/114.17 Found (x01 x021) as proof of P
% 113.90/114.17 Found (x01 x021) as proof of P
% 113.90/114.17 Found x010:=(x01 x020):x
% 113.90/114.17 Instantiate: x:=P:Prop
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found x010:=(x01 x020):x
% 113.90/114.17 Instantiate: x:=P:Prop
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found x10:=(x1 x20):R
% 113.90/114.17 Found (x1 x20) as proof of R
% 113.90/114.17 Found (x1 x20) as proof of R
% 113.90/114.17 Found x010:=(x01 x020):x
% 113.90/114.17 Instantiate: x:=P:Prop
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found (x01 x020) as proof of P
% 113.90/114.17 Found x010:=(x01 x000):((iff P) Q)
% 113.90/114.17 Found x010 as proof of ((iff P) Q)
% 113.90/114.17 Found x030:=(x03 x020):P
% 113.90/114.17 Found (x03 x020) as proof of P
% 113.90/114.17 Found (x03 x020) as proof of P
% 113.90/114.17 Found x030:=(x03 x020):P
% 113.90/114.17 Found (x03 x020) as proof of P
% 113.90/114.17 Found (x03 x020) as proof of P
% 115.64/115.89 Found x030:=(x03 x021):P
% 115.64/115.89 Found (x03 x021) as proof of P
% 115.64/115.89 Found (x03 x021) as proof of P
% 115.64/115.89 Found x20:=(x2 x10):((iff P) Q)
% 115.64/115.89 Found (x2 x10) as proof of ((iff P) Q)
% 115.64/115.89 Found (x2 x10) as proof of ((iff P) Q)
% 115.64/115.89 Found x020:=(x02 x030):Q
% 115.64/115.89 Found (x02 x030) as proof of Q
% 115.64/115.89 Found (x02 x030) as proof of Q
% 115.64/115.89 Found x020:=(x02 x031):Q
% 115.64/115.89 Found (x02 x031) as proof of Q
% 115.64/115.89 Found (x02 x031) as proof of Q
% 115.64/115.89 Found x030:=(x03 x021):P
% 115.64/115.89 Found (x03 x021) as proof of P
% 115.64/115.89 Found (x03 x021) as proof of P
% 115.64/115.89 Found x030:=(x03 x040):x
% 115.64/115.89 Found (x03 x040) as proof of P
% 115.64/115.89 Found (x03 x040) as proof of P
% 115.64/115.89 Found (x03 x040) as proof of P
% 115.64/115.89 Found x040:Q
% 115.64/115.89 Found x040 as proof of Q
% 115.64/115.89 Found (x03 x040) as proof of P
% 115.64/115.89 Found (x03 x040) as proof of P
% 115.64/115.89 Found (x03 x040) as proof of P
% 115.64/115.89 Found x010:=(x01 x020):x
% 115.64/115.89 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 115.64/115.89 Found (x01 x020) as proof of ((iff P) Q)
% 115.64/115.89 Found (x01 x020) as proof of ((iff P) Q)
% 115.64/115.89 Found x010:=(x01 x000):((iff P) Q)
% 115.64/115.89 Found x010 as proof of ((iff P) Q)
% 115.64/115.89 Found x010:=(x01 x020):x
% 115.64/115.89 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 115.64/115.89 Found (x01 x020) as proof of ((iff P) Q)
% 115.64/115.89 Found (x01 x020) as proof of ((iff P) Q)
% 115.64/115.89 Found x030:x
% 115.64/115.89 Instantiate: x:=P:Prop
% 115.64/115.89 Found (fun (x04:(x->Q))=> x030) as proof of P
% 115.64/115.89 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 115.64/115.89 Found x000:=(x00 x011):R
% 115.64/115.89 Found (x00 x011) as proof of R
% 115.64/115.89 Found (x00 x011) as proof of R
% 115.64/115.89 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 115.64/115.89 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 115.64/115.89 Found or_ind as proof of x
% 115.64/115.89 Found (x04 or_ind) as proof of Q
% 115.64/115.89 Found (x04 or_ind) as proof of Q
% 115.64/115.89 Found x20:=(x2 x10):((iff P) Q)
% 115.64/115.89 Found (x2 x10) as proof of ((iff P) Q)
% 115.64/115.89 Found (x2 x10) as proof of ((iff P) Q)
% 115.64/115.89 Found x010:=(x01 x000):((iff P) Q)
% 115.64/115.89 Found x010 as proof of ((iff P) Q)
% 115.64/115.89 Found x010:=(x01 x001):((iff P) Q)
% 115.64/115.89 Found (x01 x001) as proof of ((iff P) Q)
% 115.64/115.89 Found (x01 x001) as proof of ((iff P) Q)
% 115.64/115.89 Found x010:=(x01 x000):((iff P) Q)
% 115.64/115.89 Found (x01 x000) as proof of ((iff P) Q)
% 115.64/115.89 Found (x01 x000) as proof of ((iff P) Q)
% 115.64/115.89 Found x000:=(x00 x012):R
% 115.64/115.89 Found (x00 x012) as proof of R
% 115.64/115.89 Found (x00 x012) as proof of R
% 115.64/115.89 Found x010:=(x01 x000):((iff P) Q)
% 115.64/115.89 Found (x01 x000) as proof of ((iff P) Q)
% 115.64/115.89 Found (x01 x000) as proof of ((iff P) Q)
% 115.64/115.89 Found x040:Q
% 115.64/115.89 Found x040 as proof of Q
% 115.64/115.89 Found (x03 x040) as proof of P
% 115.64/115.89 Found (x03 x040) as proof of P
% 115.64/115.89 Found (x03 x040) as proof of P
% 115.64/115.89 Found x000:=(x00 x012):R
% 115.64/115.89 Found (x00 x012) as proof of R
% 115.64/115.89 Found (x00 x012) as proof of R
% 115.64/115.89 Found x010:=(x01 x000):((iff P) Q)
% 115.64/115.89 Found (x01 x000) as proof of ((iff P) Q)
% 115.64/115.89 Found (x01 x000) as proof of ((iff P) Q)
% 115.64/115.89 Found x030:=(x03 x040):x
% 115.64/115.89 Instantiate: x:=P:Prop
% 115.64/115.89 Found (x03 x040) as proof of P
% 115.64/115.89 Found (x03 x040) as proof of P
% 115.64/115.89 Found x010:=(x01 x002):((iff P) Q)
% 115.64/115.89 Found x010 as proof of ((iff P) Q)
% 115.64/115.89 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 115.64/115.89 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 115.64/115.89 Found or_ind as proof of x
% 115.64/115.89 Found (x04 or_ind) as proof of Q
% 115.64/115.89 Found (x04 or_ind) as proof of Q
% 115.64/115.89 Found x000:=(x00 x011):R
% 115.64/115.89 Found (x00 x011) as proof of R
% 115.64/115.89 Found (x00 x011) as proof of R
% 115.64/115.89 Found x030:x
% 115.64/115.89 Instantiate: x:=P:Prop
% 115.64/115.89 Found (fun (x04:(x->Q))=> x030) as proof of P
% 115.64/115.89 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 115.64/115.89 Found x10:=(x1 x20):R
% 115.64/115.89 Found (x1 x20) as proof of R
% 115.64/115.89 Found (x1 x20) as proof of R
% 115.64/115.89 Found x20:=(x2 x10):((iff P) Q)
% 115.64/115.89 Found x20 as proof of ((iff P) Q)
% 115.64/115.89 Found x010:=(x01 x002):((iff P) Q)
% 115.64/115.89 Found x010 as proof of ((iff P) Q)
% 115.64/115.89 Found x000:R
% 115.64/115.89 Found (fun (x04:(x->Q))=> x000) as proof of R
% 115.64/115.89 Found (fun (x03:(Q->x)) (x04:(x->Q))=> x000) as proof of ((x->Q)->R)
% 115.64/115.89 Found (fun (x03:(Q->x)) (x04:(x->Q))=> x000) as proof of ((Q->x)->((x->Q)->R))
% 115.64/115.89 Found x000:=(x00 x011):R
% 115.64/115.89 Found (x00 x011) as proof of R
% 115.64/115.89 Found (x00 x011) as proof of R
% 115.64/115.89 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 115.64/115.89 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 115.64/115.89 Found eq_substitution as proof of x
% 116.59/116.87 Found (x04 eq_substitution) as proof of Q
% 116.59/116.87 Found (x04 eq_substitution) as proof of Q
% 116.59/116.87 Found (x2 (x04 eq_substitution)) as proof of P
% 116.59/116.87 Found (fun (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of P
% 116.59/116.87 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of ((Q->P)->P)
% 116.59/116.87 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))) as proof of ((P->Q)->((Q->P)->P))
% 116.59/116.87 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 116.59/116.87 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 116.59/116.87 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 116.59/116.87 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution)))) as proof of P
% 116.59/116.87 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))))) as proof of P
% 116.59/116.87 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))))) as proof of ((x->Q)->P)
% 116.59/116.87 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 eq_substitution))))) as proof of ((Q->x)->((x->Q)->P))
% 116.59/116.87 Found x010:=(x01 x000):((iff P) Q)
% 116.59/116.87 Found x010 as proof of ((iff P) Q)
% 116.59/116.87 Found x010:=(x01 x000):((iff P) Q)
% 116.59/116.87 Found x010 as proof of ((iff P) Q)
% 116.59/116.87 Found x030:x
% 116.59/116.87 Instantiate: x:=P:Prop
% 116.59/116.87 Found (fun (x04:(x->Q))=> x030) as proof of P
% 116.59/116.87 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 116.59/116.87 Found x010:=(x01 x000):((iff P) Q)
% 116.59/116.87 Found (x01 x000) as proof of ((iff P) Q)
% 116.59/116.87 Found (x01 x000) as proof of ((iff P) Q)
% 116.59/116.87 Found x20:=(x2 x10):((iff P) Q)
% 116.59/116.87 Found (x2 x10) as proof of ((iff P) Q)
% 116.59/116.87 Found (x2 x10) as proof of ((iff P) Q)
% 116.59/116.87 Found x010:=(x01 x000):((iff P) Q)
% 116.59/116.87 Found x010 as proof of ((iff P) Q)
% 116.59/116.87 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 116.59/116.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 116.59/116.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 116.59/116.87 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 116.59/116.87 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 116.59/116.87 Found x010:=(x01 x001):((iff P) Q)
% 116.59/116.87 Found (x01 x001) as proof of ((iff P) Q)
% 116.59/116.87 Found (x01 x001) as proof of ((iff P) Q)
% 116.59/116.87 Found x010:=(x01 x001):((iff P) Q)
% 116.59/116.87 Found x010 as proof of ((iff P) Q)
% 116.59/116.87 Found x010:=(x01 x001):((iff P) Q)
% 116.59/116.87 Found x010 as proof of ((iff P) Q)
% 116.59/116.87 Found x010:=(x01 x001):((iff P) Q)
% 116.59/116.87 Found (x01 x001) as proof of ((iff P) Q)
% 116.59/116.87 Found (x01 x001) as proof of ((iff P) Q)
% 116.59/116.87 Found x010:=(x01 x000):((iff P) Q)
% 116.59/116.87 Found x010 as proof of ((iff P) Q)
% 116.59/116.87 Found x010:=(x01 x000):((iff P) Q)
% 116.59/116.87 Found x010 as proof of ((iff P) Q)
% 116.59/116.87 Found x040:Q
% 116.59/116.87 Found x040 as proof of Q
% 116.59/116.87 Found (x03 x040) as proof of P
% 116.59/116.87 Found (x03 x040) as proof of P
% 116.59/116.87 Found (x03 x040) as proof of P
% 116.59/116.87 Found x030:=(x03 x040):x
% 116.59/116.87 Found (x03 x040) as proof of P
% 116.59/116.87 Found (x03 x040) as proof of P
% 116.59/116.87 Found (x03 x040) as proof of P
% 116.59/116.87 Found x010:=(x01 x000):((iff P) Q)
% 116.59/116.87 Found x010 as proof of ((iff P) Q)
% 116.59/116.87 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 116.59/116.87 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 116.59/116.87 Found eq_sym as proof of x
% 116.59/116.87 Found (x02 eq_sym) as proof of Q
% 116.59/116.87 Found (x02 eq_sym) as proof of Q
% 116.59/116.87 Found x010:=(x01 x000):((iff P) Q)
% 116.59/116.87 Found x010 as proof of ((iff P) Q)
% 116.59/116.87 Found x030:=(x03 x040):x
% 116.59/116.87 Found (x03 x040) as proof of P
% 116.59/116.87 Found (x03 x040) as proof of P
% 116.59/116.87 Found (x03 x040) as proof of P
% 116.59/116.87 Found x00:((iff Q) x)
% 116.59/116.87 Instantiate: x:=P:Prop
% 116.59/116.87 Found x00 as proof of ((iff Q) P)
% 116.59/116.87 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 116.59/116.87 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 116.59/116.87 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 116.59/116.87 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x001):((iff P) Q)
% 118.93/119.19 Found (x01 x001) as proof of ((iff P) Q)
% 118.93/119.19 Found (x01 x001) as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x001):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x030:x
% 118.93/119.19 Instantiate: x:=P:Prop
% 118.93/119.19 Found (fun (x04:(x->Q))=> x030) as proof of P
% 118.93/119.19 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 118.93/119.19 Found x010:=(x01 x001):((iff P) Q)
% 118.93/119.19 Found (x01 x001) as proof of ((iff P) Q)
% 118.93/119.19 Found (x01 x001) as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found (x01 x000) as proof of ((iff P) Q)
% 118.93/119.19 Found (x01 x000) as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found (x01 x000) as proof of ((iff P) Q)
% 118.93/119.19 Found (x01 x000) as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found (x01 x000) as proof of ((iff P) Q)
% 118.93/119.19 Found (x01 x000) as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x040:Q
% 118.93/119.19 Found x040 as proof of Q
% 118.93/119.19 Found (x03 x040) as proof of P
% 118.93/119.19 Found (x03 x040) as proof of P
% 118.93/119.19 Found (x03 x040) as proof of P
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x001):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x000:R
% 118.93/119.19 Found (fun (x04:(x->Q))=> x000) as proof of R
% 118.93/119.19 Found (fun (x04:(x->Q))=> x000) as proof of ((x->Q)->R)
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x001):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x010:((iff P) Q)
% 118.93/119.19 Found (fun (x04:(x->Q))=> x010) as proof of ((iff P) Q)
% 118.93/119.19 Found (fun (x04:(x->Q))=> x010) as proof of ((x->Q)->((iff P) Q))
% 118.93/119.19 Found x010:=(x01 x021):x
% 118.93/119.19 Found (x01 x021) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 118.93/119.19 Found (x01 x021) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 118.93/119.19 Found (x01 x021) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 118.93/119.19 Found iff_sym100:=(iff_sym10 x010):((iff Q) P)
% 118.93/119.19 Found (iff_sym10 x010) as proof of ((iff Q) P)
% 118.93/119.19 Found ((iff_sym1 Q) x010) as proof of ((iff Q) P)
% 118.93/119.19 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 118.93/119.19 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x030:x
% 118.93/119.19 Instantiate: x:=P:Prop
% 118.93/119.19 Found (fun (x04:(x->Q))=> x030) as proof of P
% 118.93/119.19 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 118.93/119.19 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 118.93/119.19 Found (iff_refl Q) as proof of ((iff Q) x)
% 118.93/119.19 Found (iff_refl Q) as proof of ((iff Q) x)
% 118.93/119.19 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 118.93/119.19 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 118.93/119.19 Found x10:=(x1 x20):R
% 118.93/119.19 Found (x1 x20) as proof of R
% 118.93/119.19 Found (x1 x20) as proof of R
% 118.93/119.19 Found x000:=(x00 x010):R
% 118.93/119.19 Found (x00 x010) as proof of R
% 118.93/119.19 Found (x00 x010) as proof of R
% 118.93/119.19 Found x000:=(x00 x011):R
% 118.93/119.19 Found (x00 x011) as proof of R
% 118.93/119.19 Found (x00 x011) as proof of R
% 118.93/119.19 Found x010:=(x01 x001):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x001):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x000:=(x00 x011):R
% 118.93/119.19 Found (x00 x011) as proof of R
% 118.93/119.19 Found (x00 x011) as proof of R
% 118.93/119.19 Found x10:=(x1 x20):R
% 118.93/119.19 Found (x1 x20) as proof of R
% 118.93/119.19 Found (x1 x20) as proof of R
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x000):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x001):((iff P) Q)
% 118.93/119.19 Found x010 as proof of ((iff P) Q)
% 118.93/119.19 Found x010:=(x01 x021):x
% 118.93/119.19 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 118.93/119.19 Found (x01 x021) as proof of ((R->((iff P) Q))->P)
% 118.93/119.19 Found (fun (x1:(((iff P) Q)->R))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 118.93/119.19 Found (fun (x1:(((iff P) Q)->R))=> (x01 x021)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 118.93/119.19 Found x000:=(x00 x010):R
% 118.93/119.19 Found (x00 x010) as proof of R
% 118.93/119.19 Found (x00 x010) as proof of R
% 118.93/119.19 Found x030:=(x03 x040):x
% 118.93/119.19 Found (x03 x040) as proof of P
% 120.93/121.21 Found (x03 x040) as proof of P
% 120.93/121.21 Found (x03 x040) as proof of P
% 120.93/121.21 Found x000:=(x00 x010):R
% 120.93/121.21 Found (x00 x010) as proof of R
% 120.93/121.21 Found (x00 x010) as proof of R
% 120.93/121.21 Found x010:=(x01 x002):((iff P) Q)
% 120.93/121.21 Found x010 as proof of ((iff P) Q)
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found x010 as proof of ((iff P) Q)
% 120.93/121.21 Found x010:=(x01 x001):((iff P) Q)
% 120.93/121.21 Found (x01 x001) as proof of ((iff P) Q)
% 120.93/121.21 Found (x01 x001) as proof of ((iff P) Q)
% 120.93/121.21 Found x20:=(x2 x10):((iff P) Q)
% 120.93/121.21 Found (x2 x10) as proof of ((iff P) Q)
% 120.93/121.21 Found (x2 x10) as proof of ((iff P) Q)
% 120.93/121.21 Found x010:=(x01 x001):((iff P) Q)
% 120.93/121.21 Found (x01 x001) as proof of ((iff P) Q)
% 120.93/121.21 Found (x01 x001) as proof of ((iff P) Q)
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found x010 as proof of ((iff P) Q)
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found x010 as proof of ((iff P) Q)
% 120.93/121.21 Found x000:=(x00 x012):R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found x030:=(x03 x040):x
% 120.93/121.21 Found (x03 x040) as proof of P
% 120.93/121.21 Found (x03 x040) as proof of P
% 120.93/121.21 Found (x03 x040) as proof of P
% 120.93/121.21 Found x030:=(x03 x040):x
% 120.93/121.21 Instantiate: x:=R:Prop
% 120.93/121.21 Found (x03 x040) as proof of R
% 120.93/121.21 Found (x03 x040) as proof of R
% 120.93/121.21 Found x20:=(x2 x10):((iff P) Q)
% 120.93/121.21 Found (x2 x10) as proof of ((iff P) Q)
% 120.93/121.21 Found (x2 x10) as proof of ((iff P) Q)
% 120.93/121.21 Found x000:=(x00 x012):R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found x010 as proof of ((iff P) Q)
% 120.93/121.21 Found x000:=(x00 x012):R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found (x01 x000) as proof of ((iff P) Q)
% 120.93/121.21 Found (x01 x000) as proof of ((iff P) Q)
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found x010 as proof of ((iff P) Q)
% 120.93/121.21 Found x010:=(x01 x001):((iff P) Q)
% 120.93/121.21 Found x010 as proof of ((iff P) Q)
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found (x01 x000) as proof of ((iff P) Q)
% 120.93/121.21 Found (x01 x000) as proof of ((iff P) Q)
% 120.93/121.21 Found x000:=(x00 x012):R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found x010:x
% 120.93/121.21 Instantiate: x:=R:Prop
% 120.93/121.21 Found x010 as proof of R
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found x010 as proof of ((iff P) Q)
% 120.93/121.21 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 120.93/121.21 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 120.93/121.21 Found ex_intro0 as proof of x
% 120.93/121.21 Found x000:=(x00 x012):R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found x000:=(x00 x012):R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found x000:=(x00 x012):R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found (x00 x012) as proof of R
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found (x01 x000) as proof of ((iff P) Q)
% 120.93/121.21 Found (x01 x000) as proof of ((iff P) Q)
% 120.93/121.21 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 120.93/121.21 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 120.93/121.21 Found eq_sym as proof of x
% 120.93/121.21 Found (x04 eq_sym) as proof of Q
% 120.93/121.21 Found (x04 eq_sym) as proof of Q
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found x010 as proof of ((iff P) Q)
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found (x01 x000) as proof of ((iff P) Q)
% 120.93/121.21 Found (x01 x000) as proof of ((iff P) Q)
% 120.93/121.21 Found x000:R
% 120.93/121.21 Found (fun (x04:(x->Q))=> x000) as proof of R
% 120.93/121.21 Found (fun (x04:(x->Q))=> x000) as proof of ((x->Q)->R)
% 120.93/121.21 Found x20:=(x2 x11):((iff P) Q)
% 120.93/121.21 Found (x2 x11) as proof of ((iff P) Q)
% 120.93/121.21 Found (x2 x11) as proof of ((iff P) Q)
% 120.93/121.21 Found x010:=(x01 x001):((iff P) Q)
% 120.93/121.21 Found x010 as proof of ((iff P) Q)
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found x010 as proof of ((iff P) Q)
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found x010 as proof of ((iff P) Q)
% 120.93/121.21 Found x010:=(x01 x000):((iff P) Q)
% 120.93/121.21 Found x010 as proof of ((iff P) Q)
% 120.93/121.21 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 120.93/121.21 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 120.93/121.21 Found ex_intro0 as proof of x
% 120.93/121.21 Found x010:x
% 120.93/121.21 Instantiate: x:=R:Prop
% 120.93/121.21 Found x010 as proof of R
% 120.93/121.21 Found iff_sym100:=(iff_sym10 x010):((iff Q) P)
% 120.93/121.21 Found (iff_sym10 x010) as proof of ((iff Q) P)
% 120.93/121.21 Found ((iff_sym1 Q) x010) as proof of ((iff Q) P)
% 120.93/121.21 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 122.23/122.53 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 122.23/122.53 Found x010:=(x01 x003):((iff P) Q)
% 122.23/122.53 Found (x01 x003) as proof of ((iff P) Q)
% 122.23/122.53 Found (x01 x003) as proof of ((iff P) Q)
% 122.23/122.53 Found x010:((iff P) Q)
% 122.23/122.53 Found (fun (x04:(x->Q))=> x010) as proof of ((iff P) Q)
% 122.23/122.53 Found (fun (x04:(x->Q))=> x010) as proof of ((x->Q)->((iff P) Q))
% 122.23/122.53 Found x010:=(x01 x001):((iff P) Q)
% 122.23/122.53 Found x010 as proof of ((iff P) Q)
% 122.23/122.53 Found x010:=(x01 x001):((iff P) Q)
% 122.23/122.53 Found x010 as proof of ((iff P) Q)
% 122.23/122.53 Found x010:=(x01 x000):((iff P) Q)
% 122.23/122.53 Found x010 as proof of ((iff P) Q)
% 122.23/122.53 Found x010:=(x01 x000):((iff P) Q)
% 122.23/122.53 Found x010 as proof of ((iff P) Q)
% 122.23/122.53 Found x010:=(x01 x000):((iff P) Q)
% 122.23/122.53 Found x010 as proof of ((iff P) Q)
% 122.23/122.53 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 122.23/122.53 Found (iff_refl Q) as proof of ((iff Q) x)
% 122.23/122.53 Found (iff_refl Q) as proof of ((iff Q) x)
% 122.23/122.53 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 122.23/122.53 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 122.23/122.53 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 122.23/122.53 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 122.23/122.53 Found or_ind as proof of x
% 122.23/122.53 Found (x04 or_ind) as proof of Q
% 122.23/122.53 Found (x04 or_ind) as proof of Q
% 122.23/122.53 Found x000:=(x00 x011):R
% 122.23/122.53 Found (x00 x011) as proof of R
% 122.23/122.53 Found (x00 x011) as proof of R
% 122.23/122.53 Found x010:=(x01 x003):((iff P) Q)
% 122.23/122.53 Found (x01 x003) as proof of ((iff P) Q)
% 122.23/122.53 Found (x01 x003) as proof of ((iff P) Q)
% 122.23/122.53 Found x010:=(x01 x000):((iff P) Q)
% 122.23/122.53 Found (x01 x000) as proof of ((iff P) Q)
% 122.23/122.53 Found (x01 x000) as proof of ((iff P) Q)
% 122.23/122.53 Found x000:=(x00 x010):R
% 122.23/122.53 Found (x00 x010) as proof of R
% 122.23/122.53 Found (x00 x010) as proof of R
% 122.23/122.53 Found x010:=(x01 x020):x
% 122.23/122.53 Found (x01 x020) as proof of P
% 122.23/122.53 Found (x01 x020) as proof of P
% 122.23/122.53 Found (x01 x020) as proof of P
% 122.23/122.53 Found x010:=(x01 x000):((iff P) Q)
% 122.23/122.53 Found x010 as proof of ((iff P) Q)
% 122.23/122.53 Found x010:=(x01 x000):((iff P) Q)
% 122.23/122.53 Found x010 as proof of ((iff P) Q)
% 122.23/122.53 Found x20:=(x2 x10):((iff P) Q)
% 122.23/122.53 Found x20 as proof of ((iff P) Q)
% 122.23/122.53 Found x010:=(x01 x000):((iff P) Q)
% 122.23/122.53 Found x010 as proof of ((iff P) Q)
% 122.23/122.53 Found x000:=(x00 x011):R
% 122.23/122.53 Found (x00 x011) as proof of R
% 122.23/122.53 Found (x00 x011) as proof of R
% 122.23/122.53 Found x010:=(x01 x003):((iff P) Q)
% 122.23/122.53 Found (x01 x003) as proof of ((iff P) Q)
% 122.23/122.53 Found (x01 x003) as proof of ((iff P) Q)
% 122.23/122.53 Found x000:=(x00 x010):R
% 122.23/122.53 Found (x00 x010) as proof of R
% 122.23/122.53 Found (x00 x010) as proof of R
% 122.23/122.53 Found x000:=(x00 x013):R
% 122.23/122.53 Found (x00 x013) as proof of R
% 122.23/122.53 Found (x00 x013) as proof of R
% 122.23/122.53 Found x010:=(x01 x020):x
% 122.23/122.53 Instantiate: x:=P:Prop
% 122.23/122.53 Found (x01 x020) as proof of P
% 122.23/122.53 Found (x01 x020) as proof of P
% 122.23/122.53 Found x010:=(x01 x000):((iff P) Q)
% 122.23/122.53 Found x010 as proof of ((iff P) Q)
% 122.23/122.53 Found x010:=(x01 x000):((iff P) Q)
% 122.23/122.53 Found x010 as proof of ((iff P) Q)
% 122.23/122.53 Found x010:=(x01 x002):((iff P) Q)
% 122.23/122.53 Found (x01 x002) as proof of ((iff P) Q)
% 122.23/122.53 Found (x01 x002) as proof of ((iff P) Q)
% 122.23/122.53 Found x000:=(x00 x010):R
% 122.23/122.53 Found (x00 x010) as proof of R
% 122.23/122.53 Found (x00 x010) as proof of R
% 122.23/122.53 Found x000:=(x00 x010):R
% 122.23/122.53 Found (x00 x010) as proof of R
% 122.23/122.53 Found (x00 x010) as proof of R
% 122.23/122.53 Found x10:=(x1 x20):R
% 122.23/122.53 Found (x1 x20) as proof of R
% 122.23/122.53 Found (x1 x20) as proof of R
% 122.23/122.53 Found x000:=(x00 x013):R
% 122.23/122.53 Found (x00 x013) as proof of R
% 122.23/122.53 Found (x00 x013) as proof of R
% 122.23/122.53 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 122.23/122.53 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 122.23/122.53 Found eq_sym as proof of x
% 122.23/122.53 Found (x04 eq_sym) as proof of Q
% 122.23/122.53 Found (x04 eq_sym) as proof of Q
% 122.23/122.53 Found x030:=(x03 x020):P
% 122.23/122.53 Found (x03 x020) as proof of P
% 122.23/122.53 Found (x03 x020) as proof of P
% 122.23/122.53 Found x010:=(x01 x003):((iff P) Q)
% 122.23/122.53 Found (x01 x003) as proof of ((iff P) Q)
% 122.23/122.53 Found (x01 x003) as proof of ((iff P) Q)
% 122.23/122.53 Found x010:=(x01 x000):((iff P) Q)
% 122.23/122.53 Found x010 as proof of ((iff P) Q)
% 122.23/122.53 Found x040:Q
% 122.23/122.53 Found x040 as proof of Q
% 122.23/122.53 Found (x03 x040) as proof of R
% 122.23/122.53 Found (x03 x040) as proof of R
% 122.23/122.53 Found (x03 x040) as proof of R
% 122.23/122.53 Found x010:=(x01 x001):((iff P) Q)
% 122.23/122.53 Found (x01 x001) as proof of ((iff P) Q)
% 122.23/122.53 Found (x01 x001) as proof of ((iff P) Q)
% 122.23/122.53 Found x000:=(x00 x010):R
% 122.23/122.53 Found (x00 x010) as proof of R
% 122.23/122.53 Found (x00 x010) as proof of R
% 122.23/122.53 Found x010:=(x01 x001):((iff P) Q)
% 123.56/123.86 Found (x01 x001) as proof of ((iff P) Q)
% 123.56/123.86 Found (x01 x001) as proof of ((iff P) Q)
% 123.56/123.86 Found x010:=(x01 x020):x
% 123.56/123.86 Instantiate: x:=P:Prop
% 123.56/123.86 Found (x01 x020) as proof of P
% 123.56/123.86 Found (x01 x020) as proof of P
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x040:Q
% 123.56/123.86 Found x040 as proof of Q
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found x021:Q
% 123.56/123.86 Found x021 as proof of Q
% 123.56/123.86 Found (x01 x021) as proof of P
% 123.56/123.86 Found (x01 x021) as proof of P
% 123.56/123.86 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 123.56/123.86 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 123.56/123.86 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 123.56/123.86 Found x000:=(x00 x013):R
% 123.56/123.86 Found (x00 x013) as proof of R
% 123.56/123.86 Found (x00 x013) as proof of R
% 123.56/123.86 Found x030:=(x03 x040):x
% 123.56/123.86 Instantiate: x:=R:Prop
% 123.56/123.86 Found (x03 x040) as proof of R
% 123.56/123.86 Found (x03 x040) as proof of R
% 123.56/123.86 Found x030:=(x03 x021):P
% 123.56/123.86 Found (x03 x021) as proof of P
% 123.56/123.86 Found (x03 x021) as proof of P
% 123.56/123.86 Found x030:=(x03 x020):P
% 123.56/123.86 Found (x03 x020) as proof of P
% 123.56/123.86 Found (x03 x020) as proof of P
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x040:Q
% 123.56/123.86 Found x040 as proof of Q
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found x000:=(x00 x010):R
% 123.56/123.86 Found (x00 x010) as proof of R
% 123.56/123.86 Found (x00 x010) as proof of R
% 123.56/123.86 Found x010:=(x01 x020):x
% 123.56/123.86 Instantiate: x:=R:Prop
% 123.56/123.86 Found (x01 x020) as proof of R
% 123.56/123.86 Found (x01 x020) as proof of R
% 123.56/123.86 Found x20:=(x2 x10):((iff P) Q)
% 123.56/123.86 Found (x2 x10) as proof of ((iff P) Q)
% 123.56/123.86 Found (x2 x10) as proof of ((iff P) Q)
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x040:Q
% 123.56/123.86 Found x040 as proof of Q
% 123.56/123.86 Found (x03 x040) as proof of R
% 123.56/123.86 Found (x03 x040) as proof of R
% 123.56/123.86 Found (x03 x040) as proof of R
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x040:Q
% 123.56/123.86 Found x040 as proof of Q
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x040:Q
% 123.56/123.86 Found x040 as proof of Q
% 123.56/123.86 Found (x03 x040) as proof of ((iff P) Q)
% 123.56/123.86 Found (x03 x040) as proof of ((iff P) Q)
% 123.56/123.86 Found (x03 x040) as proof of ((iff P) Q)
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x010:=(x01 x020):x
% 123.56/123.86 Instantiate: x:=P:Prop
% 123.56/123.86 Found (x01 x020) as proof of P
% 123.56/123.86 Found (x01 x020) as proof of P
% 123.56/123.86 Found x010:=(x01 x020):x
% 123.56/123.86 Instantiate: x:=P:Prop
% 123.56/123.86 Found (x01 x020) as proof of P
% 123.56/123.86 Found (x01 x020) as proof of P
% 123.56/123.86 Found x010:=(x01 x021):x
% 123.56/123.86 Instantiate: x:=P:Prop
% 123.56/123.86 Found (x01 x021) as proof of P
% 123.56/123.86 Found (x01 x021) as proof of P
% 123.56/123.86 Found x010:=(x01 x020):x
% 123.56/123.86 Instantiate: x:=P:Prop
% 123.56/123.86 Found (x01 x020) as proof of P
% 123.56/123.86 Found (x01 x020) as proof of P
% 123.56/123.86 Found x040:Q
% 123.56/123.86 Found x040 as proof of Q
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x040:Q
% 123.56/123.86 Found x040 as proof of Q
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found (x03 x040) as proof of P
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x000:=(x00 x011):R
% 123.56/123.86 Found (x00 x011) as proof of R
% 123.56/123.86 Found (x00 x011) as proof of R
% 123.56/123.86 Found x040:Q
% 123.56/123.86 Found x040 as proof of Q
% 123.56/123.86 Found (x03 x040) as proof of ((iff P) Q)
% 123.56/123.86 Found (x03 x040) as proof of ((iff P) Q)
% 123.56/123.86 Found (x03 x040) as proof of ((iff P) Q)
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found (x01 x000) as proof of ((iff P) Q)
% 123.56/123.86 Found (x01 x000) as proof of ((iff P) Q)
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 123.56/123.86 Found x010 as proof of ((iff P) Q)
% 123.56/123.86 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found (x01 x000) as proof of ((iff P) Q)
% 124.81/125.13 Found (x01 x000) as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x020):x
% 124.81/125.13 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 124.81/125.13 Found (x01 x020) as proof of ((iff P) Q)
% 124.81/125.13 Found (x01 x020) as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found (x01 x000) as proof of ((iff P) Q)
% 124.81/125.13 Found (x01 x000) as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 124.81/125.13 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 124.81/125.13 Found eq_sym as proof of x
% 124.81/125.13 Found (x04 eq_sym) as proof of Q
% 124.81/125.13 Found (x04 eq_sym) as proof of Q
% 124.81/125.13 Found x010:=(x01 x002):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found (x01 x000) as proof of ((iff P) Q)
% 124.81/125.13 Found (x01 x000) as proof of ((iff P) Q)
% 124.81/125.13 Found x20:=(x2 x10):((iff P) Q)
% 124.81/125.13 Found (x2 x10) as proof of ((iff P) Q)
% 124.81/125.13 Found (x2 x10) as proof of ((iff P) Q)
% 124.81/125.13 Found x000:=(x00 x012):R
% 124.81/125.13 Found (x00 x012) as proof of R
% 124.81/125.13 Found (x00 x012) as proof of R
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x001):((iff P) Q)
% 124.81/125.13 Found (x01 x001) as proof of ((iff P) Q)
% 124.81/125.13 Found (x01 x001) as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 124.81/125.13 Instantiate: x:=(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y)))))))))):Prop
% 124.81/125.13 Found relational_choice as proof of x
% 124.81/125.13 Found x010:x
% 124.81/125.13 Instantiate: x:=P:Prop
% 124.81/125.13 Found x010 as proof of P
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:x
% 124.81/125.13 Found x010 as proof of Q
% 124.81/125.13 Found x010:x
% 124.81/125.13 Found x010 as proof of x
% 124.81/125.13 Found x020:Q
% 124.81/125.13 Found x020 as proof of x
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x020:Q
% 124.81/125.13 Found x020 as proof of Q
% 124.81/125.13 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 124.81/125.13 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 124.81/125.13 Found or_ind as proof of x
% 124.81/125.13 Found (x04 or_ind) as proof of Q
% 124.81/125.13 Found (x04 or_ind) as proof of Q
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found (x01 x000) as proof of ((iff P) Q)
% 124.81/125.13 Found (x01 x000) as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x002):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found x010:=(x01 x000):((iff P) Q)
% 124.81/125.13 Found x010 as proof of ((iff P) Q)
% 124.81/125.13 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 124.81/125.13 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 124.81/125.13 Found eq_sym as proof of x
% 124.81/125.13 Found (x04 eq_sym) as proof of Q
% 124.81/125.13 Found (x04 eq_sym) as proof of Q
% 127.96/128.24 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 127.96/128.24 Found (iff_refl Q) as proof of ((iff Q) x)
% 127.96/128.24 Found (iff_refl Q) as proof of ((iff Q) x)
% 127.96/128.24 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 127.96/128.24 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 127.96/128.24 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 127.96/128.24 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 127.96/128.24 Found eta_expansion as proof of x
% 127.96/128.24 Found (x04 eta_expansion) as proof of Q
% 127.96/128.24 Found (x04 eta_expansion) as proof of Q
% 127.96/128.24 Found x010:=(x01 x000):((iff P) Q)
% 127.96/128.24 Found x010 as proof of ((iff P) Q)
% 127.96/128.24 Found x010:=(x01 x000):((iff P) Q)
% 127.96/128.24 Found x010 as proof of ((iff P) Q)
% 127.96/128.24 Found x010:=(x01 x002):((iff P) Q)
% 127.96/128.24 Found x010 as proof of ((iff P) Q)
% 127.96/128.24 Found x000:=(x00 x010):R
% 127.96/128.24 Found (x00 x010) as proof of R
% 127.96/128.24 Found (x00 x010) as proof of R
% 127.96/128.24 Found x000:=(x00 x010):R
% 127.96/128.24 Found (x00 x010) as proof of R
% 127.96/128.24 Found (x00 x010) as proof of R
% 127.96/128.24 Found x010:=(x01 x000):((iff P) Q)
% 127.96/128.24 Found x010 as proof of ((iff P) Q)
% 127.96/128.24 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 127.96/128.24 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 127.96/128.24 Found ex_intro0 as proof of x
% 127.96/128.24 Found (x02 ex_intro0) as proof of Q
% 127.96/128.24 Found (x02 ex_intro0) as proof of Q
% 127.96/128.24 Found x030:=(x03 x040):x
% 127.96/128.24 Found (x03 x040) as proof of P
% 127.96/128.24 Found (x03 x040) as proof of P
% 127.96/128.24 Found (x03 x040) as proof of P
% 127.96/128.24 Found x010:=(x01 x000):((iff P) Q)
% 127.96/128.24 Found x010 as proof of ((iff P) Q)
% 127.96/128.24 Found x010:=(x01 x000):((iff P) Q)
% 127.96/128.24 Found x010 as proof of ((iff P) Q)
% 127.96/128.24 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 127.96/128.24 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 127.96/128.24 Found eq_sym as proof of x
% 127.96/128.24 Found (x02 eq_sym) as proof of Q
% 127.96/128.24 Found (x02 eq_sym) as proof of Q
% 127.96/128.24 Found x010:=(x01 x000):((iff P) Q)
% 127.96/128.24 Found x010 as proof of ((iff P) Q)
% 127.96/128.24 Found x030:P
% 127.96/128.24 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 127.96/128.24 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 127.96/128.24 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 127.96/128.24 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 127.96/128.24 Found eq_sym as proof of x
% 127.96/128.24 Found (x02 eq_sym) as proof of Q
% 127.96/128.24 Found (x02 eq_sym) as proof of Q
% 127.96/128.24 Found x030:=(x03 x040):x
% 127.96/128.24 Found (x03 x040) as proof of P
% 127.96/128.24 Found (x03 x040) as proof of P
% 127.96/128.24 Found (x03 x040) as proof of P
% 127.96/128.24 Found x010:=(x01 x000):((iff P) Q)
% 127.96/128.24 Found x010 as proof of ((iff P) Q)
% 127.96/128.24 Found x10:=(x1 x21):R
% 127.96/128.24 Found (x1 x21) as proof of R
% 127.96/128.24 Found (x1 x21) as proof of R
% 127.96/128.24 Found x010:=(x01 x000):((iff P) Q)
% 127.96/128.24 Found (x01 x000) as proof of ((iff P) Q)
% 127.96/128.24 Found (x01 x000) as proof of ((iff P) Q)
% 127.96/128.24 Found x20:=(x2 x10):((iff P) Q)
% 127.96/128.24 Found x20 as proof of ((iff P) Q)
% 127.96/128.24 Found x020:Q
% 127.96/128.24 Found x020 as proof of Q
% 127.96/128.24 Found (x01 x020) as proof of R
% 127.96/128.24 Found (x01 x020) as proof of R
% 127.96/128.24 Found (x01 x020) as proof of R
% 127.96/128.24 Found x00:((iff Q) x)
% 127.96/128.24 Instantiate: x:=P:Prop
% 127.96/128.24 Found x00 as proof of ((iff Q) P)
% 127.96/128.24 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 127.96/128.24 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 127.96/128.24 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 127.96/128.24 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 127.96/128.24 Found x030:=(x03 x040):x
% 127.96/128.24 Found (x03 x040) as proof of P
% 127.96/128.24 Found (x03 x040) as proof of P
% 127.96/128.24 Found (x03 x040) as proof of P
% 127.96/128.24 Found x010:=(x01 x000):((iff P) Q)
% 127.96/128.24 Found (x01 x000) as proof of ((iff P) Q)
% 127.96/128.24 Found (x01 x000) as proof of ((iff P) Q)
% 127.96/128.24 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 127.96/128.24 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 127.96/128.24 Found ex_intro0 as proof of x
% 127.96/128.24 Found (x02 ex_intro0) as proof of Q
% 127.96/128.24 Found (x02 ex_intro0) as proof of Q
% 127.96/128.24 Found x010:=(x01 x000):((iff P) Q)
% 127.96/128.24 Found x010 as proof of ((iff P) Q)
% 127.96/128.24 Found x010:=(x01 x001):((iff P) Q)
% 127.96/128.24 Found x010 as proof of ((iff P) Q)
% 127.96/128.24 Found x020:Q
% 127.96/128.24 Found x020 as proof of Q
% 127.96/128.24 Found (x01 x020) as proof of R
% 129.55/129.86 Found (x01 x020) as proof of R
% 129.55/129.86 Found (x01 x020) as proof of R
% 129.55/129.86 Found x00:((iff Q) x)
% 129.55/129.86 Instantiate: x:=P:Prop
% 129.55/129.86 Found x00 as proof of ((iff Q) P)
% 129.55/129.86 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 129.55/129.86 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 129.55/129.86 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 129.55/129.86 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 129.55/129.86 Found x010:=(x01 x001):((iff P) Q)
% 129.55/129.86 Found x010 as proof of ((iff P) Q)
% 129.55/129.86 Found x000:R
% 129.55/129.86 Found (fun (x04:(x->Q))=> x000) as proof of R
% 129.55/129.86 Found (fun (x03:(Q->x)) (x04:(x->Q))=> x000) as proof of ((x->Q)->R)
% 129.55/129.86 Found (fun (x03:(Q->x)) (x04:(x->Q))=> x000) as proof of ((Q->x)->((x->Q)->R))
% 129.55/129.86 Found x20:=(x2 x11):((iff P) Q)
% 129.55/129.86 Found (x2 x11) as proof of ((iff P) Q)
% 129.55/129.86 Found (x2 x11) as proof of ((iff P) Q)
% 129.55/129.86 Found x000:=(x00 x012):R
% 129.55/129.86 Found (x00 x012) as proof of R
% 129.55/129.86 Found (x00 x012) as proof of R
% 129.55/129.86 Found x030:=(x03 x040):x
% 129.55/129.86 Instantiate: x:=P:Prop
% 129.55/129.86 Found (x03 x040) as proof of P
% 129.55/129.86 Found (x03 x040) as proof of P
% 129.55/129.86 Found x010:=(x01 x001):((iff P) Q)
% 129.55/129.86 Found x010 as proof of ((iff P) Q)
% 129.55/129.86 Found x000:=(x00 x010):R
% 129.55/129.86 Found (x00 x010) as proof of R
% 129.55/129.86 Found (x00 x010) as proof of R
% 129.55/129.86 Found x000:=(x00 x012):R
% 129.55/129.86 Found (x00 x012) as proof of R
% 129.55/129.86 Found (x00 x012) as proof of R
% 129.55/129.86 Found x010:=(x01 x000):((iff P) Q)
% 129.55/129.86 Found x010 as proof of ((iff P) Q)
% 129.55/129.86 Found x010:=(x01 x000):((iff P) Q)
% 129.55/129.86 Found x010 as proof of ((iff P) Q)
% 129.55/129.86 Found x030:=(x03 x040):x
% 129.55/129.86 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 129.55/129.86 Found (x03 x040) as proof of ((iff P) Q)
% 129.55/129.86 Found (x03 x040) as proof of ((iff P) Q)
% 129.55/129.86 Found (x00 (x03 x040)) as proof of R
% 129.55/129.86 Found (x00 (x03 x040)) as proof of R
% 129.55/129.86 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 129.55/129.86 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 129.55/129.86 Found eta_expansion as proof of x
% 129.55/129.86 Found (x04 eta_expansion) as proof of Q
% 129.55/129.86 Found (x04 eta_expansion) as proof of Q
% 129.55/129.86 Found x010:=(x01 x000):((iff P) Q)
% 129.55/129.86 Found x010 as proof of ((iff P) Q)
% 129.55/129.86 Found x010:=(x01 x000):((iff P) Q)
% 129.55/129.86 Found x010 as proof of ((iff P) Q)
% 129.55/129.86 Found x010:=(x01 x001):((iff P) Q)
% 129.55/129.86 Found x010 as proof of ((iff P) Q)
% 129.55/129.86 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 129.55/129.86 Found (iff_refl Q) as proof of ((iff Q) x)
% 129.55/129.86 Found (iff_refl Q) as proof of ((iff Q) x)
% 129.55/129.86 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 129.55/129.86 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 129.55/129.86 Found x000:=(x00 x012):R
% 129.55/129.86 Found (x00 x012) as proof of R
% 129.55/129.86 Found (x00 x012) as proof of R
% 129.55/129.86 Found x000:=(x00 x010):R
% 129.55/129.86 Found (x00 x010) as proof of R
% 129.55/129.86 Found (x00 x010) as proof of R
% 129.55/129.86 Found x030:=(x03 x040):x
% 129.55/129.86 Instantiate: x:=R:Prop
% 129.55/129.86 Found (x03 x040) as proof of R
% 129.55/129.86 Found (x03 x040) as proof of R
% 129.55/129.86 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 129.55/129.86 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 129.55/129.86 Found x000:=(x00 x010):R
% 129.55/129.86 Found (x00 x010) as proof of R
% 129.55/129.86 Found (x00 x010) as proof of R
% 129.55/129.86 Found x010:=(x01 x002):((iff P) Q)
% 129.55/129.86 Found x010 as proof of ((iff P) Q)
% 129.55/129.86 Found x010:=(x01 x000):((iff P) Q)
% 129.55/129.86 Found x010 as proof of ((iff P) Q)
% 129.55/129.86 Found x010:=(x01 x000):((iff P) Q)
% 129.55/129.86 Found (x01 x000) as proof of ((iff P) Q)
% 129.55/129.86 Found (x01 x000) as proof of ((iff P) Q)
% 129.55/129.86 Found x010:=(x01 x000):((iff P) Q)
% 129.55/129.86 Found x010 as proof of ((iff P) Q)
% 129.55/129.86 Found x010:=(x01 x000):((iff P) Q)
% 129.55/129.86 Found x010 as proof of ((iff P) Q)
% 129.55/129.86 Found x010:=(x01 x000):((iff P) Q)
% 129.55/129.86 Found x010 as proof of ((iff P) Q)
% 129.55/129.86 Found x010:=(x01 x000):((iff P) Q)
% 129.55/129.86 Found x010 as proof of ((iff P) Q)
% 129.55/129.86 Found x10:=(x1 x20):R
% 129.55/129.86 Found (x1 x20) as proof of R
% 129.55/129.86 Found (x1 x20) as proof of R
% 129.55/129.86 Found x030:=(x03 x040):x
% 129.55/129.86 Instantiate: x:=R:Prop
% 129.55/129.86 Found (x03 x040) as proof of R
% 129.55/129.86 Found (x03 x040) as proof of R
% 129.55/129.86 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 129.55/129.86 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 129.55/129.86 Found x030:=(x03 x040):x
% 129.55/129.86 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 129.55/129.86 Found (x03 x040) as proof of ((iff P) Q)
% 129.55/129.86 Found (x03 x040) as proof of ((iff P) Q)
% 129.55/129.86 Found (x00 (x03 x040)) as proof of R
% 129.55/129.86 Found (x00 (x03 x040)) as proof of R
% 129.55/129.86 Found x00:((iff Q) x)
% 129.55/129.86 Instantiate: x:=P:Prop
% 129.55/129.86 Found x00 as proof of ((iff Q) P)
% 129.55/129.86 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 129.55/129.86 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 129.55/129.86 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 131.41/131.72 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 131.41/131.72 Found x030:=(x03 x040):x
% 131.41/131.72 Found (x03 x040) as proof of P
% 131.41/131.72 Found (x03 x040) as proof of P
% 131.41/131.72 Found (x03 x040) as proof of P
% 131.41/131.72 Found x010:=(x01 x000):((iff P) Q)
% 131.41/131.72 Found x010 as proof of ((iff P) Q)
% 131.41/131.72 Found x030:P
% 131.41/131.72 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 131.41/131.72 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 131.41/131.72 Found x011:x
% 131.41/131.72 Found x011 as proof of Q
% 131.41/131.72 Found x20:=(x2 x10):((iff P) Q)
% 131.41/131.72 Found (x2 x10) as proof of ((iff P) Q)
% 131.41/131.72 Found (x2 x10) as proof of ((iff P) Q)
% 131.41/131.72 Found x00:((iff Q) x)
% 131.41/131.72 Instantiate: x:=P:Prop
% 131.41/131.72 Found x00 as proof of ((iff Q) P)
% 131.41/131.72 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 131.41/131.72 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 131.41/131.72 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 131.41/131.72 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 131.41/131.72 Found x030:=(x03 x040):x
% 131.41/131.72 Found (x03 x040) as proof of P
% 131.41/131.72 Found (x03 x040) as proof of P
% 131.41/131.72 Found (x03 x040) as proof of P
% 131.41/131.72 Found x040:=(x04 x000):Q
% 131.41/131.72 Found (x04 x000) as proof of Q
% 131.41/131.72 Found (x04 x000) as proof of Q
% 131.41/131.72 Found x00:((iff Q) x)
% 131.41/131.72 Instantiate: x:=P:Prop
% 131.41/131.72 Found x00 as proof of ((iff Q) P)
% 131.41/131.72 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 131.41/131.72 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 131.41/131.72 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 131.41/131.72 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 131.41/131.72 Found x010:=(x01 x000):((iff P) Q)
% 131.41/131.72 Found x010 as proof of ((iff P) Q)
% 131.41/131.72 Found x20:=(x2 x10):((iff P) Q)
% 131.41/131.72 Found (x2 x10) as proof of ((iff P) Q)
% 131.41/131.72 Found (x2 x10) as proof of ((iff P) Q)
% 131.41/131.72 Found x010:=(x01 x001):((iff P) Q)
% 131.41/131.72 Found x010 as proof of ((iff P) Q)
% 131.41/131.72 Found x000:=(x00 x010):R
% 131.41/131.72 Found (x00 x010) as proof of R
% 131.41/131.72 Found (x00 x010) as proof of R
% 131.41/131.72 Found x030:=(x03 x040):x
% 131.41/131.72 Found (x03 x040) as proof of P
% 131.41/131.72 Found (x03 x040) as proof of P
% 131.41/131.72 Found (x03 x040) as proof of P
% 131.41/131.72 Found x030:=(x03 x040):x
% 131.41/131.72 Found (x03 x040) as proof of R
% 131.41/131.72 Found (x03 x040) as proof of R
% 131.41/131.72 Found (x03 x040) as proof of R
% 131.41/131.72 Found x000:=(x00 x012):R
% 131.41/131.72 Found (x00 x012) as proof of R
% 131.41/131.72 Found (x00 x012) as proof of R
% 131.41/131.72 Found x010:=(x01 x000):((iff P) Q)
% 131.41/131.72 Found (x01 x000) as proof of ((iff P) Q)
% 131.41/131.72 Found (x01 x000) as proof of ((iff P) Q)
% 131.41/131.72 Found x010:=(x01 x001):((iff P) Q)
% 131.41/131.72 Found x010 as proof of ((iff P) Q)
% 131.41/131.72 Found x010:=(x01 x001):((iff P) Q)
% 131.41/131.72 Found x010 as proof of ((iff P) Q)
% 131.41/131.72 Found x010:=(x01 x001):((iff P) Q)
% 131.41/131.72 Found x010 as proof of ((iff P) Q)
% 131.41/131.72 Found x010:=(x01 x003):((iff P) Q)
% 131.41/131.72 Found (x01 x003) as proof of ((iff P) Q)
% 131.41/131.72 Found (x01 x003) as proof of ((iff P) Q)
% 131.41/131.72 Found x010:=(x01 x001):((iff P) Q)
% 131.41/131.72 Found x010 as proof of ((iff P) Q)
% 131.41/131.72 Found x030:=(x03 x040):x
% 131.41/131.72 Instantiate: x:=P:Prop
% 131.41/131.72 Found (x03 x040) as proof of P
% 131.41/131.72 Found (x03 x040) as proof of P
% 131.41/131.72 Found x000:=(x00 x010):R
% 131.41/131.72 Found (x00 x010) as proof of R
% 131.41/131.72 Found (x00 x010) as proof of R
% 131.41/131.72 Found x000:=(x00 x010):R
% 131.41/131.72 Found (x00 x010) as proof of R
% 131.41/131.72 Found (x00 x010) as proof of R
% 131.41/131.72 Found x000:=(x00 x012):R
% 131.41/131.72 Found (x00 x012) as proof of R
% 131.41/131.72 Found (x00 x012) as proof of R
% 131.41/131.72 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 131.41/131.72 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 131.41/131.72 Found eq_sym as proof of x
% 131.41/131.72 Found (x04 eq_sym) as proof of Q
% 131.41/131.72 Found (x04 eq_sym) as proof of Q
% 131.41/131.72 Found x000:R
% 131.41/131.72 Found (fun (x04:(x->Q))=> x000) as proof of R
% 131.41/131.72 Found (fun (x03:(Q->x)) (x04:(x->Q))=> x000) as proof of ((x->Q)->R)
% 131.41/131.72 Found (fun (x03:(Q->x)) (x04:(x->Q))=> x000) as proof of ((Q->x)->((x->Q)->R))
% 131.41/131.72 Found x20:=(x2 x11):((iff P) Q)
% 131.41/131.72 Found (x2 x11) as proof of ((iff P) Q)
% 131.41/131.72 Found (x2 x11) as proof of ((iff P) Q)
% 131.41/131.72 Found x000:=(x00 x012):R
% 131.41/131.72 Found (x00 x012) as proof of R
% 131.41/131.72 Found (x00 x012) as proof of R
% 131.41/131.72 Found x010:=(x01 x000):((iff P) Q)
% 131.41/131.72 Found x010 as proof of ((iff P) Q)
% 131.41/131.72 Found x010:=(x01 x003):((iff P) Q)
% 131.41/131.72 Found (x01 x003) as proof of ((iff P) Q)
% 131.41/131.72 Found (x01 x003) as proof of ((iff P) Q)
% 131.41/131.72 Found x010:=(x01 x001):((iff P) Q)
% 131.41/131.72 Found x010 as proof of ((iff P) Q)
% 131.41/131.72 Found x010:=(x01 x001):((iff P) Q)
% 131.41/131.72 Found x010 as proof of ((iff P) Q)
% 131.41/131.72 Found x010:=(x01 x001):((iff P) Q)
% 131.41/131.72 Found x010 as proof of ((iff P) Q)
% 131.41/131.72 Found x010:=(x01 x000):((iff P) Q)
% 131.41/131.72 Found x010 as proof of ((iff P) Q)
% 131.41/131.72 Found x000:=(x00 x011):R
% 131.41/131.72 Found (x00 x011) as proof of R
% 132.43/132.73 Found (x00 x011) as proof of R
% 132.43/132.73 Found x010:=(x01 x003):((iff P) Q)
% 132.43/132.73 Found (x01 x003) as proof of ((iff P) Q)
% 132.43/132.73 Found (x01 x003) as proof of ((iff P) Q)
% 132.43/132.73 Found x010:=(x01 x000):((iff P) Q)
% 132.43/132.73 Found (x01 x000) as proof of ((iff P) Q)
% 132.43/132.73 Found (x01 x000) as proof of ((iff P) Q)
% 132.43/132.73 Found x010:=(x01 x000):((iff P) Q)
% 132.43/132.73 Found (x01 x000) as proof of ((iff P) Q)
% 132.43/132.73 Found (x01 x000) as proof of ((iff P) Q)
% 132.43/132.73 Found x010:=(x01 x001):((iff P) Q)
% 132.43/132.73 Found x010 as proof of ((iff P) Q)
% 132.43/132.73 Found x000:=(x00 x010):R
% 132.43/132.73 Found (x00 x010) as proof of R
% 132.43/132.73 Found (x00 x010) as proof of R
% 132.43/132.73 Found x010:=(x01 x000):((iff P) Q)
% 132.43/132.73 Found x010 as proof of ((iff P) Q)
% 132.43/132.73 Found x010:=(x01 x002):((iff P) Q)
% 132.43/132.73 Found (x01 x002) as proof of ((iff P) Q)
% 132.43/132.73 Found (x01 x002) as proof of ((iff P) Q)
% 132.43/132.73 Found x010:=(x01 x020):x
% 132.43/132.73 Found (x01 x020) as proof of P
% 132.43/132.73 Found (x01 x020) as proof of P
% 132.43/132.73 Found (x01 x020) as proof of P
% 132.43/132.73 Found x000:=(x00 x011):R
% 132.43/132.73 Found (x00 x011) as proof of R
% 132.43/132.73 Found (x00 x011) as proof of R
% 132.43/132.73 Found x030:=(x03 x040):x
% 132.43/132.73 Instantiate: x:=P:Prop
% 132.43/132.73 Found (x03 x040) as proof of P
% 132.43/132.73 Found (x03 x040) as proof of P
% 132.43/132.73 Found x010:=(x01 x020):x
% 132.43/132.73 Found (x01 x020) as proof of ((iff P) Q)
% 132.43/132.73 Found (x01 x020) as proof of ((iff P) Q)
% 132.43/132.73 Found (x01 x020) as proof of ((iff P) Q)
% 132.43/132.73 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 132.43/132.73 Found (iff_refl Q) as proof of ((iff Q) x)
% 132.43/132.73 Found (iff_refl Q) as proof of ((iff Q) x)
% 132.43/132.73 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 132.43/132.73 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 132.43/132.73 Found x030:x
% 132.43/132.73 Instantiate: x:=P:Prop
% 132.43/132.73 Found x030 as proof of P
% 132.43/132.73 Found x010:=(x01 x000):((iff P) Q)
% 132.43/132.73 Found x010 as proof of ((iff P) Q)
% 132.43/132.73 Found x010:=(x01 x000):((iff P) Q)
% 132.43/132.73 Found x010 as proof of ((iff P) Q)
% 132.43/132.73 Found x010:=(x01 x000):((iff P) Q)
% 132.43/132.73 Found x010 as proof of ((iff P) Q)
% 132.43/132.73 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 132.43/132.73 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 132.43/132.73 Found eq_sym as proof of x
% 132.43/132.73 Found x010:=(x01 x000):((iff P) Q)
% 132.43/132.73 Found x010 as proof of ((iff P) Q)
% 132.43/132.73 Found x010:=(x01 x000):((iff P) Q)
% 132.43/132.73 Found x010 as proof of ((iff P) Q)
% 132.43/132.73 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 132.43/132.73 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 132.43/132.73 Found eq_sym as proof of x
% 132.43/132.73 Found (x04 eq_sym) as proof of Q
% 132.43/132.73 Found (x04 eq_sym) as proof of Q
% 132.43/132.73 Found x20:=(x2 x10):((iff P) Q)
% 132.43/132.73 Found (x2 x10) as proof of ((iff P) Q)
% 132.43/132.73 Found (x2 x10) as proof of ((iff P) Q)
% 132.43/132.73 Found x010:=(x01 x001):((iff P) Q)
% 132.43/132.73 Found (x01 x001) as proof of ((iff P) Q)
% 132.43/132.73 Found (x01 x001) as proof of ((iff P) Q)
% 132.43/132.73 Found x010:=(x01 x020):x
% 132.43/132.73 Instantiate: x:=P:Prop
% 132.43/132.73 Found (x01 x020) as proof of P
% 132.43/132.73 Found (x01 x020) as proof of P
% 132.43/132.73 Found x010:=(x01 x000):((iff P) Q)
% 132.43/132.73 Found (x01 x000) as proof of ((iff P) Q)
% 132.43/132.73 Found (x01 x000) as proof of ((iff P) Q)
% 132.43/132.73 Found x20:=(x2 x10):((iff P) Q)
% 132.43/132.73 Instantiate: x:=((iff P) Q):Prop
% 132.43/132.73 Found x20 as proof of x
% 132.43/132.73 Found (x02 x20) as proof of Q
% 132.43/132.73 Found (x02 x20) as proof of Q
% 132.43/132.73 Found (x4 (x02 x20)) as proof of P
% 132.43/132.73 Found (fun (x4:(Q->P))=> (x4 (x02 x20))) as proof of P
% 132.43/132.73 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20))) as proof of ((Q->P)->P)
% 132.43/132.73 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20))) as proof of ((P->Q)->((Q->P)->P))
% 132.43/132.73 Found (and_rect20 (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 132.43/132.73 Found ((and_rect2 P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 132.43/132.73 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 132.43/132.73 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10))))) as proof of P
% 132.43/132.73 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10))))) as proof of P
% 132.43/132.73 Found x000:=(x00 x011):R
% 132.43/132.73 Found (x00 x011) as proof of R
% 133.32/133.60 Found (x00 x011) as proof of R
% 133.32/133.60 Found x010:=(x01 x000):((iff P) Q)
% 133.32/133.60 Found x010 as proof of ((iff P) Q)
% 133.32/133.60 Found x010:=(x01 x000):((iff P) Q)
% 133.32/133.60 Found x010 as proof of ((iff P) Q)
% 133.32/133.60 Found x010:=(x01 x001):((iff P) Q)
% 133.32/133.60 Found (x01 x001) as proof of ((iff P) Q)
% 133.32/133.60 Found (x01 x001) as proof of ((iff P) Q)
% 133.32/133.60 Found x010:=(x01 x020):x
% 133.32/133.60 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 133.32/133.60 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 133.32/133.60 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 133.32/133.60 Found x010:=(x01 x020):x
% 133.32/133.60 Found (x01 x020) as proof of ((iff P) Q)
% 133.32/133.60 Found (x01 x020) as proof of ((iff P) Q)
% 133.32/133.60 Found (x01 x020) as proof of ((iff P) Q)
% 133.32/133.60 Found x010:=(x01 x020):x
% 133.32/133.60 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 133.32/133.60 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 133.32/133.60 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 133.32/133.60 Found x010:=(x01 x020):x
% 133.32/133.60 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 133.32/133.60 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 133.32/133.60 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 133.32/133.60 Found x000:=(x00 x011):R
% 133.32/133.60 Found (x00 x011) as proof of R
% 133.32/133.60 Found (x00 x011) as proof of R
% 133.32/133.60 Found x010:=(x01 x000):((iff P) Q)
% 133.32/133.60 Found (x01 x000) as proof of ((iff P) Q)
% 133.32/133.60 Found (x01 x000) as proof of ((iff P) Q)
% 133.32/133.60 Found x040:Q
% 133.32/133.60 Found x040 as proof of Q
% 133.32/133.60 Found (x03 x040) as proof of P
% 133.32/133.60 Found (x03 x040) as proof of P
% 133.32/133.60 Found (x03 x040) as proof of P
% 133.32/133.60 Found x20:=(x2 x10):((iff P) Q)
% 133.32/133.60 Instantiate: x:=((iff P) Q):Prop
% 133.32/133.60 Found x20 as proof of x
% 133.32/133.60 Found (x02 x20) as proof of Q
% 133.32/133.60 Found (x02 x20) as proof of Q
% 133.32/133.60 Found (x4 (x02 x20)) as proof of P
% 133.32/133.60 Found (fun (x4:(Q->P))=> (x4 (x02 x20))) as proof of P
% 133.32/133.60 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20))) as proof of ((Q->P)->P)
% 133.32/133.60 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20))) as proof of ((P->Q)->((Q->P)->P))
% 133.32/133.60 Found (and_rect20 (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 133.32/133.60 Found ((and_rect2 P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 133.32/133.60 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 133.32/133.60 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10))))) as proof of P
% 133.32/133.60 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10))))) as proof of P
% 133.32/133.60 Found x010:=(x01 x000):((iff P) Q)
% 133.32/133.60 Found x010 as proof of ((iff P) Q)
% 133.32/133.60 Found x010:=(x01 x020):x
% 133.32/133.60 Instantiate: x:=R:Prop
% 133.32/133.60 Found (x01 x020) as proof of R
% 133.32/133.60 Found (x01 x020) as proof of R
% 133.32/133.60 Found x010:=(x01 x000):((iff P) Q)
% 133.32/133.60 Found (x01 x000) as proof of ((iff P) Q)
% 133.32/133.60 Found (x01 x000) as proof of ((iff P) Q)
% 133.32/133.60 Found x010:=(x01 x000):((iff P) Q)
% 133.32/133.60 Found x010 as proof of ((iff P) Q)
% 133.32/133.60 Found x20:=(x2 x10):((iff P) Q)
% 133.32/133.60 Found (x2 x10) as proof of ((iff P) Q)
% 133.32/133.60 Found (x2 x10) as proof of ((iff P) Q)
% 133.32/133.60 Found x040:Q
% 133.32/133.60 Found x040 as proof of Q
% 133.32/133.60 Found (x03 x040) as proof of P
% 133.32/133.60 Found (x03 x040) as proof of P
% 133.32/133.60 Found (x03 x040) as proof of P
% 133.32/133.60 Found x010:=(x01 x000):((iff P) Q)
% 133.32/133.60 Found x010 as proof of ((iff P) Q)
% 133.32/133.60 Found x030:P
% 133.32/133.60 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 133.32/133.60 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 133.32/133.60 Found x010:=(x01 x000):((iff P) Q)
% 133.32/133.60 Found x010 as proof of ((iff P) Q)
% 133.32/133.60 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 133.32/133.60 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 133.32/133.60 Found eq_sym as proof of x
% 133.32/133.60 Found x030:x
% 133.32/133.60 Instantiate: x:=P:Prop
% 133.32/133.60 Found x030 as proof of P
% 133.32/133.60 Found x010:=(x01 x021):x
% 133.32/133.60 Instantiate: x:=P:Prop
% 133.32/133.60 Found (x01 x021) as proof of P
% 133.32/133.60 Found (x01 x021) as proof of P
% 133.32/133.60 Found x010:=(x01 x020):x
% 133.32/133.60 Instantiate: x:=P:Prop
% 133.32/133.60 Found (x01 x020) as proof of P
% 133.32/133.60 Found (x01 x020) as proof of P
% 133.32/133.60 Found x010:=(x01 x020):x
% 133.32/133.60 Instantiate: x:=P:Prop
% 133.32/133.60 Found (x01 x020) as proof of P
% 133.32/133.60 Found (x01 x020) as proof of P
% 133.32/133.60 Found x000:=(x00 x010):R
% 133.32/133.60 Found (x00 x010) as proof of R
% 133.32/133.60 Found (x00 x010) as proof of R
% 133.32/133.60 Found x030:=(x03 x040):x
% 133.32/133.60 Found (x03 x040) as proof of R
% 133.32/133.60 Found (x03 x040) as proof of R
% 135.49/135.78 Found (x03 x040) as proof of R
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found x010 as proof of ((iff P) Q)
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found x010 as proof of ((iff P) Q)
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found x010 as proof of ((iff P) Q)
% 135.49/135.78 Found x010:=(x01 x020):x
% 135.49/135.78 Instantiate: x:=P:Prop
% 135.49/135.78 Found (x01 x020) as proof of P
% 135.49/135.78 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 135.49/135.78 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 135.49/135.78 Found x010:=(x01 x021):x
% 135.49/135.78 Instantiate: x:=P:Prop
% 135.49/135.78 Found (x01 x021) as proof of P
% 135.49/135.78 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 135.49/135.78 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 135.49/135.78 Found x010:=(x01 x020):x
% 135.49/135.78 Instantiate: x:=P:Prop
% 135.49/135.78 Found (x01 x020) as proof of P
% 135.49/135.78 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 135.49/135.78 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 135.49/135.78 Found x000:=(x00 x010):R
% 135.49/135.78 Found (x00 x010) as proof of R
% 135.49/135.78 Found (x00 x010) as proof of R
% 135.49/135.78 Found x010:=(x01 x020):x
% 135.49/135.78 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 135.49/135.78 Found (x01 x020) as proof of ((iff P) Q)
% 135.49/135.78 Found (x01 x020) as proof of ((iff P) Q)
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found x010 as proof of ((iff P) Q)
% 135.49/135.78 Found x010:x
% 135.49/135.78 Instantiate: x:=P:Prop
% 135.49/135.78 Found (fun (x02:(x->Q))=> x010) as proof of P
% 135.49/135.78 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 135.49/135.78 Found x20:=(x2 x10):((iff P) Q)
% 135.49/135.78 Found x20 as proof of ((iff P) Q)
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found x010 as proof of ((iff P) Q)
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found x010 as proof of ((iff P) Q)
% 135.49/135.78 Found x010:x
% 135.49/135.78 Found x010 as proof of x
% 135.49/135.78 Found x000:=(x00 x011):R
% 135.49/135.78 Found (x00 x011) as proof of R
% 135.49/135.78 Found (x00 x011) as proof of R
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found x010 as proof of ((iff P) Q)
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found x010 as proof of ((iff P) Q)
% 135.49/135.78 Found x010:x
% 135.49/135.78 Found x010 as proof of Q
% 135.49/135.78 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 135.49/135.78 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 135.49/135.78 Found eq_sym as proof of x
% 135.49/135.78 Found (x04 eq_sym) as proof of Q
% 135.49/135.78 Found (x04 eq_sym) as proof of Q
% 135.49/135.78 Found x000:=(x00 x011):R
% 135.49/135.78 Found (x00 x011) as proof of R
% 135.49/135.78 Found (x00 x011) as proof of R
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found x010 as proof of ((iff P) Q)
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found (x01 x000) as proof of ((iff P) Q)
% 135.49/135.78 Found (x01 x000) as proof of ((iff P) Q)
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found x010 as proof of ((iff P) Q)
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found x010 as proof of ((iff P) Q)
% 135.49/135.78 Found x000:=(x00 x012):R
% 135.49/135.78 Found (x00 x012) as proof of R
% 135.49/135.78 Found (x00 x012) as proof of R
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found (x01 x000) as proof of ((iff P) Q)
% 135.49/135.78 Found (x01 x000) as proof of ((iff P) Q)
% 135.49/135.78 Found x012:x
% 135.49/135.78 Instantiate: x:=P:Prop
% 135.49/135.78 Found (fun (x02:(x->Q))=> x012) as proof of P
% 135.49/135.78 Found (fun (x02:(x->Q))=> x012) as proof of ((x->Q)->P)
% 135.49/135.78 Found x010:=(x01 x002):((iff P) Q)
% 135.49/135.78 Found x010 as proof of ((iff P) Q)
% 135.49/135.78 Found x010:=(x01 x001):((iff P) Q)
% 135.49/135.78 Found (x01 x001) as proof of ((iff P) Q)
% 135.49/135.78 Found (x01 x001) as proof of ((iff P) Q)
% 135.49/135.78 Found x000:=(x00 x012):R
% 135.49/135.78 Found (x00 x012) as proof of R
% 135.49/135.78 Found (x00 x012) as proof of R
% 135.49/135.78 Found x000:=(x00 x012):R
% 135.49/135.78 Found (x00 x012) as proof of R
% 135.49/135.78 Found (x00 x012) as proof of R
% 135.49/135.78 Found x000:=(x00 x012):R
% 135.49/135.78 Found (x00 x012) as proof of R
% 135.49/135.78 Found (x00 x012) as proof of R
% 135.49/135.78 Found x000:=(x00 x011):R
% 135.49/135.78 Found (x00 x011) as proof of R
% 135.49/135.78 Found (x00 x011) as proof of R
% 135.49/135.78 Found x040:Q
% 135.49/135.78 Found x040 as proof of Q
% 135.49/135.78 Found (x03 x040) as proof of R
% 135.49/135.78 Found (x03 x040) as proof of R
% 135.49/135.78 Found (x03 x040) as proof of R
% 135.49/135.78 Found x000:=(x00 x011):R
% 135.49/135.78 Found (x00 x011) as proof of R
% 135.49/135.78 Found (x00 x011) as proof of R
% 135.49/135.78 Found x010:=(x01 x000):((iff P) Q)
% 135.49/135.78 Found (x01 x000) as proof of ((iff P) Q)
% 135.49/135.78 Found (x01 x000) as proof of ((iff P) Q)
% 135.49/135.78 Found x010:=(x01 x001):((iff P) Q)
% 135.49/135.78 Found (x01 x001) as proof of ((iff P) Q)
% 135.49/135.78 Found (x01 x001) as proof of ((iff P) Q)
% 135.49/135.78 Found x000:=(x00 x012):R
% 135.49/135.78 Found (x00 x012) as proof of R
% 135.49/135.78 Found (x00 x012) as proof of R
% 135.49/135.78 Found x000:=(x00 x012):R
% 135.49/135.78 Found (x00 x012) as proof of R
% 136.76/137.08 Found (x00 x012) as proof of R
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found x040:Q
% 136.76/137.08 Found x040 as proof of Q
% 136.76/137.08 Found (x03 x040) as proof of R
% 136.76/137.08 Found (x03 x040) as proof of R
% 136.76/137.08 Found (x03 x040) as proof of R
% 136.76/137.08 Found x040:Q
% 136.76/137.08 Found x040 as proof of Q
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found x030:=(x03 x040):x
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found (x01 x000) as proof of ((iff P) Q)
% 136.76/137.08 Found (x01 x000) as proof of ((iff P) Q)
% 136.76/137.08 Found x040:Q
% 136.76/137.08 Found x040 as proof of Q
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found x000:=(x00 x010):R
% 136.76/137.08 Found (x00 x010) as proof of R
% 136.76/137.08 Found (x00 x010) as proof of R
% 136.76/137.08 Found x031:x
% 136.76/137.08 Found x031 as proof of Q
% 136.76/137.08 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 136.76/137.08 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 136.76/137.08 Found ex_intro0 as proof of x
% 136.76/137.08 Found (x04 ex_intro0) as proof of Q
% 136.76/137.08 Found (x04 ex_intro0) as proof of Q
% 136.76/137.08 Found x040:Q
% 136.76/137.08 Found x040 as proof of Q
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found x040:Q
% 136.76/137.08 Found x040 as proof of Q
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found x040:Q
% 136.76/137.08 Found x040 as proof of Q
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found (x03 x040) as proof of P
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found x040:Q
% 136.76/137.08 Found x040 as proof of Q
% 136.76/137.08 Found (x03 x040) as proof of ((iff P) Q)
% 136.76/137.08 Found (x03 x040) as proof of ((iff P) Q)
% 136.76/137.08 Found (x03 x040) as proof of ((iff P) Q)
% 136.76/137.08 Found x030:P
% 136.76/137.08 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 136.76/137.08 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 136.76/137.08 Found x010:=(x01 x020):x
% 136.76/137.08 Instantiate: x:=R:Prop
% 136.76/137.08 Found (x01 x020) as proof of R
% 136.76/137.08 Found (x01 x020) as proof of R
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found iff_sym100:=(iff_sym10 x20):((iff Q) P)
% 136.76/137.08 Found (iff_sym10 x20) as proof of ((iff Q) P)
% 136.76/137.08 Found ((iff_sym1 Q) x20) as proof of ((iff Q) P)
% 136.76/137.08 Found (((iff_sym P) Q) x20) as proof of ((iff Q) P)
% 136.76/137.08 Found (((iff_sym P) Q) x20) as proof of ((iff Q) P)
% 136.76/137.08 Found x000:=(x00 x010):R
% 136.76/137.08 Found (x00 x010) as proof of R
% 136.76/137.08 Found (x00 x010) as proof of R
% 136.76/137.08 Found x040:Q
% 136.76/137.08 Found x040 as proof of Q
% 136.76/137.08 Found (x03 x040) as proof of ((iff P) Q)
% 136.76/137.08 Found (x03 x040) as proof of ((iff P) Q)
% 136.76/137.08 Found (x03 x040) as proof of ((iff P) Q)
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found x20:=(x2 x10):((iff P) Q)
% 136.76/137.08 Found x20 as proof of ((iff P) Q)
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found x010:=(x01 x000):((iff P) Q)
% 136.76/137.08 Found x010 as proof of ((iff P) Q)
% 136.76/137.08 Found x20:=(x2 x10):((iff P) Q)
% 136.76/137.08 Instantiate: x:=((iff P) Q):Prop
% 136.76/137.08 Found x20 as proof of x
% 136.76/137.08 Found (x04 x20) as proof of Q
% 136.76/137.08 Found (x04 x20) as proof of Q
% 136.76/137.08 Found (x03 (x04 x20)) as proof of P
% 136.76/137.08 Found (fun (x04:(x->Q))=> (x03 (x04 x20))) as proof of P
% 136.76/137.08 Found (fun (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 x20))) as proof of ((x->Q)->P)
% 136.76/137.08 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 x20))) as proof of ((Q->P)->((x->Q)->P))
% 136.76/137.08 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 x20))) as proof of ((P->Q)->((Q->P)->((x->Q)->P)))
% 136.76/137.08 Found (and_rect20 (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 x20)))) as proof of ((x->Q)->P)
% 136.76/137.08 Found ((and_rect2 ((x->Q)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 x20)))) as proof of ((x->Q)->P)
% 138.61/138.93 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) ((x->Q)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 x20)))) as proof of ((x->Q)->P)
% 138.61/138.93 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((x->Q)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 (x2 x10))))) as proof of ((x->Q)->P)
% 138.61/138.93 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((x->Q)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 (x2 x10))))) as proof of ((x->Q)->P)
% 138.61/138.93 Found x010:=(x01 x000):((iff P) Q)
% 138.61/138.93 Found (x01 x000) as proof of ((iff P) Q)
% 138.61/138.93 Found (x01 x000) as proof of ((iff P) Q)
% 138.61/138.93 Found x010:=(x01 x000):((iff P) Q)
% 138.61/138.93 Found x010 as proof of ((iff P) Q)
% 138.61/138.93 Found x030:=(x03 x040):x
% 138.61/138.93 Found (x03 x040) as proof of P
% 138.61/138.93 Found (x03 x040) as proof of P
% 138.61/138.93 Found (x03 x040) as proof of P
% 138.61/138.93 Found x010:=(x01 x000):((iff P) Q)
% 138.61/138.93 Found x010 as proof of ((iff P) Q)
% 138.61/138.93 Found x010:=(x01 x000):((iff P) Q)
% 138.61/138.93 Found x010 as proof of ((iff P) Q)
% 138.61/138.93 Found x010:=(x01 x000):((iff P) Q)
% 138.61/138.93 Found x010 as proof of ((iff P) Q)
% 138.61/138.93 Found x010:=(x01 x002):((iff P) Q)
% 138.61/138.93 Found x010 as proof of ((iff P) Q)
% 138.61/138.93 Found x20:=(x2 x11):((iff P) Q)
% 138.61/138.93 Found (x2 x11) as proof of ((iff P) Q)
% 138.61/138.93 Found (x2 x11) as proof of ((iff P) Q)
% 138.61/138.93 Found x000:=(x00 x012):R
% 138.61/138.93 Found (x00 x012) as proof of R
% 138.61/138.93 Found (x00 x012) as proof of R
% 138.61/138.93 Found x000:=(x00 x012):R
% 138.61/138.93 Found (x00 x012) as proof of R
% 138.61/138.93 Found (x00 x012) as proof of R
% 138.61/138.93 Found x010:=(x01 x000):((iff P) Q)
% 138.61/138.93 Found x010 as proof of ((iff P) Q)
% 138.61/138.93 Found x010:=(x01 x000):((iff P) Q)
% 138.61/138.93 Found x010 as proof of ((iff P) Q)
% 138.61/138.93 Found x010:=(x01 x002):((iff P) Q)
% 138.61/138.93 Found x010 as proof of ((iff P) Q)
% 138.61/138.93 Found x000:=(x00 x011):R
% 138.61/138.93 Found (x00 x011) as proof of R
% 138.61/138.93 Found (x00 x011) as proof of R
% 138.61/138.93 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 138.61/138.93 Found (iff_refl Q) as proof of ((iff Q) x)
% 138.61/138.93 Found (iff_refl Q) as proof of ((iff Q) x)
% 138.61/138.93 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 138.61/138.93 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 138.61/138.93 Found x010:=(x01 x000):((iff P) Q)
% 138.61/138.93 Found x010 as proof of ((iff P) Q)
% 138.61/138.93 Found x010:=(x01 x000):((iff P) Q)
% 138.61/138.93 Found x010 as proof of ((iff P) Q)
% 138.61/138.93 Found x040:Q
% 138.61/138.93 Found x040 as proof of Q
% 138.61/138.93 Found (x03 x040) as proof of R
% 138.61/138.93 Found (x03 x040) as proof of R
% 138.61/138.93 Found (x03 x040) as proof of R
% 138.61/138.93 Found x10:=(x1 x20):R
% 138.61/138.93 Found (x1 x20) as proof of R
% 138.61/138.93 Found (x1 x20) as proof of R
% 138.61/138.93 Found x10:=(x1 x20):R
% 138.61/138.93 Found (x1 x20) as proof of R
% 138.61/138.93 Found (x1 x20) as proof of R
% 138.61/138.93 Found x010:=(x01 x000):((iff P) Q)
% 138.61/138.93 Found (x01 x000) as proof of ((iff P) Q)
% 138.61/138.93 Found (x01 x000) as proof of ((iff P) Q)
% 138.61/138.93 Found x010:=(x01 x000):((iff P) Q)
% 138.61/138.93 Found x010 as proof of ((iff P) Q)
% 138.61/138.93 Found x010:=(x01 x000):((iff P) Q)
% 138.61/138.93 Found x010 as proof of ((iff P) Q)
% 138.61/138.93 Found x040:Q
% 138.61/138.93 Found x040 as proof of Q
% 138.61/138.93 Found (x03 x040) as proof of P
% 138.61/138.93 Found (x03 x040) as proof of P
% 138.61/138.93 Found (x03 x040) as proof of P
% 138.61/138.93 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 138.61/138.93 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 138.61/138.93 Found eq_substitution as proof of x
% 138.61/138.93 Found (x06 eq_substitution) as proof of Q
% 138.61/138.93 Found (x06 eq_substitution) as proof of Q
% 138.61/138.93 Found (x03 (x06 eq_substitution)) as proof of P
% 138.61/138.93 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 138.61/138.93 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 138.61/138.93 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 138.61/138.93 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 138.61/138.93 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 138.61/138.93 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 138.61/138.93 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 139.20/139.48 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 139.20/139.48 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((Q->P)->(((iff Q) x)->P))
% 139.20/139.48 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((P->Q)->((Q->P)->(((iff Q) x)->P)))
% 139.20/139.48 Found (and_rect10 (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 139.20/139.48 Found ((and_rect1 (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 139.20/139.48 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 139.20/139.48 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 139.20/139.48 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 139.20/139.48 Found x010:=(x01 x000):((iff P) Q)
% 139.20/139.48 Found x010 as proof of ((iff P) Q)
% 139.20/139.48 Found x031:x
% 139.20/139.48 Found x031 as proof of Q
% 139.20/139.48 Found x040:Q
% 139.20/139.48 Found x040 as proof of Q
% 139.20/139.48 Found (x03 x040) as proof of P
% 139.20/139.48 Found (x03 x040) as proof of P
% 139.20/139.48 Found (x03 x040) as proof of P
% 139.20/139.48 Found x000:=(x00 x011):R
% 139.20/139.48 Found (x00 x011) as proof of R
% 139.20/139.48 Found (x00 x011) as proof of R
% 139.20/139.48 Found x000:=(x00 x010):R
% 139.20/139.48 Found (x00 x010) as proof of R
% 139.20/139.48 Found (x00 x010) as proof of R
% 139.20/139.48 Found x040:Q
% 139.20/139.48 Found x040 as proof of Q
% 139.20/139.48 Found (x03 x040) as proof of R
% 139.20/139.48 Found (x03 x040) as proof of R
% 139.20/139.48 Found (x03 x040) as proof of R
% 139.20/139.48 Found x040:Q
% 139.20/139.48 Found x040 as proof of Q
% 139.20/139.48 Found (x03 x040) as proof of P
% 139.20/139.48 Found (x03 x040) as proof of P
% 139.20/139.48 Found (x03 x040) as proof of P
% 139.20/139.48 Found x040:Q
% 139.20/139.48 Found x040 as proof of Q
% 139.20/139.48 Found (x03 x040) as proof of P
% 139.20/139.48 Found (x03 x040) as proof of P
% 139.20/139.48 Found (x03 x040) as proof of P
% 139.20/139.48 Found x010:=(x01 x000):((iff P) Q)
% 139.20/139.48 Found x010 as proof of ((iff P) Q)
% 139.20/139.48 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 139.20/139.48 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 139.20/139.48 Found eta_expansion as proof of x
% 139.20/139.48 Found x010:=(x01 x001):((iff P) Q)
% 139.20/139.48 Found (x01 x001) as proof of ((iff P) Q)
% 139.20/139.48 Found (x01 x001) as proof of ((iff P) Q)
% 139.20/139.48 Found x20:=(x2 x10):((iff P) Q)
% 139.20/139.48 Found (x2 x10) as proof of ((iff P) Q)
% 139.20/139.48 Found (x2 x10) as proof of ((iff P) Q)
% 139.20/139.48 Found x040:Q
% 139.20/139.48 Found x040 as proof of Q
% 139.20/139.48 Found (x03 x040) as proof of P
% 139.20/139.48 Found (x03 x040) as proof of P
% 139.20/139.48 Found (x03 x040) as proof of P
% 139.20/139.48 Found x030:x
% 140.42/140.72 Instantiate: x:=R:Prop
% 140.42/140.72 Found x030 as proof of R
% 140.42/140.72 Found x040:Q
% 140.42/140.72 Found x040 as proof of Q
% 140.42/140.72 Found (x03 x040) as proof of ((iff P) Q)
% 140.42/140.72 Found (x03 x040) as proof of ((iff P) Q)
% 140.42/140.72 Found (x03 x040) as proof of ((iff P) Q)
% 140.42/140.72 Found x00:((iff Q) x)
% 140.42/140.72 Instantiate: x:=P:Prop
% 140.42/140.72 Found x00 as proof of ((iff Q) P)
% 140.42/140.72 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 140.42/140.72 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 140.42/140.72 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 140.42/140.72 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 140.42/140.72 Found x010:=(x01 x000):((iff P) Q)
% 140.42/140.72 Found x010 as proof of ((iff P) Q)
% 140.42/140.72 Found x010:=(x01 x000):((iff P) Q)
% 140.42/140.72 Found (x01 x000) as proof of ((iff P) Q)
% 140.42/140.72 Found (x01 x000) as proof of ((iff P) Q)
% 140.42/140.72 Found x20:=(x2 x10):((iff P) Q)
% 140.42/140.72 Found (x2 x10) as proof of ((iff P) Q)
% 140.42/140.72 Found (x2 x10) as proof of ((iff P) Q)
% 140.42/140.72 Found x040:Q
% 140.42/140.72 Found x040 as proof of Q
% 140.42/140.72 Found (x03 x040) as proof of ((iff P) Q)
% 140.42/140.72 Found (x03 x040) as proof of ((iff P) Q)
% 140.42/140.72 Found (x03 x040) as proof of ((iff P) Q)
% 140.42/140.72 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 140.42/140.72 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 140.42/140.72 Found or_ind as proof of x
% 140.42/140.72 Found (x02 or_ind) as proof of Q
% 140.42/140.72 Found (x02 or_ind) as proof of Q
% 140.42/140.72 Found x030:=(x03 x040):x
% 140.42/140.72 Found (x03 x040) as proof of P
% 140.42/140.72 Found (x03 x040) as proof of P
% 140.42/140.72 Found (x03 x040) as proof of P
% 140.42/140.72 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 140.42/140.72 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 140.42/140.72 Found ex_intro0 as proof of x
% 140.42/140.72 Found (x02 ex_intro0) as proof of Q
% 140.42/140.72 Found (x02 ex_intro0) as proof of Q
% 140.42/140.72 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 140.42/140.72 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 140.42/140.72 Found or_ind as proof of x
% 140.42/140.72 Found (x02 or_ind) as proof of Q
% 140.42/140.72 Found (x02 or_ind) as proof of Q
% 140.42/140.72 Found x010:=(x01 x001):((iff P) Q)
% 140.42/140.72 Found x010 as proof of ((iff P) Q)
% 140.42/140.72 Found x000:=(x00 x010):R
% 140.42/140.72 Found (x00 x010) as proof of R
% 140.42/140.72 Found (x00 x010) as proof of R
% 140.42/140.72 Found x000:=(x00 x010):R
% 140.42/140.72 Found (x00 x010) as proof of R
% 140.42/140.72 Found (x00 x010) as proof of R
% 140.42/140.72 Found x000:=(x00 x010):R
% 140.42/140.72 Found (x00 x010) as proof of R
% 140.42/140.72 Found (x00 x010) as proof of R
% 140.42/140.72 Found x010:=(x01 x000):((iff P) Q)
% 140.42/140.72 Found x010 as proof of ((iff P) Q)
% 140.42/140.72 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 140.42/140.72 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 140.42/140.72 Found or_ind as proof of x
% 140.42/140.72 Found (x02 or_ind) as proof of Q
% 140.42/140.72 Found (x02 or_ind) as proof of Q
% 140.42/140.72 Found x010:=(x01 x000):((iff P) Q)
% 140.42/140.72 Found (x01 x000) as proof of ((iff P) Q)
% 140.42/140.72 Found (x01 x000) as proof of ((iff P) Q)
% 140.42/140.72 Found x010:=(x01 x001):((iff P) Q)
% 140.42/140.72 Found x010 as proof of ((iff P) Q)
% 140.42/140.72 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 140.42/140.72 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 140.42/140.72 Found or_ind as proof of x
% 140.42/140.72 Found (x02 or_ind) as proof of Q
% 140.42/140.72 Found (x02 or_ind) as proof of Q
% 140.42/140.72 Found x010:=(x01 x000):((iff P) Q)
% 140.42/140.72 Found x010 as proof of ((iff P) Q)
% 140.42/140.72 Found x010:=(x01 x001):((iff P) Q)
% 140.42/140.72 Found x010 as proof of ((iff P) Q)
% 140.42/140.72 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 140.42/140.72 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 140.42/140.72 Found ex_intro0 as proof of x
% 140.42/140.72 Found (x02 ex_intro0) as proof of Q
% 140.42/140.72 Found (x02 ex_intro0) as proof of Q
% 140.42/140.72 Found x010:=(x01 x000):((iff P) Q)
% 140.42/140.72 Found x010 as proof of ((iff P) Q)
% 140.42/140.72 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 140.42/140.72 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 140.42/140.72 Found or_ind as proof of x
% 140.42/140.72 Found (x02 or_ind) as proof of Q
% 140.42/140.72 Found (x02 or_ind) as proof of Q
% 140.42/140.72 Found x030:=(x03 x040):x
% 140.42/140.72 Found (x03 x040) as proof of R
% 140.42/140.72 Found (x03 x040) as proof of R
% 140.42/140.72 Found (x03 x040) as proof of R
% 140.42/140.72 Found x010:=(x01 x001):((iff P) Q)
% 140.42/140.72 Found x010 as proof of ((iff P) Q)
% 140.42/140.72 Found x030:=(x03 x040):x
% 140.42/140.72 Instantiate: x:=P:Prop
% 140.42/140.72 Found (x03 x040) as proof of P
% 140.42/140.72 Found (x03 x040) as proof of P
% 140.42/140.72 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 141.38/141.65 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 141.38/141.65 Found ex_intro0 as proof of x
% 141.38/141.65 Found (x02 ex_intro0) as proof of Q
% 141.38/141.65 Found (x02 ex_intro0) as proof of Q
% 141.38/141.65 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 141.38/141.65 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 141.38/141.65 Found or_ind as proof of x
% 141.38/141.65 Found (x02 or_ind) as proof of Q
% 141.38/141.65 Found (x02 or_ind) as proof of Q
% 141.38/141.65 Found x010:x
% 141.38/141.65 Instantiate: x:=P:Prop
% 141.38/141.65 Found x010 as proof of P
% 141.38/141.65 Found x010:=(x01 x000):((iff P) Q)
% 141.38/141.65 Found x010 as proof of ((iff P) Q)
% 141.38/141.65 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 141.38/141.65 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 141.38/141.65 Found eq_sym as proof of x
% 141.38/141.65 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 141.38/141.65 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 141.38/141.65 Found or_ind as proof of x
% 141.38/141.65 Found (x02 or_ind) as proof of Q
% 141.38/141.65 Found (x02 or_ind) as proof of Q
% 141.38/141.65 Found x000:=(x00 x011):R
% 141.38/141.65 Found (x00 x011) as proof of R
% 141.38/141.65 Found (x00 x011) as proof of R
% 141.38/141.65 Found x030:=(x03 x040):x
% 141.38/141.65 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 141.38/141.65 Found (x03 x040) as proof of ((iff P) Q)
% 141.38/141.65 Found (x03 x040) as proof of ((iff P) Q)
% 141.38/141.65 Found (x00 (x03 x040)) as proof of R
% 141.38/141.65 Found (x00 (x03 x040)) as proof of R
% 141.38/141.65 Found x010:=(x01 x000):((iff P) Q)
% 141.38/141.65 Found (x01 x000) as proof of ((iff P) Q)
% 141.38/141.65 Found (x01 x000) as proof of ((iff P) Q)
% 141.38/141.65 Found x010:=(x01 x000):((iff P) Q)
% 141.38/141.65 Found x010 as proof of ((iff P) Q)
% 141.38/141.65 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 141.38/141.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 141.38/141.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 141.38/141.65 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 141.38/141.65 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 141.38/141.65 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 141.38/141.65 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 141.38/141.65 Found ex_intro0 as proof of x
% 141.38/141.65 Found (x02 ex_intro0) as proof of Q
% 141.38/141.65 Found (x02 ex_intro0) as proof of Q
% 141.38/141.65 Found x010:=(x01 x000):((iff P) Q)
% 141.38/141.65 Found x010 as proof of ((iff P) Q)
% 141.38/141.65 Found x010:=(x01 x000):((iff P) Q)
% 141.38/141.65 Found x010 as proof of ((iff P) Q)
% 141.38/141.65 Found x00:((iff Q) x)
% 141.38/141.65 Instantiate: x:=P:Prop
% 141.38/141.65 Found x00 as proof of ((iff Q) P)
% 141.38/141.65 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 141.38/141.65 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 141.38/141.65 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 141.38/141.65 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 141.38/141.65 Found x000:=(x00 x011):R
% 141.38/141.65 Found (x00 x011) as proof of R
% 141.38/141.65 Found (x00 x011) as proof of R
% 141.38/141.65 Found x010:=(x01 x000):((iff P) Q)
% 141.38/141.65 Found (x01 x000) as proof of ((iff P) Q)
% 141.38/141.65 Found (x01 x000) as proof of ((iff P) Q)
% 141.38/141.65 Found x000:=(x00 x011):R
% 141.38/141.65 Found (x00 x011) as proof of R
% 141.38/141.65 Found (x00 x011) as proof of R
% 141.38/141.65 Found x030:=(x03 x040):x
% 141.38/141.65 Instantiate: x:=R:Prop
% 141.38/141.65 Found (x03 x040) as proof of R
% 141.38/141.65 Found (x03 x040) as proof of R
% 141.38/141.65 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 141.38/141.65 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 141.38/141.65 Found x010:=(x01 x000):((iff P) Q)
% 141.38/141.65 Found (x01 x000) as proof of ((iff P) Q)
% 141.38/141.65 Found (x01 x000) as proof of ((iff P) Q)
% 141.38/141.65 Found x010:=(x01 x000):((iff P) Q)
% 141.38/141.65 Found x010 as proof of ((iff P) Q)
% 141.38/141.65 Found x010:=(x01 x000):((iff P) Q)
% 141.38/141.65 Found x010 as proof of ((iff P) Q)
% 141.38/141.65 Found x030:x
% 141.38/141.65 Instantiate: x:=P:Prop
% 141.38/141.65 Found x030 as proof of P
% 141.38/141.65 Found x010:=(x01 x000):((iff P) Q)
% 141.38/141.65 Found x010 as proof of ((iff P) Q)
% 141.38/141.65 Found x020:Q
% 141.38/141.65 Found x020 as proof of Q
% 141.38/141.65 Found x010:=(x01 x000):((iff P) Q)
% 141.38/141.65 Found x010 as proof of ((iff P) Q)
% 141.38/141.65 Found x010:x
% 141.38/141.65 Found x010 as proof of x
% 141.38/141.65 Found x020:Q
% 141.38/141.65 Found x020 as proof of x
% 141.38/141.65 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 141.38/141.65 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 141.38/141.65 Found eq_sym as proof of x
% 141.38/141.65 Found (x04 eq_sym) as proof of Q
% 141.38/141.65 Found (x04 eq_sym) as proof of Q
% 141.38/141.65 Found x011:x
% 141.38/141.65 Found x011 as proof of Q
% 141.77/142.05 Found x011:((iff P) Q)
% 141.77/142.05 Instantiate: x:=((iff P) Q):Prop
% 141.77/142.05 Found x011 as proof of x
% 141.77/142.05 Found x001:R
% 141.77/142.05 Instantiate: x:=R:Prop
% 141.77/142.05 Found x001 as proof of x
% 141.77/142.05 Found x010:=(x01 x000):((iff P) Q)
% 141.77/142.05 Found x010 as proof of ((iff P) Q)
% 141.77/142.05 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 141.77/142.05 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 141.77/142.05 Found or_ind as proof of x
% 141.77/142.05 Found (x02 or_ind) as proof of Q
% 141.77/142.05 Found (x02 or_ind) as proof of Q
% 141.77/142.05 Found x030:x
% 141.77/142.05 Instantiate: x:=P:Prop
% 141.77/142.05 Found x030 as proof of P
% 141.77/142.05 Found x030:x
% 141.77/142.05 Instantiate: x:=P:Prop
% 141.77/142.05 Found (fun (x04:(x->Q))=> x030) as proof of P
% 141.77/142.05 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 141.77/142.05 Found x021:Q
% 141.77/142.05 Found x021 as proof of x
% 141.77/142.05 Found x000:=(x00 x011):R
% 141.77/142.05 Found (x00 x011) as proof of R
% 141.77/142.05 Found (x00 x011) as proof of R
% 141.77/142.05 Found x030:=(x03 x040):x
% 141.77/142.05 Instantiate: x:=R:Prop
% 141.77/142.05 Found (x03 x040) as proof of R
% 141.77/142.05 Found (x03 x040) as proof of R
% 141.77/142.05 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 141.77/142.05 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 141.77/142.05 Found x010:=(x01 x000):((iff P) Q)
% 141.77/142.05 Found x010 as proof of ((iff P) Q)
% 141.77/142.05 Found x030:=(x03 x040):x
% 141.77/142.05 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 141.77/142.05 Found (x03 x040) as proof of ((iff P) Q)
% 141.77/142.05 Found (x03 x040) as proof of ((iff P) Q)
% 141.77/142.05 Found (x00 (x03 x040)) as proof of R
% 141.77/142.05 Found (x00 (x03 x040)) as proof of R
% 141.77/142.05 Found x20:=(x2 x10):((iff P) Q)
% 141.77/142.05 Instantiate: x:=((iff P) Q):Prop
% 141.77/142.05 Found x20 as proof of x
% 141.77/142.05 Found (x02 x20) as proof of Q
% 141.77/142.05 Found (x02 x20) as proof of Q
% 141.77/142.05 Found (x4 (x02 x20)) as proof of P
% 141.77/142.05 Found (fun (x4:(Q->P))=> (x4 (x02 x20))) as proof of P
% 141.77/142.05 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20))) as proof of ((Q->P)->P)
% 141.77/142.05 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20))) as proof of ((P->Q)->((Q->P)->P))
% 141.77/142.05 Found (and_rect20 (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 141.77/142.05 Found ((and_rect2 P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 141.77/142.05 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 141.77/142.05 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10))))) as proof of P
% 141.77/142.05 Found (fun (x02:(x->Q))=> (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10)))))) as proof of P
% 141.77/142.05 Found (fun (x02:(x->Q))=> (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10)))))) as proof of ((x->Q)->P)
% 141.77/142.05 Found x011:x
% 141.77/142.05 Found x011 as proof of x
% 141.77/142.05 Found x010:x
% 141.77/142.05 Found x010 as proof of Q
% 141.77/142.05 Found x021:Q
% 141.77/142.05 Found x021 as proof of Q
% 141.77/142.05 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 141.77/142.05 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 141.77/142.05 Found eq_sym as proof of x
% 141.77/142.05 Found x000:=(x00 x011):R
% 141.77/142.05 Found (x00 x011) as proof of R
% 141.77/142.05 Found (x00 x011) as proof of R
% 141.77/142.05 Found x000:=(x00 x011):R
% 141.77/142.05 Found (x00 x011) as proof of R
% 141.77/142.05 Found (x00 x011) as proof of R
% 141.77/142.05 Found x010:=(x01 x000):((iff P) Q)
% 141.77/142.05 Found x010 as proof of ((iff P) Q)
% 141.77/142.05 Found x030:x
% 141.77/142.05 Instantiate: x:=P:Prop
% 141.77/142.05 Found x030 as proof of P
% 141.77/142.05 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 141.77/142.05 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 141.77/142.05 Found eq_substitution as proof of x
% 141.77/142.05 Found (x06 eq_substitution) as proof of Q
% 141.77/142.05 Found (x06 eq_substitution) as proof of Q
% 141.77/142.05 Found (x03 (x06 eq_substitution)) as proof of P
% 141.77/142.05 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 141.77/142.05 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 141.77/142.05 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 142.08/142.35 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 142.08/142.35 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 142.08/142.35 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 142.08/142.35 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 142.08/142.35 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 142.08/142.35 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((Q->P)->(((iff Q) x)->P))
% 142.08/142.35 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((P->Q)->((Q->P)->(((iff Q) x)->P)))
% 142.08/142.35 Found (and_rect10 (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 142.08/142.35 Found ((and_rect1 (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 142.08/142.35 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 142.08/142.35 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 142.08/142.35 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 142.08/142.35 Found x00:((iff Q) x)
% 142.08/142.35 Instantiate: x:=P:Prop
% 142.08/142.35 Found x00 as proof of ((iff Q) P)
% 142.08/142.35 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 142.08/142.35 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 142.08/142.35 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 142.08/142.35 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 142.08/142.35 Found x000:=(x00 x011):R
% 142.08/142.35 Found (x00 x011) as proof of R
% 142.08/142.35 Found (x00 x011) as proof of R
% 142.08/142.35 Found x010:=(x01 x001):((iff P) Q)
% 142.08/142.35 Found (x01 x001) as proof of ((iff P) Q)
% 142.08/142.35 Found (x01 x001) as proof of ((iff P) Q)
% 142.08/142.35 Found x010:=(x01 x001):((iff P) Q)
% 142.08/142.35 Found (x01 x001) as proof of ((iff P) Q)
% 142.08/142.35 Found (x01 x001) as proof of ((iff P) Q)
% 142.08/142.35 Found x010:=(x01 x000):((iff P) Q)
% 142.08/142.35 Found (x01 x000) as proof of ((iff P) Q)
% 142.08/142.35 Found (x01 x000) as proof of ((iff P) Q)
% 142.08/142.35 Found x000:=(x00 x011):R
% 142.08/142.35 Found (x00 x011) as proof of R
% 142.08/142.35 Found (x00 x011) as proof of R
% 142.08/142.35 Found x010:=(x01 x020):x
% 142.08/142.35 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 142.08/142.35 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 142.08/142.35 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 142.08/142.35 Found x010:=(x01 x020):x
% 142.08/142.35 Found (x01 x020) as proof of ((iff P) Q)
% 142.08/142.35 Found (x01 x020) as proof of ((iff P) Q)
% 142.08/142.35 Found (x01 x020) as proof of ((iff P) Q)
% 142.08/142.35 Found x000:=(x00 x012):R
% 142.51/142.84 Found (x00 x012) as proof of R
% 142.51/142.84 Found (x00 x012) as proof of R
% 142.51/142.84 Found x20:=(x2 x10):((iff P) Q)
% 142.51/142.84 Found (x2 x10) as proof of ((iff P) Q)
% 142.51/142.84 Found (x2 x10) as proof of ((iff P) Q)
% 142.51/142.84 Found x010:=(x01 x001):((iff P) Q)
% 142.51/142.84 Found (x01 x001) as proof of ((iff P) Q)
% 142.51/142.84 Found (x01 x001) as proof of ((iff P) Q)
% 142.51/142.84 Found x000:=(x00 x012):R
% 142.51/142.84 Found (x00 x012) as proof of R
% 142.51/142.84 Found (x00 x012) as proof of R
% 142.51/142.84 Found x000:=(x00 x011):R
% 142.51/142.84 Found (x00 x011) as proof of R
% 142.51/142.84 Found (x00 x011) as proof of R
% 142.51/142.84 Found x010:=(x01 x020):x
% 142.51/142.84 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 142.51/142.84 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 142.51/142.84 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 142.51/142.84 Found x00:((iff Q) x)
% 142.51/142.84 Instantiate: x:=P:Prop
% 142.51/142.84 Found x00 as proof of ((iff Q) P)
% 142.51/142.84 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 142.51/142.84 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 142.51/142.84 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 142.51/142.84 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 142.51/142.84 Found x010:=(x01 x000):((iff P) Q)
% 142.51/142.84 Found x010 as proof of ((iff P) Q)
% 142.51/142.84 Found x010:=(x01 x001):((iff P) Q)
% 142.51/142.84 Found (x01 x001) as proof of ((iff P) Q)
% 142.51/142.84 Found (x01 x001) as proof of ((iff P) Q)
% 142.51/142.84 Found x000:=(x00 x011):R
% 142.51/142.84 Found (x00 x011) as proof of R
% 142.51/142.84 Found (x00 x011) as proof of R
% 142.51/142.84 Found x010:=(x01 x000):((iff P) Q)
% 142.51/142.84 Found (x01 x000) as proof of ((iff P) Q)
% 142.51/142.84 Found (x01 x000) as proof of ((iff P) Q)
% 142.51/142.84 Found x010:=(x01 x000):((iff P) Q)
% 142.51/142.84 Found (x01 x000) as proof of ((iff P) Q)
% 142.51/142.84 Found (x01 x000) as proof of ((iff P) Q)
% 142.51/142.84 Found x000:=(x00 x012):R
% 142.51/142.84 Found (x00 x012) as proof of R
% 142.51/142.84 Found (x00 x012) as proof of R
% 142.51/142.84 Found x010:=(x01 x000):((iff P) Q)
% 142.51/142.84 Found (x01 x000) as proof of ((iff P) Q)
% 142.51/142.84 Found (x01 x000) as proof of ((iff P) Q)
% 142.51/142.84 Found x000:=(x00 x010):R
% 142.51/142.84 Found (x00 x010) as proof of R
% 142.51/142.84 Found (x00 x010) as proof of R
% 142.51/142.84 Found x040:=(x04 x000):Q
% 142.51/142.84 Found (x04 x000) as proof of Q
% 142.51/142.84 Found (x04 x000) as proof of Q
% 142.51/142.84 Found x010:=(x01 x000):((iff P) Q)
% 142.51/142.84 Found x010 as proof of ((iff P) Q)
% 142.51/142.84 Found x000:=(x00 x012):R
% 142.51/142.84 Found (x00 x012) as proof of R
% 142.51/142.84 Found (x00 x012) as proof of R
% 142.51/142.84 Found x010:=(x01 x000):((iff P) Q)
% 142.51/142.84 Found x010 as proof of ((iff P) Q)
% 142.51/142.84 Found x000:=(x00 x011):R
% 142.51/142.84 Found (x00 x011) as proof of R
% 142.51/142.84 Found (x00 x011) as proof of R
% 142.51/142.84 Found x00:((iff Q) x)
% 142.51/142.84 Instantiate: x:=P:Prop
% 142.51/142.84 Found x00 as proof of ((iff Q) P)
% 142.51/142.84 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 142.51/142.84 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 142.51/142.84 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 142.51/142.84 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 142.51/142.84 Found x010:=(x01 x000):((iff P) Q)
% 142.51/142.84 Found (x01 x000) as proof of ((iff P) Q)
% 142.51/142.84 Found (x01 x000) as proof of ((iff P) Q)
% 142.51/142.84 Found x20:=(x2 x10):((iff P) Q)
% 142.51/142.84 Instantiate: x:=((iff P) Q):Prop
% 142.51/142.84 Found x20 as proof of x
% 142.51/142.84 Found (x04 x20) as proof of Q
% 142.51/142.84 Found (x04 x20) as proof of Q
% 142.51/142.84 Found (x02 (x04 x20)) as proof of P
% 142.51/142.84 Found (fun (x04:(x->Q))=> (x02 (x04 x20))) as proof of P
% 142.51/142.84 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20))) as proof of ((x->Q)->P)
% 142.51/142.84 Found (fun (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20))) as proof of ((Q->x)->((x->Q)->P))
% 142.51/142.84 Found (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 142.51/142.84 Found (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 142.51/142.84 Found (and_rect20 (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20)))) as proof of ((Q->x)->((x->Q)->P))
% 142.51/142.84 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20)))) as proof of ((Q->x)->((x->Q)->P))
% 142.51/142.84 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20)))) as proof of ((Q->x)->((x->Q)->P))
% 142.51/142.84 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10))))) as proof of ((Q->x)->((x->Q)->P))
% 142.51/142.84 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10))))) as proof of ((Q->x)->((x->Q)->P))
% 142.98/143.31 Found x20:=(x2 x10):((iff P) Q)
% 142.98/143.31 Instantiate: x:=((iff P) Q):Prop
% 142.98/143.31 Found x20 as proof of x
% 142.98/143.31 Found (x02 x20) as proof of Q
% 142.98/143.31 Found (x02 x20) as proof of Q
% 142.98/143.31 Found (x4 (x02 x20)) as proof of P
% 142.98/143.31 Found (fun (x4:(Q->P))=> (x4 (x02 x20))) as proof of P
% 142.98/143.31 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20))) as proof of ((Q->P)->P)
% 142.98/143.31 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20))) as proof of ((P->Q)->((Q->P)->P))
% 142.98/143.31 Found (and_rect20 (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 142.98/143.31 Found ((and_rect2 P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 142.98/143.31 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 142.98/143.31 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10))))) as proof of P
% 142.98/143.31 Found (fun (x2:(R->((iff P) Q)))=> (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10)))))) as proof of P
% 142.98/143.31 Found (fun (x2:(R->((iff P) Q)))=> (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10)))))) as proof of ((R->((iff P) Q))->P)
% 142.98/143.31 Found x00:((iff Q) x)
% 142.98/143.31 Instantiate: x:=P:Prop
% 142.98/143.31 Found x00 as proof of ((iff Q) P)
% 142.98/143.31 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 142.98/143.31 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 142.98/143.31 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 142.98/143.31 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 142.98/143.31 Found x040:Q
% 142.98/143.31 Found x040 as proof of Q
% 142.98/143.31 Found (x03 x040) as proof of P
% 142.98/143.31 Found (x03 x040) as proof of P
% 142.98/143.31 Found (x03 x040) as proof of P
% 142.98/143.31 Found x000:=(x00 x010):R
% 142.98/143.31 Found (x00 x010) as proof of R
% 142.98/143.31 Found (x00 x010) as proof of R
% 142.98/143.31 Found x000:=(x00 x012):R
% 142.98/143.31 Found (x00 x012) as proof of R
% 142.98/143.31 Found (x00 x012) as proof of R
% 142.98/143.31 Found x010:=(x01 x000):((iff P) Q)
% 142.98/143.31 Found (x01 x000) as proof of ((iff P) Q)
% 142.98/143.31 Found (x01 x000) as proof of ((iff P) Q)
% 142.98/143.31 Found x010:=(x01 x000):((iff P) Q)
% 142.98/143.31 Found (x01 x000) as proof of ((iff P) Q)
% 142.98/143.31 Found (x01 x000) as proof of ((iff P) Q)
% 142.98/143.31 Found x030:x
% 142.98/143.31 Instantiate: x:=P:Prop
% 142.98/143.31 Found (fun (x04:(x->Q))=> x030) as proof of P
% 142.98/143.31 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 142.98/143.31 Found x000:=(x00 x012):R
% 142.98/143.31 Found (x00 x012) as proof of R
% 142.98/143.31 Found (x00 x012) as proof of R
% 142.98/143.31 Found x000:=(x00 x012):R
% 142.98/143.31 Found (x00 x012) as proof of R
% 142.98/143.31 Found (x00 x012) as proof of R
% 142.98/143.31 Found x030:x
% 142.98/143.31 Instantiate: x:=P:Prop
% 142.98/143.31 Found x030 as proof of P
% 142.98/143.31 Found x00:((iff Q) x)
% 142.98/143.31 Instantiate: x:=P:Prop
% 142.98/143.31 Found x00 as proof of ((iff Q) P)
% 142.98/143.31 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 142.98/143.31 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 142.98/143.31 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 142.98/143.31 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 142.98/143.31 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 142.98/143.31 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 142.98/143.31 Found eq_sym as proof of x
% 142.98/143.31 Found x000:=(x00 x010):R
% 142.98/143.31 Found (x00 x010) as proof of R
% 142.98/143.31 Found (x00 x010) as proof of R
% 142.98/143.31 Found x010:=(x01 x020):x
% 142.98/143.31 Instantiate: x:=P:Prop
% 142.98/143.31 Found (x01 x020) as proof of P
% 142.98/143.31 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 142.98/143.31 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 142.98/143.31 Found x010:=(x01 x021):x
% 142.98/143.31 Instantiate: x:=P:Prop
% 142.98/143.31 Found (x01 x021) as proof of P
% 142.98/143.31 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 142.98/143.31 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 142.98/143.31 Found x000:=(x00 x010):R
% 142.98/143.31 Found (x00 x010) as proof of R
% 142.98/143.31 Found (x00 x010) as proof of R
% 142.98/143.31 Found x030:=(x03 x040):x
% 142.98/143.31 Instantiate: x:=P:Prop
% 142.98/143.31 Found (x03 x040) as proof of P
% 142.98/143.31 Found (x03 x040) as proof of P
% 142.98/143.31 Found x010:=(x01 x001):((iff P) Q)
% 142.98/143.31 Found x010 as proof of ((iff P) Q)
% 142.98/143.31 Found x010:=(x01 x001):((iff P) Q)
% 142.98/143.31 Found x010 as proof of ((iff P) Q)
% 142.98/143.31 Found x000:=(x00 x010):R
% 142.98/143.31 Found (x00 x010) as proof of R
% 144.49/144.81 Found (x00 x010) as proof of R
% 144.49/144.81 Found x20:=(x2 x10):((iff P) Q)
% 144.49/144.81 Found x20 as proof of ((iff P) Q)
% 144.49/144.81 Found x030:=(x03 x040):x
% 144.49/144.81 Instantiate: x:=P:Prop
% 144.49/144.81 Found (x03 x040) as proof of P
% 144.49/144.81 Found (x03 x040) as proof of P
% 144.49/144.81 Found x010:=(x01 x001):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x001):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x000:=(x00 x010):R
% 144.49/144.81 Found (x00 x010) as proof of R
% 144.49/144.81 Found (x00 x010) as proof of R
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found (x01 x000) as proof of ((iff P) Q)
% 144.49/144.81 Found (x01 x000) as proof of ((iff P) Q)
% 144.49/144.81 Found x030:=(x03 x040):x
% 144.49/144.81 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 144.49/144.81 Found (x03 x040) as proof of ((iff P) Q)
% 144.49/144.81 Found (x03 x040) as proof of ((iff P) Q)
% 144.49/144.81 Found (x00 (x03 x040)) as proof of R
% 144.49/144.81 Found (x00 (x03 x040)) as proof of R
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found (x01 x000) as proof of ((iff P) Q)
% 144.49/144.81 Found (x01 x000) as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x030:x
% 144.49/144.81 Instantiate: x:=P:Prop
% 144.49/144.81 Found x030 as proof of P
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x011:((iff P) Q)
% 144.49/144.81 Instantiate: x:=((iff P) Q):Prop
% 144.49/144.81 Found x011 as proof of x
% 144.49/144.81 Found x030:=(x03 x040):x
% 144.49/144.81 Instantiate: x:=R:Prop
% 144.49/144.81 Found (x03 x040) as proof of R
% 144.49/144.81 Found (x03 x040) as proof of R
% 144.49/144.81 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 144.49/144.81 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x030:=(x03 x040):x
% 144.49/144.81 Instantiate: x:=P:Prop
% 144.49/144.81 Found (x03 x040) as proof of P
% 144.49/144.81 Found (x03 x040) as proof of P
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found (x01 x000) as proof of ((iff P) Q)
% 144.49/144.81 Found (x01 x000) as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x001):((iff P) Q)
% 144.49/144.81 Found (x01 x001) as proof of ((iff P) Q)
% 144.49/144.81 Found (x01 x001) as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x030:x
% 144.49/144.81 Instantiate: x:=P:Prop
% 144.49/144.81 Found x030 as proof of P
% 144.49/144.81 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 144.49/144.81 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 144.49/144.81 Found eq_sym as proof of x
% 144.49/144.81 Found x010:=(x01 x001):((iff P) Q)
% 144.49/144.81 Found (x01 x001) as proof of ((iff P) Q)
% 144.49/144.81 Found (x01 x001) as proof of ((iff P) Q)
% 144.49/144.81 Found x030:=(x03 x040):x
% 144.49/144.81 Instantiate: x:=R:Prop
% 144.49/144.81 Found (x03 x040) as proof of R
% 144.49/144.81 Found (x03 x040) as proof of R
% 144.49/144.81 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 144.49/144.81 Found (x01 (x03 x040)) as proof of ((iff P) Q)
% 144.49/144.81 Found x030:=(x03 x040):x
% 144.49/144.81 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 144.49/144.81 Found (x03 x040) as proof of ((iff P) Q)
% 144.49/144.81 Found (x03 x040) as proof of ((iff P) Q)
% 144.49/144.81 Found (x00 (x03 x040)) as proof of R
% 144.49/144.81 Found (x00 (x03 x040)) as proof of R
% 144.49/144.81 Found x001:R
% 144.49/144.81 Instantiate: x:=R:Prop
% 144.49/144.81 Found x001 as proof of x
% 144.49/144.81 Found x030:x
% 144.49/144.81 Instantiate: x:=P:Prop
% 144.49/144.81 Found x030 as proof of P
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found x010 as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found (x01 x000) as proof of ((iff P) Q)
% 144.49/144.81 Found (x01 x000) as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x001):((iff P) Q)
% 144.49/144.81 Found (x01 x001) as proof of ((iff P) Q)
% 144.49/144.81 Found (x01 x001) as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x000):((iff P) Q)
% 144.49/144.81 Found (x01 x000) as proof of ((iff P) Q)
% 144.49/144.81 Found (x01 x000) as proof of ((iff P) Q)
% 144.49/144.81 Found x010:=(x01 x020):x
% 144.49/144.81 Found (x01 x020) as proof of R
% 144.49/144.81 Found (x01 x020) as proof of R
% 145.80/146.12 Found (x01 x020) as proof of R
% 145.80/146.12 Found x010:=(x01 x000):((iff P) Q)
% 145.80/146.12 Found (x01 x000) as proof of ((iff P) Q)
% 145.80/146.12 Found (x01 x000) as proof of ((iff P) Q)
% 145.80/146.12 Found x040:Q
% 145.80/146.12 Found x040 as proof of Q
% 145.80/146.12 Found (x03 x040) as proof of P
% 145.80/146.12 Found (x03 x040) as proof of P
% 145.80/146.12 Found (x03 x040) as proof of P
% 145.80/146.12 Found x010:=(x01 x000):((iff P) Q)
% 145.80/146.12 Found x010 as proof of ((iff P) Q)
% 145.80/146.12 Found x000:=(x00 x010):R
% 145.80/146.12 Found (x00 x010) as proof of R
% 145.80/146.12 Found (x00 x010) as proof of R
% 145.80/146.12 Found x010:=(x01 x020):x
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found x010:=(x01 x020):x
% 145.80/146.12 Found (x01 x020) as proof of R
% 145.80/146.12 Found (x01 x020) as proof of R
% 145.80/146.12 Found (x01 x020) as proof of R
% 145.80/146.12 Found x040:=(x04 x000):Q
% 145.80/146.12 Found (x04 x000) as proof of Q
% 145.80/146.12 Found (x04 x000) as proof of Q
% 145.80/146.12 Found x010:=(x01 x020):x
% 145.80/146.12 Found (x01 x020) as proof of R
% 145.80/146.12 Found (x01 x020) as proof of R
% 145.80/146.12 Found (x01 x020) as proof of R
% 145.80/146.12 Found x010:=(x01 x020):x
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found x040:Q
% 145.80/146.12 Found x040 as proof of Q
% 145.80/146.12 Found (x03 x040) as proof of P
% 145.80/146.12 Found (x03 x040) as proof of P
% 145.80/146.12 Found (x03 x040) as proof of P
% 145.80/146.12 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 145.80/146.12 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 145.80/146.12 Found eq_sym as proof of x
% 145.80/146.12 Found x030:x
% 145.80/146.12 Instantiate: x:=P:Prop
% 145.80/146.12 Found x030 as proof of P
% 145.80/146.12 Found x000:=(x00 x010):R
% 145.80/146.12 Found (x00 x010) as proof of R
% 145.80/146.12 Found (x00 x010) as proof of R
% 145.80/146.12 Found x010:=(x01 x020):x
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found x010:=(x01 x000):((iff P) Q)
% 145.80/146.12 Found x010 as proof of ((iff P) Q)
% 145.80/146.12 Found x010:=(x01 x000):((iff P) Q)
% 145.80/146.12 Found x010 as proof of ((iff P) Q)
% 145.80/146.12 Found x010:=(x01 x021):x
% 145.80/146.12 Found (x01 x021) as proof of P
% 145.80/146.12 Found (x01 x021) as proof of P
% 145.80/146.12 Found (x01 x021) as proof of P
% 145.80/146.12 Found x010:=(x01 x020):x
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found x010:=(x01 x020):x
% 145.80/146.12 Found (x01 x020) as proof of ((iff P) Q)
% 145.80/146.12 Found (x01 x020) as proof of ((iff P) Q)
% 145.80/146.12 Found (x01 x020) as proof of ((iff P) Q)
% 145.80/146.12 Found x000:=(x00 x010):R
% 145.80/146.12 Found (x00 x010) as proof of R
% 145.80/146.12 Found (x00 x010) as proof of R
% 145.80/146.12 Found x010:=(x01 x020):x
% 145.80/146.12 Found (x01 x020) as proof of R
% 145.80/146.12 Found (x01 x020) as proof of R
% 145.80/146.12 Found (x01 x020) as proof of R
% 145.80/146.12 Found x000:=(x00 x010):R
% 145.80/146.12 Found (x00 x010) as proof of R
% 145.80/146.12 Found (x00 x010) as proof of R
% 145.80/146.12 Found x030:=(x03 x040):x
% 145.80/146.12 Instantiate: x:=P:Prop
% 145.80/146.12 Found (x03 x040) as proof of P
% 145.80/146.12 Found (x03 x040) as proof of P
% 145.80/146.12 Found x000:=(x00 x010):R
% 145.80/146.12 Found (x00 x010) as proof of R
% 145.80/146.12 Found (x00 x010) as proof of R
% 145.80/146.12 Found x010:=(x01 x000):((iff P) Q)
% 145.80/146.12 Found x010 as proof of ((iff P) Q)
% 145.80/146.12 Found x010:=(x01 x000):((iff P) Q)
% 145.80/146.12 Found x010 as proof of ((iff P) Q)
% 145.80/146.12 Found x010:=(x01 x000):((iff P) Q)
% 145.80/146.12 Found x010 as proof of ((iff P) Q)
% 145.80/146.12 Found x000:=(x00 x010):R
% 145.80/146.12 Found (x00 x010) as proof of R
% 145.80/146.12 Found (x00 x010) as proof of R
% 145.80/146.12 Found x010:=(x01 x000):((iff P) Q)
% 145.80/146.12 Found x010 as proof of ((iff P) Q)
% 145.80/146.12 Found x010:=(x01 x000):((iff P) Q)
% 145.80/146.12 Found x010 as proof of ((iff P) Q)
% 145.80/146.12 Found x010:=(x01 x020):x
% 145.80/146.12 Found (x01 x020) as proof of ((iff P) Q)
% 145.80/146.12 Found (x01 x020) as proof of ((iff P) Q)
% 145.80/146.12 Found (x01 x020) as proof of ((iff P) Q)
% 145.80/146.12 Found x010:=(x01 x020):x
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found x010:=(x01 x020):x
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found (x01 x020) as proof of P
% 145.80/146.12 Found x20:=(x2 x10):((iff P) Q)
% 145.80/146.12 Instantiate: x:=((iff P) Q):Prop
% 145.80/146.12 Found x20 as proof of x
% 145.80/146.12 Found (x04 x20) as proof of Q
% 145.80/146.12 Found (x04 x20) as proof of Q
% 145.80/146.12 Found (x03 (x04 x20)) as proof of P
% 145.80/146.12 Found (fun (x04:(x->Q))=> (x03 (x04 x20))) as proof of P
% 145.80/146.12 Found (fun (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 x20))) as proof of ((x->Q)->P)
% 145.80/146.12 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 x20))) as proof of ((Q->P)->((x->Q)->P))
% 145.80/146.12 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 x20))) as proof of ((P->Q)->((Q->P)->((x->Q)->P)))
% 145.80/146.12 Found (and_rect20 (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 x20)))) as proof of ((x->Q)->P)
% 147.18/147.46 Found ((and_rect2 ((x->Q)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 x20)))) as proof of ((x->Q)->P)
% 147.18/147.46 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) ((x->Q)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 x20)))) as proof of ((x->Q)->P)
% 147.18/147.46 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((x->Q)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 (x2 x10))))) as proof of ((x->Q)->P)
% 147.18/147.46 Found (fun (x01:(Q->x))=> (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((x->Q)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 (x2 x10)))))) as proof of ((x->Q)->P)
% 147.18/147.46 Found (fun (x01:(Q->x))=> (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((x->Q)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 (x2 x10)))))) as proof of ((Q->x)->((x->Q)->P))
% 147.18/147.46 Found x021:Q
% 147.18/147.46 Found x021 as proof of Q
% 147.18/147.46 Found (x01 x021) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 147.18/147.46 Found (x01 x021) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 147.18/147.46 Found (x01 x021) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 147.18/147.46 Found x030:=(x03 x040):x
% 147.18/147.46 Found (x03 x040) as proof of P
% 147.18/147.46 Found (x03 x040) as proof of P
% 147.18/147.46 Found (x03 x040) as proof of P
% 147.18/147.46 Found x010:=(x01 x020):x
% 147.18/147.46 Found (x01 x020) as proof of ((iff P) Q)
% 147.18/147.46 Found (x01 x020) as proof of ((iff P) Q)
% 147.18/147.46 Found (x01 x020) as proof of ((iff P) Q)
% 147.18/147.46 Found x000:=(x00 x010):R
% 147.18/147.46 Found (x00 x010) as proof of R
% 147.18/147.46 Found (x00 x010) as proof of R
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x020):x
% 147.18/147.46 Found (x01 x020) as proof of P
% 147.18/147.46 Found (x01 x020) as proof of P
% 147.18/147.46 Found (x01 x020) as proof of P
% 147.18/147.46 Found x010:=(x01 x020):x
% 147.18/147.46 Found (x01 x020) as proof of P
% 147.18/147.46 Found (x01 x020) as proof of P
% 147.18/147.46 Found (x01 x020) as proof of P
% 147.18/147.46 Found x010:=(x01 x021):x
% 147.18/147.46 Found (x01 x021) as proof of P
% 147.18/147.46 Found (x01 x021) as proof of P
% 147.18/147.46 Found (x01 x021) as proof of P
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x002):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found (x01 x000) as proof of ((iff P) Q)
% 147.18/147.46 Found (x01 x000) as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x020):x
% 147.18/147.46 Found (x01 x020) as proof of ((iff P) Q)
% 147.18/147.46 Found (x01 x020) as proof of ((iff P) Q)
% 147.18/147.46 Found (x01 x020) as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found (x01 x000) as proof of ((iff P) Q)
% 147.18/147.46 Found (x01 x000) as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x002):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x030:=(x03 x040):x
% 147.18/147.46 Instantiate: x:=P:Prop
% 147.18/147.46 Found (x03 x040) as proof of P
% 147.18/147.46 Found (x03 x040) as proof of P
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found (x01 x000) as proof of ((iff P) Q)
% 147.18/147.46 Found (x01 x000) as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x001):((iff P) Q)
% 147.18/147.46 Found (x01 x001) as proof of ((iff P) Q)
% 147.18/147.46 Found (x01 x001) as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:=(x01 x000):((iff P) Q)
% 147.18/147.46 Found x010 as proof of ((iff P) Q)
% 147.18/147.46 Found x010:x
% 147.18/147.46 Found x010 as proof of Q
% 147.18/147.46 Found x020:Q
% 147.18/147.46 Found x020 as proof of Q
% 147.18/147.46 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 147.18/147.46 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 149.86/150.15 Found eq_sym as proof of x
% 149.86/150.15 Found x010:x
% 149.86/150.15 Found x010 as proof of x
% 149.86/150.15 Found x020:Q
% 149.86/150.15 Found x020 as proof of x
% 149.86/150.15 Found x010:=(x01 x000):((iff P) Q)
% 149.86/150.15 Found (x01 x000) as proof of ((iff P) Q)
% 149.86/150.15 Found (x01 x000) as proof of ((iff P) Q)
% 149.86/150.15 Found x030:x
% 149.86/150.15 Instantiate: x:=P:Prop
% 149.86/150.15 Found x030 as proof of P
% 149.86/150.15 Found x000:=(x00 x011):R
% 149.86/150.15 Found (x00 x011) as proof of R
% 149.86/150.15 Found (x00 x011) as proof of R
% 149.86/150.15 Found x010:=(x01 x000):((iff P) Q)
% 149.86/150.15 Found (x01 x000) as proof of ((iff P) Q)
% 149.86/150.15 Found (x01 x000) as proof of ((iff P) Q)
% 149.86/150.15 Found x010:=(x01 x001):((iff P) Q)
% 149.86/150.15 Found x010 as proof of ((iff P) Q)
% 149.86/150.15 Found x040:Q
% 149.86/150.15 Found x040 as proof of Q
% 149.86/150.15 Found x031:x
% 149.86/150.15 Found x031 as proof of Q
% 149.86/150.15 Found x030:x
% 149.86/150.15 Found x030 as proof of Q
% 149.86/150.15 Found x040:Q
% 149.86/150.15 Found x040 as proof of x
% 149.86/150.15 Found x030:x
% 149.86/150.15 Found x030 as proof of x
% 149.86/150.15 Found x031:x
% 149.86/150.15 Found x031 as proof of x
% 149.86/150.15 Found x041:Q
% 149.86/150.15 Found x041 as proof of x
% 149.86/150.15 Found x041:Q
% 149.86/150.15 Found x041 as proof of Q
% 149.86/150.15 Found x010:=(x01 x000):((iff P) Q)
% 149.86/150.15 Found x010 as proof of ((iff P) Q)
% 149.86/150.15 Found x010:=(x01 x000):((iff P) Q)
% 149.86/150.15 Found (x01 x000) as proof of ((iff P) Q)
% 149.86/150.15 Found (x01 x000) as proof of ((iff P) Q)
% 149.86/150.15 Found x010:=(x01 x000):((iff P) Q)
% 149.86/150.15 Found x010 as proof of ((iff P) Q)
% 149.86/150.15 Found x040:Q
% 149.86/150.15 Found x040 as proof of Q
% 149.86/150.15 Found (x03 x040) as proof of P
% 149.86/150.15 Found (x03 x040) as proof of P
% 149.86/150.15 Found (x03 x040) as proof of P
% 149.86/150.15 Found x010:=(x01 x001):((iff P) Q)
% 149.86/150.15 Found x010 as proof of ((iff P) Q)
% 149.86/150.15 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 149.86/150.15 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 149.86/150.15 Found ex_intro0 as proof of x
% 149.86/150.15 Found (x04 ex_intro0) as proof of Q
% 149.86/150.15 Found (x04 ex_intro0) as proof of Q
% 149.86/150.15 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 149.86/150.15 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 149.86/150.15 Found eq_sym as proof of x
% 149.86/150.15 Found x000:=(x00 x011):R
% 149.86/150.15 Found (x00 x011) as proof of R
% 149.86/150.15 Found (x00 x011) as proof of R
% 149.86/150.15 Found x000:=(x00 x011):R
% 149.86/150.15 Found (x00 x011) as proof of R
% 149.86/150.15 Found (x00 x011) as proof of R
% 149.86/150.15 Found x20:=(x2 x10):((iff P) Q)
% 149.86/150.15 Found (x2 x10) as proof of ((iff P) Q)
% 149.86/150.15 Found (x2 x10) as proof of ((iff P) Q)
% 149.86/150.15 Found x010:=(x01 x000):((iff P) Q)
% 149.86/150.15 Found x010 as proof of ((iff P) Q)
% 149.86/150.15 Found x030:x
% 149.86/150.15 Instantiate: x:=P:Prop
% 149.86/150.15 Found x030 as proof of P
% 149.86/150.15 Found x040:Q
% 149.86/150.15 Found x040 as proof of Q
% 149.86/150.15 Found (x03 x040) as proof of P
% 149.86/150.15 Found (x03 x040) as proof of P
% 149.86/150.15 Found (x03 x040) as proof of P
% 149.86/150.15 Found x020:Q
% 149.86/150.15 Found x020 as proof of Q
% 149.86/150.15 Found (x01 x020) as proof of P
% 149.86/150.15 Found (x01 x020) as proof of P
% 149.86/150.15 Found (x01 x020) as proof of P
% 149.86/150.15 Found x010:=(x01 x001):((iff P) Q)
% 149.86/150.15 Found (x01 x001) as proof of ((iff P) Q)
% 149.86/150.15 Found (x01 x001) as proof of ((iff P) Q)
% 149.86/150.15 Found x000:=(x00 x010):R
% 149.86/150.15 Found (x00 x010) as proof of R
% 149.86/150.15 Found (x00 x010) as proof of R
% 149.86/150.15 Found x000:=(x00 x010):R
% 149.86/150.15 Found (x00 x010) as proof of R
% 149.86/150.15 Found (x00 x010) as proof of R
% 149.86/150.15 Found x010:=(x01 x000):((iff P) Q)
% 149.86/150.15 Found (x01 x000) as proof of ((iff P) Q)
% 149.86/150.15 Found (x01 x000) as proof of ((iff P) Q)
% 149.86/150.15 Found x010:=(x01 x000):((iff P) Q)
% 149.86/150.15 Found (x01 x000) as proof of ((iff P) Q)
% 149.86/150.15 Found (x01 x000) as proof of ((iff P) Q)
% 149.86/150.15 Found x000:=(x00 x010):R
% 149.86/150.15 Found (x00 x010) as proof of R
% 149.86/150.15 Found (x00 x010) as proof of R
% 149.86/150.15 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 149.86/150.15 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 149.86/150.15 Found or_ind as proof of x
% 149.86/150.15 Found (x02 or_ind) as proof of Q
% 149.86/150.15 Found (x02 or_ind) as proof of Q
% 149.86/150.15 Found x000:=(x00 x010):R
% 149.86/150.15 Found (x00 x010) as proof of R
% 149.86/150.15 Found (x00 x010) as proof of R
% 149.86/150.15 Found x000:=(x00 x010):R
% 149.86/150.15 Found (x00 x010) as proof of R
% 149.86/150.15 Found (x00 x010) as proof of R
% 149.86/150.15 Found x010:=(x01 x000):((iff P) Q)
% 149.86/150.15 Found (x01 x000) as proof of ((iff P) Q)
% 149.86/150.15 Found (x01 x000) as proof of ((iff P) Q)
% 149.86/150.15 Found x010:=(x01 x000):((iff P) Q)
% 149.86/150.15 Found x010 as proof of ((iff P) Q)
% 149.86/150.15 Found x010:=(x01 x000):((iff P) Q)
% 149.86/150.15 Found x010 as proof of ((iff P) Q)
% 149.86/150.15 Found x010:=(x01 x020):x
% 149.86/150.15 Instantiate: x:=P:Prop
% 149.86/150.15 Found (x01 x020) as proof of P
% 149.86/150.15 Found (x01 x020) as proof of P
% 149.86/150.15 Found x010:=(x01 x000):((iff P) Q)
% 149.86/150.15 Found x010 as proof of ((iff P) Q)
% 149.86/150.15 Found x010:=(x01 x000):((iff P) Q)
% 150.78/151.11 Found x010 as proof of ((iff P) Q)
% 150.78/151.11 Found x030:x
% 150.78/151.11 Instantiate: x:=P:Prop
% 150.78/151.11 Found x030 as proof of P
% 150.78/151.11 Found x011:((iff P) Q)
% 150.78/151.11 Instantiate: x:=((iff P) Q):Prop
% 150.78/151.11 Found x011 as proof of x
% 150.78/151.11 Found x010:x
% 150.78/151.11 Instantiate: x:=P:Prop
% 150.78/151.11 Found (fun (x02:(x->Q))=> x010) as proof of P
% 150.78/151.11 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 150.78/151.11 Found x010:=(x01 x000):((iff P) Q)
% 150.78/151.11 Found (x01 x000) as proof of ((iff P) Q)
% 150.78/151.11 Found (x01 x000) as proof of ((iff P) Q)
% 150.78/151.11 Found x010:=(x01 x000):((iff P) Q)
% 150.78/151.11 Found (x01 x000) as proof of ((iff P) Q)
% 150.78/151.11 Found (x01 x000) as proof of ((iff P) Q)
% 150.78/151.11 Found x010:=(x01 x000):((iff P) Q)
% 150.78/151.11 Found x010 as proof of ((iff P) Q)
% 150.78/151.11 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 150.78/151.11 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 150.78/151.11 Found or_ind as proof of x
% 150.78/151.11 Found (x02 or_ind) as proof of Q
% 150.78/151.11 Found (x02 or_ind) as proof of Q
% 150.78/151.11 Found x010:=(x01 x000):((iff P) Q)
% 150.78/151.11 Found x010 as proof of ((iff P) Q)
% 150.78/151.11 Found x011:x
% 150.78/151.11 Found x011 as proof of Q
% 150.78/151.11 Found x010:=(x01 x000):((iff P) Q)
% 150.78/151.11 Found x010 as proof of ((iff P) Q)
% 150.78/151.11 Found x030:x
% 150.78/151.11 Instantiate: x:=P:Prop
% 150.78/151.11 Found x030 as proof of P
% 150.78/151.11 Found x011:((iff P) Q)
% 150.78/151.11 Instantiate: x:=((iff P) Q):Prop
% 150.78/151.11 Found x011 as proof of x
% 150.78/151.11 Found x001:R
% 150.78/151.11 Instantiate: x:=R:Prop
% 150.78/151.11 Found x001 as proof of x
% 150.78/151.11 Found x030:x
% 150.78/151.11 Instantiate: x:=P:Prop
% 150.78/151.11 Found x030 as proof of P
% 150.78/151.11 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 150.78/151.11 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 150.78/151.11 Found eq_sym as proof of x
% 150.78/151.11 Found x000:=(x00 x012):R
% 150.78/151.11 Found (x00 x012) as proof of R
% 150.78/151.11 Found (x00 x012) as proof of R
% 150.78/151.11 Found x010:=(x01 x000):((iff P) Q)
% 150.78/151.11 Found (x01 x000) as proof of ((iff P) Q)
% 150.78/151.11 Found (x01 x000) as proof of ((iff P) Q)
% 150.78/151.11 Found x010:=(x01 x000):((iff P) Q)
% 150.78/151.11 Found x010 as proof of ((iff P) Q)
% 150.78/151.11 Found x20:=(x2 x10):((iff P) Q)
% 150.78/151.11 Instantiate: x:=((iff P) Q):Prop
% 150.78/151.11 Found x20 as proof of x
% 150.78/151.11 Found (x02 x20) as proof of Q
% 150.78/151.11 Found (x02 x20) as proof of Q
% 150.78/151.11 Found (x4 (x02 x20)) as proof of P
% 150.78/151.11 Found (fun (x4:(Q->P))=> (x4 (x02 x20))) as proof of P
% 150.78/151.11 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20))) as proof of ((Q->P)->P)
% 150.78/151.11 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20))) as proof of ((P->Q)->((Q->P)->P))
% 150.78/151.11 Found (and_rect20 (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 150.78/151.11 Found ((and_rect2 P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 150.78/151.11 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 x20)))) as proof of P
% 150.78/151.11 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10))))) as proof of P
% 150.78/151.11 Found (fun (x02:(x->Q))=> (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10)))))) as proof of P
% 150.78/151.11 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10)))))) as proof of ((x->Q)->P)
% 150.78/151.11 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 (x2 x10)))))) as proof of ((Q->x)->((x->Q)->P))
% 150.78/151.11 Found x010:x
% 150.78/151.11 Instantiate: x:=P:Prop
% 150.78/151.11 Found x010 as proof of P
% 150.78/151.11 Found x030:x
% 150.78/151.11 Instantiate: x:=P:Prop
% 150.78/151.11 Found x030 as proof of P
% 150.78/151.11 Found x011:x
% 150.78/151.11 Found x011 as proof of x
% 150.78/151.11 Found x001:R
% 150.78/151.11 Instantiate: x:=R:Prop
% 150.78/151.11 Found x001 as proof of x
% 150.78/151.11 Found x011:x
% 150.78/151.11 Found x011 as proof of Q
% 150.78/151.11 Found x011:x
% 150.78/151.11 Found x011 as proof of x
% 150.78/151.11 Found x031:x
% 150.78/151.11 Found x031 as proof of x
% 150.78/151.11 Found x041:Q
% 150.78/151.11 Found x041 as proof of Q
% 150.78/151.11 Found x041:Q
% 150.78/151.11 Found x041 as proof of x
% 150.78/151.11 Found x040:Q
% 150.78/151.11 Found x040 as proof of Q
% 150.78/151.11 Found x040:Q
% 150.78/151.11 Found x040 as proof of x
% 150.78/151.11 Found x031:x
% 150.78/151.11 Found x031 as proof of Q
% 150.78/151.11 Found x030:x
% 150.78/151.11 Found x030 as proof of x
% 150.78/151.11 Found x000:=(x00 x012):R
% 150.78/151.11 Found (x00 x012) as proof of R
% 150.78/151.11 Found (x00 x012) as proof of R
% 151.30/151.57 Found x010:=(x01 x000):((iff P) Q)
% 151.30/151.57 Found x010 as proof of ((iff P) Q)
% 151.30/151.57 Found x010:=(x01 x022):x
% 151.30/151.57 Instantiate: x:=P:Prop
% 151.30/151.57 Found (x01 x022) as proof of P
% 151.30/151.57 Found (x01 x022) as proof of P
% 151.30/151.57 Found x010:=(x01 x000):((iff P) Q)
% 151.30/151.57 Found x010 as proof of ((iff P) Q)
% 151.30/151.57 Found x020:Q
% 151.30/151.57 Found x020 as proof of x
% 151.30/151.57 Found x030:x
% 151.30/151.57 Found x030 as proof of Q
% 151.30/151.57 Found x010:=(x01 x000):((iff P) Q)
% 151.30/151.57 Found x010 as proof of ((iff P) Q)
% 151.30/151.57 Found x020:Q
% 151.30/151.57 Found x020 as proof of Q
% 151.30/151.57 Found x030:x
% 151.30/151.57 Instantiate: x:=P:Prop
% 151.30/151.57 Found (fun (x04:(x->Q))=> x030) as proof of P
% 151.30/151.57 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 151.30/151.57 Found x010:=(x01 x001):((iff P) Q)
% 151.30/151.57 Found (x01 x001) as proof of ((iff P) Q)
% 151.30/151.57 Found (x01 x001) as proof of ((iff P) Q)
% 151.30/151.57 Found x010:=(x01 x001):((iff P) Q)
% 151.30/151.57 Found (x01 x001) as proof of ((iff P) Q)
% 151.30/151.57 Found (x01 x001) as proof of ((iff P) Q)
% 151.30/151.57 Found x010:=(x01 x000):((iff P) Q)
% 151.30/151.57 Found (x01 x000) as proof of ((iff P) Q)
% 151.30/151.57 Found (x01 x000) as proof of ((iff P) Q)
% 151.30/151.57 Found x010:=(x01 x000):((iff P) Q)
% 151.30/151.57 Found x010 as proof of ((iff P) Q)
% 151.30/151.57 Found x010:=(x01 x000):((iff P) Q)
% 151.30/151.57 Found x010 as proof of ((iff P) Q)
% 151.30/151.57 Found x010:=(x01 x000):((iff P) Q)
% 151.30/151.57 Found x010 as proof of ((iff P) Q)
% 151.30/151.57 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 151.30/151.57 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 151.30/151.57 Found ex_intro0 as proof of x
% 151.30/151.57 Found (x04 ex_intro0) as proof of Q
% 151.30/151.57 Found (x04 ex_intro0) as proof of Q
% 151.30/151.57 Found x000:=(x00 x012):R
% 151.30/151.57 Found (x00 x012) as proof of R
% 151.30/151.57 Found (x00 x012) as proof of R
% 151.30/151.57 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 151.30/151.57 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 151.30/151.57 Found eq_substitution as proof of x
% 151.30/151.57 Found (x06 eq_substitution) as proof of Q
% 151.30/151.57 Found (x06 eq_substitution) as proof of Q
% 151.30/151.57 Found (x04 (x06 eq_substitution)) as proof of P
% 151.30/151.57 Found (fun (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of P
% 151.30/151.57 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 151.30/151.57 Found (fun (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 151.30/151.57 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 151.30/151.57 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 151.30/151.57 Found (and_rect20 (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 151.30/151.57 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 151.30/151.57 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 151.30/151.57 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 151.30/151.57 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 151.30/151.57 Found (and_rect10 (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 151.30/151.57 Found ((and_rect1 P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 152.02/152.33 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 152.02/152.33 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found x010 as proof of ((iff P) Q)
% 152.02/152.33 Found x010:=(x01 x001):((iff P) Q)
% 152.02/152.33 Found (x01 x001) as proof of ((iff P) Q)
% 152.02/152.33 Found (x01 x001) as proof of ((iff P) Q)
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found x010 as proof of ((iff P) Q)
% 152.02/152.33 Found x000:=(x00 x012):R
% 152.02/152.33 Found (x00 x012) as proof of R
% 152.02/152.33 Found (x00 x012) as proof of R
% 152.02/152.33 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 152.02/152.33 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 152.02/152.33 Found or_ind as proof of x
% 152.02/152.33 Found (x02 or_ind) as proof of Q
% 152.02/152.33 Found (x02 or_ind) as proof of Q
% 152.02/152.33 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 152.02/152.33 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 152.02/152.33 Found eta_expansion as proof of x
% 152.02/152.33 Found x030:x
% 152.02/152.33 Instantiate: x:=R:Prop
% 152.02/152.33 Found x030 as proof of R
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found (x01 x000) as proof of ((iff P) Q)
% 152.02/152.33 Found (x01 x000) as proof of ((iff P) Q)
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found (x01 x000) as proof of ((iff P) Q)
% 152.02/152.33 Found (x01 x000) as proof of ((iff P) Q)
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found (x01 x000) as proof of ((iff P) Q)
% 152.02/152.33 Found (x01 x000) as proof of ((iff P) Q)
% 152.02/152.33 Found x010:=(x01 x001):((iff P) Q)
% 152.02/152.33 Found (x01 x001) as proof of ((iff P) Q)
% 152.02/152.33 Found (x01 x001) as proof of ((iff P) Q)
% 152.02/152.33 Found x000:=(x00 x012):R
% 152.02/152.33 Found (x00 x012) as proof of R
% 152.02/152.33 Found (x00 x012) as proof of R
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found x010 as proof of ((iff P) Q)
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found x010 as proof of ((iff P) Q)
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found x010 as proof of ((iff P) Q)
% 152.02/152.33 Found x010:=(x01 x020):x
% 152.02/152.33 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 152.02/152.33 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 152.02/152.33 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 152.02/152.33 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found x010 as proof of ((iff P) Q)
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found (x01 x000) as proof of ((iff P) Q)
% 152.02/152.33 Found (x01 x000) as proof of ((iff P) Q)
% 152.02/152.33 Found x02:((iff Q) x)
% 152.02/152.33 Instantiate: x:=P:Prop
% 152.02/152.33 Found x02 as proof of ((iff Q) P)
% 152.02/152.33 Found (iff_sym00 x02) as proof of ((and (P->Q)) (Q->P))
% 152.02/152.33 Found ((iff_sym0 P) x02) as proof of ((and (P->Q)) (Q->P))
% 152.02/152.33 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 152.02/152.33 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 152.02/152.33 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found x010 as proof of ((iff P) Q)
% 152.02/152.33 Found x010:=(x01 x001):((iff P) Q)
% 152.02/152.33 Found x010 as proof of ((iff P) Q)
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found (x01 x000) as proof of ((iff P) Q)
% 152.02/152.33 Found (x01 x000) as proof of ((iff P) Q)
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found (x01 x000) as proof of ((iff P) Q)
% 152.02/152.33 Found (x01 x000) as proof of ((iff P) Q)
% 152.02/152.33 Found x000:=(x00 x011):R
% 152.02/152.33 Found (x00 x011) as proof of R
% 152.02/152.33 Found (x00 x011) as proof of R
% 152.02/152.33 Found x010:=(x01 x000):((iff P) Q)
% 152.02/152.33 Found x010 as proof of ((iff P) Q)
% 152.02/152.33 Found x000:=(x00 x010):R
% 152.02/152.33 Found (x00 x010) as proof of R
% 152.02/152.33 Found (x00 x010) as proof of R
% 152.02/152.33 Found x010:=(x01 x001):((iff P) Q)
% 152.02/152.33 Found (x01 x001) as proof of ((iff P) Q)
% 152.02/152.33 Found (x01 x001) as proof of ((iff P) Q)
% 152.02/152.33 Found x000:=(x00 x012):R
% 152.02/152.33 Found (x00 x012) as proof of R
% 152.02/152.33 Found (x00 x012) as proof of R
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x000:=(x00 x011):R
% 153.68/153.97 Found (x00 x011) as proof of R
% 153.68/153.97 Found (x00 x011) as proof of R
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x000:=(x00 x010):R
% 153.68/153.97 Found (x00 x010) as proof of R
% 153.68/153.97 Found (x00 x010) as proof of R
% 153.68/153.97 Found x000:=(x00 x010):R
% 153.68/153.97 Found (x00 x010) as proof of R
% 153.68/153.97 Found (x00 x010) as proof of R
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x000:=(x00 x010):R
% 153.68/153.97 Found (x00 x010) as proof of R
% 153.68/153.97 Found (x00 x010) as proof of R
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x000:=(x00 x010):R
% 153.68/153.97 Found (x00 x010) as proof of R
% 153.68/153.97 Found (x00 x010) as proof of R
% 153.68/153.97 Found x030:x
% 153.68/153.97 Instantiate: x:=P:Prop
% 153.68/153.97 Found (fun (x04:(x->Q))=> x030) as proof of P
% 153.68/153.97 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 153.68/153.97 Found x010:=(x01 x021):x
% 153.68/153.97 Instantiate: x:=P:Prop
% 153.68/153.97 Found (x01 x021) as proof of P
% 153.68/153.97 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 153.68/153.97 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 153.68/153.97 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 153.68/153.97 Found x010:=(x01 x001):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x001):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x001):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x000:=(x00 x010):R
% 153.68/153.97 Found (x00 x010) as proof of R
% 153.68/153.97 Found (x00 x010) as proof of R
% 153.68/153.97 Found x00:((iff Q) x)
% 153.68/153.97 Instantiate: x:=P:Prop
% 153.68/153.97 Found x00 as proof of ((iff Q) P)
% 153.68/153.97 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 153.68/153.97 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 153.68/153.97 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 153.68/153.97 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 153.68/153.97 Found x000:=(x00 x011):R
% 153.68/153.97 Found (x00 x011) as proof of R
% 153.68/153.97 Found (x00 x011) as proof of R
% 153.68/153.97 Found x010:=(x01 x001):((iff P) Q)
% 153.68/153.97 Found (x01 x001) as proof of ((iff P) Q)
% 153.68/153.97 Found (x01 x001) as proof of ((iff P) Q)
% 153.68/153.97 Found x030:=(x03 x040):x
% 153.68/153.97 Found (x03 x040) as proof of R
% 153.68/153.97 Found (x03 x040) as proof of R
% 153.68/153.97 Found (x03 x040) as proof of R
% 153.68/153.97 Found x000:=(x00 x010):R
% 153.68/153.97 Found (x00 x010) as proof of R
% 153.68/153.97 Found (x00 x010) as proof of R
% 153.68/153.97 Found x010:=(x01 x001):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x001):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x001):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x001):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x001):((iff P) Q)
% 153.68/153.97 Found (x01 x001) as proof of ((iff P) Q)
% 153.68/153.97 Found (x01 x001) as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x040:Q
% 153.68/153.97 Found x040 as proof of Q
% 153.68/153.97 Found (x03 x040) as proof of P
% 153.68/153.97 Found (x03 x040) as proof of P
% 153.68/153.97 Found (x03 x040) as proof of P
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found (x01 x000) as proof of ((iff P) Q)
% 153.68/153.97 Found (x01 x000) as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found (x01 x000) as proof of ((iff P) Q)
% 153.68/153.97 Found (x01 x000) as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x030:x
% 153.68/153.97 Instantiate: x:=P:Prop
% 153.68/153.97 Found x030 as proof of P
% 153.68/153.97 Found x011:((iff P) Q)
% 153.68/153.97 Instantiate: x:=((iff P) Q):Prop
% 153.68/153.97 Found x011 as proof of x
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x010:=(x01 x000):((iff P) Q)
% 153.68/153.97 Found x010 as proof of ((iff P) Q)
% 153.68/153.97 Found x001:R
% 153.68/153.97 Instantiate: x:=R:Prop
% 153.68/153.97 Found x001 as proof of x
% 153.68/153.97 Found x001:R
% 153.68/153.97 Instantiate: x:=R:Prop
% 153.68/153.97 Found x001 as proof of x
% 153.68/153.97 Found x030:x
% 153.68/153.97 Instantiate: x:=P:Prop
% 153.68/153.97 Found x030 as proof of P
% 153.68/153.97 Found x011:((iff P) Q)
% 153.68/153.97 Instantiate: x:=((iff P) Q):Prop
% 153.68/153.97 Found x011 as proof of x
% 153.68/153.97 Found x02:((iff Q) x)
% 154.78/155.13 Instantiate: x:=P:Prop
% 154.78/155.13 Found x02 as proof of ((iff Q) P)
% 154.78/155.13 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 154.78/155.13 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 154.78/155.13 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 154.78/155.13 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 154.78/155.13 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 154.78/155.13 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 154.78/155.13 Found x010:=(x01 x000):((iff P) Q)
% 154.78/155.13 Found (x01 x000) as proof of ((iff P) Q)
% 154.78/155.13 Found (x01 x000) as proof of ((iff P) Q)
% 154.78/155.13 Found x010:=(x01 x000):((iff P) Q)
% 154.78/155.13 Found (x01 x000) as proof of ((iff P) Q)
% 154.78/155.13 Found (x01 x000) as proof of ((iff P) Q)
% 154.78/155.13 Found x010:=(x01 x000):((iff P) Q)
% 154.78/155.13 Found x010 as proof of ((iff P) Q)
% 154.78/155.13 Found x010:=(x01 x000):((iff P) Q)
% 154.78/155.13 Found x010 as proof of ((iff P) Q)
% 154.78/155.13 Found x010:=(x01 x001):((iff P) Q)
% 154.78/155.13 Found x010 as proof of ((iff P) Q)
% 154.78/155.13 Found x030:x
% 154.78/155.13 Instantiate: x:=P:Prop
% 154.78/155.13 Found x030 as proof of P
% 154.78/155.13 Found x030:x
% 154.78/155.13 Instantiate: x:=P:Prop
% 154.78/155.13 Found x030 as proof of P
% 154.78/155.13 Found x010:=(x01 x000):((iff P) Q)
% 154.78/155.13 Found x010 as proof of ((iff P) Q)
% 154.78/155.13 Found x010:=(x01 x000):((iff P) Q)
% 154.78/155.13 Found x010 as proof of ((iff P) Q)
% 154.78/155.13 Found x030:P
% 154.78/155.13 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 154.78/155.13 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 154.78/155.13 Found x010:=(x01 x000):((iff P) Q)
% 154.78/155.13 Found x010 as proof of ((iff P) Q)
% 154.78/155.13 Found x030:x
% 154.78/155.13 Instantiate: x:=P:Prop
% 154.78/155.13 Found (fun (x04:(x->Q))=> x030) as proof of P
% 154.78/155.13 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 154.78/155.13 Found x030:x
% 154.78/155.13 Instantiate: x:=P:Prop
% 154.78/155.13 Found x030 as proof of P
% 154.78/155.13 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 154.78/155.13 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 154.78/155.13 Found eq_sym as proof of x
% 154.78/155.13 Found x010:=(x01 x000):((iff P) Q)
% 154.78/155.13 Found (x01 x000) as proof of ((iff P) Q)
% 154.78/155.13 Found (x01 x000) as proof of ((iff P) Q)
% 154.78/155.13 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 154.78/155.13 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 154.78/155.13 Found eq_substitution as proof of x
% 154.78/155.13 Found (x06 eq_substitution) as proof of Q
% 154.78/155.13 Found (x06 eq_substitution) as proof of Q
% 154.78/155.13 Found (x04 (x06 eq_substitution)) as proof of P
% 154.78/155.13 Found (fun (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of P
% 154.78/155.13 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 154.78/155.13 Found (fun (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 154.78/155.13 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 154.78/155.13 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 154.78/155.13 Found (and_rect20 (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 154.78/155.13 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 154.78/155.13 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 154.78/155.13 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 154.78/155.13 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 154.78/155.13 Found (and_rect10 (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 154.98/155.30 Found ((and_rect1 P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 154.98/155.30 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 154.98/155.30 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 154.98/155.30 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 154.98/155.30 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 154.98/155.30 Found eq_substitution as proof of x
% 154.98/155.30 Found (x06 eq_substitution) as proof of Q
% 154.98/155.30 Found (x06 eq_substitution) as proof of Q
% 154.98/155.30 Found (x04 (x06 eq_substitution)) as proof of P
% 154.98/155.30 Found (fun (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of P
% 154.98/155.30 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 154.98/155.30 Found (fun (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 154.98/155.30 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 154.98/155.30 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 154.98/155.30 Found (and_rect20 (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 154.98/155.30 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 154.98/155.30 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 154.98/155.30 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 154.98/155.30 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 154.98/155.30 Found (and_rect10 (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 154.98/155.30 Found ((and_rect1 P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 154.98/155.30 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 154.98/155.30 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))))) as proof of P
% 156.25/156.57 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 156.25/156.57 Found x030:x
% 156.25/156.57 Instantiate: x:=R:Prop
% 156.25/156.57 Found x030 as proof of R
% 156.25/156.57 Found x010:=(x01 x020):x
% 156.25/156.57 Found (x01 x020) as proof of P
% 156.25/156.57 Found (x01 x020) as proof of P
% 156.25/156.57 Found (x01 x020) as proof of P
% 156.25/156.57 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 156.25/156.57 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 156.25/156.57 Found eta_expansion as proof of x
% 156.25/156.57 Found x040:Q
% 156.25/156.57 Found x040 as proof of Q
% 156.25/156.57 Found (x03 x040) as proof of P
% 156.25/156.57 Found (x03 x040) as proof of P
% 156.25/156.57 Found (x03 x040) as proof of P
% 156.25/156.57 Found x010:=(x01 x000):((iff P) Q)
% 156.25/156.57 Found x010 as proof of ((iff P) Q)
% 156.25/156.57 Found x030:P
% 156.25/156.57 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 156.25/156.57 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 156.25/156.57 Found x000:=(x00 x011):R
% 156.25/156.57 Found (x00 x011) as proof of R
% 156.25/156.57 Found (x00 x011) as proof of R
% 156.25/156.57 Found x000:=(x00 x011):R
% 156.25/156.57 Found (x00 x011) as proof of R
% 156.25/156.57 Found (x00 x011) as proof of R
% 156.25/156.57 Found x010:=(x01 x001):((iff P) Q)
% 156.25/156.57 Found (x01 x001) as proof of ((iff P) Q)
% 156.25/156.57 Found (x01 x001) as proof of ((iff P) Q)
% 156.25/156.57 Found x02:((iff Q) x)
% 156.25/156.57 Instantiate: x:=P:Prop
% 156.25/156.57 Found x02 as proof of ((iff Q) P)
% 156.25/156.57 Found (iff_sym00 x02) as proof of ((and (P->Q)) (Q->P))
% 156.25/156.57 Found ((iff_sym0 P) x02) as proof of ((and (P->Q)) (Q->P))
% 156.25/156.57 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 156.25/156.57 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 156.25/156.57 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 156.25/156.57 Found x010:=(x01 x000):((iff P) Q)
% 156.25/156.57 Found x010 as proof of ((iff P) Q)
% 156.25/156.57 Found x030:x
% 156.25/156.57 Instantiate: x:=P:Prop
% 156.25/156.57 Found (fun (x04:(x->Q))=> x030) as proof of P
% 156.25/156.57 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 156.25/156.57 Found x20:=(x2 x10):((iff P) Q)
% 156.25/156.57 Found (x2 x10) as proof of ((iff P) Q)
% 156.25/156.57 Found (x2 x10) as proof of ((iff P) Q)
% 156.25/156.57 Found x000:=(x00 x010):R
% 156.25/156.57 Found (x00 x010) as proof of R
% 156.25/156.57 Found (x00 x010) as proof of R
% 156.25/156.57 Found x040:Q
% 156.25/156.57 Found x040 as proof of Q
% 156.25/156.57 Found (x03 x040) as proof of P
% 156.25/156.57 Found (x03 x040) as proof of P
% 156.25/156.57 Found (x03 x040) as proof of P
% 156.25/156.57 Found x010:=(x01 x020):x
% 156.25/156.57 Found (x01 x020) as proof of P
% 156.25/156.57 Found (x01 x020) as proof of P
% 156.25/156.57 Found (x01 x020) as proof of P
% 156.25/156.57 Found x030:x
% 156.25/156.57 Instantiate: x:=P:Prop
% 156.25/156.57 Found x030 as proof of P
% 156.25/156.57 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 156.25/156.57 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 156.25/156.57 Found eq_sym as proof of x
% 156.25/156.57 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 156.25/156.57 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 156.25/156.57 Found or_ind as proof of x
% 156.25/156.57 Found (x04 or_ind) as proof of Q
% 156.25/156.57 Found (x04 or_ind) as proof of Q
% 156.25/156.57 Found x20:=(x2 x10):((iff P) Q)
% 156.25/156.57 Found (x2 x10) as proof of ((iff P) Q)
% 156.25/156.57 Found (x2 x10) as proof of ((iff P) Q)
% 156.25/156.57 Found x010:=(x01 x000):((iff P) Q)
% 156.25/156.57 Found x010 as proof of ((iff P) Q)
% 156.25/156.57 Found x010:=(x01 x001):((iff P) Q)
% 156.25/156.57 Found (x01 x001) as proof of ((iff P) Q)
% 156.25/156.57 Found (x01 x001) as proof of ((iff P) Q)
% 156.25/156.57 Found x000:=(x00 x011):R
% 156.25/156.57 Found (x00 x011) as proof of R
% 156.25/156.57 Found (x00 x011) as proof of R
% 156.25/156.57 Found x010:=(x01 x001):((iff P) Q)
% 156.25/156.57 Found (x01 x001) as proof of ((iff P) Q)
% 156.25/156.57 Found (x01 x001) as proof of ((iff P) Q)
% 156.25/156.57 Found x010:=(x01 x020):x
% 156.25/156.57 Found (x01 x020) as proof of P
% 156.25/156.57 Found (x01 x020) as proof of P
% 156.25/156.57 Found (x01 x020) as proof of P
% 156.25/156.57 Found x010:=(x01 x000):((iff P) Q)
% 156.25/156.57 Found x010 as proof of ((iff P) Q)
% 156.25/156.57 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x030:=(x03 x040):x
% 157.79/158.07 Found (x03 x040) as proof of R
% 157.79/158.07 Found (x03 x040) as proof of R
% 157.79/158.07 Found (x03 x040) as proof of R
% 157.79/158.07 Found x010:=(x01 x020):x
% 157.79/158.07 Found (x01 x020) as proof of R
% 157.79/158.07 Found (x01 x020) as proof of R
% 157.79/158.07 Found (x01 x020) as proof of R
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x010:=(x01 x020):x
% 157.79/158.07 Found (x01 x020) as proof of P
% 157.79/158.07 Found (x01 x020) as proof of P
% 157.79/158.07 Found (x01 x020) as proof of P
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x10:R
% 157.79/158.07 Found (fun (x02:(x->Q))=> x10) as proof of R
% 157.79/158.07 Found (fun (x02:(x->Q))=> x10) as proof of ((x->Q)->R)
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found (x01 x000) as proof of ((iff P) Q)
% 157.79/158.07 Found (x01 x000) as proof of ((iff P) Q)
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found (x01 x000) as proof of ((iff P) Q)
% 157.79/158.07 Found (x01 x000) as proof of ((iff P) Q)
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found (x01 x000) as proof of ((iff P) Q)
% 157.79/158.07 Found (x01 x000) as proof of ((iff P) Q)
% 157.79/158.07 Found x000:=(x00 x010):R
% 157.79/158.07 Found (x00 x010) as proof of R
% 157.79/158.07 Found (x00 x010) as proof of R
% 157.79/158.07 Found x040:Q
% 157.79/158.07 Found x040 as proof of Q
% 157.79/158.07 Found (x03 x040) as proof of P
% 157.79/158.07 Found (x03 x040) as proof of P
% 157.79/158.07 Found (x03 x040) as proof of P
% 157.79/158.07 Found x010:=(x01 x021):x
% 157.79/158.07 Found (x01 x021) as proof of P
% 157.79/158.07 Found (x01 x021) as proof of P
% 157.79/158.07 Found (x01 x021) as proof of P
% 157.79/158.07 Found x010:=(x01 x020):x
% 157.79/158.07 Found (x01 x020) as proof of P
% 157.79/158.07 Found (x01 x020) as proof of P
% 157.79/158.07 Found (x01 x020) as proof of P
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x02:((iff Q) x)
% 157.79/158.07 Instantiate: x:=P:Prop
% 157.79/158.07 Found x02 as proof of ((iff Q) P)
% 157.79/158.07 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 157.79/158.07 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 157.79/158.07 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 157.79/158.07 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 157.79/158.07 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 157.79/158.07 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 157.79/158.07 Found x20:((iff P) Q)
% 157.79/158.07 Found (fun (x02:(x->Q))=> x20) as proof of ((iff P) Q)
% 157.79/158.07 Found (fun (x02:(x->Q))=> x20) as proof of ((x->Q)->((iff P) Q))
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found (x01 x000) as proof of ((iff P) Q)
% 157.79/158.07 Found (x01 x000) as proof of ((iff P) Q)
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x010:=(x01 x020):x
% 157.79/158.07 Found (x01 x020) as proof of ((iff P) Q)
% 157.79/158.07 Found (x01 x020) as proof of ((iff P) Q)
% 157.79/158.07 Found (x01 x020) as proof of ((iff P) Q)
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x000:=(x00 x011):R
% 157.79/158.07 Found (x00 x011) as proof of R
% 157.79/158.07 Found (x00 x011) as proof of R
% 157.79/158.07 Found x030:P
% 157.79/158.07 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 157.79/158.07 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 157.79/158.07 Found x030:x
% 157.79/158.07 Instantiate: x:=P:Prop
% 157.79/158.07 Found (fun (x04:(x->Q))=> x030) as proof of P
% 157.79/158.07 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 157.79/158.07 Found x010:=(x01 x001):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x010:x
% 157.79/158.07 Found x010 as proof of x
% 157.79/158.07 Found x010:x
% 157.79/158.07 Found x010 as proof of Q
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found x010:=(x01 x000):((iff P) Q)
% 157.79/158.07 Found x010 as proof of ((iff P) Q)
% 157.79/158.07 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 157.79/158.07 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 157.79/158.07 Found eq_substitution as proof of x
% 157.79/158.07 Found (x06 eq_substitution) as proof of Q
% 157.79/158.07 Found (x06 eq_substitution) as proof of Q
% 157.79/158.07 Found (x04 (x06 eq_substitution)) as proof of P
% 157.79/158.07 Found (fun (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of P
% 157.79/158.07 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 159.75/160.08 Found (fun (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 159.75/160.08 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 159.75/160.08 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 159.75/160.08 Found (and_rect20 (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 159.75/160.08 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 159.75/160.08 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 159.75/160.08 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 159.75/160.08 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))) as proof of ((Q->x)->((x->Q)->P))
% 159.75/160.08 Found (and_rect10 (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 159.75/160.08 Found ((and_rect1 P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 159.75/160.08 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution))))) as proof of P
% 159.75/160.08 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))))) as proof of P
% 159.75/160.08 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 159.75/160.08 Found x040:Q
% 159.75/160.08 Found x040 as proof of Q
% 159.75/160.08 Found (x03 x040) as proof of P
% 159.75/160.08 Found (x03 x040) as proof of P
% 159.75/160.08 Found (x03 x040) as proof of P
% 159.75/160.08 Found x000:=(x00 x012):R
% 159.75/160.08 Found (x00 x012) as proof of R
% 159.75/160.08 Found (x00 x012) as proof of R
% 159.75/160.08 Found x010:=(x01 x001):((iff P) Q)
% 159.75/160.08 Found x010 as proof of ((iff P) Q)
% 159.75/160.08 Found x000:=(x00 x011):R
% 159.75/160.08 Found (x00 x011) as proof of R
% 159.75/160.08 Found (x00 x011) as proof of R
% 159.75/160.08 Found x031:x
% 159.75/160.08 Found x031 as proof of x
% 159.75/160.08 Found x040:Q
% 159.75/160.08 Found x040 as proof of Q
% 159.75/160.08 Found x031:x
% 159.75/160.08 Found x031 as proof of Q
% 159.75/160.08 Found x040:Q
% 159.75/160.08 Found x040 as proof of x
% 159.75/160.08 Found x000:=(x00 x012):R
% 159.75/160.08 Found (x00 x012) as proof of R
% 159.75/160.08 Found (x00 x012) as proof of R
% 159.75/160.08 Found x000:=(x00 x012):R
% 159.75/160.08 Found (x00 x012) as proof of R
% 159.75/160.08 Found (x00 x012) as proof of R
% 159.75/160.08 Found x000:=(x00 x012):R
% 159.75/160.08 Found (x00 x012) as proof of R
% 159.75/160.08 Found (x00 x012) as proof of R
% 159.75/160.08 Found x010:=(x01 x000):((iff P) Q)
% 159.75/160.08 Found x010 as proof of ((iff P) Q)
% 159.75/160.08 Found x031:x
% 159.75/160.08 Found x031 as proof of Q
% 159.75/160.08 Found x031:x
% 159.75/160.08 Found x031 as proof of x
% 159.75/160.08 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 159.75/160.08 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 161.08/161.38 Found or_ind as proof of x
% 161.08/161.38 Found (x04 or_ind) as proof of Q
% 161.08/161.38 Found (x04 or_ind) as proof of Q
% 161.08/161.38 Found x010:=(x01 x000):((iff P) Q)
% 161.08/161.38 Found (x01 x000) as proof of ((iff P) Q)
% 161.08/161.38 Found (x01 x000) as proof of ((iff P) Q)
% 161.08/161.38 Found x030:x
% 161.08/161.38 Instantiate: x:=P:Prop
% 161.08/161.38 Found x030 as proof of P
% 161.08/161.38 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 161.08/161.38 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 161.08/161.38 Found eq_sym as proof of x
% 161.08/161.38 Found x030:x
% 161.08/161.38 Instantiate: x:=P:Prop
% 161.08/161.38 Found (fun (x04:(x->Q))=> x030) as proof of P
% 161.08/161.38 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 161.08/161.38 Found x010:=(x01 x001):((iff P) Q)
% 161.08/161.38 Found (x01 x001) as proof of ((iff P) Q)
% 161.08/161.38 Found (x01 x001) as proof of ((iff P) Q)
% 161.08/161.38 Found x000:=(x00 x012):R
% 161.08/161.38 Found (x00 x012) as proof of R
% 161.08/161.38 Found (x00 x012) as proof of R
% 161.08/161.38 Found x000:=(x00 x012):R
% 161.08/161.38 Found (x00 x012) as proof of R
% 161.08/161.38 Found (x00 x012) as proof of R
% 161.08/161.38 Found x000:=(x00 x012):R
% 161.08/161.38 Found (x00 x012) as proof of R
% 161.08/161.38 Found (x00 x012) as proof of R
% 161.08/161.38 Found x040:Q
% 161.08/161.38 Found x040 as proof of Q
% 161.08/161.38 Found (x03 x040) as proof of P
% 161.08/161.38 Found (x03 x040) as proof of P
% 161.08/161.38 Found (x03 x040) as proof of P
% 161.08/161.38 Found x010:=(x01 x020):x
% 161.08/161.38 Instantiate: x:=R:Prop
% 161.08/161.38 Found (x01 x020) as proof of R
% 161.08/161.38 Found (x01 x020) as proof of R
% 161.08/161.38 Found x040:Q
% 161.08/161.38 Found x040 as proof of Q
% 161.08/161.38 Found (x03 x040) as proof of R
% 161.08/161.38 Found (x03 x040) as proof of R
% 161.08/161.38 Found (x03 x040) as proof of R
% 161.08/161.38 Found x010:=(x01 x001):((iff P) Q)
% 161.08/161.38 Found x010 as proof of ((iff P) Q)
% 161.08/161.38 Found x010:=(x01 x001):((iff P) Q)
% 161.08/161.38 Found x010 as proof of ((iff P) Q)
% 161.08/161.38 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 161.08/161.38 Found (iff_refl Q) as proof of ((iff Q) x)
% 161.08/161.38 Found (iff_refl Q) as proof of ((iff Q) x)
% 161.08/161.38 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 161.08/161.38 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 161.08/161.38 Found x010:=(x01 x000):((iff P) Q)
% 161.08/161.38 Found (x01 x000) as proof of ((iff P) Q)
% 161.08/161.38 Found (x01 x000) as proof of ((iff P) Q)
% 161.08/161.38 Found x000:=(x00 x011):R
% 161.08/161.38 Found (x00 x011) as proof of R
% 161.08/161.38 Found (x00 x011) as proof of R
% 161.08/161.38 Found x010:=(x01 x000):((iff P) Q)
% 161.08/161.38 Found (x01 x000) as proof of ((iff P) Q)
% 161.08/161.38 Found (x01 x000) as proof of ((iff P) Q)
% 161.08/161.38 Found x000:=(x00 x012):R
% 161.08/161.38 Found (x00 x012) as proof of R
% 161.08/161.38 Found (x00 x012) as proof of R
% 161.08/161.38 Found x000:=(x00 x011):R
% 161.08/161.38 Found (x00 x011) as proof of R
% 161.08/161.38 Found (x00 x011) as proof of R
% 161.08/161.38 Found x000:=(x00 x012):R
% 161.08/161.38 Found (x00 x012) as proof of R
% 161.08/161.38 Found (x00 x012) as proof of R
% 161.08/161.38 Found x010:=(x01 x001):((iff P) Q)
% 161.08/161.38 Found x010 as proof of ((iff P) Q)
% 161.08/161.38 Found x010:=(x01 x001):((iff P) Q)
% 161.08/161.38 Found x010 as proof of ((iff P) Q)
% 161.08/161.38 Found x000:=(x00 x011):R
% 161.08/161.38 Found (x00 x011) as proof of R
% 161.08/161.38 Found (x00 x011) as proof of R
% 161.08/161.38 Found x010:=(x01 x000):((iff P) Q)
% 161.08/161.38 Found x010 as proof of ((iff P) Q)
% 161.08/161.38 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 161.08/161.38 Found (iff_refl Q) as proof of ((iff Q) x)
% 161.08/161.38 Found (iff_refl Q) as proof of ((iff Q) x)
% 161.08/161.38 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 161.08/161.38 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 161.08/161.38 Found x000:=(x00 x010):R
% 161.08/161.38 Found (x00 x010) as proof of R
% 161.08/161.38 Found (x00 x010) as proof of R
% 161.08/161.38 Found x000:=(x00 x010):R
% 161.08/161.38 Found (x00 x010) as proof of R
% 161.08/161.38 Found (x00 x010) as proof of R
% 161.08/161.38 Found x020:Q
% 161.08/161.38 Found x020 as proof of Q
% 161.08/161.38 Found (x01 x020) as proof of P
% 161.08/161.38 Found (x01 x020) as proof of P
% 161.08/161.38 Found (x01 x020) as proof of P
% 161.08/161.38 Found x010:=(x01 x020):x
% 161.08/161.38 Instantiate: x:=R:Prop
% 161.08/161.38 Found (x01 x020) as proof of R
% 161.08/161.38 Found (x01 x020) as proof of R
% 161.08/161.38 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 161.08/161.38 Found (iff_refl Q) as proof of ((iff Q) x)
% 161.08/161.38 Found (iff_refl Q) as proof of ((iff Q) x)
% 161.08/161.38 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 161.08/161.38 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 161.08/161.38 Found x010:=(x01 x002):((iff P) Q)
% 161.08/161.38 Found x010 as proof of ((iff P) Q)
% 161.08/161.38 Found x010:=(x01 x000):((iff P) Q)
% 161.08/161.38 Found x010 as proof of ((iff P) Q)
% 161.08/161.38 Found x000:=(x00 x010):R
% 161.08/161.38 Found (x00 x010) as proof of R
% 161.08/161.38 Found (x00 x010) as proof of R
% 161.08/161.38 Found x000:=(x00 x010):R
% 161.08/161.38 Found (x00 x010) as proof of R
% 161.08/161.38 Found (x00 x010) as proof of R
% 161.08/161.38 Found x010:=(x01 x000):((iff P) Q)
% 161.08/161.38 Found x010 as proof of ((iff P) Q)
% 162.28/162.58 Found x010:=(x01 x000):((iff P) Q)
% 162.28/162.58 Found (x01 x000) as proof of ((iff P) Q)
% 162.28/162.58 Found (x01 x000) as proof of ((iff P) Q)
% 162.28/162.58 Found x010:=(x01 x000):((iff P) Q)
% 162.28/162.58 Found x010 as proof of ((iff P) Q)
% 162.28/162.58 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 162.28/162.58 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 162.28/162.58 Found or_ind as proof of x
% 162.28/162.58 Found (x04 or_ind) as proof of Q
% 162.28/162.58 Found (x04 or_ind) as proof of Q
% 162.28/162.58 Found x010:=(x01 x000):((iff P) Q)
% 162.28/162.58 Found x010 as proof of ((iff P) Q)
% 162.28/162.58 Found x010:=(x01 x000):((iff P) Q)
% 162.28/162.58 Found x010 as proof of ((iff P) Q)
% 162.28/162.58 Found x010:=(x01 x000):((iff P) Q)
% 162.28/162.58 Found x010 as proof of ((iff P) Q)
% 162.28/162.58 Found x000:=(x00 x010):R
% 162.28/162.58 Found (x00 x010) as proof of R
% 162.28/162.58 Found (x00 x010) as proof of R
% 162.28/162.58 Found x010:=(x01 x001):((iff P) Q)
% 162.28/162.58 Found (x01 x001) as proof of ((iff P) Q)
% 162.28/162.58 Found (x01 x001) as proof of ((iff P) Q)
% 162.28/162.58 Found x010:=(x01 x001):((iff P) Q)
% 162.28/162.58 Found (x01 x001) as proof of ((iff P) Q)
% 162.28/162.58 Found (x01 x001) as proof of ((iff P) Q)
% 162.28/162.58 Found x000:=(x00 x011):R
% 162.28/162.58 Found (x00 x011) as proof of R
% 162.28/162.58 Found (x00 x011) as proof of R
% 162.28/162.58 Found x010:=(x01 x000):((iff P) Q)
% 162.28/162.58 Found x010 as proof of ((iff P) Q)
% 162.28/162.58 Found x010:=(x01 x001):((iff P) Q)
% 162.28/162.58 Found (x01 x001) as proof of ((iff P) Q)
% 162.28/162.58 Found (x01 x001) as proof of ((iff P) Q)
% 162.28/162.58 Found x00:((iff Q) x)
% 162.28/162.58 Instantiate: x:=P:Prop
% 162.28/162.58 Found x00 as proof of ((iff Q) P)
% 162.28/162.58 Found (iff_sym00 x00) as proof of ((and (P->Q)) (Q->P))
% 162.28/162.58 Found ((iff_sym0 P) x00) as proof of ((and (P->Q)) (Q->P))
% 162.28/162.58 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 162.28/162.58 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 162.28/162.58 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 162.28/162.58 Found x010:=(x01 x000):((iff P) Q)
% 162.28/162.58 Found x010 as proof of ((iff P) Q)
% 162.28/162.58 Found x001:R
% 162.28/162.58 Instantiate: x:=R:Prop
% 162.28/162.58 Found x001 as proof of x
% 162.28/162.58 Found x001:R
% 162.28/162.58 Instantiate: x:=R:Prop
% 162.28/162.58 Found x001 as proof of x
% 162.28/162.58 Found x030:x
% 162.28/162.58 Instantiate: x:=P:Prop
% 162.28/162.58 Found (fun (x04:(x->Q))=> x030) as proof of P
% 162.28/162.58 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 162.28/162.58 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 162.28/162.58 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 162.28/162.58 Found or_ind as proof of x
% 162.28/162.58 Found (x02 or_ind) as proof of Q
% 162.28/162.58 Found (x02 or_ind) as proof of Q
% 162.28/162.58 Found x010:=(x01 x000):((iff P) Q)
% 162.28/162.58 Found (x01 x000) as proof of ((iff P) Q)
% 162.28/162.58 Found (x01 x000) as proof of ((iff P) Q)
% 162.28/162.58 Found x001:R
% 162.28/162.58 Instantiate: x:=R:Prop
% 162.28/162.58 Found x001 as proof of x
% 162.28/162.58 Found x010:=(x01 x002):((iff P) Q)
% 162.28/162.58 Found x010 as proof of ((iff P) Q)
% 162.28/162.58 Found x030:x
% 162.28/162.58 Instantiate: x:=P:Prop
% 162.28/162.58 Found x030 as proof of P
% 162.28/162.58 Found x020:Q
% 162.28/162.58 Found x020 as proof of Q
% 162.28/162.58 Found (x01 x020) as proof of ((iff P) Q)
% 162.28/162.58 Found (x01 x020) as proof of ((iff P) Q)
% 162.28/162.58 Found (x01 x020) as proof of ((iff P) Q)
% 162.28/162.58 Found x030:x
% 162.28/162.58 Instantiate: x:=P:Prop
% 162.28/162.58 Found x030 as proof of P
% 162.28/162.58 Found x030:x
% 162.28/162.58 Instantiate: x:=P:Prop
% 162.28/162.58 Found x030 as proof of P
% 162.28/162.58 Found x010:=(x01 x000):((iff P) Q)
% 162.28/162.58 Found x010 as proof of ((iff P) Q)
% 162.28/162.58 Found x030:x
% 162.28/162.58 Instantiate: x:=P:Prop
% 162.28/162.58 Found (fun (x04:(x->Q))=> x030) as proof of P
% 162.28/162.58 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 162.28/162.58 Found x010:x
% 162.28/162.58 Instantiate: x:=P:Prop
% 162.28/162.58 Found (fun (x02:(x->Q))=> x010) as proof of P
% 162.28/162.58 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 162.28/162.58 Found x010:=(x01 x000):((iff P) Q)
% 162.28/162.58 Found x010 as proof of ((iff P) Q)
% 162.28/162.58 Found x010:=(x01 x000):((iff P) Q)
% 162.28/162.58 Found x010 as proof of ((iff P) Q)
% 162.28/162.58 Found x010:=(x01 x000):((iff P) Q)
% 162.28/162.58 Found x010 as proof of ((iff P) Q)
% 162.28/162.58 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 162.28/162.58 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 162.28/162.58 Found eq_substitution as proof of x
% 162.28/162.58 Found (x04 eq_substitution) as proof of Q
% 162.28/162.58 Found (x04 eq_substitution) as proof of Q
% 162.28/162.58 Found (x2 (x04 eq_substitution)) as proof of P
% 162.28/162.58 Found (fun (x04:(x->Q))=> (x2 (x04 eq_substitution))) as proof of P
% 162.28/162.58 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))) as proof of ((x->Q)->P)
% 162.28/162.58 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 162.90/163.23 Found (and_rect20 (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))) as proof of P
% 162.90/163.23 Found ((and_rect2 P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))) as proof of P
% 162.90/163.23 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))) as proof of P
% 162.90/163.23 Found (fun (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))) as proof of P
% 162.90/163.23 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))) as proof of ((Q->P)->P)
% 162.90/163.23 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))) as proof of ((P->Q)->((Q->P)->P))
% 162.90/163.23 Found (and_rect10 (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 162.90/163.23 Found ((and_rect1 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 162.90/163.23 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 162.90/163.23 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 162.90/163.23 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 162.90/163.23 Found x010:=(x01 x000):((iff P) Q)
% 162.90/163.23 Found x010 as proof of ((iff P) Q)
% 162.90/163.23 Found x030:P
% 162.90/163.23 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 162.90/163.23 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 162.90/163.23 Found x000:=(x00 x011):R
% 162.90/163.23 Found (x00 x011) as proof of R
% 162.90/163.23 Found (x00 x011) as proof of R
% 162.90/163.23 Found x030:=(x03 x040):x
% 162.90/163.23 Found (x03 x040) as proof of P
% 162.90/163.23 Found (x03 x040) as proof of P
% 162.90/163.23 Found (x03 x040) as proof of P
% 162.90/163.23 Found x010:=(x01 x000):((iff P) Q)
% 162.90/163.23 Found x010 as proof of ((iff P) Q)
% 162.90/163.23 Found x010:=(x01 x000):((iff P) Q)
% 162.90/163.23 Found x010 as proof of ((iff P) Q)
% 162.90/163.23 Found x010:=(x01 x000):((iff P) Q)
% 162.90/163.23 Found x010 as proof of ((iff P) Q)
% 162.90/163.23 Found x010:=(x01 x000):((iff P) Q)
% 162.90/163.23 Found (x01 x000) as proof of ((iff P) Q)
% 162.90/163.23 Found (x01 x000) as proof of ((iff P) Q)
% 162.90/163.23 Found x010:=(x01 x000):((iff P) Q)
% 162.90/163.23 Found x010 as proof of ((iff P) Q)
% 162.90/163.23 Found x031:x
% 162.90/163.23 Found x031 as proof of x
% 162.90/163.23 Found x031:x
% 162.90/163.23 Found x031 as proof of Q
% 162.90/163.23 Found x040:Q
% 162.90/163.23 Found x040 as proof of x
% 162.90/163.23 Found x031:x
% 162.90/163.23 Found x031 as proof of x
% 162.90/163.23 Found x030:P
% 162.90/163.23 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 162.90/163.23 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 162.90/163.23 Found x020:Q
% 162.90/163.23 Found x020 as proof of Q
% 162.90/163.23 Found (x01 x020) as proof of ((iff P) Q)
% 162.90/163.23 Found (x01 x020) as proof of ((iff P) Q)
% 162.90/163.23 Found (x01 x020) as proof of ((iff P) Q)
% 162.90/163.23 Found x020:Q
% 162.90/163.23 Found x020 as proof of Q
% 162.90/163.23 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 162.90/163.23 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 162.90/163.23 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 162.90/163.23 Found x020:Q
% 162.90/163.23 Found x020 as proof of Q
% 162.90/163.23 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 162.90/163.23 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 162.90/163.23 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 162.90/163.23 Found x10:=(x1 x20):R
% 165.22/165.50 Found (x1 x20) as proof of R
% 165.22/165.50 Found (x1 x20) as proof of R
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found (x01 x000) as proof of ((iff P) Q)
% 165.22/165.50 Found (x01 x000) as proof of ((iff P) Q)
% 165.22/165.50 Found x040:Q
% 165.22/165.50 Found x040 as proof of Q
% 165.22/165.50 Found x010:=(x01 x001):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x031:x
% 165.22/165.50 Found x031 as proof of Q
% 165.22/165.50 Found x020:Q
% 165.22/165.50 Found x020 as proof of Q
% 165.22/165.50 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 165.22/165.50 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 165.22/165.50 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x010:=(x01 x001):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x040:Q
% 165.22/165.50 Found x040 as proof of Q
% 165.22/165.50 Found (x03 x040) as proof of R
% 165.22/165.50 Found (x03 x040) as proof of R
% 165.22/165.50 Found (x03 x040) as proof of R
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 165.22/165.50 Found (iff_refl Q) as proof of ((iff Q) x)
% 165.22/165.50 Found (iff_refl Q) as proof of ((iff Q) x)
% 165.22/165.50 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 165.22/165.50 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 165.22/165.50 Found x030:P
% 165.22/165.50 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 165.22/165.50 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x000:=(x00 x011):R
% 165.22/165.50 Found (x00 x011) as proof of R
% 165.22/165.50 Found (x00 x011) as proof of R
% 165.22/165.50 Found x000:=(x00 x011):R
% 165.22/165.50 Found (x00 x011) as proof of R
% 165.22/165.50 Found (x00 x011) as proof of R
% 165.22/165.50 Found x010:=(x01 x001):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x000:=(x00 x011):R
% 165.22/165.50 Found (x00 x011) as proof of R
% 165.22/165.50 Found (x00 x011) as proof of R
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x000:=(x00 x010):R
% 165.22/165.50 Found (x00 x010) as proof of R
% 165.22/165.50 Found (x00 x010) as proof of R
% 165.22/165.50 Found x010:=(x01 x001):((iff P) Q)
% 165.22/165.50 Found (x01 x001) as proof of ((iff P) Q)
% 165.22/165.50 Found (x01 x001) as proof of ((iff P) Q)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x000:=(x00 x011):R
% 165.22/165.50 Found (x00 x011) as proof of R
% 165.22/165.50 Found (x00 x011) as proof of R
% 165.22/165.50 Found x000:=(x00 x010):R
% 165.22/165.50 Found (x00 x010) as proof of R
% 165.22/165.50 Found (x00 x010) as proof of R
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x000:=(x00 x011):R
% 165.22/165.50 Found (x00 x011) as proof of R
% 165.22/165.50 Found (x00 x011) as proof of R
% 165.22/165.50 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 165.22/165.50 Found (iff_refl Q) as proof of ((iff Q) x)
% 165.22/165.50 Found (iff_refl Q) as proof of ((iff Q) x)
% 165.22/165.50 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 165.22/165.50 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x000:=(x00 x010):R
% 165.22/165.50 Found (x00 x010) as proof of R
% 165.22/165.50 Found (x00 x010) as proof of R
% 165.22/165.50 Found x20:=(x2 x10):((iff P) Q)
% 165.22/165.50 Found (x2 x10) as proof of ((iff P) Q)
% 165.22/165.50 Found (x2 x10) as proof of ((iff P) Q)
% 165.22/165.50 Found x010:=(x01 x000):((iff P) Q)
% 165.22/165.50 Found x010 as proof of ((iff P) Q)
% 165.22/165.50 Found x00:((iff Q) x)
% 165.22/165.50 Instantiate: x:=P:Prop
% 165.22/165.50 Found x00 as proof of ((iff Q) P)
% 165.22/165.50 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 165.22/165.50 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 165.22/165.50 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 165.22/165.50 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 165.22/165.50 Found x000:=(x00 x011):R
% 165.22/165.50 Found (x00 x011) as proof of R
% 165.22/165.50 Found (x00 x011) as proof of R
% 165.22/165.50 Found x010:=(x01 x001):((iff P) Q)
% 165.22/165.50 Found (x01 x001) as proof of ((iff P) Q)
% 165.22/165.50 Found (x01 x001) as proof of ((iff P) Q)
% 165.89/166.26 Found x000:=(x00 x010):R
% 165.89/166.26 Found (x00 x010) as proof of R
% 165.89/166.26 Found (x00 x010) as proof of R
% 165.89/166.26 Found x010:=(x01 x000):((iff P) Q)
% 165.89/166.26 Found x010 as proof of ((iff P) Q)
% 165.89/166.26 Found x010:=(x01 x001):((iff P) Q)
% 165.89/166.26 Found x010 as proof of ((iff P) Q)
% 165.89/166.26 Found x010:=(x01 x001):((iff P) Q)
% 165.89/166.26 Found (x01 x001) as proof of ((iff P) Q)
% 165.89/166.26 Found (x01 x001) as proof of ((iff P) Q)
% 165.89/166.26 Found x010:=(x01 x001):((iff P) Q)
% 165.89/166.26 Found (x01 x001) as proof of ((iff P) Q)
% 165.89/166.26 Found (x01 x001) as proof of ((iff P) Q)
% 165.89/166.26 Found x20:=(x2 x10):((iff P) Q)
% 165.89/166.26 Found x20 as proof of ((iff P) Q)
% 165.89/166.26 Found x010:=(x01 x000):((iff P) Q)
% 165.89/166.26 Found x010 as proof of ((iff P) Q)
% 165.89/166.26 Found x030:x
% 165.89/166.26 Instantiate: x:=P:Prop
% 165.89/166.26 Found x030 as proof of P
% 165.89/166.26 Found x030:x
% 165.89/166.26 Instantiate: x:=P:Prop
% 165.89/166.26 Found x030 as proof of P
% 165.89/166.26 Found x001:R
% 165.89/166.26 Instantiate: x:=R:Prop
% 165.89/166.26 Found x001 as proof of x
% 165.89/166.26 Found x001:R
% 165.89/166.26 Instantiate: x:=R:Prop
% 165.89/166.26 Found x001 as proof of x
% 165.89/166.26 Found x001:R
% 165.89/166.26 Instantiate: x:=R:Prop
% 165.89/166.26 Found x001 as proof of x
% 165.89/166.26 Found x010:=(x01 x000):((iff P) Q)
% 165.89/166.26 Found x010 as proof of ((iff P) Q)
% 165.89/166.26 Found x030:x
% 165.89/166.26 Instantiate: x:=P:Prop
% 165.89/166.26 Found (fun (x04:(x->Q))=> x030) as proof of P
% 165.89/166.26 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 165.89/166.26 Found x010:=(x01 x001):((iff P) Q)
% 165.89/166.26 Found (x01 x001) as proof of ((iff P) Q)
% 165.89/166.26 Found (x01 x001) as proof of ((iff P) Q)
% 165.89/166.26 Found x000:=(x00 x011):R
% 165.89/166.26 Found (x00 x011) as proof of R
% 165.89/166.26 Found (x00 x011) as proof of R
% 165.89/166.26 Found x010:=(x01 x001):((iff P) Q)
% 165.89/166.26 Found (x01 x001) as proof of ((iff P) Q)
% 165.89/166.26 Found (x01 x001) as proof of ((iff P) Q)
% 165.89/166.26 Found x010:=(x01 x000):((iff P) Q)
% 165.89/166.26 Found (x01 x000) as proof of ((iff P) Q)
% 165.89/166.26 Found (x01 x000) as proof of ((iff P) Q)
% 165.89/166.26 Found x030:=(x03 x040):x
% 165.89/166.26 Found (x03 x040) as proof of P
% 165.89/166.26 Found (x03 x040) as proof of P
% 165.89/166.26 Found (x03 x040) as proof of P
% 165.89/166.26 Found x010:=(x01 x000):((iff P) Q)
% 165.89/166.26 Found x010 as proof of ((iff P) Q)
% 165.89/166.26 Found x011:x
% 165.89/166.26 Instantiate: x:=Q:Prop
% 165.89/166.26 Found x011 as proof of Q
% 165.89/166.26 Found x010:=(x01 x000):((iff P) Q)
% 165.89/166.26 Found (x01 x000) as proof of ((iff P) Q)
% 165.89/166.26 Found (x01 x000) as proof of ((iff P) Q)
% 165.89/166.26 Found x000:=(x00 x011):R
% 165.89/166.26 Found (x00 x011) as proof of R
% 165.89/166.26 Found (x00 x011) as proof of R
% 165.89/166.26 Found x030:x
% 165.89/166.26 Instantiate: x:=P:Prop
% 165.89/166.26 Found x030 as proof of P
% 165.89/166.26 Found x030:x
% 165.89/166.26 Instantiate: x:=P:Prop
% 165.89/166.26 Found (fun (x04:(x->Q))=> x030) as proof of P
% 165.89/166.26 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 165.89/166.26 Found x010:=(x01 x000):((iff P) Q)
% 165.89/166.26 Found (x01 x000) as proof of ((iff P) Q)
% 165.89/166.26 Found (x01 x000) as proof of ((iff P) Q)
% 165.89/166.26 Found x010:=(x01 x000):((iff P) Q)
% 165.89/166.26 Found (x01 x000) as proof of ((iff P) Q)
% 165.89/166.26 Found (x01 x000) as proof of ((iff P) Q)
% 165.89/166.26 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 165.89/166.26 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 165.89/166.26 Found eq_substitution as proof of x
% 165.89/166.26 Found (x04 eq_substitution) as proof of Q
% 165.89/166.26 Found (x04 eq_substitution) as proof of Q
% 165.89/166.26 Found (x2 (x04 eq_substitution)) as proof of P
% 165.89/166.26 Found (fun (x04:(x->Q))=> (x2 (x04 eq_substitution))) as proof of P
% 165.89/166.26 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))) as proof of ((x->Q)->P)
% 165.89/166.26 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 165.89/166.26 Found (and_rect20 (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))) as proof of P
% 165.89/166.26 Found ((and_rect2 P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))) as proof of P
% 165.89/166.26 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))) as proof of P
% 165.89/166.26 Found (fun (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))) as proof of P
% 165.89/166.26 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))) as proof of ((Q->P)->P)
% 165.89/166.26 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))) as proof of ((P->Q)->((Q->P)->P))
% 166.20/166.51 Found (and_rect10 (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 166.20/166.51 Found ((and_rect1 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 166.20/166.51 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 166.20/166.51 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 166.20/166.51 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 166.20/166.51 Found x010:=(x01 x000):((iff P) Q)
% 166.20/166.51 Found x010 as proof of ((iff P) Q)
% 166.20/166.51 Found x010:=(x01 x000):((iff P) Q)
% 166.20/166.51 Found (x01 x000) as proof of ((iff P) Q)
% 166.20/166.51 Found (x01 x000) as proof of ((iff P) Q)
% 166.20/166.51 Found x20:=(x2 x10):((iff P) Q)
% 166.20/166.51 Found x20 as proof of ((iff P) Q)
% 166.20/166.51 Found x040:Q
% 166.20/166.51 Found x040 as proof of Q
% 166.20/166.51 Found (x03 x040) as proof of P
% 166.20/166.51 Found (x03 x040) as proof of P
% 166.20/166.51 Found (x03 x040) as proof of P
% 166.20/166.51 Found x030:P
% 166.20/166.51 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 166.20/166.51 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 166.20/166.51 Found x010:=(x01 x000):((iff P) Q)
% 166.20/166.51 Found x010 as proof of ((iff P) Q)
% 166.20/166.51 Found x010:=(x01 x000):((iff P) Q)
% 166.20/166.51 Found (x01 x000) as proof of ((iff P) Q)
% 166.20/166.51 Found (x01 x000) as proof of ((iff P) Q)
% 166.20/166.51 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 166.20/166.51 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 166.20/166.51 Found eq_substitution as proof of x
% 166.20/166.51 Found (x04 eq_substitution) as proof of Q
% 166.20/166.51 Found (x04 eq_substitution) as proof of Q
% 166.20/166.51 Found (x2 (x04 eq_substitution)) as proof of P
% 166.20/166.51 Found (fun (x04:(x->Q))=> (x2 (x04 eq_substitution))) as proof of P
% 166.20/166.51 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))) as proof of ((x->Q)->P)
% 166.20/166.51 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 166.20/166.51 Found (and_rect20 (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))) as proof of P
% 166.20/166.51 Found ((and_rect2 P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))) as proof of P
% 166.20/166.51 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))) as proof of P
% 166.20/166.51 Found (fun (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))) as proof of P
% 166.20/166.51 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))) as proof of ((Q->P)->P)
% 166.20/166.51 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))) as proof of ((P->Q)->((Q->P)->P))
% 166.20/166.51 Found (and_rect10 (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 166.65/167.00 Found ((and_rect1 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 166.65/167.00 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 166.65/167.00 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 166.65/167.00 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))))) as proof of P
% 166.65/167.00 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))))) as proof of (((iff Q) x)->P)
% 166.65/167.00 Found x1:(((iff P) Q)->R)
% 166.65/167.00 Instantiate: x:=(((iff P) Q)->R):Prop
% 166.65/167.00 Found x1 as proof of x
% 166.65/167.00 Found (x02 x1) as proof of Q
% 166.65/167.00 Found (x02 x1) as proof of Q
% 166.65/167.00 Found x010:=(x01 x000):((iff P) Q)
% 166.65/167.00 Found x010 as proof of ((iff P) Q)
% 166.65/167.00 Found x030:x
% 166.65/167.00 Instantiate: x:=P:Prop
% 166.65/167.00 Found (fun (x04:(x->Q))=> x030) as proof of P
% 166.65/167.00 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 166.65/167.00 Found x000:=(x00 x010):R
% 166.65/167.00 Found (x00 x010) as proof of R
% 166.65/167.00 Found (x00 x010) as proof of R
% 166.65/167.00 Found x010:=(x01 x000):((iff P) Q)
% 166.65/167.00 Found (x01 x000) as proof of ((iff P) Q)
% 166.65/167.00 Found (x01 x000) as proof of ((iff P) Q)
% 166.65/167.00 Found x010:=(x01 x000):((iff P) Q)
% 166.65/167.00 Found x010 as proof of ((iff P) Q)
% 166.65/167.00 Found x010:=(x01 x000):((iff P) Q)
% 166.65/167.00 Found x010 as proof of ((iff P) Q)
% 166.65/167.00 Found x010:=(x01 x000):((iff P) Q)
% 166.65/167.00 Found x010 as proof of ((iff P) Q)
% 166.65/167.00 Found x030:P
% 166.65/167.00 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 166.65/167.00 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 166.65/167.00 Found x010:=(x01 x000):((iff P) Q)
% 166.65/167.00 Found x010 as proof of ((iff P) Q)
% 166.65/167.00 Found classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 166.65/167.00 Instantiate: x:=(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x)))))))):Prop
% 168.04/168.37 Found classical_choice as proof of x
% 168.04/168.37 Found (x06 classical_choice) as proof of Q
% 168.04/168.37 Found (x06 classical_choice) as proof of Q
% 168.04/168.37 Found (x03 (x06 classical_choice)) as proof of P
% 168.04/168.37 Found (fun (x06:(x->Q))=> (x03 (x06 classical_choice))) as proof of P
% 168.04/168.37 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 classical_choice))) as proof of ((x->Q)->P)
% 168.04/168.37 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 classical_choice))) as proof of ((Q->x)->((x->Q)->P))
% 168.04/168.37 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 classical_choice)))) as proof of P
% 168.04/168.37 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 classical_choice)))) as proof of P
% 168.04/168.37 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 classical_choice)))) as proof of P
% 168.04/168.37 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 classical_choice))))) as proof of P
% 168.04/168.37 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 classical_choice))))) as proof of (((iff Q) x)->P)
% 168.04/168.37 Found x010:=(x01 x000):((iff P) Q)
% 168.04/168.37 Found (x01 x000) as proof of ((iff P) Q)
% 168.04/168.37 Found (x01 x000) as proof of ((iff P) Q)
% 168.04/168.37 Found x010:=(x01 x000):((iff P) Q)
% 168.04/168.37 Found x010 as proof of ((iff P) Q)
% 168.04/168.37 Found x010:=(x01 x000):((iff P) Q)
% 168.04/168.37 Found x010 as proof of ((iff P) Q)
% 168.04/168.37 Found x010:=(x01 x000):((iff P) Q)
% 168.04/168.37 Found x010 as proof of ((iff P) Q)
% 168.04/168.37 Found x030:=(x03 x040):x
% 168.04/168.37 Found (x03 x040) as proof of P
% 168.04/168.37 Found (x03 x040) as proof of P
% 168.04/168.37 Found (x03 x040) as proof of P
% 168.04/168.37 Found x010:=(x01 x000):((iff P) Q)
% 168.04/168.37 Found x010 as proof of ((iff P) Q)
% 168.04/168.37 Found x000:=(x00 x010):R
% 168.04/168.37 Found (x00 x010) as proof of R
% 168.04/168.37 Found (x00 x010) as proof of R
% 168.04/168.37 Found x010:=(x01 x000):((iff P) Q)
% 168.04/168.37 Found x010 as proof of ((iff P) Q)
% 168.04/168.37 Found x010:=(x01 x000):((iff P) Q)
% 168.04/168.37 Found x010 as proof of ((iff P) Q)
% 168.04/168.37 Found x010:=(x01 x000):((iff P) Q)
% 168.04/168.37 Found x010 as proof of ((iff P) Q)
% 168.04/168.37 Found x040:Q
% 168.04/168.37 Found x040 as proof of Q
% 168.04/168.37 Found (x03 x040) as proof of P
% 168.04/168.37 Found (x03 x040) as proof of P
% 168.04/168.37 Found (x03 x040) as proof of P
% 168.04/168.37 Found x000:=(x00 x012):R
% 168.04/168.37 Found (x00 x012) as proof of R
% 168.04/168.37 Found (x00 x012) as proof of R
% 168.04/168.37 Found x000:=(x00 x011):R
% 168.04/168.37 Found (x00 x011) as proof of R
% 168.04/168.37 Found (x00 x011) as proof of R
% 168.04/168.37 Found x010:=(x01 x020):x
% 168.04/168.37 Found (x01 x020) as proof of P
% 168.04/168.37 Found (x01 x020) as proof of P
% 168.04/168.37 Found (x01 x020) as proof of P
% 168.04/168.37 Found x010:=(x01 x000):((iff P) Q)
% 168.04/168.37 Found x010 as proof of ((iff P) Q)
% 168.04/168.37 Found x000:=(x00 x012):R
% 168.04/168.37 Found (x00 x012) as proof of R
% 168.04/168.37 Found (x00 x012) as proof of R
% 168.04/168.37 Found x010:=(x01 x000):((iff P) Q)
% 168.04/168.37 Found x010 as proof of ((iff P) Q)
% 168.04/168.37 Found x030:x
% 168.04/168.37 Instantiate: x:=P:Prop
% 168.04/168.37 Found x030 as proof of P
% 168.04/168.37 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 168.04/168.37 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 168.04/168.37 Found eq_sym as proof of x
% 168.04/168.37 Found x030:x
% 168.04/168.37 Instantiate: x:=P:Prop
% 168.04/168.37 Found (fun (x04:(x->Q))=> x030) as proof of P
% 168.04/168.37 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 168.04/168.37 Found x010:=(x01 x001):((iff P) Q)
% 168.04/168.37 Found (x01 x001) as proof of ((iff P) Q)
% 168.04/168.37 Found (x01 x001) as proof of ((iff P) Q)
% 168.04/168.37 Found x000:=(x00 x012):R
% 168.04/168.37 Found (x00 x012) as proof of R
% 168.04/168.37 Found (x00 x012) as proof of R
% 168.04/168.37 Found x010:=(x01 x001):((iff P) Q)
% 168.04/168.37 Found (x01 x001) as proof of ((iff P) Q)
% 168.04/168.37 Found (x01 x001) as proof of ((iff P) Q)
% 168.04/168.37 Found x000:=(x00 x010):R
% 168.04/168.37 Found (x00 x010) as proof of R
% 168.04/168.37 Found (x00 x010) as proof of R
% 168.04/168.37 Found x000:=(x00 x012):R
% 168.04/168.37 Found (x00 x012) as proof of R
% 168.04/168.37 Found (x00 x012) as proof of R
% 168.04/168.37 Found x20:=(x2 x10):((iff P) Q)
% 168.04/168.37 Found (x2 x10) as proof of ((iff P) Q)
% 168.04/168.37 Found (x2 x10) as proof of ((iff P) Q)
% 168.04/168.37 Found x010:=(x01 x000):((iff P) Q)
% 168.04/168.37 Found x010 as proof of ((iff P) Q)
% 168.04/168.37 Found x000:=(x00 x012):R
% 168.04/168.37 Found (x00 x012) as proof of R
% 168.04/168.37 Found (x00 x012) as proof of R
% 168.04/168.37 Found x010:=(x01 x001):((iff P) Q)
% 168.04/168.37 Found (x01 x001) as proof of ((iff P) Q)
% 168.04/168.37 Found (x01 x001) as proof of ((iff P) Q)
% 168.88/169.25 Found x010:=(x01 x000):((iff P) Q)
% 168.88/169.25 Found (x01 x000) as proof of ((iff P) Q)
% 168.88/169.25 Found (x01 x000) as proof of ((iff P) Q)
% 168.88/169.25 Found x20:=(x2 x10):((iff P) Q)
% 168.88/169.25 Found (x2 x10) as proof of ((iff P) Q)
% 168.88/169.25 Found (x2 x10) as proof of ((iff P) Q)
% 168.88/169.25 Found x010:=(x01 x000):((iff P) Q)
% 168.88/169.25 Found x010 as proof of ((iff P) Q)
% 168.88/169.25 Found x000:=(x00 x010):R
% 168.88/169.25 Found (x00 x010) as proof of R
% 168.88/169.25 Found (x00 x010) as proof of R
% 168.88/169.25 Found x010:=(x01 x000):((iff P) Q)
% 168.88/169.25 Found x010 as proof of ((iff P) Q)
% 168.88/169.25 Found x000:=(x00 x012):R
% 168.88/169.25 Found (x00 x012) as proof of R
% 168.88/169.25 Found (x00 x012) as proof of R
% 168.88/169.25 Found x010:=(x01 x020):x
% 168.88/169.25 Found (x01 x020) as proof of P
% 168.88/169.25 Found (x01 x020) as proof of P
% 168.88/169.25 Found (x01 x020) as proof of P
% 168.88/169.25 Found x010:=(x01 x020):x
% 168.88/169.25 Found (x01 x020) as proof of R
% 168.88/169.25 Found (x01 x020) as proof of R
% 168.88/169.25 Found (x01 x020) as proof of R
% 168.88/169.25 Found x000:=(x00 x012):R
% 168.88/169.25 Found (x00 x012) as proof of R
% 168.88/169.25 Found (x00 x012) as proof of R
% 168.88/169.25 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 168.88/169.25 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 168.88/169.25 Found iff_sym as proof of x
% 168.88/169.25 Found (x02 iff_sym) as proof of Q
% 168.88/169.25 Found (x02 iff_sym) as proof of Q
% 168.88/169.25 Found x010:=(x01 x000):((iff P) Q)
% 168.88/169.25 Found x010 as proof of ((iff P) Q)
% 168.88/169.25 Found x010:=(x01 x021):x
% 168.88/169.25 Found (x01 x021) as proof of P
% 168.88/169.25 Found (x01 x021) as proof of P
% 168.88/169.25 Found (x01 x021) as proof of P
% 168.88/169.25 Found x010:=(x01 x000):((iff P) Q)
% 168.88/169.25 Found (x01 x000) as proof of ((iff P) Q)
% 168.88/169.25 Found (x01 x000) as proof of ((iff P) Q)
% 168.88/169.25 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 168.88/169.25 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 168.88/169.25 Found eq_substitution as proof of x
% 168.88/169.25 Found (x06 eq_substitution) as proof of Q
% 168.88/169.25 Found (x06 eq_substitution) as proof of Q
% 168.88/169.25 Found (x03 (x06 eq_substitution)) as proof of P
% 168.88/169.25 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 168.88/169.25 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 168.88/169.25 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 168.88/169.25 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 168.88/169.25 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 168.88/169.25 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 168.88/169.25 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 168.88/169.25 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 168.88/169.25 Found x010:=(x01 x000):((iff P) Q)
% 168.88/169.25 Found x010 as proof of ((iff P) Q)
% 168.88/169.25 Found x010:=(x01 x020):x
% 168.88/169.25 Found (x01 x020) as proof of P
% 168.88/169.25 Found (x01 x020) as proof of P
% 168.88/169.25 Found (x01 x020) as proof of P
% 168.88/169.25 Found x010:=(x01 x000):((iff P) Q)
% 168.88/169.25 Found x010 as proof of ((iff P) Q)
% 168.88/169.25 Found x10:R
% 168.88/169.25 Found (fun (x02:(x->Q))=> x10) as proof of R
% 168.88/169.25 Found (fun (x01:(Q->x)) (x02:(x->Q))=> x10) as proof of ((x->Q)->R)
% 168.88/169.25 Found (fun (x01:(Q->x)) (x02:(x->Q))=> x10) as proof of ((Q->x)->((x->Q)->R))
% 168.88/169.25 Found x010:=(x01 x000):((iff P) Q)
% 168.88/169.25 Found x010 as proof of ((iff P) Q)
% 168.88/169.25 Found x010:=(x01 x000):((iff P) Q)
% 168.88/169.25 Found x010 as proof of ((iff P) Q)
% 168.88/169.25 Found x010:=(x01 x000):((iff P) Q)
% 168.88/169.25 Found x010 as proof of ((iff P) Q)
% 168.88/169.25 Found x010:=(x01 x000):((iff P) Q)
% 168.88/169.25 Found x010 as proof of ((iff P) Q)
% 168.88/169.25 Found x010:=(x01 x020):x
% 168.88/169.25 Found (x01 x020) as proof of P
% 168.88/169.25 Found (x01 x020) as proof of P
% 168.88/169.25 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 168.88/169.25 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 169.18/169.54 Found x010:=(x01 x020):x
% 169.18/169.54 Found (x01 x020) as proof of ((iff P) Q)
% 169.18/169.54 Found (x01 x020) as proof of ((iff P) Q)
% 169.18/169.54 Found (x01 x020) as proof of ((iff P) Q)
% 169.18/169.54 Found x010:=(x01 x000):((iff P) Q)
% 169.18/169.54 Found x010 as proof of ((iff P) Q)
% 169.18/169.54 Found x010:=(x01 x020):x
% 169.18/169.54 Found (x01 x020) as proof of P
% 169.18/169.54 Found (x01 x020) as proof of P
% 169.18/169.54 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 169.18/169.54 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 169.18/169.54 Found x010:=(x01 x000):((iff P) Q)
% 169.18/169.54 Found x010 as proof of ((iff P) Q)
% 169.18/169.54 Found x010:=(x01 x021):x
% 169.18/169.54 Found (x01 x021) as proof of P
% 169.18/169.54 Found (x01 x021) as proof of P
% 169.18/169.54 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 169.18/169.54 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 169.18/169.54 Found x010:=(x01 x000):((iff P) Q)
% 169.18/169.54 Found x010 as proof of ((iff P) Q)
% 169.18/169.54 Found x010:=(x01 x000):((iff P) Q)
% 169.18/169.54 Found x010 as proof of ((iff P) Q)
% 169.18/169.54 Found x010:=(x01 x000):((iff P) Q)
% 169.18/169.54 Found x010 as proof of ((iff P) Q)
% 169.18/169.54 Found x030:P
% 169.18/169.54 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 169.18/169.54 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 169.18/169.54 Found x010:=(x01 x000):((iff P) Q)
% 169.18/169.54 Found x010 as proof of ((iff P) Q)
% 169.18/169.54 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 169.18/169.54 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 169.18/169.54 Found eq_substitution as proof of x
% 169.18/169.54 Found (x04 eq_substitution) as proof of Q
% 169.18/169.54 Found (x04 eq_substitution) as proof of Q
% 169.18/169.54 Found (x2 (x04 eq_substitution)) as proof of P
% 169.18/169.54 Found (fun (x04:(x->Q))=> (x2 (x04 eq_substitution))) as proof of P
% 169.18/169.54 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))) as proof of ((x->Q)->P)
% 169.18/169.54 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 169.18/169.54 Found (and_rect20 (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))) as proof of P
% 169.18/169.54 Found ((and_rect2 P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))) as proof of P
% 169.18/169.54 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))) as proof of P
% 169.18/169.54 Found (fun (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))) as proof of P
% 169.18/169.54 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))) as proof of ((Q->P)->P)
% 169.18/169.54 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))) as proof of ((P->Q)->((Q->P)->P))
% 169.18/169.54 Found (and_rect10 (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 169.18/169.54 Found ((and_rect1 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 169.18/169.54 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 169.18/169.54 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution)))))) as proof of P
% 169.18/169.54 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))))) as proof of P
% 170.87/171.17 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 eq_substitution))))))) as proof of (((iff Q) x)->P)
% 170.87/171.17 Found x010:=(x01 x000):((iff P) Q)
% 170.87/171.17 Found x010 as proof of ((iff P) Q)
% 170.87/171.17 Found x010:=(x01 x000):((iff P) Q)
% 170.87/171.17 Found x010 as proof of ((iff P) Q)
% 170.87/171.17 Found x010:=(x01 x003):((iff P) Q)
% 170.87/171.17 Found x010 as proof of ((iff P) Q)
% 170.87/171.17 Found x030:P
% 170.87/171.17 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 170.87/171.17 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 170.87/171.17 Found x000:=(x00 x010):R
% 170.87/171.17 Found (x00 x010) as proof of R
% 170.87/171.17 Found (x00 x010) as proof of R
% 170.87/171.17 Found x010:=(x01 x000):((iff P) Q)
% 170.87/171.17 Found (x01 x000) as proof of ((iff P) Q)
% 170.87/171.17 Found (x01 x000) as proof of ((iff P) Q)
% 170.87/171.17 Found x010:=(x01 x001):((iff P) Q)
% 170.87/171.17 Found x010 as proof of ((iff P) Q)
% 170.87/171.17 Found x040:Q
% 170.87/171.17 Found x040 as proof of Q
% 170.87/171.17 Found (x03 x040) as proof of P
% 170.87/171.17 Found (x03 x040) as proof of P
% 170.87/171.17 Found (x03 x040) as proof of P
% 170.87/171.17 Found x010:=(x01 x000):((iff P) Q)
% 170.87/171.17 Found x010 as proof of ((iff P) Q)
% 170.87/171.17 Found x00:((iff Q) x)
% 170.87/171.17 Instantiate: x:=P:Prop
% 170.87/171.17 Found x00 as proof of ((iff Q) P)
% 170.87/171.17 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 170.87/171.17 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 170.87/171.17 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 170.87/171.17 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 170.87/171.17 Found x010:=(x01 x000):((iff P) Q)
% 170.87/171.17 Found x010 as proof of ((iff P) Q)
% 170.87/171.17 Found x000:=(x00 x011):R
% 170.87/171.17 Found (x00 x011) as proof of R
% 170.87/171.17 Found (x00 x011) as proof of R
% 170.87/171.17 Found x010:=(x01 x001):((iff P) Q)
% 170.87/171.17 Found x010 as proof of ((iff P) Q)
% 170.87/171.17 Found x010:=(x01 x001):((iff P) Q)
% 170.87/171.17 Found x010 as proof of ((iff P) Q)
% 170.87/171.17 Found x030:P
% 170.87/171.17 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 170.87/171.17 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 170.87/171.17 Found x02:((iff Q) x)
% 170.87/171.17 Instantiate: x:=P:Prop
% 170.87/171.17 Found x02 as proof of ((iff Q) P)
% 170.87/171.17 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 170.87/171.17 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 170.87/171.17 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 170.87/171.17 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 170.87/171.17 Found x000:=(x00 x011):R
% 170.87/171.17 Found (x00 x011) as proof of R
% 170.87/171.17 Found (x00 x011) as proof of R
% 170.87/171.17 Found x030:x
% 170.87/171.17 Instantiate: x:=Q:Prop
% 170.87/171.17 Found x030 as proof of Q
% 170.87/171.17 Found x010:=(x01 x001):((iff P) Q)
% 170.87/171.17 Found x010 as proof of ((iff P) Q)
% 170.87/171.17 Found x030:x
% 170.87/171.17 Instantiate: x:=P:Prop
% 170.87/171.17 Found (fun (x04:(x->Q))=> x030) as proof of P
% 170.87/171.17 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 170.87/171.17 Found x010:=(x01 x001):((iff P) Q)
% 170.87/171.17 Found x010 as proof of ((iff P) Q)
% 170.87/171.17 Found x030:x
% 170.87/171.17 Instantiate: x:=R:Prop
% 170.87/171.17 Found x030 as proof of R
% 170.87/171.17 Found x010:=(x01 x001):((iff P) Q)
% 170.87/171.17 Found (x01 x001) as proof of ((iff P) Q)
% 170.87/171.17 Found (x01 x001) as proof of ((iff P) Q)
% 170.87/171.17 Found x000:=(x00 x010):R
% 170.87/171.17 Found (x00 x010) as proof of R
% 170.87/171.17 Found (x00 x010) as proof of R
% 170.87/171.17 Found x010:=(x01 x020):x
% 170.87/171.17 Found (x01 x020) as proof of R
% 170.87/171.17 Found (x01 x020) as proof of R
% 170.87/171.17 Found (x01 x020) as proof of R
% 170.87/171.17 Found x000:=(x00 x010):R
% 170.87/171.17 Found (x00 x010) as proof of R
% 170.87/171.17 Found (x00 x010) as proof of R
% 170.87/171.17 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 170.87/171.17 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 170.87/171.17 Found or_ind as proof of x
% 170.87/171.17 Found (x04 or_ind) as proof of Q
% 170.87/171.17 Found (x04 or_ind) as proof of Q
% 170.87/171.17 Found x030:x
% 170.87/171.17 Instantiate: x:=Q:Prop
% 170.87/171.17 Found x030 as proof of Q
% 170.87/171.17 Found x030:x
% 170.87/171.17 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 170.87/171.17 Found x030 as proof of ((iff P) Q)
% 170.87/171.17 Found x030:x
% 170.87/171.17 Instantiate: x:=R:Prop
% 170.87/171.17 Found x030 as proof of R
% 170.87/171.17 Found x030:x
% 170.87/171.17 Instantiate: x:=Q:Prop
% 170.87/171.17 Found x030 as proof of Q
% 170.87/171.17 Found x02:((iff Q) x)
% 170.87/171.17 Instantiate: x:=P:Prop
% 170.87/171.17 Found x02 as proof of ((iff Q) P)
% 170.87/171.17 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 170.87/171.17 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 170.87/171.17 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 170.87/171.17 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 172.17/172.48 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 172.17/172.48 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 172.17/172.48 Found x010:=(x01 x000):((iff P) Q)
% 172.17/172.48 Found x010 as proof of ((iff P) Q)
% 172.17/172.48 Found x000:=(x00 x011):R
% 172.17/172.48 Found (x00 x011) as proof of R
% 172.17/172.48 Found (x00 x011) as proof of R
% 172.17/172.48 Found x000:=(x00 x011):R
% 172.17/172.48 Found (x00 x011) as proof of R
% 172.17/172.48 Found (x00 x011) as proof of R
% 172.17/172.48 Found x030:x
% 172.17/172.48 Instantiate: x:=Q:Prop
% 172.17/172.48 Found x030 as proof of Q
% 172.17/172.48 Found x031:x
% 172.17/172.48 Instantiate: x:=Q:Prop
% 172.17/172.48 Found x031 as proof of Q
% 172.17/172.48 Found x031:x
% 172.17/172.48 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 172.17/172.48 Found x031 as proof of ((iff P) Q)
% 172.17/172.48 Found x010:=(x01 x000):((iff P) Q)
% 172.17/172.48 Found x010 as proof of ((iff P) Q)
% 172.17/172.48 Found x010:=(x01 x001):((iff P) Q)
% 172.17/172.48 Found (x01 x001) as proof of ((iff P) Q)
% 172.17/172.48 Found (x01 x001) as proof of ((iff P) Q)
% 172.17/172.48 Found x031:x
% 172.17/172.48 Instantiate: x:=R:Prop
% 172.17/172.48 Found x031 as proof of R
% 172.17/172.48 Found x030:x
% 172.17/172.48 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 172.17/172.48 Found x030 as proof of ((iff P) Q)
% 172.17/172.48 Found x010:=(x01 x002):((iff P) Q)
% 172.17/172.48 Found x010 as proof of ((iff P) Q)
% 172.17/172.48 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 172.17/172.48 Found (iff_refl Q) as proof of ((iff Q) x)
% 172.17/172.48 Found (iff_refl Q) as proof of ((iff Q) x)
% 172.17/172.48 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 172.17/172.48 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 172.17/172.48 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 172.17/172.48 Found (iff_refl Q) as proof of ((iff Q) x)
% 172.17/172.48 Found (iff_refl Q) as proof of ((iff Q) x)
% 172.17/172.48 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 172.17/172.48 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 172.17/172.48 Found x010:=(x01 x000):((iff P) Q)
% 172.17/172.48 Found x010 as proof of ((iff P) Q)
% 172.17/172.48 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 172.17/172.48 Found (iff_refl Q) as proof of ((iff Q) x)
% 172.17/172.48 Found (iff_refl Q) as proof of ((iff Q) x)
% 172.17/172.48 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 172.17/172.48 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 172.17/172.48 Found x000:=(x00 x010):R
% 172.17/172.48 Found (x00 x010) as proof of R
% 172.17/172.48 Found (x00 x010) as proof of R
% 172.17/172.48 Found x010:=(x01 x000):((iff P) Q)
% 172.17/172.48 Found x010 as proof of ((iff P) Q)
% 172.17/172.48 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 172.17/172.48 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 172.17/172.48 Found eq_substitution as proof of x
% 172.17/172.48 Found (x06 eq_substitution) as proof of Q
% 172.17/172.48 Found (x06 eq_substitution) as proof of Q
% 172.17/172.48 Found (x03 (x06 eq_substitution)) as proof of P
% 172.17/172.48 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 172.17/172.48 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 172.17/172.48 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 172.17/172.48 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 172.17/172.48 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 172.17/172.48 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 172.17/172.48 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 172.17/172.48 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 172.17/172.48 Found x010:=(x01 x000):((iff P) Q)
% 172.17/172.48 Found x010 as proof of ((iff P) Q)
% 172.17/172.48 Found x000:=(x00 x010):R
% 172.17/172.48 Found (x00 x010) as proof of R
% 172.17/172.48 Found (x00 x010) as proof of R
% 172.17/172.48 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 172.17/172.48 Found (iff_refl Q) as proof of ((iff Q) x)
% 172.17/172.48 Found (iff_refl Q) as proof of ((iff Q) x)
% 172.17/172.48 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 172.17/172.48 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 172.17/172.48 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 172.17/172.48 Found (iff_refl Q) as proof of ((iff Q) x)
% 172.17/172.48 Found (iff_refl Q) as proof of ((iff Q) x)
% 172.17/172.48 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 173.46/173.76 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 173.46/173.76 Found x010:=(x01 x000):((iff P) Q)
% 173.46/173.76 Found x010 as proof of ((iff P) Q)
% 173.46/173.76 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 173.46/173.76 Found (iff_refl Q) as proof of ((iff Q) x)
% 173.46/173.76 Found (iff_refl Q) as proof of ((iff Q) x)
% 173.46/173.76 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 173.46/173.76 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 173.46/173.76 Found x010:=(x01 x001):((iff P) Q)
% 173.46/173.76 Found (x01 x001) as proof of ((iff P) Q)
% 173.46/173.76 Found (x01 x001) as proof of ((iff P) Q)
% 173.46/173.76 Found x000:=(x00 x011):R
% 173.46/173.76 Found (x00 x011) as proof of R
% 173.46/173.76 Found (x00 x011) as proof of R
% 173.46/173.76 Found x000:=(x00 x011):R
% 173.46/173.76 Found (x00 x011) as proof of R
% 173.46/173.76 Found (x00 x011) as proof of R
% 173.46/173.76 Found x010:=(x01 x000):((iff P) Q)
% 173.46/173.76 Found x010 as proof of ((iff P) Q)
% 173.46/173.76 Found x010:=(x01 x001):((iff P) Q)
% 173.46/173.76 Found (x01 x001) as proof of ((iff P) Q)
% 173.46/173.76 Found (x01 x001) as proof of ((iff P) Q)
% 173.46/173.76 Found x030:x
% 173.46/173.76 Instantiate: x:=P:Prop
% 173.46/173.76 Found (fun (x04:(x->Q))=> x030) as proof of P
% 173.46/173.76 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 173.46/173.76 Found x030:P
% 173.46/173.76 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 173.46/173.76 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 173.46/173.76 Found x010:=(x01 x000):((iff P) Q)
% 173.46/173.76 Found x010 as proof of ((iff P) Q)
% 173.46/173.76 Found x010:=(x01 x000):((iff P) Q)
% 173.46/173.76 Found x010 as proof of ((iff P) Q)
% 173.46/173.76 Found x010:=(x01 x000):((iff P) Q)
% 173.46/173.76 Found x010 as proof of ((iff P) Q)
% 173.46/173.76 Found x030:x
% 173.46/173.76 Instantiate: x:=P:Prop
% 173.46/173.76 Found (fun (x04:(x->Q))=> x030) as proof of P
% 173.46/173.76 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 173.46/173.76 Found x030:=(x03 x020):P
% 173.46/173.76 Found (x03 x020) as proof of P
% 173.46/173.76 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 173.46/173.76 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 173.46/173.76 Found x010:=(x01 x000):((iff P) Q)
% 173.46/173.76 Found (x01 x000) as proof of ((iff P) Q)
% 173.46/173.76 Found (x01 x000) as proof of ((iff P) Q)
% 173.46/173.76 Found iff_sym100:=(iff_sym10 x00):((iff P) Q)
% 173.46/173.76 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 173.46/173.76 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 173.46/173.76 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 173.46/173.76 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 173.46/173.76 Found x010:=(x01 x001):((iff P) Q)
% 173.46/173.76 Found x010 as proof of ((iff P) Q)
% 173.46/173.76 Found x010:=(x01 x000):((iff P) Q)
% 173.46/173.76 Found x010 as proof of ((iff P) Q)
% 173.46/173.76 Found x010:=(x01 x000):((iff P) Q)
% 173.46/173.76 Found (x01 x000) as proof of ((iff P) Q)
% 173.46/173.76 Found (x01 x000) as proof of ((iff P) Q)
% 173.46/173.76 Found x010:=(x01 x000):((iff P) Q)
% 173.46/173.76 Found (x01 x000) as proof of ((iff P) Q)
% 173.46/173.76 Found (x01 x000) as proof of ((iff P) Q)
% 173.46/173.76 Found x040:Q
% 173.46/173.76 Found x040 as proof of Q
% 173.46/173.76 Found (x03 x040) as proof of R
% 173.46/173.76 Found (x03 x040) as proof of R
% 173.46/173.76 Found (x03 x040) as proof of R
% 173.46/173.76 Found x000:=(x00 x010):R
% 173.46/173.76 Found (x00 x010) as proof of R
% 173.46/173.76 Found (x00 x010) as proof of R
% 173.46/173.76 Found x030:=(x03 x040):x
% 173.46/173.76 Instantiate: x:=P:Prop
% 173.46/173.76 Found (x03 x040) as proof of P
% 173.46/173.76 Found (x03 x040) as proof of P
% 173.46/173.76 Found x00:((iff Q) x)
% 173.46/173.76 Instantiate: x:=P:Prop
% 173.46/173.76 Found x00 as proof of ((iff Q) P)
% 173.46/173.76 Found (iff_sym00 x00) as proof of ((and (P->Q)) (Q->P))
% 173.46/173.76 Found ((iff_sym0 P) x00) as proof of ((and (P->Q)) (Q->P))
% 173.46/173.76 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 173.46/173.76 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 173.46/173.76 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 173.46/173.76 Found x030:P
% 173.46/173.76 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 173.46/173.76 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 173.46/173.76 Found x010:=(x01 x001):((iff P) Q)
% 173.46/173.76 Found x010 as proof of ((iff P) Q)
% 173.46/173.76 Found x020:Q
% 173.46/173.76 Found x020 as proof of Q
% 173.46/173.76 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 173.46/173.76 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 173.46/173.76 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 173.46/173.76 Found x010:=(x01 x000):((iff P) Q)
% 173.46/173.76 Found (x01 x000) as proof of ((iff P) Q)
% 173.46/173.76 Found (x01 x000) as proof of ((iff P) Q)
% 173.46/173.76 Found x010:=(x01 x001):((iff P) Q)
% 173.46/173.76 Found x010 as proof of ((iff P) Q)
% 173.46/173.76 Found x020:Q
% 173.46/173.76 Found x020 as proof of Q
% 173.46/173.76 Found (x01 x020) as proof of ((iff P) Q)
% 173.46/173.76 Found (x01 x020) as proof of ((iff P) Q)
% 173.46/173.76 Found (x01 x020) as proof of ((iff P) Q)
% 173.46/173.76 Found x000:=(x00 x010):R
% 173.46/173.76 Found (x00 x010) as proof of R
% 173.46/173.76 Found (x00 x010) as proof of R
% 173.46/173.76 Found x20:=(x2 x10):((iff P) Q)
% 173.46/173.76 Found x20 as proof of ((iff P) Q)
% 173.46/173.76 Found x010:=(x01 x020):x
% 173.46/173.76 Found (x01 x020) as proof of P
% 174.56/174.87 Found (x01 x020) as proof of P
% 174.56/174.87 Found (x01 x020) as proof of P
% 174.56/174.87 Found x030:P
% 174.56/174.87 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 174.56/174.87 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 174.56/174.87 Found x20:=(x2 x10):((iff P) Q)
% 174.56/174.87 Found x20 as proof of ((iff P) Q)
% 174.56/174.87 Found x020:Q
% 174.56/174.87 Found x020 as proof of Q
% 174.56/174.87 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 174.56/174.87 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 174.56/174.87 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 174.56/174.87 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 174.56/174.87 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 174.56/174.87 Found or_ind as proof of x
% 174.56/174.87 Found (x04 or_ind) as proof of Q
% 174.56/174.87 Found (x04 or_ind) as proof of Q
% 174.56/174.87 Found x010:=(x01 x000):((iff P) Q)
% 174.56/174.87 Found (x01 x000) as proof of ((iff P) Q)
% 174.56/174.87 Found (x01 x000) as proof of ((iff P) Q)
% 174.56/174.87 Found x030:x
% 174.56/174.87 Instantiate: x:=R:Prop
% 174.56/174.87 Found x030 as proof of R
% 174.56/174.87 Found x010:=(x01 x000):((iff P) Q)
% 174.56/174.87 Found x010 as proof of ((iff P) Q)
% 174.56/174.87 Found x010:=(x01 x001):((iff P) Q)
% 174.56/174.87 Found x010 as proof of ((iff P) Q)
% 174.56/174.87 Found x030:x
% 174.56/174.87 Instantiate: x:=Q:Prop
% 174.56/174.87 Found x030 as proof of Q
% 174.56/174.87 Found x010:=(x01 x000):((iff P) Q)
% 174.56/174.87 Found x010 as proof of ((iff P) Q)
% 174.56/174.87 Found x010:=(x01 x000):((iff P) Q)
% 174.56/174.87 Found x010 as proof of ((iff P) Q)
% 174.56/174.87 Found x020:=(x02 x030):Q
% 174.56/174.87 Found (x02 x030) as proof of Q
% 174.56/174.87 Found (x02 x030) as proof of Q
% 174.56/174.87 Found x010:=(x01 x000):((iff P) Q)
% 174.56/174.87 Found x010 as proof of ((iff P) Q)
% 174.56/174.87 Found x010:=(x01 x001):((iff P) Q)
% 174.56/174.87 Found x010 as proof of ((iff P) Q)
% 174.56/174.87 Found x010:=(x01 x000):((iff P) Q)
% 174.56/174.87 Found x010 as proof of ((iff P) Q)
% 174.56/174.87 Found x030:=(x03 x020):P
% 174.56/174.87 Found (x03 x020) as proof of P
% 174.56/174.87 Found (x03 x020) as proof of P
% 174.56/174.87 Found x20:=(x2 x10):((iff P) Q)
% 174.56/174.87 Found x20 as proof of ((iff P) Q)
% 174.56/174.87 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 174.56/174.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 174.56/174.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 174.56/174.87 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 174.56/174.87 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 174.56/174.87 Found x010:=(x01 x000):((iff P) Q)
% 174.56/174.87 Found x010 as proof of ((iff P) Q)
% 174.56/174.87 Found x010:=(x01 x000):((iff P) Q)
% 174.56/174.87 Found x010 as proof of ((iff P) Q)
% 174.56/174.87 Found x020:=(x02 x030):Q
% 174.56/174.87 Found (x02 x030) as proof of Q
% 174.56/174.87 Found (x02 x030) as proof of Q
% 174.56/174.87 Found x030:=(x03 x020):P
% 174.56/174.87 Found (x03 x020) as proof of P
% 174.56/174.87 Found (x03 x020) as proof of P
% 174.56/174.87 Found x030:x
% 174.56/174.87 Instantiate: x:=Q:Prop
% 174.56/174.87 Found x030 as proof of Q
% 174.56/174.87 Found x030:x
% 174.56/174.87 Instantiate: x:=R:Prop
% 174.56/174.87 Found x030 as proof of R
% 174.56/174.87 Found x030:=(x03 x040):x
% 174.56/174.87 Instantiate: x:=P:Prop
% 174.56/174.87 Found (x03 x040) as proof of P
% 174.56/174.87 Found (x03 x040) as proof of P
% 174.56/174.87 Found x030:x
% 174.56/174.87 Instantiate: x:=Q:Prop
% 174.56/174.87 Found x030 as proof of Q
% 174.56/174.87 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 174.56/174.87 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 174.56/174.87 Found or_ind as proof of x
% 174.56/174.87 Found (x04 or_ind) as proof of Q
% 174.56/174.87 Found (x04 or_ind) as proof of Q
% 174.56/174.87 Found x030:x
% 174.56/174.87 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 174.56/174.87 Found x030 as proof of ((iff P) Q)
% 174.56/174.87 Found x010:=(x01 x000):((iff P) Q)
% 174.56/174.87 Found x010 as proof of ((iff P) Q)
% 174.56/174.87 Found x02:((iff Q) x)
% 174.56/174.87 Instantiate: x:=P:Prop
% 174.56/174.87 Found x02 as proof of ((iff Q) P)
% 174.56/174.87 Found (iff_sym00 x02) as proof of ((iff P) Q)
% 174.56/174.87 Found ((iff_sym0 P) x02) as proof of ((iff P) Q)
% 174.56/174.87 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 174.56/174.87 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 174.56/174.87 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 174.56/174.87 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 174.56/174.87 Found x000:=(x00 x010):R
% 174.56/174.87 Found (x00 x010) as proof of R
% 174.56/174.87 Found (x00 x010) as proof of R
% 174.56/174.87 Found x030:x
% 174.56/174.87 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 174.56/174.87 Found x030 as proof of ((iff P) Q)
% 174.56/174.87 Found x031:x
% 174.56/174.87 Instantiate: x:=R:Prop
% 174.56/174.87 Found x031 as proof of R
% 174.56/174.87 Found x031:x
% 174.56/174.87 Instantiate: x:=Q:Prop
% 174.56/174.87 Found x031 as proof of Q
% 174.56/174.87 Found x010:=(x01 x000):((iff P) Q)
% 174.56/174.87 Found x010 as proof of ((iff P) Q)
% 174.56/174.87 Found x020:=(x02 x030):Q
% 174.56/174.87 Found (x02 x030) as proof of Q
% 174.56/174.87 Found (x02 x030) as proof of Q
% 174.56/174.87 Found x010:=(x01 x000):((iff P) Q)
% 174.56/174.87 Found x010 as proof of ((iff P) Q)
% 174.56/174.87 Found x010:=(x01 x000):((iff P) Q)
% 174.56/174.87 Found x010 as proof of ((iff P) Q)
% 174.56/174.87 Found x031:x
% 174.56/174.87 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 174.56/174.87 Found x031 as proof of ((iff P) Q)
% 174.56/174.87 Found x030:=(x03 x020):P
% 174.56/174.87 Found (x03 x020) as proof of P
% 175.78/176.16 Found (x03 x020) as proof of P
% 175.78/176.16 Found x010:=(x01 x000):((iff P) Q)
% 175.78/176.16 Found x010 as proof of ((iff P) Q)
% 175.78/176.16 Found x030:x
% 175.78/176.16 Instantiate: x:=Q:Prop
% 175.78/176.16 Found x030 as proof of Q
% 175.78/176.16 Found x000:=(x00 x010):R
% 175.78/176.16 Found (x00 x010) as proof of R
% 175.78/176.16 Found (x00 x010) as proof of R
% 175.78/176.16 Found x20:=(x2 x10):((iff P) Q)
% 175.78/176.16 Found (x2 x10) as proof of ((iff P) Q)
% 175.78/176.16 Found (x2 x10) as proof of ((iff P) Q)
% 175.78/176.16 Found x010:=(x01 x000):((iff P) Q)
% 175.78/176.16 Found (x01 x000) as proof of ((iff P) Q)
% 175.78/176.16 Found (x01 x000) as proof of ((iff P) Q)
% 175.78/176.16 Found x010:=(x01 x000):((iff P) Q)
% 175.78/176.16 Found x010 as proof of ((iff P) Q)
% 175.78/176.16 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 175.78/176.16 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 175.78/176.16 Found or_ind as proof of x
% 175.78/176.16 Found (x04 or_ind) as proof of Q
% 175.78/176.16 Found (x04 or_ind) as proof of Q
% 175.78/176.16 Found x000:=(x00 x011):R
% 175.78/176.16 Found (x00 x011) as proof of R
% 175.78/176.16 Found (x00 x011) as proof of R
% 175.78/176.16 Found x010:=(x01 x001):((iff P) Q)
% 175.78/176.16 Found (x01 x001) as proof of ((iff P) Q)
% 175.78/176.16 Found (x01 x001) as proof of ((iff P) Q)
% 175.78/176.16 Found x010:=(x01 x001):((iff P) Q)
% 175.78/176.16 Found (x01 x001) as proof of ((iff P) Q)
% 175.78/176.16 Found (x01 x001) as proof of ((iff P) Q)
% 175.78/176.16 Found x010:=(x01 x000):((iff P) Q)
% 175.78/176.16 Found x010 as proof of ((iff P) Q)
% 175.78/176.16 Found x010:=(x01 x000):((iff P) Q)
% 175.78/176.16 Found x010 as proof of ((iff P) Q)
% 175.78/176.16 Found x010:=(x01 x000):((iff P) Q)
% 175.78/176.16 Found x010 as proof of ((iff P) Q)
% 175.78/176.16 Found x010:=(x01 x001):((iff P) Q)
% 175.78/176.16 Found (x01 x001) as proof of ((iff P) Q)
% 175.78/176.16 Found (x01 x001) as proof of ((iff P) Q)
% 175.78/176.16 Found x010:=(x01 x000):((iff P) Q)
% 175.78/176.16 Found (x01 x000) as proof of ((iff P) Q)
% 175.78/176.16 Found (x01 x000) as proof of ((iff P) Q)
% 175.78/176.16 Found x010:=(x01 x001):((iff P) Q)
% 175.78/176.16 Found (x01 x001) as proof of ((iff P) Q)
% 175.78/176.16 Found (x01 x001) as proof of ((iff P) Q)
% 175.78/176.16 Found x030:x
% 175.78/176.16 Instantiate: x:=P:Prop
% 175.78/176.16 Found (fun (x04:(x->Q))=> x030) as proof of P
% 175.78/176.16 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 175.78/176.16 Found x030:x
% 175.78/176.16 Instantiate: x:=P:Prop
% 175.78/176.16 Found (fun (x04:(x->Q))=> x030) as proof of P
% 175.78/176.16 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 175.78/176.16 Found x010:=(x01 x000):((iff P) Q)
% 175.78/176.16 Found (x01 x000) as proof of ((iff P) Q)
% 175.78/176.16 Found (x01 x000) as proof of ((iff P) Q)
% 175.78/176.16 Found x010:=(x01 x000):((iff P) Q)
% 175.78/176.16 Found (x01 x000) as proof of ((iff P) Q)
% 175.78/176.16 Found (x01 x000) as proof of ((iff P) Q)
% 175.78/176.16 Found x010:=(x01 x000):((iff P) Q)
% 175.78/176.16 Found x010 as proof of ((iff P) Q)
% 175.78/176.16 Found x010:=(x01 x000):((iff P) Q)
% 175.78/176.16 Found x010 as proof of ((iff P) Q)
% 175.78/176.16 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 175.78/176.16 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 175.78/176.16 Found eq_substitution as proof of x
% 175.78/176.16 Found (x06 eq_substitution) as proof of Q
% 175.78/176.16 Found (x06 eq_substitution) as proof of Q
% 175.78/176.16 Found (x03 (x06 eq_substitution)) as proof of P
% 175.78/176.16 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 175.78/176.16 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 175.78/176.16 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 175.78/176.16 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 175.78/176.16 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 175.78/176.16 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 175.78/176.16 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 175.78/176.16 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 175.78/176.16 Found x030:P
% 175.78/176.16 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 175.78/176.16 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 175.78/176.16 Found x030:=(x03 x020):P
% 177.46/177.77 Found (x03 x020) as proof of P
% 177.46/177.77 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 177.46/177.77 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x001):((iff P) Q)
% 177.46/177.77 Found (x01 x001) as proof of ((iff P) Q)
% 177.46/177.77 Found (x01 x001) as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x021:Q
% 177.46/177.77 Found x021 as proof of Q
% 177.46/177.77 Found x010:x
% 177.46/177.77 Found x010 as proof of Q
% 177.46/177.77 Found x000:=(x00 x011):R
% 177.46/177.77 Found (x00 x011) as proof of R
% 177.46/177.77 Found (x00 x011) as proof of R
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found (x01 x000) as proof of ((iff P) Q)
% 177.46/177.77 Found (x01 x000) as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x021:Q
% 177.46/177.77 Found x021 as proof of x
% 177.46/177.77 Found x030:=(x03 x021):P
% 177.46/177.77 Found (x03 x021) as proof of P
% 177.46/177.77 Found (x03 x021) as proof of P
% 177.46/177.77 Found x030:=(x03 x040):x
% 177.46/177.77 Found (x03 x040) as proof of P
% 177.46/177.77 Found (x03 x040) as proof of P
% 177.46/177.77 Found (x03 x040) as proof of P
% 177.46/177.77 Found x010:=(x01 x001):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x011:x
% 177.46/177.77 Found x011 as proof of x
% 177.46/177.77 Found x011:x
% 177.46/177.77 Found x011 as proof of Q
% 177.46/177.77 Found x020:Q
% 177.46/177.77 Found x020 as proof of x
% 177.46/177.77 Found x010:x
% 177.46/177.77 Found x010 as proof of x
% 177.46/177.77 Found x020:Q
% 177.46/177.77 Found x020 as proof of Q
% 177.46/177.77 Found x030:P
% 177.46/177.77 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 177.46/177.77 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 177.46/177.77 Found x030:P
% 177.46/177.77 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 177.46/177.77 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 177.46/177.77 Found x010:=(x01 x001):((iff P) Q)
% 177.46/177.77 Found (x01 x001) as proof of ((iff P) Q)
% 177.46/177.77 Found (x01 x001) as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found (x01 x000) as proof of ((iff P) Q)
% 177.46/177.77 Found (x01 x000) as proof of ((iff P) Q)
% 177.46/177.77 Found x000:=(x00 x010):R
% 177.46/177.77 Found (x00 x010) as proof of R
% 177.46/177.77 Found (x00 x010) as proof of R
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 177.46/177.77 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 177.46/177.77 Found or_ind as proof of x
% 177.46/177.77 Found (x04 or_ind) as proof of Q
% 177.46/177.77 Found (x04 or_ind) as proof of Q
% 177.46/177.77 Found x000:=(x00 x010):R
% 177.46/177.77 Found (x00 x010) as proof of R
% 177.46/177.77 Found (x00 x010) as proof of R
% 177.46/177.77 Found x020:Q
% 177.46/177.77 Found x020 as proof of Q
% 177.46/177.77 Found (x01 x020) as proof of R
% 177.46/177.77 Found (x01 x020) as proof of R
% 177.46/177.77 Found (x01 x020) as proof of R
% 177.46/177.77 Found x010:=(x01 x001):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x040:Q
% 177.46/177.77 Found x040 as proof of Q
% 177.46/177.77 Found (x03 x040) as proof of P
% 177.46/177.77 Found (x03 x040) as proof of P
% 177.46/177.77 Found (x03 x040) as proof of P
% 177.46/177.77 Found x010:=(x01 x001):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x011:x
% 177.46/177.77 Found x011 as proof of Q
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x000:=(x00 x010):R
% 177.46/177.77 Found (x00 x010) as proof of R
% 177.46/177.77 Found (x00 x010) as proof of R
% 177.46/177.77 Found x020:Q
% 177.46/177.77 Found x020 as proof of Q
% 177.46/177.77 Found (x01 x020) as proof of P
% 177.46/177.77 Found (x01 x020) as proof of P
% 177.46/177.77 Found (x01 x020) as proof of P
% 177.46/177.77 Found x010:=(x01 x000):((iff P) Q)
% 177.46/177.77 Found x010 as proof of ((iff P) Q)
% 177.46/177.77 Found x020:Q
% 177.46/177.77 Found x020 as proof of Q
% 177.46/177.77 Found (x01 x020) as proof of R
% 177.46/177.77 Found (x01 x020) as proof of R
% 177.46/177.77 Found (x01 x020) as proof of R
% 177.46/177.77 Found x020:Q
% 177.46/177.77 Found x020 as proof of Q
% 177.46/177.77 Found (x01 x020) as proof of P
% 177.46/177.77 Found (x01 x020) as proof of P
% 177.46/177.77 Found (x01 x020) as proof of P
% 177.46/177.77 Found x010:=(x01 x001):((iff P) Q)
% 177.46/177.77 Found (x01 x001) as proof of ((iff P) Q)
% 179.07/179.40 Found (x01 x001) as proof of ((iff P) Q)
% 179.07/179.40 Found x020:Q
% 179.07/179.40 Found x020 as proof of Q
% 179.07/179.40 Found (x01 x020) as proof of R
% 179.07/179.40 Found (x01 x020) as proof of R
% 179.07/179.40 Found (x01 x020) as proof of R
% 179.07/179.40 Found x030:x
% 179.07/179.40 Found x030 as proof of Q
% 179.07/179.40 Found x021:Q
% 179.07/179.40 Found x021 as proof of Q
% 179.07/179.40 Found (x01 x021) as proof of P
% 179.07/179.40 Found (x01 x021) as proof of P
% 179.07/179.40 Found (x01 x021) as proof of P
% 179.07/179.40 Found x020:Q
% 179.07/179.40 Found x020 as proof of Q
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found x020:Q
% 179.07/179.40 Found x020 as proof of Q
% 179.07/179.40 Found (x01 x020) as proof of ((iff P) Q)
% 179.07/179.40 Found (x01 x020) as proof of ((iff P) Q)
% 179.07/179.40 Found (x01 x020) as proof of ((iff P) Q)
% 179.07/179.40 Found x020:Q
% 179.07/179.40 Found x020 as proof of Q
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found x010:=(x01 x000):((iff P) Q)
% 179.07/179.40 Found (x01 x000) as proof of ((iff P) Q)
% 179.07/179.40 Found (x01 x000) as proof of ((iff P) Q)
% 179.07/179.40 Found x020:Q
% 179.07/179.40 Found x020 as proof of Q
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 179.07/179.40 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 179.07/179.40 Found or_ind as proof of x
% 179.07/179.40 Found (x04 or_ind) as proof of Q
% 179.07/179.40 Found (x04 or_ind) as proof of Q
% 179.07/179.40 Found x020:Q
% 179.07/179.40 Found x020 as proof of Q
% 179.07/179.40 Found (x01 x020) as proof of R
% 179.07/179.40 Found (x01 x020) as proof of R
% 179.07/179.40 Found (x01 x020) as proof of R
% 179.07/179.40 Found x010:=(x01 x000):((iff P) Q)
% 179.07/179.40 Found x010 as proof of ((iff P) Q)
% 179.07/179.40 Found x030:x
% 179.07/179.40 Instantiate: x:=P:Prop
% 179.07/179.40 Found (fun (x04:(x->Q))=> x030) as proof of P
% 179.07/179.40 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 179.07/179.40 Found x020:Q
% 179.07/179.40 Found x020 as proof of Q
% 179.07/179.40 Found (x01 x020) as proof of ((iff P) Q)
% 179.07/179.40 Found (x01 x020) as proof of ((iff P) Q)
% 179.07/179.40 Found (x01 x020) as proof of ((iff P) Q)
% 179.07/179.40 Found x020:Q
% 179.07/179.40 Found x020 as proof of Q
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found x000:=(x00 x011):R
% 179.07/179.40 Found (x00 x011) as proof of R
% 179.07/179.40 Found (x00 x011) as proof of R
% 179.07/179.40 Found x010:=(x01 x001):((iff P) Q)
% 179.07/179.40 Found (x01 x001) as proof of ((iff P) Q)
% 179.07/179.40 Found (x01 x001) as proof of ((iff P) Q)
% 179.07/179.40 Found x010:=(x01 x001):((iff P) Q)
% 179.07/179.40 Found (x01 x001) as proof of ((iff P) Q)
% 179.07/179.40 Found (x01 x001) as proof of ((iff P) Q)
% 179.07/179.40 Found x030:x
% 179.07/179.40 Found x030 as proof of Q
% 179.07/179.40 Found x030:x
% 179.07/179.40 Found x030 as proof of Q
% 179.07/179.40 Found x020:Q
% 179.07/179.40 Found x020 as proof of Q
% 179.07/179.40 Found (x01 x020) as proof of ((iff P) Q)
% 179.07/179.40 Found (x01 x020) as proof of ((iff P) Q)
% 179.07/179.40 Found (x01 x020) as proof of ((iff P) Q)
% 179.07/179.40 Found x021:Q
% 179.07/179.40 Found x021 as proof of Q
% 179.07/179.40 Found (x01 x021) as proof of P
% 179.07/179.40 Found (x01 x021) as proof of P
% 179.07/179.40 Found (x01 x021) as proof of P
% 179.07/179.40 Found x020:Q
% 179.07/179.40 Found x020 as proof of Q
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found x020:Q
% 179.07/179.40 Found x020 as proof of Q
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found (x01 x020) as proof of P
% 179.07/179.40 Found x010:=(x01 x000):((iff P) Q)
% 179.07/179.40 Found x010 as proof of ((iff P) Q)
% 179.07/179.40 Found x010:=(x01 x000):((iff P) Q)
% 179.07/179.40 Found x010 as proof of ((iff P) Q)
% 179.07/179.40 Found x010:=(x01 x000):((iff P) Q)
% 179.07/179.40 Found x010 as proof of ((iff P) Q)
% 179.07/179.40 Found x010:=(x01 x000):((iff P) Q)
% 179.07/179.40 Found x010 as proof of ((iff P) Q)
% 179.07/179.40 Found x000:=(x00 x010):R
% 179.07/179.40 Found (x00 x010) as proof of R
% 179.07/179.40 Found (x00 x010) as proof of R
% 179.07/179.40 Found x021:Q
% 179.07/179.40 Instantiate: x:=Q:Prop
% 179.07/179.40 Found x021 as proof of x
% 179.07/179.40 Found x010:=(x01 x000):((iff P) Q)
% 179.07/179.40 Found x010 as proof of ((iff P) Q)
% 179.07/179.40 Found x010:=(x01 x000):((iff P) Q)
% 179.07/179.40 Found x010 as proof of ((iff P) Q)
% 179.07/179.40 Found x010:=(x01 x000):((iff P) Q)
% 179.07/179.40 Found x010 as proof of ((iff P) Q)
% 179.07/179.40 Found x020:Q
% 179.07/179.40 Found x020 as proof of Q
% 179.07/179.40 Found (x01 x020) as proof of ((iff P) Q)
% 179.07/179.40 Found (x01 x020) as proof of ((iff P) Q)
% 179.07/179.40 Found (x01 x020) as proof of ((iff P) Q)
% 179.07/179.40 Found x010:=(x01 x000):((iff P) Q)
% 179.07/179.40 Found x010 as proof of ((iff P) Q)
% 179.07/179.40 Found x030:=(x03 x040):x
% 179.07/179.40 Found (x03 x040) as proof of P
% 179.07/179.40 Found (x03 x040) as proof of P
% 179.07/179.40 Found (x03 x040) as proof of P
% 179.07/179.40 Found x030:x
% 179.07/179.40 Found x030 as proof of Q
% 179.07/179.40 Found x010:=(x01 x000):((iff P) Q)
% 179.07/179.40 Found x010 as proof of ((iff P) Q)
% 179.07/179.40 Found x010:=(x01 x000):((iff P) Q)
% 179.07/179.40 Found x010 as proof of ((iff P) Q)
% 179.07/179.40 Found x010:=(x01 x000):((iff P) Q)
% 179.07/179.40 Found x010 as proof of ((iff P) Q)
% 180.46/180.81 Found x030:x
% 180.46/180.81 Found x030 as proof of Q
% 180.46/180.81 Found x030:x
% 180.46/180.81 Found x030 as proof of Q
% 180.46/180.81 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 180.46/180.81 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 180.46/180.81 Found eq_substitution as proof of x
% 180.46/180.81 Found (x06 eq_substitution) as proof of Q
% 180.46/180.81 Found (x06 eq_substitution) as proof of Q
% 180.46/180.81 Found (x03 (x06 eq_substitution)) as proof of P
% 180.46/180.81 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 180.46/180.81 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 180.46/180.81 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 180.46/180.81 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 180.46/180.81 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 180.46/180.81 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 180.46/180.81 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 180.46/180.81 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 180.46/180.81 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 180.46/180.81 Found (iff_refl Q) as proof of ((iff Q) x)
% 180.46/180.81 Found (iff_refl Q) as proof of ((iff Q) x)
% 180.46/180.81 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 180.46/180.81 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 180.46/180.81 Found x010:=(x01 x003):((iff P) Q)
% 180.46/180.81 Found x010 as proof of ((iff P) Q)
% 180.46/180.81 Found x010:=(x01 x000):((iff P) Q)
% 180.46/180.81 Found x010 as proof of ((iff P) Q)
% 180.46/180.81 Found x010:=(x01 x001):((iff P) Q)
% 180.46/180.81 Found (x01 x001) as proof of ((iff P) Q)
% 180.46/180.81 Found (x01 x001) as proof of ((iff P) Q)
% 180.46/180.81 Found x010:=(x01 x020):x
% 180.46/180.81 Found (x01 x020) as proof of P
% 180.46/180.81 Found (x01 x020) as proof of P
% 180.46/180.81 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 180.46/180.81 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 180.46/180.81 Found x010:=(x01 x021):x
% 180.46/180.81 Found (x01 x021) as proof of P
% 180.46/180.81 Found (x01 x021) as proof of P
% 180.46/180.81 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 180.46/180.81 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 180.46/180.81 Found x030:x
% 180.46/180.81 Found x030 as proof of Q
% 180.46/180.81 Found x030:=(x03 x040):x
% 180.46/180.81 Found (x03 x040) as proof of P
% 180.46/180.81 Found (x03 x040) as proof of P
% 180.46/180.81 Found (x03 x040) as proof of P
% 180.46/180.81 Found x010:=(x01 x000):((iff P) Q)
% 180.46/180.81 Found x010 as proof of ((iff P) Q)
% 180.46/180.81 Found x010:=(x01 x000):((iff P) Q)
% 180.46/180.81 Found x010 as proof of ((iff P) Q)
% 180.46/180.81 Found x030:P
% 180.46/180.81 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 180.46/180.81 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 180.46/180.81 Found x000:=(x00 x010):R
% 180.46/180.81 Found (x00 x010) as proof of R
% 180.46/180.81 Found (x00 x010) as proof of R
% 180.46/180.81 Found x000:=(x00 x011):R
% 180.46/180.81 Found (x00 x011) as proof of R
% 180.46/180.81 Found (x00 x011) as proof of R
% 180.46/180.81 Found x030:P
% 180.46/180.81 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 180.46/180.81 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 180.46/180.81 Found x20:=(x2 x10):((iff P) Q)
% 180.46/180.81 Found x20 as proof of ((iff P) Q)
% 180.46/180.81 Found x010:=(x01 x001):((iff P) Q)
% 180.46/180.81 Found (x01 x001) as proof of ((iff P) Q)
% 180.46/180.81 Found (x01 x001) as proof of ((iff P) Q)
% 180.46/180.81 Found x010:=(x01 x000):((iff P) Q)
% 180.46/180.81 Found x010 as proof of ((iff P) Q)
% 180.46/180.81 Found x030:=(x03 x040):x
% 180.46/180.81 Found (x03 x040) as proof of P
% 180.46/180.81 Found (x03 x040) as proof of P
% 180.46/180.81 Found (x03 x040) as proof of P
% 180.46/180.81 Found x010:=(x01 x001):((iff P) Q)
% 180.46/180.81 Found (x01 x001) as proof of ((iff P) Q)
% 180.46/180.81 Found (x01 x001) as proof of ((iff P) Q)
% 180.46/180.81 Found x010:=(x01 x001):((iff P) Q)
% 180.46/180.81 Found x010 as proof of ((iff P) Q)
% 180.46/180.81 Found x030:P
% 180.46/180.81 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 180.46/180.81 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 180.46/180.81 Found x010:=(x01 x000):((iff P) Q)
% 181.94/182.25 Found (x01 x000) as proof of ((iff P) Q)
% 181.94/182.25 Found (x01 x000) as proof of ((iff P) Q)
% 181.94/182.25 Found x030:=(x03 x040):x
% 181.94/182.25 Instantiate: x:=R:Prop
% 181.94/182.25 Found (x03 x040) as proof of R
% 181.94/182.25 Found (x03 x040) as proof of R
% 181.94/182.25 Found x000:=(x00 x011):R
% 181.94/182.25 Found (x00 x011) as proof of R
% 181.94/182.25 Found (x00 x011) as proof of R
% 181.94/182.25 Found x20:=(x2 x10):((iff P) Q)
% 181.94/182.25 Found x20 as proof of ((iff P) Q)
% 181.94/182.25 Found x010:=(x01 x000):((iff P) Q)
% 181.94/182.25 Found x010 as proof of ((iff P) Q)
% 181.94/182.25 Found x010:=(x01 x001):((iff P) Q)
% 181.94/182.25 Found (x01 x001) as proof of ((iff P) Q)
% 181.94/182.25 Found (x01 x001) as proof of ((iff P) Q)
% 181.94/182.25 Found x030:x
% 181.94/182.25 Instantiate: x:=Q:Prop
% 181.94/182.25 Found x030 as proof of Q
% 181.94/182.25 Found x030:x
% 181.94/182.25 Found x030 as proof of Q
% 181.94/182.25 Found x20:=(x2 x10):((iff P) Q)
% 181.94/182.25 Found x20 as proof of ((iff P) Q)
% 181.94/182.25 Found x000:=(x00 x011):R
% 181.94/182.25 Found (x00 x011) as proof of R
% 181.94/182.25 Found (x00 x011) as proof of R
% 181.94/182.25 Found x20:=(x2 x10):((iff P) Q)
% 181.94/182.25 Found x20 as proof of ((iff P) Q)
% 181.94/182.25 Found x030:x
% 181.94/182.25 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 181.94/182.25 Found x030 as proof of ((iff P) Q)
% 181.94/182.25 Found x030:=(x03 x020):P
% 181.94/182.25 Found (x03 x020) as proof of P
% 181.94/182.25 Found (x03 x020) as proof of P
% 181.94/182.25 Found x020:=(x02 x030):Q
% 181.94/182.25 Found (x02 x030) as proof of Q
% 181.94/182.25 Found (x02 x030) as proof of Q
% 181.94/182.25 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 181.94/182.25 Found (iff_refl Q) as proof of ((iff Q) x)
% 181.94/182.25 Found (iff_refl Q) as proof of ((iff Q) x)
% 181.94/182.25 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 181.94/182.25 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 181.94/182.25 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 181.94/182.25 Found (iff_refl Q) as proof of ((iff Q) x)
% 181.94/182.25 Found (iff_refl Q) as proof of ((iff Q) x)
% 181.94/182.25 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 181.94/182.25 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 181.94/182.25 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 181.94/182.25 Found (iff_refl Q) as proof of ((iff Q) x)
% 181.94/182.25 Found (iff_refl Q) as proof of ((iff Q) x)
% 181.94/182.25 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 181.94/182.25 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 181.94/182.25 Found x010:=(x01 x001):((iff P) Q)
% 181.94/182.25 Found (x01 x001) as proof of ((iff P) Q)
% 181.94/182.25 Found (x01 x001) as proof of ((iff P) Q)
% 181.94/182.25 Found x010:=(x01 x001):((iff P) Q)
% 181.94/182.25 Found (x01 x001) as proof of ((iff P) Q)
% 181.94/182.25 Found (x01 x001) as proof of ((iff P) Q)
% 181.94/182.25 Found x010:=(x01 x000):((iff P) Q)
% 181.94/182.25 Found x010 as proof of ((iff P) Q)
% 181.94/182.25 Found x010:=(x01 x000):((iff P) Q)
% 181.94/182.25 Found (x01 x000) as proof of ((iff P) Q)
% 181.94/182.25 Found (x01 x000) as proof of ((iff P) Q)
% 181.94/182.25 Found x000:=(x00 x011):R
% 181.94/182.25 Found (x00 x011) as proof of R
% 181.94/182.25 Found (x00 x011) as proof of R
% 181.94/182.25 Found x030:x
% 181.94/182.25 Found x030 as proof of Q
% 181.94/182.25 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 181.94/182.25 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 181.94/182.25 Found eq_substitution as proof of x
% 181.94/182.25 Found (x06 eq_substitution) as proof of Q
% 181.94/182.25 Found (x06 eq_substitution) as proof of Q
% 181.94/182.25 Found (x03 (x06 eq_substitution)) as proof of P
% 181.94/182.25 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 181.94/182.25 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 181.94/182.25 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 181.94/182.25 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 181.94/182.25 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 181.94/182.25 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 181.94/182.25 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 181.94/182.25 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 181.94/182.25 Found x010:=(x01 x000):((iff P) Q)
% 181.94/182.25 Found x010 as proof of ((iff P) Q)
% 181.94/182.25 Found x030:x
% 181.94/182.25 Found x030 as proof of Q
% 182.46/182.79 Found x010:=(x01 x000):((iff P) Q)
% 182.46/182.79 Found x010 as proof of ((iff P) Q)
% 182.46/182.79 Found x030:=(x03 x040):x
% 182.46/182.79 Found (x03 x040) as proof of P
% 182.46/182.79 Found (x03 x040) as proof of P
% 182.46/182.79 Found (x03 x040) as proof of P
% 182.46/182.79 Found x000:=(x00 x011):R
% 182.46/182.79 Found (x00 x011) as proof of R
% 182.46/182.79 Found (x00 x011) as proof of R
% 182.46/182.79 Found x030:x
% 182.46/182.79 Found x030 as proof of Q
% 182.46/182.79 Found x030:x
% 182.46/182.79 Found x030 as proof of Q
% 182.46/182.79 Found x030:x
% 182.46/182.79 Found x030 as proof of Q
% 182.46/182.79 Found x010:=(x01 x000):((iff P) Q)
% 182.46/182.79 Found x010 as proof of ((iff P) Q)
% 182.46/182.79 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 182.46/182.79 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 182.46/182.79 Found eq_substitution as proof of x
% 182.46/182.79 Found (x06 eq_substitution) as proof of Q
% 182.46/182.79 Found (x06 eq_substitution) as proof of Q
% 182.46/182.79 Found (x03 (x06 eq_substitution)) as proof of P
% 182.46/182.79 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 182.46/182.79 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 182.46/182.79 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 182.46/182.79 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 182.46/182.79 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 182.46/182.79 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 182.46/182.79 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 182.46/182.79 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 182.46/182.79 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((Q->P)->(((iff Q) x)->P))
% 182.46/182.79 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((P->Q)->((Q->P)->(((iff Q) x)->P)))
% 182.46/182.79 Found (and_rect10 (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 182.46/182.79 Found ((and_rect1 (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 182.46/182.79 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 182.46/182.79 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 182.46/182.79 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 183.44/183.81 Found x010:=(x01 x000):((iff P) Q)
% 183.44/183.81 Found x010 as proof of ((iff P) Q)
% 183.44/183.81 Found x030:P
% 183.44/183.81 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 183.44/183.81 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 183.44/183.81 Found x010:=(x01 x001):((iff P) Q)
% 183.44/183.81 Found (x01 x001) as proof of ((iff P) Q)
% 183.44/183.81 Found (x01 x001) as proof of ((iff P) Q)
% 183.44/183.81 Found x030:=(x03 x040):x
% 183.44/183.81 Instantiate: x:=P:Prop
% 183.44/183.81 Found (x03 x040) as proof of P
% 183.44/183.81 Found (x03 x040) as proof of P
% 183.44/183.81 Found x010:=(x01 x020):x
% 183.44/183.81 Instantiate: x:=P:Prop
% 183.44/183.81 Found (x01 x020) as proof of P
% 183.44/183.81 Found (x01 x020) as proof of P
% 183.44/183.81 Found x010:=(x01 x001):((iff P) Q)
% 183.44/183.81 Found (x01 x001) as proof of ((iff P) Q)
% 183.44/183.81 Found (x01 x001) as proof of ((iff P) Q)
% 183.44/183.81 Found x030:x
% 183.44/183.81 Found x030 as proof of Q
% 183.44/183.81 Found x000:=(x00 x011):R
% 183.44/183.81 Found (x00 x011) as proof of R
% 183.44/183.81 Found (x00 x011) as proof of R
% 183.44/183.81 Found x010:=(x01 x021):x
% 183.44/183.81 Instantiate: x:=((((iff P) Q)->R)->((R->((iff P) Q))->P)):Prop
% 183.44/183.81 Found (x01 x021) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 183.44/183.81 Found (x01 x021) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 183.44/183.81 Found (and_rect10 (x01 x021)) as proof of P
% 183.44/183.81 Found ((and_rect1 P) (x01 x021)) as proof of P
% 183.44/183.81 Found (((fun (P0:Type) (x1:((((iff P) Q)->R)->((R->((iff P) Q))->P0)))=> (((((and_rect (((iff P) Q)->R)) (R->((iff P) Q))) P0) x1) x0)) P) (x01 x021)) as proof of P
% 183.44/183.81 Found (((fun (P0:Type) (x1:((((iff P) Q)->R)->((R->((iff P) Q))->P0)))=> (((((and_rect (((iff P) Q)->R)) (R->((iff P) Q))) P0) x1) x0)) P) (x01 x021)) as proof of P
% 183.44/183.81 Found x010:=(x01 x001):((iff P) Q)
% 183.44/183.81 Found x010 as proof of ((iff P) Q)
% 183.44/183.81 Found x010:x
% 183.44/183.81 Instantiate: x:=P:Prop
% 183.44/183.81 Found x010 as proof of P
% 183.44/183.81 Found x010:=(x01 x000):((iff P) Q)
% 183.44/183.81 Found x010 as proof of ((iff P) Q)
% 183.44/183.81 Found x010:=(x01 x000):((iff P) Q)
% 183.44/183.81 Found (x01 x000) as proof of ((iff P) Q)
% 183.44/183.81 Found (x01 x000) as proof of ((iff P) Q)
% 183.44/183.81 Found x010:=(x01 x020):x
% 183.44/183.81 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 183.44/183.81 Found (x01 x020) as proof of ((iff P) Q)
% 183.44/183.81 Found (x01 x020) as proof of ((iff P) Q)
% 183.44/183.81 Found (x1 (x01 x020)) as proof of R
% 183.44/183.81 Found (x1 (x01 x020)) as proof of R
% 183.44/183.81 Found x21:((iff P) Q)
% 183.44/183.81 Instantiate: x:=((iff P) Q):Prop
% 183.44/183.81 Found x21 as proof of x
% 183.44/183.81 Found x010:=(x01 x000):((iff P) Q)
% 183.44/183.81 Found (x01 x000) as proof of ((iff P) Q)
% 183.44/183.81 Found (x01 x000) as proof of ((iff P) Q)
% 183.44/183.81 Found x030:=(x03 x020):P
% 183.44/183.81 Found (x03 x020) as proof of P
% 183.44/183.81 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 183.44/183.81 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 183.44/183.81 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (x03 x020)) as proof of ((Q->P)->(((iff Q) x)->P))
% 183.44/183.81 Found x20:=(x2 x10):((iff P) Q)
% 183.44/183.81 Found (x2 x10) as proof of ((iff P) Q)
% 183.44/183.81 Found (x2 x10) as proof of ((iff P) Q)
% 183.44/183.81 Found x010:=(x01 x020):x
% 183.44/183.81 Instantiate: x:=R:Prop
% 183.44/183.81 Found (x01 x020) as proof of R
% 183.44/183.81 Found (x01 x020) as proof of R
% 183.44/183.81 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 183.44/183.81 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 183.44/183.81 Found x010:x
% 183.44/183.81 Instantiate: x:=P:Prop
% 183.44/183.81 Found x010 as proof of P
% 183.44/183.81 Found x000:=(x00 x011):R
% 183.44/183.81 Found (x00 x011) as proof of R
% 183.44/183.81 Found (x00 x011) as proof of R
% 183.44/183.81 Found x010:=(x01 x000):((iff P) Q)
% 183.44/183.81 Found (x01 x000) as proof of ((iff P) Q)
% 183.44/183.81 Found (x01 x000) as proof of ((iff P) Q)
% 183.44/183.81 Found x030:=(x03 x040):x
% 183.44/183.81 Instantiate: x:=P:Prop
% 183.44/183.81 Found (x03 x040) as proof of P
% 183.44/183.81 Found (x03 x040) as proof of P
% 183.44/183.81 Found x010:=(x01 x001):((iff P) Q)
% 183.44/183.81 Found (x01 x001) as proof of ((iff P) Q)
% 183.44/183.81 Found (x01 x001) as proof of ((iff P) Q)
% 183.44/183.81 Found x11:R
% 183.44/183.81 Instantiate: x:=R:Prop
% 183.44/183.81 Found x11 as proof of x
% 183.44/183.81 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 183.44/183.81 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 183.44/183.81 Found iff_sym as proof of x
% 183.44/183.81 Found x000:=(x00 x011):R
% 183.44/183.81 Found (x00 x011) as proof of R
% 183.44/183.81 Found (x00 x011) as proof of R
% 183.44/183.81 Found x000:=(x00 x011):R
% 183.44/183.81 Found (x00 x011) as proof of R
% 183.44/183.81 Found (x00 x011) as proof of R
% 183.44/183.81 Found x000:=(x00 x010):R
% 183.44/183.81 Found (x00 x010) as proof of R
% 183.44/183.81 Found (x00 x010) as proof of R
% 183.44/183.81 Found x010:=(x01 x020):x
% 183.44/183.81 Instantiate: x:=R:Prop
% 183.44/183.81 Found (x01 x020) as proof of R
% 183.44/183.81 Found (x01 x020) as proof of R
% 183.44/183.81 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 184.16/184.54 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 184.16/184.54 Found x21:((iff P) Q)
% 184.16/184.54 Instantiate: x:=((iff P) Q):Prop
% 184.16/184.54 Found x21 as proof of x
% 184.16/184.54 Found x010:=(x01 x000):((iff P) Q)
% 184.16/184.54 Found x010 as proof of ((iff P) Q)
% 184.16/184.54 Found x010:x
% 184.16/184.54 Instantiate: x:=P:Prop
% 184.16/184.54 Found x010 as proof of P
% 184.16/184.54 Found x030:P
% 184.16/184.54 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 184.16/184.54 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 184.16/184.54 Found x000:=(x00 x011):R
% 184.16/184.54 Found (x00 x011) as proof of R
% 184.16/184.54 Found (x00 x011) as proof of R
% 184.16/184.54 Found x030:=(x03 x040):x
% 184.16/184.54 Found (x03 x040) as proof of P
% 184.16/184.54 Found (x03 x040) as proof of P
% 184.16/184.54 Found (x03 x040) as proof of P
% 184.16/184.54 Found x010:=(x01 x020):x
% 184.16/184.54 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 184.16/184.54 Found (x01 x020) as proof of ((iff P) Q)
% 184.16/184.54 Found (x01 x020) as proof of ((iff P) Q)
% 184.16/184.54 Found (x1 (x01 x020)) as proof of R
% 184.16/184.54 Found (x1 (x01 x020)) as proof of R
% 184.16/184.54 Found x010:=(x01 x001):((iff P) Q)
% 184.16/184.54 Found x010 as proof of ((iff P) Q)
% 184.16/184.54 Found x010:=(x01 x020):x
% 184.16/184.54 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 184.16/184.54 Found (x01 x020) as proof of ((iff P) Q)
% 184.16/184.54 Found (x01 x020) as proof of ((iff P) Q)
% 184.16/184.54 Found (x1 (x01 x020)) as proof of R
% 184.16/184.54 Found (x1 (x01 x020)) as proof of R
% 184.16/184.54 Found x010:=(x01 x001):((iff P) Q)
% 184.16/184.54 Found x010 as proof of ((iff P) Q)
% 184.16/184.54 Found x010:x
% 184.16/184.54 Instantiate: x:=P:Prop
% 184.16/184.54 Found x010 as proof of P
% 184.16/184.54 Found x010:=(x01 x001):((iff P) Q)
% 184.16/184.54 Found x010 as proof of ((iff P) Q)
% 184.16/184.54 Found x020:Q
% 184.16/184.54 Found x020 as proof of Q
% 184.16/184.54 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 184.16/184.54 Found (x01 x020) as proof of ((R->((iff P) Q))->P)
% 184.16/184.54 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 184.16/184.54 Found (fun (x1:(((iff P) Q)->R))=> (x01 x020)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 184.16/184.54 Found x010:=(x01 x000):((iff P) Q)
% 184.16/184.54 Found (x01 x000) as proof of ((iff P) Q)
% 184.16/184.54 Found (x01 x000) as proof of ((iff P) Q)
% 184.16/184.54 Found x030:=(x03 x040):x
% 184.16/184.54 Instantiate: x:=P:Prop
% 184.16/184.54 Found (x03 x040) as proof of P
% 184.16/184.54 Found (x03 x040) as proof of P
% 184.16/184.54 Found x010:=(x01 x000):((iff P) Q)
% 184.16/184.54 Found x010 as proof of ((iff P) Q)
% 184.16/184.54 Found x11:R
% 184.16/184.54 Instantiate: x:=R:Prop
% 184.16/184.54 Found x11 as proof of x
% 184.16/184.54 Found x010:=(x01 x001):((iff P) Q)
% 184.16/184.54 Found (x01 x001) as proof of ((iff P) Q)
% 184.16/184.54 Found (x01 x001) as proof of ((iff P) Q)
% 184.16/184.54 Found x010:=(x01 x020):x
% 184.16/184.54 Instantiate: x:=R:Prop
% 184.16/184.54 Found (x01 x020) as proof of R
% 184.16/184.54 Found (x01 x020) as proof of R
% 184.16/184.54 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 184.16/184.54 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 184.16/184.54 Found x010:=(x01 x000):((iff P) Q)
% 184.16/184.54 Found (x01 x000) as proof of ((iff P) Q)
% 184.16/184.54 Found (x01 x000) as proof of ((iff P) Q)
% 184.16/184.54 Found x010:=(x01 x001):((iff P) Q)
% 184.16/184.54 Found x010 as proof of ((iff P) Q)
% 184.16/184.54 Found x000:=(x00 x010):R
% 184.16/184.54 Found (x00 x010) as proof of R
% 184.16/184.54 Found (x00 x010) as proof of R
% 184.16/184.54 Found x010:=(x01 x000):((iff P) Q)
% 184.16/184.54 Found x010 as proof of ((iff P) Q)
% 184.16/184.54 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 184.16/184.54 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 184.16/184.54 Found iff_sym as proof of x
% 184.16/184.54 Found x010:=(x01 x000):((iff P) Q)
% 184.16/184.54 Found x010 as proof of ((iff P) Q)
% 184.16/184.54 Found x02:((iff Q) x)
% 184.16/184.54 Instantiate: x:=P:Prop
% 184.16/184.54 Found x02 as proof of ((iff Q) P)
% 184.16/184.54 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 184.16/184.54 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 184.16/184.54 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 184.16/184.54 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 184.16/184.54 Found x010:=(x01 x000):((iff P) Q)
% 184.16/184.54 Found x010 as proof of ((iff P) Q)
% 184.16/184.54 Found x010:=(x01 x000):((iff P) Q)
% 184.16/184.54 Found x010 as proof of ((iff P) Q)
% 184.16/184.54 Found x020:=(x02 x030):Q
% 184.16/184.54 Found (x02 x030) as proof of Q
% 184.16/184.54 Found (x02 x030) as proof of Q
% 184.16/184.54 Found x030:=(x03 x020):P
% 184.16/184.54 Found (x03 x020) as proof of P
% 184.16/184.54 Found (x03 x020) as proof of P
% 184.16/184.54 Found x000:=(x00 x011):R
% 184.16/184.54 Found (x00 x011) as proof of R
% 184.16/184.54 Found (x00 x011) as proof of R
% 184.16/184.54 Found x000:=(x00 x011):R
% 184.16/184.54 Found (x00 x011) as proof of R
% 184.16/184.54 Found (x00 x011) as proof of R
% 184.16/184.54 Found x030:=(x03 x020):P
% 184.16/184.54 Found (x03 x020) as proof of P
% 184.16/184.54 Found (x03 x020) as proof of P
% 184.16/184.54 Found x010:=(x01 x002):((iff P) Q)
% 184.16/184.54 Found x010 as proof of ((iff P) Q)
% 184.16/184.54 Found x010:=(x01 x020):x
% 184.16/184.54 Instantiate: x:=R:Prop
% 184.16/184.54 Found (x01 x020) as proof of R
% 184.16/184.54 Found (x01 x020) as proof of R
% 184.16/184.54 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 185.84/186.15 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 185.84/186.15 Found x010:=(x01 x001):((iff P) Q)
% 185.84/186.15 Found x010 as proof of ((iff P) Q)
% 185.84/186.15 Found x20:=(x2 x10):((iff P) Q)
% 185.84/186.15 Found x20 as proof of ((iff P) Q)
% 185.84/186.15 Found x000:=(x00 x010):R
% 185.84/186.15 Found (x00 x010) as proof of R
% 185.84/186.15 Found (x00 x010) as proof of R
% 185.84/186.15 Found x010:=(x01 x020):x
% 185.84/186.15 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 185.84/186.15 Found (x01 x020) as proof of ((iff P) Q)
% 185.84/186.15 Found (x01 x020) as proof of ((iff P) Q)
% 185.84/186.15 Found (x1 (x01 x020)) as proof of R
% 185.84/186.15 Found (x1 (x01 x020)) as proof of R
% 185.84/186.15 Found x030:x
% 185.84/186.15 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 185.84/186.15 Found x030 as proof of ((iff P) Q)
% 185.84/186.15 Found x030:x
% 185.84/186.15 Instantiate: x:=Q:Prop
% 185.84/186.15 Found x030 as proof of Q
% 185.84/186.15 Found x040:Q
% 185.84/186.15 Instantiate: x:=Q:Prop
% 185.84/186.15 Found x040 as proof of x
% 185.84/186.15 Found x010:=(x01 x000):((iff P) Q)
% 185.84/186.15 Found x010 as proof of ((iff P) Q)
% 185.84/186.15 Found x010:=(x01 x000):((iff P) Q)
% 185.84/186.15 Found x010 as proof of ((iff P) Q)
% 185.84/186.15 Found x030:=(x03 x020):P
% 185.84/186.15 Found (x03 x020) as proof of P
% 185.84/186.15 Found (x03 x020) as proof of P
% 185.84/186.15 Found x020:=(x02 x10):Q
% 185.84/186.15 Found (x02 x10) as proof of Q
% 185.84/186.15 Found (x02 x10) as proof of Q
% 185.84/186.15 Found x010:=(x01 x001):((iff P) Q)
% 185.84/186.15 Found (x01 x001) as proof of ((iff P) Q)
% 185.84/186.15 Found (x01 x001) as proof of ((iff P) Q)
% 185.84/186.15 Found x010:=(x01 x000):((iff P) Q)
% 185.84/186.15 Found x010 as proof of ((iff P) Q)
% 185.84/186.15 Found x010:=(x01 x000):((iff P) Q)
% 185.84/186.15 Found x010 as proof of ((iff P) Q)
% 185.84/186.15 Found x010:=(x01 x000):((iff P) Q)
% 185.84/186.15 Found x010 as proof of ((iff P) Q)
% 185.84/186.15 Found x010:=(x01 x000):((iff P) Q)
% 185.84/186.15 Found x010 as proof of ((iff P) Q)
% 185.84/186.15 Found x010:=(x01 x000):((iff P) Q)
% 185.84/186.15 Found x010 as proof of ((iff P) Q)
% 185.84/186.15 Found x010:=(x01 x002):((iff P) Q)
% 185.84/186.15 Found x010 as proof of ((iff P) Q)
% 185.84/186.15 Found x040:Q
% 185.84/186.15 Instantiate: x:=Q:Prop
% 185.84/186.15 Found x040 as proof of x
% 185.84/186.15 Found x040:Q
% 185.84/186.15 Instantiate: x:=Q:Prop
% 185.84/186.15 Found x040 as proof of x
% 185.84/186.15 Found x040:Q
% 185.84/186.15 Instantiate: x:=Q:Prop
% 185.84/186.15 Found x040 as proof of x
% 185.84/186.15 Found x010:=(x01 x000):((iff P) Q)
% 185.84/186.15 Found (x01 x000) as proof of ((iff P) Q)
% 185.84/186.15 Found (x01 x000) as proof of ((iff P) Q)
% 185.84/186.15 Found x000:=(x00 x011):R
% 185.84/186.15 Found (x00 x011) as proof of R
% 185.84/186.15 Found (x00 x011) as proof of R
% 185.84/186.15 Found x030:=(x03 x040):x
% 185.84/186.15 Instantiate: x:=P:Prop
% 185.84/186.15 Found (x03 x040) as proof of P
% 185.84/186.15 Found (x03 x040) as proof of P
% 185.84/186.15 Found x000:=(x00 x011):R
% 185.84/186.15 Found (x00 x011) as proof of R
% 185.84/186.15 Found (x00 x011) as proof of R
% 185.84/186.15 Found x10:=(x1 x20):R
% 185.84/186.15 Found (x1 x20) as proof of R
% 185.84/186.15 Found (x1 x20) as proof of R
% 185.84/186.15 Found x020:=(x02 x10):Q
% 185.84/186.15 Found (x02 x10) as proof of Q
% 185.84/186.15 Found (x02 x10) as proof of Q
% 185.84/186.15 Found x040:Q
% 185.84/186.15 Instantiate: x:=Q:Prop
% 185.84/186.15 Found x040 as proof of x
% 185.84/186.15 Found x010:((iff P) Q)
% 185.84/186.15 Instantiate: x:=((iff P) Q):Prop
% 185.84/186.15 Found x010 as proof of x
% 185.84/186.15 Found x040:Q
% 185.84/186.15 Instantiate: x:=Q:Prop
% 185.84/186.15 Found x040 as proof of x
% 185.84/186.15 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 185.84/186.15 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 185.84/186.15 Found eq_substitution as proof of x
% 185.84/186.15 Found (x06 eq_substitution) as proof of Q
% 185.84/186.15 Found (x06 eq_substitution) as proof of Q
% 185.84/186.15 Found (x03 (x06 eq_substitution)) as proof of P
% 185.84/186.15 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 185.84/186.15 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 185.84/186.15 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 185.84/186.15 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 185.84/186.15 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 185.84/186.15 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 185.84/186.15 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 185.84/186.15 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 186.37/186.72 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((Q->P)->(((iff Q) x)->P))
% 186.37/186.72 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((P->Q)->((Q->P)->(((iff Q) x)->P)))
% 186.37/186.72 Found (and_rect10 (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 186.37/186.72 Found ((and_rect1 (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 186.37/186.72 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 186.37/186.72 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 186.37/186.72 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 186.37/186.72 Found x010:=(x01 x000):((iff P) Q)
% 186.37/186.72 Found x010 as proof of ((iff P) Q)
% 186.37/186.72 Found x030:x
% 186.37/186.72 Instantiate: x:=P:Prop
% 186.37/186.72 Found x030 as proof of P
% 186.37/186.72 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 186.37/186.72 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 186.37/186.72 Found eq_sym as proof of x
% 186.37/186.72 Found x030:=(x03 x040):x
% 186.37/186.72 Instantiate: x:=P:Prop
% 186.37/186.72 Found (x03 x040) as proof of P
% 186.37/186.72 Found (x03 x040) as proof of P
% 186.37/186.72 Found x010:=(x01 x000):((iff P) Q)
% 186.37/186.72 Found (x01 x000) as proof of ((iff P) Q)
% 186.37/186.72 Found (x01 x000) as proof of ((iff P) Q)
% 186.37/186.72 Found x041:Q
% 186.37/186.72 Instantiate: x:=Q:Prop
% 186.37/186.72 Found x041 as proof of x
% 186.37/186.72 Found x000:R
% 186.37/186.72 Instantiate: x:=R:Prop
% 186.37/186.72 Found x000 as proof of x
% 186.37/186.72 Found x010:=(x01 x000):((iff P) Q)
% 186.37/186.72 Found x010 as proof of ((iff P) Q)
% 186.37/186.72 Found x10:=(x1 x20):R
% 186.37/186.72 Found (x1 x20) as proof of R
% 186.37/186.72 Found (x1 x20) as proof of R
% 186.37/186.72 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 186.37/186.72 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 186.37/186.72 Found eq_substitution as proof of x
% 186.37/186.72 Found (x06 eq_substitution) as proof of Q
% 186.37/186.72 Found (x06 eq_substitution) as proof of Q
% 186.37/186.72 Found (x03 (x06 eq_substitution)) as proof of P
% 186.37/186.72 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 186.37/186.72 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 186.37/186.72 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 186.37/186.72 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 186.37/186.72 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 186.37/186.72 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 187.35/187.68 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 187.35/187.68 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 187.35/187.68 Found x010:=(x01 x000):((iff P) Q)
% 187.35/187.68 Found x010 as proof of ((iff P) Q)
% 187.35/187.68 Found x010:=(x01 x000):((iff P) Q)
% 187.35/187.68 Found x010 as proof of ((iff P) Q)
% 187.35/187.68 Found x010:=(x01 x001):((iff P) Q)
% 187.35/187.68 Found (x01 x001) as proof of ((iff P) Q)
% 187.35/187.68 Found (x01 x001) as proof of ((iff P) Q)
% 187.35/187.68 Found x030:=(x03 x040):x
% 187.35/187.68 Instantiate: x:=P:Prop
% 187.35/187.68 Found (x03 x040) as proof of P
% 187.35/187.68 Found (x03 x040) as proof of P
% 187.35/187.68 Found x010:=(x01 x000):((iff P) Q)
% 187.35/187.68 Found x010 as proof of ((iff P) Q)
% 187.35/187.68 Found x000:=(x00 x011):R
% 187.35/187.68 Found (x00 x011) as proof of R
% 187.35/187.68 Found (x00 x011) as proof of R
% 187.35/187.68 Found x20:=(x2 x10):((iff P) Q)
% 187.35/187.68 Found (x2 x10) as proof of ((iff P) Q)
% 187.35/187.68 Found (x2 x10) as proof of ((iff P) Q)
% 187.35/187.68 Found x010:=(x01 x001):((iff P) Q)
% 187.35/187.68 Found (x01 x001) as proof of ((iff P) Q)
% 187.35/187.68 Found (x01 x001) as proof of ((iff P) Q)
% 187.35/187.68 Found x010:=(x01 x000):((iff P) Q)
% 187.35/187.68 Found x010 as proof of ((iff P) Q)
% 187.35/187.68 Found x010:=(x01 x001):((iff P) Q)
% 187.35/187.68 Found x010 as proof of ((iff P) Q)
% 187.35/187.68 Found x030:=(x03 x021):P
% 187.35/187.68 Found (x03 x021) as proof of P
% 187.35/187.68 Found (x03 x021) as proof of P
% 187.35/187.68 Found x040:Q
% 187.35/187.68 Found x040 as proof of Q
% 187.35/187.68 Found (x03 x040) as proof of R
% 187.35/187.68 Found (x03 x040) as proof of R
% 187.35/187.68 Found (x03 x040) as proof of R
% 187.35/187.68 Found x20:=(x2 x11):((iff P) Q)
% 187.35/187.68 Found (x2 x11) as proof of ((iff P) Q)
% 187.35/187.68 Found (x2 x11) as proof of ((iff P) Q)
% 187.35/187.68 Found x000:=(x00 x011):R
% 187.35/187.68 Found (x00 x011) as proof of R
% 187.35/187.68 Found (x00 x011) as proof of R
% 187.35/187.68 Found x010:=(x01 x001):((iff P) Q)
% 187.35/187.68 Found (x01 x001) as proof of ((iff P) Q)
% 187.35/187.68 Found (x01 x001) as proof of ((iff P) Q)
% 187.35/187.68 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 187.35/187.68 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 187.35/187.68 Found iff_sym as proof of x
% 187.35/187.68 Found x030:=(x03 x020):P
% 187.35/187.68 Found (x03 x020) as proof of P
% 187.35/187.68 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 187.35/187.68 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 187.35/187.68 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (x03 x020)) as proof of ((Q->P)->(((iff Q) x)->P))
% 187.35/187.68 Found x010:=(x01 x000):((iff P) Q)
% 187.35/187.68 Found x010 as proof of ((iff P) Q)
% 187.35/187.68 Found x02:((iff Q) x)
% 187.35/187.68 Instantiate: x:=P:Prop
% 187.35/187.68 Found x02 as proof of ((iff Q) P)
% 187.35/187.68 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 187.35/187.68 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 187.35/187.68 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 187.35/187.68 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 187.35/187.68 Found x030:=(x03 x040):x
% 187.35/187.68 Instantiate: x:=P:Prop
% 187.35/187.68 Found (x03 x040) as proof of P
% 187.35/187.68 Found (x03 x040) as proof of P
% 187.35/187.68 Found x010:=(x01 x001):((iff P) Q)
% 187.35/187.68 Found x010 as proof of ((iff P) Q)
% 187.35/187.68 Found x000:=(x00 x011):R
% 187.35/187.68 Found (x00 x011) as proof of R
% 187.35/187.68 Found (x00 x011) as proof of R
% 187.35/187.68 Found x010:=(x01 x000):((iff P) Q)
% 187.35/187.68 Found x010 as proof of ((iff P) Q)
% 187.35/187.68 Found x000:=(x00 x011):R
% 187.35/187.68 Found (x00 x011) as proof of R
% 187.35/187.68 Found (x00 x011) as proof of R
% 187.35/187.68 Found x000:=(x00 x010):R
% 187.35/187.68 Found (x00 x010) as proof of R
% 187.35/187.68 Found (x00 x010) as proof of R
% 187.35/187.68 Found x20:=(x2 x10):((iff P) Q)
% 187.35/187.68 Found (x2 x10) as proof of ((iff P) Q)
% 187.35/187.68 Found (x2 x10) as proof of ((iff P) Q)
% 187.35/187.68 Found x010:=(x01 x000):((iff P) Q)
% 187.35/187.68 Found x010 as proof of ((iff P) Q)
% 187.35/187.68 Found x02:((iff Q) x)
% 187.35/187.68 Instantiate: x:=P:Prop
% 187.35/187.68 Found x02 as proof of ((iff Q) P)
% 187.35/187.68 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 187.35/187.68 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 187.35/187.68 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 187.35/187.68 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 187.35/187.68 Found x010:=(x01 x000):((iff P) Q)
% 187.35/187.68 Found x010 as proof of ((iff P) Q)
% 187.35/187.68 Found x20:=(x2 x11):((iff P) Q)
% 187.35/187.68 Found (x2 x11) as proof of ((iff P) Q)
% 187.35/187.68 Found (x2 x11) as proof of ((iff P) Q)
% 187.35/187.68 Found x010:=(x01 x001):((iff P) Q)
% 187.86/188.23 Found x010 as proof of ((iff P) Q)
% 187.86/188.23 Found x030:P
% 187.86/188.23 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 187.86/188.23 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 187.86/188.23 Found x010:=(x01 x000):((iff P) Q)
% 187.86/188.23 Found x010 as proof of ((iff P) Q)
% 187.86/188.23 Found x030:x
% 187.86/188.23 Instantiate: x:=P:Prop
% 187.86/188.23 Found x030 as proof of P
% 187.86/188.23 Found x010:=(x01 x000):((iff P) Q)
% 187.86/188.23 Found x010 as proof of ((iff P) Q)
% 187.86/188.23 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 187.86/188.23 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 187.86/188.23 Found iff_sym as proof of x
% 187.86/188.23 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 187.86/188.23 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 187.86/188.23 Found eq_sym as proof of x
% 187.86/188.23 Found x020:Q
% 187.86/188.23 Found x020 as proof of Q
% 187.86/188.23 Found (x01 x020) as proof of P
% 187.86/188.23 Found (x01 x020) as proof of P
% 187.86/188.23 Found (x01 x020) as proof of P
% 187.86/188.23 Found x010:=(x01 x001):((iff P) Q)
% 187.86/188.23 Found (x01 x001) as proof of ((iff P) Q)
% 187.86/188.23 Found (x01 x001) as proof of ((iff P) Q)
% 187.86/188.23 Found x010:=(x01 x001):((iff P) Q)
% 187.86/188.23 Found (x01 x001) as proof of ((iff P) Q)
% 187.86/188.23 Found (x01 x001) as proof of ((iff P) Q)
% 187.86/188.23 Found x010:=(x01 x000):((iff P) Q)
% 187.86/188.23 Found x010 as proof of ((iff P) Q)
% 187.86/188.23 Found x040:Q
% 187.86/188.23 Instantiate: x:=Q:Prop
% 187.86/188.23 Found x040 as proof of x
% 187.86/188.23 Found x010:=(x01 x000):((iff P) Q)
% 187.86/188.23 Found x010 as proof of ((iff P) Q)
% 187.86/188.23 Found x020:=(x02 x030):Q
% 187.86/188.23 Found (x02 x030) as proof of Q
% 187.86/188.23 Found (x02 x030) as proof of Q
% 187.86/188.23 Found x030:=(x03 x020):P
% 187.86/188.23 Found (x03 x020) as proof of P
% 187.86/188.23 Found (x03 x020) as proof of P
% 187.86/188.23 Found x02:((iff Q) x)
% 187.86/188.23 Instantiate: x:=P:Prop
% 187.86/188.23 Found x02 as proof of ((iff Q) P)
% 187.86/188.23 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 187.86/188.23 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 187.86/188.23 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 187.86/188.23 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 187.86/188.23 Found classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 187.86/188.23 Instantiate: x:=(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x)))))))):Prop
% 187.86/188.23 Found classical_choice as proof of x
% 187.86/188.23 Found (x04 classical_choice) as proof of Q
% 187.86/188.23 Found (x04 classical_choice) as proof of Q
% 187.86/188.23 Found (x2 (x04 classical_choice)) as proof of P
% 187.86/188.23 Found (fun (x2:(Q->P))=> (x2 (x04 classical_choice))) as proof of P
% 187.86/188.23 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))) as proof of ((Q->P)->P)
% 187.86/188.23 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))) as proof of ((P->Q)->((Q->P)->P))
% 187.86/188.23 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice)))) as proof of P
% 187.86/188.23 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice)))) as proof of P
% 188.66/189.04 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice)))) as proof of P
% 188.66/189.04 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))))) as proof of P
% 188.66/189.04 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))))) as proof of ((x->Q)->P)
% 188.66/189.04 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))))) as proof of ((Q->x)->((x->Q)->P))
% 188.66/189.04 Found (and_rect10 (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice)))))) as proof of P
% 188.66/189.04 Found ((and_rect1 P) (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice)))))) as proof of P
% 188.66/189.04 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice)))))) as proof of P
% 188.66/189.04 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))))))) as proof of P
% 188.66/189.04 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))))))) as proof of (((iff Q) x)->P)
% 188.66/189.04 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 188.66/189.04 Found (iff_refl Q) as proof of ((iff Q) x)
% 188.66/189.04 Found (iff_refl Q) as proof of ((iff Q) x)
% 188.66/189.04 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 188.66/189.04 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 188.66/189.04 Found x010:=(x01 x000):((iff P) Q)
% 188.66/189.04 Found x010 as proof of ((iff P) Q)
% 188.66/189.04 Found x010:=(x01 x001):((iff P) Q)
% 188.66/189.04 Found (x01 x001) as proof of ((iff P) Q)
% 188.66/189.04 Found (x01 x001) as proof of ((iff P) Q)
% 188.66/189.04 Found x030:=(x03 x040):x
% 188.66/189.04 Instantiate: x:=P:Prop
% 188.66/189.04 Found (x03 x040) as proof of P
% 188.66/189.04 Found (x03 x040) as proof of P
% 188.66/189.04 Found x010:=(x01 x000):((iff P) Q)
% 188.66/189.04 Found (x01 x000) as proof of ((iff P) Q)
% 188.66/189.04 Found (x01 x000) as proof of ((iff P) Q)
% 188.66/189.04 Found x010:=(x01 x000):((iff P) Q)
% 188.66/189.04 Found x010 as proof of ((iff P) Q)
% 188.66/189.04 Found x20:=(x2 x10):((iff P) Q)
% 188.66/189.04 Found x20 as proof of ((iff P) Q)
% 188.66/189.04 Found x020:=(x02 x030):Q
% 188.66/189.04 Found (x02 x030) as proof of Q
% 188.66/189.04 Found (x02 x030) as proof of Q
% 188.66/189.04 Found x030:=(x03 x020):P
% 188.66/189.04 Found (x03 x020) as proof of P
% 188.66/189.04 Found (x03 x020) as proof of P
% 188.66/189.04 Found x010:=(x01 x000):((iff P) Q)
% 188.66/189.04 Found x010 as proof of ((iff P) Q)
% 188.66/189.04 Found x040:Q
% 188.66/189.04 Instantiate: x:=Q:Prop
% 188.66/189.04 Found x040 as proof of x
% 188.66/189.04 Found x020:=(x02 x030):Q
% 188.66/189.04 Found (x02 x030) as proof of Q
% 188.66/189.04 Found (x02 x030) as proof of Q
% 188.66/189.04 Found x010:=(x01 x000):((iff P) Q)
% 188.66/189.04 Found x010 as proof of ((iff P) Q)
% 188.66/189.04 Found x030:=(x03 x020):P
% 188.66/189.04 Found (x03 x020) as proof of P
% 188.66/189.04 Found (x03 x020) as proof of P
% 188.66/189.04 Found x020:Q
% 188.66/189.04 Found x020 as proof of Q
% 188.66/189.04 Found (x01 x020) as proof of P
% 188.66/189.04 Found (x01 x020) as proof of P
% 188.66/189.04 Found (x01 x020) as proof of P
% 188.66/189.04 Found x000:=(x00 x011):R
% 188.66/189.04 Found (x00 x011) as proof of R
% 188.66/189.04 Found (x00 x011) as proof of R
% 188.66/189.04 Found x000:=(x00 x011):R
% 188.66/189.04 Found (x00 x011) as proof of R
% 188.66/189.04 Found (x00 x011) as proof of R
% 188.66/189.04 Found x040:Q
% 188.66/189.04 Instantiate: x:=Q:Prop
% 188.66/189.04 Found x040 as proof of x
% 188.66/189.04 Found x010:=(x01 x000):((iff P) Q)
% 188.66/189.04 Found x010 as proof of ((iff P) Q)
% 188.66/189.04 Found x010:=(x01 x000):((iff P) Q)
% 189.83/190.15 Found x010 as proof of ((iff P) Q)
% 189.83/190.15 Found x02:((iff Q) x)
% 189.83/190.15 Instantiate: x:=P:Prop
% 189.83/190.15 Found x02 as proof of ((iff Q) P)
% 189.83/190.15 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 189.83/190.15 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 189.83/190.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 189.83/190.15 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 189.83/190.15 Found x000:=(x00 x011):R
% 189.83/190.15 Found (x00 x011) as proof of R
% 189.83/190.15 Found (x00 x011) as proof of R
% 189.83/190.15 Found x030:x
% 189.83/190.15 Found x030 as proof of Q
% 189.83/190.15 Found x010:=(x01 x000):((iff P) Q)
% 189.83/190.15 Found x010 as proof of ((iff P) Q)
% 189.83/190.15 Found x010:((iff P) Q)
% 189.83/190.15 Instantiate: x:=((iff P) Q):Prop
% 189.83/190.15 Found x010 as proof of x
% 189.83/190.15 Found x040:Q
% 189.83/190.15 Instantiate: x:=Q:Prop
% 189.83/190.15 Found x040 as proof of x
% 189.83/190.15 Found x040:Q
% 189.83/190.15 Instantiate: x:=Q:Prop
% 189.83/190.15 Found x040 as proof of x
% 189.83/190.15 Found x20:=(x2 x10):((iff P) Q)
% 189.83/190.15 Found x20 as proof of ((iff P) Q)
% 189.83/190.15 Found x10:=(x1 x20):R
% 189.83/190.15 Found (x1 x20) as proof of R
% 189.83/190.15 Found (x1 x20) as proof of R
% 189.83/190.15 Found x010:=(x01 x000):((iff P) Q)
% 189.83/190.15 Found (x01 x000) as proof of ((iff P) Q)
% 189.83/190.15 Found (x01 x000) as proof of ((iff P) Q)
% 189.83/190.15 Found x040:Q
% 189.83/190.15 Instantiate: x:=Q:Prop
% 189.83/190.15 Found x040 as proof of x
% 189.83/190.15 Found x000:=(x00 x011):R
% 189.83/190.15 Found (x00 x011) as proof of R
% 189.83/190.15 Found (x00 x011) as proof of R
% 189.83/190.15 Found x000:=(x00 x011):R
% 189.83/190.15 Found (x00 x011) as proof of R
% 189.83/190.15 Found (x00 x011) as proof of R
% 189.83/190.15 Found x041:Q
% 189.83/190.15 Instantiate: x:=Q:Prop
% 189.83/190.15 Found x041 as proof of x
% 189.83/190.15 Found x020:Q
% 189.83/190.15 Found x020 as proof of Q
% 189.83/190.15 Found (x01 x020) as proof of R
% 189.83/190.15 Found (x01 x020) as proof of R
% 189.83/190.15 Found (x01 x020) as proof of R
% 189.83/190.15 Found x010:=(x01 x000):((iff P) Q)
% 189.83/190.15 Found x010 as proof of ((iff P) Q)
% 189.83/190.15 Found x020:Q
% 189.83/190.15 Found x020 as proof of Q
% 189.83/190.15 Found (x01 x020) as proof of P
% 189.83/190.15 Found (x01 x020) as proof of P
% 189.83/190.15 Found (x01 x020) as proof of P
% 189.83/190.15 Found x000:R
% 189.83/190.15 Instantiate: x:=R:Prop
% 189.83/190.15 Found x000 as proof of x
% 189.83/190.15 Found x20:=(x2 x10):((iff P) Q)
% 189.83/190.15 Found x20 as proof of ((iff P) Q)
% 189.83/190.15 Found x010:=(x01 x000):((iff P) Q)
% 189.83/190.15 Found x010 as proof of ((iff P) Q)
% 189.83/190.15 Found x021:Q
% 189.83/190.15 Found x021 as proof of Q
% 189.83/190.15 Found (x01 x021) as proof of P
% 189.83/190.15 Found (x01 x021) as proof of P
% 189.83/190.15 Found (x01 x021) as proof of P
% 189.83/190.15 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 189.83/190.15 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 189.83/190.15 Found eq_substitution as proof of x
% 189.83/190.15 Found (x06 eq_substitution) as proof of Q
% 189.83/190.15 Found (x06 eq_substitution) as proof of Q
% 189.83/190.15 Found (x03 (x06 eq_substitution)) as proof of P
% 189.83/190.15 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 189.83/190.15 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 189.83/190.15 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 189.83/190.15 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 189.83/190.15 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 189.83/190.15 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 189.83/190.15 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 189.83/190.15 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 189.83/190.15 Found x010:=(x01 x000):((iff P) Q)
% 189.83/190.15 Found x010 as proof of ((iff P) Q)
% 189.83/190.15 Found x020:Q
% 189.83/190.15 Found x020 as proof of Q
% 189.83/190.15 Found (x01 x020) as proof of P
% 189.83/190.15 Found (x01 x020) as proof of P
% 189.83/190.15 Found (x01 x020) as proof of P
% 189.83/190.15 Found x020:Q
% 189.83/190.15 Found x020 as proof of Q
% 189.83/190.15 Found (x01 x020) as proof of P
% 189.83/190.15 Found (x01 x020) as proof of P
% 189.83/190.15 Found (x01 x020) as proof of P
% 189.83/190.15 Found x000:=(x00 x011):R
% 189.83/190.15 Found (x00 x011) as proof of R
% 189.83/190.15 Found (x00 x011) as proof of R
% 189.83/190.15 Found x010:=(x01 x001):((iff P) Q)
% 189.83/190.15 Found (x01 x001) as proof of ((iff P) Q)
% 189.83/190.15 Found (x01 x001) as proof of ((iff P) Q)
% 189.83/190.15 Found x000:=(x00 x011):R
% 191.65/192.03 Found (x00 x011) as proof of R
% 191.65/192.03 Found (x00 x011) as proof of R
% 191.65/192.03 Found x030:x
% 191.65/192.03 Found x030 as proof of Q
% 191.65/192.03 Found x000:=(x00 x013):R
% 191.65/192.03 Found (x00 x013) as proof of R
% 191.65/192.03 Found (x00 x013) as proof of R
% 191.65/192.03 Found x040:Q
% 191.65/192.03 Found x040 as proof of Q
% 191.65/192.03 Found (x03 x040) as proof of R
% 191.65/192.03 Found (x03 x040) as proof of R
% 191.65/192.03 Found (x03 x040) as proof of R
% 191.65/192.03 Found x010:=(x01 x021):x
% 191.65/192.03 Found (x01 x021) as proof of P
% 191.65/192.03 Found (x01 x021) as proof of P
% 191.65/192.03 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 191.65/192.03 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 191.65/192.03 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 191.65/192.03 Found x011:x
% 191.65/192.03 Found x011 as proof of x
% 191.65/192.03 Found x020:Q
% 191.65/192.03 Found x020 as proof of x
% 191.65/192.03 Found x010:x
% 191.65/192.03 Found x010 as proof of Q
% 191.65/192.03 Found x021:Q
% 191.65/192.03 Found x021 as proof of x
% 191.65/192.03 Found x011:x
% 191.65/192.03 Found x011 as proof of Q
% 191.65/192.03 Found x020:Q
% 191.65/192.03 Found x020 as proof of Q
% 191.65/192.03 Found x030:P
% 191.65/192.03 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 191.65/192.03 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 191.65/192.03 Found x010:x
% 191.65/192.03 Found x010 as proof of x
% 191.65/192.03 Found x010:=(x01 x001):((iff P) Q)
% 191.65/192.03 Found (x01 x001) as proof of ((iff P) Q)
% 191.65/192.03 Found (x01 x001) as proof of ((iff P) Q)
% 191.65/192.03 Found x020:Q
% 191.65/192.03 Found x020 as proof of Q
% 191.65/192.03 Found (x01 x020) as proof of ((iff P) Q)
% 191.65/192.03 Found (x01 x020) as proof of ((iff P) Q)
% 191.65/192.03 Found (x01 x020) as proof of ((iff P) Q)
% 191.65/192.03 Found x021:Q
% 191.65/192.03 Found x021 as proof of Q
% 191.65/192.03 Found x000:=(x00 x011):R
% 191.65/192.03 Found (x00 x011) as proof of R
% 191.65/192.03 Found (x00 x011) as proof of R
% 191.65/192.03 Found x000:=(x00 x011):R
% 191.65/192.03 Found (x00 x011) as proof of R
% 191.65/192.03 Found (x00 x011) as proof of R
% 191.65/192.03 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 191.65/192.03 Found (iff_refl Q) as proof of ((iff Q) x)
% 191.65/192.03 Found (iff_refl Q) as proof of ((iff Q) x)
% 191.65/192.03 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 191.65/192.03 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 191.65/192.03 Found x030:P
% 191.65/192.03 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 191.65/192.03 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 191.65/192.03 Found x010:=(x01 x000):((iff P) Q)
% 191.65/192.03 Found x010 as proof of ((iff P) Q)
% 191.65/192.03 Found x010:=(x01 x001):((iff P) Q)
% 191.65/192.03 Found (x01 x001) as proof of ((iff P) Q)
% 191.65/192.03 Found (x01 x001) as proof of ((iff P) Q)
% 191.65/192.03 Found x000:=(x00 x010):R
% 191.65/192.03 Found (x00 x010) as proof of R
% 191.65/192.03 Found (x00 x010) as proof of R
% 191.65/192.03 Found x010:=(x01 x001):((iff P) Q)
% 191.65/192.03 Found (x01 x001) as proof of ((iff P) Q)
% 191.65/192.03 Found (x01 x001) as proof of ((iff P) Q)
% 191.65/192.03 Found x030:=(x03 x040):x
% 191.65/192.03 Instantiate: x:=P:Prop
% 191.65/192.03 Found (x03 x040) as proof of P
% 191.65/192.03 Found (x03 x040) as proof of P
% 191.65/192.03 Found x20:=(x2 x10):((iff P) Q)
% 191.65/192.03 Found (x2 x10) as proof of ((iff P) Q)
% 191.65/192.03 Found (x2 x10) as proof of ((iff P) Q)
% 191.65/192.03 Found x000:=(x00 x010):R
% 191.65/192.03 Found (x00 x010) as proof of R
% 191.65/192.03 Found (x00 x010) as proof of R
% 191.65/192.03 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 191.65/192.03 Found (iff_refl Q) as proof of ((iff Q) x)
% 191.65/192.03 Found (iff_refl Q) as proof of ((iff Q) x)
% 191.65/192.03 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 191.65/192.03 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 191.65/192.03 Found x011:x
% 191.65/192.03 Found x011 as proof of Q
% 191.65/192.03 Found x010:=(x01 x001):((iff P) Q)
% 191.65/192.03 Found x010 as proof of ((iff P) Q)
% 191.65/192.03 Found x010:=(x01 x000):((iff P) Q)
% 191.65/192.03 Found x010 as proof of ((iff P) Q)
% 191.65/192.03 Found x011:x
% 191.65/192.03 Found x011 as proof of x
% 191.65/192.03 Found x010:x
% 191.65/192.03 Found x010 as proof of x
% 191.65/192.03 Found x021:Q
% 191.65/192.03 Found x021 as proof of Q
% 191.65/192.03 Found x010:x
% 191.65/192.03 Found x010 as proof of Q
% 191.65/192.03 Found x020:Q
% 191.65/192.03 Found x020 as proof of x
% 191.65/192.03 Found x020:Q
% 191.65/192.03 Found x020 as proof of Q
% 191.65/192.03 Found x021:Q
% 191.65/192.03 Found x021 as proof of x
% 191.65/192.03 Found x010:=(x01 x000):((iff P) Q)
% 191.65/192.03 Found x010 as proof of ((iff P) Q)
% 191.65/192.03 Found x000:=(x00 x010):R
% 191.65/192.03 Found (x00 x010) as proof of R
% 191.65/192.03 Found (x00 x010) as proof of R
% 191.65/192.03 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 191.65/192.03 Found (iff_refl Q) as proof of ((iff Q) x)
% 191.65/192.03 Found (iff_refl Q) as proof of ((iff Q) x)
% 191.65/192.03 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 191.65/192.03 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 191.65/192.03 Found x010:=(x01 x000):((iff P) Q)
% 191.65/192.03 Found (x01 x000) as proof of ((iff P) Q)
% 191.65/192.03 Found (x01 x000) as proof of ((iff P) Q)
% 191.65/192.03 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 191.65/192.03 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 191.65/192.03 Found ex_intro0 as proof of x
% 191.65/192.03 Found (x02 ex_intro0) as proof of Q
% 191.84/192.21 Found (x02 ex_intro0) as proof of Q
% 191.84/192.21 Found iff_sym100:=(iff_sym10 x010):((iff Q) P)
% 191.84/192.21 Found (iff_sym10 x010) as proof of ((iff Q) P)
% 191.84/192.21 Found ((iff_sym1 Q) x010) as proof of ((iff Q) P)
% 191.84/192.21 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 191.84/192.21 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 191.84/192.21 Found x030:=(x03 x040):x
% 191.84/192.21 Instantiate: x:=P:Prop
% 191.84/192.21 Found (x03 x040) as proof of P
% 191.84/192.21 Found (x03 x040) as proof of P
% 191.84/192.21 Found classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 191.84/192.21 Instantiate: x:=(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x)))))))):Prop
% 191.84/192.21 Found classical_choice as proof of x
% 191.84/192.21 Found (x04 classical_choice) as proof of Q
% 191.84/192.21 Found (x04 classical_choice) as proof of Q
% 191.84/192.21 Found (x2 (x04 classical_choice)) as proof of P
% 191.84/192.21 Found (fun (x2:(Q->P))=> (x2 (x04 classical_choice))) as proof of P
% 191.84/192.21 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))) as proof of ((Q->P)->P)
% 191.84/192.21 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))) as proof of ((P->Q)->((Q->P)->P))
% 191.84/192.21 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice)))) as proof of P
% 191.84/192.21 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice)))) as proof of P
% 191.84/192.21 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice)))) as proof of P
% 191.84/192.21 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))))) as proof of P
% 191.84/192.21 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))))) as proof of ((x->Q)->P)
% 191.84/192.21 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))))) as proof of ((Q->x)->((x->Q)->P))
% 191.84/192.21 Found (and_rect10 (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice)))))) as proof of P
% 191.84/192.21 Found ((and_rect1 P) (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice)))))) as proof of P
% 191.84/192.21 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice)))))) as proof of P
% 193.91/194.26 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))))))) as proof of P
% 193.91/194.26 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 classical_choice))))))) as proof of (((iff Q) x)->P)
% 193.91/194.26 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 193.91/194.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 193.91/194.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 193.91/194.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 193.91/194.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 193.91/194.26 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 193.91/194.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 193.91/194.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 193.91/194.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 193.91/194.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 193.91/194.26 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 193.91/194.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 193.91/194.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 193.91/194.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 193.91/194.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 193.91/194.26 Found x010:=(x01 x001):((iff P) Q)
% 193.91/194.26 Found x010 as proof of ((iff P) Q)
% 193.91/194.26 Found x010:=(x01 x000):((iff P) Q)
% 193.91/194.26 Found x010 as proof of ((iff P) Q)
% 193.91/194.26 Found x20:=(x2 x10):((iff P) Q)
% 193.91/194.26 Found x20 as proof of ((iff P) Q)
% 193.91/194.26 Found x020:Q
% 193.91/194.26 Found x020 as proof of Q
% 193.91/194.26 Found (x01 x020) as proof of P
% 193.91/194.26 Found (x01 x020) as proof of P
% 193.91/194.26 Found (x01 x020) as proof of P
% 193.91/194.26 Found x000:=(x00 x010):R
% 193.91/194.26 Found (x00 x010) as proof of R
% 193.91/194.26 Found (x00 x010) as proof of R
% 193.91/194.26 Found x010:=(x01 x000):((iff P) Q)
% 193.91/194.26 Found x010 as proof of ((iff P) Q)
% 193.91/194.26 Found x010:=(x01 x000):((iff P) Q)
% 193.91/194.26 Found x010 as proof of ((iff P) Q)
% 193.91/194.26 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 193.91/194.26 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 193.91/194.26 Found ex_intro0 as proof of x
% 193.91/194.26 Found (x02 ex_intro0) as proof of Q
% 193.91/194.26 Found (x02 ex_intro0) as proof of Q
% 193.91/194.26 Found x010:=(x01 x001):((iff P) Q)
% 193.91/194.26 Found x010 as proof of ((iff P) Q)
% 193.91/194.26 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 193.91/194.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 193.91/194.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 193.91/194.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 193.91/194.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 193.91/194.26 Found x010:=(x01 x000):((iff P) Q)
% 193.91/194.26 Found (x01 x000) as proof of ((iff P) Q)
% 193.91/194.26 Found (x01 x000) as proof of ((iff P) Q)
% 193.91/194.26 Found x030:x
% 193.91/194.26 Found x030 as proof of Q
% 193.91/194.26 Found x030:x
% 193.91/194.26 Found x030 as proof of Q
% 193.91/194.26 Found x030:x
% 193.91/194.26 Found x030 as proof of x
% 193.91/194.26 Found x030:x
% 193.91/194.26 Found x030 as proof of Q
% 193.91/194.26 Found x040:Q
% 193.91/194.26 Found x040 as proof of x
% 193.91/194.26 Found x040:Q
% 193.91/194.26 Found x040 as proof of Q
% 193.91/194.26 Found x030:=(x03 x020):P
% 193.91/194.26 Found (x03 x020) as proof of P
% 193.91/194.26 Found (x03 x020) as proof of P
% 193.91/194.26 Found x030:x
% 193.91/194.26 Found x030 as proof of x
% 193.91/194.26 Found x040:Q
% 193.91/194.26 Found x040 as proof of x
% 193.91/194.26 Found x030:x
% 193.91/194.26 Found x030 as proof of Q
% 193.91/194.26 Found x040:Q
% 193.91/194.26 Found x040 as proof of Q
% 193.91/194.26 Found x010:=(x01 x000):((iff P) Q)
% 193.91/194.26 Found (x01 x000) as proof of ((iff P) Q)
% 193.91/194.26 Found (x01 x000) as proof of ((iff P) Q)
% 193.91/194.26 Found x030:x
% 193.91/194.26 Found x030 as proof of x
% 193.91/194.26 Found x040:Q
% 193.91/194.26 Found x040 as proof of Q
% 193.91/194.26 Found x030:x
% 193.91/194.26 Found x030 as proof of Q
% 193.91/194.26 Found x040:Q
% 193.91/194.26 Found x040 as proof of x
% 193.91/194.26 Found x010:=(x01 x003):((iff P) Q)
% 193.91/194.26 Found x010 as proof of ((iff P) Q)
% 193.91/194.26 Found x040:Q
% 193.91/194.26 Found x040 as proof of Q
% 193.91/194.26 Found x030:x
% 193.91/194.26 Found x030 as proof of x
% 193.91/194.26 Found x040:Q
% 193.91/194.26 Found x040 as proof of x
% 193.91/194.26 Found x010:=(x01 x000):((iff P) Q)
% 193.91/194.26 Found x010 as proof of ((iff P) Q)
% 193.91/194.26 Found x010:=(x01 x000):((iff P) Q)
% 193.91/194.26 Found x010 as proof of ((iff P) Q)
% 193.91/194.26 Found x030:=(x03 x040):x
% 193.91/194.26 Instantiate: x:=P:Prop
% 193.91/194.26 Found (x03 x040) as proof of P
% 193.91/194.26 Found (x03 x040) as proof of P
% 193.91/194.26 Found x030:=(x03 x040):x
% 193.91/194.26 Instantiate: x:=P:Prop
% 193.91/194.26 Found (x03 x040) as proof of P
% 193.91/194.26 Found (x03 x040) as proof of P
% 193.91/194.26 Found x000:=(x00 x011):R
% 193.91/194.26 Found (x00 x011) as proof of R
% 194.66/195.00 Found (x00 x011) as proof of R
% 194.66/195.00 Found x040:Q
% 194.66/195.00 Found x040 as proof of x
% 194.66/195.00 Found x040:Q
% 194.66/195.00 Found x040 as proof of Q
% 194.66/195.00 Found x040:Q
% 194.66/195.00 Found x040 as proof of Q
% 194.66/195.00 Found x030:x
% 194.66/195.00 Found x030 as proof of x
% 194.66/195.00 Found x030:x
% 194.66/195.00 Found x030 as proof of Q
% 194.66/195.00 Found x040:Q
% 194.66/195.00 Found x040 as proof of x
% 194.66/195.00 Found x030:x
% 194.66/195.00 Found x030 as proof of x
% 194.66/195.00 Found x010:=(x01 x000):((iff P) Q)
% 194.66/195.00 Found x010 as proof of ((iff P) Q)
% 194.66/195.00 Found x030:x
% 194.66/195.00 Found x030 as proof of Q
% 194.66/195.00 Found x030:x
% 194.66/195.00 Found x030 as proof of Q
% 194.66/195.00 Found x040:Q
% 194.66/195.00 Found x040 as proof of x
% 194.66/195.00 Found x030:=(x03 x040):x
% 194.66/195.00 Instantiate: x:=P:Prop
% 194.66/195.00 Found (x03 x040) as proof of P
% 194.66/195.00 Found (x03 x040) as proof of P
% 194.66/195.00 Found x21:((iff P) Q)
% 194.66/195.00 Instantiate: x:=((iff P) Q):Prop
% 194.66/195.00 Found x21 as proof of x
% 194.66/195.00 Found x010:x
% 194.66/195.00 Instantiate: x:=P:Prop
% 194.66/195.00 Found x010 as proof of P
% 194.66/195.00 Found x010:=(x01 x000):((iff P) Q)
% 194.66/195.00 Found x010 as proof of ((iff P) Q)
% 194.66/195.00 Found x010:=(x01 x000):((iff P) Q)
% 194.66/195.00 Found x010 as proof of ((iff P) Q)
% 194.66/195.00 Found x000:=(x00 x011):R
% 194.66/195.00 Found (x00 x011) as proof of R
% 194.66/195.00 Found (x00 x011) as proof of R
% 194.66/195.00 Found x040:Q
% 194.66/195.00 Found x040 as proof of Q
% 194.66/195.00 Found x030:x
% 194.66/195.00 Found x030 as proof of Q
% 194.66/195.00 Found x030:x
% 194.66/195.00 Found x030 as proof of x
% 194.66/195.00 Found x040:Q
% 194.66/195.00 Found x040 as proof of Q
% 194.66/195.00 Found x040:Q
% 194.66/195.00 Found x040 as proof of x
% 194.66/195.00 Found x010:=(x01 x000):((iff P) Q)
% 194.66/195.00 Found x010 as proof of ((iff P) Q)
% 194.66/195.00 Found x00:((iff Q) x)
% 194.66/195.00 Instantiate: x:=P:Prop
% 194.66/195.00 Found x00 as proof of ((iff Q) P)
% 194.66/195.00 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 194.66/195.00 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 194.66/195.00 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 194.66/195.00 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 194.66/195.00 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 194.66/195.00 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 194.66/195.00 Found eq_substitution as proof of x
% 194.66/195.00 Found (x06 eq_substitution) as proof of Q
% 194.66/195.00 Found (x06 eq_substitution) as proof of Q
% 194.66/195.00 Found (x03 (x06 eq_substitution)) as proof of P
% 194.66/195.00 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 194.66/195.00 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 194.66/195.00 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 194.66/195.00 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 194.66/195.00 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 194.66/195.00 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 194.66/195.00 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 194.66/195.00 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 194.66/195.00 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((Q->P)->(((iff Q) x)->P))
% 194.66/195.00 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((P->Q)->((Q->P)->(((iff Q) x)->P)))
% 194.66/195.00 Found (and_rect10 (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 194.66/195.00 Found ((and_rect1 (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 194.95/195.32 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 194.95/195.32 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 194.95/195.32 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 194.95/195.32 Found x010:=(x01 x000):((iff P) Q)
% 194.95/195.32 Found x010 as proof of ((iff P) Q)
% 194.95/195.32 Found x11:R
% 194.95/195.32 Instantiate: x:=R:Prop
% 194.95/195.32 Found x11 as proof of x
% 194.95/195.32 Found x21:((iff P) Q)
% 194.95/195.32 Instantiate: x:=((iff P) Q):Prop
% 194.95/195.32 Found x21 as proof of x
% 194.95/195.32 Found x11:R
% 194.95/195.32 Instantiate: x:=R:Prop
% 194.95/195.32 Found x11 as proof of x
% 194.95/195.32 Found x010:=(x01 x000):((iff P) Q)
% 194.95/195.32 Found x010 as proof of ((iff P) Q)
% 194.95/195.32 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 194.95/195.32 Found (iff_refl Q) as proof of ((iff Q) x)
% 194.95/195.32 Found (iff_refl Q) as proof of ((iff Q) x)
% 194.95/195.32 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 194.95/195.32 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 194.95/195.32 Found x010:x
% 194.95/195.32 Instantiate: x:=P:Prop
% 194.95/195.32 Found x010 as proof of P
% 194.95/195.32 Found x000:=(x00 x010):R
% 194.95/195.32 Found (x00 x010) as proof of R
% 194.95/195.32 Found (x00 x010) as proof of R
% 194.95/195.32 Found x010:=(x01 x001):((iff P) Q)
% 194.95/195.32 Found (x01 x001) as proof of ((iff P) Q)
% 194.95/195.32 Found (x01 x001) as proof of ((iff P) Q)
% 194.95/195.32 Found x030:=(x03 x040):x
% 194.95/195.32 Instantiate: x:=P:Prop
% 194.95/195.32 Found (x03 x040) as proof of P
% 194.95/195.32 Found (x03 x040) as proof of P
% 194.95/195.32 Found x000:=(x00 x010):R
% 194.95/195.32 Found (x00 x010) as proof of R
% 194.95/195.32 Found (x00 x010) as proof of R
% 194.95/195.32 Found x010:=(x01 x000):((iff P) Q)
% 194.95/195.32 Found x010 as proof of ((iff P) Q)
% 194.95/195.32 Found x010:=(x01 x001):((iff P) Q)
% 194.95/195.32 Found (x01 x001) as proof of ((iff P) Q)
% 194.95/195.32 Found (x01 x001) as proof of ((iff P) Q)
% 194.95/195.32 Found x010:=(x01 x020):x
% 194.95/195.32 Instantiate: x:=P:Prop
% 194.95/195.32 Found (x01 x020) as proof of P
% 194.95/195.32 Found (x01 x020) as proof of P
% 194.95/195.32 Found x010:x
% 194.95/195.32 Instantiate: x:=P:Prop
% 194.95/195.32 Found x010 as proof of P
% 194.95/195.32 Found x010:=(x01 x001):((iff P) Q)
% 194.95/195.32 Found (x01 x001) as proof of ((iff P) Q)
% 194.95/195.32 Found (x01 x001) as proof of ((iff P) Q)
% 194.95/195.32 Found x010:=(x01 x000):((iff P) Q)
% 194.95/195.32 Found x010 as proof of ((iff P) Q)
% 194.95/195.32 Found x000:=(x00 x011):R
% 194.95/195.32 Found (x00 x011) as proof of R
% 194.95/195.32 Found (x00 x011) as proof of R
% 194.95/195.32 Found x010:=(x01 x000):((iff P) Q)
% 194.95/195.32 Found x010 as proof of ((iff P) Q)
% 194.95/195.32 Found x010:=(x01 x001):((iff P) Q)
% 194.95/195.32 Found (x01 x001) as proof of ((iff P) Q)
% 194.95/195.32 Found (x01 x001) as proof of ((iff P) Q)
% 194.95/195.32 Found classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 195.56/195.89 Instantiate: x:=(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x)))))))):Prop
% 195.56/195.89 Found classical_choice as proof of x
% 195.56/195.89 Found (x04 classical_choice) as proof of Q
% 195.56/195.89 Found (x04 classical_choice) as proof of Q
% 195.56/195.89 Found (x2 (x04 classical_choice)) as proof of P
% 195.56/195.89 Found (fun (x04:(x->Q))=> (x2 (x04 classical_choice))) as proof of P
% 195.56/195.89 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))) as proof of ((x->Q)->P)
% 195.56/195.89 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))) as proof of ((Q->x)->((x->Q)->P))
% 195.56/195.89 Found (and_rect20 (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))) as proof of P
% 195.56/195.89 Found ((and_rect2 P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))) as proof of P
% 195.56/195.89 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))) as proof of P
% 195.56/195.89 Found (fun (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))) as proof of P
% 195.56/195.89 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))) as proof of ((Q->P)->P)
% 195.56/195.89 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))) as proof of ((P->Q)->((Q->P)->P))
% 195.56/195.89 Found (and_rect10 (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))))) as proof of P
% 195.56/195.89 Found ((and_rect1 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))))) as proof of P
% 195.56/195.89 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))))) as proof of P
% 195.56/195.89 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))))) as proof of P
% 195.56/195.89 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))))) as proof of (((iff Q) x)->P)
% 195.56/195.89 Found x010:x
% 195.56/195.89 Instantiate: x:=P:Prop
% 195.56/195.89 Found x010 as proof of P
% 195.56/195.89 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 195.56/195.89 Found (iff_refl Q) as proof of ((iff Q) x)
% 195.56/195.89 Found (iff_refl Q) as proof of ((iff Q) x)
% 195.56/195.89 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 195.56/195.89 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 195.56/195.89 Found x010:=(x01 x000):((iff P) Q)
% 195.56/195.89 Found x010 as proof of ((iff P) Q)
% 195.56/195.89 Found x010:=(x01 x000):((iff P) Q)
% 195.56/195.89 Found x010 as proof of ((iff P) Q)
% 195.56/195.89 Found x010:=(x01 x000):((iff P) Q)
% 195.56/195.89 Found x010 as proof of ((iff P) Q)
% 195.56/195.89 Found x010:=(x01 x000):((iff P) Q)
% 195.56/195.89 Found x010 as proof of ((iff P) Q)
% 195.56/195.89 Found x000:=(x00 x011):R
% 195.56/195.89 Found (x00 x011) as proof of R
% 195.56/195.89 Found (x00 x011) as proof of R
% 195.56/195.89 Found x030:=(x03 x040):x
% 195.56/195.89 Instantiate: x:=R:Prop
% 195.56/195.89 Found (x03 x040) as proof of R
% 195.56/195.89 Found (x03 x040) as proof of R
% 196.47/196.78 Found x000:=(x00 x011):R
% 196.47/196.78 Found (x00 x011) as proof of R
% 196.47/196.78 Found (x00 x011) as proof of R
% 196.47/196.78 Found x010:=(x01 x000):((iff P) Q)
% 196.47/196.78 Found x010 as proof of ((iff P) Q)
% 196.47/196.78 Found x040:Q
% 196.47/196.78 Found x040 as proof of Q
% 196.47/196.78 Found (x03 x040) as proof of P
% 196.47/196.78 Found (x03 x040) as proof of P
% 196.47/196.78 Found (x03 x040) as proof of P
% 196.47/196.78 Found x20:=(x2 x10):((iff P) Q)
% 196.47/196.78 Found (x2 x10) as proof of ((iff P) Q)
% 196.47/196.78 Found (x2 x10) as proof of ((iff P) Q)
% 196.47/196.78 Found x20:=(x2 x10):((iff P) Q)
% 196.47/196.78 Instantiate: x:=((iff P) Q):Prop
% 196.47/196.78 Found x20 as proof of x
% 196.47/196.78 Found (x04 x20) as proof of Q
% 196.47/196.78 Found (x04 x20) as proof of Q
% 196.47/196.78 Found (x02 (x04 x20)) as proof of P
% 196.47/196.78 Found (fun (x04:(x->Q))=> (x02 (x04 x20))) as proof of P
% 196.47/196.78 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20))) as proof of ((x->Q)->P)
% 196.47/196.78 Found (fun (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20))) as proof of ((Q->x)->((x->Q)->P))
% 196.47/196.78 Found (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 196.47/196.78 Found (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 196.47/196.78 Found (and_rect20 (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20)))) as proof of ((Q->x)->((x->Q)->P))
% 196.47/196.78 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20)))) as proof of ((Q->x)->((x->Q)->P))
% 196.47/196.78 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20)))) as proof of ((Q->x)->((x->Q)->P))
% 196.47/196.78 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10))))) as proof of ((Q->x)->((x->Q)->P))
% 196.47/196.78 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10))))) as proof of ((Q->x)->((x->Q)->P))
% 196.47/196.78 Found (and_rect10 (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10)))))) as proof of P
% 196.47/196.78 Found ((and_rect1 P) (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10)))))) as proof of P
% 196.47/196.78 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x00)) P) (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10)))))) as proof of P
% 196.47/196.78 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x00)) P) (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10)))))) as proof of P
% 196.47/196.78 Found x010:=(x01 x000):((iff P) Q)
% 196.47/196.78 Found x010 as proof of ((iff P) Q)
% 196.47/196.78 Found x010:=(x01 x002):((iff P) Q)
% 196.47/196.78 Found x010 as proof of ((iff P) Q)
% 196.47/196.78 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 196.47/196.78 Found (iff_refl Q) as proof of ((iff Q) x)
% 196.47/196.78 Found (iff_refl Q) as proof of ((iff Q) x)
% 196.47/196.78 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 196.47/196.78 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 196.47/196.78 Found x010:=(x01 x000):((iff P) Q)
% 196.47/196.78 Found x010 as proof of ((iff P) Q)
% 196.47/196.78 Found x010:=(x01 x000):((iff P) Q)
% 196.47/196.78 Found x010 as proof of ((iff P) Q)
% 196.47/196.78 Found x010:=(x01 x001):((iff P) Q)
% 196.47/196.78 Found x010 as proof of ((iff P) Q)
% 196.47/196.78 Found iff_sym100:=(iff_sym10 x010):((iff Q) P)
% 196.47/196.78 Found (iff_sym10 x010) as proof of ((iff Q) P)
% 196.47/196.78 Found ((iff_sym1 Q) x010) as proof of ((iff Q) P)
% 196.47/196.78 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 196.47/196.78 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 196.47/196.78 Found x000:=(x00 x011):R
% 196.47/196.78 Found (x00 x011) as proof of R
% 199.84/200.20 Found (x00 x011) as proof of R
% 199.84/200.20 Found x11:R
% 199.84/200.20 Instantiate: x:=R:Prop
% 199.84/200.20 Found x11 as proof of x
% 199.84/200.20 Found x010:x
% 199.84/200.20 Instantiate: x:=P:Prop
% 199.84/200.20 Found x010 as proof of P
% 199.84/200.20 Found x010:=(x01 x000):((iff P) Q)
% 199.84/200.20 Found x010 as proof of ((iff P) Q)
% 199.84/200.20 Found x010:=(x01 x002):((iff P) Q)
% 199.84/200.20 Found x010 as proof of ((iff P) Q)
% 199.84/200.20 Found x010:=(x01 x000):((iff P) Q)
% 199.84/200.20 Found x010 as proof of ((iff P) Q)
% 199.84/200.20 Found x010:=(x01 x001):((iff P) Q)
% 199.84/200.20 Found x010 as proof of ((iff P) Q)
% 199.84/200.20 Found x1:(((iff P) Q)->R)
% 199.84/200.20 Instantiate: x:=(((iff P) Q)->R):Prop
% 199.84/200.20 Found x1 as proof of x
% 199.84/200.20 Found x010:x
% 199.84/200.20 Instantiate: x:=R:Prop
% 199.84/200.20 Found x010 as proof of R
% 199.84/200.20 Found x20:=(x2 x11):((iff P) Q)
% 199.84/200.20 Found (x2 x11) as proof of ((iff P) Q)
% 199.84/200.20 Found (x2 x11) as proof of ((iff P) Q)
% 199.84/200.20 Found x010:=(x01 x001):((iff P) Q)
% 199.84/200.20 Found (x01 x001) as proof of ((iff P) Q)
% 199.84/200.20 Found (x01 x001) as proof of ((iff P) Q)
% 199.84/200.20 Found x010:=(x01 x001):((iff P) Q)
% 199.84/200.20 Found (x01 x001) as proof of ((iff P) Q)
% 199.84/200.20 Found (x01 x001) as proof of ((iff P) Q)
% 199.84/200.20 Found x010:=(x01 x000):((iff P) Q)
% 199.84/200.20 Found x010 as proof of ((iff P) Q)
% 199.84/200.20 Found x030:=(x03 x020):P
% 199.84/200.20 Found (x03 x020) as proof of P
% 199.84/200.20 Found (x03 x020) as proof of P
% 199.84/200.20 Found x010:=(x01 x000):((iff P) Q)
% 199.84/200.20 Found (x01 x000) as proof of ((iff P) Q)
% 199.84/200.20 Found (x01 x000) as proof of ((iff P) Q)
% 199.84/200.20 Found x020:=(x02 x030):Q
% 199.84/200.20 Found (x02 x030) as proof of Q
% 199.84/200.20 Found (x02 x030) as proof of Q
% 199.84/200.20 Found x010:=(x01 x000):((iff P) Q)
% 199.84/200.20 Found x010 as proof of ((iff P) Q)
% 199.84/200.20 Found x030:x
% 199.84/200.20 Found x030 as proof of Q
% 199.84/200.20 Found x030:x
% 199.84/200.20 Found x030 as proof of x
% 199.84/200.20 Found x20:=(x2 x10):((iff P) Q)
% 199.84/200.20 Found x20 as proof of ((iff P) Q)
% 199.84/200.20 Found x20:=(x2 x11):((iff P) Q)
% 199.84/200.20 Found (x2 x11) as proof of ((iff P) Q)
% 199.84/200.20 Found (x2 x11) as proof of ((iff P) Q)
% 199.84/200.20 Found x010:=(x01 x000):((iff P) Q)
% 199.84/200.20 Found x010 as proof of ((iff P) Q)
% 199.84/200.20 Found x010:=(x01 x020):x
% 199.84/200.20 Instantiate: x:=R:Prop
% 199.84/200.20 Found (x01 x020) as proof of R
% 199.84/200.20 Found (x01 x020) as proof of R
% 199.84/200.20 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 199.84/200.20 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 199.84/200.20 Found x040:Q
% 199.84/200.20 Found x040 as proof of x
% 199.84/200.20 Found x010:=(x01 x020):x
% 199.84/200.20 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 199.84/200.20 Found (x01 x020) as proof of ((iff P) Q)
% 199.84/200.20 Found (x01 x020) as proof of ((iff P) Q)
% 199.84/200.20 Found (x1 (x01 x020)) as proof of R
% 199.84/200.20 Found (x1 (x01 x020)) as proof of R
% 199.84/200.20 Found x030:x
% 199.84/200.20 Found x030 as proof of x
% 199.84/200.20 Found x030:x
% 199.84/200.20 Found x030 as proof of Q
% 199.84/200.20 Found x20:=(x2 x11):((iff P) Q)
% 199.84/200.20 Found (x2 x11) as proof of ((iff P) Q)
% 199.84/200.20 Found (x2 x11) as proof of ((iff P) Q)
% 199.84/200.20 Found x030:=(x03 x020):P
% 199.84/200.20 Found (x03 x020) as proof of P
% 199.84/200.20 Found (x03 x020) as proof of P
% 199.84/200.20 Found x010:=(x01 x000):((iff P) Q)
% 199.84/200.20 Found (x01 x000) as proof of ((iff P) Q)
% 199.84/200.20 Found (x01 x000) as proof of ((iff P) Q)
% 199.84/200.20 Found x040:Q
% 199.84/200.20 Found x040 as proof of Q
% 199.84/200.20 Found x040:Q
% 199.84/200.20 Found x040 as proof of Q
% 199.84/200.20 Found x030:x
% 199.84/200.20 Found x030 as proof of Q
% 199.84/200.20 Found x040:Q
% 199.84/200.20 Found x040 as proof of x
% 199.84/200.20 Found x040:Q
% 199.84/200.20 Found x040 as proof of x
% 199.84/200.20 Found x030:x
% 199.84/200.20 Found x030 as proof of x
% 199.84/200.20 Found x20:=(x2 x11):((iff P) Q)
% 199.84/200.20 Found (x2 x11) as proof of ((iff P) Q)
% 199.84/200.20 Found (x2 x11) as proof of ((iff P) Q)
% 199.84/200.20 Found x20:=(x2 x11):((iff P) Q)
% 199.84/200.20 Found (x2 x11) as proof of ((iff P) Q)
% 199.84/200.20 Found (x2 x11) as proof of ((iff P) Q)
% 199.84/200.20 Found x20:=(x2 x10):((iff P) Q)
% 199.84/200.20 Found x20 as proof of ((iff P) Q)
% 199.84/200.20 Found x10:=(x1 x20):R
% 199.84/200.20 Found (x1 x20) as proof of R
% 199.84/200.20 Found (x1 x20) as proof of R
% 199.84/200.20 Found x030:x
% 199.84/200.20 Found x030 as proof of Q
% 199.84/200.20 Found x030:x
% 199.84/200.20 Found x030 as proof of x
% 199.84/200.20 Found x040:Q
% 199.84/200.20 Instantiate: x:=Q:Prop
% 199.84/200.20 Found x040 as proof of x
% 199.84/200.20 Found x040:Q
% 199.84/200.20 Found x040 as proof of x
% 199.84/200.20 Found x040:Q
% 199.84/200.20 Found x040 as proof of Q
% 199.84/200.20 Found x040:Q
% 199.84/200.20 Found x040 as proof of Q
% 199.84/200.20 Found x040:Q
% 199.84/200.20 Instantiate: x:=Q:Prop
% 199.84/200.20 Found x040 as proof of x
% 199.84/200.20 Found x030:x
% 199.84/200.20 Found x030 as proof of Q
% 199.84/200.20 Found x030:=(x03 x021):P
% 199.84/200.20 Found (x03 x021) as proof of P
% 199.84/200.20 Found (x03 x021) as proof of P
% 199.84/200.20 Found x030:x
% 199.84/200.20 Found x030 as proof of Q
% 199.84/200.20 Found x020:=(x02 x030):Q
% 199.84/200.20 Found (x02 x030) as proof of Q
% 199.84/200.20 Found (x02 x030) as proof of Q
% 199.84/200.20 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 199.84/200.20 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 199.84/200.20 Found eq_substitution as proof of x
% 199.84/200.20 Found (x06 eq_substitution) as proof of Q
% 200.16/200.48 Found (x06 eq_substitution) as proof of Q
% 200.16/200.48 Found (x03 (x06 eq_substitution)) as proof of P
% 200.16/200.48 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 200.16/200.48 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 200.16/200.48 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 200.16/200.48 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 200.16/200.48 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 200.16/200.48 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 200.16/200.48 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 200.16/200.48 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 200.16/200.48 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((Q->P)->(((iff Q) x)->P))
% 200.16/200.48 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((P->Q)->((Q->P)->(((iff Q) x)->P)))
% 200.16/200.48 Found (and_rect10 (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 200.16/200.48 Found ((and_rect1 (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 200.16/200.48 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 200.16/200.48 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 200.16/200.48 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 200.16/200.48 Found x20:=(x2 x10):((iff P) Q)
% 200.16/200.48 Found x20 as proof of ((iff P) Q)
% 200.16/200.48 Found x010:=(x01 x000):((iff P) Q)
% 200.16/200.48 Found x010 as proof of ((iff P) Q)
% 200.16/200.48 Found x030:=(x03 x040):x
% 200.16/200.48 Instantiate: x:=P:Prop
% 200.16/200.48 Found (x03 x040) as proof of P
% 200.16/200.48 Found (x03 x040) as proof of P
% 200.16/200.48 Found x030:=(x03 x040):x
% 200.16/200.48 Instantiate: x:=P:Prop
% 200.16/200.48 Found (x03 x040) as proof of P
% 200.16/200.48 Found (x03 x040) as proof of P
% 200.16/200.48 Found x030:x
% 200.16/200.48 Found x030 as proof of x
% 200.16/200.48 Found x040:Q
% 200.16/200.48 Found x040 as proof of x
% 200.16/200.48 Found x040:Q
% 200.16/200.48 Found x040 as proof of Q
% 200.16/200.48 Found x040:Q
% 200.16/200.48 Found x040 as proof of x
% 200.16/200.48 Found x010:=(x01 x000):((iff P) Q)
% 200.16/200.48 Found x010 as proof of ((iff P) Q)
% 200.16/200.48 Found x010:=(x01 x020):x
% 200.16/200.48 Found (x01 x020) as proof of P
% 200.16/200.48 Found (x01 x020) as proof of P
% 200.16/200.48 Found (x01 x020) as proof of P
% 200.16/200.48 Found x010:=(x01 x000):((iff P) Q)
% 200.16/200.48 Found x010 as proof of ((iff P) Q)
% 200.16/200.48 Found x040:Q
% 200.16/200.48 Found x040 as proof of Q
% 200.93/201.27 Found x030:x
% 200.93/201.27 Found x030 as proof of x
% 200.93/201.27 Found x030:=(x03 x020):P
% 200.93/201.27 Found (x03 x020) as proof of P
% 200.93/201.27 Found (x03 x020) as proof of P
% 200.93/201.27 Found x020:=(x02 x031):Q
% 200.93/201.27 Found (x02 x031) as proof of Q
% 200.93/201.27 Found (x02 x031) as proof of Q
% 200.93/201.27 Found x000:=(x00 x011):R
% 200.93/201.27 Found (x00 x011) as proof of R
% 200.93/201.27 Found (x00 x011) as proof of R
% 200.93/201.27 Found x010:=(x01 x000):((iff P) Q)
% 200.93/201.27 Found x010 as proof of ((iff P) Q)
% 200.93/201.27 Found x040:Q
% 200.93/201.27 Found x040 as proof of x
% 200.93/201.27 Found x040:Q
% 200.93/201.27 Found x040 as proof of Q
% 200.93/201.27 Found x030:x
% 200.93/201.27 Found x030 as proof of x
% 200.93/201.27 Found x030:x
% 200.93/201.27 Instantiate: x:=P:Prop
% 200.93/201.27 Found (fun (x04:(x->Q))=> x030) as proof of P
% 200.93/201.27 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 200.93/201.27 Found x010:=(x01 x020):x
% 200.93/201.27 Found (x01 x020) as proof of R
% 200.93/201.27 Found (x01 x020) as proof of R
% 200.93/201.27 Found (x01 x020) as proof of R
% 200.93/201.27 Found x030:=(x03 x040):x
% 200.93/201.27 Instantiate: x:=P:Prop
% 200.93/201.27 Found (x03 x040) as proof of P
% 200.93/201.27 Found (x03 x040) as proof of P
% 200.93/201.27 Found x000:=(x00 x011):R
% 200.93/201.27 Found (x00 x011) as proof of R
% 200.93/201.27 Found (x00 x011) as proof of R
% 200.93/201.27 Found x040:Q
% 200.93/201.27 Found x040 as proof of Q
% 200.93/201.27 Found x030:x
% 200.93/201.27 Found x030 as proof of Q
% 200.93/201.27 Found x010:=(x01 x000):((iff P) Q)
% 200.93/201.27 Found x010 as proof of ((iff P) Q)
% 200.93/201.27 Found x040:Q
% 200.93/201.27 Found x040 as proof of x
% 200.93/201.27 Found x00:((iff Q) x)
% 200.93/201.27 Instantiate: x:=P:Prop
% 200.93/201.27 Found x00 as proof of ((iff Q) P)
% 200.93/201.27 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 200.93/201.27 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 200.93/201.27 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 200.93/201.27 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 200.93/201.27 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 200.93/201.27 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 200.93/201.27 Found x010:=(x01 x000):((iff P) Q)
% 200.93/201.27 Found x010 as proof of ((iff P) Q)
% 200.93/201.27 Found x030:=(x03 x040):x
% 200.93/201.27 Instantiate: x:=P:Prop
% 200.93/201.27 Found (x03 x040) as proof of P
% 200.93/201.27 Found (x03 x040) as proof of P
% 200.93/201.27 Found x000:=(x00 x010):R
% 200.93/201.27 Found (x00 x010) as proof of R
% 200.93/201.27 Found (x00 x010) as proof of R
% 200.93/201.27 Found x010:=(x01 x001):((iff P) Q)
% 200.93/201.27 Found (x01 x001) as proof of ((iff P) Q)
% 200.93/201.27 Found (x01 x001) as proof of ((iff P) Q)
% 200.93/201.27 Found x20:=(x2 x10):((iff P) Q)
% 200.93/201.27 Found (x2 x10) as proof of ((iff P) Q)
% 200.93/201.27 Found (x2 x10) as proof of ((iff P) Q)
% 200.93/201.27 Found x000:=(x00 x011):R
% 200.93/201.27 Found (x00 x011) as proof of R
% 200.93/201.27 Found (x00 x011) as proof of R
% 200.93/201.27 Found x010:=(x01 x001):((iff P) Q)
% 200.93/201.27 Found (x01 x001) as proof of ((iff P) Q)
% 200.93/201.27 Found (x01 x001) as proof of ((iff P) Q)
% 200.93/201.27 Found classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 200.93/201.27 Instantiate: x:=(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x)))))))):Prop
% 200.93/201.27 Found classical_choice as proof of x
% 200.93/201.27 Found (x04 classical_choice) as proof of Q
% 200.93/201.27 Found (x04 classical_choice) as proof of Q
% 200.93/201.27 Found (x2 (x04 classical_choice)) as proof of P
% 200.93/201.27 Found (fun (x04:(x->Q))=> (x2 (x04 classical_choice))) as proof of P
% 200.93/201.27 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))) as proof of ((x->Q)->P)
% 200.93/201.27 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))) as proof of ((Q->x)->((x->Q)->P))
% 202.02/202.37 Found (and_rect20 (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))) as proof of P
% 202.02/202.37 Found ((and_rect2 P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))) as proof of P
% 202.02/202.37 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))) as proof of P
% 202.02/202.37 Found (fun (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))) as proof of P
% 202.02/202.37 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))) as proof of ((Q->P)->P)
% 202.02/202.37 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))) as proof of ((P->Q)->((Q->P)->P))
% 202.02/202.37 Found (and_rect10 (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))))) as proof of P
% 202.02/202.37 Found ((and_rect1 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))))) as proof of P
% 202.02/202.37 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))))) as proof of P
% 202.02/202.37 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))))) as proof of P
% 202.02/202.37 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))))) as proof of (((iff Q) x)->P)
% 202.02/202.37 Found x010:=(x01 x000):((iff P) Q)
% 202.02/202.37 Found x010 as proof of ((iff P) Q)
% 202.02/202.37 Found x040:Q
% 202.02/202.37 Found x040 as proof of Q
% 202.02/202.37 Found (x03 x040) as proof of P
% 202.02/202.37 Found (x03 x040) as proof of P
% 202.02/202.37 Found (x03 x040) as proof of P
% 202.02/202.37 Found x010:=(x01 x000):((iff P) Q)
% 202.02/202.37 Found x010 as proof of ((iff P) Q)
% 202.02/202.37 Found x010:=(x01 x000):((iff P) Q)
% 202.02/202.37 Found x010 as proof of ((iff P) Q)
% 202.02/202.37 Found x000:=(x00 x010):R
% 202.02/202.37 Found (x00 x010) as proof of R
% 202.02/202.37 Found (x00 x010) as proof of R
% 202.02/202.37 Found x010:=(x01 x020):x
% 202.02/202.37 Found (x01 x020) as proof of R
% 202.02/202.37 Found (x01 x020) as proof of R
% 202.02/202.37 Found (x01 x020) as proof of R
% 202.02/202.37 Found x010:=(x01 x000):((iff P) Q)
% 202.02/202.37 Found x010 as proof of ((iff P) Q)
% 202.02/202.37 Found x010:=(x01 x000):((iff P) Q)
% 202.02/202.37 Found x010 as proof of ((iff P) Q)
% 202.02/202.37 Found x010:=(x01 x000):((iff P) Q)
% 202.02/202.37 Found x010 as proof of ((iff P) Q)
% 202.02/202.37 Found x030:x
% 202.02/202.37 Instantiate: x:=P:Prop
% 202.02/202.37 Found x030 as proof of P
% 202.02/202.37 Found x030:P
% 202.02/202.37 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 202.02/202.37 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 202.02/202.37 Found x030:=(x03 x040):x
% 202.02/202.37 Instantiate: x:=R:Prop
% 202.02/202.37 Found (x03 x040) as proof of R
% 202.02/202.37 Found (x03 x040) as proof of R
% 202.02/202.37 Found eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 202.02/202.37 Instantiate: x:=(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a))):Prop
% 202.02/202.37 Found eq_sym as proof of x
% 202.02/202.37 Found x010:=(x01 x000):((iff P) Q)
% 202.02/202.37 Found x010 as proof of ((iff P) Q)
% 202.02/202.37 Found x030:x
% 202.02/202.37 Instantiate: x:=P:Prop
% 202.02/202.37 Found (fun (x04:(x->Q))=> x030) as proof of P
% 202.02/202.37 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 202.02/202.37 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 203.54/203.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 203.54/203.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 203.54/203.87 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 203.54/203.87 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 203.54/203.87 Found x010:=(x01 x000):((iff P) Q)
% 203.54/203.87 Found x010 as proof of ((iff P) Q)
% 203.54/203.87 Found x010:=(x01 x001):((iff P) Q)
% 203.54/203.87 Found (x01 x001) as proof of ((iff P) Q)
% 203.54/203.87 Found (x01 x001) as proof of ((iff P) Q)
% 203.54/203.87 Found x030:=(x03 x040):x
% 203.54/203.87 Instantiate: x:=P:Prop
% 203.54/203.87 Found (x03 x040) as proof of P
% 203.54/203.87 Found (x03 x040) as proof of P
% 203.54/203.87 Found x000:=(x00 x010):R
% 203.54/203.87 Found (x00 x010) as proof of R
% 203.54/203.87 Found (x00 x010) as proof of R
% 203.54/203.87 Found x20:=(x2 x10):((iff P) Q)
% 203.54/203.87 Found (x2 x10) as proof of ((iff P) Q)
% 203.54/203.87 Found (x2 x10) as proof of ((iff P) Q)
% 203.54/203.87 Found x010:=(x01 x000):((iff P) Q)
% 203.54/203.87 Found x010 as proof of ((iff P) Q)
% 203.54/203.87 Found x010:=(x01 x001):((iff P) Q)
% 203.54/203.87 Found x010 as proof of ((iff P) Q)
% 203.54/203.87 Found x010:=(x01 x000):((iff P) Q)
% 203.54/203.87 Found x010 as proof of ((iff P) Q)
% 203.54/203.87 Found x010:=(x01 x001):((iff P) Q)
% 203.54/203.87 Found x010 as proof of ((iff P) Q)
% 203.54/203.87 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 203.54/203.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 203.54/203.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 203.54/203.87 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 203.54/203.87 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 203.54/203.87 Found x030:=(x03 x020):P
% 203.54/203.87 Found (x03 x020) as proof of P
% 203.54/203.87 Found (x03 x020) as proof of P
% 203.54/203.87 Found x040:Q
% 203.54/203.87 Found x040 as proof of Q
% 203.54/203.87 Found (x03 x040) as proof of P
% 203.54/203.87 Found (x03 x040) as proof of P
% 203.54/203.87 Found (x03 x040) as proof of P
% 203.54/203.87 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 203.54/203.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 203.54/203.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 203.54/203.87 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 203.54/203.87 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 203.54/203.87 Found x020:=(x02 x030):Q
% 203.54/203.87 Found (x02 x030) as proof of Q
% 203.54/203.87 Found (x02 x030) as proof of Q
% 203.54/203.87 Found x030:=(x03 x020):P
% 203.54/203.87 Found (x03 x020) as proof of P
% 203.54/203.87 Found (x03 x020) as proof of P
% 203.54/203.87 Found x000:=(x00 x011):R
% 203.54/203.87 Found (x00 x011) as proof of R
% 203.54/203.87 Found (x00 x011) as proof of R
% 203.54/203.87 Found x010:=(x01 x000):((iff P) Q)
% 203.54/203.87 Found x010 as proof of ((iff P) Q)
% 203.54/203.87 Found x000:=(x00 x011):R
% 203.54/203.87 Found (x00 x011) as proof of R
% 203.54/203.87 Found (x00 x011) as proof of R
% 203.54/203.87 Found x030:=(x03 x020):P
% 203.54/203.87 Found (x03 x020) as proof of P
% 203.54/203.87 Found (x03 x020) as proof of P
% 203.54/203.87 Found x010:=(x01 x001):((iff P) Q)
% 203.54/203.87 Found x010 as proof of ((iff P) Q)
% 203.54/203.87 Found x000:=(x00 x011):R
% 203.54/203.87 Found (x00 x011) as proof of R
% 203.54/203.87 Found (x00 x011) as proof of R
% 203.54/203.87 Found x010:=(x01 x000):((iff P) Q)
% 203.54/203.87 Found (x01 x000) as proof of ((iff P) Q)
% 203.54/203.87 Found (x01 x000) as proof of ((iff P) Q)
% 203.54/203.87 Found x000:=(x00 x011):R
% 203.54/203.87 Found (x00 x011) as proof of R
% 203.54/203.87 Found (x00 x011) as proof of R
% 203.54/203.87 Found x010:=(x01 x000):((iff P) Q)
% 203.54/203.87 Found x010 as proof of ((iff P) Q)
% 203.54/203.87 Found x010:=(x01 x000):((iff P) Q)
% 203.54/203.87 Found x010 as proof of ((iff P) Q)
% 203.54/203.87 Found x010:=(x01 x000):((iff P) Q)
% 203.54/203.87 Found x010 as proof of ((iff P) Q)
% 203.54/203.87 Found x020:=(x02 x030):Q
% 203.54/203.87 Found (x02 x030) as proof of Q
% 203.54/203.87 Found (x02 x030) as proof of Q
% 203.54/203.87 Found x030:=(x03 x020):P
% 203.54/203.87 Found (x03 x020) as proof of P
% 203.54/203.87 Found (x03 x020) as proof of P
% 203.54/203.87 Found x010:=(x01 x001):((iff P) Q)
% 203.54/203.87 Found x010 as proof of ((iff P) Q)
% 203.54/203.87 Found x040:Q
% 203.54/203.87 Instantiate: x:=Q:Prop
% 203.54/203.87 Found x040 as proof of x
% 203.54/203.87 Found x040:Q
% 203.54/203.87 Instantiate: x:=Q:Prop
% 203.54/203.87 Found x040 as proof of x
% 203.54/203.87 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 203.54/203.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 203.54/203.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 203.54/203.87 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 203.54/203.87 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 203.54/203.87 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 203.54/203.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 203.54/203.87 Found (iff_refl Q) as proof of ((iff Q) x)
% 203.54/203.87 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 203.54/203.87 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 203.54/203.87 Found x010:=(x01 x000):((iff P) Q)
% 203.54/203.87 Found x010 as proof of ((iff P) Q)
% 203.54/203.87 Found x000:R
% 203.54/203.87 Instantiate: x:=R:Prop
% 203.54/203.87 Found x000 as proof of x
% 203.54/203.87 Found (x04 x000) as proof of Q
% 203.54/203.87 Found (x04 x000) as proof of Q
% 203.54/203.87 Found (x2 (x04 x000)) as proof of P
% 203.54/203.87 Found (fun (x2:(Q->P))=> (x2 (x04 x000))) as proof of P
% 203.54/203.87 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((Q->P)->P)
% 203.54/203.87 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((P->Q)->((Q->P)->P))
% 204.93/205.26 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 204.93/205.26 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 204.93/205.26 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 204.93/205.26 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 204.93/205.26 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 204.93/205.26 Found x010:=(x01 x000):((iff P) Q)
% 204.93/205.26 Found x010 as proof of ((iff P) Q)
% 204.93/205.26 Found x20:=(x2 x10):((iff P) Q)
% 204.93/205.26 Found x20 as proof of ((iff P) Q)
% 204.93/205.26 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 204.93/205.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 204.93/205.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 204.93/205.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 204.93/205.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 204.93/205.26 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 204.93/205.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 204.93/205.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 204.93/205.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 204.93/205.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 204.93/205.26 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 204.93/205.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 204.93/205.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 204.93/205.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 204.93/205.26 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 204.93/205.26 Found x030:=(x03 x040):x
% 204.93/205.26 Instantiate: x:=P:Prop
% 204.93/205.26 Found (x03 x040) as proof of P
% 204.93/205.26 Found (x03 x040) as proof of P
% 204.93/205.26 Found x020:Q
% 204.93/205.26 Found x020 as proof of Q
% 204.93/205.26 Found (x01 x020) as proof of P
% 204.93/205.26 Found (x01 x020) as proof of P
% 204.93/205.26 Found (x01 x020) as proof of P
% 204.93/205.26 Found x010:=(x01 x000):((iff P) Q)
% 204.93/205.26 Found x010 as proof of ((iff P) Q)
% 204.93/205.26 Found x010:=(x01 x000):((iff P) Q)
% 204.93/205.26 Found x010 as proof of ((iff P) Q)
% 204.93/205.26 Found x010:=(x01 x000):((iff P) Q)
% 204.93/205.26 Found x010 as proof of ((iff P) Q)
% 204.93/205.26 Found x010:=(x01 x000):((iff P) Q)
% 204.93/205.26 Found (x01 x000) as proof of ((iff P) Q)
% 204.93/205.26 Found (x01 x000) as proof of ((iff P) Q)
% 204.93/205.26 Found x030:=(x03 x020):P
% 204.93/205.26 Found (x03 x020) as proof of P
% 204.93/205.26 Found (x03 x020) as proof of P
% 204.93/205.26 Found x020:=(x02 x030):Q
% 204.93/205.26 Found (x02 x030) as proof of Q
% 204.93/205.26 Found (x02 x030) as proof of Q
% 204.93/205.26 Found iff_sym200:=(iff_sym20 x010):((iff Q) P)
% 204.93/205.26 Found (iff_sym20 x010) as proof of ((iff Q) P)
% 204.93/205.26 Found ((iff_sym2 Q) x010) as proof of ((iff Q) P)
% 204.93/205.26 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 204.93/205.26 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 204.93/205.26 Found x010:=(x01 x002):((iff P) Q)
% 204.93/205.26 Found x010 as proof of ((iff P) Q)
% 204.93/205.26 Found x020:Q
% 204.93/205.26 Found x020 as proof of Q
% 204.93/205.26 Found (x01 x020) as proof of P
% 204.93/205.26 Found (x01 x020) as proof of P
% 204.93/205.26 Found (x01 x020) as proof of P
% 204.93/205.26 Found x010:=(x01 x000):((iff P) Q)
% 204.93/205.26 Found x010 as proof of ((iff P) Q)
% 204.93/205.26 Found x20:=(x2 x10):((iff P) Q)
% 204.93/205.26 Found x20 as proof of ((iff P) Q)
% 204.93/205.26 Found x010:=(x01 x000):((iff P) Q)
% 204.93/205.26 Found (x01 x000) as proof of ((iff P) Q)
% 204.93/205.26 Found (x01 x000) as proof of ((iff P) Q)
% 204.93/205.26 Found x020:Q
% 204.93/205.26 Found x020 as proof of Q
% 204.93/205.26 Found (x01 x020) as proof of R
% 204.93/205.26 Found (x01 x020) as proof of R
% 204.93/205.26 Found (x01 x020) as proof of R
% 204.93/205.26 Found x021:Q
% 204.93/205.26 Found x021 as proof of Q
% 204.93/205.26 Found (x01 x021) as proof of P
% 204.93/205.26 Found (x01 x021) as proof of P
% 204.93/205.26 Found (x01 x021) as proof of P
% 204.93/205.26 Found x020:Q
% 204.93/205.26 Found x020 as proof of Q
% 204.93/205.26 Found (x01 x020) as proof of P
% 204.93/205.26 Found (x01 x020) as proof of P
% 204.93/205.26 Found (x01 x020) as proof of P
% 204.93/205.26 Found x000:=(x00 x011):R
% 204.93/205.26 Found (x00 x011) as proof of R
% 204.93/205.26 Found (x00 x011) as proof of R
% 204.93/205.26 Found x000:=(x00 x011):R
% 204.93/205.26 Found (x00 x011) as proof of R
% 204.93/205.26 Found (x00 x011) as proof of R
% 204.93/205.26 Found x010:=(x01 x001):((iff P) Q)
% 204.93/205.26 Found x010 as proof of ((iff P) Q)
% 204.93/205.26 Found x021:Q
% 204.93/205.26 Found x021 as proof of Q
% 204.93/205.26 Found (x01 x021) as proof of P
% 204.93/205.26 Found (x01 x021) as proof of P
% 204.93/205.26 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 204.93/205.26 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 204.93/205.26 Found x020:Q
% 204.93/205.26 Found x020 as proof of Q
% 204.93/205.26 Found (x01 x020) as proof of ((iff P) Q)
% 204.93/205.26 Found (x01 x020) as proof of ((iff P) Q)
% 204.93/205.26 Found (x01 x020) as proof of ((iff P) Q)
% 204.93/205.26 Found x020:Q
% 204.93/205.26 Found x020 as proof of Q
% 207.01/207.36 Found (x01 x020) as proof of P
% 207.01/207.36 Found (x01 x020) as proof of P
% 207.01/207.36 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 207.01/207.36 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 207.01/207.36 Found x020:Q
% 207.01/207.36 Found x020 as proof of Q
% 207.01/207.36 Found (x01 x020) as proof of P
% 207.01/207.36 Found (x01 x020) as proof of P
% 207.01/207.36 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 207.01/207.36 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 207.01/207.36 Found x000:=(x00 x010):R
% 207.01/207.36 Found (x00 x010) as proof of R
% 207.01/207.36 Found (x00 x010) as proof of R
% 207.01/207.36 Found x000:=(x00 x011):R
% 207.01/207.36 Found (x00 x011) as proof of R
% 207.01/207.36 Found (x00 x011) as proof of R
% 207.01/207.36 Found x000:=(x00 x011):R
% 207.01/207.36 Found (x00 x011) as proof of R
% 207.01/207.36 Found (x00 x011) as proof of R
% 207.01/207.36 Found x010:=(x01 x001):((iff P) Q)
% 207.01/207.36 Found x010 as proof of ((iff P) Q)
% 207.01/207.36 Found x010:=(x01 x000):((iff P) Q)
% 207.01/207.36 Found x010 as proof of ((iff P) Q)
% 207.01/207.36 Found x021:Q
% 207.01/207.36 Instantiate: x:=Q:Prop
% 207.01/207.36 Found x021 as proof of x
% 207.01/207.36 Found x000:=(x00 x011):R
% 207.01/207.36 Found (x00 x011) as proof of R
% 207.01/207.36 Found (x00 x011) as proof of R
% 207.01/207.36 Found x011:x
% 207.01/207.36 Found x011 as proof of x
% 207.01/207.36 Found x011:x
% 207.01/207.36 Found x011 as proof of x
% 207.01/207.36 Found x021:Q
% 207.01/207.36 Found x021 as proof of Q
% 207.01/207.36 Found x011:x
% 207.01/207.36 Found x011 as proof of Q
% 207.01/207.36 Found x02:((iff Q) x)
% 207.01/207.36 Instantiate: x:=P:Prop
% 207.01/207.36 Found x02 as proof of ((iff Q) P)
% 207.01/207.36 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 207.01/207.36 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 207.01/207.36 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 207.01/207.36 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 207.01/207.36 Found x011:x
% 207.01/207.36 Found x011 as proof of Q
% 207.01/207.36 Found x020:Q
% 207.01/207.36 Found x020 as proof of Q
% 207.01/207.36 Found x020:Q
% 207.01/207.36 Found x020 as proof of x
% 207.01/207.36 Found x021:Q
% 207.01/207.36 Found x021 as proof of Q
% 207.01/207.36 Found x010:x
% 207.01/207.36 Found x010 as proof of x
% 207.01/207.36 Found x010:x
% 207.01/207.36 Found x010 as proof of x
% 207.01/207.36 Found x010:x
% 207.01/207.36 Found x010 as proof of Q
% 207.01/207.36 Found x010:x
% 207.01/207.36 Found x010 as proof of Q
% 207.01/207.36 Found x021:Q
% 207.01/207.36 Found x021 as proof of x
% 207.01/207.36 Found x020:Q
% 207.01/207.36 Found x020 as proof of x
% 207.01/207.36 Found x20:=(x2 x10):((iff P) Q)
% 207.01/207.36 Found (x2 x10) as proof of ((iff P) Q)
% 207.01/207.36 Found (x2 x10) as proof of ((iff P) Q)
% 207.01/207.36 Found x020:Q
% 207.01/207.36 Found x020 as proof of Q
% 207.01/207.36 Found x021:Q
% 207.01/207.36 Found x021 as proof of x
% 207.01/207.36 Found x010:=(x01 x001):((iff P) Q)
% 207.01/207.36 Found x010 as proof of ((iff P) Q)
% 207.01/207.36 Found x010:=(x01 x001):((iff P) Q)
% 207.01/207.36 Found (x01 x001) as proof of ((iff P) Q)
% 207.01/207.36 Found (x01 x001) as proof of ((iff P) Q)
% 207.01/207.36 Found x010:=(x01 x001):((iff P) Q)
% 207.01/207.36 Found x010 as proof of ((iff P) Q)
% 207.01/207.36 Found x010:=(x01 x001):((iff P) Q)
% 207.01/207.36 Found (x01 x001) as proof of ((iff P) Q)
% 207.01/207.36 Found (x01 x001) as proof of ((iff P) Q)
% 207.01/207.36 Found x010:=(x01 x001):((iff P) Q)
% 207.01/207.36 Found (x01 x001) as proof of ((iff P) Q)
% 207.01/207.36 Found (x01 x001) as proof of ((iff P) Q)
% 207.01/207.36 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 207.01/207.36 Found (iff_refl Q) as proof of ((iff Q) x)
% 207.01/207.36 Found (iff_refl Q) as proof of ((iff Q) x)
% 207.01/207.36 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 207.01/207.36 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 207.01/207.36 Found x000:=(x00 x010):R
% 207.01/207.36 Found (x00 x010) as proof of R
% 207.01/207.36 Found (x00 x010) as proof of R
% 207.01/207.36 Found x010:=(x01 x000):((iff P) Q)
% 207.01/207.36 Found x010 as proof of ((iff P) Q)
% 207.01/207.36 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 207.01/207.36 Found (iff_refl Q) as proof of ((iff Q) x)
% 207.01/207.36 Found (iff_refl Q) as proof of ((iff Q) x)
% 207.01/207.36 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 207.01/207.36 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 207.01/207.36 Found x000:=(x00 x011):R
% 207.01/207.36 Found (x00 x011) as proof of R
% 207.01/207.36 Found (x00 x011) as proof of R
% 207.01/207.36 Found x010:=(x01 x001):((iff P) Q)
% 207.01/207.36 Found x010 as proof of ((iff P) Q)
% 207.01/207.36 Found x020:Q
% 207.01/207.36 Found x020 as proof of x
% 207.01/207.36 Found x020:Q
% 207.01/207.36 Found x020 as proof of Q
% 207.01/207.36 Found x011:x
% 207.01/207.36 Found x011 as proof of x
% 207.01/207.36 Found x011:x
% 207.01/207.36 Found x011 as proof of Q
% 207.01/207.36 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 207.01/207.36 Found (iff_refl Q) as proof of ((iff Q) x)
% 207.01/207.36 Found (iff_refl Q) as proof of ((iff Q) x)
% 207.01/207.36 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 207.01/207.36 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 207.01/207.36 Found x010:=(x01 x001):((iff P) Q)
% 207.01/207.36 Found (x01 x001) as proof of ((iff P) Q)
% 207.01/207.36 Found (x01 x001) as proof of ((iff P) Q)
% 207.01/207.36 Found x010:=(x01 x001):((iff P) Q)
% 207.01/207.36 Found (x01 x001) as proof of ((iff P) Q)
% 207.01/207.36 Found (x01 x001) as proof of ((iff P) Q)
% 207.01/207.36 Found x011:x
% 207.01/207.36 Found x011 as proof of Q
% 207.01/207.36 Found x011:x
% 207.01/207.36 Found x011 as proof of x
% 207.01/207.36 Found x000:=(x00 x010):R
% 207.01/207.36 Found (x00 x010) as proof of R
% 207.01/207.36 Found (x00 x010) as proof of R
% 209.20/209.57 Found x02:((iff Q) x)
% 209.20/209.57 Instantiate: x:=P:Prop
% 209.20/209.57 Found x02 as proof of ((iff Q) P)
% 209.20/209.57 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 209.20/209.57 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 209.20/209.57 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 209.20/209.57 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 209.20/209.57 Found x010:=(x01 x001):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x020:Q
% 209.20/209.57 Found x020 as proof of Q
% 209.20/209.57 Found (x01 x020) as proof of R
% 209.20/209.57 Found (x01 x020) as proof of R
% 209.20/209.57 Found (x01 x020) as proof of R
% 209.20/209.57 Found x000:=(x00 x011):R
% 209.20/209.57 Found (x00 x011) as proof of R
% 209.20/209.57 Found (x00 x011) as proof of R
% 209.20/209.57 Found x030:=(x03 x040):x
% 209.20/209.57 Instantiate: x:=P:Prop
% 209.20/209.57 Found (x03 x040) as proof of P
% 209.20/209.57 Found (x03 x040) as proof of P
% 209.20/209.57 Found x010:=(x01 x000):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 209.20/209.57 Found (iff_refl Q) as proof of ((iff Q) x)
% 209.20/209.57 Found (iff_refl Q) as proof of ((iff Q) x)
% 209.20/209.57 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 209.20/209.57 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 209.20/209.57 Found x030:=(x03 x020):P
% 209.20/209.57 Found (x03 x020) as proof of P
% 209.20/209.57 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 209.20/209.57 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 209.20/209.57 Found x010:=(x01 x000):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x010:=(x01 x000):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x02:((iff Q) x)
% 209.20/209.57 Instantiate: x:=P:Prop
% 209.20/209.57 Found x02 as proof of ((iff Q) P)
% 209.20/209.57 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 209.20/209.57 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 209.20/209.57 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 209.20/209.57 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 209.20/209.57 Found x10:=(x1 x21):R
% 209.20/209.57 Found (x1 x21) as proof of R
% 209.20/209.57 Found (x1 x21) as proof of R
% 209.20/209.57 Found x000:=(x00 x011):R
% 209.20/209.57 Found (x00 x011) as proof of R
% 209.20/209.57 Found (x00 x011) as proof of R
% 209.20/209.57 Found x010:=(x01 x001):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x010:=(x01 x000):((iff P) Q)
% 209.20/209.57 Found (x01 x000) as proof of ((iff P) Q)
% 209.20/209.57 Found (x01 x000) as proof of ((iff P) Q)
% 209.20/209.57 Found x010:=(x01 x000):((iff P) Q)
% 209.20/209.57 Found (x01 x000) as proof of ((iff P) Q)
% 209.20/209.57 Found (x01 x000) as proof of ((iff P) Q)
% 209.20/209.57 Found x010:=(x01 x001):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x010:=(x01 x002):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x20:=(x2 x11):((iff P) Q)
% 209.20/209.57 Found (x2 x11) as proof of ((iff P) Q)
% 209.20/209.57 Found (x2 x11) as proof of ((iff P) Q)
% 209.20/209.57 Found x010:=(x01 x000):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x010:=(x01 x003):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x030:=(x03 x020):P
% 209.20/209.57 Found (x03 x020) as proof of P
% 209.20/209.57 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 209.20/209.57 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 209.20/209.57 Found x010:=(x01 x001):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x010:=(x01 x000):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x010:=(x01 x000):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x030:=(x03 x040):x
% 209.20/209.57 Instantiate: x:=P:Prop
% 209.20/209.57 Found (x03 x040) as proof of P
% 209.20/209.57 Found (x03 x040) as proof of P
% 209.20/209.57 Found x030:=(x03 x040):x
% 209.20/209.57 Instantiate: x:=P:Prop
% 209.20/209.57 Found (x03 x040) as proof of P
% 209.20/209.57 Found (x03 x040) as proof of P
% 209.20/209.57 Found x030:=(x03 x040):x
% 209.20/209.57 Instantiate: x:=P:Prop
% 209.20/209.57 Found (x03 x040) as proof of P
% 209.20/209.57 Found (x03 x040) as proof of P
% 209.20/209.57 Found x030:x
% 209.20/209.57 Found x030 as proof of Q
% 209.20/209.57 Found x030:x
% 209.20/209.57 Found x030 as proof of x
% 209.20/209.57 Found x040:Q
% 209.20/209.57 Found x040 as proof of x
% 209.20/209.57 Found x040:Q
% 209.20/209.57 Found x040 as proof of Q
% 209.20/209.57 Found x010:=(x01 x000):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x20:=(x2 x11):((iff P) Q)
% 209.20/209.57 Found (x2 x11) as proof of ((iff P) Q)
% 209.20/209.57 Found (x2 x11) as proof of ((iff P) Q)
% 209.20/209.57 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 209.20/209.57 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 209.20/209.57 Found or_ind as proof of x
% 209.20/209.57 Found (x04 or_ind) as proof of Q
% 209.20/209.57 Found (x04 or_ind) as proof of Q
% 209.20/209.57 Found x010:=(x01 x000):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x010:=(x01 x000):((iff P) Q)
% 209.20/209.57 Found x010 as proof of ((iff P) Q)
% 209.20/209.57 Found x000:=(x00 x011):R
% 209.20/209.57 Found (x00 x011) as proof of R
% 209.20/209.57 Found (x00 x011) as proof of R
% 209.20/209.57 Found x030:x
% 209.20/209.57 Found x030 as proof of Q
% 209.20/209.57 Found x030:x
% 209.20/209.57 Found x030 as proof of x
% 209.52/209.88 Found x030:x
% 209.52/209.88 Found x030 as proof of x
% 209.52/209.88 Found x030:x
% 209.52/209.88 Found x030 as proof of Q
% 209.52/209.88 Found x010:=(x01 x001):((iff P) Q)
% 209.52/209.88 Found (x01 x001) as proof of ((iff P) Q)
% 209.52/209.88 Found (x01 x001) as proof of ((iff P) Q)
% 209.52/209.88 Found x030:x
% 209.52/209.88 Found x030 as proof of x
% 209.52/209.88 Found x040:Q
% 209.52/209.88 Found x040 as proof of Q
% 209.52/209.88 Found x010:x
% 209.52/209.88 Instantiate: x:=P:Prop
% 209.52/209.88 Found x010 as proof of P
% 209.52/209.88 Found x010:x
% 209.52/209.88 Instantiate: x:=P:Prop
% 209.52/209.88 Found x010 as proof of P
% 209.52/209.88 Found eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 209.52/209.88 Instantiate: x:=(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b)))):Prop
% 209.52/209.88 Found eq_substitution as proof of x
% 209.52/209.88 Found (x06 eq_substitution) as proof of Q
% 209.52/209.88 Found (x06 eq_substitution) as proof of Q
% 209.52/209.88 Found (x03 (x06 eq_substitution)) as proof of P
% 209.52/209.88 Found (fun (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of P
% 209.52/209.88 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((x->Q)->P)
% 209.52/209.88 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))) as proof of ((Q->x)->((x->Q)->P))
% 209.52/209.88 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 209.52/209.88 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 209.52/209.88 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))) as proof of P
% 209.52/209.88 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of P
% 209.52/209.88 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of (((iff Q) x)->P)
% 209.52/209.88 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((Q->P)->(((iff Q) x)->P))
% 209.52/209.88 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution))))) as proof of ((P->Q)->((Q->P)->(((iff Q) x)->P)))
% 209.52/209.88 Found (and_rect10 (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 209.52/209.88 Found ((and_rect1 (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 209.52/209.88 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 209.52/209.88 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 209.52/209.88 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 eq_substitution)))))) as proof of (((iff Q) x)->P)
% 210.50/210.85 Found x010:=(x01 x000):((iff P) Q)
% 210.50/210.85 Found x010 as proof of ((iff P) Q)
% 210.50/210.85 Found x11:R
% 210.50/210.85 Instantiate: x:=R:Prop
% 210.50/210.85 Found x11 as proof of x
% 210.50/210.85 Found x010:x
% 210.50/210.85 Instantiate: x:=P:Prop
% 210.50/210.85 Found x010 as proof of P
% 210.50/210.85 Found x11:R
% 210.50/210.85 Instantiate: x:=R:Prop
% 210.50/210.85 Found x11 as proof of x
% 210.50/210.85 Found x11:R
% 210.50/210.85 Instantiate: x:=R:Prop
% 210.50/210.85 Found x11 as proof of x
% 210.50/210.85 Found x010:x
% 210.50/210.85 Instantiate: x:=P:Prop
% 210.50/210.85 Found (fun (x02:(x->Q))=> x010) as proof of P
% 210.50/210.85 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 210.50/210.85 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 210.50/210.85 Found (iff_refl Q) as proof of ((iff Q) x)
% 210.50/210.85 Found (iff_refl Q) as proof of ((iff Q) x)
% 210.50/210.85 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 210.50/210.85 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 210.50/210.85 Found x000:=(x00 x011):R
% 210.50/210.85 Found (x00 x011) as proof of R
% 210.50/210.85 Found (x00 x011) as proof of R
% 210.50/210.85 Found x040:Q
% 210.50/210.85 Found x040 as proof of x
% 210.50/210.85 Found x000:=(x00 x011):R
% 210.50/210.85 Found (x00 x011) as proof of R
% 210.50/210.85 Found (x00 x011) as proof of R
% 210.50/210.85 Found x010:=(x01 x001):((iff P) Q)
% 210.50/210.85 Found (x01 x001) as proof of ((iff P) Q)
% 210.50/210.85 Found (x01 x001) as proof of ((iff P) Q)
% 210.50/210.85 Found x010:=(x01 x000):((iff P) Q)
% 210.50/210.85 Found (x01 x000) as proof of ((iff P) Q)
% 210.50/210.85 Found (x01 x000) as proof of ((iff P) Q)
% 210.50/210.85 Found x030:x
% 210.50/210.85 Found x030 as proof of Q
% 210.50/210.85 Found x030:x
% 210.50/210.85 Found x030 as proof of Q
% 210.50/210.85 Found x010:=(x01 x001):((iff P) Q)
% 210.50/210.85 Found (x01 x001) as proof of ((iff P) Q)
% 210.50/210.85 Found (x01 x001) as proof of ((iff P) Q)
% 210.50/210.85 Found x030:x
% 210.50/210.85 Found x030 as proof of x
% 210.50/210.85 Found x010:=(x01 x000):((iff P) Q)
% 210.50/210.85 Found x010 as proof of ((iff P) Q)
% 210.50/210.85 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 210.50/210.85 Found (iff_refl Q) as proof of ((iff Q) x)
% 210.50/210.85 Found (iff_refl Q) as proof of ((iff Q) x)
% 210.50/210.85 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 210.50/210.85 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 210.50/210.85 Found x030:=(x03 x020):P
% 210.50/210.85 Found (x03 x020) as proof of P
% 210.50/210.85 Found (x03 x020) as proof of P
% 210.50/210.85 Found x020:=(x02 x030):Q
% 210.50/210.85 Found (x02 x030) as proof of Q
% 210.50/210.85 Found (x02 x030) as proof of Q
% 210.50/210.85 Found x20:=(x2 x10):((iff P) Q)
% 210.50/210.85 Found x20 as proof of ((iff P) Q)
% 210.50/210.85 Found x010:=(x01 x000):((iff P) Q)
% 210.50/210.85 Found x010 as proof of ((iff P) Q)
% 210.50/210.85 Found x02:((iff Q) x)
% 210.50/210.85 Instantiate: x:=P:Prop
% 210.50/210.85 Found x02 as proof of ((iff Q) P)
% 210.50/210.85 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 210.50/210.85 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 210.50/210.85 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 210.50/210.85 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 210.50/210.85 Found x010:x
% 210.50/210.85 Instantiate: x:=P:Prop
% 210.50/210.85 Found (fun (x02:(x->Q))=> x010) as proof of P
% 210.50/210.85 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 210.50/210.85 Found x000:=(x00 x011):R
% 210.50/210.85 Found (x00 x011) as proof of R
% 210.50/210.85 Found (x00 x011) as proof of R
% 210.50/210.85 Found x010:=(x01 x001):((iff P) Q)
% 210.50/210.85 Found x010 as proof of ((iff P) Q)
% 210.50/210.85 Found x030:x
% 210.50/210.85 Found x030 as proof of Q
% 210.50/210.85 Found x030:x
% 210.50/210.85 Found x030 as proof of x
% 210.50/210.85 Found x010:=(x01 x001):((iff P) Q)
% 210.50/210.85 Found x010 as proof of ((iff P) Q)
% 210.50/210.85 Found x000:=(x00 x011):R
% 210.50/210.85 Found (x00 x011) as proof of R
% 210.50/210.85 Found (x00 x011) as proof of R
% 210.50/210.85 Found x20:=(x2 x10):((iff P) Q)
% 210.50/210.85 Instantiate: x:=((iff P) Q):Prop
% 210.50/210.85 Found x20 as proof of x
% 210.50/210.85 Found (x02 x20) as proof of Q
% 210.50/210.85 Found (x02 x20) as proof of Q
% 210.50/210.85 Found (x4 (x02 x20)) as proof of P
% 210.50/210.85 Found (fun (x02:(x->Q))=> (x4 (x02 x20))) as proof of P
% 210.50/210.85 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20))) as proof of ((x->Q)->P)
% 210.50/210.85 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20))) as proof of ((Q->x)->((x->Q)->P))
% 210.50/210.85 Found (and_rect20 (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20)))) as proof of P
% 210.50/210.85 Found ((and_rect2 P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20)))) as proof of P
% 210.50/210.85 Found (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20)))) as proof of P
% 210.50/210.85 Found (fun (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20))))) as proof of P
% 210.50/210.85 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20))))) as proof of ((Q->P)->P)
% 210.50/210.85 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20))))) as proof of ((P->Q)->((Q->P)->P))
% 210.74/211.11 Found (and_rect10 (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20)))))) as proof of P
% 210.74/211.11 Found ((and_rect1 P) (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20)))))) as proof of P
% 210.74/211.11 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20)))))) as proof of P
% 210.74/211.11 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 (x2 x10))))))) as proof of P
% 210.74/211.11 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 (x2 x10))))))) as proof of P
% 210.74/211.11 Found x010:=(x01 x000):((iff P) Q)
% 210.74/211.11 Found x010 as proof of ((iff P) Q)
% 210.74/211.11 Found x000:R
% 210.74/211.11 Instantiate: x:=R:Prop
% 210.74/211.11 Found x000 as proof of x
% 210.74/211.11 Found (x06 x000) as proof of Q
% 210.74/211.11 Found (x06 x000) as proof of Q
% 210.74/211.11 Found (x05 (x06 x000)) as proof of P
% 210.74/211.11 Found (fun (x06:(x->Q))=> (x05 (x06 x000))) as proof of P
% 210.74/211.11 Found (fun (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((x->Q)->P)
% 210.74/211.11 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((Q->P)->((x->Q)->P))
% 210.74/211.11 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((P->Q)->((Q->P)->((x->Q)->P)))
% 210.74/211.11 Found (and_rect20 (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 210.74/211.11 Found ((and_rect2 ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 210.74/211.11 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 210.74/211.11 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 210.74/211.11 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 210.74/211.11 Found classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 211.27/211.62 Instantiate: x:=(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x)))))))):Prop
% 211.27/211.62 Found classical_choice as proof of x
% 211.27/211.62 Found (x04 classical_choice) as proof of Q
% 211.27/211.62 Found (x04 classical_choice) as proof of Q
% 211.27/211.62 Found (x2 (x04 classical_choice)) as proof of P
% 211.27/211.62 Found (fun (x04:(x->Q))=> (x2 (x04 classical_choice))) as proof of P
% 211.27/211.62 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))) as proof of ((x->Q)->P)
% 211.27/211.62 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))) as proof of ((Q->x)->((x->Q)->P))
% 211.27/211.62 Found (and_rect20 (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))) as proof of P
% 211.27/211.62 Found ((and_rect2 P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))) as proof of P
% 211.27/211.62 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))) as proof of P
% 211.27/211.62 Found (fun (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))) as proof of P
% 211.27/211.62 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))) as proof of ((Q->P)->P)
% 211.27/211.62 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))) as proof of ((P->Q)->((Q->P)->P))
% 211.27/211.62 Found (and_rect10 (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))))) as proof of P
% 211.27/211.62 Found ((and_rect1 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))))) as proof of P
% 211.27/211.62 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice)))))) as proof of P
% 211.27/211.62 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))))) as proof of P
% 211.27/211.62 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x02)) P) (fun (x03:(Q->x)) (x04:(x->Q))=> (x2 (x04 classical_choice))))))) as proof of (((iff Q) x)->P)
% 211.27/211.62 Found x20:=(x2 x10):((iff P) Q)
% 211.27/211.62 Found x20 as proof of ((iff P) Q)
% 211.27/211.62 Found x010:=(x01 x000):((iff P) Q)
% 211.27/211.62 Found x010 as proof of ((iff P) Q)
% 211.27/211.62 Found x010:=(x01 x001):((iff P) Q)
% 211.27/211.62 Found (x01 x001) as proof of ((iff P) Q)
% 211.27/211.62 Found (x01 x001) as proof of ((iff P) Q)
% 211.27/211.62 Found x010:=(x01 x001):((iff P) Q)
% 211.27/211.62 Found (x01 x001) as proof of ((iff P) Q)
% 211.27/211.62 Found (x01 x001) as proof of ((iff P) Q)
% 211.27/211.62 Found x020:=(x02 x030):Q
% 211.27/211.62 Found (x02 x030) as proof of Q
% 211.27/211.62 Found (x02 x030) as proof of Q
% 211.27/211.62 Found x000:=(x00 x010):R
% 211.27/211.62 Found (x00 x010) as proof of R
% 211.27/211.62 Found (x00 x010) as proof of R
% 211.27/211.62 Found x030:=(x03 x020):P
% 211.27/211.62 Found (x03 x020) as proof of P
% 211.27/211.62 Found (x03 x020) as proof of P
% 211.27/211.62 Found x000:=(x00 x010):R
% 211.27/211.62 Found (x00 x010) as proof of R
% 211.27/211.62 Found (x00 x010) as proof of R
% 211.27/211.62 Found x030:=(x03 x020):P
% 211.27/211.62 Found (x03 x020) as proof of P
% 211.27/211.62 Found (x03 x020) as proof of P
% 211.27/211.62 Found x010:=(x01 x000):((iff P) Q)
% 211.27/211.62 Found x010 as proof of ((iff P) Q)
% 211.27/211.62 Found x010:=(x01 x000):((iff P) Q)
% 211.27/211.62 Found x010 as proof of ((iff P) Q)
% 211.86/212.19 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 211.86/212.19 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 211.86/212.19 Found or_ind as proof of x
% 211.86/212.19 Found (x04 or_ind) as proof of Q
% 211.86/212.19 Found (x04 or_ind) as proof of Q
% 211.86/212.19 Found x010:=(x01 x001):((iff P) Q)
% 211.86/212.19 Found (x01 x001) as proof of ((iff P) Q)
% 211.86/212.19 Found (x01 x001) as proof of ((iff P) Q)
% 211.86/212.19 Found x010:=(x01 x001):((iff P) Q)
% 211.86/212.19 Found (x01 x001) as proof of ((iff P) Q)
% 211.86/212.19 Found (x01 x001) as proof of ((iff P) Q)
% 211.86/212.19 Found x020:=(x02 x030):Q
% 211.86/212.19 Found (x02 x030) as proof of Q
% 211.86/212.19 Found (x02 x030) as proof of Q
% 211.86/212.19 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 211.86/212.19 Found (iff_refl Q) as proof of ((iff Q) x)
% 211.86/212.19 Found (iff_refl Q) as proof of ((iff Q) x)
% 211.86/212.19 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 211.86/212.19 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 211.86/212.19 Found x02:((iff Q) x)
% 211.86/212.19 Instantiate: x:=P:Prop
% 211.86/212.19 Found x02 as proof of ((iff Q) P)
% 211.86/212.19 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 211.86/212.19 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 211.86/212.19 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 211.86/212.19 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 211.86/212.19 Found x010:=(x01 x000):((iff P) Q)
% 211.86/212.19 Found x010 as proof of ((iff P) Q)
% 211.86/212.19 Found x010:=(x01 x000):((iff P) Q)
% 211.86/212.19 Found x010 as proof of ((iff P) Q)
% 211.86/212.19 Found x010:=(x01 x001):((iff P) Q)
% 211.86/212.19 Found x010 as proof of ((iff P) Q)
% 211.86/212.19 Found x010:=(x01 x000):((iff P) Q)
% 211.86/212.19 Found x010 as proof of ((iff P) Q)
% 211.86/212.19 Found x010:=(x01 x000):((iff P) Q)
% 211.86/212.19 Found x010 as proof of ((iff P) Q)
% 211.86/212.19 Found x030:=(x03 x020):P
% 211.86/212.19 Found (x03 x020) as proof of P
% 211.86/212.19 Found (x03 x020) as proof of P
% 211.86/212.19 Found x20:=(x2 x10):((iff P) Q)
% 211.86/212.19 Instantiate: x:=((iff P) Q):Prop
% 211.86/212.19 Found x20 as proof of x
% 211.86/212.19 Found (x04 x20) as proof of Q
% 211.86/212.19 Found (x04 x20) as proof of Q
% 211.86/212.19 Found (x02 (x04 x20)) as proof of P
% 211.86/212.19 Found (fun (x04:(x->Q))=> (x02 (x04 x20))) as proof of P
% 211.86/212.19 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20))) as proof of ((x->Q)->P)
% 211.86/212.19 Found (fun (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20))) as proof of ((Q->x)->((x->Q)->P))
% 211.86/212.19 Found (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 211.86/212.19 Found (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 211.86/212.19 Found (and_rect20 (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20)))) as proof of ((Q->x)->((x->Q)->P))
% 211.86/212.19 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20)))) as proof of ((Q->x)->((x->Q)->P))
% 211.86/212.19 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 x20)))) as proof of ((Q->x)->((x->Q)->P))
% 211.86/212.19 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10))))) as proof of ((Q->x)->((x->Q)->P))
% 211.86/212.19 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10))))) as proof of ((Q->x)->((x->Q)->P))
% 211.86/212.19 Found (and_rect10 (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10)))))) as proof of P
% 211.86/212.19 Found ((and_rect1 P) (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10)))))) as proof of P
% 211.86/212.19 Found (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x00)) P) (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10)))))) as proof of P
% 211.86/212.19 Found (fun (x2:(R->((iff P) Q)))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x00)) P) (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10))))))) as proof of P
% 213.26/213.62 Found (fun (x2:(R->((iff P) Q)))=> (((fun (P0:Type) (x3:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x3) x00)) P) (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((Q->x)->((x->Q)->P))) (fun (x01:(P->Q)) (x02:(Q->P)) (x03:(Q->x)) (x04:(x->Q))=> (x02 (x04 (x2 x10))))))) as proof of ((R->((iff P) Q))->P)
% 213.26/213.62 Found x020:=(x02 x030):Q
% 213.26/213.62 Found (x02 x030) as proof of Q
% 213.26/213.62 Found (x02 x030) as proof of Q
% 213.26/213.62 Found x02:((iff Q) x)
% 213.26/213.62 Instantiate: x:=P:Prop
% 213.26/213.62 Found x02 as proof of ((iff Q) P)
% 213.26/213.62 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 213.26/213.62 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 213.26/213.62 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 213.26/213.62 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 213.26/213.62 Found x010:=(x01 x000):((iff P) Q)
% 213.26/213.62 Found x010 as proof of ((iff P) Q)
% 213.26/213.62 Found x20:=(x2 x10):((iff P) Q)
% 213.26/213.62 Found x20 as proof of ((iff P) Q)
% 213.26/213.62 Found x010:=(x01 x000):((iff P) Q)
% 213.26/213.62 Found x010 as proof of ((iff P) Q)
% 213.26/213.62 Found x030:=(x03 x020):P
% 213.26/213.62 Found (x03 x020) as proof of P
% 213.26/213.62 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 213.26/213.62 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 213.26/213.62 Found x010:=(x01 x000):((iff P) Q)
% 213.26/213.62 Found x010 as proof of ((iff P) Q)
% 213.26/213.62 Found x030:=(x03 x020):P
% 213.26/213.62 Found (x03 x020) as proof of P
% 213.26/213.62 Found (x03 x020) as proof of P
% 213.26/213.62 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 213.26/213.62 Found (iff_refl Q) as proof of ((iff Q) x)
% 213.26/213.62 Found (iff_refl Q) as proof of ((iff Q) x)
% 213.26/213.62 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 213.26/213.62 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 213.26/213.62 Found x010:=(x01 x020):x
% 213.26/213.62 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 213.26/213.62 Found (x01 x020) as proof of ((iff P) Q)
% 213.26/213.62 Found (x01 x020) as proof of ((iff P) Q)
% 213.26/213.62 Found (x1 (x01 x020)) as proof of R
% 213.26/213.62 Found (x1 (x01 x020)) as proof of R
% 213.26/213.62 Found x010:=(x01 x020):x
% 213.26/213.62 Instantiate: x:=R:Prop
% 213.26/213.62 Found (x01 x020) as proof of R
% 213.26/213.62 Found (x01 x020) as proof of R
% 213.26/213.62 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 213.26/213.62 Found (x2 (x01 x020)) as proof of ((iff P) Q)
% 213.26/213.62 Found x000:=(x00 x011):R
% 213.26/213.62 Found (x00 x011) as proof of R
% 213.26/213.62 Found (x00 x011) as proof of R
% 213.26/213.62 Found x040:Q
% 213.26/213.62 Instantiate: x:=Q:Prop
% 213.26/213.62 Found x040 as proof of x
% 213.26/213.62 Found x020:=(x02 x030):Q
% 213.26/213.62 Found (x02 x030) as proof of Q
% 213.26/213.62 Found (x02 x030) as proof of Q
% 213.26/213.62 Found x030:=(x03 x020):P
% 213.26/213.62 Found (x03 x020) as proof of P
% 213.26/213.62 Found (x03 x020) as proof of P
% 213.26/213.62 Found x030:=(x03 x040):x
% 213.26/213.62 Instantiate: x:=P:Prop
% 213.26/213.62 Found (x03 x040) as proof of P
% 213.26/213.62 Found (x03 x040) as proof of P
% 213.26/213.62 Found x20:=(x2 x10):((iff P) Q)
% 213.26/213.62 Found x20 as proof of ((iff P) Q)
% 213.26/213.62 Found x030:=(x03 x040):x
% 213.26/213.62 Instantiate: x:=P:Prop
% 213.26/213.62 Found (x03 x040) as proof of P
% 213.26/213.62 Found (x03 x040) as proof of P
% 213.26/213.62 Found x010:=(x01 x000):((iff P) Q)
% 213.26/213.62 Found x010 as proof of ((iff P) Q)
% 213.26/213.62 Found x030:=(x03 x040):x
% 213.26/213.62 Instantiate: x:=P:Prop
% 213.26/213.62 Found (x03 x040) as proof of P
% 213.26/213.62 Found (x03 x040) as proof of P
% 213.26/213.62 Found x010:=(x01 x000):((iff P) Q)
% 213.26/213.62 Found (x01 x000) as proof of ((iff P) Q)
% 213.26/213.62 Found (x01 x000) as proof of ((iff P) Q)
% 213.26/213.62 Found x040:Q
% 213.26/213.62 Found x040 as proof of x
% 213.26/213.62 Found x030:x
% 213.26/213.62 Found x030 as proof of Q
% 213.26/213.62 Found x030:x
% 213.26/213.62 Found x030 as proof of x
% 213.26/213.62 Found x010:=(x01 x000):((iff P) Q)
% 213.26/213.62 Found x010 as proof of ((iff P) Q)
% 213.26/213.62 Found x010:=(x01 x000):((iff P) Q)
% 213.26/213.62 Found x010 as proof of ((iff P) Q)
% 213.26/213.62 Found x010:=(x01 x000):((iff P) Q)
% 213.26/213.62 Found x010 as proof of ((iff P) Q)
% 213.26/213.62 Found x000:=(x00 x011):R
% 213.26/213.62 Found (x00 x011) as proof of R
% 213.26/213.62 Found (x00 x011) as proof of R
% 213.26/213.62 Found x000:=(x00 x011):R
% 213.26/213.62 Found (x00 x011) as proof of R
% 213.26/213.62 Found (x00 x011) as proof of R
% 213.26/213.62 Found x040:Q
% 213.26/213.62 Found x040 as proof of Q
% 213.26/213.62 Found x010:=(x01 x000):((iff P) Q)
% 213.26/213.62 Found (x01 x000) as proof of ((iff P) Q)
% 213.26/213.62 Found (x01 x000) as proof of ((iff P) Q)
% 213.26/213.62 Found x030:x
% 213.26/213.62 Found x030 as proof of Q
% 213.26/213.62 Found x010:=(x01 x000):((iff P) Q)
% 213.26/213.62 Found x010 as proof of ((iff P) Q)
% 213.26/213.62 Found x030:=(x03 x020):P
% 213.26/213.62 Found (x03 x020) as proof of P
% 213.26/213.62 Found (x03 x020) as proof of P
% 213.26/213.62 Found x030:=(x03 x021):P
% 213.26/213.62 Found (x03 x021) as proof of P
% 213.26/213.62 Found (x03 x021) as proof of P
% 213.26/213.62 Found x030:x
% 213.26/213.62 Found x030 as proof of x
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x000:=(x00 x011):R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x030:x
% 215.04/215.43 Found x030 as proof of Q
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x000:=(x00 x011):R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found x030:=(x03 x020):P
% 215.04/215.43 Found (x03 x020) as proof of P
% 215.04/215.43 Found (x03 x020) as proof of P
% 215.04/215.43 Found x000:=(x00 x011):R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x030:x
% 215.04/215.43 Found x030 as proof of x
% 215.04/215.43 Found x010:=(x01 x001):((iff P) Q)
% 215.04/215.43 Found (x01 x001) as proof of ((iff P) Q)
% 215.04/215.43 Found (x01 x001) as proof of ((iff P) Q)
% 215.04/215.43 Found x030:x
% 215.04/215.43 Found x030 as proof of Q
% 215.04/215.43 Found x000:=(x00 x011):R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found x040:Q
% 215.04/215.43 Found x040 as proof of Q
% 215.04/215.43 Found x030:x
% 215.04/215.43 Found x030 as proof of Q
% 215.04/215.43 Found x02:((iff Q) x)
% 215.04/215.43 Instantiate: x:=P:Prop
% 215.04/215.43 Found x02 as proof of ((iff Q) P)
% 215.04/215.43 Found (iff_sym00 x02) as proof of ((and (P->Q)) (Q->P))
% 215.04/215.43 Found ((iff_sym0 P) x02) as proof of ((and (P->Q)) (Q->P))
% 215.04/215.43 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 215.04/215.43 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 215.04/215.43 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x000:=(x00 x011):R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found x030:x
% 215.04/215.43 Found x030 as proof of x
% 215.04/215.43 Found x010:=(x01 x001):((iff P) Q)
% 215.04/215.43 Found (x01 x001) as proof of ((iff P) Q)
% 215.04/215.43 Found (x01 x001) as proof of ((iff P) Q)
% 215.04/215.43 Found x010:=(x01 x001):((iff P) Q)
% 215.04/215.43 Found (x01 x001) as proof of ((iff P) Q)
% 215.04/215.43 Found (x01 x001) as proof of ((iff P) Q)
% 215.04/215.43 Found x030:x
% 215.04/215.43 Found x030 as proof of x
% 215.04/215.43 Found x040:Q
% 215.04/215.43 Found x040 as proof of x
% 215.04/215.43 Found x020:=(x02 x030):Q
% 215.04/215.43 Found (x02 x030) as proof of Q
% 215.04/215.43 Found (x02 x030) as proof of Q
% 215.04/215.43 Found x000:=(x00 x011):R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x030:=(x03 x020):P
% 215.04/215.43 Found (x03 x020) as proof of P
% 215.04/215.43 Found (x03 x020) as proof of P
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x000:=(x00 x011):R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found x010:=(x01 x001):((iff P) Q)
% 215.04/215.43 Found (x01 x001) as proof of ((iff P) Q)
% 215.04/215.43 Found (x01 x001) as proof of ((iff P) Q)
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x000:=(x00 x011):R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found x000:=(x00 x011):R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found x030:=(x03 x020):P
% 215.04/215.43 Found (x03 x020) as proof of P
% 215.04/215.43 Found (x03 x020) as proof of P
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found (x01 x000) as proof of ((iff P) Q)
% 215.04/215.43 Found (x01 x000) as proof of ((iff P) Q)
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x20:=(x2 x10):((iff P) Q)
% 215.04/215.43 Found (x2 x10) as proof of ((iff P) Q)
% 215.04/215.43 Found (x2 x10) as proof of ((iff P) Q)
% 215.04/215.43 Found x030:x
% 215.04/215.43 Found x030 as proof of x
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 215.04/215.43 Found x010 as proof of ((iff P) Q)
% 215.04/215.43 Found x030:x
% 215.04/215.43 Found x030 as proof of Q
% 215.04/215.43 Found x020:=(x02 x030):Q
% 215.04/215.43 Found (x02 x030) as proof of Q
% 215.04/215.43 Found (x02 x030) as proof of Q
% 215.04/215.43 Found x000:=(x00 x011):R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found x030:=(x03 x020):P
% 215.04/215.43 Found (x03 x020) as proof of P
% 215.04/215.43 Found (x03 x020) as proof of P
% 215.04/215.43 Found x000:=(x00 x011):R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found x000:=(x00 x011):R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found (x00 x011) as proof of R
% 215.04/215.43 Found x010:=(x01 x000):((iff P) Q)
% 217.32/217.65 Found x010 as proof of ((iff P) Q)
% 217.32/217.65 Found x000:=(x00 x011):R
% 217.32/217.65 Found (x00 x011) as proof of R
% 217.32/217.65 Found (x00 x011) as proof of R
% 217.32/217.65 Found x010:=(x01 x000):((iff P) Q)
% 217.32/217.65 Found x010 as proof of ((iff P) Q)
% 217.32/217.65 Found x020:=(x02 x030):Q
% 217.32/217.65 Found (x02 x030) as proof of Q
% 217.32/217.65 Found (x02 x030) as proof of Q
% 217.32/217.65 Found x010:=(x01 x003):((iff P) Q)
% 217.32/217.65 Found (x01 x003) as proof of ((iff P) Q)
% 217.32/217.65 Found (x01 x003) as proof of ((iff P) Q)
% 217.32/217.65 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 217.32/217.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 217.32/217.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 217.32/217.65 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 217.32/217.65 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 217.32/217.65 Found x030:x
% 217.32/217.65 Instantiate: x:=P:Prop
% 217.32/217.65 Found x030 as proof of P
% 217.32/217.65 Found x010:=(x01 x000):((iff P) Q)
% 217.32/217.65 Found x010 as proof of ((iff P) Q)
% 217.32/217.65 Found x040:Q
% 217.32/217.65 Found x040 as proof of Q
% 217.32/217.65 Found (x03 x040) as proof of P
% 217.32/217.65 Found (x03 x040) as proof of P
% 217.32/217.65 Found (x03 x040) as proof of P
% 217.32/217.65 Found x030:x
% 217.32/217.65 Instantiate: x:=P:Prop
% 217.32/217.65 Found (fun (x04:(x->Q))=> x030) as proof of P
% 217.32/217.65 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 217.32/217.65 Found x000:=(x00 x010):R
% 217.32/217.65 Found (x00 x010) as proof of R
% 217.32/217.65 Found (x00 x010) as proof of R
% 217.32/217.65 Found x000:=(x00 x011):R
% 217.32/217.65 Found (x00 x011) as proof of R
% 217.32/217.65 Found (x00 x011) as proof of R
% 217.32/217.65 Found iff_sym100:=(iff_sym10 x010):((iff Q) P)
% 217.32/217.65 Found (iff_sym10 x010) as proof of ((iff Q) P)
% 217.32/217.65 Found ((iff_sym1 Q) x010) as proof of ((iff Q) P)
% 217.32/217.65 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 217.32/217.65 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 217.32/217.65 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 217.32/217.65 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 217.32/217.65 Found eta_expansion as proof of x
% 217.32/217.65 Found x010:=(x01 x000):((iff P) Q)
% 217.32/217.65 Found x010 as proof of ((iff P) Q)
% 217.32/217.65 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 217.32/217.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 217.32/217.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 217.32/217.65 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 217.32/217.65 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 217.32/217.65 Found x010:=(x01 x000):((iff P) Q)
% 217.32/217.65 Found (x01 x000) as proof of ((iff P) Q)
% 217.32/217.65 Found (x01 x000) as proof of ((iff P) Q)
% 217.32/217.65 Found x030:=(x03 x040):x
% 217.32/217.65 Found (x03 x040) as proof of P
% 217.32/217.65 Found (x03 x040) as proof of P
% 217.32/217.65 Found (x03 x040) as proof of P
% 217.32/217.65 Found x010:=(x01 x001):((iff P) Q)
% 217.32/217.65 Found (x01 x001) as proof of ((iff P) Q)
% 217.32/217.65 Found (x01 x001) as proof of ((iff P) Q)
% 217.32/217.65 Found x010:=(x01 x000):((iff P) Q)
% 217.32/217.65 Found x010 as proof of ((iff P) Q)
% 217.32/217.65 Found x010:=(x01 x002):((iff P) Q)
% 217.32/217.65 Found x010 as proof of ((iff P) Q)
% 217.32/217.65 Found x010:=(x01 x000):((iff P) Q)
% 217.32/217.65 Found x010 as proof of ((iff P) Q)
% 217.32/217.65 Found x010:=(x01 x001):((iff P) Q)
% 217.32/217.65 Found (x01 x001) as proof of ((iff P) Q)
% 217.32/217.65 Found (x01 x001) as proof of ((iff P) Q)
% 217.32/217.65 Found x000:=(x00 x010):R
% 217.32/217.65 Found (x00 x010) as proof of R
% 217.32/217.65 Found (x00 x010) as proof of R
% 217.32/217.65 Found x030:=(x03 x020):P
% 217.32/217.65 Found (x03 x020) as proof of P
% 217.32/217.65 Found (x03 x020) as proof of P
% 217.32/217.65 Found x010:=(x01 x003):((iff P) Q)
% 217.32/217.65 Found (x01 x003) as proof of ((iff P) Q)
% 217.32/217.65 Found (x01 x003) as proof of ((iff P) Q)
% 217.32/217.65 Found x010:=(x01 x001):((iff P) Q)
% 217.32/217.65 Found x010 as proof of ((iff P) Q)
% 217.32/217.65 Found x10:=(x1 x21):R
% 217.32/217.65 Found (x1 x21) as proof of R
% 217.32/217.65 Found (x1 x21) as proof of R
% 217.32/217.65 Found x030:=(x03 x020):P
% 217.32/217.65 Found (x03 x020) as proof of P
% 217.32/217.65 Found (x03 x020) as proof of P
% 217.32/217.65 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 217.32/217.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 217.32/217.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 217.32/217.65 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 217.32/217.65 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 217.32/217.65 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 217.32/217.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 217.32/217.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 217.32/217.65 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 217.32/217.65 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 217.32/217.65 Found x010:=(x01 x000):((iff P) Q)
% 217.32/217.65 Found (x01 x000) as proof of ((iff P) Q)
% 217.32/217.65 Found (x01 x000) as proof of ((iff P) Q)
% 217.32/217.65 Found x010:=(x01 x000):((iff P) Q)
% 217.32/217.65 Found x010 as proof of ((iff P) Q)
% 217.32/217.65 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 217.32/217.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 217.32/217.65 Found (iff_refl Q) as proof of ((iff Q) x)
% 219.38/219.72 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 219.38/219.72 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 219.38/219.72 Found x040:Q
% 219.38/219.72 Instantiate: x:=Q:Prop
% 219.38/219.72 Found x040 as proof of x
% 219.38/219.72 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 219.38/219.72 Found (iff_refl Q) as proof of ((iff Q) x)
% 219.38/219.72 Found (iff_refl Q) as proof of ((iff Q) x)
% 219.38/219.72 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 219.38/219.72 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 219.38/219.72 Found x010:=(x01 x000):((iff P) Q)
% 219.38/219.72 Found x010 as proof of ((iff P) Q)
% 219.38/219.72 Found x010:=(x01 x000):((iff P) Q)
% 219.38/219.72 Found x010 as proof of ((iff P) Q)
% 219.38/219.72 Found x000:R
% 219.38/219.72 Instantiate: x:=R:Prop
% 219.38/219.72 Found x000 as proof of x
% 219.38/219.72 Found (x04 x000) as proof of Q
% 219.38/219.72 Found (x04 x000) as proof of Q
% 219.38/219.72 Found (x2 (x04 x000)) as proof of P
% 219.38/219.72 Found (fun (x2:(Q->P))=> (x2 (x04 x000))) as proof of P
% 219.38/219.72 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((Q->P)->P)
% 219.38/219.72 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((P->Q)->((Q->P)->P))
% 219.38/219.72 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 219.38/219.72 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 219.38/219.72 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 219.38/219.72 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 219.38/219.72 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of P
% 219.38/219.72 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of ((x->Q)->P)
% 219.38/219.72 Found x010:=(x01 x002):((iff P) Q)
% 219.38/219.72 Found x010 as proof of ((iff P) Q)
% 219.38/219.72 Found x010:=(x01 x004):((iff P) Q)
% 219.38/219.72 Found (x01 x004) as proof of ((iff P) Q)
% 219.38/219.72 Found (x01 x004) as proof of ((iff P) Q)
% 219.38/219.72 Found x000:=(x00 x011):R
% 219.38/219.72 Found (x00 x011) as proof of R
% 219.38/219.72 Found (x00 x011) as proof of R
% 219.38/219.72 Found x030:=(x03 x040):x
% 219.38/219.72 Instantiate: x:=P:Prop
% 219.38/219.72 Found (x03 x040) as proof of P
% 219.38/219.72 Found (x03 x040) as proof of P
% 219.38/219.72 Found x000:=(x00 x011):R
% 219.38/219.72 Found (x00 x011) as proof of R
% 219.38/219.72 Found (x00 x011) as proof of R
% 219.38/219.72 Found x000:=(x00 x011):R
% 219.38/219.72 Found (x00 x011) as proof of R
% 219.38/219.72 Found (x00 x011) as proof of R
% 219.38/219.72 Found x030:=(x03 x020):P
% 219.38/219.72 Found (x03 x020) as proof of P
% 219.38/219.72 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 219.38/219.72 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 219.38/219.72 Found x010:=(x01 x000):((iff P) Q)
% 219.38/219.72 Found x010 as proof of ((iff P) Q)
% 219.38/219.72 Found x020:=(x02 x031):Q
% 219.38/219.72 Found (x02 x031) as proof of Q
% 219.38/219.72 Found (x02 x031) as proof of Q
% 219.38/219.72 Found x030:=(x03 x020):P
% 219.38/219.72 Found (x03 x020) as proof of P
% 219.38/219.72 Found (x03 x020) as proof of P
% 219.38/219.72 Found x010:=(x01 x000):((iff P) Q)
% 219.38/219.72 Found x010 as proof of ((iff P) Q)
% 219.38/219.72 Found x010:=(x01 x002):((iff P) Q)
% 219.38/219.72 Found x010 as proof of ((iff P) Q)
% 219.38/219.72 Found x030:=(x03 x040):x
% 219.38/219.72 Found (x03 x040) as proof of P
% 219.38/219.72 Found (x03 x040) as proof of P
% 219.38/219.72 Found (x03 x040) as proof of P
% 219.38/219.72 Found x000:=(x00 x011):R
% 219.38/219.72 Found (x00 x011) as proof of R
% 219.38/219.72 Found (x00 x011) as proof of R
% 219.38/219.72 Found x000:=(x00 x011):R
% 219.38/219.72 Found (x00 x011) as proof of R
% 219.38/219.72 Found (x00 x011) as proof of R
% 219.38/219.72 Found x012:x
% 219.38/219.72 Instantiate: x:=P:Prop
% 219.38/219.72 Found (fun (x02:(x->Q))=> x012) as proof of P
% 219.38/219.72 Found (fun (x02:(x->Q))=> x012) as proof of ((x->Q)->P)
% 219.38/219.72 Found x020:=(x02 x030):Q
% 219.38/219.72 Found (x02 x030) as proof of Q
% 219.38/219.72 Found (x02 x030) as proof of Q
% 219.38/219.72 Found x030:=(x03 x021):P
% 219.38/219.72 Found (x03 x021) as proof of P
% 219.38/219.72 Found (x03 x021) as proof of P
% 219.38/219.72 Found x20:=(x2 x11):((iff P) Q)
% 219.38/219.72 Found (x2 x11) as proof of ((iff P) Q)
% 219.38/219.72 Found (x2 x11) as proof of ((iff P) Q)
% 219.38/219.72 Found x010:=(x01 x000):((iff P) Q)
% 219.38/219.72 Found (x01 x000) as proof of ((iff P) Q)
% 219.38/219.72 Found (x01 x000) as proof of ((iff P) Q)
% 219.38/219.72 Found x02:((iff Q) x)
% 219.38/219.72 Instantiate: x:=P:Prop
% 219.38/219.72 Found x02 as proof of ((iff Q) P)
% 219.38/219.72 Found (iff_sym00 x02) as proof of ((and (P->Q)) (Q->P))
% 219.38/219.72 Found ((iff_sym0 P) x02) as proof of ((and (P->Q)) (Q->P))
% 219.38/219.72 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 220.54/220.89 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 220.54/220.89 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 220.54/220.89 Found x010:=(x01 x000):((iff P) Q)
% 220.54/220.89 Found x010 as proof of ((iff P) Q)
% 220.54/220.89 Found x20:=(x2 x10):((iff P) Q)
% 220.54/220.89 Found x20 as proof of ((iff P) Q)
% 220.54/220.89 Found x000:=(x00 x011):R
% 220.54/220.89 Found (x00 x011) as proof of R
% 220.54/220.89 Found (x00 x011) as proof of R
% 220.54/220.89 Found x010:=(x01 x000):((iff P) Q)
% 220.54/220.89 Found (x01 x000) as proof of ((iff P) Q)
% 220.54/220.89 Found (x01 x000) as proof of ((iff P) Q)
% 220.54/220.89 Found or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 220.54/220.89 Instantiate: x:=(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A))):Prop
% 220.54/220.89 Found or_comm_i as proof of x
% 220.54/220.89 Found (x06 or_comm_i) as proof of Q
% 220.54/220.89 Found (x06 or_comm_i) as proof of Q
% 220.54/220.89 Found (x04 (x06 or_comm_i)) as proof of P
% 220.54/220.89 Found (fun (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of P
% 220.54/220.89 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((x->Q)->P)
% 220.54/220.89 Found (fun (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((Q->x)->((x->Q)->P))
% 220.54/220.89 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 220.54/220.89 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 220.54/220.89 Found (and_rect20 (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 220.54/220.89 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 220.54/220.89 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 220.54/220.89 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 220.54/220.89 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 220.54/220.89 Found x000:=(x00 x011):R
% 220.54/220.89 Found (x00 x011) as proof of R
% 220.54/220.89 Found (x00 x011) as proof of R
% 220.54/220.89 Found x010:=(x01 x000):((iff P) Q)
% 220.54/220.89 Found x010 as proof of ((iff P) Q)
% 220.54/220.89 Found x040:Q
% 220.54/220.89 Found x040 as proof of Q
% 220.54/220.89 Found (x03 x040) as proof of P
% 220.54/220.89 Found (x03 x040) as proof of P
% 220.54/220.89 Found (x03 x040) as proof of P
% 220.54/220.89 Found x000:=(x00 x014):R
% 220.54/220.89 Found (x00 x014) as proof of R
% 220.54/220.89 Found (x00 x014) as proof of R
% 220.54/220.89 Found x20:=(x2 x11):((iff P) Q)
% 220.54/220.89 Found (x2 x11) as proof of ((iff P) Q)
% 220.54/220.89 Found (x2 x11) as proof of ((iff P) Q)
% 220.54/220.89 Found x010:=(x01 x000):((iff P) Q)
% 220.54/220.89 Found x010 as proof of ((iff P) Q)
% 220.54/220.89 Found x010:=(x01 x000):((iff P) Q)
% 220.54/220.89 Found x010 as proof of ((iff P) Q)
% 220.54/220.89 Found x000:=(x00 x011):R
% 220.54/220.89 Found (x00 x011) as proof of R
% 220.54/220.89 Found (x00 x011) as proof of R
% 220.54/220.89 Found x000:=(x00 x011):R
% 220.54/220.89 Found (x00 x011) as proof of R
% 220.54/220.89 Found (x00 x011) as proof of R
% 220.54/220.89 Found x021:Q
% 220.54/220.89 Found x021 as proof of Q
% 220.54/220.89 Found (x01 x021) as proof of P
% 220.54/220.89 Found (x01 x021) as proof of P
% 220.54/220.89 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 220.54/220.89 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 220.54/220.89 Found x020:Q
% 220.54/220.89 Found x020 as proof of Q
% 220.54/220.89 Found (x01 x020) as proof of P
% 220.54/220.89 Found (x01 x020) as proof of P
% 220.54/220.89 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of P
% 220.54/220.89 Found (fun (x2:(R->((iff P) Q)))=> (x01 x020)) as proof of ((R->((iff P) Q))->P)
% 220.54/220.89 Found x010:=(x01 x000):((iff P) Q)
% 220.54/220.89 Found (x01 x000) as proof of ((iff P) Q)
% 220.54/220.89 Found (x01 x000) as proof of ((iff P) Q)
% 220.54/220.89 Found x010:=(x01 x001):((iff P) Q)
% 220.54/220.89 Found (x01 x001) as proof of ((iff P) Q)
% 220.54/220.89 Found (x01 x001) as proof of ((iff P) Q)
% 220.54/220.89 Found x010:=(x01 x000):((iff P) Q)
% 220.54/220.89 Found x010 as proof of ((iff P) Q)
% 220.54/220.89 Found x010:=(x01 x001):((iff P) Q)
% 220.54/220.89 Found (x01 x001) as proof of ((iff P) Q)
% 220.54/220.89 Found (x01 x001) as proof of ((iff P) Q)
% 222.40/222.78 Found x010:=(x01 x000):((iff P) Q)
% 222.40/222.78 Found x010 as proof of ((iff P) Q)
% 222.40/222.78 Found x030:x
% 222.40/222.78 Instantiate: x:=P:Prop
% 222.40/222.78 Found x030 as proof of P
% 222.40/222.78 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 222.40/222.78 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 222.40/222.78 Found eta_expansion as proof of x
% 222.40/222.78 Found x010:=(x01 x000):((iff P) Q)
% 222.40/222.78 Found x010 as proof of ((iff P) Q)
% 222.40/222.78 Found x040:Q
% 222.40/222.78 Found x040 as proof of Q
% 222.40/222.78 Found (x03 x040) as proof of P
% 222.40/222.78 Found (x03 x040) as proof of P
% 222.40/222.78 Found (x03 x040) as proof of P
% 222.40/222.78 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 222.40/222.78 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 222.40/222.78 Found ex_intro0 as proof of x
% 222.40/222.78 Found (x04 ex_intro0) as proof of Q
% 222.40/222.78 Found (x04 ex_intro0) as proof of Q
% 222.40/222.78 Found x010:=(x01 x001):((iff P) Q)
% 222.40/222.78 Found (x01 x001) as proof of ((iff P) Q)
% 222.40/222.78 Found (x01 x001) as proof of ((iff P) Q)
% 222.40/222.78 Found x000:=(x00 x011):R
% 222.40/222.78 Found (x00 x011) as proof of R
% 222.40/222.78 Found (x00 x011) as proof of R
% 222.40/222.78 Found iff_sym100:=(iff_sym10 x010):((iff Q) P)
% 222.40/222.78 Found (iff_sym10 x010) as proof of ((iff Q) P)
% 222.40/222.78 Found ((iff_sym1 Q) x010) as proof of ((iff Q) P)
% 222.40/222.78 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 222.40/222.78 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 222.40/222.78 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 222.40/222.78 Found (iff_refl Q) as proof of ((iff Q) x)
% 222.40/222.78 Found (iff_refl Q) as proof of ((iff Q) x)
% 222.40/222.78 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 222.40/222.78 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 222.40/222.78 Found x020:=(x02 x030):Q
% 222.40/222.78 Found (x02 x030) as proof of Q
% 222.40/222.78 Found (x02 x030) as proof of Q
% 222.40/222.78 Found x030:=(x03 x020):P
% 222.40/222.78 Found (x03 x020) as proof of P
% 222.40/222.78 Found (x03 x020) as proof of P
% 222.40/222.78 Found x010:=(x01 x000):((iff P) Q)
% 222.40/222.78 Found (x01 x000) as proof of ((iff P) Q)
% 222.40/222.78 Found (x01 x000) as proof of ((iff P) Q)
% 222.40/222.78 Found x010:=(x01 x000):((iff P) Q)
% 222.40/222.78 Found x010 as proof of ((iff P) Q)
% 222.40/222.78 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 222.40/222.78 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 222.40/222.78 Found ex_intro0 as proof of x
% 222.40/222.78 Found (x04 ex_intro0) as proof of Q
% 222.40/222.78 Found (x04 ex_intro0) as proof of Q
% 222.40/222.78 Found x010:=(x01 x000):((iff P) Q)
% 222.40/222.78 Found x010 as proof of ((iff P) Q)
% 222.40/222.78 Found x010:=(x01 x000):((iff P) Q)
% 222.40/222.78 Found x010 as proof of ((iff P) Q)
% 222.40/222.78 Found x010:=(x01 x001):((iff P) Q)
% 222.40/222.78 Found (x01 x001) as proof of ((iff P) Q)
% 222.40/222.78 Found (x01 x001) as proof of ((iff P) Q)
% 222.40/222.78 Found x010:=(x01 x000):((iff P) Q)
% 222.40/222.78 Found x010 as proof of ((iff P) Q)
% 222.40/222.78 Found x010:=(x01 x001):((iff P) Q)
% 222.40/222.78 Found (x01 x001) as proof of ((iff P) Q)
% 222.40/222.78 Found (x01 x001) as proof of ((iff P) Q)
% 222.40/222.78 Found x1:(((iff P) Q)->R)
% 222.40/222.78 Instantiate: x:=(((iff P) Q)->R):Prop
% 222.40/222.78 Found x1 as proof of x
% 222.40/222.78 Found x040:Q
% 222.40/222.78 Found x040 as proof of Q
% 222.40/222.78 Found (x03 x040) as proof of P
% 222.40/222.78 Found (x03 x040) as proof of P
% 222.40/222.78 Found (x03 x040) as proof of P
% 222.40/222.78 Found x010:=(x01 x001):((iff P) Q)
% 222.40/222.78 Found (x01 x001) as proof of ((iff P) Q)
% 222.40/222.78 Found (x01 x001) as proof of ((iff P) Q)
% 222.40/222.78 Found x010:x
% 222.40/222.78 Instantiate: x:=Q:Prop
% 222.40/222.78 Found x010 as proof of Q
% 222.40/222.78 Found x010:=(x01 x000):((iff P) Q)
% 222.40/222.78 Found x010 as proof of ((iff P) Q)
% 222.40/222.78 Found x010:=(x01 x000):((iff P) Q)
% 222.40/222.78 Found x010 as proof of ((iff P) Q)
% 222.40/222.78 Found x010:=(x01 x000):((iff P) Q)
% 222.40/222.78 Found x010 as proof of ((iff P) Q)
% 222.40/222.78 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 222.40/222.78 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 222.40/222.78 Found ex_intro0 as proof of x
% 222.40/222.78 Found (x04 ex_intro0) as proof of Q
% 222.40/222.78 Found (x04 ex_intro0) as proof of Q
% 222.40/222.78 Found x20:=(x2 x10):((iff P) Q)
% 222.40/222.78 Found x20 as proof of ((iff P) Q)
% 222.40/222.78 Found x010:x
% 222.40/222.78 Instantiate: x:=R:Prop
% 222.40/222.78 Found x010 as proof of R
% 222.40/222.78 Found x010:x
% 222.40/222.78 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 222.40/222.78 Found x010 as proof of ((iff P) Q)
% 222.40/222.78 Found x010:=(x01 x000):((iff P) Q)
% 222.40/222.78 Found x010 as proof of ((iff P) Q)
% 222.40/222.78 Found x040:Q
% 222.40/222.78 Found x040 as proof of x
% 222.40/222.78 Found x000:R
% 222.40/222.78 Instantiate: x:=R:Prop
% 222.40/222.78 Found x000 as proof of x
% 222.40/222.78 Found (x04 x000) as proof of Q
% 222.40/222.78 Found (x04 x000) as proof of Q
% 222.40/222.78 Found (x2 (x04 x000)) as proof of P
% 222.40/222.78 Found (fun (x2:(Q->P))=> (x2 (x04 x000))) as proof of P
% 223.21/223.57 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((Q->P)->P)
% 223.21/223.57 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((P->Q)->((Q->P)->P))
% 223.21/223.57 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 223.21/223.57 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 223.21/223.57 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 223.21/223.57 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 223.21/223.57 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 223.21/223.57 Found x010:=(x01 x000):((iff P) Q)
% 223.21/223.57 Found x010 as proof of ((iff P) Q)
% 223.21/223.57 Found x010:=(x01 x000):((iff P) Q)
% 223.21/223.57 Found x010 as proof of ((iff P) Q)
% 223.21/223.57 Found x000:=(x00 x011):R
% 223.21/223.57 Found (x00 x011) as proof of R
% 223.21/223.57 Found (x00 x011) as proof of R
% 223.21/223.57 Found x010:x
% 223.21/223.57 Instantiate: x:=Q:Prop
% 223.21/223.57 Found x010 as proof of Q
% 223.21/223.57 Found x030:x
% 223.21/223.57 Found x030 as proof of x
% 223.21/223.57 Found x040:Q
% 223.21/223.57 Found x040 as proof of Q
% 223.21/223.57 Found x010:x
% 223.21/223.57 Instantiate: x:=Q:Prop
% 223.21/223.57 Found x010 as proof of Q
% 223.21/223.57 Found x030:x
% 223.21/223.57 Found x030 as proof of Q
% 223.21/223.57 Found x010:x
% 223.21/223.57 Instantiate: x:=R:Prop
% 223.21/223.57 Found x010 as proof of R
% 223.21/223.57 Found x00:((iff Q) x)
% 223.21/223.57 Instantiate: x:=P:Prop
% 223.21/223.57 Found x00 as proof of ((iff Q) P)
% 223.21/223.57 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 223.21/223.57 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 223.21/223.57 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 223.21/223.57 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 223.21/223.57 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 223.21/223.57 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 223.21/223.57 Found x010:=(x01 x000):((iff P) Q)
% 223.21/223.57 Found x010 as proof of ((iff P) Q)
% 223.21/223.57 Found x030:=(x03 x020):P
% 223.21/223.57 Found (x03 x020) as proof of P
% 223.21/223.57 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 223.21/223.57 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 223.21/223.57 Found x011:x
% 223.21/223.57 Instantiate: x:=R:Prop
% 223.21/223.57 Found x011 as proof of R
% 223.21/223.57 Found x010:x
% 223.21/223.57 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 223.21/223.57 Found x010 as proof of ((iff P) Q)
% 223.21/223.57 Found x010:x
% 223.21/223.57 Instantiate: x:=Q:Prop
% 223.21/223.57 Found x010 as proof of Q
% 223.21/223.57 Found x000:=(x00 x013):R
% 223.21/223.57 Found (x00 x013) as proof of R
% 223.21/223.57 Found (x00 x013) as proof of R
% 223.21/223.57 Found iff_sym200:=(iff_sym20 x010):((iff Q) P)
% 223.21/223.57 Found (iff_sym20 x010) as proof of ((iff Q) P)
% 223.21/223.57 Found ((iff_sym2 Q) x010) as proof of ((iff Q) P)
% 223.21/223.57 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 223.21/223.57 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 223.21/223.57 Found x010:=(x01 x000):((iff P) Q)
% 223.21/223.57 Found x010 as proof of ((iff P) Q)
% 223.21/223.57 Found x011:x
% 223.21/223.57 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 223.21/223.57 Found x011 as proof of ((iff P) Q)
% 223.21/223.57 Found x020:Q
% 223.21/223.57 Instantiate: x:=Q:Prop
% 223.21/223.57 Found x020 as proof of x
% 223.21/223.57 Found x011:x
% 223.21/223.57 Instantiate: x:=Q:Prop
% 223.21/223.57 Found x011 as proof of Q
% 223.21/223.57 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 223.21/223.57 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 223.21/223.57 Found or_ind as proof of x
% 223.21/223.57 Found (x02 or_ind) as proof of Q
% 223.21/223.57 Found (x02 or_ind) as proof of Q
% 223.21/223.57 Found x000:=(x00 x011):R
% 223.21/223.57 Found (x00 x011) as proof of R
% 223.21/223.57 Found (x00 x011) as proof of R
% 223.21/223.57 Found x000:=(x00 x011):R
% 223.21/223.57 Found (x00 x011) as proof of R
% 223.21/223.57 Found (x00 x011) as proof of R
% 223.21/223.57 Found x030:x
% 223.21/223.57 Found x030 as proof of x
% 223.21/223.57 Found x000:=(x00 x013):R
% 223.21/223.57 Found (x00 x013) as proof of R
% 223.21/223.57 Found (x00 x013) as proof of R
% 223.21/223.57 Found x00:((iff Q) x)
% 223.21/223.57 Instantiate: x:=P:Prop
% 223.21/223.57 Found x00 as proof of ((iff Q) P)
% 223.21/223.57 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 223.21/223.57 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 223.21/223.57 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 223.21/223.57 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 223.21/223.57 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 223.21/223.57 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 223.21/223.57 Found x000:=(x00 x011):R
% 223.21/223.57 Found (x00 x011) as proof of R
% 223.21/223.57 Found (x00 x011) as proof of R
% 223.21/223.57 Found x000:=(x00 x011):R
% 223.21/223.57 Found (x00 x011) as proof of R
% 223.21/223.57 Found (x00 x011) as proof of R
% 223.21/223.57 Found x030:x
% 223.21/223.57 Found x030 as proof of Q
% 223.21/223.57 Found x030:x
% 223.21/223.57 Found x030 as proof of Q
% 223.21/223.57 Found x030:x
% 223.21/223.57 Found x030 as proof of x
% 223.21/223.57 Found x000:=(x00 x011):R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 224.02/224.40 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 224.02/224.40 Found or_ind as proof of x
% 224.02/224.40 Found (x04 or_ind) as proof of Q
% 224.02/224.40 Found (x04 or_ind) as proof of Q
% 224.02/224.40 Found x010:x
% 224.02/224.40 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 224.02/224.40 Found x010 as proof of ((iff P) Q)
% 224.02/224.40 Found x010:=(x01 x000):((iff P) Q)
% 224.02/224.40 Found x010 as proof of ((iff P) Q)
% 224.02/224.40 Found x010:=(x01 x000):((iff P) Q)
% 224.02/224.40 Found x010 as proof of ((iff P) Q)
% 224.02/224.40 Found x000:=(x00 x011):R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found x000:=(x00 x011):R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found x030:x
% 224.02/224.40 Found x030 as proof of Q
% 224.02/224.40 Found x040:Q
% 224.02/224.40 Found x040 as proof of Q
% 224.02/224.40 Found x030:x
% 224.02/224.40 Found x030 as proof of x
% 224.02/224.40 Found x10:R
% 224.02/224.40 Instantiate: x:=R:Prop
% 224.02/224.40 Found x10 as proof of x
% 224.02/224.40 Found x010:=(x01 x001):((iff P) Q)
% 224.02/224.40 Found x010 as proof of ((iff P) Q)
% 224.02/224.40 Found x010:=(x01 x000):((iff P) Q)
% 224.02/224.40 Found x010 as proof of ((iff P) Q)
% 224.02/224.40 Found x040:Q
% 224.02/224.40 Found x040 as proof of Q
% 224.02/224.40 Found (x03 x040) as proof of P
% 224.02/224.40 Found (x03 x040) as proof of P
% 224.02/224.40 Found (x03 x040) as proof of P
% 224.02/224.40 Found x000:=(x00 x011):R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found x000:=(x00 x011):R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found x000:=(x00 x011):R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found x040:Q
% 224.02/224.40 Found x040 as proof of x
% 224.02/224.40 Found x000:=(x00 x011):R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found (x00 x011) as proof of R
% 224.02/224.40 Found x030:x
% 224.02/224.40 Found x030 as proof of Q
% 224.02/224.40 Found x010:x
% 224.02/224.40 Instantiate: x:=P:Prop
% 224.02/224.40 Found (fun (x02:(x->Q))=> x010) as proof of P
% 224.02/224.40 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 224.02/224.40 Found x020:Q
% 224.02/224.40 Found x020 as proof of Q
% 224.02/224.40 Found x021:Q
% 224.02/224.40 Found x021 as proof of x
% 224.02/224.40 Found x010:=(x01 x000):((iff P) Q)
% 224.02/224.40 Found x010 as proof of ((iff P) Q)
% 224.02/224.40 Found x010:=(x01 x000):((iff P) Q)
% 224.02/224.40 Found x010 as proof of ((iff P) Q)
% 224.02/224.40 Found x000:R
% 224.02/224.40 Instantiate: x:=R:Prop
% 224.02/224.40 Found x000 as proof of x
% 224.02/224.40 Found (x06 x000) as proof of Q
% 224.02/224.40 Found (x06 x000) as proof of Q
% 224.02/224.40 Found (x05 (x06 x000)) as proof of P
% 224.02/224.40 Found (fun (x06:(x->Q))=> (x05 (x06 x000))) as proof of P
% 224.02/224.40 Found (fun (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((x->Q)->P)
% 224.02/224.40 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((Q->P)->((x->Q)->P))
% 224.02/224.40 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((P->Q)->((Q->P)->((x->Q)->P)))
% 224.02/224.40 Found (and_rect20 (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 224.02/224.40 Found ((and_rect2 ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 224.02/224.40 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 224.02/224.40 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 224.02/224.40 Found (fun (x03:(Q->x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))))) as proof of ((x->Q)->P)
% 224.02/224.40 Found (fun (x03:(Q->x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))))) as proof of ((Q->x)->((x->Q)->P))
% 224.02/224.40 Found x010:=(x01 x000):((iff P) Q)
% 224.02/224.40 Found x010 as proof of ((iff P) Q)
% 224.02/224.40 Found x010:x
% 224.02/224.40 Found x010 as proof of Q
% 224.02/224.40 Found x021:Q
% 224.02/224.40 Found x021 as proof of Q
% 224.02/224.40 Found x011:x
% 224.02/224.40 Found x011 as proof of Q
% 224.02/224.40 Found x011:x
% 224.02/224.40 Found x011 as proof of x
% 224.02/224.40 Found x020:Q
% 224.02/224.40 Found x020 as proof of x
% 224.02/224.40 Found x010:=(x01 x000):((iff P) Q)
% 224.02/224.40 Found x010 as proof of ((iff P) Q)
% 224.02/224.40 Found x010:=(x01 x000):((iff P) Q)
% 224.02/224.40 Found x010 as proof of ((iff P) Q)
% 224.02/224.40 Found x010:=(x01 x000):((iff P) Q)
% 224.02/224.40 Found (x01 x000) as proof of ((iff P) Q)
% 224.02/224.40 Found (x01 x000) as proof of ((iff P) Q)
% 225.10/225.44 Found x000:=(x00 x011):R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found x000:=(x00 x011):R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found x010:x
% 225.10/225.44 Found x010 as proof of x
% 225.10/225.44 Found x010:=(x01 x001):((iff P) Q)
% 225.10/225.44 Found (x01 x001) as proof of ((iff P) Q)
% 225.10/225.44 Found (x01 x001) as proof of ((iff P) Q)
% 225.10/225.44 Found x020:Q
% 225.10/225.44 Instantiate: x:=Q:Prop
% 225.10/225.44 Found x020 as proof of x
% 225.10/225.44 Found x030:x
% 225.10/225.44 Found x030 as proof of x
% 225.10/225.44 Found x010:=(x01 x001):((iff P) Q)
% 225.10/225.44 Found x010 as proof of ((iff P) Q)
% 225.10/225.44 Found x010:=(x01 x001):((iff P) Q)
% 225.10/225.44 Found x010 as proof of ((iff P) Q)
% 225.10/225.44 Found x030:x
% 225.10/225.44 Found x030 as proof of x
% 225.10/225.44 Found x030:x
% 225.10/225.44 Found x030 as proof of Q
% 225.10/225.44 Found x000:=(x00 x011):R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found x030:=(x03 x020):P
% 225.10/225.44 Found (x03 x020) as proof of P
% 225.10/225.44 Found (x03 x020) as proof of P
% 225.10/225.44 Found x000:=(x00 x011):R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found x020:=(x02 x030):Q
% 225.10/225.44 Found (x02 x030) as proof of Q
% 225.10/225.44 Found (x02 x030) as proof of Q
% 225.10/225.44 Found x010:x
% 225.10/225.44 Instantiate: x:=P:Prop
% 225.10/225.44 Found (fun (x02:(x->Q))=> x010) as proof of P
% 225.10/225.44 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 225.10/225.44 Found x010:=(x01 x000):((iff P) Q)
% 225.10/225.44 Found x010 as proof of ((iff P) Q)
% 225.10/225.44 Found x000:=(x00 x011):R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found x010:=(x01 x000):((iff P) Q)
% 225.10/225.44 Found x010 as proof of ((iff P) Q)
% 225.10/225.44 Found x010:=(x01 x001):((iff P) Q)
% 225.10/225.44 Found x010 as proof of ((iff P) Q)
% 225.10/225.44 Found x000:=(x00 x011):R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found x010:=(x01 x000):((iff P) Q)
% 225.10/225.44 Found (x01 x000) as proof of ((iff P) Q)
% 225.10/225.44 Found (x01 x000) as proof of ((iff P) Q)
% 225.10/225.44 Found x020:Q
% 225.10/225.44 Instantiate: x:=Q:Prop
% 225.10/225.44 Found x020 as proof of x
% 225.10/225.44 Found x021:Q
% 225.10/225.44 Instantiate: x:=Q:Prop
% 225.10/225.44 Found x021 as proof of x
% 225.10/225.44 Found x10:R
% 225.10/225.44 Instantiate: x:=R:Prop
% 225.10/225.44 Found x10 as proof of x
% 225.10/225.44 Found x11:R
% 225.10/225.44 Instantiate: x:=R:Prop
% 225.10/225.44 Found x11 as proof of x
% 225.10/225.44 Found x010:=(x01 x000):((iff P) Q)
% 225.10/225.44 Found (x01 x000) as proof of ((iff P) Q)
% 225.10/225.44 Found (x01 x000) as proof of ((iff P) Q)
% 225.10/225.44 Found x010:=(x01 x001):((iff P) Q)
% 225.10/225.44 Found (x01 x001) as proof of ((iff P) Q)
% 225.10/225.44 Found (x01 x001) as proof of ((iff P) Q)
% 225.10/225.44 Found x000:=(x00 x011):R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found x020:=(x02 x030):Q
% 225.10/225.44 Found (x02 x030) as proof of Q
% 225.10/225.44 Found (x02 x030) as proof of Q
% 225.10/225.44 Found x030:=(x03 x020):P
% 225.10/225.44 Found (x03 x020) as proof of P
% 225.10/225.44 Found (x03 x020) as proof of P
% 225.10/225.44 Found x000:=(x00 x011):R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found x030:=(x03 x020):P
% 225.10/225.44 Found (x03 x020) as proof of P
% 225.10/225.44 Found (x03 x020) as proof of P
% 225.10/225.44 Found x020:=(x02 x030):Q
% 225.10/225.44 Found (x02 x030) as proof of Q
% 225.10/225.44 Found (x02 x030) as proof of Q
% 225.10/225.44 Found x000:=(x00 x011):R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found (x00 x011) as proof of R
% 225.10/225.44 Found x010:x
% 225.10/225.44 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 225.10/225.44 Found x010 as proof of ((R->((iff P) Q))->P)
% 225.10/225.44 Found x20:=(x2 x10):((iff P) Q)
% 225.10/225.44 Instantiate: x:=((iff P) Q):Prop
% 225.10/225.44 Found x20 as proof of x
% 225.10/225.44 Found (x02 x20) as proof of Q
% 225.10/225.44 Found (x02 x20) as proof of Q
% 225.10/225.44 Found (x4 (x02 x20)) as proof of P
% 225.10/225.44 Found (fun (x02:(x->Q))=> (x4 (x02 x20))) as proof of P
% 225.10/225.44 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20))) as proof of ((x->Q)->P)
% 225.10/225.44 Found (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20))) as proof of ((Q->x)->((x->Q)->P))
% 225.10/225.44 Found (and_rect20 (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20)))) as proof of P
% 225.10/225.44 Found ((and_rect2 P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20)))) as proof of P
% 225.10/225.44 Found (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20)))) as proof of P
% 225.10/225.44 Found (fun (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20))))) as proof of P
% 225.10/225.44 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20))))) as proof of ((Q->P)->P)
% 225.10/225.44 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20))))) as proof of ((P->Q)->((Q->P)->P))
% 226.15/226.55 Found (and_rect10 (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20)))))) as proof of P
% 226.15/226.55 Found ((and_rect1 P) (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20)))))) as proof of P
% 226.15/226.55 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 x20)))))) as proof of P
% 226.15/226.55 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 (x2 x10))))))) as proof of P
% 226.15/226.55 Found (fun (x2:(R->((iff P) Q)))=> (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 (x2 x10)))))))) as proof of P
% 226.15/226.55 Found (fun (x2:(R->((iff P) Q)))=> (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (((fun (P0:Type) (x5:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x5) x00)) P) (fun (x01:(Q->x)) (x02:(x->Q))=> (x4 (x02 (x2 x10)))))))) as proof of ((R->((iff P) Q))->P)
% 226.15/226.55 Found x010:=(x01 x001):((iff P) Q)
% 226.15/226.55 Found (x01 x001) as proof of ((iff P) Q)
% 226.15/226.55 Found (x01 x001) as proof of ((iff P) Q)
% 226.15/226.55 Found x010:=(x01 x001):((iff P) Q)
% 226.15/226.55 Found (x01 x001) as proof of ((iff P) Q)
% 226.15/226.55 Found (x01 x001) as proof of ((iff P) Q)
% 226.15/226.55 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 226.15/226.55 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 226.15/226.55 Found or_ind as proof of x
% 226.15/226.55 Found (x04 or_ind) as proof of Q
% 226.15/226.55 Found (x04 or_ind) as proof of Q
% 226.15/226.55 Found x010:=(x01 x000):((iff P) Q)
% 226.15/226.55 Found x010 as proof of ((iff P) Q)
% 226.15/226.55 Found x010:=(x01 x000):((iff P) Q)
% 226.15/226.55 Found x010 as proof of ((iff P) Q)
% 226.15/226.55 Found x010:=(x01 x000):((iff P) Q)
% 226.15/226.55 Found x010 as proof of ((iff P) Q)
% 226.15/226.55 Found x040:Q
% 226.15/226.55 Found x040 as proof of Q
% 226.15/226.55 Found (x03 x040) as proof of P
% 226.15/226.55 Found (x03 x040) as proof of P
% 226.15/226.55 Found (x03 x040) as proof of P
% 226.15/226.55 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 226.15/226.55 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 226.15/226.55 Found ex_intro0 as proof of x
% 226.15/226.55 Found (x04 ex_intro0) as proof of Q
% 226.15/226.55 Found (x04 ex_intro0) as proof of Q
% 226.15/226.55 Found x010:=(x01 x000):((iff P) Q)
% 226.15/226.55 Found x010 as proof of ((iff P) Q)
% 226.15/226.55 Found x010:=(x01 x000):((iff P) Q)
% 226.15/226.55 Found x010 as proof of ((iff P) Q)
% 226.15/226.55 Found x010:=(x01 x000):((iff P) Q)
% 226.15/226.55 Found x010 as proof of ((iff P) Q)
% 226.15/226.55 Found x010:=(x01 x000):((iff P) Q)
% 226.15/226.55 Found x010 as proof of ((iff P) Q)
% 226.15/226.55 Found x010:=(x01 x001):((iff P) Q)
% 226.15/226.55 Found (x01 x001) as proof of ((iff P) Q)
% 226.15/226.55 Found (x01 x001) as proof of ((iff P) Q)
% 226.15/226.55 Found x030:=(x03 x020):P
% 226.15/226.55 Found (x03 x020) as proof of P
% 226.15/226.55 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 226.15/226.55 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 226.15/226.55 Found x010:=(x01 x001):((iff P) Q)
% 226.15/226.55 Found (x01 x001) as proof of ((iff P) Q)
% 226.15/226.55 Found (x01 x001) as proof of ((iff P) Q)
% 226.15/226.55 Found x010:=(x01 x000):((iff P) Q)
% 226.15/226.55 Found (x01 x000) as proof of ((iff P) Q)
% 226.15/226.55 Found (x01 x000) as proof of ((iff P) Q)
% 226.15/226.55 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 226.15/226.55 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 226.15/226.55 Found ex_intro0 as proof of x
% 226.15/226.55 Found (x04 ex_intro0) as proof of Q
% 226.15/226.55 Found (x04 ex_intro0) as proof of Q
% 226.15/226.55 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 227.43/227.81 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 227.43/227.81 Found eta_expansion as proof of x
% 227.43/227.81 Found x000:R
% 227.43/227.81 Instantiate: x:=R:Prop
% 227.43/227.81 Found x000 as proof of x
% 227.43/227.81 Found (x04 x000) as proof of Q
% 227.43/227.81 Found (x04 x000) as proof of Q
% 227.43/227.81 Found (x2 (x04 x000)) as proof of P
% 227.43/227.81 Found (fun (x2:(Q->P))=> (x2 (x04 x000))) as proof of P
% 227.43/227.81 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((Q->P)->P)
% 227.43/227.81 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((P->Q)->((Q->P)->P))
% 227.43/227.81 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 227.43/227.81 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 227.43/227.81 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 227.43/227.81 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 227.43/227.81 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 227.43/227.81 Found x030:x
% 227.43/227.81 Instantiate: x:=P:Prop
% 227.43/227.81 Found x030 as proof of P
% 227.43/227.81 Found x030:=(x03 x020):P
% 227.43/227.81 Found (x03 x020) as proof of P
% 227.43/227.81 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 227.43/227.81 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 227.43/227.81 Found x010:=(x01 x000):((iff P) Q)
% 227.43/227.81 Found x010 as proof of ((iff P) Q)
% 227.43/227.81 Found x031:x
% 227.43/227.81 Instantiate: x:=P:Prop
% 227.43/227.81 Found (fun (x04:(x->Q))=> x031) as proof of P
% 227.43/227.81 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 227.43/227.81 Found x000:=(x00 x011):R
% 227.43/227.81 Found (x00 x011) as proof of R
% 227.43/227.81 Found (x00 x011) as proof of R
% 227.43/227.81 Found x030:=(x03 x020):P
% 227.43/227.81 Found (x03 x020) as proof of P
% 227.43/227.81 Found (x03 x020) as proof of P
% 227.43/227.81 Found x030:=(x03 x040):x
% 227.43/227.81 Found (x03 x040) as proof of R
% 227.43/227.81 Found (x03 x040) as proof of R
% 227.43/227.81 Found (x03 x040) as proof of R
% 227.43/227.81 Found x010:=(x01 x003):((iff P) Q)
% 227.43/227.81 Found x010 as proof of ((iff P) Q)
% 227.43/227.81 Found x010:=(x01 x000):((iff P) Q)
% 227.43/227.81 Found x010 as proof of ((iff P) Q)
% 227.43/227.81 Found x010:=(x01 x000):((iff P) Q)
% 227.43/227.81 Found x010 as proof of ((iff P) Q)
% 227.43/227.81 Found x010:=(x01 x000):((iff P) Q)
% 227.43/227.81 Found (x01 x000) as proof of ((iff P) Q)
% 227.43/227.81 Found (x01 x000) as proof of ((iff P) Q)
% 227.43/227.81 Found x030:x
% 227.43/227.81 Found x030 as proof of Q
% 227.43/227.81 Found x030:x
% 227.43/227.81 Found x030 as proof of x
% 227.43/227.81 Found x040:Q
% 227.43/227.81 Found x040 as proof of x
% 227.43/227.81 Found x030:x
% 227.43/227.81 Instantiate: x:=P:Prop
% 227.43/227.81 Found (fun (x04:(x->Q))=> x030) as proof of P
% 227.43/227.81 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 227.43/227.81 Found x040:Q
% 227.43/227.81 Found x040 as proof of Q
% 227.43/227.81 Found iff_sym200:=(iff_sym20 x010):((iff Q) P)
% 227.43/227.81 Found (iff_sym20 x010) as proof of ((iff Q) P)
% 227.43/227.81 Found ((iff_sym2 Q) x010) as proof of ((iff Q) P)
% 227.43/227.81 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 227.43/227.81 Found (((iff_sym P) Q) x010) as proof of ((iff Q) P)
% 227.43/227.81 Found x030:x
% 227.43/227.81 Instantiate: x:=P:Prop
% 227.43/227.81 Found (fun (x04:(x->Q))=> x030) as proof of P
% 227.43/227.81 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 227.43/227.81 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 227.43/227.81 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 227.43/227.81 Found eta_expansion as proof of x
% 227.43/227.81 Found x010:=(x01 x000):((iff P) Q)
% 227.43/227.81 Found (x01 x000) as proof of ((iff P) Q)
% 227.43/227.81 Found (x01 x000) as proof of ((iff P) Q)
% 227.43/227.81 Found x030:x
% 227.43/227.81 Instantiate: x:=P:Prop
% 227.43/227.81 Found (fun (x04:(x->Q))=> x030) as proof of P
% 227.43/227.81 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 227.43/227.81 Found x031:x
% 227.43/227.81 Instantiate: x:=P:Prop
% 227.43/227.81 Found (fun (x04:(x->Q))=> x031) as proof of P
% 227.43/227.81 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 227.43/227.81 Found x031:x
% 227.43/227.81 Instantiate: x:=P:Prop
% 227.43/227.81 Found (fun (x04:(x->Q))=> x031) as proof of P
% 227.43/227.81 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 227.43/227.81 Found x10:=(x1 x21):R
% 227.43/227.81 Found (x1 x21) as proof of R
% 227.43/227.81 Found (x1 x21) as proof of R
% 227.43/227.81 Found x030:x
% 227.43/227.81 Instantiate: x:=P:Prop
% 227.43/227.81 Found x030 as proof of P
% 227.43/227.81 Found x010:=(x01 x000):((iff P) Q)
% 227.43/227.81 Found x010 as proof of ((iff P) Q)
% 227.43/227.81 Found x000:=(x00 x011):R
% 227.43/227.81 Found (x00 x011) as proof of R
% 227.43/227.81 Found (x00 x011) as proof of R
% 228.70/229.08 Found x032:x
% 228.70/229.08 Instantiate: x:=P:Prop
% 228.70/229.08 Found (fun (x04:(x->Q))=> x032) as proof of P
% 228.70/229.08 Found (fun (x04:(x->Q))=> x032) as proof of ((x->Q)->P)
% 228.70/229.08 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 228.70/229.08 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 228.70/229.08 Found or_ind as proof of x
% 228.70/229.08 Found (x04 or_ind) as proof of Q
% 228.70/229.08 Found (x04 or_ind) as proof of Q
% 228.70/229.08 Found x000:=(x00 x011):R
% 228.70/229.08 Found (x00 x011) as proof of R
% 228.70/229.08 Found (x00 x011) as proof of R
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x000:=(x00 x011):R
% 228.70/229.08 Found (x00 x011) as proof of R
% 228.70/229.08 Found (x00 x011) as proof of R
% 228.70/229.08 Found x030:x
% 228.70/229.08 Found x030 as proof of Q
% 228.70/229.08 Found x030:x
% 228.70/229.08 Instantiate: x:=P:Prop
% 228.70/229.08 Found (fun (x04:(x->Q))=> x030) as proof of P
% 228.70/229.08 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 228.70/229.08 Found x031:x
% 228.70/229.08 Instantiate: x:=P:Prop
% 228.70/229.08 Found (fun (x04:(x->Q))=> x031) as proof of P
% 228.70/229.08 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 228.70/229.08 Found x031:x
% 228.70/229.08 Instantiate: x:=P:Prop
% 228.70/229.08 Found (fun (x04:(x->Q))=> x031) as proof of P
% 228.70/229.08 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 228.70/229.08 Found x030:x
% 228.70/229.08 Found x030 as proof of x
% 228.70/229.08 Found x030:=(x03 x020):P
% 228.70/229.08 Found (x03 x020) as proof of P
% 228.70/229.08 Found (x03 x020) as proof of P
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x030:x
% 228.70/229.08 Found x030 as proof of Q
% 228.70/229.08 Found x030:x
% 228.70/229.08 Found x030 as proof of x
% 228.70/229.08 Found x031:x
% 228.70/229.08 Instantiate: x:=P:Prop
% 228.70/229.08 Found (fun (x04:(x->Q))=> x031) as proof of P
% 228.70/229.08 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x020:=(x02 x030):Q
% 228.70/229.08 Found (x02 x030) as proof of Q
% 228.70/229.08 Found (x02 x030) as proof of Q
% 228.70/229.08 Found x030:=(x03 x020):P
% 228.70/229.08 Found (x03 x020) as proof of P
% 228.70/229.08 Found (x03 x020) as proof of P
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x000:=(x00 x011):R
% 228.70/229.08 Found (x00 x011) as proof of R
% 228.70/229.08 Found (x00 x011) as proof of R
% 228.70/229.08 Found x030:x
% 228.70/229.08 Found x030 as proof of Q
% 228.70/229.08 Found x040:Q
% 228.70/229.08 Found x040 as proof of Q
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x040:Q
% 228.70/229.08 Found x040 as proof of x
% 228.70/229.08 Found x030:=(x03 x020):P
% 228.70/229.08 Found (x03 x020) as proof of P
% 228.70/229.08 Found (x03 x020) as proof of P
% 228.70/229.08 Found x000:=(x00 x011):R
% 228.70/229.08 Found (x00 x011) as proof of R
% 228.70/229.08 Found (x00 x011) as proof of R
% 228.70/229.08 Found x20:=(x2 x10):((iff P) Q)
% 228.70/229.08 Found x20 as proof of ((iff P) Q)
% 228.70/229.08 Found x030:x
% 228.70/229.08 Found x030 as proof of x
% 228.70/229.08 Found x030:=(x03 x040):x
% 228.70/229.08 Found (x03 x040) as proof of P
% 228.70/229.08 Found (x03 x040) as proof of P
% 228.70/229.08 Found (x03 x040) as proof of P
% 228.70/229.08 Found x10:=(x1 x21):R
% 228.70/229.08 Found (x1 x21) as proof of R
% 228.70/229.08 Found (x1 x21) as proof of R
% 228.70/229.08 Found x000:=(x00 x011):R
% 228.70/229.08 Found (x00 x011) as proof of R
% 228.70/229.08 Found (x00 x011) as proof of R
% 228.70/229.08 Found x010:=(x01 x001):((iff P) Q)
% 228.70/229.08 Found (x01 x001) as proof of ((iff P) Q)
% 228.70/229.08 Found (x01 x001) as proof of ((iff P) Q)
% 228.70/229.08 Found x020:=(x02 x030):Q
% 228.70/229.08 Found (x02 x030) as proof of Q
% 228.70/229.08 Found (x02 x030) as proof of Q
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x030:x
% 228.70/229.08 Found x030 as proof of x
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found (x01 x000) as proof of ((iff P) Q)
% 228.70/229.08 Found (x01 x000) as proof of ((iff P) Q)
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found (x01 x000) as proof of ((iff P) Q)
% 228.70/229.08 Found (x01 x000) as proof of ((iff P) Q)
% 228.70/229.08 Found x030:x
% 228.70/229.08 Found x030 as proof of x
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x030:x
% 228.70/229.08 Found x030 as proof of Q
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x010:=(x01 x000):((iff P) Q)
% 228.70/229.08 Found x010 as proof of ((iff P) Q)
% 228.70/229.08 Found x030:=(x03 x020):P
% 228.70/229.08 Found (x03 x020) as proof of P
% 228.70/229.08 Found (x03 x020) as proof of P
% 228.70/229.08 Found x20:=(x2 x11):((iff P) Q)
% 228.70/229.08 Found (x2 x11) as proof of ((iff P) Q)
% 228.70/229.08 Found (x2 x11) as proof of ((iff P) Q)
% 230.12/230.46 Found x030:x
% 230.12/230.46 Found x030 as proof of Q
% 230.12/230.46 Found x030:=(x03 x040):x
% 230.12/230.46 Found (x03 x040) as proof of P
% 230.12/230.46 Found (x03 x040) as proof of P
% 230.12/230.46 Found (x03 x040) as proof of P
% 230.12/230.46 Found x010:=(x01 x001):((iff P) Q)
% 230.12/230.46 Found x010 as proof of ((iff P) Q)
% 230.12/230.46 Found x010:=(x01 x000):((iff P) Q)
% 230.12/230.46 Found x010 as proof of ((iff P) Q)
% 230.12/230.46 Found x030:=(x03 x020):P
% 230.12/230.46 Found (x03 x020) as proof of P
% 230.12/230.46 Found (x03 x020) as proof of P
% 230.12/230.46 Found x031:x
% 230.12/230.46 Found x031 as proof of Q
% 230.12/230.46 Found x030:x
% 230.12/230.46 Instantiate: x:=P:Prop
% 230.12/230.46 Found (fun (x04:(x->Q))=> x030) as proof of P
% 230.12/230.46 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 230.12/230.46 Found x20:=(x2 x10):((iff P) Q)
% 230.12/230.46 Found x20 as proof of ((iff P) Q)
% 230.12/230.46 Found x010:=(x01 x000):((iff P) Q)
% 230.12/230.46 Found (x01 x000) as proof of ((iff P) Q)
% 230.12/230.46 Found (x01 x000) as proof of ((iff P) Q)
% 230.12/230.46 Found x20:=(x2 x11):((iff P) Q)
% 230.12/230.46 Found (x2 x11) as proof of ((iff P) Q)
% 230.12/230.46 Found (x2 x11) as proof of ((iff P) Q)
% 230.12/230.46 Found x010:=(x01 x000):((iff P) Q)
% 230.12/230.46 Found x010 as proof of ((iff P) Q)
% 230.12/230.46 Found x010:=(x01 x000):((iff P) Q)
% 230.12/230.46 Found x010 as proof of ((iff P) Q)
% 230.12/230.46 Found x010:=(x01 x000):((iff P) Q)
% 230.12/230.46 Found x010 as proof of ((iff P) Q)
% 230.12/230.46 Found x020:=(x02 x030):Q
% 230.12/230.46 Found (x02 x030) as proof of Q
% 230.12/230.46 Found (x02 x030) as proof of Q
% 230.12/230.46 Found x000:R
% 230.12/230.46 Instantiate: x:=R:Prop
% 230.12/230.46 Found x000 as proof of x
% 230.12/230.46 Found (x06 x000) as proof of Q
% 230.12/230.46 Found (x06 x000) as proof of Q
% 230.12/230.46 Found (x05 (x06 x000)) as proof of P
% 230.12/230.46 Found (fun (x06:(x->Q))=> (x05 (x06 x000))) as proof of P
% 230.12/230.46 Found (fun (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((x->Q)->P)
% 230.12/230.46 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((Q->P)->((x->Q)->P))
% 230.12/230.46 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((P->Q)->((Q->P)->((x->Q)->P)))
% 230.12/230.46 Found (and_rect20 (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 230.12/230.46 Found ((and_rect2 ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 230.12/230.46 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 230.12/230.46 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 230.12/230.46 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 230.12/230.46 Found x000:=(x00 x011):R
% 230.12/230.46 Found (x00 x011) as proof of R
% 230.12/230.46 Found (x00 x011) as proof of R
% 230.12/230.46 Found x010:=(x01 x020):x
% 230.12/230.46 Found (x01 x020) as proof of P
% 230.12/230.46 Found (x01 x020) as proof of P
% 230.12/230.46 Found (x01 x020) as proof of P
% 230.12/230.46 Found x010:=(x01 x000):((iff P) Q)
% 230.12/230.46 Found x010 as proof of ((iff P) Q)
% 230.12/230.46 Found x010:=(x01 x000):((iff P) Q)
% 230.12/230.46 Found x010 as proof of ((iff P) Q)
% 230.12/230.46 Found x000:=(x00 x011):R
% 230.12/230.46 Found (x00 x011) as proof of R
% 230.12/230.46 Found (x00 x011) as proof of R
% 230.12/230.46 Found x000:=(x00 x010):R
% 230.12/230.46 Found (x00 x010) as proof of R
% 230.12/230.46 Found (x00 x010) as proof of R
% 230.12/230.46 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 230.12/230.46 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 230.12/230.46 Found or_ind as proof of x
% 230.12/230.46 Found (x04 or_ind) as proof of Q
% 230.12/230.46 Found (x04 or_ind) as proof of Q
% 230.12/230.46 Found x010:=(x01 x000):((iff P) Q)
% 230.12/230.46 Found x010 as proof of ((iff P) Q)
% 230.12/230.46 Found x010:=(x01 x000):((iff P) Q)
% 230.12/230.46 Found x010 as proof of ((iff P) Q)
% 230.12/230.46 Found x010:=(x01 x000):((iff P) Q)
% 230.12/230.46 Found x010 as proof of ((iff P) Q)
% 230.12/230.46 Found x010:=(x01 x000):((iff P) Q)
% 230.12/230.46 Found x010 as proof of ((iff P) Q)
% 230.12/230.46 Found x000:R
% 230.12/230.46 Instantiate: x:=R:Prop
% 230.12/230.46 Found x000 as proof of x
% 230.12/230.46 Found (x04 x000) as proof of Q
% 230.12/230.46 Found (x04 x000) as proof of Q
% 230.12/230.46 Found (x2 (x04 x000)) as proof of P
% 230.12/230.46 Found (fun (x2:(Q->P))=> (x2 (x04 x000))) as proof of P
% 230.12/230.46 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((Q->P)->P)
% 230.12/230.46 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((P->Q)->((Q->P)->P))
% 230.12/230.46 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 230.12/230.46 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 231.52/231.92 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 231.52/231.92 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 231.52/231.92 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of P
% 231.52/231.92 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of ((x->Q)->P)
% 231.52/231.92 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of ((Q->x)->((x->Q)->P))
% 231.52/231.92 Found x010:=(x01 x000):((iff P) Q)
% 231.52/231.92 Found (x01 x000) as proof of ((iff P) Q)
% 231.52/231.92 Found (x01 x000) as proof of ((iff P) Q)
% 231.52/231.92 Found x010:=(x01 x000):((iff P) Q)
% 231.52/231.92 Found (x01 x000) as proof of ((iff P) Q)
% 231.52/231.92 Found (x01 x000) as proof of ((iff P) Q)
% 231.52/231.92 Found x010:=(x01 x001):((iff P) Q)
% 231.52/231.92 Found (x01 x001) as proof of ((iff P) Q)
% 231.52/231.92 Found (x01 x001) as proof of ((iff P) Q)
% 231.52/231.92 Found x030:=(x03 x040):x
% 231.52/231.92 Found (x03 x040) as proof of P
% 231.52/231.92 Found (x03 x040) as proof of P
% 231.52/231.92 Found (x03 x040) as proof of P
% 231.52/231.92 Found x010:=(x01 x000):((iff P) Q)
% 231.52/231.92 Found x010 as proof of ((iff P) Q)
% 231.52/231.92 Found x010:x
% 231.52/231.92 Found x010 as proof of Q
% 231.52/231.92 Found x030:=(x03 x020):P
% 231.52/231.92 Found (x03 x020) as proof of P
% 231.52/231.92 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 231.52/231.92 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 231.52/231.92 Found x030:x
% 231.52/231.92 Instantiate: x:=P:Prop
% 231.52/231.92 Found x030 as proof of P
% 231.52/231.92 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 231.52/231.92 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 231.52/231.92 Found eta_expansion as proof of x
% 231.52/231.92 Found x030:x
% 231.52/231.92 Instantiate: x:=P:Prop
% 231.52/231.92 Found x030 as proof of P
% 231.52/231.92 Found x000:=(x00 x011):R
% 231.52/231.92 Found (x00 x011) as proof of R
% 231.52/231.92 Found (x00 x011) as proof of R
% 231.52/231.92 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 231.52/231.92 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 231.52/231.92 Found eta_expansion as proof of x
% 231.52/231.92 Found x010:=(x01 x001):((iff P) Q)
% 231.52/231.92 Found x010 as proof of ((iff P) Q)
% 231.52/231.92 Found x010:=(x01 x000):((iff P) Q)
% 231.52/231.92 Found (x01 x000) as proof of ((iff P) Q)
% 231.52/231.92 Found (x01 x000) as proof of ((iff P) Q)
% 231.52/231.92 Found x010:=(x01 x001):((iff P) Q)
% 231.52/231.92 Found x010 as proof of ((iff P) Q)
% 231.52/231.92 Found x20:=(x2 x11):((iff P) Q)
% 231.52/231.92 Found (x2 x11) as proof of ((iff P) Q)
% 231.52/231.92 Found (x2 x11) as proof of ((iff P) Q)
% 231.52/231.92 Found x20:=(x2 x10):((iff P) Q)
% 231.52/231.92 Found x20 as proof of ((iff P) Q)
% 231.52/231.92 Found x020:Q
% 231.52/231.92 Found x020 as proof of x
% 231.52/231.92 Found x20:=(x2 x11):((iff P) Q)
% 231.52/231.92 Found (x2 x11) as proof of ((iff P) Q)
% 231.52/231.92 Found (x2 x11) as proof of ((iff P) Q)
% 231.52/231.92 Found x030:x
% 231.52/231.92 Instantiate: x:=P:Prop
% 231.52/231.92 Found (fun (x04:(x->Q))=> x030) as proof of P
% 231.52/231.92 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 231.52/231.92 Found x031:x
% 231.52/231.92 Instantiate: x:=P:Prop
% 231.52/231.92 Found (fun (x04:(x->Q))=> x031) as proof of P
% 231.52/231.92 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 231.52/231.92 Found x020:Q
% 231.52/231.92 Found x020 as proof of Q
% 231.52/231.92 Found x030:x
% 231.52/231.92 Instantiate: x:=P:Prop
% 231.52/231.92 Found (fun (x04:(x->Q))=> x030) as proof of P
% 231.52/231.92 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 231.52/231.92 Found x020:=(x02 x031):Q
% 231.52/231.92 Found (x02 x031) as proof of Q
% 231.52/231.92 Found (x02 x031) as proof of Q
% 231.52/231.92 Found x030:=(x03 x020):P
% 231.52/231.92 Found (x03 x020) as proof of P
% 231.52/231.92 Found (x03 x020) as proof of P
% 231.52/231.92 Found x030:=(x03 x021):P
% 231.52/231.92 Found (x03 x021) as proof of P
% 231.52/231.92 Found (x03 x021) as proof of P
% 231.52/231.92 Found x030:=(x03 x021):P
% 231.52/231.92 Found (x03 x021) as proof of P
% 231.52/231.92 Found (x03 x021) as proof of P
% 231.52/231.92 Found x010:x
% 231.52/231.92 Found x010 as proof of Q
% 231.52/231.92 Found x010:x
% 231.52/231.92 Found x010 as proof of Q
% 231.52/231.92 Found x010:=(x01 x000):((iff P) Q)
% 231.52/231.92 Found x010 as proof of ((iff P) Q)
% 232.44/232.83 Found x030:x
% 232.44/232.83 Instantiate: x:=P:Prop
% 232.44/232.83 Found x030 as proof of P
% 232.44/232.83 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 232.44/232.83 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 232.44/232.83 Found eta_expansion as proof of x
% 232.44/232.83 Found x010:x
% 232.44/232.83 Found x010 as proof of Q
% 232.44/232.83 Found x010:=(x01 x000):((iff P) Q)
% 232.44/232.83 Found x010 as proof of ((iff P) Q)
% 232.44/232.83 Found x000:=(x00 x011):R
% 232.44/232.83 Found (x00 x011) as proof of R
% 232.44/232.83 Found (x00 x011) as proof of R
% 232.44/232.83 Found x020:Q
% 232.44/232.83 Found x020 as proof of Q
% 232.44/232.83 Found x010:x
% 232.44/232.83 Found x010 as proof of x
% 232.44/232.83 Found x020:Q
% 232.44/232.83 Found x020 as proof of x
% 232.44/232.83 Found x020:Q
% 232.44/232.83 Found x020 as proof of Q
% 232.44/232.83 Found x020:Q
% 232.44/232.83 Found x020 as proof of x
% 232.44/232.83 Found x020:Q
% 232.44/232.83 Found x020 as proof of x
% 232.44/232.83 Found x010:x
% 232.44/232.83 Found x010 as proof of Q
% 232.44/232.83 Found x010:x
% 232.44/232.83 Found x010 as proof of x
% 232.44/232.83 Found x010:x
% 232.44/232.83 Found x010 as proof of Q
% 232.44/232.83 Found x030:=(x03 x020):P
% 232.44/232.83 Found (x03 x020) as proof of P
% 232.44/232.83 Found (x03 x020) as proof of P
% 232.44/232.83 Found x010:=(x01 x000):((iff P) Q)
% 232.44/232.83 Found (x01 x000) as proof of ((iff P) Q)
% 232.44/232.83 Found (x01 x000) as proof of ((iff P) Q)
% 232.44/232.83 Found x000:=(x00 x010):R
% 232.44/232.83 Found (x00 x010) as proof of R
% 232.44/232.83 Found (x00 x010) as proof of R
% 232.44/232.83 Found x010:=(x01 x000):((iff P) Q)
% 232.44/232.83 Found (x01 x000) as proof of ((iff P) Q)
% 232.44/232.83 Found (x01 x000) as proof of ((iff P) Q)
% 232.44/232.83 Found x030:=(x03 x020):P
% 232.44/232.83 Found (x03 x020) as proof of P
% 232.44/232.83 Found (x03 x020) as proof of P
% 232.44/232.83 Found x020:=(x02 x030):Q
% 232.44/232.83 Found (x02 x030) as proof of Q
% 232.44/232.83 Found (x02 x030) as proof of Q
% 232.44/232.83 Found x031:x
% 232.44/232.83 Instantiate: x:=P:Prop
% 232.44/232.83 Found (fun (x04:(x->Q))=> x031) as proof of P
% 232.44/232.83 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 232.44/232.83 Found x031:x
% 232.44/232.83 Instantiate: x:=P:Prop
% 232.44/232.83 Found (fun (x04:(x->Q))=> x031) as proof of P
% 232.44/232.83 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 232.44/232.83 Found x030:x
% 232.44/232.83 Instantiate: x:=P:Prop
% 232.44/232.83 Found (fun (x04:(x->Q))=> x030) as proof of P
% 232.44/232.83 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 232.44/232.83 Found x020:Q
% 232.44/232.83 Found x020 as proof of Q
% 232.44/232.83 Found x010:=(x01 x001):((iff P) Q)
% 232.44/232.83 Found x010 as proof of ((iff P) Q)
% 232.44/232.83 Found x010:x
% 232.44/232.83 Found x010 as proof of x
% 232.44/232.83 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 232.44/232.83 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 232.44/232.83 Found or_ind as proof of x
% 232.44/232.83 Found (x04 or_ind) as proof of Q
% 232.44/232.83 Found (x04 or_ind) as proof of Q
% 232.44/232.83 Found x031:x
% 232.44/232.83 Instantiate: x:=P:Prop
% 232.44/232.83 Found (fun (x04:(x->Q))=> x031) as proof of P
% 232.44/232.83 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 232.44/232.83 Found x010:=(x01 x000):((iff P) Q)
% 232.44/232.83 Found x010 as proof of ((iff P) Q)
% 232.44/232.83 Found x000:=(x00 x011):R
% 232.44/232.83 Found (x00 x011) as proof of R
% 232.44/232.83 Found (x00 x011) as proof of R
% 232.44/232.83 Found x010:=(x01 x001):((iff P) Q)
% 232.44/232.83 Found x010 as proof of ((iff P) Q)
% 232.44/232.83 Found x031:x
% 232.44/232.83 Instantiate: x:=P:Prop
% 232.44/232.83 Found (fun (x04:(x->Q))=> x031) as proof of P
% 232.44/232.83 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 232.44/232.83 Found x032:x
% 232.44/232.83 Instantiate: x:=P:Prop
% 232.44/232.83 Found (fun (x04:(x->Q))=> x032) as proof of P
% 232.44/232.83 Found (fun (x04:(x->Q))=> x032) as proof of ((x->Q)->P)
% 232.44/232.83 Found x030:x
% 232.44/232.83 Instantiate: x:=P:Prop
% 232.44/232.83 Found (fun (x04:(x->Q))=> x030) as proof of P
% 232.44/232.83 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 232.44/232.83 Found x031:x
% 232.44/232.83 Instantiate: x:=P:Prop
% 232.44/232.83 Found (fun (x04:(x->Q))=> x031) as proof of P
% 232.44/232.83 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 232.44/232.83 Found x010:x
% 232.44/232.83 Found x010 as proof of Q
% 232.44/232.83 Found x030:=(x03 x040):x
% 232.44/232.83 Found (x03 x040) as proof of P
% 232.44/232.83 Found (x03 x040) as proof of P
% 232.44/232.83 Found (x03 x040) as proof of P
% 232.44/232.83 Found x02:((iff Q) x)
% 232.44/232.83 Instantiate: x:=P:Prop
% 232.44/232.83 Found x02 as proof of ((iff Q) P)
% 232.44/232.83 Found (iff_sym00 x02) as proof of ((and (P->Q)) (Q->P))
% 232.44/232.83 Found ((iff_sym0 P) x02) as proof of ((and (P->Q)) (Q->P))
% 232.44/232.83 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 232.44/232.83 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 232.44/232.83 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 232.44/232.83 Found x010:=(x01 x001):((iff P) Q)
% 232.44/232.83 Found (x01 x001) as proof of ((iff P) Q)
% 232.44/232.83 Found (x01 x001) as proof of ((iff P) Q)
% 232.44/232.83 Found x030:=(x03 x040):x
% 232.44/232.83 Found (x03 x040) as proof of P
% 232.44/232.83 Found (x03 x040) as proof of P
% 232.44/232.83 Found (x03 x040) as proof of P
% 232.44/232.83 Found x010:=(x01 x000):((iff P) Q)
% 232.44/232.83 Found (x01 x000) as proof of ((iff P) Q)
% 232.44/232.83 Found (x01 x000) as proof of ((iff P) Q)
% 233.82/234.20 Found x010:=(x01 x000):((iff P) Q)
% 233.82/234.20 Found (x01 x000) as proof of ((iff P) Q)
% 233.82/234.20 Found (x01 x000) as proof of ((iff P) Q)
% 233.82/234.20 Found x010:x
% 233.82/234.20 Found x010 as proof of Q
% 233.82/234.20 Found x010:x
% 233.82/234.20 Found x010 as proof of Q
% 233.82/234.20 Found x010:x
% 233.82/234.20 Found x010 as proof of Q
% 233.82/234.20 Found x030:=(x03 x040):x
% 233.82/234.20 Found (x03 x040) as proof of P
% 233.82/234.20 Found (x03 x040) as proof of P
% 233.82/234.20 Found (x03 x040) as proof of P
% 233.82/234.20 Found x20:=(x2 x11):((iff P) Q)
% 233.82/234.20 Found (x2 x11) as proof of ((iff P) Q)
% 233.82/234.20 Found (x2 x11) as proof of ((iff P) Q)
% 233.82/234.20 Found x021:Q
% 233.82/234.20 Found x021 as proof of Q
% 233.82/234.20 Found (x01 x021) as proof of P
% 233.82/234.20 Found (x01 x021) as proof of P
% 233.82/234.20 Found (fun (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of P
% 233.82/234.20 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((R->((iff P) Q))->P)
% 233.82/234.20 Found (fun (x1:(((iff P) Q)->R)) (x2:(R->((iff P) Q)))=> (x01 x021)) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 233.82/234.20 Found x000:R
% 233.82/234.20 Instantiate: x:=R:Prop
% 233.82/234.20 Found x000 as proof of x
% 233.82/234.20 Found (x06 x000) as proof of Q
% 233.82/234.20 Found (x06 x000) as proof of Q
% 233.82/234.20 Found (x05 (x06 x000)) as proof of P
% 233.82/234.20 Found (fun (x06:(x->Q))=> (x05 (x06 x000))) as proof of P
% 233.82/234.20 Found (fun (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((x->Q)->P)
% 233.82/234.20 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((Q->P)->((x->Q)->P))
% 233.82/234.20 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((P->Q)->((Q->P)->((x->Q)->P)))
% 233.82/234.20 Found (and_rect20 (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 233.82/234.20 Found ((and_rect2 ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 233.82/234.20 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 233.82/234.20 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 233.82/234.20 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 233.82/234.20 Found x010:=(x01 x000):((iff P) Q)
% 233.82/234.20 Found x010 as proof of ((iff P) Q)
% 233.82/234.20 Found x020:Q
% 233.82/234.20 Found x020 as proof of x
% 233.82/234.20 Found x020:Q
% 233.82/234.20 Found x020 as proof of x
% 233.82/234.20 Found x020:Q
% 233.82/234.20 Found x020 as proof of Q
% 233.82/234.20 Found x020:Q
% 233.82/234.20 Found x020 as proof of x
% 233.82/234.20 Found x020:Q
% 233.82/234.20 Found x020 as proof of Q
% 233.82/234.20 Found x010:=(x01 x000):((iff P) Q)
% 233.82/234.20 Found x010 as proof of ((iff P) Q)
% 233.82/234.20 Found x020:Q
% 233.82/234.20 Found x020 as proof of Q
% 233.82/234.20 Found x011:x
% 233.82/234.20 Found x011 as proof of x
% 233.82/234.20 Found x010:=(x01 x000):((iff P) Q)
% 233.82/234.20 Found x010 as proof of ((iff P) Q)
% 233.82/234.20 Found x011:x
% 233.82/234.20 Found x011 as proof of Q
% 233.82/234.20 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 233.82/234.20 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 233.82/234.20 Found or_ind as proof of x
% 233.82/234.20 Found (x04 or_ind) as proof of Q
% 233.82/234.20 Found (x04 or_ind) as proof of Q
% 233.82/234.20 Found x030:x
% 233.82/234.20 Instantiate: x:=P:Prop
% 233.82/234.20 Found (fun (x04:(x->Q))=> x030) as proof of P
% 233.82/234.20 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 233.82/234.20 Found x000:=(x00 x012):R
% 233.82/234.20 Found (x00 x012) as proof of R
% 233.82/234.20 Found (x00 x012) as proof of R
% 233.82/234.20 Found x000:=(x00 x011):R
% 233.82/234.20 Found (x00 x011) as proof of R
% 233.82/234.20 Found (x00 x011) as proof of R
% 233.82/234.20 Found x000:=(x00 x011):R
% 233.82/234.20 Found (x00 x011) as proof of R
% 233.82/234.20 Found (x00 x011) as proof of R
% 233.82/234.20 Found x000:=(x00 x011):R
% 233.82/234.20 Found (x00 x011) as proof of R
% 233.82/234.20 Found (x00 x011) as proof of R
% 233.82/234.20 Found x000:=(x00 x010):R
% 233.82/234.20 Found (x00 x010) as proof of R
% 233.82/234.20 Found (x00 x010) as proof of R
% 233.82/234.20 Found x000:=(x00 x011):R
% 233.82/234.20 Found (x00 x011) as proof of R
% 233.82/234.20 Found (x00 x011) as proof of R
% 233.82/234.20 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 233.82/234.20 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 233.82/234.20 Found ex_intro0 as proof of x
% 233.82/234.20 Found (x04 ex_intro0) as proof of Q
% 233.82/234.20 Found (x04 ex_intro0) as proof of Q
% 233.82/234.20 Found x010:=(x01 x001):((iff P) Q)
% 233.82/234.20 Found x010 as proof of ((iff P) Q)
% 233.82/234.20 Found x010:=(x01 x000):((iff P) Q)
% 233.82/234.20 Found x010 as proof of ((iff P) Q)
% 233.82/234.20 Found x000:=(x00 x011):R
% 235.12/235.53 Found (x00 x011) as proof of R
% 235.12/235.53 Found (x00 x011) as proof of R
% 235.12/235.53 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 235.12/235.53 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 235.12/235.53 Found ex_intro0 as proof of x
% 235.12/235.53 Found (x04 ex_intro0) as proof of Q
% 235.12/235.53 Found (x04 ex_intro0) as proof of Q
% 235.12/235.53 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 235.12/235.53 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 235.12/235.53 Found ex_intro0 as proof of x
% 235.12/235.53 Found (x04 ex_intro0) as proof of Q
% 235.12/235.53 Found (x04 ex_intro0) as proof of Q
% 235.12/235.53 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 235.12/235.53 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 235.12/235.53 Found ex_intro0 as proof of x
% 235.12/235.53 Found (x04 ex_intro0) as proof of Q
% 235.12/235.53 Found (x04 ex_intro0) as proof of Q
% 235.12/235.53 Found x030:P
% 235.12/235.53 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 235.12/235.53 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 235.12/235.53 Found x010:=(x01 x000):((iff P) Q)
% 235.12/235.53 Found x010 as proof of ((iff P) Q)
% 235.12/235.53 Found x010:=(x01 x000):((iff P) Q)
% 235.12/235.53 Found x010 as proof of ((iff P) Q)
% 235.12/235.53 Found x010:=(x01 x002):((iff P) Q)
% 235.12/235.53 Found (x01 x002) as proof of ((iff P) Q)
% 235.12/235.53 Found (x01 x002) as proof of ((iff P) Q)
% 235.12/235.53 Found x030:=(x03 x040):x
% 235.12/235.53 Found (x03 x040) as proof of P
% 235.12/235.53 Found (x03 x040) as proof of P
% 235.12/235.53 Found (x03 x040) as proof of P
% 235.12/235.53 Found x010:=(x01 x000):((iff P) Q)
% 235.12/235.53 Found x010 as proof of ((iff P) Q)
% 235.12/235.53 Found x010:=(x01 x000):((iff P) Q)
% 235.12/235.53 Found x010 as proof of ((iff P) Q)
% 235.12/235.53 Found x010:=(x01 x000):((iff P) Q)
% 235.12/235.53 Found x010 as proof of ((iff P) Q)
% 235.12/235.53 Found x010:=(x01 x000):((iff P) Q)
% 235.12/235.53 Found x010 as proof of ((iff P) Q)
% 235.12/235.53 Found x000:R
% 235.12/235.53 Instantiate: x:=R:Prop
% 235.12/235.53 Found x000 as proof of x
% 235.12/235.53 Found (x04 x000) as proof of Q
% 235.12/235.53 Found (x04 x000) as proof of Q
% 235.12/235.53 Found (x2 (x04 x000)) as proof of P
% 235.12/235.53 Found (fun (x2:(Q->P))=> (x2 (x04 x000))) as proof of P
% 235.12/235.53 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((Q->P)->P)
% 235.12/235.53 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((P->Q)->((Q->P)->P))
% 235.12/235.53 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 235.12/235.53 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 235.12/235.53 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 235.12/235.53 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 235.12/235.53 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of P
% 235.12/235.53 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of ((x->Q)->P)
% 235.12/235.53 Found x010:=(x01 x000):((iff P) Q)
% 235.12/235.53 Found x010 as proof of ((iff P) Q)
% 235.12/235.53 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 235.12/235.53 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 235.12/235.53 Found eta_expansion as proof of x
% 235.12/235.53 Found x010:=(x01 x000):((iff P) Q)
% 235.12/235.53 Found x010 as proof of ((iff P) Q)
% 235.12/235.53 Found x010:=(x01 x000):((iff P) Q)
% 235.12/235.53 Found (x01 x000) as proof of ((iff P) Q)
% 235.12/235.53 Found (x01 x000) as proof of ((iff P) Q)
% 235.12/235.53 Found x000:=(x00 x011):R
% 235.12/235.53 Found (x00 x011) as proof of R
% 235.12/235.53 Found (x00 x011) as proof of R
% 235.12/235.53 Found x010:=(x01 x000):((iff P) Q)
% 235.12/235.53 Found (x01 x000) as proof of ((iff P) Q)
% 235.12/235.53 Found (x01 x000) as proof of ((iff P) Q)
% 235.12/235.53 Found x010:x
% 235.12/235.53 Instantiate: x:=Q:Prop
% 235.12/235.53 Found x010 as proof of Q
% 235.12/235.53 Found x010:=(x01 x000):((iff P) Q)
% 235.12/235.53 Found x010 as proof of ((iff P) Q)
% 235.12/235.53 Found x010:=(x01 x000):((iff P) Q)
% 235.12/235.53 Found x010 as proof of ((iff P) Q)
% 235.12/235.53 Found x030:x
% 235.12/235.53 Instantiate: x:=P:Prop
% 235.12/235.53 Found x030 as proof of P
% 235.12/235.53 Found x010:x
% 235.12/235.53 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 235.12/235.53 Found x010 as proof of ((iff P) Q)
% 235.12/235.53 Found x010:=(x01 x000):((iff P) Q)
% 236.69/237.05 Found x010 as proof of ((iff P) Q)
% 236.69/237.05 Found x010:=(x01 x000):((iff P) Q)
% 236.69/237.05 Found x010 as proof of ((iff P) Q)
% 236.69/237.05 Found x030:x
% 236.69/237.05 Instantiate: x:=P:Prop
% 236.69/237.05 Found x030 as proof of P
% 236.69/237.05 Found x030:x
% 236.69/237.05 Instantiate: x:=P:Prop
% 236.69/237.05 Found x030 as proof of P
% 236.69/237.05 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 236.69/237.05 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 236.69/237.05 Found eta_expansion as proof of x
% 236.69/237.05 Found x20:=(x2 x10):((iff P) Q)
% 236.69/237.05 Found x20 as proof of ((iff P) Q)
% 236.69/237.05 Found x010:=(x01 x000):((iff P) Q)
% 236.69/237.05 Found x010 as proof of ((iff P) Q)
% 236.69/237.05 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 236.69/237.05 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 236.69/237.05 Found eta_expansion as proof of x
% 236.69/237.05 Found x010:=(x01 x000):((iff P) Q)
% 236.69/237.05 Found x010 as proof of ((iff P) Q)
% 236.69/237.05 Found x010:=(x01 x000):((iff P) Q)
% 236.69/237.05 Found x010 as proof of ((iff P) Q)
% 236.69/237.05 Found x000:=(x00 x011):R
% 236.69/237.05 Found (x00 x011) as proof of R
% 236.69/237.05 Found (x00 x011) as proof of R
% 236.69/237.05 Found x010:=(x01 x000):((iff P) Q)
% 236.69/237.05 Found x010 as proof of ((iff P) Q)
% 236.69/237.05 Found x010:=(x01 x000):((iff P) Q)
% 236.69/237.05 Found x010 as proof of ((iff P) Q)
% 236.69/237.05 Found x000:=(x00 x011):R
% 236.69/237.05 Found (x00 x011) as proof of R
% 236.69/237.05 Found (x00 x011) as proof of R
% 236.69/237.05 Found x010:=(x01 x000):((iff P) Q)
% 236.69/237.05 Found (x01 x000) as proof of ((iff P) Q)
% 236.69/237.05 Found (x01 x000) as proof of ((iff P) Q)
% 236.69/237.05 Found x030:x
% 236.69/237.05 Found x030 as proof of Q
% 236.69/237.05 Found x030:x
% 236.69/237.05 Found x030 as proof of x
% 236.69/237.05 Found x010:=(x01 x000):((iff P) Q)
% 236.69/237.05 Found x010 as proof of ((iff P) Q)
% 236.69/237.05 Found x010:=(x01 x000):((iff P) Q)
% 236.69/237.05 Found x010 as proof of ((iff P) Q)
% 236.69/237.05 Found x000:=(x00 x011):R
% 236.69/237.05 Found (x00 x011) as proof of R
% 236.69/237.05 Found (x00 x011) as proof of R
% 236.69/237.05 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 236.69/237.05 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 236.69/237.05 Found or_ind as proof of x
% 236.69/237.05 Found (x02 or_ind) as proof of Q
% 236.69/237.05 Found (x02 or_ind) as proof of Q
% 236.69/237.05 Found x000:=(x00 x010):R
% 236.69/237.05 Found (x00 x010) as proof of R
% 236.69/237.05 Found (x00 x010) as proof of R
% 236.69/237.05 Found x010:=(x01 x000):((iff P) Q)
% 236.69/237.05 Found (x01 x000) as proof of ((iff P) Q)
% 236.69/237.05 Found (x01 x000) as proof of ((iff P) Q)
% 236.69/237.05 Found x000:=(x00 x011):R
% 236.69/237.05 Found (x00 x011) as proof of R
% 236.69/237.05 Found (x00 x011) as proof of R
% 236.69/237.05 Found x030:=(x03 x040):x
% 236.69/237.05 Found (x03 x040) as proof of P
% 236.69/237.05 Found (x03 x040) as proof of P
% 236.69/237.05 Found (x03 x040) as proof of P
% 236.69/237.05 Found x010:=(x01 x020):x
% 236.69/237.05 Instantiate: x:=P:Prop
% 236.69/237.05 Found (x01 x020) as proof of P
% 236.69/237.05 Found (x01 x020) as proof of P
% 236.69/237.05 Found x000:=(x00 x011):R
% 236.69/237.05 Found (x00 x011) as proof of R
% 236.69/237.05 Found (x00 x011) as proof of R
% 236.69/237.05 Found x010:=(x01 x000):((iff P) Q)
% 236.69/237.05 Found (x01 x000) as proof of ((iff P) Q)
% 236.69/237.05 Found (x01 x000) as proof of ((iff P) Q)
% 236.69/237.05 Found x000:=(x00 x011):R
% 236.69/237.05 Found (x00 x011) as proof of R
% 236.69/237.05 Found (x00 x011) as proof of R
% 236.69/237.05 Found x010:=(x01 x001):((iff P) Q)
% 236.69/237.05 Found (x01 x001) as proof of ((iff P) Q)
% 236.69/237.05 Found (x01 x001) as proof of ((iff P) Q)
% 236.69/237.05 Found x10:=(x1 x21):R
% 236.69/237.05 Found (x1 x21) as proof of R
% 236.69/237.05 Found (x1 x21) as proof of R
% 236.69/237.05 Found or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 236.69/237.05 Instantiate: x:=(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A))):Prop
% 236.69/237.05 Found or_comm_i as proof of x
% 236.69/237.05 Found (x06 or_comm_i) as proof of Q
% 236.69/237.05 Found (x06 or_comm_i) as proof of Q
% 236.69/237.05 Found (x04 (x06 or_comm_i)) as proof of P
% 236.69/237.05 Found (fun (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of P
% 236.69/237.05 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((x->Q)->P)
% 236.69/237.05 Found (fun (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((Q->x)->((x->Q)->P))
% 236.69/237.05 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 236.69/237.05 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 236.69/237.05 Found (and_rect20 (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 237.47/237.85 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 237.47/237.85 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 237.47/237.85 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 237.47/237.85 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 237.47/237.85 Found x000:=(x00 x011):R
% 237.47/237.85 Found (x00 x011) as proof of R
% 237.47/237.85 Found (x00 x011) as proof of R
% 237.47/237.85 Found x010:=(x01 x001):((iff P) Q)
% 237.47/237.85 Found x010 as proof of ((iff P) Q)
% 237.47/237.85 Found x02:((iff Q) x)
% 237.47/237.85 Instantiate: x:=P:Prop
% 237.47/237.85 Found x02 as proof of ((iff Q) P)
% 237.47/237.85 Found (iff_sym00 x02) as proof of ((and (P->Q)) (Q->P))
% 237.47/237.85 Found ((iff_sym0 P) x02) as proof of ((and (P->Q)) (Q->P))
% 237.47/237.85 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 237.47/237.85 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 237.47/237.85 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 237.47/237.85 Found x1:(((iff P) Q)->R)
% 237.47/237.85 Instantiate: x:=(((iff P) Q)->R):Prop
% 237.47/237.85 Found x1 as proof of x
% 237.47/237.85 Found x011:x
% 237.47/237.85 Found x011 as proof of Q
% 237.47/237.85 Found x020:Q
% 237.47/237.85 Found x020 as proof of x
% 237.47/237.85 Found x011:x
% 237.47/237.85 Found x011 as proof of x
% 237.47/237.85 Found x010:=(x01 x000):((iff P) Q)
% 237.47/237.85 Found x010 as proof of ((iff P) Q)
% 237.47/237.85 Found x20:=(x2 x10):((iff P) Q)
% 237.47/237.85 Found x20 as proof of ((iff P) Q)
% 237.47/237.85 Found x020:Q
% 237.47/237.85 Found x020 as proof of Q
% 237.47/237.85 Found x010:=(x01 x020):x
% 237.47/237.85 Instantiate: x:=P:Prop
% 237.47/237.85 Found (x01 x020) as proof of P
% 237.47/237.85 Found (x01 x020) as proof of P
% 237.47/237.85 Found x030:x
% 237.47/237.85 Found x030 as proof of Q
% 237.47/237.85 Found x030:x
% 237.47/237.85 Found x030 as proof of x
% 237.47/237.85 Found x000:=(x00 x011):R
% 237.47/237.85 Found (x00 x011) as proof of R
% 237.47/237.85 Found (x00 x011) as proof of R
% 237.47/237.85 Found x030:=(x03 x020):P
% 237.47/237.85 Found (x03 x020) as proof of P
% 237.47/237.85 Found (x03 x020) as proof of P
% 237.47/237.85 Found x010:=(x01 x001):((iff P) Q)
% 237.47/237.85 Found x010 as proof of ((iff P) Q)
% 237.47/237.85 Found x010:=(x01 x000):((iff P) Q)
% 237.47/237.85 Found (x01 x000) as proof of ((iff P) Q)
% 237.47/237.85 Found (x01 x000) as proof of ((iff P) Q)
% 237.47/237.85 Found x020:=(x02 x030):Q
% 237.47/237.85 Found (x02 x030) as proof of Q
% 237.47/237.85 Found (x02 x030) as proof of Q
% 237.47/237.85 Found x010:=(x01 x020):x
% 237.47/237.85 Instantiate: x:=P:Prop
% 237.47/237.85 Found (x01 x020) as proof of P
% 237.47/237.85 Found (x01 x020) as proof of P
% 237.47/237.85 Found x000:=(x00 x011):R
% 237.47/237.85 Found (x00 x011) as proof of R
% 237.47/237.85 Found (x00 x011) as proof of R
% 237.47/237.85 Found x030:=(x03 x020):P
% 237.47/237.85 Found (x03 x020) as proof of P
% 237.47/237.85 Found (x03 x020) as proof of P
% 237.47/237.85 Found x10:R
% 237.47/237.85 Instantiate: x:=R:Prop
% 237.47/237.85 Found x10 as proof of x
% 237.47/237.85 Found x010:=(x01 x020):x
% 237.47/237.85 Instantiate: x:=P:Prop
% 237.47/237.85 Found (x01 x020) as proof of P
% 237.47/237.85 Found (x01 x020) as proof of P
% 237.47/237.85 Found x030:x
% 237.47/237.85 Instantiate: x:=P:Prop
% 237.47/237.85 Found x030 as proof of P
% 237.47/237.85 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 237.47/237.85 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 237.47/237.85 Found eta_expansion as proof of x
% 237.47/237.85 Found x030:=(x03 x020):P
% 237.47/237.85 Found (x03 x020) as proof of P
% 237.47/237.85 Found (x03 x020) as proof of P
% 237.47/237.85 Found x010:=(x01 x000):((iff P) Q)
% 237.47/237.85 Found (x01 x000) as proof of ((iff P) Q)
% 237.47/237.85 Found (x01 x000) as proof of ((iff P) Q)
% 237.47/237.85 Found x010:=(x01 x001):((iff P) Q)
% 237.47/237.85 Found (x01 x001) as proof of ((iff P) Q)
% 237.47/237.85 Found (x01 x001) as proof of ((iff P) Q)
% 237.47/237.85 Found x20:=(x2 x11):((iff P) Q)
% 237.47/237.85 Found (x2 x11) as proof of ((iff P) Q)
% 237.47/237.85 Found (x2 x11) as proof of ((iff P) Q)
% 237.47/237.85 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 237.47/237.85 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 237.47/237.85 Found iff_sym as proof of x
% 237.47/237.85 Found x021:Q
% 237.47/237.85 Instantiate: x:=Q:Prop
% 237.47/237.85 Found x021 as proof of x
% 239.11/239.47 Found x010:=(x01 x000):((iff P) Q)
% 239.11/239.47 Found (x01 x000) as proof of ((iff P) Q)
% 239.11/239.47 Found (x01 x000) as proof of ((iff P) Q)
% 239.11/239.47 Found x030:=(x03 x020):P
% 239.11/239.47 Found (x03 x020) as proof of P
% 239.11/239.47 Found (x03 x020) as proof of P
% 239.11/239.47 Found x000:=(x00 x011):R
% 239.11/239.47 Found (x00 x011) as proof of R
% 239.11/239.47 Found (x00 x011) as proof of R
% 239.11/239.47 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 239.11/239.47 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 239.11/239.47 Found ex_intro0 as proof of x
% 239.11/239.47 Found (x04 ex_intro0) as proof of Q
% 239.11/239.47 Found (x04 ex_intro0) as proof of Q
% 239.11/239.47 Found x010:=(x01 x001):((iff P) Q)
% 239.11/239.47 Found x010 as proof of ((iff P) Q)
% 239.11/239.47 Found x010:=(x01 x000):((iff P) Q)
% 239.11/239.47 Found x010 as proof of ((iff P) Q)
% 239.11/239.47 Found x010:=(x01 x000):((iff P) Q)
% 239.11/239.47 Found x010 as proof of ((iff P) Q)
% 239.11/239.47 Found x011:((iff P) Q)
% 239.11/239.47 Instantiate: x:=((iff P) Q):Prop
% 239.11/239.47 Found x011 as proof of x
% 239.11/239.47 Found x010:=(x01 x000):((iff P) Q)
% 239.11/239.47 Found x010 as proof of ((iff P) Q)
% 239.11/239.47 Found x000:=(x00 x012):R
% 239.11/239.47 Found (x00 x012) as proof of R
% 239.11/239.47 Found (x00 x012) as proof of R
% 239.11/239.47 Found x000:=(x00 x011):R
% 239.11/239.47 Found (x00 x011) as proof of R
% 239.11/239.47 Found (x00 x011) as proof of R
% 239.11/239.47 Found x10:=(x1 x21):R
% 239.11/239.47 Found (x1 x21) as proof of R
% 239.11/239.47 Found (x1 x21) as proof of R
% 239.11/239.47 Found x030:x
% 239.11/239.47 Instantiate: x:=P:Prop
% 239.11/239.47 Found x030 as proof of P
% 239.11/239.47 Found x020:=(x02 x030):Q
% 239.11/239.47 Found (x02 x030) as proof of Q
% 239.11/239.47 Found (x02 x030) as proof of Q
% 239.11/239.47 Found x030:=(x03 x020):P
% 239.11/239.47 Found (x03 x020) as proof of P
% 239.11/239.47 Found (x03 x020) as proof of P
% 239.11/239.47 Found x030:x
% 239.11/239.47 Instantiate: x:=P:Prop
% 239.11/239.47 Found x030 as proof of P
% 239.11/239.47 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 239.11/239.47 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 239.11/239.47 Found ex_intro0 as proof of x
% 239.11/239.47 Found (x04 ex_intro0) as proof of Q
% 239.11/239.47 Found (x04 ex_intro0) as proof of Q
% 239.11/239.47 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 239.11/239.47 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 239.11/239.47 Found ex_intro0 as proof of x
% 239.11/239.47 Found (x04 ex_intro0) as proof of Q
% 239.11/239.47 Found (x04 ex_intro0) as proof of Q
% 239.11/239.47 Found x010:=(x01 x000):((iff P) Q)
% 239.11/239.47 Found x010 as proof of ((iff P) Q)
% 239.11/239.47 Found x001:R
% 239.11/239.47 Instantiate: x:=R:Prop
% 239.11/239.47 Found x001 as proof of x
% 239.11/239.47 Found x030:=(x03 x040):x
% 239.11/239.47 Found (x03 x040) as proof of P
% 239.11/239.47 Found (x03 x040) as proof of P
% 239.11/239.47 Found (x03 x040) as proof of P
% 239.11/239.47 Found x20:=(x2 x11):((iff P) Q)
% 239.11/239.47 Found (x2 x11) as proof of ((iff P) Q)
% 239.11/239.47 Found (x2 x11) as proof of ((iff P) Q)
% 239.11/239.47 Found x2:(R->((iff P) Q))
% 239.11/239.47 Instantiate: x:=(R->((iff P) Q)):Prop
% 239.11/239.47 Found x2 as proof of x
% 239.11/239.47 Found iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 239.11/239.47 Instantiate: x:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% 239.11/239.47 Found iff_sym as proof of x
% 239.11/239.47 Found x020:=(x02 x030):Q
% 239.11/239.47 Found (x02 x030) as proof of Q
% 239.11/239.47 Found (x02 x030) as proof of Q
% 239.11/239.47 Found x030:=(x03 x020):P
% 239.11/239.47 Found (x03 x020) as proof of P
% 239.11/239.47 Found (x03 x020) as proof of P
% 239.11/239.47 Found x030:=(x03 x021):P
% 239.11/239.47 Found (x03 x021) as proof of P
% 239.11/239.47 Found (x03 x021) as proof of P
% 239.11/239.47 Found x020:=(x02 x031):Q
% 239.11/239.47 Found (x02 x031) as proof of Q
% 239.11/239.47 Found (x02 x031) as proof of Q
% 239.11/239.47 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 239.11/239.47 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 239.11/239.47 Found ex_intro0 as proof of x
% 239.11/239.47 Found (x04 ex_intro0) as proof of Q
% 239.11/239.47 Found (x04 ex_intro0) as proof of Q
% 239.11/239.47 Found x020:Q
% 239.11/239.47 Instantiate: x:=Q:Prop
% 239.11/239.47 Found x020 as proof of x
% 239.11/239.47 Found x010:=(x01 x000):((iff P) Q)
% 239.11/239.47 Found x010 as proof of ((iff P) Q)
% 239.11/239.47 Found x010:=(x01 x000):((iff P) Q)
% 239.11/239.47 Found x010 as proof of ((iff P) Q)
% 239.11/239.47 Found x030:x
% 239.11/239.47 Instantiate: x:=P:Prop
% 239.11/239.47 Found (fun (x04:(x->Q))=> x030) as proof of P
% 239.11/239.47 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 239.11/239.47 Found x010:=(x01 x000):((iff P) Q)
% 239.11/239.47 Found x010 as proof of ((iff P) Q)
% 239.11/239.47 Found x000:R
% 239.11/239.47 Instantiate: x:=R:Prop
% 239.11/239.47 Found x000 as proof of x
% 239.11/239.47 Found (x04 x000) as proof of Q
% 239.11/239.47 Found (x04 x000) as proof of Q
% 239.11/239.47 Found (x2 (x04 x000)) as proof of P
% 239.11/239.47 Found (fun (x2:(Q->P))=> (x2 (x04 x000))) as proof of P
% 239.11/239.47 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((Q->P)->P)
% 240.08/240.44 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((P->Q)->((Q->P)->P))
% 240.08/240.44 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 240.08/240.44 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 240.08/240.44 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 240.08/240.44 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 240.08/240.44 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of P
% 240.08/240.44 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of ((x->Q)->P)
% 240.08/240.44 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 240.08/240.44 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 240.08/240.44 Found ex_intro0 as proof of x
% 240.08/240.44 Found (x04 ex_intro0) as proof of Q
% 240.08/240.44 Found (x04 ex_intro0) as proof of Q
% 240.08/240.44 Found x00:((iff Q) x)
% 240.08/240.44 Instantiate: x:=P:Prop
% 240.08/240.44 Found x00 as proof of ((iff Q) P)
% 240.08/240.44 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 240.08/240.44 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 240.08/240.44 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 240.08/240.44 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 240.08/240.44 Found x010:=(x01 x002):((iff P) Q)
% 240.08/240.44 Found (x01 x002) as proof of ((iff P) Q)
% 240.08/240.44 Found (x01 x002) as proof of ((iff P) Q)
% 240.08/240.44 Found x010:=(x01 x000):((iff P) Q)
% 240.08/240.44 Found (x01 x000) as proof of ((iff P) Q)
% 240.08/240.44 Found (x01 x000) as proof of ((iff P) Q)
% 240.08/240.44 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 240.08/240.44 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 240.08/240.44 Found eta_expansion as proof of x
% 240.08/240.44 Found x010:=(x01 x000):((iff P) Q)
% 240.08/240.44 Found x010 as proof of ((iff P) Q)
% 240.08/240.44 Found x030:x
% 240.08/240.44 Instantiate: x:=P:Prop
% 240.08/240.44 Found x030 as proof of P
% 240.08/240.44 Found x030:=(x03 x020):P
% 240.08/240.44 Found (x03 x020) as proof of P
% 240.08/240.44 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 240.08/240.44 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 240.08/240.44 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (x03 x020)) as proof of ((Q->P)->(((iff Q) x)->P))
% 240.08/240.44 Found x010:=(x01 x000):((iff P) Q)
% 240.08/240.44 Found x010 as proof of ((iff P) Q)
% 240.08/240.44 Found x010:=(x01 x000):((iff P) Q)
% 240.08/240.44 Found x010 as proof of ((iff P) Q)
% 240.08/240.44 Found x2:(R->((iff P) Q))
% 240.08/240.44 Instantiate: x:=(R->((iff P) Q)):Prop
% 240.08/240.44 Found x2 as proof of x
% 240.08/240.44 Found x030:=(x03 x020):P
% 240.08/240.44 Found (x03 x020) as proof of P
% 240.08/240.44 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 240.08/240.44 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 240.08/240.44 Found x030:x
% 240.08/240.44 Instantiate: x:=P:Prop
% 240.08/240.44 Found x030 as proof of P
% 240.08/240.44 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 240.08/240.44 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 240.08/240.44 Found eta_expansion as proof of x
% 240.08/240.44 Found x10:=(x1 x21):R
% 240.08/240.44 Found (x1 x21) as proof of R
% 240.08/240.44 Found (x1 x21) as proof of R
% 240.08/240.44 Found x000:=(x00 x011):R
% 240.08/240.44 Found (x00 x011) as proof of R
% 240.08/240.44 Found (x00 x011) as proof of R
% 240.08/240.44 Found x010:=(x01 x000):((iff P) Q)
% 240.08/240.44 Found x010 as proof of ((iff P) Q)
% 240.08/240.44 Found x020:Q
% 240.08/240.44 Instantiate: x:=Q:Prop
% 240.08/240.44 Found x020 as proof of x
% 240.08/240.44 Found x020:Q
% 240.08/240.44 Instantiate: x:=Q:Prop
% 240.08/240.44 Found x020 as proof of x
% 240.08/240.44 Found x010:=(x01 x001):((iff P) Q)
% 240.08/240.44 Found x010 as proof of ((iff P) Q)
% 240.08/240.44 Found x020:Q
% 240.08/240.44 Instantiate: x:=Q:Prop
% 240.08/240.44 Found x020 as proof of x
% 240.08/240.44 Found x031:x
% 240.08/240.44 Instantiate: x:=P:Prop
% 240.08/240.44 Found (fun (x04:(x->Q))=> x031) as proof of P
% 240.08/240.44 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 240.08/240.44 Found x030:x
% 240.08/240.44 Instantiate: x:=P:Prop
% 240.08/240.44 Found (fun (x04:(x->Q))=> x030) as proof of P
% 240.08/240.44 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 240.08/240.44 Found x10:=(x1 x21):R
% 240.08/240.44 Found (x1 x21) as proof of R
% 240.08/240.44 Found (x1 x21) as proof of R
% 240.95/241.33 Found x010:=(x01 x000):((iff P) Q)
% 240.95/241.33 Found x010 as proof of ((iff P) Q)
% 240.95/241.33 Found x00:((iff Q) x)
% 240.95/241.33 Instantiate: x:=P:Prop
% 240.95/241.33 Found x00 as proof of ((iff Q) P)
% 240.95/241.33 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 240.95/241.33 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 240.95/241.33 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 240.95/241.33 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 240.95/241.33 Found x030:x
% 240.95/241.33 Instantiate: x:=P:Prop
% 240.95/241.33 Found (fun (x04:(x->Q))=> x030) as proof of P
% 240.95/241.33 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 240.95/241.33 Found x020:Q
% 240.95/241.33 Instantiate: x:=Q:Prop
% 240.95/241.33 Found x020 as proof of x
% 240.95/241.33 Found x020:Q
% 240.95/241.33 Instantiate: x:=Q:Prop
% 240.95/241.33 Found x020 as proof of x
% 240.95/241.33 Found x20:((iff P) Q)
% 240.95/241.33 Instantiate: x:=((iff P) Q):Prop
% 240.95/241.33 Found x20 as proof of x
% 240.95/241.33 Found x030:x
% 240.95/241.33 Found x030 as proof of Q
% 240.95/241.33 Found x030:x
% 240.95/241.33 Found x030 as proof of x
% 240.95/241.33 Found x020:Q
% 240.95/241.33 Instantiate: x:=Q:Prop
% 240.95/241.33 Found x020 as proof of x
% 240.95/241.33 Found x030:=(x03 x040):x
% 240.95/241.33 Found (x03 x040) as proof of P
% 240.95/241.33 Found (x03 x040) as proof of P
% 240.95/241.33 Found (x03 x040) as proof of P
% 240.95/241.33 Found x010:=(x01 x001):((iff P) Q)
% 240.95/241.33 Found x010 as proof of ((iff P) Q)
% 240.95/241.33 Found or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 240.95/241.33 Instantiate: x:=(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A))):Prop
% 240.95/241.33 Found or_comm_i as proof of x
% 240.95/241.33 Found (x06 or_comm_i) as proof of Q
% 240.95/241.33 Found (x06 or_comm_i) as proof of Q
% 240.95/241.33 Found (x04 (x06 or_comm_i)) as proof of P
% 240.95/241.33 Found (fun (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of P
% 240.95/241.33 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((x->Q)->P)
% 240.95/241.33 Found (fun (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((Q->x)->((x->Q)->P))
% 240.95/241.33 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 240.95/241.33 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 240.95/241.33 Found (and_rect20 (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 240.95/241.33 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 240.95/241.33 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 240.95/241.33 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 240.95/241.33 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 240.95/241.33 Found x010:=(x01 x002):((iff P) Q)
% 240.95/241.33 Found x010 as proof of ((iff P) Q)
% 240.95/241.33 Found x000:=(x00 x011):R
% 240.95/241.33 Found (x00 x011) as proof of R
% 240.95/241.33 Found (x00 x011) as proof of R
% 240.95/241.33 Found x030:=(x03 x040):x
% 240.95/241.33 Instantiate: x:=P:Prop
% 240.95/241.33 Found (x03 x040) as proof of P
% 240.95/241.33 Found (x03 x040) as proof of P
% 240.95/241.33 Found x010:=(x01 x000):((iff P) Q)
% 240.95/241.33 Found x010 as proof of ((iff P) Q)
% 240.95/241.33 Found x020:Q
% 240.95/241.33 Instantiate: x:=Q:Prop
% 240.95/241.33 Found x020 as proof of x
% 240.95/241.33 Found x021:Q
% 240.95/241.33 Instantiate: x:=Q:Prop
% 240.95/241.33 Found x021 as proof of x
% 240.95/241.33 Found x020:Q
% 240.95/241.33 Instantiate: x:=Q:Prop
% 240.95/241.33 Found x020 as proof of x
% 240.95/241.33 Found x10:R
% 240.95/241.33 Instantiate: x:=R:Prop
% 240.95/241.33 Found x10 as proof of x
% 240.95/241.33 Found x000:=(x00 x011):R
% 240.95/241.33 Found (x00 x011) as proof of R
% 240.95/241.33 Found (x00 x011) as proof of R
% 240.95/241.33 Found x000:=(x00 x011):R
% 240.95/241.33 Found (x00 x011) as proof of R
% 240.95/241.33 Found (x00 x011) as proof of R
% 240.95/241.33 Found x000:=(x00 x010):R
% 240.95/241.33 Found (x00 x010) as proof of R
% 240.95/241.33 Found (x00 x010) as proof of R
% 240.95/241.33 Found x020:Q
% 240.95/241.33 Instantiate: x:=Q:Prop
% 240.95/241.33 Found x020 as proof of x
% 240.95/241.33 Found x030:=(x03 x040):x
% 240.95/241.33 Found (x03 x040) as proof of P
% 240.95/241.33 Found (x03 x040) as proof of P
% 240.95/241.33 Found (x03 x040) as proof of P
% 240.95/241.33 Found x030:=(x03 x040):x
% 240.95/241.33 Found (x03 x040) as proof of P
% 240.95/241.33 Found (x03 x040) as proof of P
% 240.95/241.33 Found (x03 x040) as proof of P
% 241.85/242.22 Found x030:=(x03 x040):x
% 241.85/242.22 Found (x03 x040) as proof of P
% 241.85/242.22 Found (x03 x040) as proof of P
% 241.85/242.22 Found (x03 x040) as proof of P
% 241.85/242.22 Found x000:=(x00 x010):R
% 241.85/242.22 Found (x00 x010) as proof of R
% 241.85/242.22 Found (x00 x010) as proof of R
% 241.85/242.22 Found x020:Q
% 241.85/242.22 Instantiate: x:=Q:Prop
% 241.85/242.22 Found x020 as proof of x
% 241.85/242.22 Found x030:=(x03 x020):P
% 241.85/242.22 Found (x03 x020) as proof of P
% 241.85/242.22 Found (x03 x020) as proof of P
% 241.85/242.22 Found x20:((iff P) Q)
% 241.85/242.22 Instantiate: x:=((iff P) Q):Prop
% 241.85/242.22 Found x20 as proof of x
% 241.85/242.22 Found x010:=(x01 x000):((iff P) Q)
% 241.85/242.22 Found x010 as proof of ((iff P) Q)
% 241.85/242.22 Found x020:Q
% 241.85/242.22 Instantiate: x:=Q:Prop
% 241.85/242.22 Found x020 as proof of x
% 241.85/242.22 Found x20:=(x2 x11):((iff P) Q)
% 241.85/242.22 Found (x2 x11) as proof of ((iff P) Q)
% 241.85/242.22 Found (x2 x11) as proof of ((iff P) Q)
% 241.85/242.22 Found x010:=(x01 x000):((iff P) Q)
% 241.85/242.22 Found x010 as proof of ((iff P) Q)
% 241.85/242.22 Found x010:=(x01 x000):((iff P) Q)
% 241.85/242.22 Found x010 as proof of ((iff P) Q)
% 241.85/242.22 Found x010:=(x01 x000):((iff P) Q)
% 241.85/242.22 Found x010 as proof of ((iff P) Q)
% 241.85/242.22 Found x010:=(x01 x000):((iff P) Q)
% 241.85/242.22 Found x010 as proof of ((iff P) Q)
% 241.85/242.22 Found x010:=(x01 x000):((iff P) Q)
% 241.85/242.22 Found x010 as proof of ((iff P) Q)
% 241.85/242.22 Found x030:=(x03 x040):x
% 241.85/242.22 Found (x03 x040) as proof of P
% 241.85/242.22 Found (x03 x040) as proof of P
% 241.85/242.22 Found (x03 x040) as proof of P
% 241.85/242.22 Found x00:((iff Q) x)
% 241.85/242.22 Instantiate: x:=P:Prop
% 241.85/242.22 Found x00 as proof of ((iff Q) P)
% 241.85/242.22 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 241.85/242.22 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 241.85/242.22 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 241.85/242.22 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 241.85/242.22 Found x010:=(x01 x000):((iff P) Q)
% 241.85/242.22 Found x010 as proof of ((iff P) Q)
% 241.85/242.22 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 241.85/242.22 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 241.85/242.22 Found or_ind as proof of x
% 241.85/242.22 Found (x04 or_ind) as proof of Q
% 241.85/242.22 Found (x04 or_ind) as proof of Q
% 241.85/242.22 Found x030:=(x03 x020):P
% 241.85/242.22 Found (x03 x020) as proof of P
% 241.85/242.22 Found (x03 x020) as proof of P
% 241.85/242.22 Found x000:=(x00 x010):R
% 241.85/242.22 Found (x00 x010) as proof of R
% 241.85/242.22 Found (x00 x010) as proof of R
% 241.85/242.22 Found x030:x
% 241.85/242.22 Found x030 as proof of x
% 241.85/242.22 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 241.85/242.22 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 241.85/242.22 Found eta_expansion as proof of x
% 241.85/242.22 Found x030:x
% 241.85/242.22 Instantiate: x:=P:Prop
% 241.85/242.22 Found x030 as proof of P
% 241.85/242.22 Found x000:R
% 241.85/242.22 Instantiate: x:=R:Prop
% 241.85/242.22 Found x000 as proof of x
% 241.85/242.22 Found (x06 x000) as proof of Q
% 241.85/242.22 Found (x06 x000) as proof of Q
% 241.85/242.22 Found (x05 (x06 x000)) as proof of P
% 241.85/242.22 Found (fun (x06:(x->Q))=> (x05 (x06 x000))) as proof of P
% 241.85/242.22 Found (fun (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((x->Q)->P)
% 241.85/242.22 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((Q->P)->((x->Q)->P))
% 241.85/242.22 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((P->Q)->((Q->P)->((x->Q)->P)))
% 241.85/242.22 Found (and_rect20 (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 241.85/242.22 Found ((and_rect2 ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 241.85/242.22 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 241.85/242.22 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 241.85/242.22 Found (fun (x03:(Q->x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))))) as proof of ((x->Q)->P)
% 241.85/242.22 Found (fun (x03:(Q->x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))))) as proof of ((Q->x)->((x->Q)->P))
% 241.85/242.22 Found x010:=(x01 x000):((iff P) Q)
% 241.85/242.22 Found x010 as proof of ((iff P) Q)
% 241.85/242.22 Found x010:=(x01 x001):((iff P) Q)
% 241.85/242.22 Found x010 as proof of ((iff P) Q)
% 243.11/243.51 Found x20:=(x2 x10):((iff P) Q)
% 243.11/243.51 Found x20 as proof of ((iff P) Q)
% 243.11/243.51 Found x010:=(x01 x000):((iff P) Q)
% 243.11/243.51 Found x010 as proof of ((iff P) Q)
% 243.11/243.51 Found x10:R
% 243.11/243.51 Instantiate: x:=R:Prop
% 243.11/243.51 Found x10 as proof of x
% 243.11/243.51 Found x010:=(x01 x000):((iff P) Q)
% 243.11/243.51 Found x010 as proof of ((iff P) Q)
% 243.11/243.51 Found x010:=(x01 x000):((iff P) Q)
% 243.11/243.51 Found x010 as proof of ((iff P) Q)
% 243.11/243.51 Found x030:x
% 243.11/243.51 Found x030 as proof of Q
% 243.11/243.51 Found x010:=(x01 x000):((iff P) Q)
% 243.11/243.51 Found x010 as proof of ((iff P) Q)
% 243.11/243.51 Found x010:=(x01 x002):((iff P) Q)
% 243.11/243.51 Found x010 as proof of ((iff P) Q)
% 243.11/243.51 Found x021:Q
% 243.11/243.51 Instantiate: x:=Q:Prop
% 243.11/243.51 Found x021 as proof of x
% 243.11/243.51 Found x20:=(x2 x11):((iff P) Q)
% 243.11/243.51 Found (x2 x11) as proof of ((iff P) Q)
% 243.11/243.51 Found (x2 x11) as proof of ((iff P) Q)
% 243.11/243.51 Found x010:=(x01 x000):((iff P) Q)
% 243.11/243.51 Found (x01 x000) as proof of ((iff P) Q)
% 243.11/243.51 Found (x01 x000) as proof of ((iff P) Q)
% 243.11/243.51 Found x010:=(x01 x001):((iff P) Q)
% 243.11/243.51 Found (x01 x001) as proof of ((iff P) Q)
% 243.11/243.51 Found (x01 x001) as proof of ((iff P) Q)
% 243.11/243.51 Found x000:=(x00 x010):R
% 243.11/243.51 Found (x00 x010) as proof of R
% 243.11/243.51 Found (x00 x010) as proof of R
% 243.11/243.51 Found x020:=(x02 x030):Q
% 243.11/243.51 Found (x02 x030) as proof of Q
% 243.11/243.51 Found (x02 x030) as proof of Q
% 243.11/243.51 Found x020:Q
% 243.11/243.51 Found x020 as proof of Q
% 243.11/243.51 Found (x01 x020) as proof of R
% 243.11/243.51 Found (x01 x020) as proof of R
% 243.11/243.51 Found (x01 x020) as proof of R
% 243.11/243.51 Found x010:=(x01 x000):((iff P) Q)
% 243.11/243.51 Found x010 as proof of ((iff P) Q)
% 243.11/243.51 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 243.11/243.51 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 243.11/243.51 Found ex_intro0 as proof of x
% 243.11/243.51 Found (x04 ex_intro0) as proof of Q
% 243.11/243.51 Found (x04 ex_intro0) as proof of Q
% 243.11/243.51 Found x00:((iff Q) x)
% 243.11/243.51 Instantiate: x:=P:Prop
% 243.11/243.51 Found x00 as proof of ((iff Q) P)
% 243.11/243.51 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 243.11/243.51 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 243.11/243.51 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 243.11/243.51 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 243.11/243.51 Found x030:=(x03 x040):x
% 243.11/243.51 Instantiate: x:=P:Prop
% 243.11/243.51 Found (x03 x040) as proof of P
% 243.11/243.51 Found (x03 x040) as proof of P
% 243.11/243.51 Found x010:=(x01 x000):((iff P) Q)
% 243.11/243.51 Found (x01 x000) as proof of ((iff P) Q)
% 243.11/243.51 Found (x01 x000) as proof of ((iff P) Q)
% 243.11/243.51 Found x020:=(x02 x031):Q
% 243.11/243.51 Found (x02 x031) as proof of Q
% 243.11/243.51 Found (x02 x031) as proof of Q
% 243.11/243.51 Found x000:=(x00 x011):R
% 243.11/243.51 Found (x00 x011) as proof of R
% 243.11/243.51 Found (x00 x011) as proof of R
% 243.11/243.51 Found x000:=(x00 x010):R
% 243.11/243.51 Found (x00 x010) as proof of R
% 243.11/243.51 Found (x00 x010) as proof of R
% 243.11/243.51 Found x030:=(x03 x021):P
% 243.11/243.51 Found (x03 x021) as proof of P
% 243.11/243.51 Found (x03 x021) as proof of P
% 243.11/243.51 Found x000:=(x00 x011):R
% 243.11/243.51 Found (x00 x011) as proof of R
% 243.11/243.51 Found (x00 x011) as proof of R
% 243.11/243.51 Found x030:=(x03 x020):P
% 243.11/243.51 Found (x03 x020) as proof of P
% 243.11/243.51 Found (x03 x020) as proof of P
% 243.11/243.51 Found x20:=(x2 x11):((iff P) Q)
% 243.11/243.51 Found (x2 x11) as proof of ((iff P) Q)
% 243.11/243.51 Found (x2 x11) as proof of ((iff P) Q)
% 243.11/243.51 Found x010:=(x01 x000):((iff P) Q)
% 243.11/243.51 Found x010 as proof of ((iff P) Q)
% 243.11/243.51 Found x00:((iff Q) x)
% 243.11/243.51 Instantiate: x:=P:Prop
% 243.11/243.51 Found x00 as proof of ((iff Q) P)
% 243.11/243.51 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 243.11/243.51 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 243.11/243.51 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 243.11/243.51 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 243.11/243.51 Found x010:=(x01 x000):((iff P) Q)
% 243.11/243.51 Found x010 as proof of ((iff P) Q)
% 243.11/243.51 Found x010:=(x01 x022):x
% 243.11/243.51 Instantiate: x:=P:Prop
% 243.11/243.51 Found (x01 x022) as proof of P
% 243.11/243.51 Found (x01 x022) as proof of P
% 243.11/243.51 Found x20:=(x2 x10):((iff P) Q)
% 243.11/243.51 Found x20 as proof of ((iff P) Q)
% 243.11/243.51 Found x000:=(x00 x010):R
% 243.11/243.51 Found (x00 x010) as proof of R
% 243.11/243.51 Found (x00 x010) as proof of R
% 243.11/243.51 Found x020:Q
% 243.11/243.51 Found x020 as proof of Q
% 243.11/243.51 Found (x01 x020) as proof of R
% 243.11/243.51 Found (x01 x020) as proof of R
% 243.11/243.51 Found (x01 x020) as proof of R
% 243.11/243.51 Found x010:=(x01 x000):((iff P) Q)
% 243.11/243.51 Found x010 as proof of ((iff P) Q)
% 243.11/243.51 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 243.11/243.51 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 243.11/243.51 Found or_ind as proof of x
% 243.11/243.51 Found (x04 or_ind) as proof of Q
% 243.11/243.51 Found (x04 or_ind) as proof of Q
% 243.11/243.51 Found x010:=(x01 x000):((iff P) Q)
% 243.11/243.51 Found (x01 x000) as proof of ((iff P) Q)
% 243.11/243.51 Found (x01 x000) as proof of ((iff P) Q)
% 243.11/243.51 Found x010:=(x01 x000):((iff P) Q)
% 243.11/243.51 Found (x01 x000) as proof of ((iff P) Q)
% 243.11/243.51 Found (x01 x000) as proof of ((iff P) Q)
% 244.73/245.07 Found x000:=(x00 x010):R
% 244.73/245.07 Found (x00 x010) as proof of R
% 244.73/245.07 Found (x00 x010) as proof of R
% 244.73/245.07 Found x010:=(x01 x020):x
% 244.73/245.07 Found (x01 x020) as proof of P
% 244.73/245.07 Found (x01 x020) as proof of P
% 244.73/245.07 Found (x01 x020) as proof of P
% 244.73/245.07 Found x010:=(x01 x000):((iff P) Q)
% 244.73/245.07 Found x010 as proof of ((iff P) Q)
% 244.73/245.07 Found x010:=(x01 x000):((iff P) Q)
% 244.73/245.07 Found x010 as proof of ((iff P) Q)
% 244.73/245.07 Found x010:=(x01 x000):((iff P) Q)
% 244.73/245.07 Found x010 as proof of ((iff P) Q)
% 244.73/245.07 Found x030:x
% 244.73/245.07 Instantiate: x:=P:Prop
% 244.73/245.07 Found (fun (x04:(x->Q))=> x030) as proof of P
% 244.73/245.07 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 244.73/245.07 Found x030:P
% 244.73/245.07 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 244.73/245.07 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 244.73/245.07 Found x010:=(x01 x000):((iff P) Q)
% 244.73/245.07 Found x010 as proof of ((iff P) Q)
% 244.73/245.07 Found x000:=(x00 x011):R
% 244.73/245.07 Found (x00 x011) as proof of R
% 244.73/245.07 Found (x00 x011) as proof of R
% 244.73/245.07 Found x000:=(x00 x011):R
% 244.73/245.07 Found (x00 x011) as proof of R
% 244.73/245.07 Found (x00 x011) as proof of R
% 244.73/245.07 Found x030:=(x03 x020):P
% 244.73/245.07 Found (x03 x020) as proof of P
% 244.73/245.07 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 244.73/245.07 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 244.73/245.07 Found x02:((iff Q) x)
% 244.73/245.07 Instantiate: x:=P:Prop
% 244.73/245.07 Found x02 as proof of ((iff Q) P)
% 244.73/245.07 Found (iff_sym10 x02) as proof of ((and (P->Q)) (Q->P))
% 244.73/245.07 Found ((iff_sym1 P) x02) as proof of ((and (P->Q)) (Q->P))
% 244.73/245.07 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 244.73/245.07 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 244.73/245.07 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 244.73/245.07 Found x030:x
% 244.73/245.07 Instantiate: x:=P:Prop
% 244.73/245.07 Found (fun (x04:(x->Q))=> x030) as proof of P
% 244.73/245.07 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 244.73/245.07 Found x000:=(x00 x011):R
% 244.73/245.07 Found (x00 x011) as proof of R
% 244.73/245.07 Found (x00 x011) as proof of R
% 244.73/245.07 Found x030:=(x03 x020):P
% 244.73/245.07 Found (x03 x020) as proof of P
% 244.73/245.07 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 244.73/245.07 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 244.73/245.07 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (x03 x020)) as proof of ((Q->P)->(((iff Q) x)->P))
% 244.73/245.07 Found x10:=(x1 x21):R
% 244.73/245.07 Found (x1 x21) as proof of R
% 244.73/245.07 Found (x1 x21) as proof of R
% 244.73/245.07 Found x20:=(x2 x10):((iff P) Q)
% 244.73/245.07 Found x20 as proof of ((iff P) Q)
% 244.73/245.07 Found x010:=(x01 x000):((iff P) Q)
% 244.73/245.07 Found x010 as proof of ((iff P) Q)
% 244.73/245.07 Found x010:=(x01 x000):((iff P) Q)
% 244.73/245.07 Found x010 as proof of ((iff P) Q)
% 244.73/245.07 Found x031:x
% 244.73/245.07 Instantiate: x:=P:Prop
% 244.73/245.07 Found (fun (x04:(x->Q))=> x031) as proof of P
% 244.73/245.07 Found (fun (x04:(x->Q))=> x031) as proof of ((x->Q)->P)
% 244.73/245.07 Found x010:=(x01 x001):((iff P) Q)
% 244.73/245.07 Found x010 as proof of ((iff P) Q)
% 244.73/245.07 Found x010:=(x01 x000):((iff P) Q)
% 244.73/245.07 Found x010 as proof of ((iff P) Q)
% 244.73/245.07 Found x20:=(x2 x10):((iff P) Q)
% 244.73/245.07 Found x20 as proof of ((iff P) Q)
% 244.73/245.07 Found x000:=(x00 x011):R
% 244.73/245.07 Found (x00 x011) as proof of R
% 244.73/245.07 Found (x00 x011) as proof of R
% 244.73/245.07 Found x000:=(x00 x011):R
% 244.73/245.07 Found (x00 x011) as proof of R
% 244.73/245.07 Found (x00 x011) as proof of R
% 244.73/245.07 Found x000:=(x00 x011):R
% 244.73/245.07 Found (x00 x011) as proof of R
% 244.73/245.07 Found (x00 x011) as proof of R
% 244.73/245.07 Found x030:=(x03 x040):x
% 244.73/245.07 Found (x03 x040) as proof of R
% 244.73/245.07 Found (x03 x040) as proof of R
% 244.73/245.07 Found (x03 x040) as proof of R
% 244.73/245.07 Found x010:x
% 244.73/245.07 Found x010 as proof of Q
% 244.73/245.07 Found x030:x
% 244.73/245.07 Instantiate: x:=P:Prop
% 244.73/245.07 Found (fun (x04:(x->Q))=> x030) as proof of P
% 244.73/245.07 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 244.73/245.07 Found x010:=(x01 x001):((iff P) Q)
% 244.73/245.07 Found x010 as proof of ((iff P) Q)
% 244.73/245.07 Found x010:=(x01 x000):((iff P) Q)
% 244.73/245.07 Found (x01 x000) as proof of ((iff P) Q)
% 244.73/245.07 Found (x01 x000) as proof of ((iff P) Q)
% 244.73/245.07 Found x010:=(x01 x000):((iff P) Q)
% 244.73/245.07 Found (x01 x000) as proof of ((iff P) Q)
% 244.73/245.07 Found (x01 x000) as proof of ((iff P) Q)
% 244.73/245.07 Found x030:=(x03 x020):P
% 244.73/245.07 Found (x03 x020) as proof of P
% 244.73/245.07 Found (x03 x020) as proof of P
% 244.73/245.07 Found x030:x
% 244.73/245.07 Instantiate: x:=P:Prop
% 244.73/245.07 Found (fun (x04:(x->Q))=> x030) as proof of P
% 244.73/245.07 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 244.73/245.07 Found x010:=(x01 x001):((iff P) Q)
% 244.73/245.07 Found (x01 x001) as proof of ((iff P) Q)
% 244.73/245.07 Found (x01 x001) as proof of ((iff P) Q)
% 244.73/245.07 Found x10:=(x1 x21):R
% 244.73/245.07 Found (x1 x21) as proof of R
% 244.73/245.07 Found (x1 x21) as proof of R
% 244.73/245.07 Found x010:=(x01 x001):((iff P) Q)
% 244.73/245.07 Found (x01 x001) as proof of ((iff P) Q)
% 244.73/245.07 Found (x01 x001) as proof of ((iff P) Q)
% 244.73/245.07 Found x030:=(x03 x021):P
% 244.73/245.07 Found (x03 x021) as proof of P
% 244.73/245.07 Found (x03 x021) as proof of P
% 245.80/246.19 Found x010:=(x01 x000):((iff P) Q)
% 245.80/246.19 Found (x01 x000) as proof of ((iff P) Q)
% 245.80/246.19 Found (x01 x000) as proof of ((iff P) Q)
% 245.80/246.19 Found x030:=(x03 x020):P
% 245.80/246.19 Found (x03 x020) as proof of P
% 245.80/246.19 Found (x03 x020) as proof of P
% 245.80/246.19 Found x000:=(x00 x011):R
% 245.80/246.19 Found (x00 x011) as proof of R
% 245.80/246.19 Found (x00 x011) as proof of R
% 245.80/246.19 Found x20:=(x2 x11):((iff P) Q)
% 245.80/246.19 Found (x2 x11) as proof of ((iff P) Q)
% 245.80/246.19 Found (x2 x11) as proof of ((iff P) Q)
% 245.80/246.19 Found x030:P
% 245.80/246.19 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 245.80/246.19 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 245.80/246.19 Found x010:=(x01 x000):((iff P) Q)
% 245.80/246.19 Found x010 as proof of ((iff P) Q)
% 245.80/246.19 Found x030:=(x03 x040):x
% 245.80/246.19 Found (x03 x040) as proof of P
% 245.80/246.19 Found (x03 x040) as proof of P
% 245.80/246.19 Found (x03 x040) as proof of P
% 245.80/246.19 Found x000:=(x00 x010):R
% 245.80/246.19 Found (x00 x010) as proof of R
% 245.80/246.19 Found (x00 x010) as proof of R
% 245.80/246.19 Found x010:=(x01 x000):((iff P) Q)
% 245.80/246.19 Found (x01 x000) as proof of ((iff P) Q)
% 245.80/246.19 Found (x01 x000) as proof of ((iff P) Q)
% 245.80/246.19 Found x030:=(x03 x040):x
% 245.80/246.19 Found (x03 x040) as proof of P
% 245.80/246.19 Found (x03 x040) as proof of P
% 245.80/246.19 Found (x03 x040) as proof of P
% 245.80/246.19 Found x030:=(x03 x040):x
% 245.80/246.19 Found (x03 x040) as proof of P
% 245.80/246.19 Found (x03 x040) as proof of P
% 245.80/246.19 Found (x03 x040) as proof of P
% 245.80/246.19 Found x000:R
% 245.80/246.19 Instantiate: x:=R:Prop
% 245.80/246.19 Found x000 as proof of x
% 245.80/246.19 Found (x06 x000) as proof of Q
% 245.80/246.19 Found (x06 x000) as proof of Q
% 245.80/246.19 Found (x05 (x06 x000)) as proof of P
% 245.80/246.19 Found (fun (x06:(x->Q))=> (x05 (x06 x000))) as proof of P
% 245.80/246.19 Found (fun (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((x->Q)->P)
% 245.80/246.19 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((Q->P)->((x->Q)->P))
% 245.80/246.19 Found (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))) as proof of ((P->Q)->((Q->P)->((x->Q)->P)))
% 245.80/246.19 Found (and_rect20 (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 245.80/246.19 Found ((and_rect2 ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 245.80/246.19 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 245.80/246.19 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000)))) as proof of ((x->Q)->P)
% 245.80/246.19 Found (fun (x03:(Q->x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))))) as proof of ((x->Q)->P)
% 245.80/246.19 Found (fun (x03:(Q->x))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((x->Q)->P)) (fun (x04:(P->Q)) (x05:(Q->P)) (x06:(x->Q))=> (x05 (x06 x000))))) as proof of ((Q->x)->((x->Q)->P))
% 245.80/246.19 Found x011:x
% 245.80/246.19 Found x011 as proof of Q
% 245.80/246.19 Found x011:x
% 245.80/246.19 Found x011 as proof of x
% 245.80/246.19 Found x010:=(x01 x000):((iff P) Q)
% 245.80/246.19 Found x010 as proof of ((iff P) Q)
% 245.80/246.19 Found x010:=(x01 x000):((iff P) Q)
% 245.80/246.19 Found x010 as proof of ((iff P) Q)
% 245.80/246.19 Found x000:=(x00 x011):R
% 245.80/246.19 Found (x00 x011) as proof of R
% 245.80/246.19 Found (x00 x011) as proof of R
% 245.80/246.19 Found x000:=(x00 x011):R
% 245.80/246.19 Found (x00 x011) as proof of R
% 245.80/246.19 Found (x00 x011) as proof of R
% 245.80/246.19 Found x010:=(x01 x001):((iff P) Q)
% 245.80/246.19 Found (x01 x001) as proof of ((iff P) Q)
% 245.80/246.19 Found (x01 x001) as proof of ((iff P) Q)
% 245.80/246.19 Found x010:=(x01 x000):((iff P) Q)
% 245.80/246.19 Found (x01 x000) as proof of ((iff P) Q)
% 245.80/246.19 Found (x01 x000) as proof of ((iff P) Q)
% 245.80/246.19 Found x000:=(x00 x011):R
% 245.80/246.19 Found (x00 x011) as proof of R
% 245.80/246.19 Found (x00 x011) as proof of R
% 245.80/246.19 Found x000:=(x00 x011):R
% 245.80/246.19 Found (x00 x011) as proof of R
% 245.80/246.19 Found (x00 x011) as proof of R
% 245.80/246.19 Found x030:=(x03 x040):x
% 245.80/246.19 Found (x03 x040) as proof of P
% 245.80/246.19 Found (x03 x040) as proof of P
% 245.80/246.19 Found (x03 x040) as proof of P
% 245.80/246.19 Found x010:x
% 245.80/246.19 Found x010 as proof of Q
% 245.80/246.19 Found x020:Q
% 245.80/246.19 Found x020 as proof of Q
% 245.80/246.19 Found x011:x
% 245.80/246.19 Found x011 as proof of Q
% 245.80/246.19 Found x20:=(x2 x10):((iff P) Q)
% 245.80/246.19 Found x20 as proof of ((iff P) Q)
% 245.80/246.19 Found x011:x
% 245.80/246.19 Found x011 as proof of x
% 245.80/246.19 Found x010:=(x01 x000):((iff P) Q)
% 245.80/246.19 Found (x01 x000) as proof of ((iff P) Q)
% 245.80/246.19 Found (x01 x000) as proof of ((iff P) Q)
% 245.80/246.19 Found x010:=(x01 x000):((iff P) Q)
% 245.80/246.19 Found (x01 x000) as proof of ((iff P) Q)
% 247.84/248.20 Found (x01 x000) as proof of ((iff P) Q)
% 247.84/248.20 Found x000:=(x00 x011):R
% 247.84/248.20 Found (x00 x011) as proof of R
% 247.84/248.20 Found (x00 x011) as proof of R
% 247.84/248.20 Found x010:=(x01 x001):((iff P) Q)
% 247.84/248.20 Found (x01 x001) as proof of ((iff P) Q)
% 247.84/248.20 Found (x01 x001) as proof of ((iff P) Q)
% 247.84/248.20 Found x20:=(x2 x11):((iff P) Q)
% 247.84/248.20 Found (x2 x11) as proof of ((iff P) Q)
% 247.84/248.20 Found (x2 x11) as proof of ((iff P) Q)
% 247.84/248.20 Found x020:Q
% 247.84/248.20 Found x020 as proof of x
% 247.84/248.20 Found x000:=(x00 x010):R
% 247.84/248.20 Found (x00 x010) as proof of R
% 247.84/248.20 Found (x00 x010) as proof of R
% 247.84/248.20 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 247.84/248.20 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 247.84/248.20 Found or_ind as proof of x
% 247.84/248.20 Found (x04 or_ind) as proof of Q
% 247.84/248.20 Found (x04 or_ind) as proof of Q
% 247.84/248.20 Found x010:=(x01 x000):((iff P) Q)
% 247.84/248.20 Found (x01 x000) as proof of ((iff P) Q)
% 247.84/248.20 Found (x01 x000) as proof of ((iff P) Q)
% 247.84/248.20 Found x030:P
% 247.84/248.20 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 247.84/248.20 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 247.84/248.20 Found x031:x
% 247.84/248.20 Found x031 as proof of Q
% 247.84/248.20 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 247.84/248.20 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 247.84/248.20 Found ex_intro0 as proof of x
% 247.84/248.20 Found (x04 ex_intro0) as proof of Q
% 247.84/248.20 Found (x04 ex_intro0) as proof of Q
% 247.84/248.20 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 247.84/248.20 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 247.84/248.20 Found ex_intro0 as proof of x
% 247.84/248.20 Found (x04 ex_intro0) as proof of Q
% 247.84/248.20 Found (x04 ex_intro0) as proof of Q
% 247.84/248.20 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 247.84/248.20 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 247.84/248.20 Found ex_intro0 as proof of x
% 247.84/248.20 Found (x04 ex_intro0) as proof of Q
% 247.84/248.20 Found (x04 ex_intro0) as proof of Q
% 247.84/248.20 Found x010:=(x01 x000):((iff P) Q)
% 247.84/248.20 Found x010 as proof of ((iff P) Q)
% 247.84/248.20 Found x010:=(x01 x000):((iff P) Q)
% 247.84/248.20 Found x010 as proof of ((iff P) Q)
% 247.84/248.20 Found x010:=(x01 x000):((iff P) Q)
% 247.84/248.20 Found x010 as proof of ((iff P) Q)
% 247.84/248.20 Found x040:Q
% 247.84/248.20 Instantiate: x:=Q:Prop
% 247.84/248.20 Found x040 as proof of x
% 247.84/248.20 Found x031:x
% 247.84/248.20 Found x031 as proof of Q
% 247.84/248.20 Found x000:=(x00 x012):R
% 247.84/248.20 Found (x00 x012) as proof of R
% 247.84/248.20 Found (x00 x012) as proof of R
% 247.84/248.20 Found x040:Q
% 247.84/248.20 Found x040 as proof of x
% 247.84/248.20 Found x010:x
% 247.84/248.20 Found x010 as proof of x
% 247.84/248.20 Found x040:Q
% 247.84/248.20 Found x040 as proof of Q
% 247.84/248.20 Found x010:x
% 247.84/248.20 Found x010 as proof of x
% 247.84/248.20 Found x010:=(x01 x000):((iff P) Q)
% 247.84/248.20 Found x010 as proof of ((iff P) Q)
% 247.84/248.20 Found x010:=(x01 x000):((iff P) Q)
% 247.84/248.20 Found x010 as proof of ((iff P) Q)
% 247.84/248.20 Found x030:x
% 247.84/248.20 Instantiate: x:=P:Prop
% 247.84/248.20 Found (fun (x04:(x->Q))=> x030) as proof of P
% 247.84/248.20 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 247.84/248.20 Found x041:Q
% 247.84/248.20 Found x041 as proof of Q
% 247.84/248.20 Found x041:Q
% 247.84/248.20 Found x041 as proof of x
% 247.84/248.20 Found x030:x
% 247.84/248.20 Found x030 as proof of Q
% 247.84/248.20 Found x031:x
% 247.84/248.20 Found x031 as proof of x
% 247.84/248.20 Found x010:=(x01 x000):((iff P) Q)
% 247.84/248.20 Found (x01 x000) as proof of ((iff P) Q)
% 247.84/248.20 Found (x01 x000) as proof of ((iff P) Q)
% 247.84/248.20 Found x010:=(x01 x000):((iff P) Q)
% 247.84/248.20 Found x010 as proof of ((iff P) Q)
% 247.84/248.20 Found x020:Q
% 247.84/248.20 Found x020 as proof of x
% 247.84/248.20 Found x010:x
% 247.84/248.20 Found x010 as proof of Q
% 247.84/248.20 Found x020:Q
% 247.84/248.20 Found x020 as proof of Q
% 247.84/248.20 Found x010:=(x01 x000):((iff P) Q)
% 247.84/248.20 Found (x01 x000) as proof of ((iff P) Q)
% 247.84/248.20 Found (x01 x000) as proof of ((iff P) Q)
% 247.84/248.20 Found x000:=(x00 x010):R
% 247.84/248.20 Found (x00 x010) as proof of R
% 247.84/248.20 Found (x00 x010) as proof of R
% 247.84/248.20 Found x020:Q
% 247.84/248.20 Found x020 as proof of Q
% 247.84/248.20 Found x000:=(x00 x012):R
% 247.84/248.20 Found (x00 x012) as proof of R
% 247.84/248.20 Found (x00 x012) as proof of R
% 247.84/248.20 Found x000:=(x00 x010):R
% 247.84/248.20 Found (x00 x010) as proof of R
% 247.84/248.20 Found (x00 x010) as proof of R
% 247.84/248.20 Found x030:x
% 247.84/248.20 Found x030 as proof of x
% 247.84/248.20 Found x010:x
% 247.84/248.20 Found x010 as proof of Q
% 247.84/248.20 Found x020:Q
% 247.84/248.20 Found x020 as proof of x
% 247.84/248.20 Found iff_sym100:=(iff_sym10 x20):((iff Q) P)
% 247.84/248.20 Found (iff_sym10 x20) as proof of ((iff Q) P)
% 247.84/248.20 Found ((iff_sym1 Q) x20) as proof of ((iff Q) P)
% 247.84/248.20 Found (((iff_sym P) Q) x20) as proof of ((iff Q) P)
% 247.84/248.20 Found (((iff_sym P) Q) x20) as proof of ((iff Q) P)
% 247.84/248.20 Found x000:R
% 247.84/248.20 Instantiate: x:=R:Prop
% 247.84/248.20 Found x000 as proof of x
% 247.84/248.20 Found (x04 x000) as proof of Q
% 247.84/248.20 Found (x04 x000) as proof of Q
% 247.84/248.20 Found (x2 (x04 x000)) as proof of P
% 251.00/251.42 Found (fun (x2:(Q->P))=> (x2 (x04 x000))) as proof of P
% 251.00/251.42 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((Q->P)->P)
% 251.00/251.42 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((P->Q)->((Q->P)->P))
% 251.00/251.42 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 251.00/251.42 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 251.00/251.42 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 251.00/251.42 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 251.00/251.42 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of P
% 251.00/251.42 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of ((x->Q)->P)
% 251.00/251.42 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of ((Q->x)->((x->Q)->P))
% 251.00/251.42 Found x010:=(x01 x000):((iff P) Q)
% 251.00/251.42 Found x010 as proof of ((iff P) Q)
% 251.00/251.42 Found iff_sym200:=(iff_sym20 x20):((iff Q) P)
% 251.00/251.42 Found (iff_sym20 x20) as proof of ((iff Q) P)
% 251.00/251.42 Found ((iff_sym2 Q) x20) as proof of ((iff Q) P)
% 251.00/251.42 Found (((iff_sym P) Q) x20) as proof of ((iff Q) P)
% 251.00/251.42 Found (((iff_sym P) Q) x20) as proof of ((iff Q) P)
% 251.00/251.42 Found x010:=(x01 x000):((iff P) Q)
% 251.00/251.42 Found x010 as proof of ((iff P) Q)
% 251.00/251.42 Found x000:=(x00 x012):R
% 251.00/251.42 Found (x00 x012) as proof of R
% 251.00/251.42 Found (x00 x012) as proof of R
% 251.00/251.42 Found x010:=(x01 x001):((iff P) Q)
% 251.00/251.42 Found (x01 x001) as proof of ((iff P) Q)
% 251.00/251.42 Found (x01 x001) as proof of ((iff P) Q)
% 251.00/251.42 Found x010:=(x01 x002):((iff P) Q)
% 251.00/251.42 Found (x01 x002) as proof of ((iff P) Q)
% 251.00/251.42 Found (x01 x002) as proof of ((iff P) Q)
% 251.00/251.42 Found x010:x
% 251.00/251.42 Found x010 as proof of Q
% 251.00/251.42 Found x020:Q
% 251.00/251.42 Found x020 as proof of x
% 251.00/251.42 Found x020:Q
% 251.00/251.42 Found x020 as proof of Q
% 251.00/251.42 Found x010:x
% 251.00/251.42 Found x010 as proof of Q
% 251.00/251.42 Found x010:x
% 251.00/251.42 Found x010 as proof of x
% 251.00/251.42 Found x030:=(x03 x040):x
% 251.00/251.42 Found (x03 x040) as proof of P
% 251.00/251.42 Found (x03 x040) as proof of P
% 251.00/251.42 Found (x03 x040) as proof of P
% 251.00/251.42 Found x020:Q
% 251.00/251.42 Found x020 as proof of Q
% 251.00/251.42 Found x020:Q
% 251.00/251.42 Found x020 as proof of x
% 251.00/251.42 Found x010:x
% 251.00/251.42 Found x010 as proof of x
% 251.00/251.42 Found x010:=(x01 x002):((iff P) Q)
% 251.00/251.42 Found (x01 x002) as proof of ((iff P) Q)
% 251.00/251.42 Found (x01 x002) as proof of ((iff P) Q)
% 251.00/251.42 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 251.00/251.42 Found (iff_refl Q) as proof of ((iff Q) x)
% 251.00/251.42 Found (iff_refl Q) as proof of ((iff Q) x)
% 251.00/251.42 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 251.00/251.42 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 251.00/251.42 Found ((conj00 (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 251.00/251.42 Found (((conj0 (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 251.00/251.42 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 251.00/251.42 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 251.00/251.42 Found x030:x
% 251.00/251.42 Instantiate: x:=P:Prop
% 251.00/251.42 Found (fun (x04:(x->Q))=> x030) as proof of P
% 251.00/251.42 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 251.00/251.42 Found x010:=(x01 x000):((iff P) Q)
% 251.00/251.42 Found x010 as proof of ((iff P) Q)
% 251.00/251.42 Found x030:x
% 251.00/251.42 Instantiate: x:=P:Prop
% 251.00/251.42 Found (fun (x04:(x->Q))=> x030) as proof of P
% 251.00/251.42 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 251.00/251.42 Found x030:=(x03 x040):x
% 251.00/251.42 Found (x03 x040) as proof of R
% 251.00/251.42 Found (x03 x040) as proof of R
% 251.00/251.42 Found (x03 x040) as proof of R
% 251.00/251.42 Found x010:x
% 251.00/251.42 Found x010 as proof of Q
% 251.00/251.42 Found x020:Q
% 251.00/251.42 Found x020 as proof of x
% 251.00/251.42 Found x020:Q
% 251.00/251.42 Found x020 as proof of Q
% 251.00/251.42 Found x010:x
% 251.00/251.42 Found x010 as proof of x
% 251.00/251.42 Found x020:Q
% 251.00/251.42 Found x020 as proof of Q
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of x
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of Q
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of x
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of x
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of Q
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of Q
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of x
% 252.53/252.92 Found x010:=(x01 x000):((iff P) Q)
% 252.53/252.92 Found (x01 x000) as proof of ((iff P) Q)
% 252.53/252.92 Found (x01 x000) as proof of ((iff P) Q)
% 252.53/252.92 Found x010:=(x01 x000):((iff P) Q)
% 252.53/252.92 Found x010 as proof of ((iff P) Q)
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of x
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of x
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of Q
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of Q
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of x
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of Q
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of x
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of Q
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of x
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of Q
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of x
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of Q
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of Q
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of x
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of Q
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of x
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of Q
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of x
% 252.53/252.92 Found x000:=(x00 x010):R
% 252.53/252.92 Found (x00 x010) as proof of R
% 252.53/252.92 Found (x00 x010) as proof of R
% 252.53/252.92 Found x010:=(x01 x000):((iff P) Q)
% 252.53/252.92 Found (x01 x000) as proof of ((iff P) Q)
% 252.53/252.92 Found (x01 x000) as proof of ((iff P) Q)
% 252.53/252.92 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 252.53/252.92 Found (iff_refl Q) as proof of ((iff Q) x)
% 252.53/252.92 Found (iff_refl Q) as proof of ((iff Q) x)
% 252.53/252.92 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 252.53/252.92 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 252.53/252.92 Found ((conj00 (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 252.53/252.92 Found (((conj0 (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 252.53/252.92 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 252.53/252.92 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 252.53/252.92 Found x010:=(x01 x020):x
% 252.53/252.92 Instantiate: x:=P:Prop
% 252.53/252.92 Found (x01 x020) as proof of P
% 252.53/252.92 Found (x01 x020) as proof of P
% 252.53/252.92 Found x010:=(x01 x000):((iff P) Q)
% 252.53/252.92 Found x010 as proof of ((iff P) Q)
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of x
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of Q
% 252.53/252.92 Found x010:=(x01 x002):((iff P) Q)
% 252.53/252.92 Found x010 as proof of ((iff P) Q)
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of x
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of Q
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of Q
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of x
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of Q
% 252.53/252.92 Found x020:Q
% 252.53/252.92 Found x020 as proof of x
% 252.53/252.92 Found x030:=(x03 x040):x
% 252.53/252.92 Instantiate: x:=R:Prop
% 252.53/252.92 Found (x03 x040) as proof of R
% 252.53/252.92 Found (x03 x040) as proof of R
% 252.53/252.92 Found x000:=(x00 x010):R
% 252.53/252.92 Found (x00 x010) as proof of R
% 252.53/252.92 Found (x00 x010) as proof of R
% 252.53/252.92 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 252.53/252.92 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 252.53/252.92 Found ex_intro0 as proof of x
% 252.53/252.92 Found (x04 ex_intro0) as proof of Q
% 252.53/252.92 Found (x04 ex_intro0) as proof of Q
% 252.53/252.92 Found x010:=(x01 x000):((iff P) Q)
% 252.53/252.92 Found x010 as proof of ((iff P) Q)
% 252.53/252.92 Found x010:=(x01 x020):x
% 252.53/252.92 Instantiate: x:=P:Prop
% 252.53/252.92 Found (x01 x020) as proof of P
% 252.53/252.92 Found (x01 x020) as proof of P
% 252.53/252.92 Found x030:=(x03 x040):x
% 252.53/252.92 Found (x03 x040) as proof of P
% 252.53/252.92 Found (x03 x040) as proof of P
% 252.53/252.92 Found (x03 x040) as proof of P
% 252.53/252.92 Found x010:=(x01 x000):((iff P) Q)
% 252.53/252.92 Found (x01 x000) as proof of ((iff P) Q)
% 252.53/252.92 Found (x01 x000) as proof of ((iff P) Q)
% 252.53/252.92 Found x010:x
% 252.53/252.92 Found x010 as proof of Q
% 252.53/252.92 Found x010:=(x01 x001):((iff P) Q)
% 252.53/252.92 Found (x01 x001) as proof of ((iff P) Q)
% 252.53/252.92 Found (x01 x001) as proof of ((iff P) Q)
% 252.53/252.92 Found x010:=(x01 x000):((iff P) Q)
% 252.53/252.92 Found (x01 x000) as proof of ((iff P) Q)
% 252.53/252.92 Found (x01 x000) as proof of ((iff P) Q)
% 252.53/252.92 Found x010:=(x01 x020):x
% 252.53/252.92 Instantiate: x:=P:Prop
% 252.53/252.92 Found (x01 x020) as proof of P
% 252.53/252.92 Found (x01 x020) as proof of P
% 252.53/252.92 Found x010:=(x01 x020):x
% 252.53/252.92 Instantiate: x:=P:Prop
% 253.78/254.16 Found (x01 x020) as proof of P
% 253.78/254.16 Found (x01 x020) as proof of P
% 253.78/254.16 Found x10:=(x1 x21):R
% 253.78/254.16 Found (x1 x21) as proof of R
% 253.78/254.16 Found (x1 x21) as proof of R
% 253.78/254.16 Found x010:=(x01 x001):((iff P) Q)
% 253.78/254.16 Found (x01 x001) as proof of ((iff P) Q)
% 253.78/254.16 Found (x01 x001) as proof of ((iff P) Q)
% 253.78/254.16 Found x020:Q
% 253.78/254.16 Found x020 as proof of x
% 253.78/254.16 Found x020:Q
% 253.78/254.16 Found x020 as proof of Q
% 253.78/254.16 Found x020:Q
% 253.78/254.16 Found x020 as proof of Q
% 253.78/254.16 Found x030:P
% 253.78/254.16 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 253.78/254.16 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 253.78/254.16 Found x010:=(x01 x000):((iff P) Q)
% 253.78/254.16 Found x010 as proof of ((iff P) Q)
% 253.78/254.16 Found x010:x
% 253.78/254.16 Found x010 as proof of x
% 253.78/254.16 Found x10:=(x1 x21):R
% 253.78/254.16 Found (x1 x21) as proof of R
% 253.78/254.16 Found (x1 x21) as proof of R
% 253.78/254.16 Found x020:Q
% 253.78/254.16 Found x020 as proof of x
% 253.78/254.16 Found x000:=(x00 x011):R
% 253.78/254.16 Found (x00 x011) as proof of R
% 253.78/254.16 Found (x00 x011) as proof of R
% 253.78/254.16 Found x010:=(x01 x000):((iff P) Q)
% 253.78/254.16 Found x010 as proof of ((iff P) Q)
% 253.78/254.16 Found x20:=(x2 x10):((iff P) Q)
% 253.78/254.16 Found x20 as proof of ((iff P) Q)
% 253.78/254.16 Found x000:=(x00 x011):R
% 253.78/254.16 Found (x00 x011) as proof of R
% 253.78/254.16 Found (x00 x011) as proof of R
% 253.78/254.16 Found x20:=(x2 x11):((iff P) Q)
% 253.78/254.16 Found (x2 x11) as proof of ((iff P) Q)
% 253.78/254.16 Found (x2 x11) as proof of ((iff P) Q)
% 253.78/254.16 Found x20:=(x2 x11):((iff P) Q)
% 253.78/254.16 Found (x2 x11) as proof of ((iff P) Q)
% 253.78/254.16 Found (x2 x11) as proof of ((iff P) Q)
% 253.78/254.16 Found x010:=(x01 x000):((iff P) Q)
% 253.78/254.16 Found (x01 x000) as proof of ((iff P) Q)
% 253.78/254.16 Found (x01 x000) as proof of ((iff P) Q)
% 253.78/254.16 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 253.78/254.16 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 253.78/254.16 Found ex_intro0 as proof of x
% 253.78/254.16 Found (x04 ex_intro0) as proof of Q
% 253.78/254.16 Found (x04 ex_intro0) as proof of Q
% 253.78/254.16 Found x010:=(x01 x000):((iff P) Q)
% 253.78/254.16 Found x010 as proof of ((iff P) Q)
% 253.78/254.16 Found x030:x
% 253.78/254.16 Instantiate: x:=P:Prop
% 253.78/254.16 Found x030 as proof of P
% 253.78/254.16 Found x011:((iff P) Q)
% 253.78/254.16 Instantiate: x:=((iff P) Q):Prop
% 253.78/254.16 Found x011 as proof of x
% 253.78/254.16 Found x031:x
% 253.78/254.16 Found x031 as proof of Q
% 253.78/254.16 Found x030:x
% 253.78/254.16 Instantiate: x:=P:Prop
% 253.78/254.16 Found (fun (x04:(x->Q))=> x030) as proof of P
% 253.78/254.16 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 253.78/254.16 Found x000:=(x00 x011):R
% 253.78/254.16 Found (x00 x011) as proof of R
% 253.78/254.16 Found (x00 x011) as proof of R
% 253.78/254.16 Found x020:Q
% 253.78/254.16 Found x020 as proof of Q
% 253.78/254.16 Found (x01 x020) as proof of P
% 253.78/254.16 Found (x01 x020) as proof of P
% 253.78/254.16 Found (x01 x020) as proof of P
% 253.78/254.16 Found x030:=(x03 x041):x
% 253.78/254.16 Instantiate: x:=R:Prop
% 253.78/254.16 Found (x03 x041) as proof of R
% 253.78/254.16 Found (x03 x041) as proof of R
% 253.78/254.16 Found x000:=(x00 x010):R
% 253.78/254.16 Found (x00 x010) as proof of R
% 253.78/254.16 Found (x00 x010) as proof of R
% 253.78/254.16 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 253.78/254.16 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 253.78/254.16 Found ex_intro0 as proof of x
% 253.78/254.16 Found (x04 ex_intro0) as proof of Q
% 253.78/254.16 Found (x04 ex_intro0) as proof of Q
% 253.78/254.16 Found x030:=(x03 x020):P
% 253.78/254.16 Found (x03 x020) as proof of P
% 253.78/254.16 Found (x03 x020) as proof of P
% 253.78/254.16 Found x1:(((iff P) Q)->R)
% 253.78/254.16 Instantiate: x:=(((iff P) Q)->R):Prop
% 253.78/254.16 Found x1 as proof of x
% 253.78/254.16 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 253.78/254.16 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 253.78/254.16 Found ex_intro0 as proof of x
% 253.78/254.16 Found (x04 ex_intro0) as proof of Q
% 253.78/254.16 Found (x04 ex_intro0) as proof of Q
% 253.78/254.16 Found x001:R
% 253.78/254.16 Instantiate: x:=R:Prop
% 253.78/254.16 Found x001 as proof of x
% 253.78/254.16 Found x010:=(x01 x000):((iff P) Q)
% 253.78/254.16 Found x010 as proof of ((iff P) Q)
% 253.78/254.16 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 253.78/254.16 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 253.78/254.16 Found ex_intro0 as proof of x
% 253.78/254.16 Found (x04 ex_intro0) as proof of Q
% 253.78/254.16 Found (x04 ex_intro0) as proof of Q
% 253.78/254.16 Found x030:x
% 253.78/254.16 Instantiate: x:=P:Prop
% 253.78/254.16 Found x030 as proof of P
% 253.78/254.16 Found x001:R
% 253.78/254.16 Instantiate: x:=R:Prop
% 253.78/254.16 Found x001 as proof of x
% 253.78/254.16 Found x011:((iff P) Q)
% 253.78/254.16 Instantiate: x:=((iff P) Q):Prop
% 253.78/254.16 Found x011 as proof of x
% 253.78/254.16 Found x010:=(x01 x001):((iff P) Q)
% 253.78/254.16 Found (x01 x001) as proof of ((iff P) Q)
% 253.78/254.16 Found (x01 x001) as proof of ((iff P) Q)
% 253.78/254.16 Found x010:=(x01 x020):x
% 253.78/254.16 Instantiate: x:=P:Prop
% 253.78/254.16 Found (x01 x020) as proof of P
% 253.78/254.16 Found (x01 x020) as proof of P
% 253.78/254.16 Found x010:=(x01 x000):((iff P) Q)
% 253.78/254.16 Found (x01 x000) as proof of ((iff P) Q)
% 253.78/254.16 Found (x01 x000) as proof of ((iff P) Q)
% 254.44/254.83 Found x010:=(x01 x000):((iff P) Q)
% 254.44/254.83 Found (x01 x000) as proof of ((iff P) Q)
% 254.44/254.83 Found (x01 x000) as proof of ((iff P) Q)
% 254.44/254.83 Found x030:x
% 254.44/254.83 Instantiate: x:=P:Prop
% 254.44/254.83 Found x030 as proof of P
% 254.44/254.83 Found x030:=(x03 x020):P
% 254.44/254.83 Found (x03 x020) as proof of P
% 254.44/254.83 Found (x03 x020) as proof of P
% 254.44/254.83 Found x010:=(x01 x000):((iff P) Q)
% 254.44/254.83 Found (x01 x000) as proof of ((iff P) Q)
% 254.44/254.83 Found (x01 x000) as proof of ((iff P) Q)
% 254.44/254.83 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 254.44/254.83 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 254.44/254.83 Found ex_intro0 as proof of x
% 254.44/254.83 Found (x04 ex_intro0) as proof of Q
% 254.44/254.83 Found (x04 ex_intro0) as proof of Q
% 254.44/254.83 Found x030:=(x03 x040):x
% 254.44/254.83 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 254.44/254.83 Found (x03 x040) as proof of ((iff P) Q)
% 254.44/254.83 Found (x03 x040) as proof of ((iff P) Q)
% 254.44/254.83 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 254.44/254.83 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 254.44/254.83 Found ex_intro0 as proof of x
% 254.44/254.83 Found (x04 ex_intro0) as proof of Q
% 254.44/254.83 Found (x04 ex_intro0) as proof of Q
% 254.44/254.83 Found x030:x
% 254.44/254.83 Instantiate: x:=P:Prop
% 254.44/254.83 Found x030 as proof of P
% 254.44/254.83 Found x010:=(x01 x000):((iff P) Q)
% 254.44/254.83 Found x010 as proof of ((iff P) Q)
% 254.44/254.83 Found x010:=(x01 x000):((iff P) Q)
% 254.44/254.83 Found x010 as proof of ((iff P) Q)
% 254.44/254.83 Found x040:Q
% 254.44/254.83 Instantiate: x:=Q:Prop
% 254.44/254.83 Found x040 as proof of x
% 254.44/254.83 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 254.44/254.83 Found (iff_refl Q) as proof of ((iff Q) x)
% 254.44/254.83 Found (iff_refl Q) as proof of ((iff Q) x)
% 254.44/254.83 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 254.44/254.83 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 254.44/254.83 Found x010:=(x01 x002):((iff P) Q)
% 254.44/254.83 Found (x01 x002) as proof of ((iff P) Q)
% 254.44/254.83 Found (x01 x002) as proof of ((iff P) Q)
% 254.44/254.83 Found x010:=(x01 x000):((iff P) Q)
% 254.44/254.83 Found x010 as proof of ((iff P) Q)
% 254.44/254.83 Found x010:=(x01 x000):((iff P) Q)
% 254.44/254.83 Found x010 as proof of ((iff P) Q)
% 254.44/254.83 Found x010:=(x01 x020):x
% 254.44/254.83 Instantiate: x:=R:Prop
% 254.44/254.83 Found (x01 x020) as proof of R
% 254.44/254.83 Found (x01 x020) as proof of R
% 254.44/254.83 Found x030:=(x03 x041):x
% 254.44/254.83 Instantiate: x:=R:Prop
% 254.44/254.83 Found (x03 x041) as proof of R
% 254.44/254.83 Found (x03 x041) as proof of R
% 254.44/254.83 Found x000:R
% 254.44/254.83 Instantiate: x:=R:Prop
% 254.44/254.83 Found x000 as proof of x
% 254.44/254.83 Found (x04 x000) as proof of Q
% 254.44/254.83 Found (x04 x000) as proof of Q
% 254.44/254.83 Found (x2 (x04 x000)) as proof of P
% 254.44/254.83 Found (fun (x2:(Q->P))=> (x2 (x04 x000))) as proof of P
% 254.44/254.83 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((Q->P)->P)
% 254.44/254.83 Found (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))) as proof of ((P->Q)->((Q->P)->P))
% 254.44/254.83 Found (and_rect20 (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 254.44/254.83 Found ((and_rect2 P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 254.44/254.83 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 254.44/254.83 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000)))) as proof of P
% 254.44/254.83 Found (fun (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of P
% 254.44/254.83 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of ((x->Q)->P)
% 254.44/254.83 Found (fun (x03:(Q->x)) (x04:(x->Q))=> (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) P) (fun (x1:(P->Q)) (x2:(Q->P))=> (x2 (x04 x000))))) as proof of ((Q->x)->((x->Q)->P))
% 254.44/254.83 Found x010:=(x01 x000):((iff P) Q)
% 254.44/254.83 Found x010 as proof of ((iff P) Q)
% 254.44/254.83 Found x010:=(x01 x000):((iff P) Q)
% 254.44/254.83 Found x010 as proof of ((iff P) Q)
% 254.44/254.83 Found x02:((iff Q) x)
% 254.44/254.83 Instantiate: x:=P:Prop
% 254.44/254.83 Found x02 as proof of ((iff Q) P)
% 254.44/254.83 Found (iff_sym00 x02) as proof of ((and (P->Q)) (Q->P))
% 254.44/254.83 Found ((iff_sym0 P) x02) as proof of ((and (P->Q)) (Q->P))
% 254.44/254.83 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 254.44/254.83 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 254.44/254.83 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 255.69/256.08 Found x030:x
% 255.69/256.08 Instantiate: x:=P:Prop
% 255.69/256.08 Found (fun (x04:(x->Q))=> x030) as proof of P
% 255.69/256.08 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found (x01 x000) as proof of ((iff P) Q)
% 255.69/256.08 Found (x01 x000) as proof of ((iff P) Q)
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found x010 as proof of ((iff P) Q)
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found x010 as proof of ((iff P) Q)
% 255.69/256.08 Found x20:=(x2 x11):((iff P) Q)
% 255.69/256.08 Found (x2 x11) as proof of ((iff P) Q)
% 255.69/256.08 Found (x2 x11) as proof of ((iff P) Q)
% 255.69/256.08 Found x010:=(x01 x001):((iff P) Q)
% 255.69/256.08 Found (x01 x001) as proof of ((iff P) Q)
% 255.69/256.08 Found (x01 x001) as proof of ((iff P) Q)
% 255.69/256.08 Found x030:P
% 255.69/256.08 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 255.69/256.08 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found x010 as proof of ((iff P) Q)
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found x010 as proof of ((iff P) Q)
% 255.69/256.08 Found x000:=(x00 x011):R
% 255.69/256.08 Found (x00 x011) as proof of R
% 255.69/256.08 Found (x00 x011) as proof of R
% 255.69/256.08 Found x030:=(x03 x041):x
% 255.69/256.08 Instantiate: x:=P:Prop
% 255.69/256.08 Found (x03 x041) as proof of P
% 255.69/256.08 Found (x03 x041) as proof of P
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found x010 as proof of ((iff P) Q)
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found x010 as proof of ((iff P) Q)
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found x010 as proof of ((iff P) Q)
% 255.69/256.08 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 255.69/256.08 Found (iff_refl Q) as proof of ((iff Q) x)
% 255.69/256.08 Found (iff_refl Q) as proof of ((iff Q) x)
% 255.69/256.08 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 255.69/256.08 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 255.69/256.08 Found x000:=(x00 x011):R
% 255.69/256.08 Found (x00 x011) as proof of R
% 255.69/256.08 Found (x00 x011) as proof of R
% 255.69/256.08 Found x010:=(x01 x001):((iff P) Q)
% 255.69/256.08 Found (x01 x001) as proof of ((iff P) Q)
% 255.69/256.08 Found (x01 x001) as proof of ((iff P) Q)
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found x010 as proof of ((iff P) Q)
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found x010 as proof of ((iff P) Q)
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found x010 as proof of ((iff P) Q)
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found x010 as proof of ((iff P) Q)
% 255.69/256.08 Found x030:=(x03 x041):x
% 255.69/256.08 Instantiate: x:=R:Prop
% 255.69/256.08 Found (x03 x041) as proof of R
% 255.69/256.08 Found (x03 x041) as proof of R
% 255.69/256.08 Found x030:=(x03 x040):x
% 255.69/256.08 Instantiate: x:=P:Prop
% 255.69/256.08 Found (x03 x040) as proof of P
% 255.69/256.08 Found (x03 x040) as proof of P
% 255.69/256.08 Found x030:=(x03 x040):x
% 255.69/256.08 Instantiate: x:=R:Prop
% 255.69/256.08 Found (x03 x040) as proof of R
% 255.69/256.08 Found (x03 x040) as proof of R
% 255.69/256.08 Found x000:=(x00 x010):R
% 255.69/256.08 Found (x00 x010) as proof of R
% 255.69/256.08 Found (x00 x010) as proof of R
% 255.69/256.08 Found x030:=(x03 x040):x
% 255.69/256.08 Instantiate: x:=P:Prop
% 255.69/256.08 Found (x03 x040) as proof of P
% 255.69/256.08 Found (x03 x040) as proof of P
% 255.69/256.08 Found x030:=(x03 x041):x
% 255.69/256.08 Instantiate: x:=P:Prop
% 255.69/256.08 Found (x03 x041) as proof of P
% 255.69/256.08 Found (x03 x041) as proof of P
% 255.69/256.08 Found x030:=(x03 x041):x
% 255.69/256.08 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 255.69/256.08 Found (x03 x041) as proof of ((iff P) Q)
% 255.69/256.08 Found (x03 x041) as proof of ((iff P) Q)
% 255.69/256.08 Found x030:=(x03 x041):x
% 255.69/256.08 Instantiate: x:=P:Prop
% 255.69/256.08 Found (x03 x041) as proof of P
% 255.69/256.08 Found (x03 x041) as proof of P
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found x010 as proof of ((iff P) Q)
% 255.69/256.08 Found x030:=(x03 x040):x
% 255.69/256.08 Instantiate: x:=P:Prop
% 255.69/256.08 Found (x03 x040) as proof of P
% 255.69/256.08 Found (x03 x040) as proof of P
% 255.69/256.08 Found x000:=(x00 x010):R
% 255.69/256.08 Found (x00 x010) as proof of R
% 255.69/256.08 Found (x00 x010) as proof of R
% 255.69/256.08 Found x010:=(x01 x000):((iff P) Q)
% 255.69/256.08 Found x010 as proof of ((iff P) Q)
% 255.69/256.08 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 255.69/256.08 Found (iff_refl Q) as proof of ((iff Q) x)
% 255.69/256.08 Found (iff_refl Q) as proof of ((iff Q) x)
% 255.69/256.08 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 255.69/256.08 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 255.69/256.08 Found ((conj00 (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 255.69/256.08 Found (((conj0 (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 255.69/256.08 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 255.69/256.08 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 257.00/257.37 Found x030:=(x03 x041):x
% 257.00/257.37 Instantiate: x:=P:Prop
% 257.00/257.37 Found (x03 x041) as proof of P
% 257.00/257.37 Found (x03 x041) as proof of P
% 257.00/257.37 Found x030:x
% 257.00/257.37 Instantiate: x:=P:Prop
% 257.00/257.37 Found (fun (x04:(x->Q))=> x030) as proof of P
% 257.00/257.37 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 257.00/257.37 Found x010 as proof of ((iff P) Q)
% 257.00/257.37 Found x20:=(x2 x10):((iff P) Q)
% 257.00/257.37 Found x20 as proof of ((iff P) Q)
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 257.00/257.37 Found x010 as proof of ((iff P) Q)
% 257.00/257.37 Found x000:=(x00 x010):R
% 257.00/257.37 Found (x00 x010) as proof of R
% 257.00/257.37 Found (x00 x010) as proof of R
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 257.00/257.37 Found x010 as proof of ((iff P) Q)
% 257.00/257.37 Found x020:Q
% 257.00/257.37 Instantiate: x:=Q:Prop
% 257.00/257.37 Found x020 as proof of x
% 257.00/257.37 Found x020:Q
% 257.00/257.37 Instantiate: x:=Q:Prop
% 257.00/257.37 Found x020 as proof of x
% 257.00/257.37 Found x030:=(x03 x042):x
% 257.00/257.37 Instantiate: x:=P:Prop
% 257.00/257.37 Found (x03 x042) as proof of P
% 257.00/257.37 Found (x03 x042) as proof of P
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 257.00/257.37 Found x010 as proof of ((iff P) Q)
% 257.00/257.37 Found x030:=(x03 x041):x
% 257.00/257.37 Instantiate: x:=P:Prop
% 257.00/257.37 Found (x03 x041) as proof of P
% 257.00/257.37 Found (x03 x041) as proof of P
% 257.00/257.37 Found x030:=(x03 x040):x
% 257.00/257.37 Instantiate: x:=P:Prop
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found x030:=(x03 x041):x
% 257.00/257.37 Instantiate: x:=P:Prop
% 257.00/257.37 Found (x03 x041) as proof of P
% 257.00/257.37 Found (x03 x041) as proof of P
% 257.00/257.37 Found x030:=(x03 x041):x
% 257.00/257.37 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 257.00/257.37 Found (x03 x041) as proof of ((iff P) Q)
% 257.00/257.37 Found (x03 x041) as proof of ((iff P) Q)
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 257.00/257.37 Found x010 as proof of ((iff P) Q)
% 257.00/257.37 Found x030:=(x03 x020):P
% 257.00/257.37 Found (x03 x020) as proof of P
% 257.00/257.37 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 257.00/257.37 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 257.00/257.37 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (x03 x020)) as proof of ((Q->P)->(((iff Q) x)->P))
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 257.00/257.37 Found x010 as proof of ((iff P) Q)
% 257.00/257.37 Found x030:=(x03 x040):x
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 257.00/257.37 Found x010 as proof of ((iff P) Q)
% 257.00/257.37 Found x000:=(x00 x011):R
% 257.00/257.37 Found (x00 x011) as proof of R
% 257.00/257.37 Found (x00 x011) as proof of R
% 257.00/257.37 Found x030:=(x03 x040):x
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found x000:=(x00 x011):R
% 257.00/257.37 Found (x00 x011) as proof of R
% 257.00/257.37 Found (x00 x011) as proof of R
% 257.00/257.37 Found x000:=(x00 x013):R
% 257.00/257.37 Found (x00 x013) as proof of R
% 257.00/257.37 Found (x00 x013) as proof of R
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 257.00/257.37 Found x010 as proof of ((iff P) Q)
% 257.00/257.37 Found x030:=(x03 x041):x
% 257.00/257.37 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 257.00/257.37 Found (x03 x041) as proof of ((iff P) Q)
% 257.00/257.37 Found (x03 x041) as proof of ((iff P) Q)
% 257.00/257.37 Found x030:=(x03 x040):x
% 257.00/257.37 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 257.00/257.37 Found (x03 x040) as proof of ((iff P) Q)
% 257.00/257.37 Found (x03 x040) as proof of ((iff P) Q)
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 257.00/257.37 Found x010 as proof of ((iff P) Q)
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 257.00/257.37 Found x010 as proof of ((iff P) Q)
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 257.00/257.37 Found (x01 x000) as proof of ((iff P) Q)
% 257.00/257.37 Found (x01 x000) as proof of ((iff P) Q)
% 257.00/257.37 Found x030:=(x03 x040):x
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found x030:=(x03 x040):x
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found (x03 x040) as proof of P
% 257.00/257.37 Found x020:Q
% 257.00/257.37 Found x020 as proof of x
% 257.00/257.37 Found x010:x
% 257.00/257.37 Found x010 as proof of x
% 257.00/257.37 Found x021:Q
% 257.00/257.37 Found x021 as proof of Q
% 257.00/257.37 Found x021:Q
% 257.00/257.37 Found x021 as proof of x
% 257.00/257.37 Found x010:x
% 257.00/257.37 Found x010 as proof of Q
% 257.00/257.37 Found x011:x
% 257.00/257.37 Found x011 as proof of Q
% 257.00/257.37 Found x020:Q
% 257.00/257.37 Found x020 as proof of Q
% 257.00/257.37 Found x000:=(x00 x013):R
% 257.00/257.37 Found (x00 x013) as proof of R
% 257.00/257.37 Found (x00 x013) as proof of R
% 257.00/257.37 Found x010:=(x01 x001):((iff P) Q)
% 257.00/257.37 Found (x01 x001) as proof of ((iff P) Q)
% 257.00/257.37 Found (x01 x001) as proof of ((iff P) Q)
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 257.00/257.37 Found (x01 x000) as proof of ((iff P) Q)
% 257.00/257.37 Found (x01 x000) as proof of ((iff P) Q)
% 257.00/257.37 Found x010:=(x01 x001):((iff P) Q)
% 257.00/257.37 Found (x01 x001) as proof of ((iff P) Q)
% 257.00/257.37 Found (x01 x001) as proof of ((iff P) Q)
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 257.00/257.37 Found x010 as proof of ((iff P) Q)
% 257.00/257.37 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found x010 as proof of ((iff P) Q)
% 258.13/258.54 Found x030:=(x03 x040):x
% 258.13/258.54 Instantiate: x:=R:Prop
% 258.13/258.54 Found (x03 x040) as proof of R
% 258.13/258.54 Found (x03 x040) as proof of R
% 258.13/258.54 Found x000:=(x00 x010):R
% 258.13/258.54 Found (x00 x010) as proof of R
% 258.13/258.54 Found (x00 x010) as proof of R
% 258.13/258.54 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 258.13/258.54 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 258.13/258.54 Found ex_intro0 as proof of x
% 258.13/258.54 Found (x04 ex_intro0) as proof of Q
% 258.13/258.54 Found (x04 ex_intro0) as proof of Q
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found (x01 x000) as proof of ((iff P) Q)
% 258.13/258.54 Found (x01 x000) as proof of ((iff P) Q)
% 258.13/258.54 Found x011:x
% 258.13/258.54 Found x011 as proof of x
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found x010 as proof of ((iff P) Q)
% 258.13/258.54 Found x030:=(x03 x040):x
% 258.13/258.54 Instantiate: x:=P:Prop
% 258.13/258.54 Found (x03 x040) as proof of P
% 258.13/258.54 Found (x03 x040) as proof of P
% 258.13/258.54 Found x010:x
% 258.13/258.54 Found x010 as proof of x
% 258.13/258.54 Found x021:Q
% 258.13/258.54 Found x021 as proof of Q
% 258.13/258.54 Found x2:(R->((iff P) Q))
% 258.13/258.54 Instantiate: x:=(R->((iff P) Q)):Prop
% 258.13/258.54 Found x2 as proof of x
% 258.13/258.54 Found x021:Q
% 258.13/258.54 Found x021 as proof of x
% 258.13/258.54 Found x011:x
% 258.13/258.54 Found x011 as proof of x
% 258.13/258.54 Found x020:Q
% 258.13/258.54 Found x020 as proof of x
% 258.13/258.54 Found x011:x
% 258.13/258.54 Found x011 as proof of Q
% 258.13/258.54 Found x000:=(x00 x011):R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found x000:=(x00 x011):R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found x000:=(x00 x011):R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found x010 as proof of ((iff P) Q)
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found x010 as proof of ((iff P) Q)
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found x010 as proof of ((iff P) Q)
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found x010 as proof of ((iff P) Q)
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found x010 as proof of ((iff P) Q)
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found x010 as proof of ((iff P) Q)
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found x010 as proof of ((iff P) Q)
% 258.13/258.54 Found x020:Q
% 258.13/258.54 Found x020 as proof of Q
% 258.13/258.54 Found x010:x
% 258.13/258.54 Found x010 as proof of Q
% 258.13/258.54 Found x030:x
% 258.13/258.54 Found x030 as proof of Q
% 258.13/258.54 Found x030:=(x03 x040):x
% 258.13/258.54 Found (x03 x040) as proof of P
% 258.13/258.54 Found (x03 x040) as proof of P
% 258.13/258.54 Found (x03 x040) as proof of P
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found x010 as proof of ((iff P) Q)
% 258.13/258.54 Found x030:x
% 258.13/258.54 Instantiate: x:=P:Prop
% 258.13/258.54 Found (fun (x04:(x->Q))=> x030) as proof of P
% 258.13/258.54 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found x010 as proof of ((iff P) Q)
% 258.13/258.54 Found x000:=(x00 x013):R
% 258.13/258.54 Found (x00 x013) as proof of R
% 258.13/258.54 Found (x00 x013) as proof of R
% 258.13/258.54 Found x000:=(x00 x011):R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found x000:=(x00 x011):R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found x000:=(x00 x011):R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found x000:=(x00 x011):R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found x000:=(x00 x011):R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found (x00 x011) as proof of R
% 258.13/258.54 Found x030:x
% 258.13/258.54 Found x030 as proof of Q
% 258.13/258.54 Found x2:(R->((iff P) Q))
% 258.13/258.54 Instantiate: x:=(R->((iff P) Q)):Prop
% 258.13/258.54 Found x2 as proof of x
% 258.13/258.54 Found x020:Q
% 258.13/258.54 Instantiate: x:=Q:Prop
% 258.13/258.54 Found x020 as proof of x
% 258.13/258.54 Found x030:P
% 258.13/258.54 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 258.13/258.54 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 258.13/258.54 Found x20:((iff P) Q)
% 258.13/258.54 Instantiate: x:=((iff P) Q):Prop
% 258.13/258.54 Found x20 as proof of x
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found x010 as proof of ((iff P) Q)
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found x010 as proof of ((iff P) Q)
% 258.13/258.54 Found x000:=(x00 x010):R
% 258.13/258.54 Found (x00 x010) as proof of R
% 258.13/258.54 Found (x00 x010) as proof of R
% 258.13/258.54 Found x030:=(x03 x040):x
% 258.13/258.54 Found (x03 x040) as proof of P
% 258.13/258.54 Found (x03 x040) as proof of P
% 258.13/258.54 Found (x03 x040) as proof of P
% 258.13/258.54 Found x010:=(x01 x000):((iff P) Q)
% 258.13/258.54 Found (x01 x000) as proof of ((iff P) Q)
% 258.13/258.54 Found (x01 x000) as proof of ((iff P) Q)
% 258.13/258.54 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 258.13/258.54 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 258.13/258.54 Found ex_intro0 as proof of x
% 258.13/258.54 Found (x04 ex_intro0) as proof of Q
% 258.13/258.54 Found (x04 ex_intro0) as proof of Q
% 259.28/259.66 Found x000:=(x00 x010):R
% 259.28/259.66 Found (x00 x010) as proof of R
% 259.28/259.66 Found (x00 x010) as proof of R
% 259.28/259.66 Found x000:=(x00 x011):R
% 259.28/259.66 Found (x00 x011) as proof of R
% 259.28/259.66 Found (x00 x011) as proof of R
% 259.28/259.66 Found x030:=(x03 x040):x
% 259.28/259.66 Found (x03 x040) as proof of P
% 259.28/259.66 Found (x03 x040) as proof of P
% 259.28/259.66 Found (x03 x040) as proof of P
% 259.28/259.66 Found x010:=(x01 x000):((iff P) Q)
% 259.28/259.66 Found x010 as proof of ((iff P) Q)
% 259.28/259.66 Found x010:=(x01 x000):((iff P) Q)
% 259.28/259.66 Found (x01 x000) as proof of ((iff P) Q)
% 259.28/259.66 Found (x01 x000) as proof of ((iff P) Q)
% 259.28/259.66 Found x010:=(x01 x000):((iff P) Q)
% 259.28/259.66 Found x010 as proof of ((iff P) Q)
% 259.28/259.66 Found x10:R
% 259.28/259.66 Instantiate: x:=R:Prop
% 259.28/259.66 Found x10 as proof of x
% 259.28/259.66 Found x021:Q
% 259.28/259.66 Instantiate: x:=Q:Prop
% 259.28/259.66 Found x021 as proof of x
% 259.28/259.66 Found x030:=(x03 x020):P
% 259.28/259.66 Found (x03 x020) as proof of P
% 259.28/259.66 Found (x03 x020) as proof of P
% 259.28/259.66 Found x000:=(x00 x011):R
% 259.28/259.66 Found (x00 x011) as proof of R
% 259.28/259.66 Found (x00 x011) as proof of R
% 259.28/259.66 Found x030:=(x03 x021):P
% 259.28/259.66 Found (x03 x021) as proof of P
% 259.28/259.66 Found (x03 x021) as proof of P
% 259.28/259.66 Found x000:=(x00 x010):R
% 259.28/259.66 Found (x00 x010) as proof of R
% 259.28/259.66 Found (x00 x010) as proof of R
% 259.28/259.66 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 259.28/259.66 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 259.28/259.66 Found ex_intro0 as proof of x
% 259.28/259.66 Found (x04 ex_intro0) as proof of Q
% 259.28/259.66 Found (x04 ex_intro0) as proof of Q
% 259.28/259.66 Found x030:=(x03 x041):x
% 259.28/259.66 Instantiate: x:=R:Prop
% 259.28/259.66 Found (x03 x041) as proof of R
% 259.28/259.66 Found (x03 x041) as proof of R
% 259.28/259.66 Found x010:=(x01 x000):((iff P) Q)
% 259.28/259.66 Found x010 as proof of ((iff P) Q)
% 259.28/259.66 Found x030:=(x03 x020):P
% 259.28/259.66 Found (x03 x020) as proof of P
% 259.28/259.66 Found (x03 x020) as proof of P
% 259.28/259.66 Found x010:=(x01 x000):((iff P) Q)
% 259.28/259.66 Found (x01 x000) as proof of ((iff P) Q)
% 259.28/259.66 Found (x01 x000) as proof of ((iff P) Q)
% 259.28/259.66 Found x010:=(x01 x001):((iff P) Q)
% 259.28/259.66 Found (x01 x001) as proof of ((iff P) Q)
% 259.28/259.66 Found (x01 x001) as proof of ((iff P) Q)
% 259.28/259.66 Found x000:=(x00 x010):R
% 259.28/259.66 Found (x00 x010) as proof of R
% 259.28/259.66 Found (x00 x010) as proof of R
% 259.28/259.66 Found x00:((iff Q) x)
% 259.28/259.66 Instantiate: x:=P:Prop
% 259.28/259.66 Found x00 as proof of ((iff Q) P)
% 259.28/259.66 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 259.28/259.66 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 259.28/259.66 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 259.28/259.66 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 259.28/259.66 Found x030:=(x03 x021):P
% 259.28/259.66 Found (x03 x021) as proof of P
% 259.28/259.66 Found (x03 x021) as proof of P
% 259.28/259.66 Found x010:=(x01 x000):((iff P) Q)
% 259.28/259.66 Found x010 as proof of ((iff P) Q)
% 259.28/259.66 Found x010:=(x01 x000):((iff P) Q)
% 259.28/259.66 Found (x01 x000) as proof of ((iff P) Q)
% 259.28/259.66 Found (x01 x000) as proof of ((iff P) Q)
% 259.28/259.66 Found x010:=(x01 x000):((iff P) Q)
% 259.28/259.66 Found (x01 x000) as proof of ((iff P) Q)
% 259.28/259.66 Found (x01 x000) as proof of ((iff P) Q)
% 259.28/259.66 Found x010:=(x01 x000):((iff P) Q)
% 259.28/259.66 Found x010 as proof of ((iff P) Q)
% 259.28/259.66 Found x000:=(x00 x010):R
% 259.28/259.66 Found (x00 x010) as proof of R
% 259.28/259.66 Found (x00 x010) as proof of R
% 259.28/259.66 Found x020:=(x02 x030):Q
% 259.28/259.66 Found (x02 x030) as proof of Q
% 259.28/259.66 Found (x02 x030) as proof of Q
% 259.28/259.66 Found x010:=(x01 x000):((iff P) Q)
% 259.28/259.66 Found (x01 x000) as proof of ((iff P) Q)
% 259.28/259.66 Found (x01 x000) as proof of ((iff P) Q)
% 259.28/259.66 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 259.28/259.66 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 259.28/259.66 Found ex_intro0 as proof of x
% 259.28/259.66 Found (x04 ex_intro0) as proof of Q
% 259.28/259.66 Found (x04 ex_intro0) as proof of Q
% 259.28/259.66 Found x20:=(x2 x10):((iff P) Q)
% 259.28/259.66 Found x20 as proof of ((iff P) Q)
% 259.28/259.66 Found x030:=(x03 x040):x
% 259.28/259.66 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 259.28/259.66 Found (x03 x040) as proof of ((iff P) Q)
% 259.28/259.66 Found (x03 x040) as proof of ((iff P) Q)
% 259.28/259.66 Found x020:=(x02 x031):Q
% 259.28/259.66 Found (x02 x031) as proof of Q
% 259.28/259.66 Found (x02 x031) as proof of Q
% 259.28/259.66 Found x030:=(x03 x040):x
% 259.28/259.66 Found (x03 x040) as proof of P
% 259.28/259.66 Found (x03 x040) as proof of P
% 259.28/259.66 Found (x03 x040) as proof of P
% 259.28/259.66 Found x030:=(x03 x020):P
% 259.28/259.66 Found (x03 x020) as proof of P
% 259.28/259.66 Found (x03 x020) as proof of P
% 259.28/259.66 Found x030:x
% 259.28/259.66 Instantiate: x:=P:Prop
% 259.28/259.66 Found x030 as proof of P
% 259.28/259.66 Found x040:Q
% 259.28/259.66 Found x040 as proof of Q
% 259.28/259.66 Found (x03 x040) as proof of P
% 259.28/259.66 Found (x03 x040) as proof of P
% 259.28/259.66 Found (x03 x040) as proof of P
% 259.28/259.66 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 259.28/259.66 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 260.69/261.08 Found eta_expansion as proof of x
% 260.69/261.08 Found x010:x
% 260.69/261.08 Instantiate: x:=((((iff P) Q)->R)->((R->((iff P) Q))->P)):Prop
% 260.69/261.08 Found x010 as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 260.69/261.08 Found x010:=(x01 x000):((iff P) Q)
% 260.69/261.08 Found x010 as proof of ((iff P) Q)
% 260.69/261.08 Found x001:R
% 260.69/261.08 Instantiate: x:=R:Prop
% 260.69/261.08 Found x001 as proof of x
% 260.69/261.08 Found x030:x
% 260.69/261.08 Instantiate: x:=P:Prop
% 260.69/261.08 Found x030 as proof of P
% 260.69/261.08 Found x011:((iff P) Q)
% 260.69/261.08 Instantiate: x:=((iff P) Q):Prop
% 260.69/261.08 Found x011 as proof of x
% 260.69/261.08 Found x030:P
% 260.69/261.08 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 260.69/261.08 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 260.69/261.08 Found x040:Q
% 260.69/261.08 Found x040 as proof of Q
% 260.69/261.08 Found x040:Q
% 260.69/261.08 Found x040 as proof of x
% 260.69/261.08 Found x010:=(x01 x000):((iff P) Q)
% 260.69/261.08 Found (x01 x000) as proof of ((iff P) Q)
% 260.69/261.08 Found (x01 x000) as proof of ((iff P) Q)
% 260.69/261.08 Found x030:=(x03 x041):x
% 260.69/261.08 Instantiate: x:=R:Prop
% 260.69/261.08 Found (x03 x041) as proof of R
% 260.69/261.08 Found (x03 x041) as proof of R
% 260.69/261.08 Found x010:=(x01 x000):((iff P) Q)
% 260.69/261.08 Found x010 as proof of ((iff P) Q)
% 260.69/261.08 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 260.69/261.08 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 260.69/261.08 Found or_ind as proof of x
% 260.69/261.08 Found (x04 or_ind) as proof of Q
% 260.69/261.08 Found (x04 or_ind) as proof of Q
% 260.69/261.08 Found x02:((iff Q) x)
% 260.69/261.08 Instantiate: x:=P:Prop
% 260.69/261.08 Found x02 as proof of ((iff Q) P)
% 260.69/261.08 Found (iff_sym00 x02) as proof of ((and (P->Q)) (Q->P))
% 260.69/261.08 Found ((iff_sym0 P) x02) as proof of ((and (P->Q)) (Q->P))
% 260.69/261.08 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 260.69/261.08 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 260.69/261.08 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 260.69/261.08 Found x010:=(x01 x000):((iff P) Q)
% 260.69/261.08 Found x010 as proof of ((iff P) Q)
% 260.69/261.08 Found x010:=(x01 x000):((iff P) Q)
% 260.69/261.08 Found x010 as proof of ((iff P) Q)
% 260.69/261.08 Found x010:=(x01 x000):((iff P) Q)
% 260.69/261.08 Found x010 as proof of ((iff P) Q)
% 260.69/261.08 Found x010:=(x01 x000):((iff P) Q)
% 260.69/261.08 Found (x01 x000) as proof of ((iff P) Q)
% 260.69/261.08 Found (x01 x000) as proof of ((iff P) Q)
% 260.69/261.08 Found x010:=(x01 x001):((iff P) Q)
% 260.69/261.08 Found (x01 x001) as proof of ((iff P) Q)
% 260.69/261.08 Found (x01 x001) as proof of ((iff P) Q)
% 260.69/261.08 Found x010:=(x01 x001):((iff P) Q)
% 260.69/261.08 Found (x01 x001) as proof of ((iff P) Q)
% 260.69/261.08 Found (x01 x001) as proof of ((iff P) Q)
% 260.69/261.08 Found x030:x
% 260.69/261.08 Found x030 as proof of Q
% 260.69/261.08 Found x030:=(x03 x020):P
% 260.69/261.08 Found (x03 x020) as proof of P
% 260.69/261.08 Found (fun (x04:((iff Q) x))=> (x03 x020)) as proof of P
% 260.69/261.08 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (x03 x020)) as proof of (((iff Q) x)->P)
% 260.69/261.08 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (x03 x020)) as proof of ((Q->P)->(((iff Q) x)->P))
% 260.69/261.08 Found x030:=(x03 x041):x
% 260.69/261.08 Instantiate: x:=P:Prop
% 260.69/261.08 Found (x03 x041) as proof of P
% 260.69/261.08 Found (x03 x041) as proof of P
% 260.69/261.08 Found x030:=(x03 x041):x
% 260.69/261.08 Instantiate: x:=P:Prop
% 260.69/261.08 Found (x03 x041) as proof of P
% 260.69/261.08 Found (x03 x041) as proof of P
% 260.69/261.08 Found x010:=(x01 x000):((iff P) Q)
% 260.69/261.08 Found x010 as proof of ((iff P) Q)
% 260.69/261.08 Found x010:=(x01 x000):((iff P) Q)
% 260.69/261.08 Found x010 as proof of ((iff P) Q)
% 260.69/261.08 Found x000:=(x00 x011):R
% 260.69/261.08 Found (x00 x011) as proof of R
% 260.69/261.08 Found (x00 x011) as proof of R
% 260.69/261.08 Found x000:=(x00 x011):R
% 260.69/261.08 Found (x00 x011) as proof of R
% 260.69/261.08 Found (x00 x011) as proof of R
% 260.69/261.08 Found x000:=(x00 x010):R
% 260.69/261.08 Found (x00 x010) as proof of R
% 260.69/261.08 Found (x00 x010) as proof of R
% 260.69/261.08 Found x030:=(x03 x040):x
% 260.69/261.08 Instantiate: x:=P:Prop
% 260.69/261.08 Found (x03 x040) as proof of P
% 260.69/261.08 Found (x03 x040) as proof of P
% 260.69/261.08 Found x010:=(x01 x000):((iff P) Q)
% 260.69/261.08 Found x010 as proof of ((iff P) Q)
% 260.69/261.08 Found x030:=(x03 x041):x
% 260.69/261.08 Instantiate: x:=R:Prop
% 260.69/261.08 Found (x03 x041) as proof of R
% 260.69/261.08 Found (x03 x041) as proof of R
% 260.69/261.08 Found x030:=(x03 x040):x
% 260.69/261.08 Instantiate: x:=P:Prop
% 260.69/261.08 Found (x03 x040) as proof of P
% 260.69/261.08 Found (x03 x040) as proof of P
% 260.69/261.08 Found x030:=(x03 x041):x
% 260.69/261.08 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 260.69/261.08 Found (x03 x041) as proof of ((iff P) Q)
% 260.69/261.08 Found (x03 x041) as proof of ((iff P) Q)
% 260.69/261.08 Found x010:=(x01 x000):((iff P) Q)
% 260.69/261.08 Found x010 as proof of ((iff P) Q)
% 260.69/261.08 Found x010:=(x01 x001):((iff P) Q)
% 260.69/261.08 Found (x01 x001) as proof of ((iff P) Q)
% 260.69/261.08 Found (x01 x001) as proof of ((iff P) Q)
% 260.69/261.08 Found x010:=(x01 x001):((iff P) Q)
% 260.69/261.08 Found (x01 x001) as proof of ((iff P) Q)
% 260.69/261.08 Found (x01 x001) as proof of ((iff P) Q)
% 260.69/261.08 Found x010:=(x01 x000):((iff P) Q)
% 260.69/261.08 Found x010 as proof of ((iff P) Q)
% 260.69/261.08 Found x010:=(x01 x000):((iff P) Q)
% 261.75/262.14 Found x010 as proof of ((iff P) Q)
% 261.75/262.14 Found x030:=(x03 x041):x
% 261.75/262.14 Instantiate: x:=P:Prop
% 261.75/262.14 Found (x03 x041) as proof of P
% 261.75/262.14 Found (x03 x041) as proof of P
% 261.75/262.14 Found x030:=(x03 x041):x
% 261.75/262.14 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 261.75/262.14 Found (x03 x041) as proof of ((iff P) Q)
% 261.75/262.14 Found (x03 x041) as proof of ((iff P) Q)
% 261.75/262.14 Found x010:=(x01 x001):((iff P) Q)
% 261.75/262.14 Found x010 as proof of ((iff P) Q)
% 261.75/262.14 Found x040:Q
% 261.75/262.14 Found x040 as proof of x
% 261.75/262.14 Found x030:=(x03 x040):x
% 261.75/262.14 Instantiate: x:=P:Prop
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found x030:=(x03 x041):x
% 261.75/262.14 Instantiate: x:=P:Prop
% 261.75/262.14 Found (x03 x041) as proof of P
% 261.75/262.14 Found (x03 x041) as proof of P
% 261.75/262.14 Found x030:=(x03 x041):x
% 261.75/262.14 Instantiate: x:=P:Prop
% 261.75/262.14 Found (x03 x041) as proof of P
% 261.75/262.14 Found (x03 x041) as proof of P
% 261.75/262.14 Found x030:=(x03 x040):x
% 261.75/262.14 Instantiate: x:=P:Prop
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found x000:=(x00 x010):R
% 261.75/262.14 Found (x00 x010) as proof of R
% 261.75/262.14 Found (x00 x010) as proof of R
% 261.75/262.14 Found x030:=(x03 x042):x
% 261.75/262.14 Instantiate: x:=P:Prop
% 261.75/262.14 Found (x03 x042) as proof of P
% 261.75/262.14 Found (x03 x042) as proof of P
% 261.75/262.14 Found x030:=(x03 x041):x
% 261.75/262.14 Instantiate: x:=P:Prop
% 261.75/262.14 Found (x03 x041) as proof of P
% 261.75/262.14 Found (x03 x041) as proof of P
% 261.75/262.14 Found x010:=(x01 x000):((iff P) Q)
% 261.75/262.14 Found (x01 x000) as proof of ((iff P) Q)
% 261.75/262.14 Found (x01 x000) as proof of ((iff P) Q)
% 261.75/262.14 Found x040:Q
% 261.75/262.14 Found x040 as proof of Q
% 261.75/262.14 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 261.75/262.14 Found (iff_refl Q) as proof of ((iff Q) x)
% 261.75/262.14 Found (iff_refl Q) as proof of ((iff Q) x)
% 261.75/262.14 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 261.75/262.14 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 261.75/262.14 Found ((conj00 (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 261.75/262.14 Found (((conj0 (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 261.75/262.14 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 261.75/262.14 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 261.75/262.14 Found x030:=(x03 x040):x
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found x000:=(x00 x011):R
% 261.75/262.14 Found (x00 x011) as proof of R
% 261.75/262.14 Found (x00 x011) as proof of R
% 261.75/262.14 Found x000:=(x00 x011):R
% 261.75/262.14 Found (x00 x011) as proof of R
% 261.75/262.14 Found (x00 x011) as proof of R
% 261.75/262.14 Found x030:=(x03 x040):x
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found x010:=(x01 x000):((iff P) Q)
% 261.75/262.14 Found x010 as proof of ((iff P) Q)
% 261.75/262.14 Found x040:Q
% 261.75/262.14 Found x040 as proof of Q
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found x000:=(x00 x010):R
% 261.75/262.14 Found (x00 x010) as proof of R
% 261.75/262.14 Found (x00 x010) as proof of R
% 261.75/262.14 Found x030:=(x03 x041):x
% 261.75/262.14 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 261.75/262.14 Found (x03 x041) as proof of ((iff P) Q)
% 261.75/262.14 Found (x03 x041) as proof of ((iff P) Q)
% 261.75/262.14 Found x010:=(x01 x000):((iff P) Q)
% 261.75/262.14 Found (x01 x000) as proof of ((iff P) Q)
% 261.75/262.14 Found (x01 x000) as proof of ((iff P) Q)
% 261.75/262.14 Found x030:=(x03 x040):x
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found x030:=(x03 x040):x
% 261.75/262.14 Instantiate: x:=P:Prop
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found (x03 x040) as proof of P
% 261.75/262.14 Found x010:=(x01 x001):((iff P) Q)
% 261.75/262.14 Found (x01 x001) as proof of ((iff P) Q)
% 261.75/262.14 Found (x01 x001) as proof of ((iff P) Q)
% 261.75/262.14 Found x010:=(x01 x000):((iff P) Q)
% 261.75/262.14 Found (x01 x000) as proof of ((iff P) Q)
% 261.75/262.14 Found (x01 x000) as proof of ((iff P) Q)
% 261.75/262.14 Found x010:=(x01 x000):((iff P) Q)
% 261.75/262.14 Found (x01 x000) as proof of ((iff P) Q)
% 261.75/262.14 Found (x01 x000) as proof of ((iff P) Q)
% 261.75/262.14 Found x10:=(x1 x21):R
% 261.75/262.14 Found (x1 x21) as proof of R
% 261.75/262.14 Found (x1 x21) as proof of R
% 261.75/262.14 Found x030:=(x03 x040):x
% 261.75/262.14 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 261.75/262.14 Found (x03 x040) as proof of ((iff P) Q)
% 261.75/262.14 Found (x03 x040) as proof of ((iff P) Q)
% 261.75/262.14 Found x010:=(x01 x000):((iff P) Q)
% 261.75/262.14 Found (x01 x000) as proof of ((iff P) Q)
% 261.75/262.14 Found (x01 x000) as proof of ((iff P) Q)
% 261.75/262.14 Found x010:=(x01 x001):((iff P) Q)
% 263.77/264.15 Found (x01 x001) as proof of ((iff P) Q)
% 263.77/264.15 Found (x01 x001) as proof of ((iff P) Q)
% 263.77/264.15 Found x010:=(x01 x001):((iff P) Q)
% 263.77/264.15 Found (x01 x001) as proof of ((iff P) Q)
% 263.77/264.15 Found (x01 x001) as proof of ((iff P) Q)
% 263.77/264.15 Found x000:=(x00 x011):R
% 263.77/264.15 Found (x00 x011) as proof of R
% 263.77/264.15 Found (x00 x011) as proof of R
% 263.77/264.15 Found x000:=(x00 x011):R
% 263.77/264.15 Found (x00 x011) as proof of R
% 263.77/264.15 Found (x00 x011) as proof of R
% 263.77/264.15 Found x010:=(x01 x000):((iff P) Q)
% 263.77/264.15 Found (x01 x000) as proof of ((iff P) Q)
% 263.77/264.15 Found (x01 x000) as proof of ((iff P) Q)
% 263.77/264.15 Found x10:=(x1 x21):R
% 263.77/264.15 Found (x1 x21) as proof of R
% 263.77/264.15 Found (x1 x21) as proof of R
% 263.77/264.15 Found x030:x
% 263.77/264.15 Found x030 as proof of Q
% 263.77/264.15 Found x030:P
% 263.77/264.15 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 263.77/264.15 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 263.77/264.15 Found x20:=(x2 x11):((iff P) Q)
% 263.77/264.15 Found (x2 x11) as proof of ((iff P) Q)
% 263.77/264.15 Found (x2 x11) as proof of ((iff P) Q)
% 263.77/264.15 Found x000:=(x00 x010):R
% 263.77/264.15 Found (x00 x010) as proof of R
% 263.77/264.15 Found (x00 x010) as proof of R
% 263.77/264.15 Found x030:x
% 263.77/264.15 Found x030 as proof of Q
% 263.77/264.15 Found x010:=(x01 x000):((iff P) Q)
% 263.77/264.15 Found x010 as proof of ((iff P) Q)
% 263.77/264.15 Found x010:=(x01 x001):((iff P) Q)
% 263.77/264.15 Found (x01 x001) as proof of ((iff P) Q)
% 263.77/264.15 Found (x01 x001) as proof of ((iff P) Q)
% 263.77/264.15 Found x000:=(x00 x011):R
% 263.77/264.15 Found (x00 x011) as proof of R
% 263.77/264.15 Found (x00 x011) as proof of R
% 263.77/264.15 Found x000:=(x00 x011):R
% 263.77/264.15 Found (x00 x011) as proof of R
% 263.77/264.15 Found (x00 x011) as proof of R
% 263.77/264.15 Found x010:=(x01 x001):((iff P) Q)
% 263.77/264.15 Found x010 as proof of ((iff P) Q)
% 263.77/264.15 Found x010:=(x01 x000):((iff P) Q)
% 263.77/264.15 Found (x01 x000) as proof of ((iff P) Q)
% 263.77/264.15 Found (x01 x000) as proof of ((iff P) Q)
% 263.77/264.15 Found x010:=(x01 x000):((iff P) Q)
% 263.77/264.15 Found (x01 x000) as proof of ((iff P) Q)
% 263.77/264.15 Found (x01 x000) as proof of ((iff P) Q)
% 263.77/264.15 Found x000:=(x00 x010):R
% 263.77/264.15 Found (x00 x010) as proof of R
% 263.77/264.15 Found (x00 x010) as proof of R
% 263.77/264.15 Found x010:=(x01 x000):((iff P) Q)
% 263.77/264.15 Found (x01 x000) as proof of ((iff P) Q)
% 263.77/264.15 Found (x01 x000) as proof of ((iff P) Q)
% 263.77/264.15 Found x000:=(x00 x010):R
% 263.77/264.15 Found (x00 x010) as proof of R
% 263.77/264.15 Found (x00 x010) as proof of R
% 263.77/264.15 Found x010:=(x01 x000):((iff P) Q)
% 263.77/264.15 Found x010 as proof of ((iff P) Q)
% 263.77/264.15 Found x030:x
% 263.77/264.15 Found x030 as proof of Q
% 263.77/264.15 Found x20:=(x2 x10):((iff P) Q)
% 263.77/264.15 Found x20 as proof of ((iff P) Q)
% 263.77/264.15 Found x030:=(x03 x040):x
% 263.77/264.15 Found (x03 x040) as proof of P
% 263.77/264.15 Found (x03 x040) as proof of P
% 263.77/264.15 Found (x03 x040) as proof of P
% 263.77/264.15 Found x030:=(x03 x040):x
% 263.77/264.15 Found (x03 x040) as proof of P
% 263.77/264.15 Found (x03 x040) as proof of P
% 263.77/264.15 Found (x03 x040) as proof of P
% 263.77/264.15 Found x030:=(x03 x040):x
% 263.77/264.15 Found (x03 x040) as proof of P
% 263.77/264.15 Found (x03 x040) as proof of P
% 263.77/264.15 Found (x03 x040) as proof of P
% 263.77/264.15 Found x010:=(x01 x000):((iff P) Q)
% 263.77/264.15 Found x010 as proof of ((iff P) Q)
% 263.77/264.15 Found x000:=(x00 x011):R
% 263.77/264.15 Found (x00 x011) as proof of R
% 263.77/264.15 Found (x00 x011) as proof of R
% 263.77/264.15 Found x20:=(x2 x11):((iff P) Q)
% 263.77/264.15 Found (x2 x11) as proof of ((iff P) Q)
% 263.77/264.15 Found (x2 x11) as proof of ((iff P) Q)
% 263.77/264.15 Found x20:=(x2 x11):((iff P) Q)
% 263.77/264.15 Found (x2 x11) as proof of ((iff P) Q)
% 263.77/264.15 Found (x2 x11) as proof of ((iff P) Q)
% 263.77/264.15 Found x000:=(x00 x010):R
% 263.77/264.15 Found (x00 x010) as proof of R
% 263.77/264.15 Found (x00 x010) as proof of R
% 263.77/264.15 Found x010:=(x01 x000):((iff P) Q)
% 263.77/264.15 Found x010 as proof of ((iff P) Q)
% 263.77/264.15 Found x00:((iff Q) x)
% 263.77/264.15 Instantiate: x:=P:Prop
% 263.77/264.15 Found x00 as proof of ((iff Q) P)
% 263.77/264.15 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 263.77/264.15 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 263.77/264.15 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 263.77/264.15 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 263.77/264.15 Found x03:(Q->x)
% 263.77/264.15 Instantiate: x:=P:Prop
% 263.77/264.15 Found x03 as proof of (Q->P)
% 263.77/264.15 Found x011:((iff P) Q)
% 263.77/264.15 Instantiate: x:=((iff P) Q):Prop
% 263.77/264.15 Found x011 as proof of x
% 263.77/264.15 Found x030:=(x03 x040):x
% 263.77/264.15 Found (x03 x040) as proof of P
% 263.77/264.15 Found (x03 x040) as proof of P
% 263.77/264.15 Found (x03 x040) as proof of P
% 263.77/264.15 Found x20:=(x2 x10):((iff P) Q)
% 263.77/264.15 Found x20 as proof of ((iff P) Q)
% 263.77/264.15 Found x000:=(x00 x011):R
% 263.77/264.15 Found (x00 x011) as proof of R
% 263.77/264.15 Found (x00 x011) as proof of R
% 263.77/264.15 Found x010:=(x01 x000):((iff P) Q)
% 263.77/264.15 Found (x01 x000) as proof of ((iff P) Q)
% 263.77/264.15 Found (x01 x000) as proof of ((iff P) Q)
% 263.77/264.15 Found x001:R
% 263.77/264.15 Instantiate: x:=R:Prop
% 263.77/264.15 Found x001 as proof of x
% 263.77/264.15 Found x000:=(x00 x010):R
% 263.77/264.15 Found (x00 x010) as proof of R
% 263.77/264.15 Found (x00 x010) as proof of R
% 263.77/264.15 Found x010:=(x01 x000):((iff P) Q)
% 263.77/264.15 Found (x01 x000) as proof of ((iff P) Q)
% 263.77/264.15 Found (x01 x000) as proof of ((iff P) Q)
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found (x01 x000) as proof of ((iff P) Q)
% 264.98/265.40 Found (x01 x000) as proof of ((iff P) Q)
% 264.98/265.40 Found x030:x
% 264.98/265.40 Instantiate: x:=P:Prop
% 264.98/265.40 Found x030 as proof of P
% 264.98/265.40 Found x030:x
% 264.98/265.40 Instantiate: x:=P:Prop
% 264.98/265.40 Found x030 as proof of P
% 264.98/265.40 Found x00:((iff Q) x)
% 264.98/265.40 Instantiate: x:=P:Prop
% 264.98/265.40 Found x00 as proof of ((iff Q) P)
% 264.98/265.40 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 264.98/265.40 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 264.98/265.40 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 264.98/265.40 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 264.98/265.40 Found x02:((iff Q) x)
% 264.98/265.40 Instantiate: x:=P:Prop
% 264.98/265.40 Found x02 as proof of ((iff Q) P)
% 264.98/265.40 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 264.98/265.40 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 264.98/265.40 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 264.98/265.40 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 264.98/265.40 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 264.98/265.40 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found x010 as proof of ((iff P) Q)
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found x010 as proof of ((iff P) Q)
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found x010 as proof of ((iff P) Q)
% 264.98/265.40 Found x040:Q
% 264.98/265.40 Found x040 as proof of Q
% 264.98/265.40 Found x000:=(x00 x010):R
% 264.98/265.40 Found (x00 x010) as proof of R
% 264.98/265.40 Found (x00 x010) as proof of R
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found (x01 x000) as proof of ((iff P) Q)
% 264.98/265.40 Found (x01 x000) as proof of ((iff P) Q)
% 264.98/265.40 Found x000:=(x00 x010):R
% 264.98/265.40 Found (x00 x010) as proof of R
% 264.98/265.40 Found (x00 x010) as proof of R
% 264.98/265.40 Found x000:=(x00 x010):R
% 264.98/265.40 Found (x00 x010) as proof of R
% 264.98/265.40 Found (x00 x010) as proof of R
% 264.98/265.40 Found x040:Q
% 264.98/265.40 Found x040 as proof of x
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found (x01 x000) as proof of ((iff P) Q)
% 264.98/265.40 Found (x01 x000) as proof of ((iff P) Q)
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found x010 as proof of ((iff P) Q)
% 264.98/265.40 Found x010:=(x01 x001):((iff P) Q)
% 264.98/265.40 Found x010 as proof of ((iff P) Q)
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found x010 as proof of ((iff P) Q)
% 264.98/265.40 Found x031:x
% 264.98/265.40 Found x031 as proof of Q
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found x010 as proof of ((iff P) Q)
% 264.98/265.40 Found x031:x
% 264.98/265.40 Found x031 as proof of x
% 264.98/265.40 Found x031:x
% 264.98/265.40 Found x031 as proof of x
% 264.98/265.40 Found x040:Q
% 264.98/265.40 Found x040 as proof of x
% 264.98/265.40 Found x030:P
% 264.98/265.40 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 264.98/265.40 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 264.98/265.40 Found x04:(x->Q)
% 264.98/265.40 Instantiate: x:=(Q->P):Prop
% 264.98/265.40 Found (fun (x1:(P->Q))=> x04) as proof of ((Q->P)->Q)
% 264.98/265.40 Found (fun (x1:(P->Q))=> x04) as proof of ((P->Q)->((Q->P)->Q))
% 264.98/265.40 Found (and_rect20 (fun (x1:(P->Q))=> x04)) as proof of Q
% 264.98/265.40 Found ((and_rect2 Q) (fun (x1:(P->Q))=> x04)) as proof of Q
% 264.98/265.40 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) Q) (fun (x1:(P->Q))=> x04)) as proof of Q
% 264.98/265.40 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) Q) (fun (x1:(P->Q))=> x04)) as proof of Q
% 264.98/265.40 Found x031:x
% 264.98/265.40 Found x031 as proof of Q
% 264.98/265.40 Found x000:=(x00 x011):R
% 264.98/265.40 Found (x00 x011) as proof of R
% 264.98/265.40 Found (x00 x011) as proof of R
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found (x01 x000) as proof of ((iff P) Q)
% 264.98/265.40 Found (x01 x000) as proof of ((iff P) Q)
% 264.98/265.40 Found x010:=(x01 x001):((iff P) Q)
% 264.98/265.40 Found (x01 x001) as proof of ((iff P) Q)
% 264.98/265.40 Found (x01 x001) as proof of ((iff P) Q)
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found (x01 x000) as proof of ((iff P) Q)
% 264.98/265.40 Found (x01 x000) as proof of ((iff P) Q)
% 264.98/265.40 Found x000:=(x00 x011):R
% 264.98/265.40 Found (x00 x011) as proof of R
% 264.98/265.40 Found (x00 x011) as proof of R
% 264.98/265.40 Found x030:x
% 264.98/265.40 Found x030 as proof of Q
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found x010 as proof of ((iff P) Q)
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found x010 as proof of ((iff P) Q)
% 264.98/265.40 Found x030:x
% 264.98/265.40 Found x030 as proof of Q
% 264.98/265.40 Found x040:Q
% 264.98/265.40 Found x040 as proof of Q
% 264.98/265.40 Found x010:=(x01 x000):((iff P) Q)
% 264.98/265.40 Found x010 as proof of ((iff P) Q)
% 264.98/265.40 Found x010:=(x01 x001):((iff P) Q)
% 264.98/265.40 Found x010 as proof of ((iff P) Q)
% 264.98/265.40 Found x20:=(x2 x10):((iff P) Q)
% 264.98/265.40 Found x20 as proof of ((iff P) Q)
% 264.98/265.40 Found x00:((iff Q) x)
% 264.98/265.40 Instantiate: x:=P:Prop
% 264.98/265.40 Found x00 as proof of ((iff Q) P)
% 264.98/265.40 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 264.98/265.40 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 264.98/265.40 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 264.98/265.40 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 266.02/266.42 Found x000:=(x00 x010):R
% 266.02/266.42 Found (x00 x010) as proof of R
% 266.02/266.42 Found (x00 x010) as proof of R
% 266.02/266.42 Found x02:((iff Q) x)
% 266.02/266.42 Instantiate: x:=P:Prop
% 266.02/266.42 Found x02 as proof of ((iff Q) P)
% 266.02/266.42 Found (iff_sym10 x02) as proof of ((and (P->Q)) (Q->P))
% 266.02/266.42 Found ((iff_sym1 P) x02) as proof of ((and (P->Q)) (Q->P))
% 266.02/266.42 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 266.02/266.42 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 266.02/266.42 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 266.02/266.42 Found x010:=(x01 x000):((iff P) Q)
% 266.02/266.42 Found x010 as proof of ((iff P) Q)
% 266.02/266.42 Found x000:=(x00 x010):R
% 266.02/266.42 Found (x00 x010) as proof of R
% 266.02/266.42 Found (x00 x010) as proof of R
% 266.02/266.42 Found x010:=(x01 x001):((iff P) Q)
% 266.02/266.42 Found (x01 x001) as proof of ((iff P) Q)
% 266.02/266.42 Found (x01 x001) as proof of ((iff P) Q)
% 266.02/266.42 Found x020:Q
% 266.02/266.42 Found x020 as proof of Q
% 266.02/266.42 Found x010:=(x01 x001):((iff P) Q)
% 266.02/266.42 Found (x01 x001) as proof of ((iff P) Q)
% 266.02/266.42 Found (x01 x001) as proof of ((iff P) Q)
% 266.02/266.42 Found x010:=(x01 x001):((iff P) Q)
% 266.02/266.42 Found x010 as proof of ((iff P) Q)
% 266.02/266.42 Found x010:x
% 266.02/266.42 Found x010 as proof of x
% 266.02/266.42 Found x020:Q
% 266.02/266.42 Found x020 as proof of x
% 266.02/266.42 Found x020:Q
% 266.02/266.42 Found x020 as proof of Q
% 266.02/266.42 Found x010:x
% 266.02/266.42 Found x010 as proof of x
% 266.02/266.42 Found x010:x
% 266.02/266.42 Found x010 as proof of Q
% 266.02/266.42 Found x010:x
% 266.02/266.42 Found x010 as proof of Q
% 266.02/266.42 Found x010:=(x01 x001):((iff P) Q)
% 266.02/266.42 Found x010 as proof of ((iff P) Q)
% 266.02/266.42 Found x010:=(x01 x000):((iff P) Q)
% 266.02/266.42 Found x010 as proof of ((iff P) Q)
% 266.02/266.42 Found x010:=(x01 x000):((iff P) Q)
% 266.02/266.42 Found x010 as proof of ((iff P) Q)
% 266.02/266.42 Found x000:=(x00 x011):R
% 266.02/266.42 Found (x00 x011) as proof of R
% 266.02/266.42 Found (x00 x011) as proof of R
% 266.02/266.42 Found x010:=(x01 x000):((iff P) Q)
% 266.02/266.42 Found x010 as proof of ((iff P) Q)
% 266.02/266.42 Found x020:Q
% 266.02/266.42 Found x020 as proof of x
% 266.02/266.42 Found x00:((iff Q) x)
% 266.02/266.42 Instantiate: x:=P:Prop
% 266.02/266.42 Found x00 as proof of ((iff Q) P)
% 266.02/266.42 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 266.02/266.42 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 266.02/266.42 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 266.02/266.42 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 266.02/266.42 Found x010:=(x01 x001):((iff P) Q)
% 266.02/266.42 Found x010 as proof of ((iff P) Q)
% 266.02/266.42 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 266.02/266.42 Found (iff_refl Q) as proof of ((iff Q) x)
% 266.02/266.42 Found (iff_refl Q) as proof of ((iff Q) x)
% 266.02/266.42 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 266.02/266.42 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 266.02/266.42 Found ((conj00 (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 266.02/266.42 Found (((conj0 (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 266.02/266.42 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 266.02/266.42 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 266.02/266.42 Found x010:=(x01 x000):((iff P) Q)
% 266.02/266.42 Found x010 as proof of ((iff P) Q)
% 266.02/266.42 Found x010:=(x01 x020):x
% 266.02/266.42 Instantiate: x:=P:Prop
% 266.02/266.42 Found (x01 x020) as proof of P
% 266.02/266.42 Found (x01 x020) as proof of P
% 266.02/266.42 Found x010:=(x01 x020):x
% 266.02/266.42 Instantiate: x:=P:Prop
% 266.02/266.42 Found (x01 x020) as proof of P
% 266.02/266.42 Found (x01 x020) as proof of P
% 266.02/266.42 Found x010:=(x01 x020):x
% 266.02/266.42 Instantiate: x:=P:Prop
% 266.02/266.42 Found (x01 x020) as proof of P
% 266.02/266.42 Found (x01 x020) as proof of P
% 266.02/266.42 Found x020:Q
% 266.02/266.42 Found x020 as proof of x
% 266.02/266.42 Found x010:=(x01 x001):((iff P) Q)
% 266.02/266.42 Found x010 as proof of ((iff P) Q)
% 266.02/266.42 Found x010:x
% 266.02/266.42 Found x010 as proof of Q
% 266.02/266.42 Found x020:Q
% 266.02/266.42 Found x020 as proof of x
% 266.02/266.42 Found x010:x
% 266.02/266.42 Found x010 as proof of x
% 266.02/266.42 Found x010:x
% 266.02/266.42 Found x010 as proof of Q
% 266.02/266.42 Found x010:x
% 266.02/266.42 Found x010 as proof of x
% 266.02/266.42 Found x020:Q
% 266.02/266.42 Found x020 as proof of Q
% 266.02/266.42 Found x010:x
% 266.02/266.42 Found x010 as proof of x
% 266.02/266.42 Found x020:Q
% 266.02/266.42 Found x020 as proof of Q
% 266.02/266.42 Found x040:Q
% 266.02/266.42 Found x040 as proof of Q
% 266.02/266.42 Found x010:=(x01 x000):((iff P) Q)
% 266.02/266.42 Found (x01 x000) as proof of ((iff P) Q)
% 266.02/266.42 Found (x01 x000) as proof of ((iff P) Q)
% 266.02/266.42 Found x010:x
% 266.02/266.42 Found x010 as proof of Q
% 266.02/266.42 Found x010:=(x01 x000):((iff P) Q)
% 266.02/266.42 Found (x01 x000) as proof of ((iff P) Q)
% 266.02/266.42 Found (x01 x000) as proof of ((iff P) Q)
% 266.02/266.42 Found x010:=(x01 x000):((iff P) Q)
% 266.02/266.42 Found (x01 x000) as proof of ((iff P) Q)
% 266.02/266.42 Found (x01 x000) as proof of ((iff P) Q)
% 266.02/266.42 Found x000:=(x00 x011):R
% 266.02/266.42 Found (x00 x011) as proof of R
% 267.79/268.20 Found (x00 x011) as proof of R
% 267.79/268.20 Found x010:=(x01 x000):((iff P) Q)
% 267.79/268.20 Found (x01 x000) as proof of ((iff P) Q)
% 267.79/268.20 Found (x01 x000) as proof of ((iff P) Q)
% 267.79/268.20 Found x020:Q
% 267.79/268.20 Found x020 as proof of x
% 267.79/268.20 Found x010:=(x01 x000):((iff P) Q)
% 267.79/268.20 Found (x01 x000) as proof of ((iff P) Q)
% 267.79/268.20 Found (x01 x000) as proof of ((iff P) Q)
% 267.79/268.20 Found x010:=(x01 x000):((iff P) Q)
% 267.79/268.20 Found x010 as proof of ((iff P) Q)
% 267.79/268.20 Found x000:=(x00 x010):R
% 267.79/268.20 Found (x00 x010) as proof of R
% 267.79/268.20 Found (x00 x010) as proof of R
% 267.79/268.20 Found x040:Q
% 267.79/268.20 Found x040 as proof of x
% 267.79/268.20 Found x020:Q
% 267.79/268.20 Found x020 as proof of Q
% 267.79/268.20 Found x00:((iff Q) x)
% 267.79/268.20 Instantiate: x:=P:Prop
% 267.79/268.20 Found x00 as proof of ((iff Q) P)
% 267.79/268.20 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 267.79/268.20 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 267.79/268.20 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 267.79/268.20 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 267.79/268.20 Found x010:=(x01 x000):((iff P) Q)
% 267.79/268.20 Found x010 as proof of ((iff P) Q)
% 267.79/268.20 Found x00:((iff Q) x)
% 267.79/268.20 Instantiate: x:=P:Prop
% 267.79/268.20 Found x00 as proof of ((iff Q) P)
% 267.79/268.20 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 267.79/268.20 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 267.79/268.20 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 267.79/268.20 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 267.79/268.20 Found x20:=(x2 x10):((iff P) Q)
% 267.79/268.20 Found x20 as proof of ((iff P) Q)
% 267.79/268.20 Found x010:=(x01 x001):((iff P) Q)
% 267.79/268.20 Found (x01 x001) as proof of ((iff P) Q)
% 267.79/268.20 Found (x01 x001) as proof of ((iff P) Q)
% 267.79/268.20 Found x010:=(x01 x000):((iff P) Q)
% 267.79/268.20 Found (x01 x000) as proof of ((iff P) Q)
% 267.79/268.20 Found (x01 x000) as proof of ((iff P) Q)
% 267.79/268.20 Found x010:=(x01 x001):((iff P) Q)
% 267.79/268.20 Found x010 as proof of ((iff P) Q)
% 267.79/268.20 Found x010:=(x01 x001):((iff P) Q)
% 267.79/268.20 Found x010 as proof of ((iff P) Q)
% 267.79/268.20 Found x010:x
% 267.79/268.20 Found x010 as proof of Q
% 267.79/268.20 Found x010:x
% 267.79/268.20 Found x010 as proof of Q
% 267.79/268.20 Found x020:Q
% 267.79/268.20 Found x020 as proof of x
% 267.79/268.20 Found x010:x
% 267.79/268.20 Found x010 as proof of x
% 267.79/268.20 Found x020:Q
% 267.79/268.20 Found x020 as proof of Q
% 267.79/268.20 Found x030:P
% 267.79/268.20 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 267.79/268.20 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 267.79/268.20 Found x010:x
% 267.79/268.20 Found x010 as proof of x
% 267.79/268.20 Found x010:x
% 267.79/268.20 Found x010 as proof of Q
% 267.79/268.20 Found x010:=(x01 x001):((iff P) Q)
% 267.79/268.20 Found (x01 x001) as proof of ((iff P) Q)
% 267.79/268.20 Found (x01 x001) as proof of ((iff P) Q)
% 267.79/268.20 Found x010:x
% 267.79/268.20 Found x010 as proof of x
% 267.79/268.20 Found x000:=(x00 x010):R
% 267.79/268.20 Found (x00 x010) as proof of R
% 267.79/268.20 Found (x00 x010) as proof of R
% 267.79/268.20 Found x010:=(x01 x001):((iff P) Q)
% 267.79/268.20 Found x010 as proof of ((iff P) Q)
% 267.79/268.20 Found x020:Q
% 267.79/268.20 Found x020 as proof of Q
% 267.79/268.20 Found x020:Q
% 267.79/268.20 Found x020 as proof of Q
% 267.79/268.20 Found x020:Q
% 267.79/268.20 Found x020 as proof of x
% 267.79/268.20 Found x020:Q
% 267.79/268.20 Found x020 as proof of x
% 267.79/268.20 Found x020:Q
% 267.79/268.20 Found x020 as proof of x
% 267.79/268.20 Found x011:x
% 267.79/268.20 Found x011 as proof of x
% 267.79/268.20 Found x020:Q
% 267.79/268.20 Found x020 as proof of Q
% 267.79/268.20 Found x011:x
% 267.79/268.20 Found x011 as proof of Q
% 267.79/268.20 Found x20:=(x2 x11):((iff P) Q)
% 267.79/268.20 Found (x2 x11) as proof of ((iff P) Q)
% 267.79/268.20 Found (x2 x11) as proof of ((iff P) Q)
% 267.79/268.20 Found x20:=(x2 x11):((iff P) Q)
% 267.79/268.20 Found (x2 x11) as proof of ((iff P) Q)
% 267.79/268.20 Found (x2 x11) as proof of ((iff P) Q)
% 267.79/268.20 Found x010:=(x01 x001):((iff P) Q)
% 267.79/268.20 Found x010 as proof of ((iff P) Q)
% 267.79/268.20 Found x010:=(x01 x001):((iff P) Q)
% 267.79/268.20 Found x010 as proof of ((iff P) Q)
% 267.79/268.20 Found x010:x
% 267.79/268.20 Found x010 as proof of x
% 267.79/268.20 Found x010:x
% 267.79/268.20 Found x010 as proof of x
% 267.79/268.20 Found x020:Q
% 267.79/268.20 Found x020 as proof of Q
% 267.79/268.20 Found x020:Q
% 267.79/268.20 Found x020 as proof of x
% 267.79/268.20 Found x010:x
% 267.79/268.20 Found x010 as proof of Q
% 267.79/268.20 Found x010:x
% 267.79/268.20 Found x010 as proof of Q
% 267.79/268.20 Found x20:=(x2 x11):((iff P) Q)
% 267.79/268.20 Found (x2 x11) as proof of ((iff P) Q)
% 267.79/268.20 Found (x2 x11) as proof of ((iff P) Q)
% 267.79/268.20 Found x030:=(x03 x040):x
% 267.79/268.20 Found (x03 x040) as proof of P
% 267.79/268.20 Found (x03 x040) as proof of P
% 267.79/268.20 Found (x03 x040) as proof of P
% 267.79/268.20 Found x010:=(x01 x001):((iff P) Q)
% 267.79/268.20 Found x010 as proof of ((iff P) Q)
% 267.79/268.20 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 267.79/268.20 Found (iff_refl Q) as proof of ((iff Q) x)
% 267.79/268.20 Found (iff_refl Q) as proof of ((iff Q) x)
% 267.79/268.20 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 267.79/268.20 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 267.79/268.20 Found x030:x
% 267.79/268.20 Found x030 as proof of Q
% 267.79/268.20 Found x010:x
% 267.79/268.20 Found x010 as proof of x
% 267.79/268.20 Found x000:=(x00 x010):R
% 267.79/268.20 Found (x00 x010) as proof of R
% 267.79/268.20 Found (x00 x010) as proof of R
% 267.79/268.20 Found x000:=(x00 x010):R
% 267.79/268.20 Found (x00 x010) as proof of R
% 267.79/268.20 Found (x00 x010) as proof of R
% 267.79/268.20 Found x010:x
% 267.79/268.20 Found x010 as proof of Q
% 267.79/268.20 Found x000:=(x00 x010):R
% 267.79/268.20 Found (x00 x010) as proof of R
% 269.78/270.21 Found (x00 x010) as proof of R
% 269.78/270.21 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 269.78/270.21 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 269.78/270.21 Found ex_intro0 as proof of x
% 269.78/270.21 Found (x04 ex_intro0) as proof of Q
% 269.78/270.21 Found (x04 ex_intro0) as proof of Q
% 269.78/270.21 Found x030:x
% 269.78/270.21 Instantiate: x:=P:Prop
% 269.78/270.21 Found x030 as proof of P
% 269.78/270.21 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 269.78/270.21 Found (iff_refl Q) as proof of ((iff Q) x)
% 269.78/270.21 Found (iff_refl Q) as proof of ((iff Q) x)
% 269.78/270.21 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 269.78/270.21 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 269.78/270.21 Found x001:R
% 269.78/270.21 Instantiate: x:=R:Prop
% 269.78/270.21 Found x001 as proof of x
% 269.78/270.21 Found x001:R
% 269.78/270.21 Instantiate: x:=R:Prop
% 269.78/270.21 Found x001 as proof of x
% 269.78/270.21 Found x030:x
% 269.78/270.21 Instantiate: x:=P:Prop
% 269.78/270.21 Found x030 as proof of P
% 269.78/270.21 Found x030:x
% 269.78/270.21 Instantiate: x:=P:Prop
% 269.78/270.21 Found (fun (x04:(x->Q))=> x030) as proof of P
% 269.78/270.21 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 269.78/270.21 Found x050:P
% 269.78/270.21 Found (fun (x06:(x->Q))=> x050) as proof of P
% 269.78/270.21 Found (fun (x06:(x->Q))=> x050) as proof of ((x->Q)->P)
% 269.78/270.21 Found x010:=(x01 x001):((iff P) Q)
% 269.78/270.21 Found x010 as proof of ((iff P) Q)
% 269.78/270.21 Found x010:=(x01 x001):((iff P) Q)
% 269.78/270.21 Found x010 as proof of ((iff P) Q)
% 269.78/270.21 Found x010:=(x01 x000):((iff P) Q)
% 269.78/270.21 Found (x01 x000) as proof of ((iff P) Q)
% 269.78/270.21 Found (x01 x000) as proof of ((iff P) Q)
% 269.78/270.21 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 269.78/270.21 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 269.78/270.21 Found ex_intro0 as proof of x
% 269.78/270.21 Found (x04 ex_intro0) as proof of Q
% 269.78/270.21 Found (x04 ex_intro0) as proof of Q
% 269.78/270.21 Found x010:=(x01 x000):((iff P) Q)
% 269.78/270.21 Found (x01 x000) as proof of ((iff P) Q)
% 269.78/270.21 Found (x01 x000) as proof of ((iff P) Q)
% 269.78/270.21 Found x000:=(x00 x011):R
% 269.78/270.21 Found (x00 x011) as proof of R
% 269.78/270.21 Found (x00 x011) as proof of R
% 269.78/270.21 Found x030:x
% 269.78/270.21 Instantiate: x:=P:Prop
% 269.78/270.21 Found x030 as proof of P
% 269.78/270.21 Found x000:=(x00 x010):R
% 269.78/270.21 Found (x00 x010) as proof of R
% 269.78/270.21 Found (x00 x010) as proof of R
% 269.78/270.21 Found x001:R
% 269.78/270.21 Instantiate: x:=R:Prop
% 269.78/270.21 Found x001 as proof of x
% 269.78/270.21 Found x03:(Q->x)
% 269.78/270.21 Instantiate: x:=P:Prop
% 269.78/270.21 Found x03 as proof of (Q->P)
% 269.78/270.21 Found x000:=(x00 x011):R
% 269.78/270.21 Found (x00 x011) as proof of R
% 269.78/270.21 Found (x00 x011) as proof of R
% 269.78/270.21 Found x000:=(x00 x011):R
% 269.78/270.21 Found (x00 x011) as proof of R
% 269.78/270.21 Found (x00 x011) as proof of R
% 269.78/270.21 Found x000:=(x00 x011):R
% 269.78/270.21 Found (x00 x011) as proof of R
% 269.78/270.21 Found (x00 x011) as proof of R
% 269.78/270.21 Found x02:((iff Q) x)
% 269.78/270.21 Instantiate: x:=P:Prop
% 269.78/270.21 Found x02 as proof of ((iff Q) P)
% 269.78/270.21 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 269.78/270.21 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 269.78/270.21 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 269.78/270.21 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 269.78/270.21 Found x010:=(x01 x000):((iff P) Q)
% 269.78/270.21 Found x010 as proof of ((iff P) Q)
% 269.78/270.21 Found x030:x
% 269.78/270.21 Instantiate: x:=P:Prop
% 269.78/270.21 Found (fun (x04:(x->Q))=> x030) as proof of P
% 269.78/270.21 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 269.78/270.21 Found x000:=(x00 x011):R
% 269.78/270.21 Found (x00 x011) as proof of R
% 269.78/270.21 Found (x00 x011) as proof of R
% 269.78/270.21 Found x010:=(x01 x000):((iff P) Q)
% 269.78/270.21 Found x010 as proof of ((iff P) Q)
% 269.78/270.21 Found x010:=(x01 x000):((iff P) Q)
% 269.78/270.21 Found (x01 x000) as proof of ((iff P) Q)
% 269.78/270.21 Found (x01 x000) as proof of ((iff P) Q)
% 269.78/270.21 Found x010:=(x01 x000):((iff P) Q)
% 269.78/270.21 Found (x01 x000) as proof of ((iff P) Q)
% 269.78/270.21 Found (x01 x000) as proof of ((iff P) Q)
% 269.78/270.21 Found x000:=(x00 x010):R
% 269.78/270.21 Found (x00 x010) as proof of R
% 269.78/270.21 Found (x00 x010) as proof of R
% 269.78/270.21 Found x041:Q
% 269.78/270.21 Found x041 as proof of x
% 269.78/270.21 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 269.78/270.21 Found (iff_refl Q) as proof of ((iff Q) x)
% 269.78/270.21 Found (iff_refl Q) as proof of ((iff Q) x)
% 269.78/270.21 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 269.78/270.21 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 269.78/270.21 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 269.78/270.21 Found (iff_refl Q) as proof of ((iff Q) x)
% 269.78/270.21 Found (iff_refl Q) as proof of ((iff Q) x)
% 269.78/270.21 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 269.78/270.21 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 269.78/270.21 Found x040:Q
% 269.78/270.21 Found x040 as proof of Q
% 269.78/270.21 Found x010:=(x01 x000):((iff P) Q)
% 269.78/270.21 Found x010 as proof of ((iff P) Q)
% 269.78/270.21 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 269.78/270.21 Found (iff_refl Q) as proof of ((iff Q) x)
% 269.78/270.21 Found (iff_refl Q) as proof of ((iff Q) x)
% 269.78/270.21 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 270.50/270.91 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 270.50/270.91 Found x040:Q
% 270.50/270.91 Found x040 as proof of x
% 270.50/270.91 Found x030:P
% 270.50/270.91 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 270.50/270.91 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 270.50/270.91 Found x041:Q
% 270.50/270.91 Found x041 as proof of Q
% 270.50/270.91 Found x031:x
% 270.50/270.91 Found x031 as proof of x
% 270.50/270.91 Found x000:=(x00 x011):R
% 270.50/270.91 Found (x00 x011) as proof of R
% 270.50/270.91 Found (x00 x011) as proof of R
% 270.50/270.91 Found x000:=(x00 x011):R
% 270.50/270.91 Found (x00 x011) as proof of R
% 270.50/270.91 Found (x00 x011) as proof of R
% 270.50/270.91 Found x000:=(x00 x011):R
% 270.50/270.91 Found (x00 x011) as proof of R
% 270.50/270.91 Found (x00 x011) as proof of R
% 270.50/270.91 Found x031:x
% 270.50/270.91 Found x031 as proof of Q
% 270.50/270.91 Found x030:=(x03 x040):x
% 270.50/270.91 Instantiate: x:=P:Prop
% 270.50/270.91 Found (x03 x040) as proof of P
% 270.50/270.91 Found (x03 x040) as proof of P
% 270.50/270.91 Found x000:=(x00 x010):R
% 270.50/270.91 Found (x00 x010) as proof of R
% 270.50/270.91 Found (x00 x010) as proof of R
% 270.50/270.91 Found x010:=(x01 x000):((iff P) Q)
% 270.50/270.91 Found x010 as proof of ((iff P) Q)
% 270.50/270.91 Found x030:=(x03 x041):x
% 270.50/270.91 Instantiate: x:=P:Prop
% 270.50/270.91 Found (x03 x041) as proof of P
% 270.50/270.91 Found (x03 x041) as proof of P
% 270.50/270.91 Found x030:=(x03 x020):P
% 270.50/270.91 Found (x03 x020) as proof of P
% 270.50/270.91 Found (x03 x020) as proof of P
% 270.50/270.91 Found x010:=(x01 x000):((iff P) Q)
% 270.50/270.91 Found (x01 x000) as proof of ((iff P) Q)
% 270.50/270.91 Found (x01 x000) as proof of ((iff P) Q)
% 270.50/270.91 Found x010:=(x01 x000):((iff P) Q)
% 270.50/270.91 Found x010 as proof of ((iff P) Q)
% 270.50/270.91 Found x010:=(x01 x001):((iff P) Q)
% 270.50/270.91 Found x010 as proof of ((iff P) Q)
% 270.50/270.91 Found x030:x
% 270.50/270.91 Found x030 as proof of Q
% 270.50/270.91 Found x030:x
% 270.50/270.91 Found x030 as proof of x
% 270.50/270.91 Found x020:=(x02 x030):Q
% 270.50/270.91 Found (x02 x030) as proof of Q
% 270.50/270.91 Found (x02 x030) as proof of Q
% 270.50/270.91 Found x000:=(x00 x010):R
% 270.50/270.91 Found (x00 x010) as proof of R
% 270.50/270.91 Found (x00 x010) as proof of R
% 270.50/270.91 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 270.50/270.91 Found (iff_refl Q) as proof of ((iff Q) x)
% 270.50/270.91 Found (iff_refl Q) as proof of ((iff Q) x)
% 270.50/270.91 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 270.50/270.91 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 270.50/270.91 Found ((conj00 (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 270.50/270.91 Found (((conj0 (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 270.50/270.91 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 270.50/270.91 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 270.50/270.91 Found x04:(x->Q)
% 270.50/270.91 Instantiate: x:=(Q->P):Prop
% 270.50/270.91 Found (fun (x1:(P->Q))=> x04) as proof of ((Q->P)->Q)
% 270.50/270.91 Found (fun (x1:(P->Q))=> x04) as proof of ((P->Q)->((Q->P)->Q))
% 270.50/270.91 Found (and_rect20 (fun (x1:(P->Q))=> x04)) as proof of Q
% 270.50/270.91 Found ((and_rect2 Q) (fun (x1:(P->Q))=> x04)) as proof of Q
% 270.50/270.91 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) Q) (fun (x1:(P->Q))=> x04)) as proof of Q
% 270.50/270.91 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) Q) (fun (x1:(P->Q))=> x04)) as proof of Q
% 270.50/270.91 Found x02:((iff Q) x)
% 270.50/270.91 Instantiate: x:=P:Prop
% 270.50/270.91 Found x02 as proof of ((iff Q) P)
% 270.50/270.91 Found (iff_sym10 x02) as proof of ((and (P->Q)) (Q->P))
% 270.50/270.91 Found ((iff_sym1 P) x02) as proof of ((and (P->Q)) (Q->P))
% 270.50/270.91 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 270.50/270.91 Found (((iff_sym Q) P) x02) as proof of ((and (P->Q)) (Q->P))
% 270.50/270.91 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 270.50/270.91 Found x000:R
% 270.50/270.91 Instantiate: x:=R:Prop
% 270.50/270.91 Found x000 as proof of x
% 270.50/270.91 Found (x06 x000) as proof of Q
% 270.50/270.91 Found (x06 x000) as proof of Q
% 270.50/270.91 Found (x03 (x06 x000)) as proof of P
% 270.50/270.91 Found (fun (x06:(x->Q))=> (x03 (x06 x000))) as proof of P
% 270.50/270.91 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))) as proof of ((x->Q)->P)
% 270.50/270.91 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))) as proof of ((Q->x)->((x->Q)->P))
% 270.50/270.91 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))) as proof of P
% 270.50/270.91 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))) as proof of P
% 270.50/270.91 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))) as proof of P
% 271.09/271.54 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))))) as proof of P
% 271.09/271.54 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))))) as proof of (((iff Q) x)->P)
% 271.09/271.54 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))))) as proof of ((Q->P)->(((iff Q) x)->P))
% 271.09/271.54 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))))) as proof of ((P->Q)->((Q->P)->(((iff Q) x)->P)))
% 271.09/271.54 Found (and_rect10 (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 271.09/271.54 Found ((and_rect1 (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 271.09/271.54 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 271.09/271.54 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 271.09/271.54 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 271.09/271.54 Found x010:=(x01 x000):((iff P) Q)
% 271.09/271.54 Found x010 as proof of ((iff P) Q)
% 271.09/271.54 Found x010:=(x01 x000):((iff P) Q)
% 271.09/271.54 Found x010 as proof of ((iff P) Q)
% 271.09/271.54 Found x010:=(x01 x000):((iff P) Q)
% 271.09/271.54 Found x010 as proof of ((iff P) Q)
% 271.09/271.54 Found x000:=(x00 x011):R
% 271.09/271.54 Found (x00 x011) as proof of R
% 271.09/271.54 Found (x00 x011) as proof of R
% 271.09/271.54 Found x010:=(x01 x000):((iff P) Q)
% 271.09/271.54 Found (x01 x000) as proof of ((iff P) Q)
% 271.09/271.54 Found (x01 x000) as proof of ((iff P) Q)
% 271.09/271.54 Found x000:=(x00 x011):R
% 271.09/271.54 Found (x00 x011) as proof of R
% 271.09/271.54 Found (x00 x011) as proof of R
% 271.09/271.54 Found x010:=(x01 x000):((iff P) Q)
% 271.09/271.54 Found (x01 x000) as proof of ((iff P) Q)
% 271.09/271.54 Found (x01 x000) as proof of ((iff P) Q)
% 271.09/271.54 Found x030:=(x03 x041):x
% 271.09/271.54 Instantiate: x:=P:Prop
% 271.09/271.54 Found (x03 x041) as proof of P
% 271.09/271.54 Found (x03 x041) as proof of P
% 271.09/271.54 Found x030:x
% 271.09/271.54 Found x030 as proof of Q
% 271.09/271.54 Found x030:x
% 271.09/271.54 Found x030 as proof of Q
% 271.09/271.54 Found x020:Q
% 271.09/271.54 Instantiate: x:=Q:Prop
% 271.09/271.54 Found x020 as proof of x
% 271.09/271.54 Found x000:=(x00 x010):R
% 271.09/271.54 Found (x00 x010) as proof of R
% 271.09/271.54 Found (x00 x010) as proof of R
% 271.09/271.54 Found x000:=(x00 x010):R
% 271.09/271.54 Found (x00 x010) as proof of R
% 271.09/271.54 Found (x00 x010) as proof of R
% 271.09/271.54 Found x030:=(x03 x040):x
% 271.09/271.54 Instantiate: x:=P:Prop
% 271.09/271.54 Found (x03 x040) as proof of P
% 271.09/271.54 Found (x03 x040) as proof of P
% 271.09/271.54 Found x030:=(x03 x020):P
% 271.09/271.54 Found (x03 x020) as proof of P
% 271.09/271.54 Found (x03 x020) as proof of P
% 271.09/271.54 Found x010:=(x01 x000):((iff P) Q)
% 271.09/271.54 Found x010 as proof of ((iff P) Q)
% 271.09/271.54 Found x020:=(x02 x030):Q
% 271.09/271.54 Found (x02 x030) as proof of Q
% 271.09/271.54 Found (x02 x030) as proof of Q
% 271.09/271.54 Found x010:=(x01 x000):((iff P) Q)
% 271.09/271.54 Found x010 as proof of ((iff P) Q)
% 271.09/271.54 Found x010:=(x01 x000):((iff P) Q)
% 271.09/271.54 Found x010 as proof of ((iff P) Q)
% 271.09/271.54 Found x010:=(x01 x000):((iff P) Q)
% 271.09/271.54 Found x010 as proof of ((iff P) Q)
% 272.10/272.50 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 272.10/272.50 Found (iff_refl Q) as proof of ((iff Q) x)
% 272.10/272.50 Found (iff_refl Q) as proof of ((iff Q) x)
% 272.10/272.50 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 272.10/272.50 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 272.10/272.50 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 272.10/272.50 Found (iff_refl Q) as proof of ((iff Q) x)
% 272.10/272.50 Found (iff_refl Q) as proof of ((iff Q) x)
% 272.10/272.50 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 272.10/272.50 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 272.10/272.50 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 272.10/272.50 Found (iff_refl Q) as proof of ((iff Q) x)
% 272.10/272.50 Found (iff_refl Q) as proof of ((iff Q) x)
% 272.10/272.50 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 272.10/272.50 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 272.10/272.50 Found x000:=(x00 x011):R
% 272.10/272.50 Found (x00 x011) as proof of R
% 272.10/272.50 Found (x00 x011) as proof of R
% 272.10/272.50 Found x000:=(x00 x011):R
% 272.10/272.50 Found (x00 x011) as proof of R
% 272.10/272.50 Found (x00 x011) as proof of R
% 272.10/272.50 Found x000:=(x00 x011):R
% 272.10/272.50 Found (x00 x011) as proof of R
% 272.10/272.50 Found (x00 x011) as proof of R
% 272.10/272.50 Found x000:=(x00 x010):R
% 272.10/272.50 Found (x00 x010) as proof of R
% 272.10/272.50 Found (x00 x010) as proof of R
% 272.10/272.50 Found x000:=(x00 x010):R
% 272.10/272.50 Found (x00 x010) as proof of R
% 272.10/272.50 Found (x00 x010) as proof of R
% 272.10/272.50 Found x030:=(x03 x040):x
% 272.10/272.50 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 272.10/272.50 Found (x03 x040) as proof of ((iff P) Q)
% 272.10/272.50 Found (x03 x040) as proof of ((iff P) Q)
% 272.10/272.50 Found x010:=(x01 x000):((iff P) Q)
% 272.10/272.50 Found x010 as proof of ((iff P) Q)
% 272.10/272.50 Found x010:=(x01 x000):((iff P) Q)
% 272.10/272.50 Found (x01 x000) as proof of ((iff P) Q)
% 272.10/272.50 Found (x01 x000) as proof of ((iff P) Q)
% 272.10/272.50 Found x010:=(x01 x000):((iff P) Q)
% 272.10/272.50 Found x010 as proof of ((iff P) Q)
% 272.10/272.50 Found x010:=(x01 x000):((iff P) Q)
% 272.10/272.50 Found x010 as proof of ((iff P) Q)
% 272.10/272.50 Found x010:=(x01 x000):((iff P) Q)
% 272.10/272.50 Found x010 as proof of ((iff P) Q)
% 272.10/272.50 Found x010:=(x01 x000):((iff P) Q)
% 272.10/272.50 Found x010 as proof of ((iff P) Q)
% 272.10/272.50 Found x20:=(x2 x10):((iff P) Q)
% 272.10/272.50 Found x20 as proof of ((iff P) Q)
% 272.10/272.50 Found x010:=(x01 x000):((iff P) Q)
% 272.10/272.50 Found x010 as proof of ((iff P) Q)
% 272.10/272.50 Found x000:=(x00 x011):R
% 272.10/272.50 Found (x00 x011) as proof of R
% 272.10/272.50 Found (x00 x011) as proof of R
% 272.10/272.50 Found x010:=(x01 x000):((iff P) Q)
% 272.10/272.50 Found (x01 x000) as proof of ((iff P) Q)
% 272.10/272.50 Found (x01 x000) as proof of ((iff P) Q)
% 272.10/272.50 Found x010:=(x01 x001):((iff P) Q)
% 272.10/272.50 Found (x01 x001) as proof of ((iff P) Q)
% 272.10/272.50 Found (x01 x001) as proof of ((iff P) Q)
% 272.10/272.50 Found x010:=(x01 x001):((iff P) Q)
% 272.10/272.50 Found (x01 x001) as proof of ((iff P) Q)
% 272.10/272.50 Found (x01 x001) as proof of ((iff P) Q)
% 272.10/272.50 Found x030:x
% 272.10/272.50 Found x030 as proof of Q
% 272.10/272.50 Found x020:=(x02 x030):Q
% 272.10/272.50 Found (x02 x030) as proof of Q
% 272.10/272.50 Found (x02 x030) as proof of Q
% 272.10/272.50 Found x030:x
% 272.10/272.50 Found x030 as proof of Q
% 272.10/272.50 Found x010:=(x01 x000):((iff P) Q)
% 272.10/272.50 Found (x01 x000) as proof of ((iff P) Q)
% 272.10/272.50 Found (x01 x000) as proof of ((iff P) Q)
% 272.10/272.50 Found x010:=(x01 x000):((iff P) Q)
% 272.10/272.50 Found (x01 x000) as proof of ((iff P) Q)
% 272.10/272.50 Found (x01 x000) as proof of ((iff P) Q)
% 272.10/272.50 Found x010:=(x01 x000):((iff P) Q)
% 272.10/272.50 Found (x01 x000) as proof of ((iff P) Q)
% 272.10/272.50 Found (x01 x000) as proof of ((iff P) Q)
% 272.10/272.50 Found x030:=(x03 x020):P
% 272.10/272.50 Found (x03 x020) as proof of P
% 272.10/272.50 Found (x03 x020) as proof of P
% 272.10/272.50 Found x010:=(x01 x000):((iff P) Q)
% 272.10/272.50 Found (x01 x000) as proof of ((iff P) Q)
% 272.10/272.50 Found (x01 x000) as proof of ((iff P) Q)
% 272.10/272.51 Found x040:Q
% 272.10/272.51 Found x040 as proof of Q
% 272.10/272.51 Found (x03 x040) as proof of P
% 272.10/272.51 Found (x03 x040) as proof of P
% 272.10/272.51 Found (x03 x040) as proof of P
% 272.10/272.51 Found x000:=(x00 x010):R
% 272.10/272.51 Found (x00 x010) as proof of R
% 272.10/272.51 Found (x00 x010) as proof of R
% 272.10/272.51 Found x040:Q
% 272.10/272.51 Found x040 as proof of Q
% 272.10/272.51 Found (x03 x040) as proof of R
% 272.10/272.51 Found (x03 x040) as proof of R
% 272.10/272.51 Found (x03 x040) as proof of R
% 272.10/272.51 Found x040:Q
% 272.10/272.51 Found x040 as proof of Q
% 272.10/272.51 Found (x03 x040) as proof of P
% 272.10/272.51 Found (x03 x040) as proof of P
% 272.10/272.51 Found (x03 x040) as proof of P
% 272.10/272.51 Found x020:Q
% 272.10/272.51 Found x020 as proof of x
% 272.10/272.51 Found x011:x
% 272.10/272.51 Found x011 as proof of Q
% 272.10/272.51 Found x020:Q
% 272.10/272.51 Found x020 as proof of Q
% 272.10/272.51 Found x000:=(x00 x011):R
% 272.10/272.51 Found (x00 x011) as proof of R
% 272.10/272.51 Found (x00 x011) as proof of R
% 272.10/272.51 Found x010:=(x01 x000):((iff P) Q)
% 272.10/272.51 Found x010 as proof of ((iff P) Q)
% 272.10/272.51 Found x000:=(x00 x011):R
% 272.10/272.51 Found (x00 x011) as proof of R
% 272.10/272.51 Found (x00 x011) as proof of R
% 272.10/272.51 Found x011:x
% 272.10/272.51 Found x011 as proof of x
% 272.10/272.51 Found x00:((iff Q) x)
% 272.10/272.51 Instantiate: x:=P:Prop
% 272.10/272.51 Found x00 as proof of ((iff Q) P)
% 272.10/272.51 Found (iff_sym00 x00) as proof of ((and (P->Q)) (Q->P))
% 273.38/273.81 Found ((iff_sym0 P) x00) as proof of ((and (P->Q)) (Q->P))
% 273.38/273.81 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 273.38/273.81 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 273.38/273.81 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 273.38/273.81 Found x2:(R->((iff P) Q))
% 273.38/273.81 Instantiate: x:=(R->((iff P) Q)):Prop
% 273.38/273.81 Found x2 as proof of x
% 273.38/273.81 Found x011:x
% 273.38/273.81 Found x011 as proof of Q
% 273.38/273.81 Found x010:=(x01 x001):((iff P) Q)
% 273.38/273.81 Found (x01 x001) as proof of ((iff P) Q)
% 273.38/273.81 Found (x01 x001) as proof of ((iff P) Q)
% 273.38/273.81 Found x020:Q
% 273.38/273.81 Found x020 as proof of Q
% 273.38/273.81 Found x020:Q
% 273.38/273.81 Found x020 as proof of x
% 273.38/273.81 Found x011:x
% 273.38/273.81 Found x011 as proof of x
% 273.38/273.81 Found x010:=(x01 x001):((iff P) Q)
% 273.38/273.81 Found (x01 x001) as proof of ((iff P) Q)
% 273.38/273.81 Found (x01 x001) as proof of ((iff P) Q)
% 273.38/273.81 Found iff_sym100:=(iff_sym10 x20):((iff Q) P)
% 273.38/273.81 Found (iff_sym10 x20) as proof of ((iff Q) P)
% 273.38/273.81 Found ((iff_sym1 Q) x20) as proof of ((iff Q) P)
% 273.38/273.81 Found (((iff_sym P) Q) x20) as proof of ((iff Q) P)
% 273.38/273.81 Found (((iff_sym P) Q) x20) as proof of ((iff Q) P)
% 273.38/273.81 Found x010:=(x01 x000):((iff P) Q)
% 273.38/273.81 Found (x01 x000) as proof of ((iff P) Q)
% 273.38/273.81 Found (x01 x000) as proof of ((iff P) Q)
% 273.38/273.81 Found x010:=(x01 x000):((iff P) Q)
% 273.38/273.81 Found (x01 x000) as proof of ((iff P) Q)
% 273.38/273.81 Found (x01 x000) as proof of ((iff P) Q)
% 273.38/273.81 Found x010:=(x01 x001):((iff P) Q)
% 273.38/273.81 Found (x01 x001) as proof of ((iff P) Q)
% 273.38/273.81 Found (x01 x001) as proof of ((iff P) Q)
% 273.38/273.81 Found x030:=(x03 x040):x
% 273.38/273.81 Found (x03 x040) as proof of P
% 273.38/273.81 Found (x03 x040) as proof of P
% 273.38/273.81 Found (x03 x040) as proof of P
% 273.38/273.81 Found x010:=(x01 x000):((iff P) Q)
% 273.38/273.81 Found x010 as proof of ((iff P) Q)
% 273.38/273.81 Found x20:((iff P) Q)
% 273.38/273.81 Instantiate: x:=((iff P) Q):Prop
% 273.38/273.81 Found x20 as proof of x
% 273.38/273.81 Found x030:P
% 273.38/273.81 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 273.38/273.81 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 273.38/273.81 Found x2:(R->((iff P) Q))
% 273.38/273.81 Instantiate: x:=(R->((iff P) Q)):Prop
% 273.38/273.81 Found x2 as proof of x
% 273.38/273.81 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 273.38/273.81 Found (iff_refl Q) as proof of ((iff Q) x)
% 273.38/273.81 Found (iff_refl Q) as proof of ((iff Q) x)
% 273.38/273.81 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 273.38/273.81 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 273.38/273.81 Found x030:=(x03 x040):x
% 273.38/273.81 Found (x03 x040) as proof of P
% 273.38/273.81 Found (x03 x040) as proof of P
% 273.38/273.81 Found (x03 x040) as proof of P
% 273.38/273.81 Found x000:=(x00 x010):R
% 273.38/273.81 Found (x00 x010) as proof of R
% 273.38/273.81 Found (x00 x010) as proof of R
% 273.38/273.81 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 273.38/273.81 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 273.38/273.81 Found ex_intro0 as proof of x
% 273.38/273.81 Found (x04 ex_intro0) as proof of Q
% 273.38/273.81 Found (x04 ex_intro0) as proof of Q
% 273.38/273.81 Found x050:P
% 273.38/273.81 Found (fun (x06:(x->Q))=> x050) as proof of P
% 273.38/273.81 Found (fun (x06:(x->Q))=> x050) as proof of ((x->Q)->P)
% 273.38/273.81 Found x000:=(x00 x011):R
% 273.38/273.81 Found (x00 x011) as proof of R
% 273.38/273.81 Found (x00 x011) as proof of R
% 273.38/273.81 Found x010:=(x01 x000):((iff P) Q)
% 273.38/273.81 Found (x01 x000) as proof of ((iff P) Q)
% 273.38/273.81 Found (x01 x000) as proof of ((iff P) Q)
% 273.38/273.81 Found x010:=(x01 x000):((iff P) Q)
% 273.38/273.81 Found (x01 x000) as proof of ((iff P) Q)
% 273.38/273.81 Found (x01 x000) as proof of ((iff P) Q)
% 273.38/273.81 Found x021:Q
% 273.38/273.81 Instantiate: x:=Q:Prop
% 273.38/273.81 Found x021 as proof of x
% 273.38/273.81 Found x10:R
% 273.38/273.81 Instantiate: x:=R:Prop
% 273.38/273.81 Found x10 as proof of x
% 273.38/273.81 Found x010:=(x01 x000):((iff P) Q)
% 273.38/273.81 Found (x01 x000) as proof of ((iff P) Q)
% 273.38/273.81 Found (x01 x000) as proof of ((iff P) Q)
% 273.38/273.81 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 273.38/273.81 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 273.38/273.81 Found ex_intro0 as proof of x
% 273.38/273.81 Found (x04 ex_intro0) as proof of Q
% 273.38/273.81 Found (x04 ex_intro0) as proof of Q
% 273.38/273.81 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 273.38/273.81 Found (iff_refl Q) as proof of ((iff Q) x)
% 273.38/273.81 Found (iff_refl Q) as proof of ((iff Q) x)
% 273.38/273.81 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 273.38/273.81 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 273.38/273.81 Found x011:((iff P) Q)
% 273.38/273.81 Instantiate: x:=((iff P) Q):Prop
% 273.38/273.81 Found x011 as proof of x
% 273.38/273.81 Found x010:=(x01 x001):((iff P) Q)
% 273.38/273.81 Found (x01 x001) as proof of ((iff P) Q)
% 273.38/273.81 Found (x01 x001) as proof of ((iff P) Q)
% 273.38/273.81 Found iff_sym100:=(iff_sym10 x20):((iff Q) P)
% 273.38/273.81 Found (iff_sym10 x20) as proof of ((iff Q) P)
% 273.38/273.81 Found ((iff_sym1 Q) x20) as proof of ((iff Q) P)
% 273.38/273.81 Found (((iff_sym P) Q) x20) as proof of ((iff Q) P)
% 275.46/275.88 Found (((iff_sym P) Q) x20) as proof of ((iff Q) P)
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found (x01 x000) as proof of ((iff P) Q)
% 275.46/275.88 Found (x01 x000) as proof of ((iff P) Q)
% 275.46/275.88 Found x030:x
% 275.46/275.88 Instantiate: x:=P:Prop
% 275.46/275.88 Found x030 as proof of P
% 275.46/275.88 Found x030:=(x03 x020):P
% 275.46/275.88 Found (x03 x020) as proof of P
% 275.46/275.88 Found (x03 x020) as proof of P
% 275.46/275.88 Found x2:(R->((iff P) Q))
% 275.46/275.88 Instantiate: x:=(R->((iff P) Q)):Prop
% 275.46/275.88 Found x2 as proof of x
% 275.46/275.88 Found x2:(R->((iff P) Q))
% 275.46/275.88 Instantiate: x:=(R->((iff P) Q)):Prop
% 275.46/275.88 Found x2 as proof of x
% 275.46/275.88 Found x010:x
% 275.46/275.88 Instantiate: x:=P:Prop
% 275.46/275.88 Found x010 as proof of P
% 275.46/275.88 Found x02:((iff Q) x)
% 275.46/275.88 Instantiate: x:=P:Prop
% 275.46/275.88 Found x02 as proof of ((iff Q) P)
% 275.46/275.88 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 275.46/275.88 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 275.46/275.88 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 275.46/275.88 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 275.46/275.88 Found x001:R
% 275.46/275.88 Instantiate: x:=R:Prop
% 275.46/275.88 Found x001 as proof of x
% 275.46/275.88 Found x001:R
% 275.46/275.88 Instantiate: x:=R:Prop
% 275.46/275.88 Found x001 as proof of x
% 275.46/275.88 Found x030:x
% 275.46/275.88 Instantiate: x:=P:Prop
% 275.46/275.88 Found x030 as proof of P
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found x011:((iff P) Q)
% 275.46/275.88 Instantiate: x:=((iff P) Q):Prop
% 275.46/275.88 Found x011 as proof of x
% 275.46/275.88 Found x010:=(x01 x001):((iff P) Q)
% 275.46/275.88 Found (x01 x001) as proof of ((iff P) Q)
% 275.46/275.88 Found (x01 x001) as proof of ((iff P) Q)
% 275.46/275.88 Found x2:(R->((iff P) Q))
% 275.46/275.88 Instantiate: x:=(R->((iff P) Q)):Prop
% 275.46/275.88 Found x2 as proof of x
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found x020:Q
% 275.46/275.88 Found x020 as proof of Q
% 275.46/275.88 Found (x01 x020) as proof of P
% 275.46/275.88 Found (x01 x020) as proof of P
% 275.46/275.88 Found (x01 x020) as proof of P
% 275.46/275.88 Found x030:=(x03 x021):P
% 275.46/275.88 Found (x03 x021) as proof of P
% 275.46/275.88 Found (x03 x021) as proof of P
% 275.46/275.88 Found x030:=(x03 x020):P
% 275.46/275.88 Found (x03 x020) as proof of P
% 275.46/275.88 Found (x03 x020) as proof of P
% 275.46/275.88 Found x2:(R->((iff P) Q))
% 275.46/275.88 Instantiate: x:=(R->((iff P) Q)):Prop
% 275.46/275.88 Found x2 as proof of x
% 275.46/275.88 Found x030:x
% 275.46/275.88 Instantiate: x:=P:Prop
% 275.46/275.88 Found x030 as proof of P
% 275.46/275.88 Found x030:x
% 275.46/275.88 Instantiate: x:=P:Prop
% 275.46/275.88 Found x030 as proof of P
% 275.46/275.88 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 275.46/275.88 Found (iff_refl Q) as proof of ((iff Q) x)
% 275.46/275.88 Found (iff_refl Q) as proof of ((iff Q) x)
% 275.46/275.88 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 275.46/275.88 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 275.46/275.88 Found x031:x
% 275.46/275.88 Found x031 as proof of x
% 275.46/275.88 Found x20:=(x2 x10):((iff P) Q)
% 275.46/275.88 Found x20 as proof of ((iff P) Q)
% 275.46/275.88 Found x030:x
% 275.46/275.88 Found x030 as proof of Q
% 275.46/275.88 Found x030:x
% 275.46/275.88 Found x030 as proof of x
% 275.46/275.88 Found x041:Q
% 275.46/275.88 Found x041 as proof of x
% 275.46/275.88 Found x031:x
% 275.46/275.88 Found x031 as proof of Q
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found x041:Q
% 275.46/275.88 Found x041 as proof of Q
% 275.46/275.88 Found x040:Q
% 275.46/275.88 Found x040 as proof of x
% 275.46/275.88 Found x040:Q
% 275.46/275.88 Found x040 as proof of Q
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found x030:=(x03 x041):x
% 275.46/275.88 Instantiate: x:=P:Prop
% 275.46/275.88 Found (x03 x041) as proof of P
% 275.46/275.88 Found (x03 x041) as proof of P
% 275.46/275.88 Found x030:=(x03 x040):x
% 275.46/275.88 Instantiate: x:=P:Prop
% 275.46/275.88 Found (x03 x040) as proof of P
% 275.46/275.88 Found (x03 x040) as proof of P
% 275.46/275.88 Found x040:Q
% 275.46/275.88 Found x040 as proof of Q
% 275.46/275.88 Found (x03 x040) as proof of P
% 275.46/275.88 Found (x03 x040) as proof of P
% 275.46/275.88 Found (x03 x040) as proof of P
% 275.46/275.88 Found x010:=(x01 x022):x
% 275.46/275.88 Instantiate: x:=((((iff P) Q)->R)->((R->((iff P) Q))->P)):Prop
% 275.46/275.88 Found (x01 x022) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 275.46/275.88 Found (x01 x022) as proof of ((((iff P) Q)->R)->((R->((iff P) Q))->P))
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found x030:x
% 275.46/275.88 Found x030 as proof of Q
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found x010:=(x01 x000):((iff P) Q)
% 275.46/275.88 Found x010 as proof of ((iff P) Q)
% 275.46/275.88 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 276.57/276.97 Found (iff_refl Q) as proof of ((iff Q) x)
% 276.57/276.97 Found (iff_refl Q) as proof of ((iff Q) x)
% 276.57/276.97 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 276.57/276.97 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 276.57/276.97 Found x000:=(x00 x011):R
% 276.57/276.97 Found (x00 x011) as proof of R
% 276.57/276.97 Found (x00 x011) as proof of R
% 276.57/276.97 Found x010:=(x01 x000):((iff P) Q)
% 276.57/276.97 Found x010 as proof of ((iff P) Q)
% 276.57/276.97 Found x010:=(x01 x000):((iff P) Q)
% 276.57/276.97 Found (x01 x000) as proof of ((iff P) Q)
% 276.57/276.97 Found (x01 x000) as proof of ((iff P) Q)
% 276.57/276.97 Found x030:=(x03 x040):x
% 276.57/276.97 Instantiate: x:=R:Prop
% 276.57/276.97 Found (x03 x040) as proof of R
% 276.57/276.97 Found (x03 x040) as proof of R
% 276.57/276.97 Found x030:=(x03 x040):x
% 276.57/276.97 Instantiate: x:=P:Prop
% 276.57/276.97 Found (x03 x040) as proof of P
% 276.57/276.97 Found (x03 x040) as proof of P
% 276.57/276.97 Found x030:=(x03 x041):x
% 276.57/276.97 Instantiate: x:=P:Prop
% 276.57/276.97 Found (x03 x041) as proof of P
% 276.57/276.97 Found (x03 x041) as proof of P
% 276.57/276.97 Found x000:=(x00 x010):R
% 276.57/276.97 Found (x00 x010) as proof of R
% 276.57/276.97 Found (x00 x010) as proof of R
% 276.57/276.97 Found x000:=(x00 x011):R
% 276.57/276.97 Found (x00 x011) as proof of R
% 276.57/276.97 Found (x00 x011) as proof of R
% 276.57/276.97 Found x00:((iff Q) x)
% 276.57/276.97 Instantiate: x:=P:Prop
% 276.57/276.97 Found x00 as proof of ((iff Q) P)
% 276.57/276.97 Found (iff_sym10 x00) as proof of ((and (P->Q)) (Q->P))
% 276.57/276.97 Found ((iff_sym1 P) x00) as proof of ((and (P->Q)) (Q->P))
% 276.57/276.97 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 276.57/276.97 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 276.57/276.97 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 276.57/276.97 Found x010:=(x01 x000):((iff P) Q)
% 276.57/276.97 Found x010 as proof of ((iff P) Q)
% 276.57/276.97 Found x010:=(x01 x000):((iff P) Q)
% 276.57/276.97 Found x010 as proof of ((iff P) Q)
% 276.57/276.97 Found x030:P
% 276.57/276.97 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 276.57/276.97 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 276.57/276.97 Found x000:=(x00 x011):R
% 276.57/276.97 Found (x00 x011) as proof of R
% 276.57/276.97 Found (x00 x011) as proof of R
% 276.57/276.97 Found x010:=(x01 x000):((iff P) Q)
% 276.57/276.97 Found (x01 x000) as proof of ((iff P) Q)
% 276.57/276.97 Found (x01 x000) as proof of ((iff P) Q)
% 276.57/276.97 Found x000:=(x00 x010):R
% 276.57/276.97 Found (x00 x010) as proof of R
% 276.57/276.97 Found (x00 x010) as proof of R
% 276.57/276.97 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 276.57/276.97 Found (iff_refl Q) as proof of ((iff Q) x)
% 276.57/276.97 Found (iff_refl Q) as proof of ((iff Q) x)
% 276.57/276.97 Found (fun (x04:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 276.57/276.97 Found (fun (x04:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 276.57/276.97 Found ((conj00 (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 276.57/276.97 Found (((conj0 (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 276.57/276.97 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 276.57/276.97 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((and (P->((iff Q) x))) (((iff Q) x)->P))
% 276.57/276.97 Found ((((conj (P->((iff Q) x))) (((iff Q) x)->P)) (fun (x04:P)=> (iff_refl Q))) (fun (x04:((iff Q) x))=> x030)) as proof of ((iff P) ((iff Q) x))
% 276.57/276.97 Found x010:=(x01 x000):((iff P) Q)
% 276.57/276.97 Found x010 as proof of ((iff P) Q)
% 276.57/276.97 Found x010:=(x01 x000):((iff P) Q)
% 276.57/276.97 Found x010 as proof of ((iff P) Q)
% 276.57/276.97 Found x030:P
% 276.57/276.97 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 276.57/276.97 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 276.57/276.97 Found x000:=(x00 x011):R
% 276.57/276.97 Found (x00 x011) as proof of R
% 276.57/276.97 Found (x00 x011) as proof of R
% 276.57/276.97 Found x10:=(x1 x21):R
% 276.57/276.97 Found (x1 x21) as proof of R
% 276.57/276.97 Found (x1 x21) as proof of R
% 276.57/276.97 Found x000:=(x00 x011):R
% 276.57/276.97 Found (x00 x011) as proof of R
% 276.57/276.97 Found (x00 x011) as proof of R
% 276.57/276.97 Found x10:=(x1 x21):R
% 276.57/276.97 Found (x1 x21) as proof of R
% 276.57/276.97 Found (x1 x21) as proof of R
% 276.57/276.97 Found x040:Q
% 276.57/276.97 Found x040 as proof of Q
% 276.57/276.97 Found (x03 x040) as proof of P
% 276.57/276.97 Found (x03 x040) as proof of P
% 276.57/276.97 Found (x03 x040) as proof of P
% 276.57/276.97 Found x030:x
% 276.57/276.97 Found x030 as proof of Q
% 276.57/276.97 Found x040:Q
% 276.57/276.97 Found x040 as proof of Q
% 276.57/276.97 Found (x03 x040) as proof of P
% 276.57/276.97 Found (x03 x040) as proof of P
% 276.57/276.97 Found (x03 x040) as proof of P
% 276.57/276.97 Found x030:x
% 276.57/276.97 Found x030 as proof of Q
% 276.57/276.97 Found x040:P
% 276.57/276.97 Found (fun (x06:(x->Q))=> x040) as proof of P
% 276.57/276.97 Found (fun (x06:(x->Q))=> x040) as proof of ((x->Q)->P)
% 276.57/276.97 Found x010:=(x01 x001):((iff P) Q)
% 276.57/276.97 Found (x01 x001) as proof of ((iff P) Q)
% 276.57/276.97 Found (x01 x001) as proof of ((iff P) Q)
% 279.20/279.58 Found x010:=(x01 x001):((iff P) Q)
% 279.20/279.58 Found (x01 x001) as proof of ((iff P) Q)
% 279.20/279.58 Found (x01 x001) as proof of ((iff P) Q)
% 279.20/279.58 Found x010:=(x01 x001):((iff P) Q)
% 279.20/279.58 Found (x01 x001) as proof of ((iff P) Q)
% 279.20/279.58 Found (x01 x001) as proof of ((iff P) Q)
% 279.20/279.58 Found x010:=(x01 x000):((iff P) Q)
% 279.20/279.58 Found (x01 x000) as proof of ((iff P) Q)
% 279.20/279.58 Found (x01 x000) as proof of ((iff P) Q)
% 279.20/279.58 Found x10:=(x1 x21):R
% 279.20/279.58 Found (x1 x21) as proof of R
% 279.20/279.58 Found (x1 x21) as proof of R
% 279.20/279.58 Found x010:=(x01 x001):((iff P) Q)
% 279.20/279.58 Found (x01 x001) as proof of ((iff P) Q)
% 279.20/279.58 Found (x01 x001) as proof of ((iff P) Q)
% 279.20/279.58 Found x040:Q
% 279.20/279.58 Found x040 as proof of Q
% 279.20/279.58 Found (x03 x040) as proof of P
% 279.20/279.58 Found (x03 x040) as proof of P
% 279.20/279.58 Found (x03 x040) as proof of P
% 279.20/279.58 Found x010:=(x01 x002):((iff P) Q)
% 279.20/279.58 Found x010 as proof of ((iff P) Q)
% 279.20/279.58 Found x010:=(x01 x002):((iff P) Q)
% 279.20/279.58 Found x010 as proof of ((iff P) Q)
% 279.20/279.58 Found x010:=(x01 x000):((iff P) Q)
% 279.20/279.58 Found (x01 x000) as proof of ((iff P) Q)
% 279.20/279.58 Found (x01 x000) as proof of ((iff P) Q)
% 279.20/279.58 Found x10:=(x1 x21):R
% 279.20/279.58 Found (x1 x21) as proof of R
% 279.20/279.58 Found (x1 x21) as proof of R
% 279.20/279.58 Found x20:=(x2 x11):((iff P) Q)
% 279.20/279.58 Found (x2 x11) as proof of ((iff P) Q)
% 279.20/279.58 Found (x2 x11) as proof of ((iff P) Q)
% 279.20/279.58 Found x030:=(x03 x040):x
% 279.20/279.58 Found (x03 x040) as proof of P
% 279.20/279.58 Found (x03 x040) as proof of P
% 279.20/279.58 Found (x03 x040) as proof of P
% 279.20/279.58 Found x010:=(x01 x000):((iff P) Q)
% 279.20/279.58 Found x010 as proof of ((iff P) Q)
% 279.20/279.58 Found x20:=(x2 x11):((iff P) Q)
% 279.20/279.58 Found (x2 x11) as proof of ((iff P) Q)
% 279.20/279.58 Found (x2 x11) as proof of ((iff P) Q)
% 279.20/279.58 Found x010:=(x01 x002):((iff P) Q)
% 279.20/279.58 Found x010 as proof of ((iff P) Q)
% 279.20/279.58 Found x010:=(x01 x002):((iff P) Q)
% 279.20/279.58 Found x010 as proof of ((iff P) Q)
% 279.20/279.58 Found x030:=(x03 x040):x
% 279.20/279.58 Found (x03 x040) as proof of P
% 279.20/279.58 Found (x03 x040) as proof of P
% 279.20/279.58 Found (x03 x040) as proof of P
% 279.20/279.58 Found x000:=(x00 x010):R
% 279.20/279.58 Found (x00 x010) as proof of R
% 279.20/279.58 Found (x00 x010) as proof of R
% 279.20/279.58 Found x030:x
% 279.20/279.58 Instantiate: x:=P:Prop
% 279.20/279.58 Found x030 as proof of P
% 279.20/279.58 Found x011:((iff P) Q)
% 279.20/279.58 Instantiate: x:=((iff P) Q):Prop
% 279.20/279.58 Found x011 as proof of x
% 279.20/279.58 Found x030:x
% 279.20/279.58 Instantiate: x:=P:Prop
% 279.20/279.58 Found x030 as proof of P
% 279.20/279.58 Found x010:=(x01 x000):((iff P) Q)
% 279.20/279.58 Found x010 as proof of ((iff P) Q)
% 279.20/279.58 Found x001:R
% 279.20/279.58 Instantiate: x:=R:Prop
% 279.20/279.58 Found x001 as proof of x
% 279.20/279.58 Found x030:x
% 279.20/279.58 Instantiate: x:=P:Prop
% 279.20/279.58 Found x030 as proof of P
% 279.20/279.58 Found x011:((iff P) Q)
% 279.20/279.58 Instantiate: x:=((iff P) Q):Prop
% 279.20/279.58 Found x011 as proof of x
% 279.20/279.58 Found x010:=(x01 x001):((iff P) Q)
% 279.20/279.58 Found (x01 x001) as proof of ((iff P) Q)
% 279.20/279.58 Found (x01 x001) as proof of ((iff P) Q)
% 279.20/279.58 Found x030:x
% 279.20/279.58 Instantiate: x:=P:Prop
% 279.20/279.58 Found x030 as proof of P
% 279.20/279.58 Found x030:x
% 279.20/279.58 Instantiate: x:=Q:Prop
% 279.20/279.58 Found x030 as proof of Q
% 279.20/279.58 Found x20:=(x2 x11):((iff P) Q)
% 279.20/279.58 Found (x2 x11) as proof of ((iff P) Q)
% 279.20/279.58 Found (x2 x11) as proof of ((iff P) Q)
% 279.20/279.58 Found x20:=(x2 x11):((iff P) Q)
% 279.20/279.58 Found (x2 x11) as proof of ((iff P) Q)
% 279.20/279.58 Found (x2 x11) as proof of ((iff P) Q)
% 279.20/279.58 Found x030:x
% 279.20/279.58 Instantiate: x:=R:Prop
% 279.20/279.58 Found x030 as proof of R
% 279.20/279.58 Found x010:=(x01 x000):((iff P) Q)
% 279.20/279.58 Found x010 as proof of ((iff P) Q)
% 279.20/279.58 Found x001:R
% 279.20/279.58 Instantiate: x:=R:Prop
% 279.20/279.58 Found x001 as proof of x
% 279.20/279.58 Found x000:=(x00 x010):R
% 279.20/279.58 Found (x00 x010) as proof of R
% 279.20/279.58 Found (x00 x010) as proof of R
% 279.20/279.58 Found x010:=(x01 x000):((iff P) Q)
% 279.20/279.58 Found x010 as proof of ((iff P) Q)
% 279.20/279.58 Found x1:(((iff P) Q)->R)
% 279.20/279.58 Instantiate: x:=(((iff P) Q)->R):Prop
% 279.20/279.58 Found x1 as proof of x
% 279.20/279.58 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 279.20/279.58 Found (iff_refl Q) as proof of ((iff Q) x)
% 279.20/279.58 Found (iff_refl Q) as proof of ((iff Q) x)
% 279.20/279.58 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 279.20/279.58 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 279.20/279.58 Found x010:=(x01 x000):((iff P) Q)
% 279.20/279.58 Found x010 as proof of ((iff P) Q)
% 279.20/279.58 Found x010:=(x01 x000):((iff P) Q)
% 279.20/279.58 Found x010 as proof of ((iff P) Q)
% 279.20/279.58 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 279.20/279.58 Found (iff_refl Q) as proof of ((iff Q) x)
% 279.20/279.58 Found (iff_refl Q) as proof of ((iff Q) x)
% 279.20/279.58 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 279.20/279.58 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 279.20/279.58 Found x010:=(x01 x000):((iff P) Q)
% 279.20/279.58 Found x010 as proof of ((iff P) Q)
% 279.20/279.58 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 279.20/279.58 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 280.27/280.68 Found eta_expansion as proof of x
% 280.27/280.68 Found x030:x
% 280.27/280.68 Instantiate: x:=Q:Prop
% 280.27/280.68 Found x030 as proof of Q
% 280.27/280.68 Found x030:x
% 280.27/280.68 Instantiate: x:=R:Prop
% 280.27/280.68 Found x030 as proof of R
% 280.27/280.68 Found x010:x
% 280.27/280.68 Instantiate: x:=((R->((iff P) Q))->P):Prop
% 280.27/280.68 Found x010 as proof of ((R->((iff P) Q))->P)
% 280.27/280.68 Found x030:x
% 280.27/280.68 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 280.27/280.68 Found x030 as proof of ((iff P) Q)
% 280.27/280.68 Found x010:=(x01 x000):((iff P) Q)
% 280.27/280.68 Found (x01 x000) as proof of ((iff P) Q)
% 280.27/280.68 Found (x01 x000) as proof of ((iff P) Q)
% 280.27/280.68 Found x030:x
% 280.27/280.68 Instantiate: x:=Q:Prop
% 280.27/280.68 Found x030 as proof of Q
% 280.27/280.68 Found x010:=(x01 x000):((iff P) Q)
% 280.27/280.68 Found x010 as proof of ((iff P) Q)
% 280.27/280.68 Found x000:=(x00 x010):R
% 280.27/280.68 Found (x00 x010) as proof of R
% 280.27/280.68 Found (x00 x010) as proof of R
% 280.27/280.68 Found x030:x
% 280.27/280.68 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 280.27/280.68 Found x030 as proof of ((iff P) Q)
% 280.27/280.68 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 280.27/280.68 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 280.27/280.68 Found ex_intro0 as proof of x
% 280.27/280.68 Found (x02 ex_intro0) as proof of Q
% 280.27/280.69 Found (x02 ex_intro0) as proof of Q
% 280.27/280.69 Found x20:=(x2 x10):((iff P) Q)
% 280.27/280.69 Found x20 as proof of ((iff P) Q)
% 280.27/280.69 Found x04:(x->Q)
% 280.27/280.69 Instantiate: x:=(Q->P):Prop
% 280.27/280.69 Found (fun (x1:(P->Q))=> x04) as proof of ((Q->P)->Q)
% 280.27/280.69 Found (fun (x1:(P->Q))=> x04) as proof of ((P->Q)->((Q->P)->Q))
% 280.27/280.69 Found (and_rect20 (fun (x1:(P->Q))=> x04)) as proof of Q
% 280.27/280.69 Found ((and_rect2 Q) (fun (x1:(P->Q))=> x04)) as proof of Q
% 280.27/280.69 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) Q) (fun (x1:(P->Q))=> x04)) as proof of Q
% 280.27/280.69 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) Q) (fun (x1:(P->Q))=> x04)) as proof of Q
% 280.27/280.69 Found x20:=(x2 x11):((iff P) Q)
% 280.27/280.69 Found (x2 x11) as proof of ((iff P) Q)
% 280.27/280.69 Found (x2 x11) as proof of ((iff P) Q)
% 280.27/280.69 Found x010:=(x01 x000):((iff P) Q)
% 280.27/280.69 Found x010 as proof of ((iff P) Q)
% 280.27/280.69 Found x030:x
% 280.27/280.69 Instantiate: x:=Q:Prop
% 280.27/280.69 Found x030 as proof of Q
% 280.27/280.69 Found x010:=(x01 x000):((iff P) Q)
% 280.27/280.69 Found x010 as proof of ((iff P) Q)
% 280.27/280.69 Found x031:x
% 280.27/280.69 Instantiate: x:=R:Prop
% 280.27/280.69 Found x031 as proof of R
% 280.27/280.69 Found x031:x
% 280.27/280.69 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 280.27/280.69 Found x031 as proof of ((iff P) Q)
% 280.27/280.69 Found x030:=(x03 x040):x
% 280.27/280.69 Instantiate: x:=((P->Q)->((Q->P)->P)):Prop
% 280.27/280.69 Found (x03 x040) as proof of ((P->Q)->((Q->P)->P))
% 280.27/280.69 Found (x03 x040) as proof of ((P->Q)->((Q->P)->P))
% 280.27/280.69 Found (and_rect20 (x03 x040)) as proof of P
% 280.27/280.69 Found ((and_rect2 P) (x03 x040)) as proof of P
% 280.27/280.69 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (x03 x040)) as proof of P
% 280.27/280.69 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (x03 x040)) as proof of P
% 280.27/280.69 Found x031:x
% 280.27/280.69 Instantiate: x:=Q:Prop
% 280.27/280.69 Found x031 as proof of Q
% 280.27/280.69 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 280.27/280.69 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 280.27/280.69 Found ex_intro0 as proof of x
% 280.27/280.69 Found (x02 ex_intro0) as proof of Q
% 280.27/280.69 Found (x02 ex_intro0) as proof of Q
% 280.27/280.69 Found x010:=(x01 x000):((iff P) Q)
% 280.27/280.69 Found (x01 x000) as proof of ((iff P) Q)
% 280.27/280.69 Found (x01 x000) as proof of ((iff P) Q)
% 280.27/280.69 Found x010:=(x01 x000):((iff P) Q)
% 280.27/280.69 Found (x01 x000) as proof of ((iff P) Q)
% 280.27/280.69 Found (x01 x000) as proof of ((iff P) Q)
% 280.27/280.69 Found x040:Q
% 280.27/280.69 Found x040 as proof of Q
% 280.27/280.69 Found (x03 x040) as proof of P
% 280.27/280.69 Found (x03 x040) as proof of P
% 280.27/280.69 Found (x03 x040) as proof of P
% 280.27/280.69 Found x010:=(x01 x000):((iff P) Q)
% 280.27/280.69 Found x010 as proof of ((iff P) Q)
% 280.27/280.69 Found x000:=(x00 x010):R
% 280.27/280.69 Found (x00 x010) as proof of R
% 280.27/280.69 Found (x00 x010) as proof of R
% 280.27/280.69 Found x010:=(x01 x000):((iff P) Q)
% 280.27/280.69 Found x010 as proof of ((iff P) Q)
% 280.27/280.69 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 280.27/280.69 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 280.27/280.69 Found ex_intro0 as proof of x
% 280.27/280.69 Found (x02 ex_intro0) as proof of Q
% 280.27/280.69 Found (x02 ex_intro0) as proof of Q
% 280.27/280.69 Found x010:=(x01 x000):((iff P) Q)
% 280.27/280.69 Found x010 as proof of ((iff P) Q)
% 280.27/280.69 Found x000:=(x00 x011):R
% 280.27/280.69 Found (x00 x011) as proof of R
% 280.27/280.69 Found (x00 x011) as proof of R
% 280.27/280.69 Found x010:=(x01 x000):((iff P) Q)
% 280.27/280.69 Found (x01 x000) as proof of ((iff P) Q)
% 281.69/282.07 Found (x01 x000) as proof of ((iff P) Q)
% 281.69/282.07 Found x000:=(x00 x010):R
% 281.69/282.07 Found (x00 x010) as proof of R
% 281.69/282.07 Found (x00 x010) as proof of R
% 281.69/282.07 Found x000:=(x00 x010):R
% 281.69/282.07 Found (x00 x010) as proof of R
% 281.69/282.07 Found (x00 x010) as proof of R
% 281.69/282.07 Found x010:=(x01 x000):((iff P) Q)
% 281.69/282.07 Found x010 as proof of ((iff P) Q)
% 281.69/282.07 Found x000:=(x00 x011):R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found x000:=(x00 x010):R
% 281.69/282.07 Found (x00 x010) as proof of R
% 281.69/282.07 Found (x00 x010) as proof of R
% 281.69/282.07 Found x000:=(x00 x011):R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found x010:=(x01 x000):((iff P) Q)
% 281.69/282.07 Found x010 as proof of ((iff P) Q)
% 281.69/282.07 Found x010:=(x01 x000):((iff P) Q)
% 281.69/282.07 Found x010 as proof of ((iff P) Q)
% 281.69/282.07 Found x010:=(x01 x000):((iff P) Q)
% 281.69/282.07 Found x010 as proof of ((iff P) Q)
% 281.69/282.07 Found x010:=(x01 x002):((iff P) Q)
% 281.69/282.07 Found x010 as proof of ((iff P) Q)
% 281.69/282.07 Found x010:=(x01 x000):((iff P) Q)
% 281.69/282.07 Found x010 as proof of ((iff P) Q)
% 281.69/282.07 Found x010:=(x01 x000):((iff P) Q)
% 281.69/282.07 Found x010 as proof of ((iff P) Q)
% 281.69/282.07 Found x000:=(x00 x011):R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found x000:=(x00 x010):R
% 281.69/282.07 Found (x00 x010) as proof of R
% 281.69/282.07 Found (x00 x010) as proof of R
% 281.69/282.07 Found x000:=(x00 x011):R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found x010:x
% 281.69/282.07 Found x010 as proof of Q
% 281.69/282.07 Found x020:Q
% 281.69/282.07 Found x020 as proof of Q
% 281.69/282.07 Found x000:=(x00 x011):R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found x020:Q
% 281.69/282.07 Found x020 as proof of x
% 281.69/282.07 Found or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 281.69/282.07 Instantiate: x:=(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A))):Prop
% 281.69/282.07 Found or_comm_i as proof of x
% 281.69/282.07 Found (x02 or_comm_i) as proof of Q
% 281.69/282.07 Found (x02 or_comm_i) as proof of Q
% 281.69/282.07 Found (x4 (x02 or_comm_i)) as proof of P
% 281.69/282.07 Found (fun (x4:(Q->P))=> (x4 (x02 or_comm_i))) as proof of P
% 281.69/282.07 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i))) as proof of ((Q->P)->P)
% 281.69/282.07 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i))) as proof of ((P->Q)->((Q->P)->P))
% 281.69/282.07 Found (and_rect20 (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 281.69/282.07 Found ((and_rect2 P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 281.69/282.07 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 281.69/282.07 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 281.69/282.07 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 281.69/282.07 Found x010:x
% 281.69/282.07 Found x010 as proof of x
% 281.69/282.07 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 281.69/282.07 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 281.69/282.07 Found ex_intro0 as proof of x
% 281.69/282.07 Found (x02 ex_intro0) as proof of Q
% 281.69/282.07 Found (x02 ex_intro0) as proof of Q
% 281.69/282.07 Found x010:=(x01 x001):((iff P) Q)
% 281.69/282.07 Found (x01 x001) as proof of ((iff P) Q)
% 281.69/282.07 Found (x01 x001) as proof of ((iff P) Q)
% 281.69/282.07 Found x20:=(x2 x10):((iff P) Q)
% 281.69/282.07 Found x20 as proof of ((iff P) Q)
% 281.69/282.07 Found x010:=(x01 x000):((iff P) Q)
% 281.69/282.07 Found x010 as proof of ((iff P) Q)
% 281.69/282.07 Found x010:=(x01 x000):((iff P) Q)
% 281.69/282.07 Found x010 as proof of ((iff P) Q)
% 281.69/282.07 Found x000:=(x00 x011):R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found x000:=(x00 x011):R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found x000:=(x00 x010):R
% 281.69/282.07 Found (x00 x010) as proof of R
% 281.69/282.07 Found (x00 x010) as proof of R
% 281.69/282.07 Found x010:=(x01 x001):((iff P) Q)
% 281.69/282.07 Found x010 as proof of ((iff P) Q)
% 281.69/282.07 Found x010:=(x01 x000):((iff P) Q)
% 281.69/282.07 Found x010 as proof of ((iff P) Q)
% 281.69/282.07 Found x030:=(x03 x020):P
% 281.69/282.07 Found (x03 x020) as proof of P
% 281.69/282.07 Found (x03 x020) as proof of P
% 281.69/282.07 Found x010:=(x01 x000):((iff P) Q)
% 281.69/282.07 Found x010 as proof of ((iff P) Q)
% 281.69/282.07 Found x000:=(x00 x011):R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found (x00 x011) as proof of R
% 281.69/282.07 Found x020:=(x02 x030):Q
% 281.69/282.07 Found (x02 x030) as proof of Q
% 282.79/283.18 Found (x02 x030) as proof of Q
% 282.79/283.18 Found x010:=(x01 x000):((iff P) Q)
% 282.79/283.18 Found (x01 x000) as proof of ((iff P) Q)
% 282.79/283.18 Found (x01 x000) as proof of ((iff P) Q)
% 282.79/283.18 Found x010:x
% 282.79/283.18 Found x010 as proof of Q
% 282.79/283.18 Found x010:x
% 282.79/283.18 Found x010 as proof of x
% 282.79/283.18 Found x030:=(x03 x040):x
% 282.79/283.18 Instantiate: x:=P:Prop
% 282.79/283.18 Found (x03 x040) as proof of P
% 282.79/283.18 Found (x03 x040) as proof of P
% 282.79/283.18 Found x020:Q
% 282.79/283.18 Found x020 as proof of x
% 282.79/283.18 Found x20:=(x2 x10):((iff P) Q)
% 282.79/283.18 Found x20 as proof of ((iff P) Q)
% 282.79/283.18 Found x040:P
% 282.79/283.18 Found (fun (x06:(x->Q))=> x040) as proof of P
% 282.79/283.18 Found (fun (x06:(x->Q))=> x040) as proof of ((x->Q)->P)
% 282.79/283.18 Found x000:=(x00 x010):R
% 282.79/283.18 Found (x00 x010) as proof of R
% 282.79/283.18 Found (x00 x010) as proof of R
% 282.79/283.18 Found x011:x
% 282.79/283.18 Found x011 as proof of Q
% 282.79/283.18 Found x010:=(x01 x000):((iff P) Q)
% 282.79/283.18 Found (x01 x000) as proof of ((iff P) Q)
% 282.79/283.18 Found (x01 x000) as proof of ((iff P) Q)
% 282.79/283.18 Found x000:=(x00 x011):R
% 282.79/283.18 Found (x00 x011) as proof of R
% 282.79/283.18 Found (x00 x011) as proof of R
% 282.79/283.18 Found x000:=(x00 x011):R
% 282.79/283.18 Found (x00 x011) as proof of R
% 282.79/283.18 Found (x00 x011) as proof of R
% 282.79/283.18 Found x010:=(x01 x001):((iff P) Q)
% 282.79/283.18 Found (x01 x001) as proof of ((iff P) Q)
% 282.79/283.18 Found (x01 x001) as proof of ((iff P) Q)
% 282.79/283.18 Found x010:=(x01 x001):((iff P) Q)
% 282.79/283.18 Found x010 as proof of ((iff P) Q)
% 282.79/283.18 Found x010:x
% 282.79/283.18 Found x010 as proof of x
% 282.79/283.18 Found x010:x
% 282.79/283.18 Found x010 as proof of Q
% 282.79/283.18 Found x010:x
% 282.79/283.18 Found x010 as proof of Q
% 282.79/283.18 Found x020:Q
% 282.79/283.18 Found x020 as proof of Q
% 282.79/283.18 Found x020:Q
% 282.79/283.18 Found x020 as proof of Q
% 282.79/283.18 Found x010:=(x01 x000):((iff P) Q)
% 282.79/283.18 Found (x01 x000) as proof of ((iff P) Q)
% 282.79/283.18 Found (x01 x000) as proof of ((iff P) Q)
% 282.79/283.18 Found x010:=(x01 x001):((iff P) Q)
% 282.79/283.18 Found (x01 x001) as proof of ((iff P) Q)
% 282.79/283.18 Found (x01 x001) as proof of ((iff P) Q)
% 282.79/283.18 Found or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 282.79/283.18 Instantiate: x:=(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A))):Prop
% 282.79/283.18 Found or_comm_i as proof of x
% 282.79/283.18 Found (x02 or_comm_i) as proof of Q
% 282.79/283.18 Found (x02 or_comm_i) as proof of Q
% 282.79/283.18 Found (x4 (x02 or_comm_i)) as proof of P
% 282.79/283.18 Found (fun (x4:(Q->P))=> (x4 (x02 or_comm_i))) as proof of P
% 282.79/283.18 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i))) as proof of ((Q->P)->P)
% 282.79/283.18 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i))) as proof of ((P->Q)->((Q->P)->P))
% 282.79/283.18 Found (and_rect20 (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 282.79/283.18 Found ((and_rect2 P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 282.79/283.18 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 282.79/283.18 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 282.79/283.18 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 282.79/283.18 Found x020:Q
% 282.79/283.18 Found x020 as proof of x
% 282.79/283.18 Found x010:=(x01 x000):((iff P) Q)
% 282.79/283.18 Found x010 as proof of ((iff P) Q)
% 282.79/283.18 Found x010:x
% 282.79/283.18 Found x010 as proof of x
% 282.79/283.18 Found x010:x
% 282.79/283.18 Found x010 as proof of Q
% 282.79/283.18 Found x010:=(x01 x000):((iff P) Q)
% 282.79/283.18 Found x010 as proof of ((iff P) Q)
% 282.79/283.18 Found x010:x
% 282.79/283.18 Found x010 as proof of x
% 282.79/283.18 Found x011:x
% 282.79/283.18 Found x011 as proof of x
% 282.79/283.18 Found x010:=(x01 x000):((iff P) Q)
% 282.79/283.18 Found (x01 x000) as proof of ((iff P) Q)
% 282.79/283.18 Found (x01 x000) as proof of ((iff P) Q)
% 282.79/283.18 Found x040:Q
% 282.79/283.18 Found x040 as proof of Q
% 282.79/283.18 Found (x03 x040) as proof of P
% 282.79/283.18 Found (x03 x040) as proof of P
% 282.79/283.18 Found (x03 x040) as proof of P
% 282.79/283.18 Found x010:x
% 282.79/283.18 Found x010 as proof of Q
% 282.79/283.18 Found x020:Q
% 282.79/283.18 Found x020 as proof of Q
% 282.79/283.18 Found x011:x
% 282.79/283.18 Found x011 as proof of x
% 282.79/283.18 Found x020:Q
% 282.79/283.18 Found x020 as proof of x
% 282.79/283.18 Found x011:x
% 282.79/283.18 Found x011 as proof of Q
% 282.79/283.18 Found x000:=(x00 x011):R
% 282.79/283.18 Found (x00 x011) as proof of R
% 282.79/283.18 Found (x00 x011) as proof of R
% 282.79/283.18 Found x010:=(x01 x000):((iff P) Q)
% 282.79/283.18 Found (x01 x000) as proof of ((iff P) Q)
% 282.79/283.18 Found (x01 x000) as proof of ((iff P) Q)
% 282.79/283.18 Found x010:=(x01 x000):((iff P) Q)
% 282.79/283.18 Found (x01 x000) as proof of ((iff P) Q)
% 282.79/283.18 Found (x01 x000) as proof of ((iff P) Q)
% 282.79/283.18 Found x010:=(x01 x001):((iff P) Q)
% 282.79/283.18 Found (x01 x001) as proof of ((iff P) Q)
% 282.79/283.18 Found (x01 x001) as proof of ((iff P) Q)
% 284.90/285.35 Found x010:x
% 284.90/285.35 Found x010 as proof of x
% 284.90/285.35 Found x010:=(x01 x001):((iff P) Q)
% 284.90/285.35 Found (x01 x001) as proof of ((iff P) Q)
% 284.90/285.35 Found (x01 x001) as proof of ((iff P) Q)
% 284.90/285.35 Found x00:((iff Q) x)
% 284.90/285.35 Instantiate: x:=P:Prop
% 284.90/285.35 Found x00 as proof of ((iff Q) P)
% 284.90/285.35 Found (iff_sym10 x00) as proof of ((iff P) Q)
% 284.90/285.35 Found ((iff_sym1 P) x00) as proof of ((iff P) Q)
% 284.90/285.35 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 284.90/285.35 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 284.90/285.35 Found x020:Q
% 284.90/285.35 Found x020 as proof of Q
% 284.90/285.35 Found x020:Q
% 284.90/285.35 Found x020 as proof of x
% 284.90/285.35 Found x010:=(x01 x000):((iff P) Q)
% 284.90/285.35 Found (x01 x000) as proof of ((iff P) Q)
% 284.90/285.35 Found (x01 x000) as proof of ((iff P) Q)
% 284.90/285.35 Found x20:=(x2 x10):((iff P) Q)
% 284.90/285.35 Found x20 as proof of ((iff P) Q)
% 284.90/285.35 Found x20:=(x2 x10):((iff P) Q)
% 284.90/285.35 Found x20 as proof of ((iff P) Q)
% 284.90/285.35 Found x010:=(x01 x000):((iff P) Q)
% 284.90/285.35 Found (x01 x000) as proof of ((iff P) Q)
% 284.90/285.35 Found (x01 x000) as proof of ((iff P) Q)
% 284.90/285.35 Found x000:=(x00 x010):R
% 284.90/285.35 Found (x00 x010) as proof of R
% 284.90/285.35 Found (x00 x010) as proof of R
% 284.90/285.35 Found x010:x
% 284.90/285.35 Found x010 as proof of Q
% 284.90/285.35 Found x000:=(x00 x010):R
% 284.90/285.35 Found (x00 x010) as proof of R
% 284.90/285.35 Found (x00 x010) as proof of R
% 284.90/285.35 Found x010:x
% 284.90/285.35 Found x010 as proof of x
% 284.90/285.35 Found x010:x
% 284.90/285.35 Found x010 as proof of Q
% 284.90/285.35 Found x010:=(x01 x000):((iff P) Q)
% 284.90/285.35 Found (x01 x000) as proof of ((iff P) Q)
% 284.90/285.35 Found (x01 x000) as proof of ((iff P) Q)
% 284.90/285.35 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 284.90/285.35 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 284.90/285.35 Found ex_intro0 as proof of x
% 284.90/285.35 Found (x04 ex_intro0) as proof of Q
% 284.90/285.35 Found (x04 ex_intro0) as proof of Q
% 284.90/285.35 Found x010:x
% 284.90/285.35 Found x010 as proof of x
% 284.90/285.35 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 284.90/285.35 Found (iff_refl Q) as proof of ((iff Q) x)
% 284.90/285.35 Found (iff_refl Q) as proof of ((iff Q) x)
% 284.90/285.35 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 284.90/285.35 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 284.90/285.35 Found x030:x
% 284.90/285.35 Instantiate: x:=P:Prop
% 284.90/285.35 Found (fun (x04:(x->Q))=> x030) as proof of P
% 284.90/285.35 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 284.90/285.35 Found x050:P
% 284.90/285.35 Found (fun (x06:(x->Q))=> x050) as proof of P
% 284.90/285.35 Found (fun (x06:(x->Q))=> x050) as proof of ((x->Q)->P)
% 284.90/285.35 Found x030:x
% 284.90/285.35 Instantiate: x:=P:Prop
% 284.90/285.35 Found (fun (x04:(x->Q))=> x030) as proof of P
% 284.90/285.35 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 284.90/285.35 Found x010:=(x01 x000):((iff P) Q)
% 284.90/285.35 Found x010 as proof of ((iff P) Q)
% 284.90/285.35 Found x000:=(x00 x010):R
% 284.90/285.35 Found (x00 x010) as proof of R
% 284.90/285.35 Found (x00 x010) as proof of R
% 284.90/285.35 Found x000:=(x00 x010):R
% 284.90/285.35 Found (x00 x010) as proof of R
% 284.90/285.35 Found (x00 x010) as proof of R
% 284.90/285.35 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 284.90/285.35 Found (iff_refl Q) as proof of ((iff Q) x)
% 284.90/285.35 Found (iff_refl Q) as proof of ((iff Q) x)
% 284.90/285.35 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 284.90/285.35 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 284.90/285.35 Found x010:=(x01 x000):((iff P) Q)
% 284.90/285.35 Found x010 as proof of ((iff P) Q)
% 284.90/285.35 Found x030:=(x03 x040):x
% 284.90/285.35 Instantiate: x:=P:Prop
% 284.90/285.35 Found (x03 x040) as proof of P
% 284.90/285.35 Found (x03 x040) as proof of P
% 284.90/285.35 Found x040:Q
% 284.90/285.35 Found x040 as proof of Q
% 284.90/285.35 Found (x03 x040) as proof of P
% 284.90/285.35 Found (x03 x040) as proof of P
% 284.90/285.35 Found (x03 x040) as proof of P
% 284.90/285.35 Found x030:=(x03 x041):x
% 284.90/285.35 Instantiate: x:=P:Prop
% 284.90/285.35 Found (x03 x041) as proof of P
% 284.90/285.35 Found (x03 x041) as proof of P
% 284.90/285.35 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 284.90/285.35 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 284.90/285.35 Found ex_intro0 as proof of x
% 284.90/285.35 Found (x04 ex_intro0) as proof of Q
% 284.90/285.35 Found (x04 ex_intro0) as proof of Q
% 284.90/285.35 Found x010:=(x01 x000):((iff P) Q)
% 284.90/285.35 Found x010 as proof of ((iff P) Q)
% 284.90/285.35 Found x000:=(x00 x011):R
% 284.90/285.35 Found (x00 x011) as proof of R
% 284.90/285.35 Found (x00 x011) as proof of R
% 284.90/285.35 Found x000:=(x00 x011):R
% 284.90/285.35 Found (x00 x011) as proof of R
% 284.90/285.35 Found (x00 x011) as proof of R
% 284.90/285.35 Found x010:=(x01 x000):((iff P) Q)
% 284.90/285.35 Found x010 as proof of ((iff P) Q)
% 284.90/285.35 Found x030:=(x03 x020):P
% 284.90/285.35 Found (x03 x020) as proof of P
% 284.90/285.35 Found (x03 x020) as proof of P
% 284.90/285.35 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 284.90/285.35 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 286.34/286.75 Found eta_expansion as proof of x
% 286.34/286.75 Found x000:=(x00 x010):R
% 286.34/286.75 Found (x00 x010) as proof of R
% 286.34/286.75 Found (x00 x010) as proof of R
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x04:(x->Q)
% 286.34/286.75 Instantiate: x:=(Q->P):Prop
% 286.34/286.75 Found (fun (x1:(P->Q))=> x04) as proof of ((Q->P)->Q)
% 286.34/286.75 Found (fun (x1:(P->Q))=> x04) as proof of ((P->Q)->((Q->P)->Q))
% 286.34/286.75 Found (and_rect20 (fun (x1:(P->Q))=> x04)) as proof of Q
% 286.34/286.75 Found ((and_rect2 Q) (fun (x1:(P->Q))=> x04)) as proof of Q
% 286.34/286.75 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) Q) (fun (x1:(P->Q))=> x04)) as proof of Q
% 286.34/286.75 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) Q) (fun (x1:(P->Q))=> x04)) as proof of Q
% 286.34/286.75 Found x000:=(x00 x011):R
% 286.34/286.75 Found (x00 x011) as proof of R
% 286.34/286.75 Found (x00 x011) as proof of R
% 286.34/286.75 Found x030:=(x03 x040):x
% 286.34/286.75 Instantiate: x:=P:Prop
% 286.34/286.75 Found (x03 x040) as proof of P
% 286.34/286.75 Found (x03 x040) as proof of P
% 286.34/286.75 Found x030:=(x03 x040):x
% 286.34/286.75 Instantiate: x:=P:Prop
% 286.34/286.75 Found (x03 x040) as proof of P
% 286.34/286.75 Found (x03 x040) as proof of P
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x030:=(x03 x020):P
% 286.34/286.75 Found (x03 x020) as proof of P
% 286.34/286.75 Found (x03 x020) as proof of P
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found (x01 x000) as proof of ((iff P) Q)
% 286.34/286.75 Found (x01 x000) as proof of ((iff P) Q)
% 286.34/286.75 Found x02:((iff Q) x)
% 286.34/286.75 Instantiate: x:=P:Prop
% 286.34/286.75 Found x02 as proof of ((iff Q) P)
% 286.34/286.75 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 286.34/286.75 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 286.34/286.75 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 286.34/286.75 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 286.34/286.75 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 286.34/286.75 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 286.34/286.75 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 286.34/286.75 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 286.34/286.75 Found or_ind as proof of x
% 286.34/286.75 Found (x04 or_ind) as proof of Q
% 286.34/286.75 Found (x04 or_ind) as proof of Q
% 286.34/286.75 Found x000:=(x00 x011):R
% 286.34/286.75 Found (x00 x011) as proof of R
% 286.34/286.75 Found (x00 x011) as proof of R
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x031:x
% 286.34/286.75 Found x031 as proof of Q
% 286.34/286.75 Found x030:=(x03 x040):x
% 286.34/286.75 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 286.34/286.75 Found (x03 x040) as proof of ((iff P) Q)
% 286.34/286.75 Found (x03 x040) as proof of ((iff P) Q)
% 286.34/286.75 Found x000:=(x00 x010):R
% 286.34/286.75 Found (x00 x010) as proof of R
% 286.34/286.75 Found (x00 x010) as proof of R
% 286.34/286.75 Found x031:x
% 286.34/286.75 Found x031 as proof of x
% 286.34/286.75 Found x040:Q
% 286.34/286.75 Found x040 as proof of Q
% 286.34/286.75 Found x040:Q
% 286.34/286.75 Found x040 as proof of x
% 286.34/286.75 Found x031:x
% 286.34/286.75 Found x031 as proof of x
% 286.34/286.75 Found x031:x
% 286.34/286.75 Found x031 as proof of Q
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found (x01 x000) as proof of ((iff P) Q)
% 286.34/286.75 Found (x01 x000) as proof of ((iff P) Q)
% 286.34/286.75 Found x000:=(x00 x010):R
% 286.34/286.75 Found (x00 x010) as proof of R
% 286.34/286.75 Found (x00 x010) as proof of R
% 286.34/286.75 Found x000:=(x00 x011):R
% 286.34/286.75 Found (x00 x011) as proof of R
% 286.34/286.75 Found (x00 x011) as proof of R
% 286.34/286.75 Found x000:=(x00 x010):R
% 286.34/286.75 Found (x00 x010) as proof of R
% 286.34/286.75 Found (x00 x010) as proof of R
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found (x01 x000) as proof of ((iff P) Q)
% 286.34/286.75 Found (x01 x000) as proof of ((iff P) Q)
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x010:=(x01 x000):((iff P) Q)
% 286.34/286.75 Found x010 as proof of ((iff P) Q)
% 286.34/286.75 Found x010:=(x01 x001):((iff P) Q)
% 286.34/286.75 Found (x01 x001) as proof of ((iff P) Q)
% 286.34/286.75 Found (x01 x001) as proof of ((iff P) Q)
% 286.34/286.75 Found x04:(x->Q)
% 286.34/286.75 Instantiate: x:=P:Prop
% 286.34/286.75 Found x04 as proof of (P->Q)
% 286.34/286.75 Found x03:(Q->x)
% 286.34/286.75 Instantiate: x:=P:Prop
% 287.52/287.93 Found x03 as proof of (Q->P)
% 287.52/287.93 Found ((conj10 x04) x03) as proof of ((and (P->Q)) (Q->P))
% 287.52/287.93 Found (((conj1 (Q->P)) x04) x03) as proof of ((and (P->Q)) (Q->P))
% 287.52/287.93 Found ((((conj (P->Q)) (Q->P)) x04) x03) as proof of ((and (P->Q)) (Q->P))
% 287.52/287.93 Found ((((conj (P->Q)) (Q->P)) x04) x03) as proof of ((and (P->Q)) (Q->P))
% 287.52/287.93 Found ((((conj (P->Q)) (Q->P)) x04) x03) as proof of ((iff P) Q)
% 287.52/287.93 Found x010:=(x01 x001):((iff P) Q)
% 287.52/287.93 Found (x01 x001) as proof of ((iff P) Q)
% 287.52/287.93 Found (x01 x001) as proof of ((iff P) Q)
% 287.52/287.93 Found x20:=(x2 x10):((iff P) Q)
% 287.52/287.93 Found (x2 x10) as proof of ((iff P) Q)
% 287.52/287.93 Found (x2 x10) as proof of ((iff P) Q)
% 287.52/287.93 Found x040:Q
% 287.52/287.93 Found x040 as proof of Q
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found x010:x
% 287.52/287.93 Instantiate: x:=P:Prop
% 287.52/287.93 Found (fun (x02:(x->Q))=> x010) as proof of P
% 287.52/287.93 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 287.52/287.93 Found x010:=(x01 x000):((iff P) Q)
% 287.52/287.93 Found x010 as proof of ((iff P) Q)
% 287.52/287.93 Found x010:=(x01 x000):((iff P) Q)
% 287.52/287.93 Found (x01 x000) as proof of ((iff P) Q)
% 287.52/287.93 Found (x01 x000) as proof of ((iff P) Q)
% 287.52/287.93 Found x011:x
% 287.52/287.93 Instantiate: x:=P:Prop
% 287.52/287.93 Found (fun (x02:(x->Q))=> x011) as proof of P
% 287.52/287.93 Found (fun (x02:(x->Q))=> x011) as proof of ((x->Q)->P)
% 287.52/287.93 Found x010:=(x01 x000):((iff P) Q)
% 287.52/287.93 Found x010 as proof of ((iff P) Q)
% 287.52/287.93 Found x040:Q
% 287.52/287.93 Found x040 as proof of Q
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found x010:=(x01 x000):((iff P) Q)
% 287.52/287.93 Found x010 as proof of ((iff P) Q)
% 287.52/287.93 Found x000:=(x00 x010):R
% 287.52/287.93 Found (x00 x010) as proof of R
% 287.52/287.93 Found (x00 x010) as proof of R
% 287.52/287.93 Found x040:Q
% 287.52/287.93 Found x040 as proof of Q
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found x030:=(x03 x040):x
% 287.52/287.93 Instantiate: x:=P:Prop
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found x010:=(x01 x001):((iff P) Q)
% 287.52/287.93 Found x010 as proof of ((iff P) Q)
% 287.52/287.93 Found x010:=(x01 x000):((iff P) Q)
% 287.52/287.93 Found x010 as proof of ((iff P) Q)
% 287.52/287.93 Found x040:Q
% 287.52/287.93 Found x040 as proof of Q
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found x030:P
% 287.52/287.93 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 287.52/287.93 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 287.52/287.93 Found x010:=(x01 x001):((iff P) Q)
% 287.52/287.93 Found (x01 x001) as proof of ((iff P) Q)
% 287.52/287.93 Found (x01 x001) as proof of ((iff P) Q)
% 287.52/287.93 Found x010:=(x01 x000):((iff P) Q)
% 287.52/287.93 Found x010 as proof of ((iff P) Q)
% 287.52/287.93 Found x010:=(x01 x000):((iff P) Q)
% 287.52/287.93 Found x010 as proof of ((iff P) Q)
% 287.52/287.93 Found x011:x
% 287.52/287.93 Instantiate: x:=P:Prop
% 287.52/287.93 Found (fun (x02:(x->Q))=> x011) as proof of P
% 287.52/287.93 Found (fun (x02:(x->Q))=> x011) as proof of ((x->Q)->P)
% 287.52/287.93 Found x010:x
% 287.52/287.93 Instantiate: x:=P:Prop
% 287.52/287.93 Found (fun (x02:(x->Q))=> x010) as proof of P
% 287.52/287.93 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 287.52/287.93 Found x011:x
% 287.52/287.93 Instantiate: x:=P:Prop
% 287.52/287.93 Found (fun (x02:(x->Q))=> x011) as proof of P
% 287.52/287.93 Found (fun (x02:(x->Q))=> x011) as proof of ((x->Q)->P)
% 287.52/287.93 Found x010:x
% 287.52/287.93 Instantiate: x:=P:Prop
% 287.52/287.93 Found (fun (x02:(x->Q))=> x010) as proof of P
% 287.52/287.93 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 287.52/287.93 Found x010:=(x01 x001):((iff P) Q)
% 287.52/287.93 Found (x01 x001) as proof of ((iff P) Q)
% 287.52/287.93 Found (x01 x001) as proof of ((iff P) Q)
% 287.52/287.93 Found x010:=(x01 x000):((iff P) Q)
% 287.52/287.93 Found (x01 x000) as proof of ((iff P) Q)
% 287.52/287.93 Found (x01 x000) as proof of ((iff P) Q)
% 287.52/287.93 Found x000:=(x00 x010):R
% 287.52/287.93 Found (x00 x010) as proof of R
% 287.52/287.93 Found (x00 x010) as proof of R
% 287.52/287.93 Found x000:=(x00 x010):R
% 287.52/287.93 Found (x00 x010) as proof of R
% 287.52/287.93 Found (x00 x010) as proof of R
% 287.52/287.93 Found x040:Q
% 287.52/287.93 Found x040 as proof of Q
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found (x03 x040) as proof of P
% 287.52/287.93 Found x012:x
% 287.52/287.93 Instantiate: x:=P:Prop
% 287.52/287.93 Found (fun (x02:(x->Q))=> x012) as proof of P
% 287.52/287.93 Found (fun (x02:(x->Q))=> x012) as proof of ((x->Q)->P)
% 287.52/287.93 Found x010:=(x01 x000):((iff P) Q)
% 287.52/287.93 Found x010 as proof of ((iff P) Q)
% 287.52/287.93 Found x010:=(x01 x001):((iff P) Q)
% 287.52/287.93 Found x010 as proof of ((iff P) Q)
% 287.52/287.93 Found x010:=(x01 x001):((iff P) Q)
% 287.52/287.93 Found x010 as proof of ((iff P) Q)
% 287.52/287.93 Found x030:P
% 287.52/287.93 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 287.52/287.93 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 287.52/287.93 Found x010:=(x01 x000):((iff P) Q)
% 287.52/287.93 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found x000:=(x00 x011):R
% 288.86/289.26 Found (x00 x011) as proof of R
% 288.86/289.26 Found (x00 x011) as proof of R
% 288.86/289.26 Found x011:x
% 288.86/289.26 Instantiate: x:=P:Prop
% 288.86/289.26 Found (fun (x02:(x->Q))=> x011) as proof of P
% 288.86/289.26 Found (fun (x02:(x->Q))=> x011) as proof of ((x->Q)->P)
% 288.86/289.26 Found x011:x
% 288.86/289.26 Instantiate: x:=P:Prop
% 288.86/289.26 Found (fun (x02:(x->Q))=> x011) as proof of P
% 288.86/289.26 Found (fun (x02:(x->Q))=> x011) as proof of ((x->Q)->P)
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found x010 as proof of ((iff P) Q)
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found x010:=(x01 x001):((iff P) Q)
% 288.86/289.26 Found (x01 x001) as proof of ((iff P) Q)
% 288.86/289.26 Found (x01 x001) as proof of ((iff P) Q)
% 288.86/289.26 Found x010:x
% 288.86/289.26 Instantiate: x:=P:Prop
% 288.86/289.26 Found (fun (x02:(x->Q))=> x010) as proof of P
% 288.86/289.26 Found (fun (x02:(x->Q))=> x010) as proof of ((x->Q)->P)
% 288.86/289.26 Found x011:x
% 288.86/289.26 Instantiate: x:=P:Prop
% 288.86/289.26 Found (fun (x02:(x->Q))=> x011) as proof of P
% 288.86/289.26 Found (fun (x02:(x->Q))=> x011) as proof of ((x->Q)->P)
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found x010 as proof of ((iff P) Q)
% 288.86/289.26 Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 288.86/289.26 Instantiate: x:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% 288.86/289.26 Found or_ind as proof of x
% 288.86/289.26 Found (x04 or_ind) as proof of Q
% 288.86/289.26 Found (x04 or_ind) as proof of Q
% 288.86/289.26 Found x000:=(x00 x011):R
% 288.86/289.26 Found (x00 x011) as proof of R
% 288.86/289.26 Found (x00 x011) as proof of R
% 288.86/289.26 Found x010:=(x01 x020):x
% 288.86/289.26 Found (x01 x020) as proof of P
% 288.86/289.26 Found (x01 x020) as proof of P
% 288.86/289.26 Found (x01 x020) as proof of P
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found x010 as proof of ((iff P) Q)
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found x010 as proof of ((iff P) Q)
% 288.86/289.26 Found x000:=(x00 x010):R
% 288.86/289.26 Found (x00 x010) as proof of R
% 288.86/289.26 Found (x00 x010) as proof of R
% 288.86/289.26 Found x030:P
% 288.86/289.26 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 288.86/289.26 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found x010 as proof of ((iff P) Q)
% 288.86/289.26 Found x010:=(x01 x020):x
% 288.86/289.26 Found (x01 x020) as proof of P
% 288.86/289.26 Found (x01 x020) as proof of P
% 288.86/289.26 Found (x01 x020) as proof of P
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found x010 as proof of ((iff P) Q)
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found x010 as proof of ((iff P) Q)
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found x010 as proof of ((iff P) Q)
% 288.86/289.26 Found x030:=(x03 x040):x
% 288.86/289.26 Found (x03 x040) as proof of P
% 288.86/289.26 Found (x03 x040) as proof of P
% 288.86/289.26 Found (x03 x040) as proof of P
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found x010 as proof of ((iff P) Q)
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found x010 as proof of ((iff P) Q)
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found x010 as proof of ((iff P) Q)
% 288.86/289.26 Found x010:=(x01 x020):x
% 288.86/289.26 Found (x01 x020) as proof of P
% 288.86/289.26 Found (x01 x020) as proof of P
% 288.86/289.26 Found (x01 x020) as proof of P
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found (x01 x000) as proof of ((iff P) Q)
% 288.86/289.26 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 288.86/289.26 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 288.86/289.26 Found ex_intro0 as proof of x
% 288.86/289.26 Found (x04 ex_intro0) as proof of Q
% 288.86/289.26 Found (x04 ex_intro0) as proof of Q
% 288.86/289.26 Found x010:=(x01 x000):((iff P) Q)
% 288.86/289.26 Found x010 as proof of ((iff P) Q)
% 288.86/289.26 Found x030:x
% 288.86/289.26 Instantiate: x:=P:Prop
% 288.86/289.26 Found (fun (x04:(x->Q))=> x030) as proof of P
% 288.86/289.26 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 288.86/289.26 Found or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 288.86/289.26 Instantiate: x:=(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A))):Prop
% 288.86/289.26 Found or_comm_i as proof of x
% 289.67/290.09 Found (x04 or_comm_i) as proof of Q
% 289.67/290.09 Found (x04 or_comm_i) as proof of Q
% 289.67/290.09 Found (x03 (x04 or_comm_i)) as proof of P
% 289.67/290.09 Found (fun (x04:(x->Q))=> (x03 (x04 or_comm_i))) as proof of P
% 289.67/290.09 Found (fun (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 or_comm_i))) as proof of ((x->Q)->P)
% 289.67/290.09 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 or_comm_i))) as proof of ((Q->P)->((x->Q)->P))
% 289.67/290.09 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 or_comm_i))) as proof of ((P->Q)->((Q->P)->((x->Q)->P)))
% 289.67/290.09 Found (and_rect20 (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 or_comm_i)))) as proof of ((x->Q)->P)
% 289.67/290.09 Found ((and_rect2 ((x->Q)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 or_comm_i)))) as proof of ((x->Q)->P)
% 289.67/290.09 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) ((x->Q)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 or_comm_i)))) as proof of ((x->Q)->P)
% 289.67/290.09 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((x->Q)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 or_comm_i)))) as proof of ((x->Q)->P)
% 289.67/290.09 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) ((x->Q)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:(x->Q))=> (x03 (x04 or_comm_i)))) as proof of ((x->Q)->P)
% 289.67/290.09 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 289.67/290.09 Found (iff_refl Q) as proof of ((iff Q) x)
% 289.67/290.09 Found (iff_refl Q) as proof of ((iff Q) x)
% 289.67/290.09 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 289.67/290.09 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 289.67/290.09 Found x001:R
% 289.67/290.09 Instantiate: x:=R:Prop
% 289.67/290.09 Found x001 as proof of x
% 289.67/290.09 Found x10:=(x1 x20):R
% 289.67/290.09 Found (x1 x20) as proof of R
% 289.67/290.09 Found (x1 x20) as proof of R
% 289.67/290.09 Found x000:=(x00 x011):R
% 289.67/290.09 Found (x00 x011) as proof of R
% 289.67/290.09 Found (x00 x011) as proof of R
% 289.67/290.09 Found x010:=(x01 x020):x
% 289.67/290.09 Found (x01 x020) as proof of P
% 289.67/290.09 Found (x01 x020) as proof of P
% 289.67/290.09 Found (x01 x020) as proof of P
% 289.67/290.09 Found x050:P
% 289.67/290.09 Found (fun (x06:(x->Q))=> x050) as proof of P
% 289.67/290.09 Found (fun (x06:(x->Q))=> x050) as proof of ((x->Q)->P)
% 289.67/290.09 Found x030:x
% 289.67/290.09 Instantiate: x:=P:Prop
% 289.67/290.09 Found x030 as proof of P
% 289.67/290.09 Found x000:=(x00 x011):R
% 289.67/290.09 Found (x00 x011) as proof of R
% 289.67/290.09 Found (x00 x011) as proof of R
% 289.67/290.09 Found x010:=(x01 x001):((iff P) Q)
% 289.67/290.09 Found (x01 x001) as proof of ((iff P) Q)
% 289.67/290.09 Found (x01 x001) as proof of ((iff P) Q)
% 289.67/290.09 Found x001:R
% 289.67/290.09 Instantiate: x:=R:Prop
% 289.67/290.09 Found x001 as proof of x
% 289.67/290.09 Found x030:x
% 289.67/290.09 Instantiate: x:=P:Prop
% 289.67/290.09 Found x030 as proof of P
% 289.67/290.09 Found x030:x
% 289.67/290.09 Instantiate: x:=P:Prop
% 289.67/290.09 Found x030 as proof of P
% 289.67/290.09 Found x001:R
% 289.67/290.09 Instantiate: x:=R:Prop
% 289.67/290.09 Found x001 as proof of x
% 289.67/290.09 Found x030:x
% 289.67/290.09 Instantiate: x:=P:Prop
% 289.67/290.09 Found x030 as proof of P
% 289.67/290.09 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 289.67/290.09 Found (iff_refl Q) as proof of ((iff Q) x)
% 289.67/290.09 Found (iff_refl Q) as proof of ((iff Q) x)
% 289.67/290.09 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 289.67/290.09 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 289.67/290.09 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 289.67/290.09 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 289.67/290.09 Found eta_expansion as proof of x
% 289.67/290.09 Found x012:x
% 289.67/290.09 Found x012 as proof of Q
% 289.67/290.09 Found x010:=(x01 x000):((iff P) Q)
% 289.67/290.09 Found x010 as proof of ((iff P) Q)
% 289.67/290.09 Found x010:=(x01 x000):((iff P) Q)
% 289.67/290.09 Found x010 as proof of ((iff P) Q)
% 289.67/290.09 Found x030:=(x03 x040):x
% 289.67/290.09 Instantiate: x:=P:Prop
% 289.67/290.09 Found (x03 x040) as proof of P
% 289.67/290.09 Found (x03 x040) as proof of P
% 289.67/290.09 Found x000:=(x00 x011):R
% 289.67/290.09 Found (x00 x011) as proof of R
% 289.67/290.09 Found (x00 x011) as proof of R
% 289.67/290.09 Found x000:=(x00 x011):R
% 289.67/290.09 Found (x00 x011) as proof of R
% 289.67/290.09 Found (x00 x011) as proof of R
% 289.67/290.09 Found x010:=(x01 x000):((iff P) Q)
% 289.67/290.09 Found (x01 x000) as proof of ((iff P) Q)
% 289.67/290.09 Found (x01 x000) as proof of ((iff P) Q)
% 289.67/290.09 Found x2:(R->((iff P) Q))
% 289.67/290.09 Instantiate: x:=(R->((iff P) Q)):Prop
% 289.67/290.09 Found x2 as proof of x
% 289.67/290.09 Found x2:(R->((iff P) Q))
% 289.67/290.09 Instantiate: x:=(R->((iff P) Q)):Prop
% 289.67/290.09 Found x2 as proof of x
% 289.67/290.09 Found x010:=(x01 x000):((iff P) Q)
% 289.67/290.09 Found x010 as proof of ((iff P) Q)
% 289.67/290.09 Found x010:=(x01 x000):((iff P) Q)
% 289.67/290.09 Found x010 as proof of ((iff P) Q)
% 289.67/290.09 Found x010:=(x01 x000):((iff P) Q)
% 290.74/291.14 Found x010 as proof of ((iff P) Q)
% 290.74/291.14 Found x010:=(x01 x000):((iff P) Q)
% 290.74/291.14 Found x010 as proof of ((iff P) Q)
% 290.74/291.14 Found x030:=(x03 x040):x
% 290.74/291.14 Instantiate: x:=((P->Q)->((Q->P)->P)):Prop
% 290.74/291.14 Found (x03 x040) as proof of ((P->Q)->((Q->P)->P))
% 290.74/291.14 Found (x03 x040) as proof of ((P->Q)->((Q->P)->P))
% 290.74/291.14 Found (and_rect20 (x03 x040)) as proof of P
% 290.74/291.14 Found ((and_rect2 P) (x03 x040)) as proof of P
% 290.74/291.14 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (x03 x040)) as proof of P
% 290.74/291.14 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (x03 x040)) as proof of P
% 290.74/291.14 Found x030:x
% 290.74/291.14 Found x030 as proof of Q
% 290.74/291.14 Found x030:x
% 290.74/291.14 Instantiate: x:=P:Prop
% 290.74/291.14 Found (fun (x04:(x->Q))=> x030) as proof of P
% 290.74/291.14 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 290.74/291.14 Found x000:=(x00 x011):R
% 290.74/291.14 Found (x00 x011) as proof of R
% 290.74/291.14 Found (x00 x011) as proof of R
% 290.74/291.14 Found x02:((iff Q) x)
% 290.74/291.14 Instantiate: x:=P:Prop
% 290.74/291.14 Found x02 as proof of ((iff Q) P)
% 290.74/291.14 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 290.74/291.14 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 290.74/291.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 290.74/291.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 290.74/291.14 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 290.74/291.14 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 290.74/291.14 Found x20:=(x2 x10):((iff P) Q)
% 290.74/291.14 Found x20 as proof of ((iff P) Q)
% 290.74/291.14 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 290.74/291.14 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 290.74/291.14 Found ex_intro0 as proof of x
% 290.74/291.14 Found (x04 ex_intro0) as proof of Q
% 290.74/291.14 Found (x04 ex_intro0) as proof of Q
% 290.74/291.14 Found x20:=(x2 x10):((iff P) Q)
% 290.74/291.14 Found x20 as proof of ((iff P) Q)
% 290.74/291.14 Found x000:=(x00 x011):R
% 290.74/291.14 Found (x00 x011) as proof of R
% 290.74/291.14 Found (x00 x011) as proof of R
% 290.74/291.14 Found x000:=(x00 x011):R
% 290.74/291.14 Found (x00 x011) as proof of R
% 290.74/291.14 Found (x00 x011) as proof of R
% 290.74/291.14 Found x030:=(x03 x040):x
% 290.74/291.14 Instantiate: x:=P:Prop
% 290.74/291.14 Found (x03 x040) as proof of P
% 290.74/291.14 Found (x03 x040) as proof of P
% 290.74/291.14 Found x030:=(x03 x041):x
% 290.74/291.14 Instantiate: x:=P:Prop
% 290.74/291.14 Found (x03 x041) as proof of P
% 290.74/291.14 Found (x03 x041) as proof of P
% 290.74/291.14 Found x02:((iff Q) x)
% 290.74/291.14 Instantiate: x:=P:Prop
% 290.74/291.14 Found x02 as proof of ((iff Q) P)
% 290.74/291.14 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 290.74/291.14 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 290.74/291.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 290.74/291.14 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 290.74/291.14 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 290.74/291.14 Found (x00 (((iff_sym Q) P) x02)) as proof of R
% 290.74/291.14 Found x020:Q
% 290.74/291.14 Found x020 as proof of Q
% 290.74/291.14 Found (x01 x020) as proof of P
% 290.74/291.14 Found (x01 x020) as proof of P
% 290.74/291.14 Found (x01 x020) as proof of P
% 290.74/291.14 Found iff_sym000:=(iff_sym00 x00):((iff P) Q)
% 290.74/291.14 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 290.74/291.14 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 290.74/291.14 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 290.74/291.14 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 290.74/291.14 Found x031:x
% 290.74/291.14 Found x031 as proof of x
% 290.74/291.14 Found x040:Q
% 290.74/291.14 Found x040 as proof of x
% 290.74/291.14 Found or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 290.74/291.14 Instantiate: x:=(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A))):Prop
% 290.74/291.14 Found or_comm_i as proof of x
% 290.74/291.14 Found (x06 or_comm_i) as proof of Q
% 290.74/291.14 Found (x06 or_comm_i) as proof of Q
% 290.74/291.14 Found (x04 (x06 or_comm_i)) as proof of P
% 290.74/291.14 Found (fun (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of P
% 290.74/291.14 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((x->Q)->P)
% 290.74/291.14 Found (fun (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((Q->x)->((x->Q)->P))
% 290.74/291.14 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 290.74/291.14 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 290.74/291.14 Found (and_rect20 (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 290.74/291.14 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 291.11/291.57 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 291.11/291.57 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 291.11/291.57 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 291.11/291.57 Found (and_rect10 (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))))) as proof of P
% 291.11/291.57 Found ((and_rect1 P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))))) as proof of P
% 291.11/291.57 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))))) as proof of P
% 291.11/291.57 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))))) as proof of P
% 291.11/291.57 Found x010:=(x01 x000):((iff P) Q)
% 291.11/291.57 Found x010 as proof of ((iff P) Q)
% 291.11/291.57 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 291.11/291.57 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 291.11/291.57 Found eta_expansion as proof of x
% 291.11/291.57 Found x030:x
% 291.11/291.57 Instantiate: x:=P:Prop
% 291.11/291.57 Found x030 as proof of P
% 291.11/291.57 Found x010:=(x01 x001):((iff P) Q)
% 291.11/291.57 Found x010 as proof of ((iff P) Q)
% 291.11/291.57 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 291.11/291.57 Found (iff_refl Q) as proof of ((iff Q) x)
% 291.11/291.57 Found (iff_refl Q) as proof of ((iff Q) x)
% 291.11/291.57 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 291.11/291.57 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 291.11/291.57 Found x031:x
% 291.11/291.57 Found x031 as proof of x
% 291.11/291.57 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 291.11/291.57 Found (iff_refl Q) as proof of ((iff Q) x)
% 291.11/291.57 Found (iff_refl Q) as proof of ((iff Q) x)
% 291.11/291.57 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 291.11/291.57 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 291.11/291.57 Found x031:x
% 291.11/291.57 Found x031 as proof of Q
% 291.11/291.57 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 291.11/291.57 Found (iff_refl Q) as proof of ((iff Q) x)
% 291.11/291.57 Found (iff_refl Q) as proof of ((iff Q) x)
% 291.11/291.57 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 291.11/291.57 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 291.11/291.57 Found x010:=(x01 x000):((iff P) Q)
% 291.11/291.57 Found x010 as proof of ((iff P) Q)
% 291.11/291.57 Found x20:=(x2 x11):((iff P) Q)
% 291.11/291.57 Found (x2 x11) as proof of ((iff P) Q)
% 291.11/291.57 Found (x2 x11) as proof of ((iff P) Q)
% 291.11/291.57 Found x000:=(x00 x011):R
% 291.11/291.57 Found (x00 x011) as proof of R
% 291.11/291.57 Found (x00 x011) as proof of R
% 291.11/291.57 Found x030:=(x03 x040):x
% 291.11/291.57 Instantiate: x:=P:Prop
% 291.11/291.57 Found (x03 x040) as proof of P
% 291.11/291.57 Found (x03 x040) as proof of P
% 291.11/291.57 Found x010:=(x01 x000):((iff P) Q)
% 291.11/291.57 Found (x01 x000) as proof of ((iff P) Q)
% 291.11/291.57 Found (x01 x000) as proof of ((iff P) Q)
% 291.11/291.57 Found x000:=(x00 x011):R
% 291.11/291.57 Found (x00 x011) as proof of R
% 291.11/291.57 Found (x00 x011) as proof of R
% 291.11/291.57 Found x030:=(x03 x040):x
% 291.11/291.57 Instantiate: x:=P:Prop
% 291.11/291.57 Found (x03 x040) as proof of P
% 291.11/291.57 Found (x03 x040) as proof of P
% 291.11/291.57 Found x010:=(x01 x000):((iff P) Q)
% 291.11/291.57 Found x010 as proof of ((iff P) Q)
% 291.11/291.57 Found x030:x
% 291.11/291.57 Found x030 as proof of Q
% 291.11/291.57 Found x000:=(x00 x011):R
% 291.11/291.57 Found (x00 x011) as proof of R
% 291.11/291.57 Found (x00 x011) as proof of R
% 291.11/291.57 Found x010:=(x01 x000):((iff P) Q)
% 291.79/292.26 Found (x01 x000) as proof of ((iff P) Q)
% 291.79/292.26 Found (x01 x000) as proof of ((iff P) Q)
% 291.79/292.26 Found x010:=(x01 x000):((iff P) Q)
% 291.79/292.26 Found x010 as proof of ((iff P) Q)
% 291.79/292.26 Found x010:=(x01 x000):((iff P) Q)
% 291.79/292.26 Found x010 as proof of ((iff P) Q)
% 291.79/292.26 Found x030:x
% 291.79/292.26 Found x030 as proof of Q
% 291.79/292.26 Found x010:=(x01 x000):((iff P) Q)
% 291.79/292.26 Found x010 as proof of ((iff P) Q)
% 291.79/292.26 Found x040:Q
% 291.79/292.26 Found x040 as proof of Q
% 291.79/292.26 Found x031:x
% 291.79/292.26 Found x031 as proof of Q
% 291.79/292.26 Found x1:(((iff P) Q)->R)
% 291.79/292.26 Instantiate: x:=(((iff P) Q)->R):Prop
% 291.79/292.26 Found x1 as proof of x
% 291.79/292.26 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 291.79/292.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 291.79/292.26 Found (iff_refl Q) as proof of ((iff Q) x)
% 291.79/292.26 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 291.79/292.26 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 291.79/292.26 Found x010:x
% 291.79/292.26 Instantiate: x:=P:Prop
% 291.79/292.26 Found x010 as proof of P
% 291.79/292.26 Found x010:=(x01 x001):((iff P) Q)
% 291.79/292.26 Found (x01 x001) as proof of ((iff P) Q)
% 291.79/292.26 Found (x01 x001) as proof of ((iff P) Q)
% 291.79/292.26 Found x010:=(x01 x000):((iff P) Q)
% 291.79/292.26 Found (x01 x000) as proof of ((iff P) Q)
% 291.79/292.26 Found (x01 x000) as proof of ((iff P) Q)
% 291.79/292.26 Found x010:=(x01 x000):((iff P) Q)
% 291.79/292.26 Found (x01 x000) as proof of ((iff P) Q)
% 291.79/292.26 Found (x01 x000) as proof of ((iff P) Q)
% 291.79/292.26 Found x010:=(x01 x000):((iff P) Q)
% 291.79/292.26 Found x010 as proof of ((iff P) Q)
% 291.79/292.26 Found x000:=(x00 x011):R
% 291.79/292.26 Found (x00 x011) as proof of R
% 291.79/292.26 Found (x00 x011) as proof of R
% 291.79/292.26 Found x000:=(x00 x010):R
% 291.79/292.26 Found (x00 x010) as proof of R
% 291.79/292.26 Found (x00 x010) as proof of R
% 291.79/292.26 Found x010:=(x01 x001):((iff P) Q)
% 291.79/292.26 Found (x01 x001) as proof of ((iff P) Q)
% 291.79/292.26 Found (x01 x001) as proof of ((iff P) Q)
% 291.79/292.26 Found x010:=(x01 x000):((iff P) Q)
% 291.79/292.26 Found (x01 x000) as proof of ((iff P) Q)
% 291.79/292.26 Found (x01 x000) as proof of ((iff P) Q)
% 291.79/292.26 Found x030:x
% 291.79/292.26 Found x030 as proof of Q
% 291.79/292.26 Found x000:R
% 291.79/292.26 Instantiate: x:=R:Prop
% 291.79/292.26 Found x000 as proof of x
% 291.79/292.26 Found (x06 x000) as proof of Q
% 291.79/292.26 Found (x06 x000) as proof of Q
% 291.79/292.26 Found (x03 (x06 x000)) as proof of P
% 291.79/292.26 Found (fun (x06:(x->Q))=> (x03 (x06 x000))) as proof of P
% 291.79/292.26 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))) as proof of ((x->Q)->P)
% 291.79/292.26 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))) as proof of ((Q->x)->((x->Q)->P))
% 291.79/292.26 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))) as proof of P
% 291.79/292.26 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))) as proof of P
% 291.79/292.26 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))) as proof of P
% 291.79/292.26 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))))) as proof of P
% 291.79/292.26 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))))) as proof of (((iff Q) x)->P)
% 291.79/292.26 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))))) as proof of ((Q->P)->(((iff Q) x)->P))
% 291.79/292.26 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))))) as proof of ((P->Q)->((Q->P)->(((iff Q) x)->P)))
% 291.79/292.26 Found (and_rect10 (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 291.79/292.26 Found ((and_rect1 (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 291.79/292.26 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 292.98/293.41 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 292.98/293.41 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 292.98/293.41 Found x010:=(x01 x001):((iff P) Q)
% 292.98/293.41 Found (x01 x001) as proof of ((iff P) Q)
% 292.98/293.41 Found (x01 x001) as proof of ((iff P) Q)
% 292.98/293.41 Found x010:=(x01 x001):((iff P) Q)
% 292.98/293.41 Found (x01 x001) as proof of ((iff P) Q)
% 292.98/293.41 Found (x01 x001) as proof of ((iff P) Q)
% 292.98/293.41 Found x04:(x->Q)
% 292.98/293.41 Instantiate: x:=P:Prop
% 292.98/293.41 Found x04 as proof of (P->Q)
% 292.98/293.41 Found x03:(Q->x)
% 292.98/293.41 Instantiate: x:=P:Prop
% 292.98/293.41 Found x03 as proof of (Q->P)
% 292.98/293.41 Found ((conj10 x04) x03) as proof of ((and (P->Q)) (Q->P))
% 292.98/293.41 Found (((conj1 (Q->P)) x04) x03) as proof of ((and (P->Q)) (Q->P))
% 292.98/293.41 Found ((((conj (P->Q)) (Q->P)) x04) x03) as proof of ((and (P->Q)) (Q->P))
% 292.98/293.41 Found ((((conj (P->Q)) (Q->P)) x04) x03) as proof of ((and (P->Q)) (Q->P))
% 292.98/293.41 Found ((((conj (P->Q)) (Q->P)) x04) x03) as proof of ((iff P) Q)
% 292.98/293.41 Found x040:Q
% 292.98/293.41 Found x040 as proof of Q
% 292.98/293.41 Found (x03 x040) as proof of P
% 292.98/293.41 Found (x03 x040) as proof of P
% 292.98/293.41 Found (x03 x040) as proof of P
% 292.98/293.41 Found x010:=(x01 x000):((iff P) Q)
% 292.98/293.41 Found x010 as proof of ((iff P) Q)
% 292.98/293.41 Found x010:=(x01 x000):((iff P) Q)
% 292.98/293.41 Found x010 as proof of ((iff P) Q)
% 292.98/293.41 Found x000:=(x00 x010):R
% 292.98/293.41 Found (x00 x010) as proof of R
% 292.98/293.41 Found (x00 x010) as proof of R
% 292.98/293.41 Found x000:=(x00 x010):R
% 292.98/293.41 Found (x00 x010) as proof of R
% 292.98/293.41 Found (x00 x010) as proof of R
% 292.98/293.41 Found x000:=(x00 x011):R
% 292.98/293.41 Found (x00 x011) as proof of R
% 292.98/293.41 Found (x00 x011) as proof of R
% 292.98/293.41 Found x010:=(x01 x001):((iff P) Q)
% 292.98/293.41 Found (x01 x001) as proof of ((iff P) Q)
% 292.98/293.41 Found (x01 x001) as proof of ((iff P) Q)
% 292.98/293.41 Found x030:x
% 292.98/293.41 Found x030 as proof of Q
% 292.98/293.41 Found x000:=(x00 x011):R
% 292.98/293.41 Found (x00 x011) as proof of R
% 292.98/293.41 Found (x00 x011) as proof of R
% 292.98/293.41 Found x010:=(x01 x000):((iff P) Q)
% 292.98/293.41 Found x010 as proof of ((iff P) Q)
% 292.98/293.41 Found x030:x
% 292.98/293.41 Found x030 as proof of Q
% 292.98/293.41 Found x010:=(x01 x000):((iff P) Q)
% 292.98/293.41 Found (x01 x000) as proof of ((iff P) Q)
% 292.98/293.41 Found (x01 x000) as proof of ((iff P) Q)
% 292.98/293.41 Found x030:x
% 292.98/293.41 Found x030 as proof of Q
% 292.98/293.41 Found x010:=(x01 x000):((iff P) Q)
% 292.98/293.41 Found x010 as proof of ((iff P) Q)
% 292.98/293.41 Found x010:=(x01 x000):((iff P) Q)
% 292.98/293.41 Found x010 as proof of ((iff P) Q)
% 292.98/293.41 Found x010:=(x01 x000):((iff P) Q)
% 292.98/293.41 Found (x01 x000) as proof of ((iff P) Q)
% 292.98/293.41 Found (x01 x000) as proof of ((iff P) Q)
% 292.98/293.41 Found x040:Q
% 292.98/293.41 Found x040 as proof of Q
% 292.98/293.41 Found (x03 x040) as proof of P
% 292.98/293.41 Found (x03 x040) as proof of P
% 292.98/293.41 Found (x03 x040) as proof of P
% 292.98/293.41 Found x040:Q
% 292.98/293.41 Found x040 as proof of Q
% 292.98/293.41 Found (x03 x040) as proof of P
% 292.98/293.41 Found (x03 x040) as proof of P
% 292.98/293.41 Found (x03 x040) as proof of P
% 292.98/293.41 Found x010:=(x01 x001):((iff P) Q)
% 292.98/293.41 Found x010 as proof of ((iff P) Q)
% 292.98/293.41 Found x011:x
% 292.98/293.41 Found x011 as proof of Q
% 292.98/293.41 Found x020:Q
% 292.98/293.41 Found x020 as proof of Q
% 292.98/293.41 Found x021:Q
% 292.98/293.41 Found x021 as proof of Q
% 292.98/293.41 Found x010:x
% 292.98/293.41 Found x010 as proof of Q
% 292.98/293.41 Found x010:x
% 292.98/293.41 Found x010 as proof of x
% 292.98/293.41 Found x020:Q
% 292.98/293.41 Found x020 as proof of x
% 292.98/293.41 Found x021:Q
% 292.98/293.41 Found x021 as proof of x
% 292.98/293.41 Found x010:=(x01 x003):((iff P) Q)
% 292.98/293.41 Found x010 as proof of ((iff P) Q)
% 292.98/293.41 Found x040:Q
% 292.98/293.41 Found x040 as proof of Q
% 292.98/293.41 Found (x03 x040) as proof of P
% 292.98/293.41 Found (x03 x040) as proof of P
% 292.98/293.41 Found (x03 x040) as proof of P
% 292.98/293.41 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 292.98/293.41 Found (iff_refl Q) as proof of ((iff Q) x)
% 292.98/293.41 Found (iff_refl Q) as proof of ((iff Q) x)
% 292.98/293.41 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 292.98/293.41 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 292.98/293.41 Found x040:P
% 292.98/293.41 Found (fun (x06:(x->Q))=> x040) as proof of P
% 292.98/293.41 Found (fun (x05:(Q->x)) (x06:(x->Q))=> x040) as proof of ((x->Q)->P)
% 292.98/293.41 Found (fun (x05:(Q->x)) (x06:(x->Q))=> x040) as proof of ((Q->x)->((x->Q)->P))
% 292.98/293.41 Found x010:=(x01 x001):((iff P) Q)
% 292.98/293.41 Found (x01 x001) as proof of ((iff P) Q)
% 294.41/294.84 Found (x01 x001) as proof of ((iff P) Q)
% 294.41/294.84 Found x010:=(x01 x001):((iff P) Q)
% 294.41/294.84 Found (x01 x001) as proof of ((iff P) Q)
% 294.41/294.84 Found (x01 x001) as proof of ((iff P) Q)
% 294.41/294.84 Found x20:=(x2 x10):((iff P) Q)
% 294.41/294.84 Found (x2 x10) as proof of ((iff P) Q)
% 294.41/294.84 Found (x2 x10) as proof of ((iff P) Q)
% 294.41/294.84 Found x000:=(x00 x010):R
% 294.41/294.84 Found (x00 x010) as proof of R
% 294.41/294.84 Found (x00 x010) as proof of R
% 294.41/294.84 Found x011:x
% 294.41/294.84 Found x011 as proof of x
% 294.41/294.84 Found x010:=(x01 x000):((iff P) Q)
% 294.41/294.84 Found x010 as proof of ((iff P) Q)
% 294.41/294.84 Found x040:Q
% 294.41/294.84 Found x040 as proof of Q
% 294.41/294.84 Found (x03 x040) as proof of R
% 294.41/294.84 Found (x03 x040) as proof of R
% 294.41/294.84 Found (x03 x040) as proof of R
% 294.41/294.84 Found x030:x
% 294.41/294.84 Found x030 as proof of Q
% 294.41/294.84 Found x021:Q
% 294.41/294.84 Found x021 as proof of Q
% 294.41/294.84 Found x040:Q
% 294.41/294.84 Found x040 as proof of Q
% 294.41/294.84 Found x030:x
% 294.41/294.84 Found x030 as proof of x
% 294.41/294.84 Found x010:=(x01 x000):((iff P) Q)
% 294.41/294.84 Found x010 as proof of ((iff P) Q)
% 294.41/294.84 Found x021:Q
% 294.41/294.84 Found x021 as proof of x
% 294.41/294.84 Found x011:x
% 294.41/294.84 Found x011 as proof of x
% 294.41/294.84 Found x011:x
% 294.41/294.84 Found x011 as proof of Q
% 294.41/294.84 Found x020:Q
% 294.41/294.84 Found x020 as proof of Q
% 294.41/294.84 Found x021:Q
% 294.41/294.84 Found x021 as proof of Q
% 294.41/294.84 Found x010:x
% 294.41/294.84 Found x010 as proof of Q
% 294.41/294.84 Found x020:Q
% 294.41/294.84 Found x020 as proof of x
% 294.41/294.84 Found x010:x
% 294.41/294.84 Found x010 as proof of Q
% 294.41/294.84 Found x010:x
% 294.41/294.84 Found x010 as proof of x
% 294.41/294.84 Found x020:Q
% 294.41/294.84 Found x020 as proof of x
% 294.41/294.84 Found x021:Q
% 294.41/294.84 Found x021 as proof of x
% 294.41/294.84 Found x011:x
% 294.41/294.84 Found x011 as proof of Q
% 294.41/294.84 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 294.41/294.84 Found (iff_refl Q) as proof of ((iff Q) x)
% 294.41/294.84 Found (iff_refl Q) as proof of ((iff Q) x)
% 294.41/294.84 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 294.41/294.84 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 294.41/294.84 Found x030:P
% 294.41/294.84 Found (fun (x04:((iff Q) x))=> x030) as proof of P
% 294.41/294.84 Found (fun (x04:((iff Q) x))=> x030) as proof of (((iff Q) x)->P)
% 294.41/294.84 Found x000:=(x00 x011):R
% 294.41/294.84 Found (x00 x011) as proof of R
% 294.41/294.84 Found (x00 x011) as proof of R
% 294.41/294.84 Found x000:=(x00 x011):R
% 294.41/294.84 Found (x00 x011) as proof of R
% 294.41/294.84 Found (x00 x011) as proof of R
% 294.41/294.84 Found x010:=(x01 x000):((iff P) Q)
% 294.41/294.84 Found (x01 x000) as proof of ((iff P) Q)
% 294.41/294.84 Found (x01 x000) as proof of ((iff P) Q)
% 294.41/294.84 Found x020:Q
% 294.41/294.84 Found x020 as proof of Q
% 294.41/294.84 Found x011:x
% 294.41/294.84 Found x011 as proof of x
% 294.41/294.84 Found x000:=(x00 x011):R
% 294.41/294.84 Found (x00 x011) as proof of R
% 294.41/294.84 Found (x00 x011) as proof of R
% 294.41/294.84 Found x010:=(x01 x001):((iff P) Q)
% 294.41/294.84 Found x010 as proof of ((iff P) Q)
% 294.41/294.84 Found x010:=(x01 x001):((iff P) Q)
% 294.41/294.84 Found x010 as proof of ((iff P) Q)
% 294.41/294.84 Found x040:Q
% 294.41/294.84 Found x040 as proof of Q
% 294.41/294.84 Found x010:=(x01 x001):((iff P) Q)
% 294.41/294.84 Found x010 as proof of ((iff P) Q)
% 294.41/294.84 Found x010:=(x01 x001):((iff P) Q)
% 294.41/294.84 Found (x01 x001) as proof of ((iff P) Q)
% 294.41/294.84 Found (x01 x001) as proof of ((iff P) Q)
% 294.41/294.84 Found x040:Q
% 294.41/294.84 Found x040 as proof of x
% 294.41/294.84 Found x030:=(x03 x040):x
% 294.41/294.84 Found (x03 x040) as proof of P
% 294.41/294.84 Found (x03 x040) as proof of P
% 294.41/294.84 Found (x03 x040) as proof of P
% 294.41/294.84 Found x10:=(x1 x20):R
% 294.41/294.84 Found (x1 x20) as proof of R
% 294.41/294.84 Found (x1 x20) as proof of R
% 294.41/294.84 Found x010:=(x01 x000):((iff P) Q)
% 294.41/294.84 Found x010 as proof of ((iff P) Q)
% 294.41/294.84 Found x030:x
% 294.41/294.84 Found x030 as proof of Q
% 294.41/294.84 Found x030:x
% 294.41/294.84 Found x030 as proof of x
% 294.41/294.84 Found x040:Q
% 294.41/294.84 Found x040 as proof of x
% 294.41/294.84 Found x000:=(x00 x011):R
% 294.41/294.84 Found (x00 x011) as proof of R
% 294.41/294.84 Found (x00 x011) as proof of R
% 294.41/294.84 Found x010:x
% 294.41/294.84 Found x010 as proof of x
% 294.41/294.84 Found x00:((iff Q) x)
% 294.41/294.84 Instantiate: x:=P:Prop
% 294.41/294.84 Found x00 as proof of ((iff Q) P)
% 294.41/294.84 Found (iff_sym00 x00) as proof of ((and (P->Q)) (Q->P))
% 294.41/294.84 Found ((iff_sym0 P) x00) as proof of ((and (P->Q)) (Q->P))
% 294.41/294.84 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 294.41/294.84 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 294.41/294.84 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 294.41/294.84 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 294.41/294.84 Found (iff_refl Q) as proof of ((iff Q) x)
% 294.41/294.84 Found (iff_refl Q) as proof of ((iff Q) x)
% 294.41/294.84 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 294.41/294.84 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 294.41/294.84 Found x010:=(x01 x000):((iff P) Q)
% 294.41/294.84 Found x010 as proof of ((iff P) Q)
% 294.41/294.84 Found x010:=(x01 x000):((iff P) Q)
% 294.41/294.84 Found (x01 x000) as proof of ((iff P) Q)
% 294.41/294.84 Found (x01 x000) as proof of ((iff P) Q)
% 294.41/294.84 Found x000:=(x00 x011):R
% 294.41/294.84 Found (x00 x011) as proof of R
% 294.41/294.84 Found (x00 x011) as proof of R
% 294.41/294.84 Found x010:=(x01 x000):((iff P) Q)
% 294.41/294.84 Found (x01 x000) as proof of ((iff P) Q)
% 294.41/294.84 Found (x01 x000) as proof of ((iff P) Q)
% 294.41/294.84 Found x010:=(x01 x001):((iff P) Q)
% 295.64/296.06 Found (x01 x001) as proof of ((iff P) Q)
% 295.64/296.06 Found (x01 x001) as proof of ((iff P) Q)
% 295.64/296.06 Found x030:=(x03 x040):x
% 295.64/296.06 Found (x03 x040) as proof of P
% 295.64/296.06 Found (x03 x040) as proof of P
% 295.64/296.06 Found (x03 x040) as proof of P
% 295.64/296.06 Found x010:=(x01 x002):((iff P) Q)
% 295.64/296.06 Found x010 as proof of ((iff P) Q)
% 295.64/296.06 Found x010:=(x01 x001):((iff P) Q)
% 295.64/296.06 Found x010 as proof of ((iff P) Q)
% 295.64/296.06 Found x030:x
% 295.64/296.06 Found x030 as proof of Q
% 295.64/296.06 Found x040:Q
% 295.64/296.06 Found x040 as proof of x
% 295.64/296.06 Found x040:Q
% 295.64/296.06 Found x040 as proof of Q
% 295.64/296.06 Found x040:Q
% 295.64/296.06 Found x040 as proof of x
% 295.64/296.06 Found x030:x
% 295.64/296.06 Found x030 as proof of x
% 295.64/296.06 Found x040:Q
% 295.64/296.06 Found x040 as proof of Q
% 295.64/296.06 Found x000:=(x00 x010):R
% 295.64/296.06 Found (x00 x010) as proof of R
% 295.64/296.06 Found (x00 x010) as proof of R
% 295.64/296.06 Found x040:Q
% 295.64/296.06 Found x040 as proof of Q
% 295.64/296.06 Found x030:x
% 295.64/296.06 Found x030 as proof of Q
% 295.64/296.06 Found x040:Q
% 295.64/296.06 Found x040 as proof of x
% 295.64/296.06 Found x20:=(x2 x10):((iff P) Q)
% 295.64/296.06 Found (x2 x10) as proof of ((iff P) Q)
% 295.64/296.06 Found (x2 x10) as proof of ((iff P) Q)
% 295.64/296.06 Found x030:=(x03 x040):x
% 295.64/296.06 Found (x03 x040) as proof of P
% 295.64/296.06 Found (x03 x040) as proof of P
% 295.64/296.06 Found (x03 x040) as proof of P
% 295.64/296.06 Found x010:=(x01 x001):((iff P) Q)
% 295.64/296.06 Found (x01 x001) as proof of ((iff P) Q)
% 295.64/296.06 Found (x01 x001) as proof of ((iff P) Q)
% 295.64/296.06 Found x030:x
% 295.64/296.06 Found x030 as proof of x
% 295.64/296.06 Found x000:=(x00 x010):R
% 295.64/296.06 Found (x00 x010) as proof of R
% 295.64/296.06 Found (x00 x010) as proof of R
% 295.64/296.06 Found x030:x
% 295.64/296.06 Instantiate: x:=P:Prop
% 295.64/296.06 Found x030 as proof of P
% 295.64/296.06 Found x001:R
% 295.64/296.06 Instantiate: x:=R:Prop
% 295.64/296.06 Found x001 as proof of x
% 295.64/296.06 Found x001:R
% 295.64/296.06 Instantiate: x:=R:Prop
% 295.64/296.06 Found x001 as proof of x
% 295.64/296.06 Found x030:x
% 295.64/296.06 Instantiate: x:=P:Prop
% 295.64/296.06 Found (fun (x04:(x->Q))=> x030) as proof of P
% 295.64/296.06 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 295.64/296.06 Found x010:=(x01 x000):((iff P) Q)
% 295.64/296.06 Found (x01 x000) as proof of ((iff P) Q)
% 295.64/296.06 Found (x01 x000) as proof of ((iff P) Q)
% 295.64/296.06 Found x010:=(x01 x000):((iff P) Q)
% 295.64/296.06 Found (x01 x000) as proof of ((iff P) Q)
% 295.64/296.06 Found (x01 x000) as proof of ((iff P) Q)
% 295.64/296.06 Found x000:=(x00 x010):R
% 295.64/296.06 Found (x00 x010) as proof of R
% 295.64/296.06 Found (x00 x010) as proof of R
% 295.64/296.06 Found x000:=(x00 x011):R
% 295.64/296.06 Found (x00 x011) as proof of R
% 295.64/296.06 Found (x00 x011) as proof of R
% 295.64/296.06 Found x040:Q
% 295.64/296.06 Found x040 as proof of x
% 295.64/296.06 Found x040:Q
% 295.64/296.06 Found x040 as proof of Q
% 295.64/296.06 Found x040:Q
% 295.64/296.06 Found x040 as proof of x
% 295.64/296.06 Found x030:x
% 295.64/296.06 Found x030 as proof of x
% 295.64/296.06 Found x040:Q
% 295.64/296.06 Found x040 as proof of Q
% 295.64/296.06 Found x010:=(x01 x020):x
% 295.64/296.06 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 295.64/296.06 Found (x01 x020) as proof of ((iff P) Q)
% 295.64/296.06 Found (x01 x020) as proof of ((iff P) Q)
% 295.64/296.06 Found x030:x
% 295.64/296.06 Found x030 as proof of Q
% 295.64/296.06 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 295.64/296.06 Found (iff_refl Q) as proof of ((iff Q) x)
% 295.64/296.06 Found (iff_refl Q) as proof of ((iff Q) x)
% 295.64/296.06 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 295.64/296.06 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 295.64/296.06 Found x030:x
% 295.64/296.06 Instantiate: x:=P:Prop
% 295.64/296.06 Found x030 as proof of P
% 295.64/296.06 Found x010:=(x01 x000):((iff P) Q)
% 295.64/296.06 Found (x01 x000) as proof of ((iff P) Q)
% 295.64/296.06 Found (x01 x000) as proof of ((iff P) Q)
% 295.64/296.06 Found x001:R
% 295.64/296.06 Instantiate: x:=R:Prop
% 295.64/296.06 Found x001 as proof of x
% 295.64/296.06 Found x030:x
% 295.64/296.06 Instantiate: x:=P:Prop
% 295.64/296.06 Found x030 as proof of P
% 295.64/296.06 Found x030:x
% 295.64/296.06 Instantiate: x:=Q:Prop
% 295.64/296.06 Found x030 as proof of Q
% 295.64/296.06 Found x010:=(x01 x000):((iff P) Q)
% 295.64/296.06 Found x010 as proof of ((iff P) Q)
% 295.64/296.06 Found x02:((iff Q) x)
% 295.64/296.06 Instantiate: x:=P:Prop
% 295.64/296.06 Found x02 as proof of ((iff Q) P)
% 295.64/296.06 Found (iff_sym10 x02) as proof of ((iff P) Q)
% 295.64/296.06 Found ((iff_sym1 P) x02) as proof of ((iff P) Q)
% 295.64/296.06 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 295.64/296.06 Found (((iff_sym Q) P) x02) as proof of ((iff P) Q)
% 295.64/296.06 Found x00:((iff Q) x)
% 295.64/296.06 Instantiate: x:=P:Prop
% 295.64/296.06 Found x00 as proof of ((iff Q) P)
% 295.64/296.06 Found (iff_sym00 x00) as proof of ((and (P->Q)) (Q->P))
% 295.64/296.06 Found ((iff_sym0 P) x00) as proof of ((and (P->Q)) (Q->P))
% 295.64/296.06 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 295.64/296.06 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 295.64/296.06 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 295.64/296.06 Found x030:x
% 295.64/296.06 Instantiate: x:=P:Prop
% 295.64/296.06 Found (fun (x04:(x->Q))=> x030) as proof of P
% 295.64/296.06 Found (fun (x04:(x->Q))=> x030) as proof of ((x->Q)->P)
% 295.64/296.06 Found x000:=(x00 x011):R
% 295.64/296.06 Found (x00 x011) as proof of R
% 295.64/296.06 Found (x00 x011) as proof of R
% 295.64/296.06 Found x20:=(x2 x11):((iff P) Q)
% 295.64/296.06 Found (x2 x11) as proof of ((iff P) Q)
% 295.64/296.06 Found (x2 x11) as proof of ((iff P) Q)
% 295.64/296.06 Found x000:=(x00 x011):R
% 295.64/296.06 Found (x00 x011) as proof of R
% 295.64/296.06 Found (x00 x011) as proof of R
% 296.52/296.95 Found x000:=(x00 x011):R
% 296.52/296.95 Found (x00 x011) as proof of R
% 296.52/296.95 Found (x00 x011) as proof of R
% 296.52/296.95 Found x010:=(x01 x000):((iff P) Q)
% 296.52/296.95 Found (x01 x000) as proof of ((iff P) Q)
% 296.52/296.95 Found (x01 x000) as proof of ((iff P) Q)
% 296.52/296.95 Found x030:x
% 296.52/296.95 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 296.52/296.95 Found x030 as proof of ((iff P) Q)
% 296.52/296.95 Found x030:x
% 296.52/296.95 Instantiate: x:=P:Prop
% 296.52/296.95 Found x030 as proof of P
% 296.52/296.95 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 296.52/296.95 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 296.52/296.95 Found eta_expansion as proof of x
% 296.52/296.95 Found x00:((iff Q) x)
% 296.52/296.95 Instantiate: x:=P:Prop
% 296.52/296.95 Found x00 as proof of ((iff Q) P)
% 296.52/296.95 Found (iff_sym00 x00) as proof of ((iff P) Q)
% 296.52/296.95 Found ((iff_sym0 P) x00) as proof of ((iff P) Q)
% 296.52/296.95 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 296.52/296.95 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 296.52/296.95 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 296.52/296.95 Found (x1 (((iff_sym Q) P) x00)) as proof of R
% 296.52/296.95 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 296.52/296.95 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 296.52/296.95 Found ex_intro0 as proof of x
% 296.52/296.95 Found (x02 ex_intro0) as proof of Q
% 296.52/296.95 Found (x02 ex_intro0) as proof of Q
% 296.52/296.95 Found x010:=(x01 x000):((iff P) Q)
% 296.52/296.95 Found x010 as proof of ((iff P) Q)
% 296.52/296.95 Found iff_refl0:=(iff_refl Q):((iff Q) Q)
% 296.52/296.95 Found (iff_refl Q) as proof of ((iff Q) x)
% 296.52/296.95 Found (iff_refl Q) as proof of ((iff Q) x)
% 296.52/296.95 Found (fun (x02:P)=> (iff_refl Q)) as proof of ((iff Q) x)
% 296.52/296.95 Found (fun (x02:P)=> (iff_refl Q)) as proof of (P->((iff Q) x))
% 296.52/296.95 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 296.52/296.95 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 296.52/296.95 Found ex_intro0 as proof of x
% 296.52/296.95 Found (x02 ex_intro0) as proof of Q
% 296.52/296.95 Found (x02 ex_intro0) as proof of Q
% 296.52/296.95 Found x000:=(x00 x011):R
% 296.52/296.95 Found (x00 x011) as proof of R
% 296.52/296.95 Found (x00 x011) as proof of R
% 296.52/296.95 Found x030:=(x03 x040):x
% 296.52/296.95 Instantiate: x:=P:Prop
% 296.52/296.95 Found (x03 x040) as proof of P
% 296.52/296.95 Found (x03 x040) as proof of P
% 296.52/296.95 Found x000:=(x00 x011):R
% 296.52/296.95 Found (x00 x011) as proof of R
% 296.52/296.95 Found (x00 x011) as proof of R
% 296.52/296.95 Found x000:=(x00 x011):R
% 296.52/296.95 Found (x00 x011) as proof of R
% 296.52/296.95 Found (x00 x011) as proof of R
% 296.52/296.95 Found x030:=(x03 x040):x
% 296.52/296.95 Instantiate: x:=((P->Q)->((Q->P)->P)):Prop
% 296.52/296.95 Found (x03 x040) as proof of ((P->Q)->((Q->P)->P))
% 296.52/296.95 Found (x03 x040) as proof of ((P->Q)->((Q->P)->P))
% 296.52/296.95 Found (and_rect20 (x03 x040)) as proof of P
% 296.52/296.95 Found ((and_rect2 P) (x03 x040)) as proof of P
% 296.52/296.95 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (x03 x040)) as proof of P
% 296.52/296.95 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) P) (x03 x040)) as proof of P
% 296.52/296.95 Found x030:=(x03 x040):x
% 296.52/296.95 Instantiate: x:=P:Prop
% 296.52/296.95 Found (x03 x040) as proof of P
% 296.52/296.95 Found (x03 x040) as proof of P
% 296.52/296.95 Found x010:=(x01 x000):((iff P) Q)
% 296.52/296.95 Found x010 as proof of ((iff P) Q)
% 296.52/296.95 Found x010:=(x01 x000):((iff P) Q)
% 296.52/296.95 Found x010 as proof of ((iff P) Q)
% 296.52/296.95 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 296.52/296.95 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 296.52/296.95 Found ex_intro0 as proof of x
% 296.52/296.95 Found (x02 ex_intro0) as proof of Q
% 296.52/296.95 Found (x02 ex_intro0) as proof of Q
% 296.52/296.95 Found x010:=(x01 x000):((iff P) Q)
% 296.52/296.95 Found x010 as proof of ((iff P) Q)
% 296.52/296.95 Found x010:=(x01 x021):x
% 296.52/296.95 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 296.52/296.95 Found (x01 x021) as proof of ((iff P) Q)
% 296.52/296.95 Found (x01 x021) as proof of ((iff P) Q)
% 296.52/296.95 Found x00:((iff Q) x)
% 296.52/296.95 Instantiate: x:=P:Prop
% 296.52/296.95 Found x00 as proof of ((iff Q) P)
% 296.52/296.95 Found (iff_sym10 x00) as proof of ((and (P->Q)) (Q->P))
% 296.52/296.95 Found ((iff_sym1 P) x00) as proof of ((and (P->Q)) (Q->P))
% 296.52/296.95 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 296.52/296.95 Found (((iff_sym Q) P) x00) as proof of ((and (P->Q)) (Q->P))
% 296.52/296.95 Found (((iff_sym Q) P) x00) as proof of ((iff P) Q)
% 296.52/296.95 Found x010:=(x01 x000):((iff P) Q)
% 296.52/296.95 Found x010 as proof of ((iff P) Q)
% 296.52/296.95 Found ex_intro0:=(ex_intro Prop):(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P)))
% 296.52/296.95 Instantiate: x:=(forall (P:(Prop->Prop)) (x:Prop), ((P x)->((ex Prop) P))):Prop
% 297.05/297.47 Found ex_intro0 as proof of x
% 297.05/297.47 Found (x02 ex_intro0) as proof of Q
% 297.05/297.47 Found (x02 ex_intro0) as proof of Q
% 297.05/297.47 Found x030:=(x03 x040):x
% 297.05/297.47 Found (x03 x040) as proof of P
% 297.05/297.47 Found (x03 x040) as proof of P
% 297.05/297.47 Found (x03 x040) as proof of P
% 297.05/297.47 Found x000:=(x00 x011):R
% 297.05/297.47 Found (x00 x011) as proof of R
% 297.05/297.47 Found (x00 x011) as proof of R
% 297.05/297.47 Found x030:=(x03 x040):x
% 297.05/297.47 Instantiate: x:=P:Prop
% 297.05/297.47 Found (x03 x040) as proof of P
% 297.05/297.47 Found (x03 x040) as proof of P
% 297.05/297.47 Found x010:=(x01 x000):((iff P) Q)
% 297.05/297.47 Found x010 as proof of ((iff P) Q)
% 297.05/297.47 Found x010:=(x01 x000):((iff P) Q)
% 297.05/297.47 Found x010 as proof of ((iff P) Q)
% 297.05/297.47 Found x040:Q
% 297.05/297.47 Found x040 as proof of Q
% 297.05/297.47 Found x010:=(x01 x000):((iff P) Q)
% 297.05/297.47 Found (x01 x000) as proof of ((iff P) Q)
% 297.05/297.47 Found (x01 x000) as proof of ((iff P) Q)
% 297.05/297.47 Found x030:x
% 297.05/297.47 Found x030 as proof of Q
% 297.05/297.47 Found x010:=(x01 x000):((iff P) Q)
% 297.05/297.47 Found x010 as proof of ((iff P) Q)
% 297.05/297.47 Found x040:Q
% 297.05/297.47 Found x040 as proof of x
% 297.05/297.47 Found x000:=(x00 x011):R
% 297.05/297.47 Found (x00 x011) as proof of R
% 297.05/297.47 Found (x00 x011) as proof of R
% 297.05/297.47 Found x000:=(x00 x010):R
% 297.05/297.47 Found (x00 x010) as proof of R
% 297.05/297.47 Found (x00 x010) as proof of R
% 297.05/297.47 Found x030:x
% 297.05/297.47 Found x030 as proof of x
% 297.05/297.47 Found x000:=(x00 x010):R
% 297.05/297.47 Found (x00 x010) as proof of R
% 297.05/297.47 Found (x00 x010) as proof of R
% 297.05/297.47 Found x20:=(x2 x11):((iff P) Q)
% 297.05/297.47 Found (x2 x11) as proof of ((iff P) Q)
% 297.05/297.47 Found (x2 x11) as proof of ((iff P) Q)
% 297.05/297.47 Found x030:x
% 297.05/297.47 Instantiate: x:=P:Prop
% 297.05/297.47 Found x030 as proof of P
% 297.05/297.47 Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 297.05/297.47 Instantiate: x:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% 297.05/297.47 Found eta_expansion as proof of x
% 297.05/297.47 Found x010:=(x01 x000):((iff P) Q)
% 297.05/297.47 Found x010 as proof of ((iff P) Q)
% 297.05/297.47 Found or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 297.05/297.47 Instantiate: x:=(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A))):Prop
% 297.05/297.47 Found or_comm_i as proof of x
% 297.05/297.47 Found (x06 or_comm_i) as proof of Q
% 297.05/297.47 Found (x06 or_comm_i) as proof of Q
% 297.05/297.47 Found (x04 (x06 or_comm_i)) as proof of P
% 297.05/297.47 Found (fun (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of P
% 297.05/297.47 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((x->Q)->P)
% 297.05/297.47 Found (fun (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((Q->x)->((x->Q)->P))
% 297.05/297.47 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((Q->P)->((Q->x)->((x->Q)->P)))
% 297.05/297.47 Found (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))) as proof of ((P->Q)->((Q->P)->((Q->x)->((x->Q)->P))))
% 297.05/297.47 Found (and_rect20 (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 297.05/297.47 Found ((and_rect2 ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 297.05/297.47 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 297.05/297.47 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 297.05/297.47 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))) as proof of ((Q->x)->((x->Q)->P))
% 297.05/297.47 Found (and_rect10 (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))))) as proof of P
% 297.05/297.47 Found ((and_rect1 P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))))) as proof of P
% 297.41/297.82 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i))))) as proof of P
% 297.41/297.82 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))))) as proof of P
% 297.41/297.82 Found (fun (x02:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x02)) P) (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) ((Q->x)->((x->Q)->P))) (fun (x03:(P->Q)) (x04:(Q->P)) (x05:(Q->x)) (x06:(x->Q))=> (x04 (x06 or_comm_i)))))) as proof of (((iff Q) x)->P)
% 297.41/297.82 Found x010:=(x01 x000):((iff P) Q)
% 297.41/297.82 Found x010 as proof of ((iff P) Q)
% 297.41/297.82 Found x010:=(x01 x000):((iff P) Q)
% 297.41/297.82 Found x010 as proof of ((iff P) Q)
% 297.41/297.82 Found x040:Q
% 297.41/297.82 Found x040 as proof of Q
% 297.41/297.82 Found (x03 x040) as proof of P
% 297.41/297.82 Found (x03 x040) as proof of P
% 297.41/297.82 Found (x03 x040) as proof of P
% 297.41/297.82 Found x010:=(x01 x000):((iff P) Q)
% 297.41/297.82 Found (x01 x000) as proof of ((iff P) Q)
% 297.41/297.82 Found (x01 x000) as proof of ((iff P) Q)
% 297.41/297.82 Found x010:=(x01 x000):((iff P) Q)
% 297.41/297.82 Found x010 as proof of ((iff P) Q)
% 297.41/297.82 Found x010:=(x01 x000):((iff P) Q)
% 297.41/297.82 Found (x01 x000) as proof of ((iff P) Q)
% 297.41/297.82 Found (x01 x000) as proof of ((iff P) Q)
% 297.41/297.82 Found x010:=(x01 x000):((iff P) Q)
% 297.41/297.82 Found (x01 x000) as proof of ((iff P) Q)
% 297.41/297.82 Found (x01 x000) as proof of ((iff P) Q)
% 297.41/297.82 Found x010:=(x01 x000):((iff P) Q)
% 297.41/297.82 Found x010 as proof of ((iff P) Q)
% 297.41/297.82 Found x010:=(x01 x001):((iff P) Q)
% 297.41/297.82 Found (x01 x001) as proof of ((iff P) Q)
% 297.41/297.82 Found (x01 x001) as proof of ((iff P) Q)
% 297.41/297.82 Found x010:=(x01 x000):((iff P) Q)
% 297.41/297.82 Found x010 as proof of ((iff P) Q)
% 297.41/297.82 Found x010:=(x01 x000):((iff P) Q)
% 297.41/297.82 Found x010 as proof of ((iff P) Q)
% 297.41/297.82 Found or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 297.41/297.82 Instantiate: x:=(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A))):Prop
% 297.41/297.82 Found or_comm_i as proof of x
% 297.41/297.82 Found (x02 or_comm_i) as proof of Q
% 297.41/297.82 Found (x02 or_comm_i) as proof of Q
% 297.41/297.82 Found (x4 (x02 or_comm_i)) as proof of P
% 297.41/297.82 Found (fun (x4:(Q->P))=> (x4 (x02 or_comm_i))) as proof of P
% 297.41/297.82 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i))) as proof of ((Q->P)->P)
% 297.41/297.82 Found (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i))) as proof of ((P->Q)->((Q->P)->P))
% 297.41/297.82 Found (and_rect20 (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 297.41/297.82 Found ((and_rect2 P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 297.41/297.82 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) x20)) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 297.41/297.82 Found (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i)))) as proof of P
% 297.41/297.82 Found (fun (x02:(x->Q))=> (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i))))) as proof of P
% 297.41/297.82 Found (fun (x02:(x->Q))=> (((fun (P0:Type) (x3:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x3) (x2 x10))) P) (fun (x3:(P->Q)) (x4:(Q->P))=> (x4 (x02 or_comm_i))))) as proof of ((x->Q)->P)
% 297.41/297.82 Found x010:=(x01 x000):((iff P) Q)
% 297.41/297.82 Found x010 as proof of ((iff P) Q)
% 297.41/297.82 Found x010:=(x01 x000):((iff P) Q)
% 297.41/297.82 Found x010 as proof of ((iff P) Q)
% 297.41/297.82 Found x000:R
% 297.41/297.82 Instantiate: x:=R:Prop
% 297.41/297.82 Found x000 as proof of x
% 297.41/297.82 Found (x06 x000) as proof of Q
% 297.41/297.82 Found (x06 x000) as proof of Q
% 297.41/297.82 Found (x03 (x06 x000)) as proof of P
% 297.41/297.82 Found (fun (x06:(x->Q))=> (x03 (x06 x000))) as proof of P
% 297.41/297.82 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))) as proof of ((x->Q)->P)
% 297.86/298.29 Found (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))) as proof of ((Q->x)->((x->Q)->P))
% 297.86/298.29 Found (and_rect20 (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))) as proof of P
% 297.86/298.29 Found ((and_rect2 P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))) as proof of P
% 297.86/298.29 Found (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))) as proof of P
% 297.86/298.29 Found (fun (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))))) as proof of P
% 297.86/298.29 Found (fun (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))))) as proof of (((iff Q) x)->P)
% 297.86/298.29 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))))) as proof of ((Q->P)->(((iff Q) x)->P))
% 297.86/298.29 Found (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000))))) as proof of ((P->Q)->((Q->P)->(((iff Q) x)->P)))
% 297.86/298.29 Found (and_rect10 (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 297.86/298.29 Found ((and_rect1 (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 297.86/298.29 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) x010)) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 297.86/298.29 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 297.86/298.29 Found (((fun (P0:Type) (x1:((P->Q)->((Q->P)->P0)))=> (((((and_rect (P->Q)) (Q->P)) P0) x1) (x01 x000))) (((iff Q) x)->P)) (fun (x02:(P->Q)) (x03:(Q->P)) (x04:((iff Q) x))=> (((fun (P0:Type) (x1:((Q->x)->((x->Q)->P0)))=> (((((and_rect (Q->x)) (x->Q)) P0) x1) x04)) P) (fun (x05:(Q->x)) (x06:(x->Q))=> (x03 (x06 x000)))))) as proof of (((iff Q) x)->P)
% 297.86/298.29 Found x010:=(x01 x000):((iff P) Q)
% 297.86/298.29 Found x010 as proof of ((iff P) Q)
% 297.86/298.29 Found x010:=(x01 x000):((iff P) Q)
% 297.86/298.29 Found x010 as proof of ((iff P) Q)
% 297.86/298.29 Found x010:=(x01 x000):((iff P) Q)
% 297.86/298.29 Found x010 as proof of ((iff P) Q)
% 297.86/298.29 Found x20:=(x2 x10):((iff P) Q)
% 297.86/298.29 Found x20 as proof of ((iff P) Q)
% 297.86/298.29 Found x010:=(x01 x000):((iff P) Q)
% 297.86/298.29 Found x010 as proof of ((iff P) Q)
% 297.86/298.29 Found x000:=(x00 x011):R
% 297.86/298.29 Found (x00 x011) as proof of R
% 297.86/298.29 Found (x00 x011) as proof of R
% 297.86/298.29 Found x000:=(x00 x010):R
% 297.86/298.29 Found (x00 x010) as proof of R
% 297.86/298.29 Found (x00 x010) as proof of R
% 297.86/298.29 Found x010:=(x01 x001):((iff P) Q)
% 297.86/298.29 Found (x01 x001) as proof of ((iff P) Q)
% 297.86/298.29 Found (x01 x001) as proof of ((iff P) Q)
% 297.86/298.29 Found x010:=(x01 x020):x
% 297.86/298.29 Instantiate: x:=((and (P->Q)) (Q->P)):Prop
% 297.86/298.29 Found (x01 x020) as proof of ((iff P) Q)
% 297.86/298.29 Found (x01 x020) as proof of ((iff P) Q)
% 297.86/298.29 Found x000:=(x00 x010):R
% 297.86/298.29 Found (x00 x010) as proof of R
% 297.86/298.29 Found (x00 x010) as proof of R
% 297.86/298.29 Found x010:=(x01 x001):((iff P) Q)
% 297.86/298.29 Found (x01 x001) as proof of ((iff P) Q)
% 297.86/298.29 Found (x01 x001) as proof of ((iff P) Q)
% 297.86/298.29 Found x04:(x->Q)
% 297.86/298.29 Instantiate: x:=(Q->P):Prop
% 297.86/298.29 Found (fun (x1:(P->Q))=> x04) as proof of ((Q->P)->Q)
% 297.86/298.29 Found (fun (x1:(P->Q))=> x04) as proof of ((P->Q)->((Q->P)->Q))
% 297.86/298.29 Found (and_rect20 (fun (x1:(P->Q))=> x04)
%------------------------------------------------------------------------------