Metamath Proof Explorer


Theorem curf1

Description: Value of the object part of the curry functor. (Contributed by Mario Carneiro, 12-Jan-2017)

Ref Expression
Hypotheses curfval.g G=CDcurryFF
curfval.a A=BaseC
curfval.c φCCat
curfval.d φDCat
curfval.f φFC×cDFuncE
curfval.b B=BaseD
curf1.x φXA
curf1.k K=1stGX
curf1.j J=HomD
curf1.1 1˙=IdC
Assertion curf1 φK=yBX1stFyyB,zBgyJz1˙XXy2ndFXzg

Proof

Step Hyp Ref Expression
1 curfval.g G=CDcurryFF
2 curfval.a A=BaseC
3 curfval.c φCCat
4 curfval.d φDCat
5 curfval.f φFC×cDFuncE
6 curfval.b B=BaseD
7 curf1.x φXA
8 curf1.k K=1stGX
9 curf1.j J=HomD
10 curf1.1 1˙=IdC
11 1 2 3 4 5 6 9 10 curf1fval φ1stG=xAyBx1stFyyB,zBgyJz1˙xxy2ndFxzg
12 simpr φx=Xx=X
13 12 oveq1d φx=Xx1stFy=X1stFy
14 13 mpteq2dv φx=XyBx1stFy=yBX1stFy
15 simp1r φx=XyBzBx=X
16 15 opeq1d φx=XyBzBxy=Xy
17 15 opeq1d φx=XyBzBxz=Xz
18 16 17 oveq12d φx=XyBzBxy2ndFxz=Xy2ndFXz
19 15 fveq2d φx=XyBzB1˙x=1˙X
20 eqidd φx=XyBzBg=g
21 18 19 20 oveq123d φx=XyBzB1˙xxy2ndFxzg=1˙XXy2ndFXzg
22 21 mpteq2dv φx=XyBzBgyJz1˙xxy2ndFxzg=gyJz1˙XXy2ndFXzg
23 22 mpoeq3dva φx=XyB,zBgyJz1˙xxy2ndFxzg=yB,zBgyJz1˙XXy2ndFXzg
24 14 23 opeq12d φx=XyBx1stFyyB,zBgyJz1˙xxy2ndFxzg=yBX1stFyyB,zBgyJz1˙XXy2ndFXzg
25 opex yBX1stFyyB,zBgyJz1˙XXy2ndFXzgV
26 25 a1i φyBX1stFyyB,zBgyJz1˙XXy2ndFXzgV
27 11 24 7 26 fvmptd φ1stGX=yBX1stFyyB,zBgyJz1˙XXy2ndFXzg
28 8 27 eqtrid φK=yBX1stFyyB,zBgyJz1˙XXy2ndFXzg