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

Theorem fmptco 5427
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 4895 . 2 Rel (𝐺𝐹)
2 funmpt 5017 . . 3 Fun (𝑥𝐴𝑇)
3 funrel 4998 . . 3 (Fun (𝑥𝐴𝑇) → Rel (𝑥𝐴𝑇))
42, 3ax-mp 7 . 2 Rel (𝑥𝐴𝑇)
5 fmptco.1 . . . . . . . . . . . . 13 ((𝜑𝑥𝐴) → 𝑅𝐵)
6 eqid 2085 . . . . . . . . . . . . 13 (𝑥𝐴𝑅) = (𝑥𝐴𝑅)
75, 6fmptd 5415 . . . . . . . . . . . 12 (𝜑 → (𝑥𝐴𝑅):𝐴𝐵)
8 fmptco.2 . . . . . . . . . . . . 13 (𝜑𝐹 = (𝑥𝐴𝑅))
98feq1d 5114 . . . . . . . . . . . 12 (𝜑 → (𝐹:𝐴𝐵 ↔ (𝑥𝐴𝑅):𝐴𝐵))
107, 9mpbird 165 . . . . . . . . . . 11 (𝜑𝐹:𝐴𝐵)
11 ffun 5129 . . . . . . . . . . 11 (𝐹:𝐴𝐵 → Fun 𝐹)
1210, 11syl 14 . . . . . . . . . 10 (𝜑 → Fun 𝐹)
13 funbrfv 5306 . . . . . . . . . . 11 (Fun 𝐹 → (𝑧𝐹𝑢 → (𝐹𝑧) = 𝑢))
1413imp 122 . . . . . . . . . 10 ((Fun 𝐹𝑧𝐹𝑢) → (𝐹𝑧) = 𝑢)
1512, 14sylan 277 . . . . . . . . 9 ((𝜑𝑧𝐹𝑢) → (𝐹𝑧) = 𝑢)
1615eqcomd 2090 . . . . . . . 8 ((𝜑𝑧𝐹𝑢) → 𝑢 = (𝐹𝑧))
1716a1d 22 . . . . . . 7 ((𝜑𝑧𝐹𝑢) → (𝑢𝐺𝑤𝑢 = (𝐹𝑧)))
1817expimpd 355 . . . . . 6 (𝜑 → ((𝑧𝐹𝑢𝑢𝐺𝑤) → 𝑢 = (𝐹𝑧)))
1918pm4.71rd 386 . . . . 5 (𝜑 → ((𝑧𝐹𝑢𝑢𝐺𝑤) ↔ (𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤))))
2019exbidv 1750 . . . 4 (𝜑 → (∃𝑢(𝑧𝐹𝑢𝑢𝐺𝑤) ↔ ∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤))))
21 exsimpl 1551 . . . . . . 7 (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) → ∃𝑢 𝑢 = (𝐹𝑧))
22 isset 2619 . . . . . . 7 ((𝐹𝑧) ∈ V ↔ ∃𝑢 𝑢 = (𝐹𝑧))
2321, 22sylibr 132 . . . . . 6 (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) → (𝐹𝑧) ∈ V)
2423a1i 9 . . . . 5 (𝜑 → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) → (𝐹𝑧) ∈ V))
2512adantr 270 . . . . . . . 8 ((𝜑𝑧𝐴) → Fun 𝐹)
26 fdm 5131 . . . . . . . . . . 11 (𝐹:𝐴𝐵 → dom 𝐹 = 𝐴)
2710, 26syl 14 . . . . . . . . . 10 (𝜑 → dom 𝐹 = 𝐴)
2827eleq2d 2154 . . . . . . . . 9 (𝜑 → (𝑧 ∈ dom 𝐹𝑧𝐴))
2928biimpar 291 . . . . . . . 8 ((𝜑𝑧𝐴) → 𝑧 ∈ dom 𝐹)
30 funfvex 5285 . . . . . . . 8 ((Fun 𝐹𝑧 ∈ dom 𝐹) → (𝐹𝑧) ∈ V)
3125, 29, 30syl2anc 403 . . . . . . 7 ((𝜑𝑧𝐴) → (𝐹𝑧) ∈ V)
3231adantrr 463 . . . . . 6 ((𝜑 ∧ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)) → (𝐹𝑧) ∈ V)
3332ex 113 . . . . 5 (𝜑 → ((𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇) → (𝐹𝑧) ∈ V))
34 breq2 3824 . . . . . . . . 9 (𝑢 = (𝐹𝑧) → (𝑧𝐹𝑢𝑧𝐹(𝐹𝑧)))
35 breq1 3823 . . . . . . . . 9 (𝑢 = (𝐹𝑧) → (𝑢𝐺𝑤 ↔ (𝐹𝑧)𝐺𝑤))
3634, 35anbi12d 457 . . . . . . . 8 (𝑢 = (𝐹𝑧) → ((𝑧𝐹𝑢𝑢𝐺𝑤) ↔ (𝑧𝐹(𝐹𝑧) ∧ (𝐹𝑧)𝐺𝑤)))
3736ceqsexgv 2737 . . . . . . 7 ((𝐹𝑧) ∈ V → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) ↔ (𝑧𝐹(𝐹𝑧) ∧ (𝐹𝑧)𝐺𝑤)))
38 funfvbrb 5375 . . . . . . . . . . 11 (Fun 𝐹 → (𝑧 ∈ dom 𝐹𝑧𝐹(𝐹𝑧)))
3912, 38syl 14 . . . . . . . . . 10 (𝜑 → (𝑧 ∈ dom 𝐹𝑧𝐹(𝐹𝑧)))
4039, 28bitr3d 188 . . . . . . . . 9 (𝜑 → (𝑧𝐹(𝐹𝑧) ↔ 𝑧𝐴))
418fveq1d 5270 . . . . . . . . . 10 (𝜑 → (𝐹𝑧) = ((𝑥𝐴𝑅)‘𝑧))
42 fmptco.3 . . . . . . . . . 10 (𝜑𝐺 = (𝑦𝐵𝑆))
43 eqidd 2086 . . . . . . . . . 10 (𝜑𝑤 = 𝑤)
4441, 42, 43breq123d 3834 . . . . . . . . 9 (𝜑 → ((𝐹𝑧)𝐺𝑤 ↔ ((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤))
4540, 44anbi12d 457 . . . . . . . 8 (𝜑 → ((𝑧𝐹(𝐹𝑧) ∧ (𝐹𝑧)𝐺𝑤) ↔ (𝑧𝐴 ∧ ((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤)))
46 nfcv 2225 . . . . . . . . . . 11 𝑥𝑧
47 nfv 1464 . . . . . . . . . . . 12 𝑥𝜑
48 nffvmpt1 5279 . . . . . . . . . . . . . 14 𝑥((𝑥𝐴𝑅)‘𝑧)
49 nfcv 2225 . . . . . . . . . . . . . 14 𝑥(𝑦𝐵𝑆)
50 nfcv 2225 . . . . . . . . . . . . . 14 𝑥𝑤
5148, 49, 50nfbr 3864 . . . . . . . . . . . . 13 𝑥((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤
52 nfcsb1v 2952 . . . . . . . . . . . . . 14 𝑥𝑧 / 𝑥𝑇
5352nfeq2 2236 . . . . . . . . . . . . 13 𝑥 𝑤 = 𝑧 / 𝑥𝑇
5451, 53nfbi 1524 . . . . . . . . . . . 12 𝑥(((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇)
5547, 54nfim 1507 . . . . . . . . . . 11 𝑥(𝜑 → (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇))
56 fveq2 5268 . . . . . . . . . . . . . 14 (𝑥 = 𝑧 → ((𝑥𝐴𝑅)‘𝑥) = ((𝑥𝐴𝑅)‘𝑧))
5756breq1d 3830 . . . . . . . . . . . . 13 (𝑥 = 𝑧 → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤 ↔ ((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤))
58 csbeq1a 2930 . . . . . . . . . . . . . 14 (𝑥 = 𝑧𝑇 = 𝑧 / 𝑥𝑇)
5958eqeq2d 2096 . . . . . . . . . . . . 13 (𝑥 = 𝑧 → (𝑤 = 𝑇𝑤 = 𝑧 / 𝑥𝑇))
6057, 59bibi12d 233 . . . . . . . . . . . 12 (𝑥 = 𝑧 → ((((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑤 = 𝑇) ↔ (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇)))
6160imbi2d 228 . . . . . . . . . . 11 (𝑥 = 𝑧 → ((𝜑 → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑤 = 𝑇)) ↔ (𝜑 → (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇))))
62 vex 2618 . . . . . . . . . . . . . 14 𝑤 ∈ V
63 simpl 107 . . . . . . . . . . . . . . . . 17 ((𝑦 = 𝑅𝑢 = 𝑤) → 𝑦 = 𝑅)
6463eleq1d 2153 . . . . . . . . . . . . . . . 16 ((𝑦 = 𝑅𝑢 = 𝑤) → (𝑦𝐵𝑅𝐵))
65 simpr 108 . . . . . . . . . . . . . . . . 17 ((𝑦 = 𝑅𝑢 = 𝑤) → 𝑢 = 𝑤)
66 fmptco.4 . . . . . . . . . . . . . . . . . 18 (𝑦 = 𝑅𝑆 = 𝑇)
6766adantr 270 . . . . . . . . . . . . . . . . 17 ((𝑦 = 𝑅𝑢 = 𝑤) → 𝑆 = 𝑇)
6865, 67eqeq12d 2099 . . . . . . . . . . . . . . . 16 ((𝑦 = 𝑅𝑢 = 𝑤) → (𝑢 = 𝑆𝑤 = 𝑇))
6964, 68anbi12d 457 . . . . . . . . . . . . . . 15 ((𝑦 = 𝑅𝑢 = 𝑤) → ((𝑦𝐵𝑢 = 𝑆) ↔ (𝑅𝐵𝑤 = 𝑇)))
70 df-mpt 3876 . . . . . . . . . . . . . . 15 (𝑦𝐵𝑆) = {⟨𝑦, 𝑢⟩ ∣ (𝑦𝐵𝑢 = 𝑆)}
7169, 70brabga 4065 . . . . . . . . . . . . . 14 ((𝑅𝐵𝑤 ∈ V) → (𝑅(𝑦𝐵𝑆)𝑤 ↔ (𝑅𝐵𝑤 = 𝑇)))
725, 62, 71sylancl 404 . . . . . . . . . . . . 13 ((𝜑𝑥𝐴) → (𝑅(𝑦𝐵𝑆)𝑤 ↔ (𝑅𝐵𝑤 = 𝑇)))
73 simpr 108 . . . . . . . . . . . . . . 15 ((𝜑𝑥𝐴) → 𝑥𝐴)
746fvmpt2 5349 . . . . . . . . . . . . . . 15 ((𝑥𝐴𝑅𝐵) → ((𝑥𝐴𝑅)‘𝑥) = 𝑅)
7573, 5, 74syl2anc 403 . . . . . . . . . . . . . 14 ((𝜑𝑥𝐴) → ((𝑥𝐴𝑅)‘𝑥) = 𝑅)
7675breq1d 3830 . . . . . . . . . . . . 13 ((𝜑𝑥𝐴) → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑅(𝑦𝐵𝑆)𝑤))
775biantrurd 299 . . . . . . . . . . . . 13 ((𝜑𝑥𝐴) → (𝑤 = 𝑇 ↔ (𝑅𝐵𝑤 = 𝑇)))
7872, 76, 773bitr4d 218 . . . . . . . . . . . 12 ((𝜑𝑥𝐴) → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑤 = 𝑇))
7978expcom 114 . . . . . . . . . . 11 (𝑥𝐴 → (𝜑 → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑤 = 𝑇)))
8046, 55, 61, 79vtoclgaf 2677 . . . . . . . . . 10 (𝑧𝐴 → (𝜑 → (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇)))
8180impcom 123 . . . . . . . . 9 ((𝜑𝑧𝐴) → (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇))
8281pm5.32da 440 . . . . . . . 8 (𝜑 → ((𝑧𝐴 ∧ ((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
8345, 82bitrd 186 . . . . . . 7 (𝜑 → ((𝑧𝐹(𝐹𝑧) ∧ (𝐹𝑧)𝐺𝑤) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
8437, 83sylan9bbr 451 . . . . . 6 ((𝜑 ∧ (𝐹𝑧) ∈ V) → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
8584ex 113 . . . . 5 (𝜑 → ((𝐹𝑧) ∈ V → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇))))
8624, 33, 85pm5.21ndd 654 . . . 4 (𝜑 → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
8720, 86bitrd 186 . . 3 (𝜑 → (∃𝑢(𝑧𝐹𝑢𝑢𝐺𝑤) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
88 vex 2618 . . . 4 𝑧 ∈ V
8988, 62opelco 4576 . . 3 (⟨𝑧, 𝑤⟩ ∈ (𝐺𝐹) ↔ ∃𝑢(𝑧𝐹𝑢𝑢𝐺𝑤))
90 df-mpt 3876 . . . . 5 (𝑥𝐴𝑇) = {⟨𝑥, 𝑣⟩ ∣ (𝑥𝐴𝑣 = 𝑇)}
9190eleq2i 2151 . . . 4 (⟨𝑧, 𝑤⟩ ∈ (𝑥𝐴𝑇) ↔ ⟨𝑧, 𝑤⟩ ∈ {⟨𝑥, 𝑣⟩ ∣ (𝑥𝐴𝑣 = 𝑇)})
92 nfv 1464 . . . . . 6 𝑥 𝑧𝐴
9352nfeq2 2236 . . . . . 6 𝑥 𝑣 = 𝑧 / 𝑥𝑇
9492, 93nfan 1500 . . . . 5 𝑥(𝑧𝐴𝑣 = 𝑧 / 𝑥𝑇)
95 nfv 1464 . . . . 5 𝑣(𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)
96 eleq1 2147 . . . . . 6 (𝑥 = 𝑧 → (𝑥𝐴𝑧𝐴))
9758eqeq2d 2096 . . . . . 6 (𝑥 = 𝑧 → (𝑣 = 𝑇𝑣 = 𝑧 / 𝑥𝑇))
9896, 97anbi12d 457 . . . . 5 (𝑥 = 𝑧 → ((𝑥𝐴𝑣 = 𝑇) ↔ (𝑧𝐴𝑣 = 𝑧 / 𝑥𝑇)))
99 eqeq1 2091 . . . . . 6 (𝑣 = 𝑤 → (𝑣 = 𝑧 / 𝑥𝑇𝑤 = 𝑧 / 𝑥𝑇))
10099anbi2d 452 . . . . 5 (𝑣 = 𝑤 → ((𝑧𝐴𝑣 = 𝑧 / 𝑥𝑇) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
10194, 95, 88, 62, 98, 100opelopabf 4075 . . . 4 (⟨𝑧, 𝑤⟩ ∈ {⟨𝑥, 𝑣⟩ ∣ (𝑥𝐴𝑣 = 𝑇)} ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇))
10291, 101bitri 182 . . 3 (⟨𝑧, 𝑤⟩ ∈ (𝑥𝐴𝑇) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇))
10387, 89, 1023bitr4g 221 . 2 (𝜑 → (⟨𝑧, 𝑤⟩ ∈ (𝐺𝐹) ↔ ⟨𝑧, 𝑤⟩ ∈ (𝑥𝐴𝑇)))
1041, 4, 103eqrelrdv 4502 1 (𝜑 → (𝐺𝐹) = (𝑥𝐴𝑇))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 102  wb 103   = wceq 1287  wex 1424  wcel 1436  Vcvv 2615  csb 2922  cop 3434   class class class wbr 3820  {copab 3873  cmpt 3874  dom cdm 4411  ccom 4415  Rel wrel 4416  Fun wfun 4975  wf 4977  cfv 4981
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 104  ax-ia2 105  ax-ia3 106  ax-io 663  ax-5 1379  ax-7 1380  ax-gen 1381  ax-ie1 1425  ax-ie2 1426  ax-8 1438  ax-10 1439  ax-11 1440  ax-i12 1441  ax-bndl 1442  ax-4 1443  ax-14 1448  ax-17 1462  ax-i9 1466  ax-ial 1470  ax-i5r 1471  ax-ext 2067  ax-sep 3932  ax-pow 3984  ax-pr 4010
This theorem depends on definitions:  df-bi 115  df-3an 924  df-tru 1290  df-nf 1393  df-sb 1690  df-eu 1948  df-mo 1949  df-clab 2072  df-cleq 2078  df-clel 2081  df-nfc 2214  df-ral 2360  df-rex 2361  df-rab 2364  df-v 2617  df-sbc 2830  df-csb 2923  df-un 2992  df-in 2994  df-ss 3001  df-pw 3417  df-sn 3437  df-pr 3438  df-op 3440  df-uni 3637  df-br 3821  df-opab 3875  df-mpt 3876  df-id 4094  df-xp 4417  df-rel 4418  df-cnv 4419  df-co 4420  df-dm 4421  df-rn 4422  df-res 4423  df-ima 4424  df-iota 4946  df-fun 4983  df-fn 4984  df-f 4985  df-fv 4989
This theorem is referenced by:  fmptcof  5428  fcompt  5430  fcoconst  5431  ofco  5830
  Copyright terms: Public domain W3C validator