Metamath Proof Explorer


Theorem 1st2ndprf

Description: Break a functor into a product category into first and second projections. (Contributed by Mario Carneiro, 12-Jan-2017)

Ref Expression
Hypotheses 1st2ndprf.t T=D×cE
1st2ndprf.f φFCFuncT
1st2ndprf.d φDCat
1st2ndprf.e φECat
Assertion 1st2ndprf φF=D1stFEfuncF⟨,⟩FD2ndFEfuncF

Proof

Step Hyp Ref Expression
1 1st2ndprf.t T=D×cE
2 1st2ndprf.f φFCFuncT
3 1st2ndprf.d φDCat
4 1st2ndprf.e φECat
5 eqid BaseC=BaseC
6 eqid BaseD=BaseD
7 eqid BaseE=BaseE
8 1 6 7 xpcbas BaseD×BaseE=BaseT
9 relfunc RelCFuncT
10 1st2ndbr RelCFuncTFCFuncT1stFCFuncT2ndF
11 9 2 10 sylancr φ1stFCFuncT2ndF
12 5 8 11 funcf1 φ1stF:BaseCBaseD×BaseE
13 12 feqmptd φ1stF=xBaseC1stFx
14 12 ffvelcdmda φxBaseC1stFxBaseD×BaseE
15 1st2nd2 1stFxBaseD×BaseE1stFx=1st1stFx2nd1stFx
16 14 15 syl φxBaseC1stFx=1st1stFx2nd1stFx
17 2 adantr φxBaseCFCFuncT
18 eqid D1stFE=D1stFE
19 1 3 4 18 1stfcl φD1stFETFuncD
20 19 adantr φxBaseCD1stFETFuncD
21 simpr φxBaseCxBaseC
22 5 17 20 21 cofu1 φxBaseC1stD1stFEfuncFx=1stD1stFE1stFx
23 eqid HomT=HomT
24 3 adantr φxBaseCDCat
25 4 adantr φxBaseCECat
26 1 8 23 24 25 18 14 1stf1 φxBaseC1stD1stFE1stFx=1st1stFx
27 22 26 eqtrd φxBaseC1stD1stFEfuncFx=1st1stFx
28 eqid D2ndFE=D2ndFE
29 1 3 4 28 2ndfcl φD2ndFETFuncE
30 29 adantr φxBaseCD2ndFETFuncE
31 5 17 30 21 cofu1 φxBaseC1stD2ndFEfuncFx=1stD2ndFE1stFx
32 1 8 23 24 25 28 14 2ndf1 φxBaseC1stD2ndFE1stFx=2nd1stFx
33 31 32 eqtrd φxBaseC1stD2ndFEfuncFx=2nd1stFx
34 27 33 opeq12d φxBaseC1stD1stFEfuncFx1stD2ndFEfuncFx=1st1stFx2nd1stFx
35 16 34 eqtr4d φxBaseC1stFx=1stD1stFEfuncFx1stD2ndFEfuncFx
36 35 mpteq2dva φxBaseC1stFx=xBaseC1stD1stFEfuncFx1stD2ndFEfuncFx
37 13 36 eqtrd φ1stF=xBaseC1stD1stFEfuncFx1stD2ndFEfuncFx
38 5 11 funcfn2 φ2ndFFnBaseC×BaseC
39 fnov 2ndFFnBaseC×BaseC2ndF=xBaseC,yBaseCx2ndFy
40 38 39 sylib φ2ndF=xBaseC,yBaseCx2ndFy
41 eqid HomC=HomC
42 11 adantr φxBaseCyBaseC1stFCFuncT2ndF
43 simprl φxBaseCyBaseCxBaseC
44 simprr φxBaseCyBaseCyBaseC
45 5 41 23 42 43 44 funcf2 φxBaseCyBaseCx2ndFy:xHomCy1stFxHomT1stFy
46 45 feqmptd φxBaseCyBaseCx2ndFy=fxHomCyx2ndFyf
47 1 23 relxpchom Rel1stFxHomT1stFy
48 45 ffvelcdmda φxBaseCyBaseCfxHomCyx2ndFyf1stFxHomT1stFy
49 1st2nd Rel1stFxHomT1stFyx2ndFyf1stFxHomT1stFyx2ndFyf=1stx2ndFyf2ndx2ndFyf
50 47 48 49 sylancr φxBaseCyBaseCfxHomCyx2ndFyf=1stx2ndFyf2ndx2ndFyf
51 2 ad2antrr φxBaseCyBaseCfxHomCyFCFuncT
52 19 ad2antrr φxBaseCyBaseCfxHomCyD1stFETFuncD
53 43 adantr φxBaseCyBaseCfxHomCyxBaseC
54 44 adantr φxBaseCyBaseCfxHomCyyBaseC
55 simpr φxBaseCyBaseCfxHomCyfxHomCy
56 5 51 52 53 54 41 55 cofu2 φxBaseCyBaseCfxHomCyx2ndD1stFEfuncFyf=1stFx2ndD1stFE1stFyx2ndFyf
57 3 adantr φxBaseCyBaseCDCat
58 4 adantr φxBaseCyBaseCECat
59 14 adantrr φxBaseCyBaseC1stFxBaseD×BaseE
60 12 ffvelcdmda φyBaseC1stFyBaseD×BaseE
61 60 adantrl φxBaseCyBaseC1stFyBaseD×BaseE
62 1 8 23 57 58 18 59 61 1stf2 φxBaseCyBaseC1stFx2ndD1stFE1stFy=1st1stFxHomT1stFy
63 62 adantr φxBaseCyBaseCfxHomCy1stFx2ndD1stFE1stFy=1st1stFxHomT1stFy
64 63 fveq1d φxBaseCyBaseCfxHomCy1stFx2ndD1stFE1stFyx2ndFyf=1st1stFxHomT1stFyx2ndFyf
65 48 fvresd φxBaseCyBaseCfxHomCy1st1stFxHomT1stFyx2ndFyf=1stx2ndFyf
66 56 64 65 3eqtrd φxBaseCyBaseCfxHomCyx2ndD1stFEfuncFyf=1stx2ndFyf
67 29 ad2antrr φxBaseCyBaseCfxHomCyD2ndFETFuncE
68 5 51 67 53 54 41 55 cofu2 φxBaseCyBaseCfxHomCyx2ndD2ndFEfuncFyf=1stFx2ndD2ndFE1stFyx2ndFyf
69 1 8 23 57 58 28 59 61 2ndf2 φxBaseCyBaseC1stFx2ndD2ndFE1stFy=2nd1stFxHomT1stFy
70 69 adantr φxBaseCyBaseCfxHomCy1stFx2ndD2ndFE1stFy=2nd1stFxHomT1stFy
71 70 fveq1d φxBaseCyBaseCfxHomCy1stFx2ndD2ndFE1stFyx2ndFyf=2nd1stFxHomT1stFyx2ndFyf
72 48 fvresd φxBaseCyBaseCfxHomCy2nd1stFxHomT1stFyx2ndFyf=2ndx2ndFyf
73 68 71 72 3eqtrd φxBaseCyBaseCfxHomCyx2ndD2ndFEfuncFyf=2ndx2ndFyf
74 66 73 opeq12d φxBaseCyBaseCfxHomCyx2ndD1stFEfuncFyfx2ndD2ndFEfuncFyf=1stx2ndFyf2ndx2ndFyf
75 50 74 eqtr4d φxBaseCyBaseCfxHomCyx2ndFyf=x2ndD1stFEfuncFyfx2ndD2ndFEfuncFyf
76 75 mpteq2dva φxBaseCyBaseCfxHomCyx2ndFyf=fxHomCyx2ndD1stFEfuncFyfx2ndD2ndFEfuncFyf
77 46 76 eqtrd φxBaseCyBaseCx2ndFy=fxHomCyx2ndD1stFEfuncFyfx2ndD2ndFEfuncFyf
78 77 3impb φxBaseCyBaseCx2ndFy=fxHomCyx2ndD1stFEfuncFyfx2ndD2ndFEfuncFyf
79 78 mpoeq3dva φxBaseC,yBaseCx2ndFy=xBaseC,yBaseCfxHomCyx2ndD1stFEfuncFyfx2ndD2ndFEfuncFyf
80 40 79 eqtrd φ2ndF=xBaseC,yBaseCfxHomCyx2ndD1stFEfuncFyfx2ndD2ndFEfuncFyf
81 37 80 opeq12d φ1stF2ndF=xBaseC1stD1stFEfuncFx1stD2ndFEfuncFxxBaseC,yBaseCfxHomCyx2ndD1stFEfuncFyfx2ndD2ndFEfuncFyf
82 1st2nd RelCFuncTFCFuncTF=1stF2ndF
83 9 2 82 sylancr φF=1stF2ndF
84 eqid D1stFEfuncF⟨,⟩FD2ndFEfuncF=D1stFEfuncF⟨,⟩FD2ndFEfuncF
85 2 19 cofucl φD1stFEfuncFCFuncD
86 2 29 cofucl φD2ndFEfuncFCFuncE
87 84 5 41 85 86 prfval φD1stFEfuncF⟨,⟩FD2ndFEfuncF=xBaseC1stD1stFEfuncFx1stD2ndFEfuncFxxBaseC,yBaseCfxHomCyx2ndD1stFEfuncFyfx2ndD2ndFEfuncFyf
88 81 83 87 3eqtr4d φF=D1stFEfuncF⟨,⟩FD2ndFEfuncF