Metamath Proof Explorer


Theorem prfcl

Description: The pairing of functors F : C --> D and G : C --> D is a functor <. F , G >. : C --> ( D X. E ) . (Contributed by Mario Carneiro, 12-Jan-2017)

Ref Expression
Hypotheses prfcl.p P=F⟨,⟩FG
prfcl.t T=D×cE
prfcl.c φFCFuncD
prfcl.d φGCFuncE
Assertion prfcl φPCFuncT

Proof

Step Hyp Ref Expression
1 prfcl.p P=F⟨,⟩FG
2 prfcl.t T=D×cE
3 prfcl.c φFCFuncD
4 prfcl.d φGCFuncE
5 eqid BaseC=BaseC
6 eqid HomC=HomC
7 1 5 6 3 4 prfval φP=xBaseC1stFx1stGxxBaseC,yBaseChxHomCyx2ndFyhx2ndGyh
8 fvex BaseCV
9 8 mptex xBaseC1stFx1stGxV
10 8 8 mpoex xBaseC,yBaseChxHomCyx2ndFyhx2ndGyhV
11 9 10 op1std P=xBaseC1stFx1stGxxBaseC,yBaseChxHomCyx2ndFyhx2ndGyh1stP=xBaseC1stFx1stGx
12 7 11 syl φ1stP=xBaseC1stFx1stGx
13 9 10 op2ndd P=xBaseC1stFx1stGxxBaseC,yBaseChxHomCyx2ndFyhx2ndGyh2ndP=xBaseC,yBaseChxHomCyx2ndFyhx2ndGyh
14 7 13 syl φ2ndP=xBaseC,yBaseChxHomCyx2ndFyhx2ndGyh
15 12 14 opeq12d φ1stP2ndP=xBaseC1stFx1stGxxBaseC,yBaseChxHomCyx2ndFyhx2ndGyh
16 7 15 eqtr4d φP=1stP2ndP
17 eqid BaseD=BaseD
18 eqid BaseE=BaseE
19 2 17 18 xpcbas BaseD×BaseE=BaseT
20 eqid HomT=HomT
21 eqid IdC=IdC
22 eqid IdT=IdT
23 eqid compC=compC
24 eqid compT=compT
25 funcrcl FCFuncDCCatDCat
26 3 25 syl φCCatDCat
27 26 simpld φCCat
28 26 simprd φDCat
29 funcrcl GCFuncECCatECat
30 4 29 syl φCCatECat
31 30 simprd φECat
32 2 28 31 xpccat φTCat
33 relfunc RelCFuncD
34 1st2ndbr RelCFuncDFCFuncD1stFCFuncD2ndF
35 33 3 34 sylancr φ1stFCFuncD2ndF
36 5 17 35 funcf1 φ1stF:BaseCBaseD
37 36 ffvelcdmda φxBaseC1stFxBaseD
38 relfunc RelCFuncE
39 1st2ndbr RelCFuncEGCFuncE1stGCFuncE2ndG
40 38 4 39 sylancr φ1stGCFuncE2ndG
41 5 18 40 funcf1 φ1stG:BaseCBaseE
42 41 ffvelcdmda φxBaseC1stGxBaseE
43 37 42 opelxpd φxBaseC1stFx1stGxBaseD×BaseE
44 12 43 fmpt3d φ1stP:BaseCBaseD×BaseE
45 eqid xBaseC,yBaseChxHomCyx2ndFyhx2ndGyh=xBaseC,yBaseChxHomCyx2ndFyhx2ndGyh
46 ovex xHomCyV
47 46 mptex hxHomCyx2ndFyhx2ndGyhV
48 45 47 fnmpoi xBaseC,yBaseChxHomCyx2ndFyhx2ndGyhFnBaseC×BaseC
49 14 fneq1d φ2ndPFnBaseC×BaseCxBaseC,yBaseChxHomCyx2ndFyhx2ndGyhFnBaseC×BaseC
50 48 49 mpbiri φ2ndPFnBaseC×BaseC
51 14 oveqd φx2ndPy=xxBaseC,yBaseChxHomCyx2ndFyhx2ndGyhy
52 45 ovmpt4g xBaseCyBaseChxHomCyx2ndFyhx2ndGyhVxxBaseC,yBaseChxHomCyx2ndFyhx2ndGyhy=hxHomCyx2ndFyhx2ndGyh
53 47 52 mp3an3 xBaseCyBaseCxxBaseC,yBaseChxHomCyx2ndFyhx2ndGyhy=hxHomCyx2ndFyhx2ndGyh
54 51 53 sylan9eq φxBaseCyBaseCx2ndPy=hxHomCyx2ndFyhx2ndGyh
55 eqid HomD=HomD
56 35 adantr φxBaseCyBaseC1stFCFuncD2ndF
57 simprl φxBaseCyBaseCxBaseC
58 simprr φxBaseCyBaseCyBaseC
59 5 6 55 56 57 58 funcf2 φxBaseCyBaseCx2ndFy:xHomCy1stFxHomD1stFy
60 59 ffvelcdmda φxBaseCyBaseChxHomCyx2ndFyh1stFxHomD1stFy
61 eqid HomE=HomE
62 40 adantr φxBaseCyBaseC1stGCFuncE2ndG
63 5 6 61 62 57 58 funcf2 φxBaseCyBaseCx2ndGy:xHomCy1stGxHomE1stGy
64 63 ffvelcdmda φxBaseCyBaseChxHomCyx2ndGyh1stGxHomE1stGy
65 60 64 opelxpd φxBaseCyBaseChxHomCyx2ndFyhx2ndGyh1stFxHomD1stFy×1stGxHomE1stGy
66 3 adantr φxBaseCyBaseCFCFuncD
67 4 adantr φxBaseCyBaseCGCFuncE
68 1 5 6 66 67 57 prf1 φxBaseCyBaseC1stPx=1stFx1stGx
69 1 5 6 66 67 58 prf1 φxBaseCyBaseC1stPy=1stFy1stGy
70 68 69 oveq12d φxBaseCyBaseC1stPxHomT1stPy=1stFx1stGxHomT1stFy1stGy
71 37 adantrr φxBaseCyBaseC1stFxBaseD
72 42 adantrr φxBaseCyBaseC1stGxBaseE
73 36 ffvelcdmda φyBaseC1stFyBaseD
74 73 adantrl φxBaseCyBaseC1stFyBaseD
75 41 ffvelcdmda φyBaseC1stGyBaseE
76 75 adantrl φxBaseCyBaseC1stGyBaseE
77 2 17 18 55 61 71 72 74 76 20 xpchom2 φxBaseCyBaseC1stFx1stGxHomT1stFy1stGy=1stFxHomD1stFy×1stGxHomE1stGy
78 70 77 eqtrd φxBaseCyBaseC1stPxHomT1stPy=1stFxHomD1stFy×1stGxHomE1stGy
79 78 adantr φxBaseCyBaseChxHomCy1stPxHomT1stPy=1stFxHomD1stFy×1stGxHomE1stGy
80 65 79 eleqtrrd φxBaseCyBaseChxHomCyx2ndFyhx2ndGyh1stPxHomT1stPy
81 54 80 fmpt3d φxBaseCyBaseCx2ndPy:xHomCy1stPxHomT1stPy
82 eqid IdD=IdD
83 35 adantr φxBaseC1stFCFuncD2ndF
84 simpr φxBaseCxBaseC
85 5 21 82 83 84 funcid φxBaseCx2ndFxIdCx=IdD1stFx
86 eqid IdE=IdE
87 40 adantr φxBaseC1stGCFuncE2ndG
88 5 21 86 87 84 funcid φxBaseCx2ndGxIdCx=IdE1stGx
89 85 88 opeq12d φxBaseCx2ndFxIdCxx2ndGxIdCx=IdD1stFxIdE1stGx
90 3 adantr φxBaseCFCFuncD
91 4 adantr φxBaseCGCFuncE
92 27 adantr φxBaseCCCat
93 5 6 21 92 84 catidcl φxBaseCIdCxxHomCx
94 1 5 6 90 91 84 84 93 prf2 φxBaseCx2ndPxIdCx=x2ndFxIdCxx2ndGxIdCx
95 1 5 6 90 91 84 prf1 φxBaseC1stPx=1stFx1stGx
96 95 fveq2d φxBaseCIdT1stPx=IdT1stFx1stGx
97 28 adantr φxBaseCDCat
98 31 adantr φxBaseCECat
99 2 97 98 17 18 82 86 22 37 42 xpcid φxBaseCIdT1stFx1stGx=IdD1stFxIdE1stGx
100 96 99 eqtrd φxBaseCIdT1stPx=IdD1stFxIdE1stGx
101 89 94 100 3eqtr4d φxBaseCx2ndPxIdCx=IdT1stPx
102 eqid compD=compD
103 35 3ad2ant1 φxBaseCyBaseCzBaseCfxHomCygyHomCz1stFCFuncD2ndF
104 simp21 φxBaseCyBaseCzBaseCfxHomCygyHomCzxBaseC
105 simp22 φxBaseCyBaseCzBaseCfxHomCygyHomCzyBaseC
106 simp23 φxBaseCyBaseCzBaseCfxHomCygyHomCzzBaseC
107 simp3l φxBaseCyBaseCzBaseCfxHomCygyHomCzfxHomCy
108 simp3r φxBaseCyBaseCzBaseCfxHomCygyHomCzgyHomCz
109 5 6 23 102 103 104 105 106 107 108 funcco φxBaseCyBaseCzBaseCfxHomCygyHomCzx2ndFzgxycompCzf=y2ndFzg1stFx1stFycompD1stFzx2ndFyf
110 eqid compE=compE
111 4 3ad2ant1 φxBaseCyBaseCzBaseCfxHomCygyHomCzGCFuncE
112 38 111 39 sylancr φxBaseCyBaseCzBaseCfxHomCygyHomCz1stGCFuncE2ndG
113 5 6 23 110 112 104 105 106 107 108 funcco φxBaseCyBaseCzBaseCfxHomCygyHomCzx2ndGzgxycompCzf=y2ndGzg1stGx1stGycompE1stGzx2ndGyf
114 109 113 opeq12d φxBaseCyBaseCzBaseCfxHomCygyHomCzx2ndFzgxycompCzfx2ndGzgxycompCzf=y2ndFzg1stFx1stFycompD1stFzx2ndFyfy2ndGzg1stGx1stGycompE1stGzx2ndGyf
115 3 3ad2ant1 φxBaseCyBaseCzBaseCfxHomCygyHomCzFCFuncD
116 27 3ad2ant1 φxBaseCyBaseCzBaseCfxHomCygyHomCzCCat
117 5 6 23 116 104 105 106 107 108 catcocl φxBaseCyBaseCzBaseCfxHomCygyHomCzgxycompCzfxHomCz
118 1 5 6 115 111 104 106 117 prf2 φxBaseCyBaseCzBaseCfxHomCygyHomCzx2ndPzgxycompCzf=x2ndFzgxycompCzfx2ndGzgxycompCzf
119 1 5 6 115 111 104 prf1 φxBaseCyBaseCzBaseCfxHomCygyHomCz1stPx=1stFx1stGx
120 1 5 6 115 111 105 prf1 φxBaseCyBaseCzBaseCfxHomCygyHomCz1stPy=1stFy1stGy
121 119 120 opeq12d φxBaseCyBaseCzBaseCfxHomCygyHomCz1stPx1stPy=1stFx1stGx1stFy1stGy
122 1 5 6 115 111 106 prf1 φxBaseCyBaseCzBaseCfxHomCygyHomCz1stPz=1stFz1stGz
123 121 122 oveq12d φxBaseCyBaseCzBaseCfxHomCygyHomCz1stPx1stPycompT1stPz=1stFx1stGx1stFy1stGycompT1stFz1stGz
124 1 5 6 115 111 105 106 108 prf2 φxBaseCyBaseCzBaseCfxHomCygyHomCzy2ndPzg=y2ndFzgy2ndGzg
125 1 5 6 115 111 104 105 107 prf2 φxBaseCyBaseCzBaseCfxHomCygyHomCzx2ndPyf=x2ndFyfx2ndGyf
126 123 124 125 oveq123d φxBaseCyBaseCzBaseCfxHomCygyHomCzy2ndPzg1stPx1stPycompT1stPzx2ndPyf=y2ndFzgy2ndGzg1stFx1stGx1stFy1stGycompT1stFz1stGzx2ndFyfx2ndGyf
127 36 3ad2ant1 φxBaseCyBaseCzBaseCfxHomCygyHomCz1stF:BaseCBaseD
128 127 104 ffvelcdmd φxBaseCyBaseCzBaseCfxHomCygyHomCz1stFxBaseD
129 41 3ad2ant1 φxBaseCyBaseCzBaseCfxHomCygyHomCz1stG:BaseCBaseE
130 129 104 ffvelcdmd φxBaseCyBaseCzBaseCfxHomCygyHomCz1stGxBaseE
131 127 105 ffvelcdmd φxBaseCyBaseCzBaseCfxHomCygyHomCz1stFyBaseD
132 129 105 ffvelcdmd φxBaseCyBaseCzBaseCfxHomCygyHomCz1stGyBaseE
133 127 106 ffvelcdmd φxBaseCyBaseCzBaseCfxHomCygyHomCz1stFzBaseD
134 129 106 ffvelcdmd φxBaseCyBaseCzBaseCfxHomCygyHomCz1stGzBaseE
135 5 6 55 103 104 105 funcf2 φxBaseCyBaseCzBaseCfxHomCygyHomCzx2ndFy:xHomCy1stFxHomD1stFy
136 135 107 ffvelcdmd φxBaseCyBaseCzBaseCfxHomCygyHomCzx2ndFyf1stFxHomD1stFy
137 5 6 61 112 104 105 funcf2 φxBaseCyBaseCzBaseCfxHomCygyHomCzx2ndGy:xHomCy1stGxHomE1stGy
138 137 107 ffvelcdmd φxBaseCyBaseCzBaseCfxHomCygyHomCzx2ndGyf1stGxHomE1stGy
139 5 6 55 103 105 106 funcf2 φxBaseCyBaseCzBaseCfxHomCygyHomCzy2ndFz:yHomCz1stFyHomD1stFz
140 139 108 ffvelcdmd φxBaseCyBaseCzBaseCfxHomCygyHomCzy2ndFzg1stFyHomD1stFz
141 5 6 61 112 105 106 funcf2 φxBaseCyBaseCzBaseCfxHomCygyHomCzy2ndGz:yHomCz1stGyHomE1stGz
142 141 108 ffvelcdmd φxBaseCyBaseCzBaseCfxHomCygyHomCzy2ndGzg1stGyHomE1stGz
143 2 17 18 55 61 128 130 131 132 102 110 24 133 134 136 138 140 142 xpcco2 φxBaseCyBaseCzBaseCfxHomCygyHomCzy2ndFzgy2ndGzg1stFx1stGx1stFy1stGycompT1stFz1stGzx2ndFyfx2ndGyf=y2ndFzg1stFx1stFycompD1stFzx2ndFyfy2ndGzg1stGx1stGycompE1stGzx2ndGyf
144 126 143 eqtrd φxBaseCyBaseCzBaseCfxHomCygyHomCzy2ndPzg1stPx1stPycompT1stPzx2ndPyf=y2ndFzg1stFx1stFycompD1stFzx2ndFyfy2ndGzg1stGx1stGycompE1stGzx2ndGyf
145 114 118 144 3eqtr4d φxBaseCyBaseCzBaseCfxHomCygyHomCzx2ndPzgxycompCzf=y2ndPzg1stPx1stPycompT1stPzx2ndPyf
146 5 19 6 20 21 22 23 24 27 32 44 50 81 101 145 isfuncd φ1stPCFuncT2ndP
147 df-br 1stPCFuncT2ndP1stP2ndPCFuncT
148 146 147 sylib φ1stP2ndPCFuncT
149 16 148 eqeltrd φPCFuncT