Table of ContentsTable of Contents Mathbox for Frédéric Liné < Previous   Next >
Related theorems
Unicode version

Theorem dualcat2 15133
Description: The dual of a category is a category. Joy of cats 3.5
Hypotheses
Ref Expression
dualcat2.1 |- D = (dom` T)
dualcat2.2 |- C = (cod` T)
dualcat2.3 |- J = (id` T)
dualcat2.4 |- R = (o` T)
Assertion
Ref Expression
dualcat2 |- (T e. Cat -> <.<.C, D>., <.J, {<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}>.>. e. Cat )
Distinct variable groups:   x,C,y,z   x,D,y,z   x,J,y,z   x,R,y,z   x,T,y,z

Proof of Theorem dualcat2
StepHypRef Expression
1 catded 15111 . . . 4 |- (T e. Cat -> T e. Ded )
2 dualcat2.1 . . . . 5 |- D = (dom` T)
3 dualcat2.2 . . . . 5 |- C = (cod` T)
4 dualcat2.3 . . . . 5 |- J = (id` T)
5 dualcat2.4 . . . . 5 |- R = (o` T)
62, 3, 4, 5dualded 15132 . . . 4 |- (T e. Ded -> <.<.C, D>., <.J, {<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}>.>. e. Ded )
71, 6syl 12 . . 3 |- (T e. Cat -> <.<.C, D>., <.J, {<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}>.>. e. Ded )
8 dedalg 15090 . . . . . . . . . . . . . . . . . . . . . 22 |- (T e. Ded -> T e. Alg )
92, 3dcsda 15080 . . . . . . . . . . . . . . . . . . . . . . 23 |- (T e. Alg -> dom D = dom C)
10 eleq2 1958 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (dom D = dom C -> (h e. dom D <-> h e. dom C))
11 eleq2 1958 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (dom D = dom C -> (g e. dom D <-> g e. dom C))
12 eleq2 1958 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (dom D = dom C -> (f e. dom D <-> f e. dom C))
1310, 11, 123anbi123d 1168 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- (dom D = dom C -> ((h e. dom D /\ g e. dom D /\ f e. dom D) <-> (h e. dom C /\ g e. dom C /\ f e. dom C)))
1413biimprd 171 . . . . . . . . . . . . . . . . . . . . . . . 24 |- (dom D = dom C -> ((h e. dom C /\ g e. dom C /\ f e. dom C) -> (h e. dom D /\ g e. dom D /\ f e. dom D)))
15 eqid 1884 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- dom D = dom D
1615, 2, 3, 5cmpasso 15120 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- ((T e. Cat /\ (h e. dom D /\ g e. dom D /\ f e. dom D)) -> (((D` f) = (C` g) /\ (D` g) = (C` h)) -> (fR(gRh)) = ((fRg)Rh)))
1716ex 402 . . . . . . . . . . . . . . . . . . . . . . . 24 |- (T e. Cat -> ((h e. dom D /\ g e. dom D /\ f e. dom D) -> (((D` f) = (C` g) /\ (D` g) = (C` h)) -> (fR(gRh)) = ((fRg)Rh))))
1814, 17syl9 71 . . . . . . . . . . . . . . . . . . . . . . 23 |- (dom D = dom C -> (T e. Cat -> ((h e. dom C /\ g e. dom C /\ f e. dom C) -> (((D` f) = (C` g) /\ (D` g) = (C` h)) -> (fR(gRh)) = ((fRg)Rh)))))
199, 18syl 12 . . . . . . . . . . . . . . . . . . . . . 22 |- (T e. Alg -> (T e. Cat -> ((h e. dom C /\ g e. dom C /\ f e. dom C) -> (((D` f) = (C` g) /\ (D` g) = (C` h)) -> (fR(gRh)) = ((fRg)Rh)))))
201, 8, 193syl 24 . . . . . . . . . . . . . . . . . . . . 21 |- (T e. Cat -> (T e. Cat -> ((h e. dom C /\ g e. dom C /\ f e. dom C) -> (((D` f) = (C` g) /\ (D` g) = (C` h)) -> (fR(gRh)) = ((fRg)Rh)))))
2120pm2.43i 78 . . . . . . . . . . . . . . . . . . . 20 |- (T e. Cat -> ((h e. dom C /\ g e. dom C /\ f e. dom C) -> (((D` f) = (C` g) /\ (D` g) = (C` h)) -> (fR(gRh)) = ((fRg)Rh))))
2221imp 377 . . . . . . . . . . . . . . . . . . 19 |- ((T e. Cat /\ (h e. dom C /\ g e. dom C /\ f e. dom C)) -> (((D` f) = (C` g) /\ (D` g) = (C` h)) -> (fR(gRh)) = ((fRg)Rh)))
2322com12 14 . . . . . . . . . . . . . . . . . 18 |- (((D` f) = (C` g) /\ (D` g) = (C` h)) -> ((T e. Cat /\ (h e. dom C /\ g e. dom C /\ f e. dom C)) -> (fR(gRh)) = ((fRg)Rh)))
2423ex 402 . . . . . . . . . . . . . . . . 17 |- ((D` f) = (C` g) -> ((D` g) = (C` h) -> ((T e. Cat /\ (h e. dom C /\ g e. dom C /\ f e. dom C)) -> (fR(gRh)) = ((fRg)Rh))))
2524eqcoms 1887 . . . . . . . . . . . . . . . 16 |- ((C` g) = (D` f) -> ((D` g) = (C` h) -> ((T e. Cat /\ (h e. dom C /\ g e. dom C /\ f e. dom C)) -> (fR(gRh)) = ((fRg)Rh))))
2625com12 14 . . . . . . . . . . . . . . 15 |- ((D` g) = (C` h) -> ((C` g) = (D` f) -> ((T e. Cat /\ (h e. dom C /\ g e. dom C /\ f e. dom C)) -> (fR(gRh)) = ((fRg)Rh))))
2726eqcoms 1887 . . . . . . . . . . . . . 14 |- ((C` h) = (D` g) -> ((C` g) = (D` f) -> ((T e. Cat /\ (h e. dom C /\ g e. dom C /\ f e. dom C)) -> (fR(gRh)) = ((fRg)Rh))))
2827imp 377 . . . . . . . . . . . . 13 |- (((C` h) = (D` g) /\ (C` g) = (D` f)) -> ((T e. Cat /\ (h e. dom C /\ g e. dom C /\ f e. dom C)) -> (fR(gRh)) = ((fRg)Rh)))
2928com12 14 . . . . . . . . . . . 12 |- ((T e. Cat /\ (h e. dom C /\ g e. dom C /\ f e. dom C)) -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (fR(gRh)) = ((fRg)Rh)))
30293exp2 1086 . . . . . . . . . . 11 |- (T e. Cat -> (h e. dom C -> (g e. dom C -> (f e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (fR(gRh)) = ((fRg)Rh))))))
3130com24 41 . . . . . . . . . 10 |- (T e. Cat -> (f e. dom C -> (g e. dom C -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (fR(gRh)) = ((fRg)Rh))))))
3231imp32 390 . . . . . . . . 9 |- ((T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (fR(gRh)) = ((fRg)Rh))))
3332imp31 389 . . . . . . . 8 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (fR(gRh)) = ((fRg)Rh))
34 simp12 907 . . . . . . . . . . . . . . . . 17 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> T e. Cat )
35 eleq2 1958 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- (dom C = dom D -> (h e. dom C <-> h e. dom D))
36 eleq2 1958 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- (dom C = dom D -> (g e. dom C <-> g e. dom D))
3735, 36anbi12d 690 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (dom C = dom D -> ((h e. dom C /\ g e. dom C) <-> (h e. dom D /\ g e. dom D)))
3837eqcoms 1887 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- (dom D = dom C -> ((h e. dom C /\ g e. dom C) <-> (h e. dom D /\ g e. dom D)))
3938biimpcd 172 . . . . . . . . . . . . . . . . . . . . . . . 24 |- ((h e. dom C /\ g e. dom C) -> (dom D = dom C -> (h e. dom D /\ g e. dom D)))
4039ex 402 . . . . . . . . . . . . . . . . . . . . . . 23 |- (h e. dom C -> (g e. dom C -> (dom D = dom C -> (h e. dom D /\ g e. dom D))))
4140com3l 38 . . . . . . . . . . . . . . . . . . . . . 22 |- (g e. dom C -> (dom D = dom C -> (h e. dom C -> (h e. dom D /\ g e. dom D))))
4241adantl 424 . . . . . . . . . . . . . . . . . . . . 21 |- ((f e. dom C /\ g e. dom C) -> (dom D = dom C -> (h e. dom C -> (h e. dom D /\ g e. dom D))))
4342impcom 378 . . . . . . . . . . . . . . . . . . . 20 |- ((dom D = dom C /\ (f e. dom C /\ g e. dom C)) -> (h e. dom C -> (h e. dom D /\ g e. dom D)))
44433adant2 895 . . . . . . . . . . . . . . . . . . 19 |- ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (h e. dom C -> (h e. dom D /\ g e. dom D)))
4544imp 377 . . . . . . . . . . . . . . . . . 18 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> (h e. dom D /\ g e. dom D))
46453adant3 896 . . . . . . . . . . . . . . . . 17 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (h e. dom D /\ g e. dom D))
47 eqcom 1886 . . . . . . . . . . . . . . . . . . . 20 |- ((C` h) = (D` g) <-> (D` g) = (C` h))
4847biimpi 168 . . . . . . . . . . . . . . . . . . 19 |- ((C` h) = (D` g) -> (D` g) = (C` h))
4948adantr 425 . . . . . . . . . . . . . . . . . 18 |- (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (D` g) = (C` h))
50493ad2ant3 899 . . . . . . . . . . . . . . . . 17 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (D` g) = (C` h))
5134, 46, 503jca 1050 . . . . . . . . . . . . . . . 16 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (T e. Cat /\ (h e. dom D /\ g e. dom D) /\ (D` g) = (C` h)))
52513exp 1066 . . . . . . . . . . . . . . 15 |- ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (T e. Cat /\ (h e. dom D /\ g e. dom D) /\ (D` g) = (C` h)))))
53523exp 1066 . . . . . . . . . . . . . 14 |- (dom D = dom C -> (T e. Cat -> ((f e. dom C /\ g e. dom C) -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (T e. Cat /\ (h e. dom D /\ g e. dom D) /\ (D` g) = (C` h)))))))
549, 53syl 12 . . . . . . . . . . . . 13 |- (T e. Alg -> (T e. Cat -> ((f e. dom C /\ g e. dom C) -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (T e. Cat /\ (h e. dom D /\ g e. dom D) /\ (D` g) = (C` h)))))))
551, 8, 543syl 24 . . . . . . . . . . . 12 |- (T e. Cat -> (T e. Cat -> ((f e. dom C /\ g e. dom C) -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (T e. Cat /\ (h e. dom D /\ g e. dom D) /\ (D` g) = (C` h)))))))
5655pm2.43i 78 . . . . . . . . . . 11 |- (T e. Cat -> ((f e. dom C /\ g e. dom C) -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (T e. Cat /\ (h e. dom D /\ g e. dom D) /\ (D` g) = (C` h))))))
5756imp41 395 . . . . . . . . . 10 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (T e. Cat /\ (h e. dom D /\ g e. dom D) /\ (D` g) = (C` h)))
582, 3, 5dualcat2lem 15129 . . . . . . . . . 10 |- ((T e. Cat /\ (h e. dom D /\ g e. dom D) /\ (D` g) = (C` h)) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g) = (gRh))
5957, 58syl 12 . . . . . . . . 9 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g) = (gRh))
60 opreq1 4889 . . . . . . . . . 10 |- ((h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g) = (gRh) -> ((h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = ((gRh){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f))
61 simplll 452 . . . . . . . . . . 11 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> T e. Cat )
62 simpl2 880 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> T e. Cat )
6335biimpd 170 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 |- (dom C = dom D -> (h e. dom C -> h e. dom D))
6463eqcoms 1887 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 |- (dom D = dom C -> (h e. dom C -> h e. dom D))
65643ad2ant1 897 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (h e. dom C -> h e. dom D))
6665imp 377 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> h e. dom D)
6736biimpd 170 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 |- (dom C = dom D -> (g e. dom C -> g e. dom D))
6867eqcoms 1887 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 |- (dom D = dom C -> (g e. dom C -> g e. dom D))
6968com12 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 |- (g e. dom C -> (dom D = dom C -> g e. dom D))
7069adantl 424 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 |- ((f e. dom C /\ g e. dom C) -> (dom D = dom C -> g e. dom D))
7170impcom 378 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 |- ((dom D = dom C /\ (f e. dom C /\ g e. dom C)) -> g e. dom D)
72713adant2 895 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> g e. dom D)
7372adantr 425 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> g e. dom D)
7462, 66, 733jca 1050 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> (T e. Cat /\ h e. dom D /\ g e. dom D))
7574ex 402 . . . . . . . . . . . . . . . . . . . . . . . 24 |- ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (h e. dom C -> (T e. Cat /\ h e. dom D /\ g e. dom D)))
762dmeqi 4158 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- dom D = dom (dom` T)
7776, 2, 3, 5cmpmorp 15126 . . . . . . . . . . . . . . . . . . . . . . . 24 |- ((T e. Cat /\ h e. dom D /\ g e. dom D) -> ((D` g) = (C` h) -> (gRh) e. dom D))
7875, 77syl6 25 . . . . . . . . . . . . . . . . . . . . . . 23 |- ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (h e. dom C -> ((D` g) = (C` h) -> (gRh) e. dom D)))
7978com13 37 . . . . . . . . . . . . . . . . . . . . . 22 |- ((D` g) = (C` h) -> (h e. dom C -> ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (gRh) e. dom D)))
8079eqcoms 1887 . . . . . . . . . . . . . . . . . . . . 21 |- ((C` h) = (D` g) -> (h e. dom C -> ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (gRh) e. dom D)))
8180adantr 425 . . . . . . . . . . . . . . . . . . . 20 |- (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (h e. dom C -> ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (gRh) e. dom D)))
8281com13 37 . . . . . . . . . . . . . . . . . . 19 |- ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (gRh) e. dom D)))
83823imp 1061 . . . . . . . . . . . . . . . . . 18 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (gRh) e. dom D)
84 eleq2 1958 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- (dom C = dom D -> (f e. dom C <-> f e. dom D))
8584biimpd 170 . . . . . . . . . . . . . . . . . . . . . . . 24 |- (dom C = dom D -> (f e. dom C -> f e. dom D))
8685eqcoms 1887 . . . . . . . . . . . . . . . . . . . . . . 23 |- (dom D = dom C -> (f e. dom C -> f e. dom D))
8786com12 14 . . . . . . . . . . . . . . . . . . . . . 22 |- (f e. dom C -> (dom D = dom C -> f e. dom D))
8887adantr 425 . . . . . . . . . . . . . . . . . . . . 21 |- ((f e. dom C /\ g e. dom C) -> (dom D = dom C -> f e. dom D))
8988impcom 378 . . . . . . . . . . . . . . . . . . . 20 |- ((dom D = dom C /\ (f e. dom C /\ g e. dom C)) -> f e. dom D)
90893adant2 895 . . . . . . . . . . . . . . . . . . 19 |- ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> f e. dom D)
91903ad2ant1 897 . . . . . . . . . . . . . . . . . 18 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> f e. dom D)
9283, 91jca 310 . . . . . . . . . . . . . . . . 17 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> ((gRh) e. dom D /\ f e. dom D))
93923exp 1066 . . . . . . . . . . . . . . . 16 |- ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> ((gRh) e. dom D /\ f e. dom D))))
94933exp 1066 . . . . . . . . . . . . . . 15 |- (dom D = dom C -> (T e. Cat -> ((f e. dom C /\ g e. dom C) -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> ((gRh) e. dom D /\ f e. dom D))))))
959, 94syl 12 . . . . . . . . . . . . . 14 |- (T e. Alg -> (T e. Cat -> ((f e. dom C /\ g e. dom C) -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> ((gRh) e. dom D /\ f e. dom D))))))
961, 8, 953syl 24 . . . . . . . . . . . . 13 |- (T e. Cat -> (T e. Cat -> ((f e. dom C /\ g e. dom C) -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> ((gRh) e. dom D /\ f e. dom D))))))
9796pm2.43i 78 . . . . . . . . . . . 12 |- (T e. Cat -> ((f e. dom C /\ g e. dom C) -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> ((gRh) e. dom D /\ f e. dom D)))))
9897imp41 395 . . . . . . . . . . 11 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> ((gRh) e. dom D /\ f e. dom D))
99 id 73 . . . . . . . . . . . . . 14 |- ((D` f) = (C` g) -> (D` f) = (C` g))
10099eqcoms 1887 . . . . . . . . . . . . 13 |- ((C` g) = (D` f) -> (D` f) = (C` g))
101100ad2antll 443 . . . . . . . . . . . 12 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (D` f) = (C` g))
10235eqcoms 1887 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- (dom D = dom C -> (h e. dom C <-> h e. dom D))
1031023ad2ant1 897 . . . . . . . . . . . . . . . . . . . . . . . 24 |- ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (h e. dom C <-> h e. dom D))
104103biimpa 460 . . . . . . . . . . . . . . . . . . . . . . 23 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> h e. dom D)
10568adantld 426 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (dom D = dom C -> ((f e. dom C /\ g e. dom C) -> g e. dom D))
106105a1d 15 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- (dom D = dom C -> (T e. Cat -> ((f e. dom C /\ g e. dom C) -> g e. dom D)))
1071063imp 1061 . . . . . . . . . . . . . . . . . . . . . . . 24 |- ((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) -> g e. dom D)
108107adantr 425 . . . . . . . . . . . . . . . . . . . . . . 23 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> g e. dom D)
10962, 104, 1083jca 1050 . . . . . . . . . . . . . . . . . . . . . 22 |- (((dom D = dom C /\ T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> (T e. Cat /\ h e. dom D /\ g e. dom D))
1101093exp1 1084 . . . . . . . . . . . . . . . . . . . . 21 |- (dom D = dom C -> (T e. Cat -> ((f e. dom C /\ g e. dom C) -> (h e. dom C -> (T e. Cat /\ h e. dom D /\ g e. dom D)))))
1119, 110syl 12 . . . . . . . . . . . . . . . . . . . 20 |- (T e. Alg -> (T e. Cat -> ((f e. dom C /\ g e. dom C) -> (h e. dom C -> (T e. Cat /\ h e. dom D /\ g e. dom D)))))
1121, 8, 1113syl 24 . . . . . . . . . . . . . . . . . . 19 |- (T e. Cat -> (T e. Cat -> ((f e. dom C /\ g e. dom C) -> (h e. dom C -> (T e. Cat /\ h e. dom D /\ g e. dom D)))))
113112pm2.43i 78 . . . . . . . . . . . . . . . . . 18 |- (T e. Cat -> ((f e. dom C /\ g e. dom C) -> (h e. dom C -> (T e. Cat /\ h e. dom D /\ g e. dom D))))
114113imp31 389 . . . . . . . . . . . . . . . . 17 |- (((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> (T e. Cat /\ h e. dom D /\ g e. dom D))
11515, 2, 3, 5codcmpc 15119 . . . . . . . . . . . . . . . . 17 |- ((T e. Cat /\ h e. dom D /\ g e. dom D) -> ((D` g) = (C` h) -> (C` (gRh)) = (C` g)))
116114, 115syl 12 . . . . . . . . . . . . . . . 16 |- (((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> ((D` g) = (C` h) -> (C` (gRh)) = (C` g)))
117116com12 14 . . . . . . . . . . . . . . 15 |- ((D` g) = (C` h) -> (((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> (C` (gRh)) = (C` g)))
118117eqcoms 1887 . . . . . . . . . . . . . 14 |- ((C` h) = (D` g) -> (((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> (C` (gRh)) = (C` g)))
119118adantr 425 . . . . . . . . . . . . 13 |- (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> (C` (gRh)) = (C` g)))
120119impcom 378 . . . . . . . . . . . 12 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (C` (gRh)) = (C` g))
121101, 120eqtr4d 1928 . . . . . . . . . . 11 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (D` f) = (C` (gRh)))
1222, 3, 5dualcat2lem 15129 . . . . . . . . . . 11 |- ((T e. Cat /\ ((gRh) e. dom D /\ f e. dom D) /\ (D` f) = (C` (gRh))) -> ((gRh){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = (fR(gRh)))
12361, 98, 121, 122syl111anc 1100 . . . . . . . . . 10 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> ((gRh){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = (fR(gRh)))
12460, 123sylan9eqr 1951 . . . . . . . . 9 |- (((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) /\ (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g) = (gRh)) -> ((h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = (fR(gRh)))
12559, 124mpdan 768 . . . . . . . 8 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> ((h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = (fR(gRh)))
1269eqcomd 1889 . . . . . . . . . . . . . . . 16 |- (T e. Alg -> dom C = dom D)
127126eleq2d 1964 . . . . . . . . . . . . . . 15 |- (T e. Alg -> (g e. dom C <-> g e. dom D))
1281, 8, 1273syl 24 . . . . . . . . . . . . . 14 |- (T e. Cat -> (g e. dom C <-> g e. dom D))
129128biimpcd 172 . . . . . . . . . . . . 13 |- (g e. dom C -> (T e. Cat -> g e. dom D))
130129adantl 424 . . . . . . . . . . . 12 |- ((f e. dom C /\ g e. dom C) -> (T e. Cat -> g e. dom D))
131130impcom 378 . . . . . . . . . . 11 |- ((T e. Cat /\ (f e. dom C /\ g e. dom C)) -> g e. dom D)
132131ad2antrr 440 . . . . . . . . . 10 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> g e. dom D)
1331, 8, 1263syl 24 . . . . . . . . . . . . . . 15 |- (T e. Cat -> dom C = dom D)
134133eleq2d 1964 . . . . . . . . . . . . . 14 |- (T e. Cat -> (f e. dom C <-> f e. dom D))
135134biimpcd 172 . . . . . . . . . . . . 13 |- (f e. dom C -> (T e. Cat -> f e. dom D))
136135adantr 425 . . . . . . . . . . . 12 |- ((f e. dom C /\ g e. dom C) -> (T e. Cat -> f e. dom D))
137136impcom 378 . . . . . . . . . . 11 |- ((T e. Cat /\ (f e. dom C /\ g e. dom C)) -> f e. dom D)
138137ad2antrr 440 . . . . . . . . . 10 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> f e. dom D)
139 eqcom 1886 . . . . . . . . . . . 12 |- ((C` g) = (D` f) <-> (D` f) = (C` g))
140139biimpi 168 . . . . . . . . . . 11 |- ((C` g) = (D` f) -> (D` f) = (C` g))
141140ad2antll 443 . . . . . . . . . 10 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (D` f) = (C` g))
1422, 3, 5dualcat2lem 15129 . . . . . . . . . 10 |- ((T e. Cat /\ (g e. dom D /\ f e. dom D) /\ (D` f) = (C` g)) -> (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = (fRg))
14361, 132, 138, 141, 142syl121anc 1105 . . . . . . . . 9 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = (fRg))
144 opreq2 4890 . . . . . . . . . 10 |- ((g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = (fRg) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f)) = (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (fRg)))
145133eleq2d 1964 . . . . . . . . . . . . . . 15 |- (T e. Cat -> (h e. dom C <-> h e. dom D))
146145biimpd 170 . . . . . . . . . . . . . 14 |- (T e. Cat -> (h e. dom C -> h e. dom D))
147146adantr 425 . . . . . . . . . . . . 13 |- ((T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (h e. dom C -> h e. dom D))
148147imp 377 . . . . . . . . . . . 12 |- (((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> h e. dom D)
149148adantr 425 . . . . . . . . . . 11 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> h e. dom D)
150 simpl 346 . . . . . . . . . . . . . 14 |- ((T e. Cat /\ (f e. dom C /\ g e. dom C)) -> T e. Cat )
151150, 131, 1373jca 1050 . . . . . . . . . . . . 13 |- ((T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (T e. Cat /\ g e. dom D /\ f e. dom D))
152151ad2antrr 440 . . . . . . . . . . . 12 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (T e. Cat /\ g e. dom D /\ f e. dom D))
15376, 2, 3, 5cmpmorp 15126 . . . . . . . . . . . 12 |- ((T e. Cat /\ g e. dom D /\ f e. dom D) -> ((D` f) = (C` g) -> (fRg) e. dom D))
154152, 141, 153sylc 83 . . . . . . . . . . 11 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (fRg) e. dom D)
15515, 2, 3, 5domcmpc 15118 . . . . . . . . . . . . . 14 |- ((T e. Cat /\ g e. dom D /\ f e. dom D) -> ((D` f) = (C` g) -> (D` (fRg)) = (D` g)))
156155imp 377 . . . . . . . . . . . . 13 |- (((T e. Cat /\ g e. dom D /\ f e. dom D) /\ (D` f) = (C` g)) -> (D` (fRg)) = (D` g))
157 simpll 448 . . . . . . . . . . . . . 14 |- (((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> T e. Cat )
158131adantr 425 . . . . . . . . . . . . . 14 |- (((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> g e. dom D)
159137adantr 425 . . . . . . . . . . . . . 14 |- (((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> f e. dom D)
160157, 158, 1593jca 1050 . . . . . . . . . . . . 13 |- (((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) -> (T e. Cat /\ g e. dom D /\ f e. dom D))
161140adantl 424 . . . . . . . . . . . . 13 |- (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (D` f) = (C` g))
162156, 160, 161syl2an 503 . . . . . . . . . . . 12 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (D` (fRg)) = (D` g))
16348ad2antrl 442 . . . . . . . . . . . 12 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (D` g) = (C` h))
164162, 163eqtrd 1925 . . . . . . . . . . 11 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (D` (fRg)) = (C` h))
1652, 3, 5dualcat2lem 15129 . . . . . . . . . . 11 |- ((T e. Cat /\ (h e. dom D /\ (fRg) e. dom D) /\ (D` (fRg)) = (C` h)) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (fRg)) = ((fRg)Rh))
16661, 149, 154, 164, 165syl121anc 1105 . . . . . . . . . 10 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (fRg)) = ((fRg)Rh))
167144, 166sylan9eqr 1951 . . . . . . . . 9 |- (((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) /\ (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = (fRg)) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f)) = ((fRg)Rh))
168143, 167mpdan 768 . . . . . . . 8 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f)) = ((fRg)Rh))
16933, 125, 1683eqtr4rd 1939 . . . . . . 7 |- ((((T e. Cat /\ (f e. dom C /\ g e. dom C)) /\ h e. dom C) /\ ((C` h) = (D` g) /\ (C` g) = (D` f))) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f)) = ((h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f))
170169exp31 407 . . . . . 6 |- ((T e. Cat /\ (f e. dom C /\ g e. dom C)) -> (h e. dom C -> (((C` h) = (D` g) /\ (C` g) = (D` f)) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f)) = ((h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f))))
171170r19.21aiv 2175 . . . . 5 |- ((T e. Cat /\ (f e. dom C /\ g e. dom C)) -> A.h e. dom C(((C` h) = (D` g) /\ (C` g) = (D` f)) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f)) = ((h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f)))
172171ex 402 . . . 4 |- (T e. Cat -> ((f e. dom C /\ g e. dom C) -> A.h e. dom C(((C` h) = (D` g) /\ (C` g) = (D` f)) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f)) = ((h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f))))
173172r19.21aivv 2183 . . 3 |- (T e. Cat -> A.f e. dom CA.g e. dom CA.h e. dom C(((C` h) = (D` g) /\ (C` g) = (D` f)) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f)) = ((h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f)))
174 simpll 448 . . . . . . . 8 |- (((T e. Cat /\ (a e. dom J /\ f e. dom C)) /\ (D` f) = a) -> T e. Cat )
1754dmeqi 4158 . . . . . . . . . . 11 |- dom J = dom (id` T)
17676, 175, 4jdmo 15125 . . . . . . . . . 10 |- ((T e. Cat /\ a e. dom J) -> (J` a) e. dom D)
177176adantrr 431 . . . . . . . . 9 |- ((T e. Cat /\ (a e. dom J /\ f e. dom C)) -> (J` a) e. dom D)
178177adantr 425 . . . . . . . 8 |- (((T e. Cat /\ (a e. dom J /\ f e. dom C)) /\ (D` f) = a) -> (J` a) e. dom D)
179135adantl 424 . . . . . . . . . 10 |- ((a e. dom J /\ f e. dom C) -> (T e. Cat -> f e. dom D))
180179impcom 378 . . . . . . . . 9 |- ((T e. Cat /\ (a e. dom J /\ f e. dom C)) -> f e. dom D)
181180adantr 425 . . . . . . . 8 |- (((T e. Cat /\ (a e. dom J /\ f e. dom C)) /\ (D` f) = a) -> f e. dom D)
182 simpr 350 . . . . . . . . 9 |- (((T e. Cat /\ (a e. dom J /\ f e. dom C)) /\ (D` f) = a) -> (D` f) = a)
183 simplrl 454 . . . . . . . . . . 11 |- (((T e. Cat /\ (a e. dom J /\ f e. dom C)) /\ (D` f) = a) -> a e. dom J)
184 eqid 1884 . . . . . . . . . . . 12 |- dom J = dom J
185184, 2, 4, 3idosc 15116 . . . . . . . . . . 11 |- ((T e. Cat /\ a e. dom J) -> ((D` (J` a)) = a /\ (C` (J` a)) = a))
186174, 183, 185syl11anc 524 . . . . . . . . . 10 |- (((T e. Cat /\ (a e. dom J /\ f e. dom C)) /\ (D` f) = a) -> ((D` (J` a)) = a /\ (C` (J` a)) = a))
187186simprd 352 . . . . . . . . 9 |- (((T e. Cat /\ (a e. dom J /\ f e. dom C)) /\ (D` f) = a) -> (C` (J` a)) = a)
188182, 187eqtr4d 1928 . . . . . . . 8 |- (((T e. Cat /\ (a e. dom J /\ f e. dom C)) /\ (D` f) = a) -> (D` f) = (C` (J` a)))
1892, 3, 5dualcat2lem 15129 . . . . . . . 8 |- ((T e. Cat /\ ((J` a) e. dom D /\ f e. dom D) /\ (D` f) = (C` (J` a))) -> ((J` a){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = (fR(J` a)))
190174, 178, 181, 188, 189syl121anc 1105 . . . . . . 7 |- (((T e. Cat /\ (a e. dom J /\ f e. dom C)) /\ (D` f) = a) -> ((J` a){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = (fR(J` a)))
191 simpl 346 . . . . . . . . 9 |- ((T e. Cat /\ (a e. dom J /\ f e. dom C)) -> T e. Cat )
192 simprl 450 . . . . . . . . 9 |- ((T e. Cat /\ (a e. dom J /\ f e. dom C)) -> a e. dom J)
1931, 8syl 12 . . . . . . . . . . . . . . 15 |- (T e. Cat -> T e. Alg )
194193, 9syl 12 . . . . . . . . . . . . . 14 |- (T e. Cat -> dom D = dom C)
195194eqcomd 1889 . . . . . . . . . . . . 13 |- (T e. Cat -> dom C = dom D)
196195eleq2d 1964 . . . . . . . . . . . 12 |- (T e. Cat -> (f e. dom C <-> f e. dom D))
197196biimpcd 172 . . . . . . . . . . 11 |- (f e. dom C -> (T e. Cat -> f e. dom D))
198197adantl 424 . . . . . . . . . 10 |- ((a e. dom J /\ f e. dom C) -> (T e. Cat -> f e. dom D))
199198impcom 378 . . . . . . . . 9 |- ((T e. Cat /\ (a e. dom J /\ f e. dom C)) -> f e. dom D)
20015, 2, 184, 4, 5cmpidb 15122 . . . . . . . . 9 |- ((T e. Cat /\ a e. dom J /\ f e. dom D) -> ((D` f) = a -> (fR(J` a)) = f))
201191, 192, 199, 200syl111anc 1100 . . . . . . . 8 |- ((T e. Cat /\ (a e. dom J /\ f e. dom C)) -> ((D` f) = a -> (fR(J` a)) = f))
202201imp 377 . . . . . . 7 |- (((T e. Cat /\ (a e. dom J /\ f e. dom C)) /\ (D` f) = a) -> (fR(J` a)) = f)
203190, 202eqtrd 1925 . . . . . 6 |- (((T e. Cat /\ (a e. dom J /\ f e. dom C)) /\ (D` f) = a) -> ((J` a){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = f)
204203exp31 407 . . . . 5 |- (T e. Cat -> ((a e. dom J /\ f e. dom C) -> ((D` f) = a -> ((J` a){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = f)))
205204r19.21aivv 2183 . . . 4 |- (T e. Cat -> A.a e. dom JA.f e. dom C((D` f) = a -> ((J` a){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = f))
20615, 2, 184, 4, 5, 3cmpida 15121 . . . . . . 7 |- ((T e. Cat /\ a e. dom J /\ f e. dom D) -> ((C` f) = a -> ((J` a)Rf) = f))
2072063expib 1070 . . . . . 6 |- (T e. Cat -> ((a e. dom J /\ f e. dom D) -> ((C` f) = a -> ((J` a)Rf) = f)))
208134anbi2d 678 . . . . . . . 8 |- (T e. Cat -> ((a e. dom J /\ f e. dom C) <-> (a e. dom J /\ f e. dom D)))
209208imbi1d 675 . . . . . . 7 |- (T e. Cat -> (((a e. dom J /\ f e. dom C) -> ((C` f) = a -> (f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = f)) <-> ((a e. dom J /\ f e. dom D) -> ((C` f) = a -> (f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = f))))
210 simpll 448 . . . . . . . . . . 11 |- (((T e. Cat /\ (a e. dom J /\ f e. dom D)) /\ (C` f) = a) -> T e. Cat )
211 simplrr 455 . . . . . . . . . . 11 |- (((T e. Cat /\ (a e. dom J /\ f e. dom D)) /\ (C` f) = a) -> f e. dom D)
212176adantrr 431 . . . . . . . . . . . 12 |- ((T e. Cat /\ (a e. dom J /\ f e. dom D)) -> (J` a) e. dom D)
213212adantr 425 . . . . . . . . . . 11 |- (((T e. Cat /\ (a e. dom J /\ f e. dom D)) /\ (C` f) = a) -> (J` a) e. dom D)
214 eqtr3 1907 . . . . . . . . . . . 12 |- (((D` (J` a)) = a /\ (C` f) = a) -> (D` (J` a)) = (C` f))
215185simplld 348 . . . . . . . . . . . . 13 |- ((T e. Cat /\ a e. dom J) -> (D` (J` a)) = a)
216215adantrr 431 . . . . . . . . . . . 12 |- ((T e. Cat /\ (a e. dom J /\ f e. dom D)) -> (D` (J` a)) = a)
217214, 216sylan 497 . . . . . . . . . . 11 |- (((T e. Cat /\ (a e. dom J /\ f e. dom D)) /\ (C` f) = a) -> (D` (J` a)) = (C` f))
2182, 3, 5dualcat2lem 15129 . . . . . . . . . . 11 |- ((T e. Cat /\ (f e. dom D /\ (J` a) e. dom D) /\ (D` (J` a)) = (C` f)) -> (f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = ((J` a)Rf))
219210, 211, 213, 217, 218syl121anc 1105 . . . . . . . . . 10 |- (((T e. Cat /\ (a e. dom J /\ f e. dom D)) /\ (C` f) = a) -> (f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = ((J` a)Rf))
220219eqeq1d 1892 . . . . . . . . 9 |- (((T e. Cat /\ (a e. dom J /\ f e. dom D)) /\ (C` f) = a) -> ((f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = f <-> ((J` a)Rf) = f))
221220pm5.74da 646 . . . . . . . 8 |- ((T e. Cat /\ (a e. dom J /\ f e. dom D)) -> (((C` f) = a -> (f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = f) <-> ((C` f) = a -> ((J` a)Rf) = f)))
222221pm5.74da 646 . . . . . . 7 |- (T e. Cat -> (((a e. dom J /\ f e. dom D) -> ((C` f) = a -> (f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = f)) <-> ((a e. dom J /\ f e. dom D) -> ((C` f) = a -> ((J` a)Rf) = f))))
223209, 222bitrd 587 . . . . . 6 |- (T e. Cat -> (((a e. dom J /\ f e. dom C) -> ((C` f) = a -> (f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = f)) <-> ((a e. dom J /\ f e. dom D) -> ((C` f) = a -> ((J` a)Rf) = f))))
224207, 223mpbird 213 . . . . 5 |- (T e. Cat -> ((a e. dom J /\ f e. dom C) -> ((C` f) = a -> (f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = f)))
225224r19.21aivv 2183 . . . 4 |- (T e. Cat -> A.a e. dom JA.f e. dom C((C` f) = a -> (f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = f))
226205, 225jca 310 . . 3 |- (T e. Cat -> (A.a e. dom JA.f e. dom C((D` f) = a -> ((J` a){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = f) /\ A.a e. dom JA.f e. dom C((C` f) = a -> (f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = f)))
2277, 173, 226jca31 311 . 2 |- (T e. Cat -> ((<.<.C, D>., <.J, {<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}>.>. e. Ded /\ A.f e. dom CA.g e. dom CA.h e. dom C(((C` h) = (D` g) /\ (C` g) = (D` f)) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f)) = ((h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f))) /\ (A.a e. dom JA.f e. dom C((D` f) = a -> ((J` a){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = f) /\ A.a e. dom JA.f e. dom C((C` f) = a -> (f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = f))))
228 eqid 1884 . . . 4 |- dom C = dom C
229228, 184iscat 15101 . . 3 |- (((C e. _V /\ D e. _V /\ J e. _V) /\ {<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} e. _V) -> (<.<.C, D>., <.J, {<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}>.>. e. Cat <-> ((<.<.C, D>., <.J, {<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}>.>. e. Ded /\ A.f e. dom CA.g e. dom CA.h e. dom C(((C` h) = (D` g) /\ (C` g) = (D` f)) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f)) = ((h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f))) /\ (A.a e. dom JA.f e. dom C((D` f) = a -> ((J` a){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = f) /\ A.a e. dom JA.f e. dom C((C` f) = a -> (f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = f)))))
2303eleq1i 1960 . . . . 5 |- (C e. _V <-> (cod` T) e. _V)
2312eleq1i 1960 . . . . 5 |- (D e. _V <-> (dom` T) e. _V)
2324eleq1i 1960 . . . . 5 |- (J e. _V <-> (id` T) e. _V)
233230, 231, 2323anbi123i 1056 . . . 4 |- ((C e. _V /\ D e. _V /\ J e. _V) <-> ((cod` T) e. _V /\ (dom` T) e. _V /\ (id` T) e. _V))
234 fvex 4689 . . . 4 |- (cod` T) e. _V
235 fvex 4689 . . . 4 |- (dom` T) e. _V
236 fvex 4689 . . . 4 |- (id` T) e. _V
237233, 234, 235, 236mpbir3an 1052 . . 3 |- (C e. _V /\ D e. _V /\ J e. _V)
238 ssexg 3457 . . . 4 |- (({<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} C_ {<.<.x, y>., z>. | (<.y, x>. e. (dom D X. dom D) /\ z = (yRx))} /\ {<.<.x, y>., z>. | (<.y, x>. e. (dom D X. dom D) /\ z = (yRx))} e. _V) -> {<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} e. _V)
23915, 2, 5cmppfc 15115 . . . . . . . 8 |- (T e. Cat -> (Fun R /\ dom R C_ (dom D X. dom D) /\ ran R C_ dom D))
240239simp2d 889 . . . . . . 7 |- (T e. Cat -> dom R C_ (dom D X. dom D))
241240sseld 2619 . . . . . 6 |- (T e. Cat -> (<.y, x>. e. dom R -> <.y, x>. e. (dom D X. dom D)))
242241anim1d 619 . . . . 5 |- (T e. Cat -> ((<.y, x>. e. dom R /\ z = (yRx)) -> (<.y, x>. e. (dom D X. dom D) /\ z = (yRx))))
243242ssoprab2g 14333 . . . 4 |- (T e. Cat -> {<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} C_ {<.<.x, y>., z>. | (<.y, x>. e. (dom D X. dom D) /\ z = (yRx))})
244235dmex 4208 . . . . . . 7 |- dom (dom` T) e. _V
24576, 244eqeltri 1967 . . . . . 6 |- dom D e. _V
246 eqid 1884 . . . . . 6 |- {<.<.x, y>., z>. | ((x e. dom D /\ y e. dom D) /\ z = (yRx))} = {<.<.x, y>., z>. | ((x e. dom D /\ y e. dom D) /\ z = (yRx))}
247245, 245, 246oprabex2 4950 . . . . 5 |- {<.<.x, y>., z>. | ((x e. dom D /\ y e. dom D) /\ z = (yRx))} e. _V
248 cnvxp 4332 . . . . . . . . . . . 12 |- `'(dom D X. dom D) = (dom D X. dom D)
249248eqcomi 1888 . . . . . . . . . . 11 |- (dom D X. dom D) = `'(dom D X. dom D)
250249eleq2i 1961 . . . . . . . . . 10 |- (<.y, x>. e. (dom D X. dom D) <-> <.y, x>. e. `'(dom D X. dom D))
251 visset 2295 . . . . . . . . . . 11 |- y e. _V
252 visset 2295 . . . . . . . . . . 11 |- x e. _V
253251, 252opelcnv 4143 . . . . . . . . . 10 |- (<.y, x>. e. `'(dom D X. dom D) <-> <.x, y>. e. (dom D X. dom D))
254250, 253bitri 190 . . . . . . . . 9 |- (<.y, x>. e. (dom D X. dom D) <-> <.x, y>. e. (dom D X. dom D))
255254anbi1i 539 . . . . . . . 8 |- ((<.y, x>. e. (dom D X. dom D) /\ z = (yRx)) <-> (<.x, y>. e. (dom D X. dom D) /\ z = (yRx)))
256255oprabbii 4923 . . . . . . 7 |- {<.<.x, y>., z>. | (<.y, x>. e. (dom D X. dom D) /\ z = (yRx))} = {<.<.x, y>., z>. | (<.x, y>. e. (dom D X. dom D) /\ z = (yRx))}
257256eleq1i 1960 . . . . . 6 |- ({<.<.x, y>., z>. | (<.y, x>. e. (dom D X. dom D) /\ z = (yRx))} e. _V <-> {<.<.x, y>., z>. | (<.x, y>. e. (dom D X. dom D) /\ z = (yRx))} e. _V)
258 twsvbdop 14332 . . . . . . 7 |- {<.<.x, y>., z>. | (<.x, y>. e. (dom D X. dom D) /\ z = (yRx))} = {<.<.x, y>., z>. | ((x e. dom D /\ y e. dom D) /\ z = (yRx))}
259258eleq1i 1960 . . . . . 6 |- ({<.<.x, y>., z>. | (<.x, y>. e. (dom D X. dom D) /\ z = (yRx))} e. _V <-> {<.<.x, y>., z>. | ((x e. dom D /\ y e. dom D) /\ z = (yRx))} e. _V)
260257, 259bitri 190 . . . . 5 |- ({<.<.x, y>., z>. | (<.y, x>. e. (dom D X. dom D) /\ z = (yRx))} e. _V <-> {<.<.x, y>., z>. | ((x e. dom D /\ y e. dom D) /\ z = (yRx))} e. _V)
261247, 260mpbir 207 . . . 4 |- {<.<.x, y>., z>. | (<.y, x>. e. (dom D X. dom D) /\ z = (yRx))} e. _V
262238, 243, 261sylancl 525 . . 3 |- (T e. Cat -> {<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} e. _V)
263229, 237, 262sylancr 526 . 2 |- (T e. Cat -> (<.<.C, D>., <.J, {<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}>.>. e. Cat <-> ((<.<.C, D>., <.J, {<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}>.>. e. Ded /\ A.f e. dom CA.g e. dom CA.h e. dom C(((C` h) = (D` g) /\ (C` g) = (D` f)) -> (h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (g{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f)) = ((h{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}g){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f))) /\ (A.a e. dom JA.f e. dom C((D` f) = a -> ((J` a){<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}f) = f) /\ A.a e. dom JA.f e. dom C((C` f) = a -> (f{<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))} (J` a)) = f)))))
264227, 263mpbird 213 1 |- (T e. Cat -> <.<.C, D>., <.J, {<.<.x, y>., z>. | (<.y, x>. e. dom R /\ z = (yRx))}>.>. e. Cat )
Colors of variables: wff set class
Syntax hints:   -> wi 3   <-> wb 163   /\ wa 240   /\ w3a 858   = wceq 1298   e. wcel 1300  A.wral 2105  _Vcvv 2292   C_ wss 2593  <.cop 3046   X. cxp 3984  `'ccnv 3985  dom cdm 3986  ran crn 3987  Fun wfun 3992  ` cfv 3998  (class class class)co 4884  {copab2 4885   Alg calg 15058  domcdom_ 15059  codccod_ 15060  idcid_ 15061  oco_ 15062   Ded cded 15081   Cat ccat 15099
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 1304  ax-gen 1305  ax-8 1306  ax-9 1307  ax-10 1308  ax-11 1309  ax-12 1310  ax-13 1311  ax-14 1312  ax-17 1317  ax-4 1319  ax-5o 1321  ax-6o 1324  ax-9o 1481  ax-10o 1500  ax-16 1580  ax-11o 1588  ax-ext 1865  ax-rep 3428  ax-sep 3438  ax-nul 3445  ax-pow 3481  ax-pr 3524  ax-un 3790
This theorem depends on definitions:  df-bi 164  df-or 241  df-an 242  df-3an 860  df-ex 1327  df-sb 1536  df-eu 1775  df-mo 1776  df-clab 1872  df-cleq 1877  df-clel 1880  df-ne 2019  df-ral 2109  df-rex 2110  df-v 2294  df-sbc 2454  df-csb 2541  df-dif 2597  df-un 2600  df-in 2603  df-ss 2605  df-nul 2876  df-pw 3035  df-sn 3049  df-pr 3050  df-op 3053  df-uni 3178  df-int 3215  df-br 3339  df-opab 3396  df-id 3586  df-xp 4000  df-rel 4001  df-cnv 4002  df-co 4003  df-dm 4004  df-rn 4005  df-res 4006  df-ima 4007  df-fun 4008  df-fn 4009  df-f 4010  df-fo 4012  df-fv 4014  df-opr 4886  df-oprab 4887  df-1st 5020  df-2nd 5021  df-alg 15063  df-doma 15064  df-coda 15065  df-ida 15066  df-cmpa 15067  df-ded 15082  df-cat 15100
Copyright terms: Public domain