Metamath Proof Explorer


Theorem fmptco

Description: Composition of two functions expressed as ordered-pair class abstractions. If F has the equation ( x + 2 ) and G the equation ( 3 * z ) then ( G o. F ) has the equation ( 3 * ( x + 2 ) ) . (Contributed by FL, 21-Jun-2012) (Revised by Mario Carneiro, 24-Jul-2014)

Ref Expression
Hypotheses fmptco.1 φxARB
fmptco.2 φF=xAR
fmptco.3 φG=yBS
fmptco.4 y=RS=T
Assertion fmptco φGF=xAT

Proof

Step Hyp Ref Expression
1 fmptco.1 φxARB
2 fmptco.2 φF=xAR
3 fmptco.3 φG=yBS
4 fmptco.4 y=RS=T
5 relco RelGF
6 mptrel RelxAT
7 2 1 fmpt3d φF:AB
8 7 ffund φFunF
9 funbrfv FunFzFuFz=u
10 9 imp FunFzFuFz=u
11 8 10 sylan φzFuFz=u
12 11 eqcomd φzFuu=Fz
13 12 a1d φzFuuGwu=Fz
14 13 expimpd φzFuuGwu=Fz
15 14 pm4.71rd φzFuuGwu=FzzFuuGw
16 15 exbidv φuzFuuGwuu=FzzFuuGw
17 fvex FzV
18 breq2 u=FzzFuzFFz
19 breq1 u=FzuGwFzGw
20 18 19 anbi12d u=FzzFuuGwzFFzFzGw
21 17 20 ceqsexv uu=FzzFuuGwzFFzFzGw
22 funfvbrb FunFzdomFzFFz
23 8 22 syl φzdomFzFFz
24 7 fdmd φdomF=A
25 24 eleq2d φzdomFzA
26 23 25 bitr3d φzFFzzA
27 2 fveq1d φFz=xARz
28 eqidd φw=w
29 27 3 28 breq123d φFzGwxARzyBSw
30 26 29 anbi12d φzFFzFzGwzAxARzyBSw
31 nfcv _xz
32 nfv xφ
33 nffvmpt1 _xxARz
34 nfcv _xyBS
35 nfcv _xw
36 33 34 35 nfbr xxARzyBSw
37 nfcsb1v _xz/xT
38 37 nfeq2 xw=z/xT
39 36 38 nfbi xxARzyBSww=z/xT
40 32 39 nfim xφxARzyBSww=z/xT
41 fveq2 x=zxARx=xARz
42 41 breq1d x=zxARxyBSwxARzyBSw
43 csbeq1a x=zT=z/xT
44 43 eqeq2d x=zw=Tw=z/xT
45 42 44 bibi12d x=zxARxyBSww=TxARzyBSww=z/xT
46 45 imbi2d x=zφxARxyBSww=TφxARzyBSww=z/xT
47 vex wV
48 simpl y=Ru=wy=R
49 48 eleq1d y=Ru=wyBRB
50 id u=wu=w
51 50 4 eqeqan12rd y=Ru=wu=Sw=T
52 49 51 anbi12d y=Ru=wyBu=SRBw=T
53 df-mpt yBS=yu|yBu=S
54 52 53 brabga RBwVRyBSwRBw=T
55 1 47 54 sylancl φxARyBSwRBw=T
56 id xAxA
57 eqid xAR=xAR
58 57 fvmpt2 xARBxARx=R
59 56 1 58 syl2an2 φxAxARx=R
60 59 breq1d φxAxARxyBSwRyBSw
61 1 biantrurd φxAw=TRBw=T
62 55 60 61 3bitr4d φxAxARxyBSww=T
63 62 expcom xAφxARxyBSww=T
64 31 40 46 63 vtoclgaf zAφxARzyBSww=z/xT
65 64 impcom φzAxARzyBSww=z/xT
66 65 pm5.32da φzAxARzyBSwzAw=z/xT
67 30 66 bitrd φzFFzFzGwzAw=z/xT
68 21 67 bitrid φuu=FzzFuuGwzAw=z/xT
69 16 68 bitrd φuzFuuGwzAw=z/xT
70 vex zV
71 70 47 opelco zwGFuzFuuGw
72 df-mpt xAT=xv|xAv=T
73 72 eleq2i zwxATzwxv|xAv=T
74 nfv xzA
75 37 nfeq2 xv=z/xT
76 74 75 nfan xzAv=z/xT
77 nfv vzAw=z/xT
78 eleq1w x=zxAzA
79 43 eqeq2d x=zv=Tv=z/xT
80 78 79 anbi12d x=zxAv=TzAv=z/xT
81 eqeq1 v=wv=z/xTw=z/xT
82 81 anbi2d v=wzAv=z/xTzAw=z/xT
83 76 77 70 47 80 82 opelopabf zwxv|xAv=TzAw=z/xT
84 73 83 bitri zwxATzAw=z/xT
85 69 71 84 3bitr4g φzwGFzwxAT
86 5 6 85 eqrelrdv φGF=xAT