Metamath Proof Explorer


Theorem 2ndfcl

Description: The second projection functor is a functor onto the right argument. (Contributed by Mario Carneiro, 11-Jan-2017)

Ref Expression
Hypotheses 1stfcl.t T=C×cD
1stfcl.c φCCat
1stfcl.d φDCat
2ndfcl.p Q=C2ndFD
Assertion 2ndfcl φQTFuncD

Proof

Step Hyp Ref Expression
1 1stfcl.t T=C×cD
2 1stfcl.c φCCat
3 1stfcl.d φDCat
4 2ndfcl.p Q=C2ndFD
5 eqid BaseC=BaseC
6 eqid BaseD=BaseD
7 1 5 6 xpcbas BaseC×BaseD=BaseT
8 eqid HomT=HomT
9 1 7 8 2 3 4 2ndfval φQ=2ndBaseC×BaseDxBaseC×BaseD,yBaseC×BaseD2ndxHomTy
10 fo2nd 2nd:VontoV
11 fofun 2nd:VontoVFun2nd
12 10 11 ax-mp Fun2nd
13 fvex BaseCV
14 fvex BaseDV
15 13 14 xpex BaseC×BaseDV
16 resfunexg Fun2ndBaseC×BaseDV2ndBaseC×BaseDV
17 12 15 16 mp2an 2ndBaseC×BaseDV
18 15 15 mpoex xBaseC×BaseD,yBaseC×BaseD2ndxHomTyV
19 17 18 op2ndd Q=2ndBaseC×BaseDxBaseC×BaseD,yBaseC×BaseD2ndxHomTy2ndQ=xBaseC×BaseD,yBaseC×BaseD2ndxHomTy
20 9 19 syl φ2ndQ=xBaseC×BaseD,yBaseC×BaseD2ndxHomTy
21 20 opeq2d φ2ndBaseC×BaseD2ndQ=2ndBaseC×BaseDxBaseC×BaseD,yBaseC×BaseD2ndxHomTy
22 9 21 eqtr4d φQ=2ndBaseC×BaseD2ndQ
23 eqid HomD=HomD
24 eqid IdT=IdT
25 eqid IdD=IdD
26 eqid compT=compT
27 eqid compD=compD
28 1 2 3 xpccat φTCat
29 f2ndres 2ndBaseC×BaseD:BaseC×BaseDBaseD
30 29 a1i φ2ndBaseC×BaseD:BaseC×BaseDBaseD
31 eqid xBaseC×BaseD,yBaseC×BaseD2ndxHomTy=xBaseC×BaseD,yBaseC×BaseD2ndxHomTy
32 ovex xHomTyV
33 resfunexg Fun2ndxHomTyV2ndxHomTyV
34 12 32 33 mp2an 2ndxHomTyV
35 31 34 fnmpoi xBaseC×BaseD,yBaseC×BaseD2ndxHomTyFnBaseC×BaseD×BaseC×BaseD
36 20 fneq1d φ2ndQFnBaseC×BaseD×BaseC×BaseDxBaseC×BaseD,yBaseC×BaseD2ndxHomTyFnBaseC×BaseD×BaseC×BaseD
37 35 36 mpbiri φ2ndQFnBaseC×BaseD×BaseC×BaseD
38 f2ndres 2nd1stxHomC1sty×2ndxHomD2ndy:1stxHomC1sty×2ndxHomD2ndy2ndxHomD2ndy
39 2 adantr φxBaseC×BaseDyBaseC×BaseDCCat
40 3 adantr φxBaseC×BaseDyBaseC×BaseDDCat
41 simprl φxBaseC×BaseDyBaseC×BaseDxBaseC×BaseD
42 simprr φxBaseC×BaseDyBaseC×BaseDyBaseC×BaseD
43 1 7 8 39 40 4 41 42 2ndf2 φxBaseC×BaseDyBaseC×BaseDx2ndQy=2ndxHomTy
44 eqid HomC=HomC
45 1 7 44 23 8 41 42 xpchom φxBaseC×BaseDyBaseC×BaseDxHomTy=1stxHomC1sty×2ndxHomD2ndy
46 45 reseq2d φxBaseC×BaseDyBaseC×BaseD2ndxHomTy=2nd1stxHomC1sty×2ndxHomD2ndy
47 43 46 eqtrd φxBaseC×BaseDyBaseC×BaseDx2ndQy=2nd1stxHomC1sty×2ndxHomD2ndy
48 47 feq1d φxBaseC×BaseDyBaseC×BaseDx2ndQy:1stxHomC1sty×2ndxHomD2ndy2ndxHomD2ndy2nd1stxHomC1sty×2ndxHomD2ndy:1stxHomC1sty×2ndxHomD2ndy2ndxHomD2ndy
49 38 48 mpbiri φxBaseC×BaseDyBaseC×BaseDx2ndQy:1stxHomC1sty×2ndxHomD2ndy2ndxHomD2ndy
50 fvres xBaseC×BaseD2ndBaseC×BaseDx=2ndx
51 50 ad2antrl φxBaseC×BaseDyBaseC×BaseD2ndBaseC×BaseDx=2ndx
52 fvres yBaseC×BaseD2ndBaseC×BaseDy=2ndy
53 52 ad2antll φxBaseC×BaseDyBaseC×BaseD2ndBaseC×BaseDy=2ndy
54 51 53 oveq12d φxBaseC×BaseDyBaseC×BaseD2ndBaseC×BaseDxHomD2ndBaseC×BaseDy=2ndxHomD2ndy
55 45 54 feq23d φxBaseC×BaseDyBaseC×BaseDx2ndQy:xHomTy2ndBaseC×BaseDxHomD2ndBaseC×BaseDyx2ndQy:1stxHomC1sty×2ndxHomD2ndy2ndxHomD2ndy
56 49 55 mpbird φxBaseC×BaseDyBaseC×BaseDx2ndQy:xHomTy2ndBaseC×BaseDxHomD2ndBaseC×BaseDy
57 28 adantr φxBaseC×BaseDTCat
58 simpr φxBaseC×BaseDxBaseC×BaseD
59 7 8 24 57 58 catidcl φxBaseC×BaseDIdTxxHomTx
60 59 fvresd φxBaseC×BaseD2ndxHomTxIdTx=2ndIdTx
61 1st2nd2 xBaseC×BaseDx=1stx2ndx
62 61 adantl φxBaseC×BaseDx=1stx2ndx
63 62 fveq2d φxBaseC×BaseDIdTx=IdT1stx2ndx
64 2 adantr φxBaseC×BaseDCCat
65 3 adantr φxBaseC×BaseDDCat
66 eqid IdC=IdC
67 xp1st xBaseC×BaseD1stxBaseC
68 67 adantl φxBaseC×BaseD1stxBaseC
69 xp2nd xBaseC×BaseD2ndxBaseD
70 69 adantl φxBaseC×BaseD2ndxBaseD
71 1 64 65 5 6 66 25 24 68 70 xpcid φxBaseC×BaseDIdT1stx2ndx=IdC1stxIdD2ndx
72 63 71 eqtrd φxBaseC×BaseDIdTx=IdC1stxIdD2ndx
73 fvex IdC1stxV
74 fvex IdD2ndxV
75 73 74 op2ndd IdTx=IdC1stxIdD2ndx2ndIdTx=IdD2ndx
76 72 75 syl φxBaseC×BaseD2ndIdTx=IdD2ndx
77 60 76 eqtrd φxBaseC×BaseD2ndxHomTxIdTx=IdD2ndx
78 1 7 8 64 65 4 58 58 2ndf2 φxBaseC×BaseDx2ndQx=2ndxHomTx
79 78 fveq1d φxBaseC×BaseDx2ndQxIdTx=2ndxHomTxIdTx
80 50 adantl φxBaseC×BaseD2ndBaseC×BaseDx=2ndx
81 80 fveq2d φxBaseC×BaseDIdD2ndBaseC×BaseDx=IdD2ndx
82 77 79 81 3eqtr4d φxBaseC×BaseDx2ndQxIdTx=IdD2ndBaseC×BaseDx
83 28 3ad2ant1 φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzTCat
84 simp21 φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzxBaseC×BaseD
85 simp22 φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzyBaseC×BaseD
86 simp23 φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzzBaseC×BaseD
87 simp3l φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzfxHomTy
88 simp3r φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzgyHomTz
89 7 8 26 83 84 85 86 87 88 catcocl φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzgxycompTzfxHomTz
90 89 fvresd φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTz2ndxHomTzgxycompTzf=2ndgxycompTzf
91 1 7 8 26 84 85 86 87 88 27 xpcco2nd φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTz2ndgxycompTzf=2ndg2ndx2ndycompD2ndz2ndf
92 90 91 eqtrd φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTz2ndxHomTzgxycompTzf=2ndg2ndx2ndycompD2ndz2ndf
93 2 3ad2ant1 φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzCCat
94 3 3ad2ant1 φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzDCat
95 1 7 8 93 94 4 84 86 2ndf2 φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzx2ndQz=2ndxHomTz
96 95 fveq1d φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzx2ndQzgxycompTzf=2ndxHomTzgxycompTzf
97 84 fvresd φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTz2ndBaseC×BaseDx=2ndx
98 85 fvresd φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTz2ndBaseC×BaseDy=2ndy
99 97 98 opeq12d φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTz2ndBaseC×BaseDx2ndBaseC×BaseDy=2ndx2ndy
100 86 fvresd φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTz2ndBaseC×BaseDz=2ndz
101 99 100 oveq12d φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTz2ndBaseC×BaseDx2ndBaseC×BaseDycompD2ndBaseC×BaseDz=2ndx2ndycompD2ndz
102 1 7 8 93 94 4 85 86 2ndf2 φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzy2ndQz=2ndyHomTz
103 102 fveq1d φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzy2ndQzg=2ndyHomTzg
104 88 fvresd φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTz2ndyHomTzg=2ndg
105 103 104 eqtrd φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzy2ndQzg=2ndg
106 1 7 8 93 94 4 84 85 2ndf2 φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzx2ndQy=2ndxHomTy
107 106 fveq1d φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzx2ndQyf=2ndxHomTyf
108 87 fvresd φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTz2ndxHomTyf=2ndf
109 107 108 eqtrd φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzx2ndQyf=2ndf
110 101 105 109 oveq123d φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzy2ndQzg2ndBaseC×BaseDx2ndBaseC×BaseDycompD2ndBaseC×BaseDzx2ndQyf=2ndg2ndx2ndycompD2ndz2ndf
111 92 96 110 3eqtr4d φxBaseC×BaseDyBaseC×BaseDzBaseC×BaseDfxHomTygyHomTzx2ndQzgxycompTzf=y2ndQzg2ndBaseC×BaseDx2ndBaseC×BaseDycompD2ndBaseC×BaseDzx2ndQyf
112 7 6 8 23 24 25 26 27 28 3 30 37 56 82 111 isfuncd φ2ndBaseC×BaseDTFuncD2ndQ
113 df-br 2ndBaseC×BaseDTFuncD2ndQ2ndBaseC×BaseD2ndQTFuncD
114 112 113 sylib φ2ndBaseC×BaseD2ndQTFuncD
115 22 114 eqeltrd φQTFuncD