Metamath Proof Explorer


Theorem xpccatid

Description: The product of two categories is a category. (Contributed by Mario Carneiro, 11-Jan-2017)

Ref Expression
Hypotheses xpccat.t T=C×cD
xpccat.c φCCat
xpccat.d φDCat
xpccat.x X=BaseC
xpccat.y Y=BaseD
xpccat.i I=IdC
xpccat.j J=IdD
Assertion xpccatid φTCatIdT=xX,yYIxJy

Proof

Step Hyp Ref Expression
1 xpccat.t T=C×cD
2 xpccat.c φCCat
3 xpccat.d φDCat
4 xpccat.x X=BaseC
5 xpccat.y Y=BaseD
6 xpccat.i I=IdC
7 xpccat.j J=IdD
8 1 4 5 xpcbas X×Y=BaseT
9 8 a1i φX×Y=BaseT
10 eqidd φHomT=HomT
11 eqidd φcompT=compT
12 1 ovexi TV
13 12 a1i φTV
14 biid sX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv
15 eqid HomC=HomC
16 2 adantr φtX×YCCat
17 xp1st tX×Y1sttX
18 17 adantl φtX×Y1sttX
19 4 15 6 16 18 catidcl φtX×YI1stt1sttHomC1stt
20 eqid HomD=HomD
21 3 adantr φtX×YDCat
22 xp2nd tX×Y2ndtY
23 22 adantl φtX×Y2ndtY
24 5 20 7 21 23 catidcl φtX×YJ2ndt2ndtHomD2ndt
25 19 24 opelxpd φtX×YI1sttJ2ndt1sttHomC1stt×2ndtHomD2ndt
26 eqid HomT=HomT
27 simpr φtX×YtX×Y
28 1 8 15 20 26 27 27 xpchom φtX×YtHomTt=1sttHomC1stt×2ndtHomD2ndt
29 25 28 eleqtrrd φtX×YI1sttJ2ndttHomTt
30 fvex I1sttV
31 fvex J2ndtV
32 30 31 op1st 1stI1sttJ2ndt=I1stt
33 32 oveq1i 1stI1sttJ2ndt1sts1sttcompC1stt1stf=I1stt1sts1sttcompC1stt1stf
34 2 adantr φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvCCat
35 simpr1l φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvsX×Y
36 xp1st sX×Y1stsX
37 35 36 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stsX
38 eqid compC=compC
39 simpr1r φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvtX×Y
40 39 17 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1sttX
41 simpr31 φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvfsHomTt
42 1 8 15 20 26 35 39 xpchom φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvsHomTt=1stsHomC1stt×2ndsHomD2ndt
43 41 42 eleqtrd φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvf1stsHomC1stt×2ndsHomD2ndt
44 xp1st f1stsHomC1stt×2ndsHomD2ndt1stf1stsHomC1stt
45 43 44 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stf1stsHomC1stt
46 4 15 6 34 37 38 40 45 catlid φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvI1stt1sts1sttcompC1stt1stf=1stf
47 33 46 eqtrid φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stI1sttJ2ndt1sts1sttcompC1stt1stf=1stf
48 30 31 op2nd 2ndI1sttJ2ndt=J2ndt
49 48 oveq1i 2ndI1sttJ2ndt2nds2ndtcompD2ndt2ndf=J2ndt2nds2ndtcompD2ndt2ndf
50 3 adantr φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvDCat
51 xp2nd sX×Y2ndsY
52 35 51 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndsY
53 eqid compD=compD
54 39 22 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndtY
55 xp2nd f1stsHomC1stt×2ndsHomD2ndt2ndf2ndsHomD2ndt
56 43 55 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndf2ndsHomD2ndt
57 5 20 7 50 52 53 54 56 catlid φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvJ2ndt2nds2ndtcompD2ndt2ndf=2ndf
58 49 57 eqtrid φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndI1sttJ2ndt2nds2ndtcompD2ndt2ndf=2ndf
59 47 58 opeq12d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stI1sttJ2ndt1sts1sttcompC1stt1stf2ndI1sttJ2ndt2nds2ndtcompD2ndt2ndf=1stf2ndf
60 eqid compT=compT
61 39 29 syldan φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvI1sttJ2ndttHomTt
62 1 8 26 38 53 60 35 39 39 41 61 xpcco φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvI1sttJ2ndtstcompTtf=1stI1sttJ2ndt1sts1sttcompC1stt1stf2ndI1sttJ2ndt2nds2ndtcompD2ndt2ndf
63 1st2nd2 f1stsHomC1stt×2ndsHomD2ndtf=1stf2ndf
64 43 63 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvf=1stf2ndf
65 59 62 64 3eqtr4d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvI1sttJ2ndtstcompTtf=f
66 32 oveq2i 1stg1stt1sttcompC1stu1stI1sttJ2ndt=1stg1stt1sttcompC1stuI1stt
67 simpr2l φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvuX×Y
68 xp1st uX×Y1stuX
69 67 68 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stuX
70 simpr32 φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvgtHomTu
71 1 8 15 20 26 39 67 xpchom φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvtHomTu=1sttHomC1stu×2ndtHomD2ndu
72 70 71 eleqtrd φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvg1sttHomC1stu×2ndtHomD2ndu
73 xp1st g1sttHomC1stu×2ndtHomD2ndu1stg1sttHomC1stu
74 72 73 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stg1sttHomC1stu
75 4 15 6 34 40 38 69 74 catrid φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stg1stt1sttcompC1stuI1stt=1stg
76 66 75 eqtrid φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stg1stt1sttcompC1stu1stI1sttJ2ndt=1stg
77 48 oveq2i 2ndg2ndt2ndtcompD2ndu2ndI1sttJ2ndt=2ndg2ndt2ndtcompD2nduJ2ndt
78 xp2nd uX×Y2nduY
79 67 78 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2nduY
80 xp2nd g1sttHomC1stu×2ndtHomD2ndu2ndg2ndtHomD2ndu
81 72 80 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndg2ndtHomD2ndu
82 5 20 7 50 54 53 79 81 catrid φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndg2ndt2ndtcompD2nduJ2ndt=2ndg
83 77 82 eqtrid φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndg2ndt2ndtcompD2ndu2ndI1sttJ2ndt=2ndg
84 76 83 opeq12d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stg1stt1sttcompC1stu1stI1sttJ2ndt2ndg2ndt2ndtcompD2ndu2ndI1sttJ2ndt=1stg2ndg
85 1 8 26 38 53 60 39 39 67 61 70 xpcco φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvgttcompTuI1sttJ2ndt=1stg1stt1sttcompC1stu1stI1sttJ2ndt2ndg2ndt2ndtcompD2ndu2ndI1sttJ2ndt
86 1st2nd2 g1sttHomC1stu×2ndtHomD2ndug=1stg2ndg
87 72 86 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvg=1stg2ndg
88 84 85 87 3eqtr4d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvgttcompTuI1sttJ2ndt=g
89 4 15 38 34 37 40 69 45 74 catcocl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stg1sts1sttcompC1stu1stf1stsHomC1stu
90 5 20 53 50 52 54 79 56 81 catcocl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndg2nds2ndtcompD2ndu2ndf2ndsHomD2ndu
91 89 90 opelxpd φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stg1sts1sttcompC1stu1stf2ndg2nds2ndtcompD2ndu2ndf1stsHomC1stu×2ndsHomD2ndu
92 1 8 26 38 53 60 35 39 67 41 70 xpcco φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvgstcompTuf=1stg1sts1sttcompC1stu1stf2ndg2nds2ndtcompD2ndu2ndf
93 1 8 15 20 26 35 67 xpchom φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvsHomTu=1stsHomC1stu×2ndsHomD2ndu
94 91 92 93 3eltr4d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvgstcompTufsHomTu
95 simpr2r φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvvX×Y
96 xp1st vX×Y1stvX
97 95 96 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stvX
98 simpr33 φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvhuHomTv
99 1 8 15 20 26 67 95 xpchom φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvuHomTv=1stuHomC1stv×2nduHomD2ndv
100 98 99 eleqtrd φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvh1stuHomC1stv×2nduHomD2ndv
101 xp1st h1stuHomC1stv×2nduHomD2ndv1sth1stuHomC1stv
102 100 101 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1sth1stuHomC1stv
103 4 15 38 34 37 40 69 45 74 97 102 catass φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1sth1stt1stucompC1stv1stg1sts1sttcompC1stv1stf=1sth1sts1stucompC1stv1stg1sts1sttcompC1stu1stf
104 1 8 26 38 53 60 39 67 95 70 98 xpcco φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvhtucompTvg=1sth1stt1stucompC1stv1stg2ndh2ndt2nducompD2ndv2ndg
105 104 fveq2d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1sthtucompTvg=1st1sth1stt1stucompC1stv1stg2ndh2ndt2nducompD2ndv2ndg
106 ovex 1sth1stt1stucompC1stv1stgV
107 ovex 2ndh2ndt2nducompD2ndv2ndgV
108 106 107 op1st 1st1sth1stt1stucompC1stv1stg2ndh2ndt2nducompD2ndv2ndg=1sth1stt1stucompC1stv1stg
109 105 108 eqtrdi φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1sthtucompTvg=1sth1stt1stucompC1stv1stg
110 109 oveq1d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1sthtucompTvg1sts1sttcompC1stv1stf=1sth1stt1stucompC1stv1stg1sts1sttcompC1stv1stf
111 92 fveq2d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stgstcompTuf=1st1stg1sts1sttcompC1stu1stf2ndg2nds2ndtcompD2ndu2ndf
112 ovex 1stg1sts1sttcompC1stu1stfV
113 ovex 2ndg2nds2ndtcompD2ndu2ndfV
114 112 113 op1st 1st1stg1sts1sttcompC1stu1stf2ndg2nds2ndtcompD2ndu2ndf=1stg1sts1sttcompC1stu1stf
115 111 114 eqtrdi φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1stgstcompTuf=1stg1sts1sttcompC1stu1stf
116 115 oveq2d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1sth1sts1stucompC1stv1stgstcompTuf=1sth1sts1stucompC1stv1stg1sts1sttcompC1stu1stf
117 103 110 116 3eqtr4d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1sthtucompTvg1sts1sttcompC1stv1stf=1sth1sts1stucompC1stv1stgstcompTuf
118 xp2nd vX×Y2ndvY
119 95 118 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndvY
120 xp2nd h1stuHomC1stv×2nduHomD2ndv2ndh2nduHomD2ndv
121 100 120 syl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndh2nduHomD2ndv
122 5 20 53 50 52 54 79 56 81 119 121 catass φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndh2ndt2nducompD2ndv2ndg2nds2ndtcompD2ndv2ndf=2ndh2nds2nducompD2ndv2ndg2nds2ndtcompD2ndu2ndf
123 104 fveq2d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndhtucompTvg=2nd1sth1stt1stucompC1stv1stg2ndh2ndt2nducompD2ndv2ndg
124 106 107 op2nd 2nd1sth1stt1stucompC1stv1stg2ndh2ndt2nducompD2ndv2ndg=2ndh2ndt2nducompD2ndv2ndg
125 123 124 eqtrdi φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndhtucompTvg=2ndh2ndt2nducompD2ndv2ndg
126 125 oveq1d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndhtucompTvg2nds2ndtcompD2ndv2ndf=2ndh2ndt2nducompD2ndv2ndg2nds2ndtcompD2ndv2ndf
127 92 fveq2d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndgstcompTuf=2nd1stg1sts1sttcompC1stu1stf2ndg2nds2ndtcompD2ndu2ndf
128 112 113 op2nd 2nd1stg1sts1sttcompC1stu1stf2ndg2nds2ndtcompD2ndu2ndf=2ndg2nds2ndtcompD2ndu2ndf
129 127 128 eqtrdi φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndgstcompTuf=2ndg2nds2ndtcompD2ndu2ndf
130 129 oveq2d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndh2nds2nducompD2ndv2ndgstcompTuf=2ndh2nds2nducompD2ndv2ndg2nds2ndtcompD2ndu2ndf
131 122 126 130 3eqtr4d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndhtucompTvg2nds2ndtcompD2ndv2ndf=2ndh2nds2nducompD2ndv2ndgstcompTuf
132 117 131 opeq12d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1sthtucompTvg1sts1sttcompC1stv1stf2ndhtucompTvg2nds2ndtcompD2ndv2ndf=1sth1sts1stucompC1stv1stgstcompTuf2ndh2nds2nducompD2ndv2ndgstcompTuf
133 4 15 38 34 40 69 97 74 102 catcocl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1sth1stt1stucompC1stv1stg1sttHomC1stv
134 5 20 53 50 54 79 119 81 121 catcocl φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv2ndh2ndt2nducompD2ndv2ndg2ndtHomD2ndv
135 133 134 opelxpd φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTv1sth1stt1stucompC1stv1stg2ndh2ndt2nducompD2ndv2ndg1sttHomC1stv×2ndtHomD2ndv
136 1 8 15 20 26 39 95 xpchom φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvtHomTv=1sttHomC1stv×2ndtHomD2ndv
137 135 104 136 3eltr4d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvhtucompTvgtHomTv
138 1 8 26 38 53 60 35 39 95 41 137 xpcco φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvhtucompTvgstcompTvf=1sthtucompTvg1sts1sttcompC1stv1stf2ndhtucompTvg2nds2ndtcompD2ndv2ndf
139 1 8 26 38 53 60 35 67 95 94 98 xpcco φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvhsucompTvgstcompTuf=1sth1sts1stucompC1stv1stgstcompTuf2ndh2nds2nducompD2ndv2ndgstcompTuf
140 132 138 139 3eqtr4d φsX×YtX×YuX×YvX×YfsHomTtgtHomTuhuHomTvhtucompTvgstcompTvf=hsucompTvgstcompTuf
141 9 10 11 13 14 29 65 88 94 140 iscatd2 φTCatIdT=tX×YI1sttJ2ndt
142 vex xV
143 vex yV
144 142 143 op1std t=xy1stt=x
145 144 fveq2d t=xyI1stt=Ix
146 142 143 op2ndd t=xy2ndt=y
147 146 fveq2d t=xyJ2ndt=Jy
148 145 147 opeq12d t=xyI1sttJ2ndt=IxJy
149 148 mpompt tX×YI1sttJ2ndt=xX,yYIxJy
150 149 eqeq2i IdT=tX×YI1sttJ2ndtIdT=xX,yYIxJy
151 150 anbi2i TCatIdT=tX×YI1sttJ2ndtTCatIdT=xX,yYIxJy
152 141 151 sylib φTCatIdT=xX,yYIxJy