Metamath Proof Explorer


Theorem fmpoco

Description: Composition of two functions. Variation of fmptco when the second function has two arguments. (Contributed by Mario Carneiro, 8-Feb-2015)

Ref Expression
Hypotheses fmpoco.1 φxAyBRC
fmpoco.2 φF=xA,yBR
fmpoco.3 φG=zCS
fmpoco.4 z=RS=T
Assertion fmpoco φGF=xA,yBT

Proof

Step Hyp Ref Expression
1 fmpoco.1 φxAyBRC
2 fmpoco.2 φF=xA,yBR
3 fmpoco.3 φG=zCS
4 fmpoco.4 z=RS=T
5 1 ralrimivva φxAyBRC
6 eqid xA,yBR=xA,yBR
7 6 fmpo xAyBRCxA,yBR:A×BC
8 5 7 sylib φxA,yBR:A×BC
9 nfcv _uR
10 nfcv _vR
11 nfcv _xv
12 nfcsb1v _xu/xR
13 11 12 nfcsbw _xv/yu/xR
14 nfcsb1v _yv/yu/xR
15 csbeq1a x=uR=u/xR
16 csbeq1a y=vu/xR=v/yu/xR
17 15 16 sylan9eq x=uy=vR=v/yu/xR
18 9 10 13 14 17 cbvmpo xA,yBR=uA,vBv/yu/xR
19 vex uV
20 vex vV
21 19 20 op2ndd w=uv2ndw=v
22 21 csbeq1d w=uv2ndw/y1stw/xR=v/y1stw/xR
23 19 20 op1std w=uv1stw=u
24 23 csbeq1d w=uv1stw/xR=u/xR
25 24 csbeq2dv w=uvv/y1stw/xR=v/yu/xR
26 22 25 eqtrd w=uv2ndw/y1stw/xR=v/yu/xR
27 26 mpompt wA×B2ndw/y1stw/xR=uA,vBv/yu/xR
28 18 27 eqtr4i xA,yBR=wA×B2ndw/y1stw/xR
29 28 fmpt wA×B2ndw/y1stw/xRCxA,yBR:A×BC
30 8 29 sylibr φwA×B2ndw/y1stw/xRC
31 2 28 eqtrdi φF=wA×B2ndw/y1stw/xR
32 30 31 3 fmptcos φGF=wA×B2ndw/y1stw/xR/zS
33 26 csbeq1d w=uv2ndw/y1stw/xR/zS=v/yu/xR/zS
34 33 mpompt wA×B2ndw/y1stw/xR/zS=uA,vBv/yu/xR/zS
35 nfcv _uR/zS
36 nfcv _vR/zS
37 nfcv _xS
38 13 37 nfcsbw _xv/yu/xR/zS
39 nfcv _yS
40 14 39 nfcsbw _yv/yu/xR/zS
41 17 csbeq1d x=uy=vR/zS=v/yu/xR/zS
42 35 36 38 40 41 cbvmpo xA,yBR/zS=uA,vBv/yu/xR/zS
43 34 42 eqtr4i wA×B2ndw/y1stw/xR/zS=xA,yBR/zS
44 1 3impb φxAyBRC
45 nfcvd RC_zT
46 45 4 csbiegf RCR/zS=T
47 44 46 syl φxAyBR/zS=T
48 47 mpoeq3dva φxA,yBR/zS=xA,yBT
49 43 48 eqtrid φwA×B2ndw/y1stw/xR/zS=xA,yBT
50 32 49 eqtrd φGF=xA,yBT