Metamath Proof Explorer


Theorem fmptcof2

Description: Composition of two functions expressed as ordered-pair class abstractions. (Contributed by FL, 21-Jun-2012) (Revised by Mario Carneiro, 24-Jul-2014) (Revised by Thierry Arnoux, 10-May-2017)

Ref Expression
Hypotheses fmptcof2.x _xS
fmptcof2.y _yT
fmptcof2.1 _xA
fmptcof2.2 _xB
fmptcof2.3 xφ
fmptcof2.4 φxARB
fmptcof2.5 φF=xAR
fmptcof2.6 φG=yBS
fmptcof2.7 y=RS=T
Assertion fmptcof2 φGF=xAT

Proof

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