Metamath Proof Explorer


Theorem hofval

Description: Value of the Hom functor, which is a bifunctor (a functor of two arguments), contravariant in the first argument and covariant in the second, from ( oppCatC ) X. C to SetCat , whose object part is the hom-function Hom , and with morphism part given by pre- and post-composition. (Contributed by Mario Carneiro, 15-Jan-2017)

Ref Expression
Hypotheses hofval.m M=HomFC
hofval.c φCCat
hofval.b B=BaseC
hofval.h H=HomC
hofval.o ·˙=compC
Assertion hofval φM=Hom𝑓CxB×B,yB×Bf1styH1stx,g2ndxH2ndyhHxgx·˙2ndyh1sty1stx·˙2ndyf

Proof

Step Hyp Ref Expression
1 hofval.m M=HomFC
2 hofval.c φCCat
3 hofval.b B=BaseC
4 hofval.h H=HomC
5 hofval.o ·˙=compC
6 df-hof HomF=cCatHom𝑓cBasec/bxb×b,yb×bf1styHomc1stx,g2ndxHomc2ndyhHomcxgxcompc2ndyh1sty1stxcompc2ndyf
7 simpr φc=Cc=C
8 7 fveq2d φc=CHom𝑓c=Hom𝑓C
9 fvexd φc=CBasecV
10 7 fveq2d φc=CBasec=BaseC
11 10 3 eqtr4di φc=CBasec=B
12 simpr φc=Cb=Bb=B
13 12 sqxpeqd φc=Cb=Bb×b=B×B
14 simplr φc=Cb=Bc=C
15 14 fveq2d φc=Cb=BHomc=HomC
16 15 4 eqtr4di φc=Cb=BHomc=H
17 16 oveqd φc=Cb=B1styHomc1stx=1styH1stx
18 16 oveqd φc=Cb=B2ndxHomc2ndy=2ndxH2ndy
19 16 fveq1d φc=Cb=BHomcx=Hx
20 14 fveq2d φc=Cb=Bcompc=compC
21 20 5 eqtr4di φc=Cb=Bcompc=·˙
22 21 oveqd φc=Cb=B1sty1stxcompc2ndy=1sty1stx·˙2ndy
23 21 oveqd φc=Cb=Bxcompc2ndy=x·˙2ndy
24 23 oveqd φc=Cb=Bgxcompc2ndyh=gx·˙2ndyh
25 eqidd φc=Cb=Bf=f
26 22 24 25 oveq123d φc=Cb=Bgxcompc2ndyh1sty1stxcompc2ndyf=gx·˙2ndyh1sty1stx·˙2ndyf
27 19 26 mpteq12dv φc=Cb=BhHomcxgxcompc2ndyh1sty1stxcompc2ndyf=hHxgx·˙2ndyh1sty1stx·˙2ndyf
28 17 18 27 mpoeq123dv φc=Cb=Bf1styHomc1stx,g2ndxHomc2ndyhHomcxgxcompc2ndyh1sty1stxcompc2ndyf=f1styH1stx,g2ndxH2ndyhHxgx·˙2ndyh1sty1stx·˙2ndyf
29 13 13 28 mpoeq123dv φc=Cb=Bxb×b,yb×bf1styHomc1stx,g2ndxHomc2ndyhHomcxgxcompc2ndyh1sty1stxcompc2ndyf=xB×B,yB×Bf1styH1stx,g2ndxH2ndyhHxgx·˙2ndyh1sty1stx·˙2ndyf
30 9 11 29 csbied2 φc=CBasec/bxb×b,yb×bf1styHomc1stx,g2ndxHomc2ndyhHomcxgxcompc2ndyh1sty1stxcompc2ndyf=xB×B,yB×Bf1styH1stx,g2ndxH2ndyhHxgx·˙2ndyh1sty1stx·˙2ndyf
31 8 30 opeq12d φc=CHom𝑓cBasec/bxb×b,yb×bf1styHomc1stx,g2ndxHomc2ndyhHomcxgxcompc2ndyh1sty1stxcompc2ndyf=Hom𝑓CxB×B,yB×Bf1styH1stx,g2ndxH2ndyhHxgx·˙2ndyh1sty1stx·˙2ndyf
32 opex Hom𝑓CxB×B,yB×Bf1styH1stx,g2ndxH2ndyhHxgx·˙2ndyh1sty1stx·˙2ndyfV
33 32 a1i φHom𝑓CxB×B,yB×Bf1styH1stx,g2ndxH2ndyhHxgx·˙2ndyh1sty1stx·˙2ndyfV
34 6 31 2 33 fvmptd2 φHomFC=Hom𝑓CxB×B,yB×Bf1styH1stx,g2ndxH2ndyhHxgx·˙2ndyh1sty1stx·˙2ndyf
35 1 34 eqtrid φM=Hom𝑓CxB×B,yB×Bf1styH1stx,g2ndxH2ndyhHxgx·˙2ndyh1sty1stx·˙2ndyf