Metamath Proof Explorer


Theorem curf2ndf

Description: As shown in diagval , the currying of the first projection is the diagonal functor. On the other hand, the currying of the second projection is x e. C |-> ( y e. D |-> y ) , which is a constant functor of the identity functor at D . (Contributed by Mario Carneiro, 15-Jan-2017)

Ref Expression
Hypotheses curf2ndf.q Q=DFuncCatD
curf2ndf.c φCCat
curf2ndf.d φDCat
Assertion curf2ndf φCDcurryFC2ndFD=1stQΔfuncCidfuncD

Proof

Step Hyp Ref Expression
1 curf2ndf.q Q=DFuncCatD
2 curf2ndf.c φCCat
3 curf2ndf.d φDCat
4 df-ov x1stC2ndFDy=1stC2ndFDxy
5 eqid C×cD=C×cD
6 eqid BaseC=BaseC
7 eqid BaseD=BaseD
8 5 6 7 xpcbas BaseC×BaseD=BaseC×cD
9 eqid HomC×cD=HomC×cD
10 2 ad2antrr φxBaseCyBaseDCCat
11 3 ad2antrr φxBaseCyBaseDDCat
12 eqid C2ndFD=C2ndFD
13 opelxpi xBaseCyBaseDxyBaseC×BaseD
14 13 adantll φxBaseCyBaseDxyBaseC×BaseD
15 5 8 9 10 11 12 14 2ndf1 φxBaseCyBaseD1stC2ndFDxy=2ndxy
16 vex xV
17 vex yV
18 16 17 op2nd 2ndxy=y
19 15 18 eqtrdi φxBaseCyBaseD1stC2ndFDxy=y
20 4 19 eqtrid φxBaseCyBaseDx1stC2ndFDy=y
21 20 mpteq2dva φxBaseCyBaseDx1stC2ndFDy=yBaseDy
22 mptresid IBaseD=yBaseDy
23 21 22 eqtr4di φxBaseCyBaseDx1stC2ndFDy=IBaseD
24 df-ov IdCxxy2ndC2ndFDxzf=xy2ndC2ndFDxzIdCxf
25 10 ad2antrr φxBaseCyBaseDzBaseDfyHomDzCCat
26 11 ad2antrr φxBaseCyBaseDzBaseDfyHomDzDCat
27 14 ad2antrr φxBaseCyBaseDzBaseDfyHomDzxyBaseC×BaseD
28 simp-4r φxBaseCyBaseDzBaseDfyHomDzxBaseC
29 simplr φxBaseCyBaseDzBaseDfyHomDzzBaseD
30 28 29 opelxpd φxBaseCyBaseDzBaseDfyHomDzxzBaseC×BaseD
31 5 8 9 25 26 12 27 30 2ndf2 φxBaseCyBaseDzBaseDfyHomDzxy2ndC2ndFDxz=2ndxyHomC×cDxz
32 31 fveq1d φxBaseCyBaseDzBaseDfyHomDzxy2ndC2ndFDxzIdCxf=2ndxyHomC×cDxzIdCxf
33 24 32 eqtrid φxBaseCyBaseDzBaseDfyHomDzIdCxxy2ndC2ndFDxzf=2ndxyHomC×cDxzIdCxf
34 eqid HomC=HomC
35 eqid IdC=IdC
36 2 adantr φxBaseCCCat
37 simpr φxBaseCxBaseC
38 6 34 35 36 37 catidcl φxBaseCIdCxxHomCx
39 38 ad5ant12 φxBaseCyBaseDzBaseDfyHomDzIdCxxHomCx
40 simpr φxBaseCyBaseDzBaseDfyHomDzfyHomDz
41 39 40 opelxpd φxBaseCyBaseDzBaseDfyHomDzIdCxfxHomCx×yHomDz
42 eqid HomD=HomD
43 simpllr φxBaseCyBaseDzBaseDfyHomDzyBaseD
44 5 6 7 34 42 28 43 28 29 9 xpchom2 φxBaseCyBaseDzBaseDfyHomDzxyHomC×cDxz=xHomCx×yHomDz
45 41 44 eleqtrrd φxBaseCyBaseDzBaseDfyHomDzIdCxfxyHomC×cDxz
46 45 fvresd φxBaseCyBaseDzBaseDfyHomDz2ndxyHomC×cDxzIdCxf=2ndIdCxf
47 fvex IdCxV
48 vex fV
49 47 48 op2nd 2ndIdCxf=f
50 46 49 eqtrdi φxBaseCyBaseDzBaseDfyHomDz2ndxyHomC×cDxzIdCxf=f
51 33 50 eqtrd φxBaseCyBaseDzBaseDfyHomDzIdCxxy2ndC2ndFDxzf=f
52 51 mpteq2dva φxBaseCyBaseDzBaseDfyHomDzIdCxxy2ndC2ndFDxzf=fyHomDzf
53 mptresid IyHomDz=fyHomDzf
54 52 53 eqtr4di φxBaseCyBaseDzBaseDfyHomDzIdCxxy2ndC2ndFDxzf=IyHomDz
55 54 3impa φxBaseCyBaseDzBaseDfyHomDzIdCxxy2ndC2ndFDxzf=IyHomDz
56 55 mpoeq3dva φxBaseCyBaseD,zBaseDfyHomDzIdCxxy2ndC2ndFDxzf=yBaseD,zBaseDIyHomDz
57 fveq2 u=yzHomDu=HomDyz
58 df-ov yHomDz=HomDyz
59 57 58 eqtr4di u=yzHomDu=yHomDz
60 59 reseq2d u=yzIHomDu=IyHomDz
61 60 mpompt uBaseD×BaseDIHomDu=yBaseD,zBaseDIyHomDz
62 56 61 eqtr4di φxBaseCyBaseD,zBaseDfyHomDzIdCxxy2ndC2ndFDxzf=uBaseD×BaseDIHomDu
63 23 62 opeq12d φxBaseCyBaseDx1stC2ndFDyyBaseD,zBaseDfyHomDzIdCxxy2ndC2ndFDxzf=IBaseDuBaseD×BaseDIHomDu
64 eqid CDcurryFC2ndFD=CDcurryFC2ndFD
65 3 adantr φxBaseCDCat
66 5 2 3 12 2ndfcl φC2ndFDC×cDFuncD
67 66 adantr φxBaseCC2ndFDC×cDFuncD
68 eqid 1stCDcurryFC2ndFDx=1stCDcurryFC2ndFDx
69 64 6 36 65 67 7 37 68 42 35 curf1 φxBaseC1stCDcurryFC2ndFDx=yBaseDx1stC2ndFDyyBaseD,zBaseDfyHomDzIdCxxy2ndC2ndFDxzf
70 eqid idfuncD=idfuncD
71 70 7 65 42 idfuval φxBaseCidfuncD=IBaseDuBaseD×BaseDIHomDu
72 63 69 71 3eqtr4d φxBaseC1stCDcurryFC2ndFDx=idfuncD
73 eqid QΔfuncC=QΔfuncC
74 1 3 3 fuccat φQCat
75 74 adantr φxBaseCQCat
76 1 fucbas DFuncD=BaseQ
77 70 idfucl DCatidfuncDDFuncD
78 3 77 syl φidfuncDDFuncD
79 78 adantr φxBaseCidfuncDDFuncD
80 eqid 1stQΔfuncCidfuncD=1stQΔfuncCidfuncD
81 73 75 36 76 79 80 6 37 diag11 φxBaseC1st1stQΔfuncCidfuncDx=idfuncD
82 72 81 eqtr4d φxBaseC1stCDcurryFC2ndFDx=1st1stQΔfuncCidfuncDx
83 82 mpteq2dva φxBaseC1stCDcurryFC2ndFDx=xBaseC1st1stQΔfuncCidfuncDx
84 relfunc RelCFuncQ
85 64 1 2 3 66 curfcl φCDcurryFC2ndFDCFuncQ
86 1st2ndbr RelCFuncQCDcurryFC2ndFDCFuncQ1stCDcurryFC2ndFDCFuncQ2ndCDcurryFC2ndFD
87 84 85 86 sylancr φ1stCDcurryFC2ndFDCFuncQ2ndCDcurryFC2ndFD
88 6 76 87 funcf1 φ1stCDcurryFC2ndFD:BaseCDFuncD
89 88 feqmptd φ1stCDcurryFC2ndFD=xBaseC1stCDcurryFC2ndFDx
90 73 74 2 76 78 80 diag1cl φ1stQΔfuncCidfuncDCFuncQ
91 1st2ndbr RelCFuncQ1stQΔfuncCidfuncDCFuncQ1st1stQΔfuncCidfuncDCFuncQ2nd1stQΔfuncCidfuncD
92 84 90 91 sylancr φ1st1stQΔfuncCidfuncDCFuncQ2nd1stQΔfuncCidfuncD
93 6 76 92 funcf1 φ1st1stQΔfuncCidfuncD:BaseCDFuncD
94 93 feqmptd φ1st1stQΔfuncCidfuncD=xBaseC1st1stQΔfuncCidfuncDx
95 83 89 94 3eqtr4d φ1stCDcurryFC2ndFD=1st1stQΔfuncCidfuncD
96 3 ad2antrr φxBaseCyBaseCfxHomCyDCat
97 70 7 96 idfu1st φxBaseCyBaseCfxHomCy1stidfuncD=IBaseD
98 97 coeq2d φxBaseCyBaseCfxHomCyIdD1stidfuncD=IdDIBaseD
99 eqid IdQ=IdQ
100 eqid IdD=IdD
101 78 ad2antrr φxBaseCyBaseCfxHomCyidfuncDDFuncD
102 1 99 100 101 fucid φxBaseCyBaseCfxHomCyIdQidfuncD=IdD1stidfuncD
103 7 100 cidfn DCatIdDFnBaseD
104 96 103 syl φxBaseCyBaseCfxHomCyIdDFnBaseD
105 dffn2 IdDFnBaseDIdD:BaseDV
106 104 105 sylib φxBaseCyBaseCfxHomCyIdD:BaseDV
107 106 feqmptd φxBaseCyBaseCfxHomCyIdD=zBaseDIdDz
108 fcoi1 IdD:BaseDVIdDIBaseD=IdD
109 106 108 syl φxBaseCyBaseCfxHomCyIdDIBaseD=IdD
110 2 ad2antrr φxBaseCyBaseCfxHomCyCCat
111 110 adantr φxBaseCyBaseCfxHomCyzBaseDCCat
112 96 adantr φxBaseCyBaseCfxHomCyzBaseDDCat
113 simplrl φxBaseCyBaseCfxHomCyxBaseC
114 opelxpi xBaseCzBaseDxzBaseC×BaseD
115 113 114 sylan φxBaseCyBaseCfxHomCyzBaseDxzBaseC×BaseD
116 simplrr φxBaseCyBaseCfxHomCyyBaseC
117 opelxpi yBaseCzBaseDyzBaseC×BaseD
118 116 117 sylan φxBaseCyBaseCfxHomCyzBaseDyzBaseC×BaseD
119 5 8 9 111 112 12 115 118 2ndf2 φxBaseCyBaseCfxHomCyzBaseDxz2ndC2ndFDyz=2ndxzHomC×cDyz
120 119 oveqd φxBaseCyBaseCfxHomCyzBaseDfxz2ndC2ndFDyzIdDz=f2ndxzHomC×cDyzIdDz
121 df-ov f2ndxzHomC×cDyzIdDz=2ndxzHomC×cDyzfIdDz
122 simplr φxBaseCyBaseCfxHomCyzBaseDfxHomCy
123 simpr φxBaseCyBaseCfxHomCyzBaseDzBaseD
124 7 42 100 112 123 catidcl φxBaseCyBaseCfxHomCyzBaseDIdDzzHomDz
125 122 124 opelxpd φxBaseCyBaseCfxHomCyzBaseDfIdDzxHomCy×zHomDz
126 113 adantr φxBaseCyBaseCfxHomCyzBaseDxBaseC
127 116 adantr φxBaseCyBaseCfxHomCyzBaseDyBaseC
128 5 6 7 34 42 126 123 127 123 9 xpchom2 φxBaseCyBaseCfxHomCyzBaseDxzHomC×cDyz=xHomCy×zHomDz
129 125 128 eleqtrrd φxBaseCyBaseCfxHomCyzBaseDfIdDzxzHomC×cDyz
130 129 fvresd φxBaseCyBaseCfxHomCyzBaseD2ndxzHomC×cDyzfIdDz=2ndfIdDz
131 121 130 eqtrid φxBaseCyBaseCfxHomCyzBaseDf2ndxzHomC×cDyzIdDz=2ndfIdDz
132 fvex IdDzV
133 48 132 op2nd 2ndfIdDz=IdDz
134 131 133 eqtrdi φxBaseCyBaseCfxHomCyzBaseDf2ndxzHomC×cDyzIdDz=IdDz
135 120 134 eqtrd φxBaseCyBaseCfxHomCyzBaseDfxz2ndC2ndFDyzIdDz=IdDz
136 135 mpteq2dva φxBaseCyBaseCfxHomCyzBaseDfxz2ndC2ndFDyzIdDz=zBaseDIdDz
137 107 109 136 3eqtr4rd φxBaseCyBaseCfxHomCyzBaseDfxz2ndC2ndFDyzIdDz=IdDIBaseD
138 98 102 137 3eqtr4rd φxBaseCyBaseCfxHomCyzBaseDfxz2ndC2ndFDyzIdDz=IdQidfuncD
139 66 ad2antrr φxBaseCyBaseCfxHomCyC2ndFDC×cDFuncD
140 simpr φxBaseCyBaseCfxHomCyfxHomCy
141 eqid x2ndCDcurryFC2ndFDyf=x2ndCDcurryFC2ndFDyf
142 64 6 110 96 139 7 34 100 113 116 140 141 curf2 φxBaseCyBaseCfxHomCyx2ndCDcurryFC2ndFDyf=zBaseDfxz2ndC2ndFDyzIdDz
143 74 ad2antrr φxBaseCyBaseCfxHomCyQCat
144 73 143 110 76 101 80 6 113 34 99 116 140 diag12 φxBaseCyBaseCfxHomCyx2nd1stQΔfuncCidfuncDyf=IdQidfuncD
145 138 142 144 3eqtr4d φxBaseCyBaseCfxHomCyx2ndCDcurryFC2ndFDyf=x2nd1stQΔfuncCidfuncDyf
146 145 mpteq2dva φxBaseCyBaseCfxHomCyx2ndCDcurryFC2ndFDyf=fxHomCyx2nd1stQΔfuncCidfuncDyf
147 eqid DNatD=DNatD
148 1 147 fuchom DNatD=HomQ
149 87 adantr φxBaseCyBaseC1stCDcurryFC2ndFDCFuncQ2ndCDcurryFC2ndFD
150 simprl φxBaseCyBaseCxBaseC
151 simprr φxBaseCyBaseCyBaseC
152 6 34 148 149 150 151 funcf2 φxBaseCyBaseCx2ndCDcurryFC2ndFDy:xHomCy1stCDcurryFC2ndFDxDNatD1stCDcurryFC2ndFDy
153 152 feqmptd φxBaseCyBaseCx2ndCDcurryFC2ndFDy=fxHomCyx2ndCDcurryFC2ndFDyf
154 92 adantr φxBaseCyBaseC1st1stQΔfuncCidfuncDCFuncQ2nd1stQΔfuncCidfuncD
155 6 34 148 154 150 151 funcf2 φxBaseCyBaseCx2nd1stQΔfuncCidfuncDy:xHomCy1st1stQΔfuncCidfuncDxDNatD1st1stQΔfuncCidfuncDy
156 155 feqmptd φxBaseCyBaseCx2nd1stQΔfuncCidfuncDy=fxHomCyx2nd1stQΔfuncCidfuncDyf
157 146 153 156 3eqtr4d φxBaseCyBaseCx2ndCDcurryFC2ndFDy=x2nd1stQΔfuncCidfuncDy
158 157 3impb φxBaseCyBaseCx2ndCDcurryFC2ndFDy=x2nd1stQΔfuncCidfuncDy
159 158 mpoeq3dva φxBaseC,yBaseCx2ndCDcurryFC2ndFDy=xBaseC,yBaseCx2nd1stQΔfuncCidfuncDy
160 6 87 funcfn2 φ2ndCDcurryFC2ndFDFnBaseC×BaseC
161 fnov 2ndCDcurryFC2ndFDFnBaseC×BaseC2ndCDcurryFC2ndFD=xBaseC,yBaseCx2ndCDcurryFC2ndFDy
162 160 161 sylib φ2ndCDcurryFC2ndFD=xBaseC,yBaseCx2ndCDcurryFC2ndFDy
163 6 92 funcfn2 φ2nd1stQΔfuncCidfuncDFnBaseC×BaseC
164 fnov 2nd1stQΔfuncCidfuncDFnBaseC×BaseC2nd1stQΔfuncCidfuncD=xBaseC,yBaseCx2nd1stQΔfuncCidfuncDy
165 163 164 sylib φ2nd1stQΔfuncCidfuncD=xBaseC,yBaseCx2nd1stQΔfuncCidfuncDy
166 159 162 165 3eqtr4d φ2ndCDcurryFC2ndFD=2nd1stQΔfuncCidfuncD
167 95 166 opeq12d φ1stCDcurryFC2ndFD2ndCDcurryFC2ndFD=1st1stQΔfuncCidfuncD2nd1stQΔfuncCidfuncD
168 1st2nd RelCFuncQCDcurryFC2ndFDCFuncQCDcurryFC2ndFD=1stCDcurryFC2ndFD2ndCDcurryFC2ndFD
169 84 85 168 sylancr φCDcurryFC2ndFD=1stCDcurryFC2ndFD2ndCDcurryFC2ndFD
170 1st2nd RelCFuncQ1stQΔfuncCidfuncDCFuncQ1stQΔfuncCidfuncD=1st1stQΔfuncCidfuncD2nd1stQΔfuncCidfuncD
171 84 90 170 sylancr φ1stQΔfuncCidfuncD=1st1stQΔfuncCidfuncD2nd1stQΔfuncCidfuncD
172 167 169 171 3eqtr4d φCDcurryFC2ndFD=1stQΔfuncCidfuncD