Metamath Proof Explorer


Theorem upxp

Description: Universal property of the Cartesian product considered as a categorical product in the category of sets. (Contributed by Jeff Madsen, 2-Sep-2009) (Revised by Mario Carneiro, 27-Dec-2014)

Ref Expression
Hypotheses upxp.1 P=1stB×C
upxp.2 Q=2ndB×C
Assertion upxp ADF:ABG:AC∃!hh:AB×CF=PhG=Qh

Proof

Step Hyp Ref Expression
1 upxp.1 P=1stB×C
2 upxp.2 Q=2ndB×C
3 mptexg ADxAFxGxV
4 eueq xAFxGxV∃!hh=xAFxGx
5 3 4 sylib AD∃!hh=xAFxGx
6 5 3ad2ant1 ADF:ABG:AC∃!hh=xAFxGx
7 ffn h:AB×ChFnA
8 7 3ad2ant1 h:AB×CF=PhG=QhhFnA
9 8 adantl ADF:ABG:ACh:AB×CF=PhG=QhhFnA
10 ffvelcdm F:ABxAFxB
11 ffvelcdm G:ACxAGxC
12 opelxpi FxBGxCFxGxB×C
13 10 11 12 syl2an F:ABxAG:ACxAFxGxB×C
14 13 anandirs F:ABG:ACxAFxGxB×C
15 14 ralrimiva F:ABG:ACxAFxGxB×C
16 15 3adant1 ADF:ABG:ACxAFxGxB×C
17 eqid xAFxGx=xAFxGx
18 17 fmpt xAFxGxB×CxAFxGx:AB×C
19 16 18 sylib ADF:ABG:ACxAFxGx:AB×C
20 19 ffnd ADF:ABG:ACxAFxGxFnA
21 20 adantr ADF:ABG:ACh:AB×CF=PhG=QhxAFxGxFnA
22 xpss B×CV×V
23 ffvelcdm h:AB×CzAhzB×C
24 22 23 sselid h:AB×CzAhzV×V
25 24 3ad2antl1 h:AB×CF=PhG=QhzAhzV×V
26 25 adantll ADF:ABG:ACh:AB×CF=PhG=QhzAhzV×V
27 fveq1 F=PhFz=Phz
28 1 coeq1i Ph=1stB×Ch
29 28 fveq1i Phz=1stB×Chz
30 27 29 eqtrdi F=PhFz=1stB×Chz
31 30 3ad2ant2 h:AB×CF=PhG=QhFz=1stB×Chz
32 31 ad2antlr ADF:ABG:ACh:AB×CF=PhG=QhzAFz=1stB×Chz
33 simpr1 ADF:ABG:ACh:AB×CF=PhG=Qhh:AB×C
34 fvco3 h:AB×CzA1stB×Chz=1stB×Chz
35 33 34 sylan ADF:ABG:ACh:AB×CF=PhG=QhzA1stB×Chz=1stB×Chz
36 23 3ad2antl1 h:AB×CF=PhG=QhzAhzB×C
37 36 adantll ADF:ABG:ACh:AB×CF=PhG=QhzAhzB×C
38 37 fvresd ADF:ABG:ACh:AB×CF=PhG=QhzA1stB×Chz=1sthz
39 32 35 38 3eqtrrd ADF:ABG:ACh:AB×CF=PhG=QhzA1sthz=Fz
40 fveq1 G=QhGz=Qhz
41 2 coeq1i Qh=2ndB×Ch
42 41 fveq1i Qhz=2ndB×Chz
43 40 42 eqtrdi G=QhGz=2ndB×Chz
44 43 3ad2ant3 h:AB×CF=PhG=QhGz=2ndB×Chz
45 44 ad2antlr ADF:ABG:ACh:AB×CF=PhG=QhzAGz=2ndB×Chz
46 fvco3 h:AB×CzA2ndB×Chz=2ndB×Chz
47 33 46 sylan ADF:ABG:ACh:AB×CF=PhG=QhzA2ndB×Chz=2ndB×Chz
48 37 fvresd ADF:ABG:ACh:AB×CF=PhG=QhzA2ndB×Chz=2ndhz
49 45 47 48 3eqtrrd ADF:ABG:ACh:AB×CF=PhG=QhzA2ndhz=Gz
50 eqopi hzV×V1sthz=Fz2ndhz=Gzhz=FzGz
51 26 39 49 50 syl12anc ADF:ABG:ACh:AB×CF=PhG=QhzAhz=FzGz
52 fveq2 x=zFx=Fz
53 fveq2 x=zGx=Gz
54 52 53 opeq12d x=zFxGx=FzGz
55 opex FzGzV
56 54 17 55 fvmpt zAxAFxGxz=FzGz
57 56 adantl ADF:ABG:ACh:AB×CF=PhG=QhzAxAFxGxz=FzGz
58 51 57 eqtr4d ADF:ABG:ACh:AB×CF=PhG=QhzAhz=xAFxGxz
59 9 21 58 eqfnfvd ADF:ABG:ACh:AB×CF=PhG=Qhh=xAFxGx
60 59 ex ADF:ABG:ACh:AB×CF=PhG=Qhh=xAFxGx
61 ffn F:ABFFnA
62 61 3ad2ant2 ADF:ABG:ACFFnA
63 fo1st 1st:VontoV
64 fofn 1st:VontoV1stFnV
65 63 64 ax-mp 1stFnV
66 ssv B×CV
67 fnssres 1stFnVB×CV1stB×CFnB×C
68 65 66 67 mp2an 1stB×CFnB×C
69 19 frnd ADF:ABG:ACranxAFxGxB×C
70 fnco 1stB×CFnB×CxAFxGxFnAranxAFxGxB×C1stB×CxAFxGxFnA
71 68 20 69 70 mp3an2i ADF:ABG:AC1stB×CxAFxGxFnA
72 fvco3 xAFxGx:AB×CzA1stB×CxAFxGxz=1stB×CxAFxGxz
73 19 72 sylan ADF:ABG:ACzA1stB×CxAFxGxz=1stB×CxAFxGxz
74 56 adantl ADF:ABG:ACzAxAFxGxz=FzGz
75 74 fveq2d ADF:ABG:ACzA1stB×CxAFxGxz=1stB×CFzGz
76 ffvelcdm F:ABzAFzB
77 ffvelcdm G:ACzAGzC
78 opelxpi FzBGzCFzGzB×C
79 76 77 78 syl2an F:ABzAG:ACzAFzGzB×C
80 79 anandirs F:ABG:ACzAFzGzB×C
81 80 3adantl1 ADF:ABG:ACzAFzGzB×C
82 81 fvresd ADF:ABG:ACzA1stB×CFzGz=1stFzGz
83 fvex FzV
84 fvex GzV
85 83 84 op1st 1stFzGz=Fz
86 82 85 eqtrdi ADF:ABG:ACzA1stB×CFzGz=Fz
87 73 75 86 3eqtrrd ADF:ABG:ACzAFz=1stB×CxAFxGxz
88 62 71 87 eqfnfvd ADF:ABG:ACF=1stB×CxAFxGx
89 1 coeq1i PxAFxGx=1stB×CxAFxGx
90 88 89 eqtr4di ADF:ABG:ACF=PxAFxGx
91 ffn G:ACGFnA
92 91 3ad2ant3 ADF:ABG:ACGFnA
93 fo2nd 2nd:VontoV
94 fofn 2nd:VontoV2ndFnV
95 93 94 ax-mp 2ndFnV
96 fnssres 2ndFnVB×CV2ndB×CFnB×C
97 95 66 96 mp2an 2ndB×CFnB×C
98 fnco 2ndB×CFnB×CxAFxGxFnAranxAFxGxB×C2ndB×CxAFxGxFnA
99 97 20 69 98 mp3an2i ADF:ABG:AC2ndB×CxAFxGxFnA
100 fvco3 xAFxGx:AB×CzA2ndB×CxAFxGxz=2ndB×CxAFxGxz
101 19 100 sylan ADF:ABG:ACzA2ndB×CxAFxGxz=2ndB×CxAFxGxz
102 74 fveq2d ADF:ABG:ACzA2ndB×CxAFxGxz=2ndB×CFzGz
103 81 fvresd ADF:ABG:ACzA2ndB×CFzGz=2ndFzGz
104 83 84 op2nd 2ndFzGz=Gz
105 103 104 eqtrdi ADF:ABG:ACzA2ndB×CFzGz=Gz
106 101 102 105 3eqtrrd ADF:ABG:ACzAGz=2ndB×CxAFxGxz
107 92 99 106 eqfnfvd ADF:ABG:ACG=2ndB×CxAFxGx
108 2 coeq1i QxAFxGx=2ndB×CxAFxGx
109 107 108 eqtr4di ADF:ABG:ACG=QxAFxGx
110 19 90 109 3jca ADF:ABG:ACxAFxGx:AB×CF=PxAFxGxG=QxAFxGx
111 feq1 h=xAFxGxh:AB×CxAFxGx:AB×C
112 coeq2 h=xAFxGxPh=PxAFxGx
113 112 eqeq2d h=xAFxGxF=PhF=PxAFxGx
114 coeq2 h=xAFxGxQh=QxAFxGx
115 114 eqeq2d h=xAFxGxG=QhG=QxAFxGx
116 111 113 115 3anbi123d h=xAFxGxh:AB×CF=PhG=QhxAFxGx:AB×CF=PxAFxGxG=QxAFxGx
117 110 116 syl5ibrcom ADF:ABG:ACh=xAFxGxh:AB×CF=PhG=Qh
118 60 117 impbid ADF:ABG:ACh:AB×CF=PhG=Qhh=xAFxGx
119 118 eubidv ADF:ABG:AC∃!hh:AB×CF=PhG=Qh∃!hh=xAFxGx
120 6 119 mpbird ADF:ABG:AC∃!hh:AB×CF=PhG=Qh