ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  fmptco GIF version

Theorem fmptco 5874
Description: Composition of two functions expressed as ordered-pair class abstractions. If 𝐹 has the equation ( x + 2 ) and 𝐺 the equation ( 3 * z ) then (𝐺𝐹) has the equation ( 3 * ( x + 2 ) ) . (Contributed by FL, 21-Jun-2012.) (Revised by Mario Carneiro, 24-Jul-2014.)
Hypotheses
Ref Expression
fmptco.1 ((𝜑𝑥𝐴) → 𝑅𝐵)
fmptco.2 (𝜑𝐹 = (𝑥𝐴𝑅))
fmptco.3 (𝜑𝐺 = (𝑦𝐵𝑆))
fmptco.4 (𝑦 = 𝑅𝑆 = 𝑇)
Assertion
Ref Expression
fmptco (𝜑 → (𝐺𝐹) = (𝑥𝐴𝑇))
Distinct variable groups:   𝑥,𝐴   𝑥,𝑦,𝐵   𝑦,𝑅   𝜑,𝑥   𝑥,𝑆   𝑦,𝑇
Allowed substitution hints:   𝜑(𝑦)   𝐴(𝑦)   𝑅(𝑥)   𝑆(𝑦)   𝑇(𝑥)   𝐹(𝑥, 𝑦)   𝐺(𝑥, 𝑦)

Proof of Theorem fmptco
Dummy variables 𝑣 𝑢 𝑤 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 relco 5286 . 2 Rel (𝐺𝐹)
2 funmpt 5415 . . 3 Fun (𝑥𝐴𝑇)
3 funrel 5394 . . 3 (Fun (𝑥𝐴𝑇) → Rel (𝑥𝐴𝑇))
42, 3ax-mp 5 . 2 Rel (𝑥𝐴𝑇)
5 fmptco.1 . . . . . . . . . . . . 13 ((𝜑𝑥𝐴) → 𝑅𝐵)
6 eqid 2238 . . . . . . . . . . . . 13 (𝑥𝐴𝑅) = (𝑥𝐴𝑅)
75, 6fmptd 5862 . . . . . . . . . . . 12 (𝜑 → (𝑥𝐴𝑅):𝐴𝐵)
8 fmptco.2 . . . . . . . . . . . . 13 (𝜑𝐹 = (𝑥𝐴𝑅))
98feq1d 5520 . . . . . . . . . . . 12 (𝜑 → (𝐹:𝐴𝐵 ↔ (𝑥𝐴𝑅):𝐴𝐵))
107, 9mpbird 167 . . . . . . . . . . 11 (𝜑𝐹:𝐴𝐵)
11 ffun 5536 . . . . . . . . . . 11 (𝐹:𝐴𝐵 → Fun 𝐹)
1210, 11syl 14 . . . . . . . . . 10 (𝜑 → Fun 𝐹)
13 funbrfv 5739 . . . . . . . . . . 11 (Fun 𝐹 → (𝑧𝐹𝑢 → (𝐹𝑧) = 𝑢))
1413imp 124 . . . . . . . . . 10 ((Fun 𝐹𝑧𝐹𝑢) → (𝐹𝑧) = 𝑢)
1512, 14sylan 283 . . . . . . . . 9 ((𝜑𝑧𝐹𝑢) → (𝐹𝑧) = 𝑢)
1615eqcomd 2244 . . . . . . . 8 ((𝜑𝑧𝐹𝑢) → 𝑢 = (𝐹𝑧))
1716a1d 22 . . . . . . 7 ((𝜑𝑧𝐹𝑢) → (𝑢𝐺𝑤𝑢 = (𝐹𝑧)))
1817expimpd 363 . . . . . 6 (𝜑 → ((𝑧𝐹𝑢𝑢𝐺𝑤) → 𝑢 = (𝐹𝑧)))
1918pm4.71rd 398 . . . . 5 (𝜑 → ((𝑧𝐹𝑢𝑢𝐺𝑤) ↔ (𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤))))
2019exbidv 1878 . . . 4 (𝜑 → (∃𝑢(𝑧𝐹𝑢𝑢𝐺𝑤) ↔ ∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤))))
21 exsimpl 1670 . . . . . . 7 (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) → ∃𝑢 𝑢 = (𝐹𝑧))
22 isset 2828 . . . . . . 7 ((𝐹𝑧) ∈ V ↔ ∃𝑢 𝑢 = (𝐹𝑧))
2321, 22sylibr 134 . . . . . 6 (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) → (𝐹𝑧) ∈ V)
2423a1i 9 . . . . 5 (𝜑 → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) → (𝐹𝑧) ∈ V))
2512adantr 276 . . . . . . . 8 ((𝜑𝑧𝐴) → Fun 𝐹)
26 fdm 5539 . . . . . . . . . . 11 (𝐹:𝐴𝐵 → dom 𝐹 = 𝐴)
2710, 26syl 14 . . . . . . . . . 10 (𝜑 → dom 𝐹 = 𝐴)
2827eleq2d 2308 . . . . . . . . 9 (𝜑 → (𝑧 ∈ dom 𝐹𝑧𝐴))
2928biimpar 297 . . . . . . . 8 ((𝜑𝑧𝐴) → 𝑧 ∈ dom 𝐹)
30 funfvex 5712 . . . . . . . 8 ((Fun 𝐹𝑧 ∈ dom 𝐹) → (𝐹𝑧) ∈ V)
3125, 29, 30syl2anc 415 . . . . . . 7 ((𝜑𝑧𝐴) → (𝐹𝑧) ∈ V)
3231adantrr 483 . . . . . 6 ((𝜑 ∧ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)) → (𝐹𝑧) ∈ V)
3332ex 115 . . . . 5 (𝜑 → ((𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇) → (𝐹𝑧) ∈ V))
34 breq2 4134 . . . . . . . . 9 (𝑢 = (𝐹𝑧) → (𝑧𝐹𝑢𝑧𝐹(𝐹𝑧)))
35 breq1 4133 . . . . . . . . 9 (𝑢 = (𝐹𝑧) → (𝑢𝐺𝑤 ↔ (𝐹𝑧)𝐺𝑤))
3634, 35anbi12d 477 . . . . . . . 8 (𝑢 = (𝐹𝑧) → ((𝑧𝐹𝑢𝑢𝐺𝑤) ↔ (𝑧𝐹(𝐹𝑧) ∧ (𝐹𝑧)𝐺𝑤)))
3736ceqsexgv 2955 . . . . . . 7 ((𝐹𝑧) ∈ V → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) ↔ (𝑧𝐹(𝐹𝑧) ∧ (𝐹𝑧)𝐺𝑤)))
38 funfvbrb 5822 . . . . . . . . . . 11 (Fun 𝐹 → (𝑧 ∈ dom 𝐹𝑧𝐹(𝐹𝑧)))
3912, 38syl 14 . . . . . . . . . 10 (𝜑 → (𝑧 ∈ dom 𝐹𝑧𝐹(𝐹𝑧)))
4039, 28bitr3d 190 . . . . . . . . 9 (𝜑 → (𝑧𝐹(𝐹𝑧) ↔ 𝑧𝐴))
418fveq1d 5697 . . . . . . . . . 10 (𝜑 → (𝐹𝑧) = ((𝑥𝐴𝑅)‘𝑧))
42 fmptco.3 . . . . . . . . . 10 (𝜑𝐺 = (𝑦𝐵𝑆))
43 eqidd 2239 . . . . . . . . . 10 (𝜑𝑤 = 𝑤)
4441, 42, 43breq123d 4144 . . . . . . . . 9 (𝜑 → ((𝐹𝑧)𝐺𝑤 ↔ ((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤))
4540, 44anbi12d 477 . . . . . . . 8 (𝜑 → ((𝑧𝐹(𝐹𝑧) ∧ (𝐹𝑧)𝐺𝑤) ↔ (𝑧𝐴 ∧ ((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤)))
46 nfcv 2392 . . . . . . . . . . 11 𝑥𝑧
47 nfv 1581 . . . . . . . . . . . 12 𝑥𝜑
48 nffvmpt1 5706 . . . . . . . . . . . . . 14 𝑥((𝑥𝐴𝑅)‘𝑧)
49 nfcv 2392 . . . . . . . . . . . . . 14 𝑥(𝑦𝐵𝑆)
50 nfcv 2392 . . . . . . . . . . . . . 14 𝑥𝑤
5148, 49, 50nfbr 4177 . . . . . . . . . . . . 13 𝑥((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤
52 nfcsb1v 3180 . . . . . . . . . . . . . 14 𝑥𝑧 / 𝑥𝑇
5352nfeq2 2404 . . . . . . . . . . . . 13 𝑥 𝑤 = 𝑧 / 𝑥𝑇
5451, 53nfbi 1642 . . . . . . . . . . . 12 𝑥(((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇)
5547, 54nfim 1625 . . . . . . . . . . 11 𝑥(𝜑 → (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇))
56 fveq2 5695 . . . . . . . . . . . . . 14 (𝑥 = 𝑧 → ((𝑥𝐴𝑅)‘𝑥) = ((𝑥𝐴𝑅)‘𝑧))
5756breq1d 4140 . . . . . . . . . . . . 13 (𝑥 = 𝑧 → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤 ↔ ((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤))
58 csbeq1a 3156 . . . . . . . . . . . . . 14 (𝑥 = 𝑧𝑇 = 𝑧 / 𝑥𝑇)
5958eqeq2d 2250 . . . . . . . . . . . . 13 (𝑥 = 𝑧 → (𝑤 = 𝑇𝑤 = 𝑧 / 𝑥𝑇))
6057, 59bibi12d 235 . . . . . . . . . . . 12 (𝑥 = 𝑧 → ((((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑤 = 𝑇) ↔ (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇)))
6160imbi2d 230 . . . . . . . . . . 11 (𝑥 = 𝑧 → ((𝜑 → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑤 = 𝑇)) ↔ (𝜑 → (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇))))
62 vex 2824 . . . . . . . . . . . . . 14 𝑤 ∈ V
63 simpl 109 . . . . . . . . . . . . . . . . 17 ((𝑦 = 𝑅𝑢 = 𝑤) → 𝑦 = 𝑅)
6463eleq1d 2307 . . . . . . . . . . . . . . . 16 ((𝑦 = 𝑅𝑢 = 𝑤) → (𝑦𝐵𝑅𝐵))
65 simpr 110 . . . . . . . . . . . . . . . . 17 ((𝑦 = 𝑅𝑢 = 𝑤) → 𝑢 = 𝑤)
66 fmptco.4 . . . . . . . . . . . . . . . . . 18 (𝑦 = 𝑅𝑆 = 𝑇)
6766adantr 276 . . . . . . . . . . . . . . . . 17 ((𝑦 = 𝑅𝑢 = 𝑤) → 𝑆 = 𝑇)
6865, 67eqeq12d 2253 . . . . . . . . . . . . . . . 16 ((𝑦 = 𝑅𝑢 = 𝑤) → (𝑢 = 𝑆𝑤 = 𝑇))
6964, 68anbi12d 477 . . . . . . . . . . . . . . 15 ((𝑦 = 𝑅𝑢 = 𝑤) → ((𝑦𝐵𝑢 = 𝑆) ↔ (𝑅𝐵𝑤 = 𝑇)))
70 df-mpt 4194 . . . . . . . . . . . . . . 15 (𝑦𝐵𝑆) = {⟨𝑦, 𝑢⟩ ∣ (𝑦𝐵𝑢 = 𝑆)}
7169, 70brabga 4406 . . . . . . . . . . . . . 14 ((𝑅𝐵𝑤 ∈ V) → (𝑅(𝑦𝐵𝑆)𝑤 ↔ (𝑅𝐵𝑤 = 𝑇)))
725, 62, 71sylancl 417 . . . . . . . . . . . . 13 ((𝜑𝑥𝐴) → (𝑅(𝑦𝐵𝑆)𝑤 ↔ (𝑅𝐵𝑤 = 𝑇)))
73 simpr 110 . . . . . . . . . . . . . . 15 ((𝜑𝑥𝐴) → 𝑥𝐴)
746fvmpt2 5789 . . . . . . . . . . . . . . 15 ((𝑥𝐴𝑅𝐵) → ((𝑥𝐴𝑅)‘𝑥) = 𝑅)
7573, 5, 74syl2anc 415 . . . . . . . . . . . . . 14 ((𝜑𝑥𝐴) → ((𝑥𝐴𝑅)‘𝑥) = 𝑅)
7675breq1d 4140 . . . . . . . . . . . . 13 ((𝜑𝑥𝐴) → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑅(𝑦𝐵𝑆)𝑤))
775biantrurd 305 . . . . . . . . . . . . 13 ((𝜑𝑥𝐴) → (𝑤 = 𝑇 ↔ (𝑅𝐵𝑤 = 𝑇)))
7872, 76, 773bitr4d 220 . . . . . . . . . . . 12 ((𝜑𝑥𝐴) → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑤 = 𝑇))
7978expcom 116 . . . . . . . . . . 11 (𝑥𝐴 → (𝜑 → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑤 = 𝑇)))
8046, 55, 61, 79vtoclgaf 2888 . . . . . . . . . 10 (𝑧𝐴 → (𝜑 → (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇)))
8180impcom 125 . . . . . . . . 9 ((𝜑𝑧𝐴) → (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇))
8281pm5.32da 456 . . . . . . . 8 (𝜑 → ((𝑧𝐴 ∧ ((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
8345, 82bitrd 188 . . . . . . 7 (𝜑 → ((𝑧𝐹(𝐹𝑧) ∧ (𝐹𝑧)𝐺𝑤) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
8437, 83sylan9bbr 467 . . . . . 6 ((𝜑 ∧ (𝐹𝑧) ∈ V) → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
8584ex 115 . . . . 5 (𝜑 → ((𝐹𝑧) ∈ V → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇))))
8624, 33, 85pm5.21ndd 717 . . . 4 (𝜑 → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
8720, 86bitrd 188 . . 3 (𝜑 → (∃𝑢(𝑧𝐹𝑢𝑢𝐺𝑤) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
88 vex 2824 . . . 4 𝑧 ∈ V
8988, 62opelco 4952 . . 3 (⟨𝑧, 𝑤⟩ ∈ (𝐺𝐹) ↔ ∃𝑢(𝑧𝐹𝑢𝑢𝐺𝑤))
90 df-mpt 4194 . . . . 5 (𝑥𝐴𝑇) = {⟨𝑥, 𝑣⟩ ∣ (𝑥𝐴𝑣 = 𝑇)}
9190eleq2i 2305 . . . 4 (⟨𝑧, 𝑤⟩ ∈ (𝑥𝐴𝑇) ↔ ⟨𝑧, 𝑤⟩ ∈ {⟨𝑥, 𝑣⟩ ∣ (𝑥𝐴𝑣 = 𝑇)})
92 nfv 1581 . . . . . 6 𝑥 𝑧𝐴
9352nfeq2 2404 . . . . . 6 𝑥 𝑣 = 𝑧 / 𝑥𝑇
9492, 93nfan 1618 . . . . 5 𝑥(𝑧𝐴𝑣 = 𝑧 / 𝑥𝑇)
95 nfv 1581 . . . . 5 𝑣(𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)
96 eleq1 2301 . . . . . 6 (𝑥 = 𝑧 → (𝑥𝐴𝑧𝐴))
9758eqeq2d 2250 . . . . . 6 (𝑥 = 𝑧 → (𝑣 = 𝑇𝑣 = 𝑧 / 𝑥𝑇))
9896, 97anbi12d 477 . . . . 5 (𝑥 = 𝑧 → ((𝑥𝐴𝑣 = 𝑇) ↔ (𝑧𝐴𝑣 = 𝑧 / 𝑥𝑇)))
99 eqeq1 2245 . . . . . 6 (𝑣 = 𝑤 → (𝑣 = 𝑧 / 𝑥𝑇𝑤 = 𝑧 / 𝑥𝑇))
10099anbi2d 468 . . . . 5 (𝑣 = 𝑤 → ((𝑧𝐴𝑣 = 𝑧 / 𝑥𝑇) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
10194, 95, 88, 62, 98, 100opelopabf 4417 . . . 4 (⟨𝑧, 𝑤⟩ ∈ {⟨𝑥, 𝑣⟩ ∣ (𝑥𝐴𝑣 = 𝑇)} ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇))
10291, 101bitri 184 . . 3 (⟨𝑧, 𝑤⟩ ∈ (𝑥𝐴𝑇) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇))
10387, 89, 1023bitr4g 223 . 2 (𝜑 → (⟨𝑧, 𝑤⟩ ∈ (𝐺𝐹) ↔ ⟨𝑧, 𝑤⟩ ∈ (𝑥𝐴𝑇)))
1041, 4, 103eqrelrdv 4871 1 (𝜑 → (𝐺𝐹) = (𝑥𝐴𝑇))
Colors of variables:    wff set class
This proof depends on syntax axioms:  wi 4  wa 104  wb 105   = wceq 1402  wex 1545  wcel 2209  Vcvv 2821  csb 3147  cop 3712   class class class wbr 4130  {copab 4191  cmpt 4192  dom cdm 4774  ccom 4778  Rel wrel 4779  Fun wfun 5371  wf 5373  cfv 5377
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-io 721  ax-5 1500  ax-7 1501  ax-gen 1502  ax-ie1 1546  ax-ie2 1547  ax-8 1557  ax-10 1558  ax-11 1559  ax-i12 1560  ax-bndl 1562  ax-4 1563  ax-17 1579  ax-i9 1583  ax-ial 1587  ax-i5r 1588  ax-14 2212  ax-ext 2220  ax-sep 4249  ax-pow 4311  ax-pr 4346
This proof depends on definitions:  df-bi 117  df-3an 1011  df-tru 1405  df-nf 1514  df-sb 1816  df-eu 2089  df-mo 2090  df-clab 2225  df-cleq 2231  df-clel 2234  df-nfc 2381  df-ral 2533  df-rex 2534  df-rab 2537  df-v 2823  df-sbc 3052  df-csb 3148  df-un 3224  df-in 3226  df-ss 3233  df-pw 3690  df-sn 3715  df-pr 3716  df-op 3718  df-uni 3936  df-br 4131  df-opab 4193  df-mpt 4194  df-id 4438  df-xp 4780  df-rel 4781  df-cnv 4782  df-co 4783  df-dm 4784  df-rn 4785  df-res 4786  df-ima 4787  df-iota 5337  df-fun 5379  df-fn 5380  df-f 5381  df-fv 5385
This theorem is used by:  fmptcof  5875  cofmpt  5877  fcompt  5878  fcoconst  5879  ofco  6321  gzsummhm2  14146  gsummhm2fi  14165  prdsidlem  14193  pws0g  14213  pwsinvg  14215  pwssub  14216  psrlinv  15075  lmcn2  15381  cdivcncfap  15705  negfcncf  15707  dvcj  15810  dvfre  15811  dvmptcjx  15825  plyco  15860  plycjlemc  15861
  Copyright terms: Public domain W3C validator