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

Theorem fmptco 5651
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 5102 . 2 Rel (𝐺𝐹)
2 funmpt 5226 . . 3 Fun (𝑥𝐴𝑇)
3 funrel 5205 . . 3 (Fun (𝑥𝐴𝑇) → Rel (𝑥𝐴𝑇))
42, 3ax-mp 5 . 2 Rel (𝑥𝐴𝑇)
5 fmptco.1 . . . . . . . . . . . . 13 ((𝜑𝑥𝐴) → 𝑅𝐵)
6 eqid 2165 . . . . . . . . . . . . 13 (𝑥𝐴𝑅) = (𝑥𝐴𝑅)
75, 6fmptd 5639 . . . . . . . . . . . 12 (𝜑 → (𝑥𝐴𝑅):𝐴𝐵)
8 fmptco.2 . . . . . . . . . . . . 13 (𝜑𝐹 = (𝑥𝐴𝑅))
98feq1d 5324 . . . . . . . . . . . 12 (𝜑 → (𝐹:𝐴𝐵 ↔ (𝑥𝐴𝑅):𝐴𝐵))
107, 9mpbird 166 . . . . . . . . . . 11 (𝜑𝐹:𝐴𝐵)
11 ffun 5340 . . . . . . . . . . 11 (𝐹:𝐴𝐵 → Fun 𝐹)
1210, 11syl 14 . . . . . . . . . 10 (𝜑 → Fun 𝐹)
13 funbrfv 5525 . . . . . . . . . . 11 (Fun 𝐹 → (𝑧𝐹𝑢 → (𝐹𝑧) = 𝑢))
1413imp 123 . . . . . . . . . 10 ((Fun 𝐹𝑧𝐹𝑢) → (𝐹𝑧) = 𝑢)
1512, 14sylan 281 . . . . . . . . 9 ((𝜑𝑧𝐹𝑢) → (𝐹𝑧) = 𝑢)
1615eqcomd 2171 . . . . . . . 8 ((𝜑𝑧𝐹𝑢) → 𝑢 = (𝐹𝑧))
1716a1d 22 . . . . . . 7 ((𝜑𝑧𝐹𝑢) → (𝑢𝐺𝑤𝑢 = (𝐹𝑧)))
1817expimpd 361 . . . . . 6 (𝜑 → ((𝑧𝐹𝑢𝑢𝐺𝑤) → 𝑢 = (𝐹𝑧)))
1918pm4.71rd 392 . . . . 5 (𝜑 → ((𝑧𝐹𝑢𝑢𝐺𝑤) ↔ (𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤))))
2019exbidv 1813 . . . 4 (𝜑 → (∃𝑢(𝑧𝐹𝑢𝑢𝐺𝑤) ↔ ∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤))))
21 exsimpl 1605 . . . . . . 7 (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) → ∃𝑢 𝑢 = (𝐹𝑧))
22 isset 2732 . . . . . . 7 ((𝐹𝑧) ∈ V ↔ ∃𝑢 𝑢 = (𝐹𝑧))
2321, 22sylibr 133 . . . . . 6 (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) → (𝐹𝑧) ∈ V)
2423a1i 9 . . . . 5 (𝜑 → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) → (𝐹𝑧) ∈ V))
2512adantr 274 . . . . . . . 8 ((𝜑𝑧𝐴) → Fun 𝐹)
26 fdm 5343 . . . . . . . . . . 11 (𝐹:𝐴𝐵 → dom 𝐹 = 𝐴)
2710, 26syl 14 . . . . . . . . . 10 (𝜑 → dom 𝐹 = 𝐴)
2827eleq2d 2236 . . . . . . . . 9 (𝜑 → (𝑧 ∈ dom 𝐹𝑧𝐴))
2928biimpar 295 . . . . . . . 8 ((𝜑𝑧𝐴) → 𝑧 ∈ dom 𝐹)
30 funfvex 5503 . . . . . . . 8 ((Fun 𝐹𝑧 ∈ dom 𝐹) → (𝐹𝑧) ∈ V)
3125, 29, 30syl2anc 409 . . . . . . 7 ((𝜑𝑧𝐴) → (𝐹𝑧) ∈ V)
3231adantrr 471 . . . . . 6 ((𝜑 ∧ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)) → (𝐹𝑧) ∈ V)
3332ex 114 . . . . 5 (𝜑 → ((𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇) → (𝐹𝑧) ∈ V))
34 breq2 3986 . . . . . . . . 9 (𝑢 = (𝐹𝑧) → (𝑧𝐹𝑢𝑧𝐹(𝐹𝑧)))
35 breq1 3985 . . . . . . . . 9 (𝑢 = (𝐹𝑧) → (𝑢𝐺𝑤 ↔ (𝐹𝑧)𝐺𝑤))
3634, 35anbi12d 465 . . . . . . . 8 (𝑢 = (𝐹𝑧) → ((𝑧𝐹𝑢𝑢𝐺𝑤) ↔ (𝑧𝐹(𝐹𝑧) ∧ (𝐹𝑧)𝐺𝑤)))
3736ceqsexgv 2855 . . . . . . 7 ((𝐹𝑧) ∈ V → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) ↔ (𝑧𝐹(𝐹𝑧) ∧ (𝐹𝑧)𝐺𝑤)))
38 funfvbrb 5598 . . . . . . . . . . 11 (Fun 𝐹 → (𝑧 ∈ dom 𝐹𝑧𝐹(𝐹𝑧)))
3912, 38syl 14 . . . . . . . . . 10 (𝜑 → (𝑧 ∈ dom 𝐹𝑧𝐹(𝐹𝑧)))
4039, 28bitr3d 189 . . . . . . . . 9 (𝜑 → (𝑧𝐹(𝐹𝑧) ↔ 𝑧𝐴))
418fveq1d 5488 . . . . . . . . . 10 (𝜑 → (𝐹𝑧) = ((𝑥𝐴𝑅)‘𝑧))
42 fmptco.3 . . . . . . . . . 10 (𝜑𝐺 = (𝑦𝐵𝑆))
43 eqidd 2166 . . . . . . . . . 10 (𝜑𝑤 = 𝑤)
4441, 42, 43breq123d 3996 . . . . . . . . 9 (𝜑 → ((𝐹𝑧)𝐺𝑤 ↔ ((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤))
4540, 44anbi12d 465 . . . . . . . 8 (𝜑 → ((𝑧𝐹(𝐹𝑧) ∧ (𝐹𝑧)𝐺𝑤) ↔ (𝑧𝐴 ∧ ((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤)))
46 nfcv 2308 . . . . . . . . . . 11 𝑥𝑧
47 nfv 1516 . . . . . . . . . . . 12 𝑥𝜑
48 nffvmpt1 5497 . . . . . . . . . . . . . 14 𝑥((𝑥𝐴𝑅)‘𝑧)
49 nfcv 2308 . . . . . . . . . . . . . 14 𝑥(𝑦𝐵𝑆)
50 nfcv 2308 . . . . . . . . . . . . . 14 𝑥𝑤
5148, 49, 50nfbr 4028 . . . . . . . . . . . . 13 𝑥((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤
52 nfcsb1v 3078 . . . . . . . . . . . . . 14 𝑥𝑧 / 𝑥𝑇
5352nfeq2 2320 . . . . . . . . . . . . 13 𝑥 𝑤 = 𝑧 / 𝑥𝑇
5451, 53nfbi 1577 . . . . . . . . . . . 12 𝑥(((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇)
5547, 54nfim 1560 . . . . . . . . . . 11 𝑥(𝜑 → (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇))
56 fveq2 5486 . . . . . . . . . . . . . 14 (𝑥 = 𝑧 → ((𝑥𝐴𝑅)‘𝑥) = ((𝑥𝐴𝑅)‘𝑧))
5756breq1d 3992 . . . . . . . . . . . . 13 (𝑥 = 𝑧 → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤 ↔ ((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤))
58 csbeq1a 3054 . . . . . . . . . . . . . 14 (𝑥 = 𝑧𝑇 = 𝑧 / 𝑥𝑇)
5958eqeq2d 2177 . . . . . . . . . . . . 13 (𝑥 = 𝑧 → (𝑤 = 𝑇𝑤 = 𝑧 / 𝑥𝑇))
6057, 59bibi12d 234 . . . . . . . . . . . 12 (𝑥 = 𝑧 → ((((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑤 = 𝑇) ↔ (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇)))
6160imbi2d 229 . . . . . . . . . . 11 (𝑥 = 𝑧 → ((𝜑 → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑤 = 𝑇)) ↔ (𝜑 → (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇))))
62 vex 2729 . . . . . . . . . . . . . 14 𝑤 ∈ V
63 simpl 108 . . . . . . . . . . . . . . . . 17 ((𝑦 = 𝑅𝑢 = 𝑤) → 𝑦 = 𝑅)
6463eleq1d 2235 . . . . . . . . . . . . . . . 16 ((𝑦 = 𝑅𝑢 = 𝑤) → (𝑦𝐵𝑅𝐵))
65 simpr 109 . . . . . . . . . . . . . . . . 17 ((𝑦 = 𝑅𝑢 = 𝑤) → 𝑢 = 𝑤)
66 fmptco.4 . . . . . . . . . . . . . . . . . 18 (𝑦 = 𝑅𝑆 = 𝑇)
6766adantr 274 . . . . . . . . . . . . . . . . 17 ((𝑦 = 𝑅𝑢 = 𝑤) → 𝑆 = 𝑇)
6865, 67eqeq12d 2180 . . . . . . . . . . . . . . . 16 ((𝑦 = 𝑅𝑢 = 𝑤) → (𝑢 = 𝑆𝑤 = 𝑇))
6964, 68anbi12d 465 . . . . . . . . . . . . . . 15 ((𝑦 = 𝑅𝑢 = 𝑤) → ((𝑦𝐵𝑢 = 𝑆) ↔ (𝑅𝐵𝑤 = 𝑇)))
70 df-mpt 4045 . . . . . . . . . . . . . . 15 (𝑦𝐵𝑆) = {⟨𝑦, 𝑢⟩ ∣ (𝑦𝐵𝑢 = 𝑆)}
7169, 70brabga 4242 . . . . . . . . . . . . . 14 ((𝑅𝐵𝑤 ∈ V) → (𝑅(𝑦𝐵𝑆)𝑤 ↔ (𝑅𝐵𝑤 = 𝑇)))
725, 62, 71sylancl 410 . . . . . . . . . . . . 13 ((𝜑𝑥𝐴) → (𝑅(𝑦𝐵𝑆)𝑤 ↔ (𝑅𝐵𝑤 = 𝑇)))
73 simpr 109 . . . . . . . . . . . . . . 15 ((𝜑𝑥𝐴) → 𝑥𝐴)
746fvmpt2 5569 . . . . . . . . . . . . . . 15 ((𝑥𝐴𝑅𝐵) → ((𝑥𝐴𝑅)‘𝑥) = 𝑅)
7573, 5, 74syl2anc 409 . . . . . . . . . . . . . 14 ((𝜑𝑥𝐴) → ((𝑥𝐴𝑅)‘𝑥) = 𝑅)
7675breq1d 3992 . . . . . . . . . . . . 13 ((𝜑𝑥𝐴) → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑅(𝑦𝐵𝑆)𝑤))
775biantrurd 303 . . . . . . . . . . . . 13 ((𝜑𝑥𝐴) → (𝑤 = 𝑇 ↔ (𝑅𝐵𝑤 = 𝑇)))
7872, 76, 773bitr4d 219 . . . . . . . . . . . 12 ((𝜑𝑥𝐴) → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑤 = 𝑇))
7978expcom 115 . . . . . . . . . . 11 (𝑥𝐴 → (𝜑 → (((𝑥𝐴𝑅)‘𝑥)(𝑦𝐵𝑆)𝑤𝑤 = 𝑇)))
8046, 55, 61, 79vtoclgaf 2791 . . . . . . . . . 10 (𝑧𝐴 → (𝜑 → (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇)))
8180impcom 124 . . . . . . . . 9 ((𝜑𝑧𝐴) → (((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤𝑤 = 𝑧 / 𝑥𝑇))
8281pm5.32da 448 . . . . . . . 8 (𝜑 → ((𝑧𝐴 ∧ ((𝑥𝐴𝑅)‘𝑧)(𝑦𝐵𝑆)𝑤) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
8345, 82bitrd 187 . . . . . . 7 (𝜑 → ((𝑧𝐹(𝐹𝑧) ∧ (𝐹𝑧)𝐺𝑤) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
8437, 83sylan9bbr 459 . . . . . 6 ((𝜑 ∧ (𝐹𝑧) ∈ V) → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
8584ex 114 . . . . 5 (𝜑 → ((𝐹𝑧) ∈ V → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇))))
8624, 33, 85pm5.21ndd 695 . . . 4 (𝜑 → (∃𝑢(𝑢 = (𝐹𝑧) ∧ (𝑧𝐹𝑢𝑢𝐺𝑤)) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
8720, 86bitrd 187 . . 3 (𝜑 → (∃𝑢(𝑧𝐹𝑢𝑢𝐺𝑤) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
88 vex 2729 . . . 4 𝑧 ∈ V
8988, 62opelco 4776 . . 3 (⟨𝑧, 𝑤⟩ ∈ (𝐺𝐹) ↔ ∃𝑢(𝑧𝐹𝑢𝑢𝐺𝑤))
90 df-mpt 4045 . . . . 5 (𝑥𝐴𝑇) = {⟨𝑥, 𝑣⟩ ∣ (𝑥𝐴𝑣 = 𝑇)}
9190eleq2i 2233 . . . 4 (⟨𝑧, 𝑤⟩ ∈ (𝑥𝐴𝑇) ↔ ⟨𝑧, 𝑤⟩ ∈ {⟨𝑥, 𝑣⟩ ∣ (𝑥𝐴𝑣 = 𝑇)})
92 nfv 1516 . . . . . 6 𝑥 𝑧𝐴
9352nfeq2 2320 . . . . . 6 𝑥 𝑣 = 𝑧 / 𝑥𝑇
9492, 93nfan 1553 . . . . 5 𝑥(𝑧𝐴𝑣 = 𝑧 / 𝑥𝑇)
95 nfv 1516 . . . . 5 𝑣(𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)
96 eleq1 2229 . . . . . 6 (𝑥 = 𝑧 → (𝑥𝐴𝑧𝐴))
9758eqeq2d 2177 . . . . . 6 (𝑥 = 𝑧 → (𝑣 = 𝑇𝑣 = 𝑧 / 𝑥𝑇))
9896, 97anbi12d 465 . . . . 5 (𝑥 = 𝑧 → ((𝑥𝐴𝑣 = 𝑇) ↔ (𝑧𝐴𝑣 = 𝑧 / 𝑥𝑇)))
99 eqeq1 2172 . . . . . 6 (𝑣 = 𝑤 → (𝑣 = 𝑧 / 𝑥𝑇𝑤 = 𝑧 / 𝑥𝑇))
10099anbi2d 460 . . . . 5 (𝑣 = 𝑤 → ((𝑧𝐴𝑣 = 𝑧 / 𝑥𝑇) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇)))
10194, 95, 88, 62, 98, 100opelopabf 4252 . . . 4 (⟨𝑧, 𝑤⟩ ∈ {⟨𝑥, 𝑣⟩ ∣ (𝑥𝐴𝑣 = 𝑇)} ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇))
10291, 101bitri 183 . . 3 (⟨𝑧, 𝑤⟩ ∈ (𝑥𝐴𝑇) ↔ (𝑧𝐴𝑤 = 𝑧 / 𝑥𝑇))
10387, 89, 1023bitr4g 222 . 2 (𝜑 → (⟨𝑧, 𝑤⟩ ∈ (𝐺𝐹) ↔ ⟨𝑧, 𝑤⟩ ∈ (𝑥𝐴𝑇)))
1041, 4, 103eqrelrdv 4700 1 (𝜑 → (𝐺𝐹) = (𝑥𝐴𝑇))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 103  wb 104   = wceq 1343  wex 1480  wcel 2136  Vcvv 2726  csb 3045  cop 3579   class class class wbr 3982  {copab 4042  cmpt 4043  dom cdm 4604  ccom 4608  Rel wrel 4609  Fun wfun 5182  wf 5184  cfv 5188
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-io 699  ax-5 1435  ax-7 1436  ax-gen 1437  ax-ie1 1481  ax-ie2 1482  ax-8 1492  ax-10 1493  ax-11 1494  ax-i12 1495  ax-bndl 1497  ax-4 1498  ax-17 1514  ax-i9 1518  ax-ial 1522  ax-i5r 1523  ax-14 2139  ax-ext 2147  ax-sep 4100  ax-pow 4153  ax-pr 4187
This theorem depends on definitions:  df-bi 116  df-3an 970  df-tru 1346  df-nf 1449  df-sb 1751  df-eu 2017  df-mo 2018  df-clab 2152  df-cleq 2158  df-clel 2161  df-nfc 2297  df-ral 2449  df-rex 2450  df-rab 2453  df-v 2728  df-sbc 2952  df-csb 3046  df-un 3120  df-in 3122  df-ss 3129  df-pw 3561  df-sn 3582  df-pr 3583  df-op 3585  df-uni 3790  df-br 3983  df-opab 4044  df-mpt 4045  df-id 4271  df-xp 4610  df-rel 4611  df-cnv 4612  df-co 4613  df-dm 4614  df-rn 4615  df-res 4616  df-ima 4617  df-iota 5153  df-fun 5190  df-fn 5191  df-f 5192  df-fv 5196
This theorem is referenced by:  fmptcof  5652  cofmpt  5654  fcompt  5655  fcoconst  5656  ofco  6068  lmcn2  12920  cdivcncfap  13227  negfcncf  13229  dvcj  13313  dvfre  13314  dvmptcjx  13326
  Copyright terms: Public domain W3C validator