Metamath Proof Explorer


Theorem prf1st

Description: Cancellation of pairing with first projection. (Contributed by Mario Carneiro, 12-Jan-2017)

Ref Expression
Hypotheses prf1st.p P=F⟨,⟩FG
prf1st.c φFCFuncD
prf1st.d φGCFuncE
Assertion prf1st φD1stFEfuncP=F

Proof

Step Hyp Ref Expression
1 prf1st.p P=F⟨,⟩FG
2 prf1st.c φFCFuncD
3 prf1st.d φGCFuncE
4 eqid D×cE=D×cE
5 eqid BaseD=BaseD
6 eqid BaseE=BaseE
7 4 5 6 xpcbas BaseD×BaseE=BaseD×cE
8 eqid HomD×cE=HomD×cE
9 funcrcl FCFuncDCCatDCat
10 2 9 syl φCCatDCat
11 10 simprd φDCat
12 11 adantr φxBaseCDCat
13 funcrcl GCFuncECCatECat
14 3 13 syl φCCatECat
15 14 simprd φECat
16 15 adantr φxBaseCECat
17 eqid D1stFE=D1stFE
18 eqid BaseC=BaseC
19 relfunc RelCFuncD
20 1st2ndbr RelCFuncDFCFuncD1stFCFuncD2ndF
21 19 2 20 sylancr φ1stFCFuncD2ndF
22 18 5 21 funcf1 φ1stF:BaseCBaseD
23 22 ffvelcdmda φxBaseC1stFxBaseD
24 relfunc RelCFuncE
25 1st2ndbr RelCFuncEGCFuncE1stGCFuncE2ndG
26 24 3 25 sylancr φ1stGCFuncE2ndG
27 18 6 26 funcf1 φ1stG:BaseCBaseE
28 27 ffvelcdmda φxBaseC1stGxBaseE
29 23 28 opelxpd φxBaseC1stFx1stGxBaseD×BaseE
30 4 7 8 12 16 17 29 1stf1 φxBaseC1stD1stFE1stFx1stGx=1st1stFx1stGx
31 fvex 1stFxV
32 fvex 1stGxV
33 31 32 op1st 1st1stFx1stGx=1stFx
34 30 33 eqtrdi φxBaseC1stD1stFE1stFx1stGx=1stFx
35 34 mpteq2dva φxBaseC1stD1stFE1stFx1stGx=xBaseC1stFx
36 eqid HomC=HomC
37 1 18 36 2 3 prfval φP=xBaseC1stFx1stGxxBaseC,yBaseChxHomCyx2ndFyhx2ndGyh
38 fvex BaseCV
39 38 mptex xBaseC1stFx1stGxV
40 38 38 mpoex xBaseC,yBaseChxHomCyx2ndFyhx2ndGyhV
41 39 40 op1std P=xBaseC1stFx1stGxxBaseC,yBaseChxHomCyx2ndFyhx2ndGyh1stP=xBaseC1stFx1stGx
42 37 41 syl φ1stP=xBaseC1stFx1stGx
43 relfunc RelD×cEFuncD
44 4 11 15 17 1stfcl φD1stFED×cEFuncD
45 1st2ndbr RelD×cEFuncDD1stFED×cEFuncD1stD1stFED×cEFuncD2ndD1stFE
46 43 44 45 sylancr φ1stD1stFED×cEFuncD2ndD1stFE
47 7 5 46 funcf1 φ1stD1stFE:BaseD×BaseEBaseD
48 47 feqmptd φ1stD1stFE=uBaseD×BaseE1stD1stFEu
49 fveq2 u=1stFx1stGx1stD1stFEu=1stD1stFE1stFx1stGx
50 29 42 48 49 fmptco φ1stD1stFE1stP=xBaseC1stD1stFE1stFx1stGx
51 22 feqmptd φ1stF=xBaseC1stFx
52 35 50 51 3eqtr4d φ1stD1stFE1stP=1stF
53 11 ad2antrr φxBaseCyBaseCfxHomCyDCat
54 15 ad2antrr φxBaseCyBaseCfxHomCyECat
55 relfunc RelCFuncD×cE
56 1 4 2 3 prfcl φPCFuncD×cE
57 1st2ndbr RelCFuncD×cEPCFuncD×cE1stPCFuncD×cE2ndP
58 55 56 57 sylancr φ1stPCFuncD×cE2ndP
59 18 7 58 funcf1 φ1stP:BaseCBaseD×BaseE
60 59 ffvelcdmda φxBaseC1stPxBaseD×BaseE
61 60 adantrr φxBaseCyBaseC1stPxBaseD×BaseE
62 61 adantr φxBaseCyBaseCfxHomCy1stPxBaseD×BaseE
63 59 ffvelcdmda φyBaseC1stPyBaseD×BaseE
64 63 adantrl φxBaseCyBaseC1stPyBaseD×BaseE
65 64 adantr φxBaseCyBaseCfxHomCy1stPyBaseD×BaseE
66 4 7 8 53 54 17 62 65 1stf2 φxBaseCyBaseCfxHomCy1stPx2ndD1stFE1stPy=1st1stPxHomD×cE1stPy
67 66 fveq1d φxBaseCyBaseCfxHomCy1stPx2ndD1stFE1stPyx2ndPyf=1st1stPxHomD×cE1stPyx2ndPyf
68 58 adantr φxBaseCyBaseC1stPCFuncD×cE2ndP
69 simprl φxBaseCyBaseCxBaseC
70 simprr φxBaseCyBaseCyBaseC
71 18 36 8 68 69 70 funcf2 φxBaseCyBaseCx2ndPy:xHomCy1stPxHomD×cE1stPy
72 71 ffvelcdmda φxBaseCyBaseCfxHomCyx2ndPyf1stPxHomD×cE1stPy
73 72 fvresd φxBaseCyBaseCfxHomCy1st1stPxHomD×cE1stPyx2ndPyf=1stx2ndPyf
74 2 ad2antrr φxBaseCyBaseCfxHomCyFCFuncD
75 3 ad2antrr φxBaseCyBaseCfxHomCyGCFuncE
76 69 adantr φxBaseCyBaseCfxHomCyxBaseC
77 70 adantr φxBaseCyBaseCfxHomCyyBaseC
78 simpr φxBaseCyBaseCfxHomCyfxHomCy
79 1 18 36 74 75 76 77 78 prf2 φxBaseCyBaseCfxHomCyx2ndPyf=x2ndFyfx2ndGyf
80 79 fveq2d φxBaseCyBaseCfxHomCy1stx2ndPyf=1stx2ndFyfx2ndGyf
81 fvex x2ndFyfV
82 fvex x2ndGyfV
83 81 82 op1st 1stx2ndFyfx2ndGyf=x2ndFyf
84 80 83 eqtrdi φxBaseCyBaseCfxHomCy1stx2ndPyf=x2ndFyf
85 67 73 84 3eqtrd φxBaseCyBaseCfxHomCy1stPx2ndD1stFE1stPyx2ndPyf=x2ndFyf
86 85 mpteq2dva φxBaseCyBaseCfxHomCy1stPx2ndD1stFE1stPyx2ndPyf=fxHomCyx2ndFyf
87 eqid HomD=HomD
88 46 adantr φxBaseCyBaseC1stD1stFED×cEFuncD2ndD1stFE
89 7 8 87 88 61 64 funcf2 φxBaseCyBaseC1stPx2ndD1stFE1stPy:1stPxHomD×cE1stPy1stD1stFE1stPxHomD1stD1stFE1stPy
90 fcompt 1stPx2ndD1stFE1stPy:1stPxHomD×cE1stPy1stD1stFE1stPxHomD1stD1stFE1stPyx2ndPy:xHomCy1stPxHomD×cE1stPy1stPx2ndD1stFE1stPyx2ndPy=fxHomCy1stPx2ndD1stFE1stPyx2ndPyf
91 89 71 90 syl2anc φxBaseCyBaseC1stPx2ndD1stFE1stPyx2ndPy=fxHomCy1stPx2ndD1stFE1stPyx2ndPyf
92 21 adantr φxBaseCyBaseC1stFCFuncD2ndF
93 18 36 87 92 69 70 funcf2 φxBaseCyBaseCx2ndFy:xHomCy1stFxHomD1stFy
94 93 feqmptd φxBaseCyBaseCx2ndFy=fxHomCyx2ndFyf
95 86 91 94 3eqtr4d φxBaseCyBaseC1stPx2ndD1stFE1stPyx2ndPy=x2ndFy
96 95 3impb φxBaseCyBaseC1stPx2ndD1stFE1stPyx2ndPy=x2ndFy
97 96 mpoeq3dva φxBaseC,yBaseC1stPx2ndD1stFE1stPyx2ndPy=xBaseC,yBaseCx2ndFy
98 18 21 funcfn2 φ2ndFFnBaseC×BaseC
99 fnov 2ndFFnBaseC×BaseC2ndF=xBaseC,yBaseCx2ndFy
100 98 99 sylib φ2ndF=xBaseC,yBaseCx2ndFy
101 97 100 eqtr4d φxBaseC,yBaseC1stPx2ndD1stFE1stPyx2ndPy=2ndF
102 52 101 opeq12d φ1stD1stFE1stPxBaseC,yBaseC1stPx2ndD1stFE1stPyx2ndPy=1stF2ndF
103 18 56 44 cofuval φD1stFEfuncP=1stD1stFE1stPxBaseC,yBaseC1stPx2ndD1stFE1stPyx2ndPy
104 1st2nd RelCFuncDFCFuncDF=1stF2ndF
105 19 2 104 sylancr φF=1stF2ndF
106 102 103 105 3eqtr4d φD1stFEfuncP=F