Metamath Proof Explorer


Theorem fvmpocurryd

Description: The value of the value of a curried operation given in maps-to notation is the operation value of the original operation. (Contributed by AV, 27-Oct-2019)

Ref Expression
Hypotheses fvmpocurryd.f F=xX,yYC
fvmpocurryd.c φxXyYCV
fvmpocurryd.y φYW
fvmpocurryd.a φAX
fvmpocurryd.b φBY
Assertion fvmpocurryd φcurryFAB=AFB

Proof

Step Hyp Ref Expression
1 fvmpocurryd.f F=xX,yYC
2 fvmpocurryd.c φxXyYCV
3 fvmpocurryd.y φYW
4 fvmpocurryd.a φAX
5 fvmpocurryd.b φBY
6 csbcom B/bA/ab/ya/xC=A/aB/bb/ya/xC
7 csbcow B/bb/ya/xC=B/ya/xC
8 7 csbeq2i A/aB/bb/ya/xC=A/aB/ya/xC
9 csbcom A/aB/ya/xC=B/yA/aa/xC
10 csbcow A/aa/xC=A/xC
11 10 csbeq2i B/yA/aa/xC=B/yA/xC
12 9 11 eqtri A/aB/ya/xC=B/yA/xC
13 6 8 12 3eqtri B/bA/ab/ya/xC=B/yA/xC
14 nfcsb1v _xA/xC
15 14 nfel1 xA/xCV
16 nfcsb1v _yB/yA/xC
17 16 nfel1 yB/yA/xCV
18 csbeq1a x=AC=A/xC
19 18 eleq1d x=ACVA/xCV
20 csbeq1a y=BA/xC=B/yA/xC
21 20 eleq1d y=BA/xCVB/yA/xCV
22 15 17 19 21 rspc2 AXBYxXyYCVB/yA/xCV
23 22 imp AXBYxXyYCVB/yA/xCV
24 4 5 2 23 syl21anc φB/yA/xCV
25 13 24 eqeltrid φB/bA/ab/ya/xCV
26 eqid bYA/ab/ya/xC=bYA/ab/ya/xC
27 26 fvmpts BYB/bA/ab/ya/xCVbYA/ab/ya/xCB=B/bA/ab/ya/xC
28 5 25 27 syl2anc φbYA/ab/ya/xCB=B/bA/ab/ya/xC
29 nfcv _aC
30 nfcv _bC
31 nfcv _xb
32 nfcsb1v _xa/xC
33 31 32 nfcsbw _xb/ya/xC
34 nfcsb1v _yb/ya/xC
35 csbeq1a x=aC=a/xC
36 csbeq1a y=ba/xC=b/ya/xC
37 35 36 sylan9eq x=ay=bC=b/ya/xC
38 29 30 33 34 37 cbvmpo xX,yYC=aX,bYb/ya/xC
39 1 38 eqtri F=aX,bYb/ya/xC
40 32 nfel1 xa/xCV
41 34 nfel1 yb/ya/xCV
42 35 eleq1d x=aCVa/xCV
43 36 eleq1d y=ba/xCVb/ya/xCV
44 40 41 42 43 rspc2 aXbYxXyYCVb/ya/xCV
45 2 44 mpan9 φaXbYb/ya/xCV
46 45 ralrimivva φaXbYb/ya/xCV
47 5 ne0d φY
48 39 46 47 3 4 mpocurryvald φcurryFA=bYA/ab/ya/xC
49 48 fveq1d φcurryFAB=bYA/ab/ya/xCB
50 1 a1i φF=xX,yYC
51 csbcow y/bb/ya/xC=y/ya/xC
52 csbid y/ya/xC=a/xC
53 51 52 eqtr2i a/xC=y/bb/ya/xC
54 53 a1i φa/xC=y/bb/ya/xC
55 54 csbeq2dv φx/aa/xC=x/ay/bb/ya/xC
56 csbcow x/aa/xC=x/xC
57 csbid x/xC=C
58 56 57 eqtri x/aa/xC=C
59 csbcom x/ay/bb/ya/xC=y/bx/ab/ya/xC
60 55 58 59 3eqtr3g φC=y/bx/ab/ya/xC
61 csbeq1 x=Ax/ab/ya/xC=A/ab/ya/xC
62 61 adantr x=Ay=Bx/ab/ya/xC=A/ab/ya/xC
63 62 csbeq2dv x=Ay=By/bx/ab/ya/xC=y/bA/ab/ya/xC
64 csbeq1 y=By/bA/ab/ya/xC=B/bA/ab/ya/xC
65 64 adantl x=Ay=By/bA/ab/ya/xC=B/bA/ab/ya/xC
66 63 65 eqtrd x=Ay=By/bx/ab/ya/xC=B/bA/ab/ya/xC
67 60 66 sylan9eq φx=Ay=BC=B/bA/ab/ya/xC
68 eqidd φx=AY=Y
69 nfv xφ
70 nfv yφ
71 nfcv _yA
72 nfcv _xB
73 nfcv _xA
74 73 33 nfcsbw _xA/ab/ya/xC
75 72 74 nfcsbw _xB/bA/ab/ya/xC
76 13 16 nfcxfr _yB/bA/ab/ya/xC
77 50 67 68 4 5 25 69 70 71 72 75 76 ovmpodxf φAFB=B/bA/ab/ya/xC
78 28 49 77 3eqtr4d φcurryFAB=AFB