Step | Hyp | Ref
| Expression |
1 | | metequiv.3 |
. . . . 5
⊢ 𝐽 = (MetOpen‘𝐶) |
2 | 1 | mopnval 23336 |
. . . 4
⊢ (𝐶 ∈ (∞Met‘𝑋) → 𝐽 = (topGen‘ran (ball‘𝐶))) |
3 | 2 | adantr 484 |
. . 3
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) → 𝐽 = (topGen‘ran (ball‘𝐶))) |
4 | | metequiv.4 |
. . . . 5
⊢ 𝐾 = (MetOpen‘𝐷) |
5 | 4 | mopnval 23336 |
. . . 4
⊢ (𝐷 ∈ (∞Met‘𝑋) → 𝐾 = (topGen‘ran (ball‘𝐷))) |
6 | 5 | adantl 485 |
. . 3
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) → 𝐾 = (topGen‘ran (ball‘𝐷))) |
7 | 3, 6 | sseq12d 3934 |
. 2
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) → (𝐽 ⊆ 𝐾 ↔ (topGen‘ran (ball‘𝐶)) ⊆ (topGen‘ran
(ball‘𝐷)))) |
8 | | blbas 23328 |
. . 3
⊢ (𝐶 ∈ (∞Met‘𝑋) → ran (ball‘𝐶) ∈
TopBases) |
9 | | unirnbl 23318 |
. . . . 5
⊢ (𝐶 ∈ (∞Met‘𝑋) → ∪ ran (ball‘𝐶) = 𝑋) |
10 | 9 | adantr 484 |
. . . 4
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) → ∪ ran
(ball‘𝐶) = 𝑋) |
11 | | unirnbl 23318 |
. . . . 5
⊢ (𝐷 ∈ (∞Met‘𝑋) → ∪ ran (ball‘𝐷) = 𝑋) |
12 | 11 | adantl 485 |
. . . 4
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) → ∪ ran
(ball‘𝐷) = 𝑋) |
13 | 10, 12 | eqtr4d 2780 |
. . 3
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) → ∪ ran
(ball‘𝐶) = ∪ ran (ball‘𝐷)) |
14 | | tgss2 21884 |
. . 3
⊢ ((ran
(ball‘𝐶) ∈
TopBases ∧ ∪ ran (ball‘𝐶) = ∪ ran
(ball‘𝐷)) →
((topGen‘ran (ball‘𝐶)) ⊆ (topGen‘ran
(ball‘𝐷)) ↔
∀𝑥 ∈ ∪ ran (ball‘𝐶)∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑧 ∈ ran (ball‘𝐷)(𝑥 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑦)))) |
15 | 8, 13, 14 | syl2an2r 685 |
. 2
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) → ((topGen‘ran
(ball‘𝐶)) ⊆
(topGen‘ran (ball‘𝐷)) ↔ ∀𝑥 ∈ ∪ ran
(ball‘𝐶)∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑧 ∈ ran (ball‘𝐷)(𝑥 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑦)))) |
16 | 10 | raleqdv 3325 |
. . 3
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) → (∀𝑥 ∈ ∪ ran
(ball‘𝐶)∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑧 ∈ ran (ball‘𝐷)(𝑥 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑦)) ↔ ∀𝑥 ∈ 𝑋 ∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑧 ∈ ran (ball‘𝐷)(𝑥 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑦)))) |
17 | | blssex 23325 |
. . . . . . . 8
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑥 ∈ 𝑋) → (∃𝑧 ∈ ran (ball‘𝐷)(𝑥 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑦) ↔ ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦)) |
18 | 17 | adantll 714 |
. . . . . . 7
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) ∧ 𝑥 ∈ 𝑋) → (∃𝑧 ∈ ran (ball‘𝐷)(𝑥 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑦) ↔ ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦)) |
19 | 18 | imbi2d 344 |
. . . . . 6
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) ∧ 𝑥 ∈ 𝑋) → ((𝑥 ∈ 𝑦 → ∃𝑧 ∈ ran (ball‘𝐷)(𝑥 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑦)) ↔ (𝑥 ∈ 𝑦 → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦))) |
20 | 19 | ralbidv 3118 |
. . . . 5
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) ∧ 𝑥 ∈ 𝑋) → (∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑧 ∈ ran (ball‘𝐷)(𝑥 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑦)) ↔ ∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦))) |
21 | | rpxr 12595 |
. . . . . . . . . 10
⊢ (𝑟 ∈ ℝ+
→ 𝑟 ∈
ℝ*) |
22 | | blelrn 23315 |
. . . . . . . . . 10
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑥 ∈ 𝑋 ∧ 𝑟 ∈ ℝ*) → (𝑥(ball‘𝐶)𝑟) ∈ ran (ball‘𝐶)) |
23 | 21, 22 | syl3an3 1167 |
. . . . . . . . 9
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑥 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) → (𝑥(ball‘𝐶)𝑟) ∈ ran (ball‘𝐶)) |
24 | | blcntr 23311 |
. . . . . . . . 9
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑥 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) → 𝑥 ∈ (𝑥(ball‘𝐶)𝑟)) |
25 | | eleq2 2826 |
. . . . . . . . . . . 12
⊢ (𝑦 = (𝑥(ball‘𝐶)𝑟) → (𝑥 ∈ 𝑦 ↔ 𝑥 ∈ (𝑥(ball‘𝐶)𝑟))) |
26 | | sseq2 3927 |
. . . . . . . . . . . . 13
⊢ (𝑦 = (𝑥(ball‘𝐶)𝑟) → ((𝑥(ball‘𝐷)𝑠) ⊆ 𝑦 ↔ (𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟))) |
27 | 26 | rexbidv 3216 |
. . . . . . . . . . . 12
⊢ (𝑦 = (𝑥(ball‘𝐶)𝑟) → (∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦 ↔ ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟))) |
28 | 25, 27 | imbi12d 348 |
. . . . . . . . . . 11
⊢ (𝑦 = (𝑥(ball‘𝐶)𝑟) → ((𝑥 ∈ 𝑦 → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦) ↔ (𝑥 ∈ (𝑥(ball‘𝐶)𝑟) → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟)))) |
29 | 28 | rspcv 3532 |
. . . . . . . . . 10
⊢ ((𝑥(ball‘𝐶)𝑟) ∈ ran (ball‘𝐶) → (∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦) → (𝑥 ∈ (𝑥(ball‘𝐶)𝑟) → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟)))) |
30 | 29 | com23 86 |
. . . . . . . . 9
⊢ ((𝑥(ball‘𝐶)𝑟) ∈ ran (ball‘𝐶) → (𝑥 ∈ (𝑥(ball‘𝐶)𝑟) → (∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦) → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟)))) |
31 | 23, 24, 30 | sylc 65 |
. . . . . . . 8
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑥 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) →
(∀𝑦 ∈ ran
(ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦) → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟))) |
32 | 31 | ad4ant134 1176 |
. . . . . . 7
⊢ ((((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) ∧ 𝑥 ∈ 𝑋) ∧ 𝑟 ∈ ℝ+) →
(∀𝑦 ∈ ran
(ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦) → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟))) |
33 | 32 | ralrimdva 3110 |
. . . . . 6
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) ∧ 𝑥 ∈ 𝑋) → (∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦) → ∀𝑟 ∈ ℝ+ ∃𝑠 ∈ ℝ+
(𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟))) |
34 | | blss 23323 |
. . . . . . . . . . . 12
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑦 ∈ ran (ball‘𝐶) ∧ 𝑥 ∈ 𝑦) → ∃𝑟 ∈ ℝ+ (𝑥(ball‘𝐶)𝑟) ⊆ 𝑦) |
35 | 34 | 3expb 1122 |
. . . . . . . . . . 11
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ (𝑦 ∈ ran (ball‘𝐶) ∧ 𝑥 ∈ 𝑦)) → ∃𝑟 ∈ ℝ+ (𝑥(ball‘𝐶)𝑟) ⊆ 𝑦) |
36 | 35 | ad4ant14 752 |
. . . . . . . . . 10
⊢ ((((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) ∧ 𝑥 ∈ 𝑋) ∧ (𝑦 ∈ ran (ball‘𝐶) ∧ 𝑥 ∈ 𝑦)) → ∃𝑟 ∈ ℝ+ (𝑥(ball‘𝐶)𝑟) ⊆ 𝑦) |
37 | | r19.29 3176 |
. . . . . . . . . . . 12
⊢
((∀𝑟 ∈
ℝ+ ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟) ∧ ∃𝑟 ∈ ℝ+ (𝑥(ball‘𝐶)𝑟) ⊆ 𝑦) → ∃𝑟 ∈ ℝ+ (∃𝑠 ∈ ℝ+
(𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟) ∧ (𝑥(ball‘𝐶)𝑟) ⊆ 𝑦)) |
38 | | sstr 3909 |
. . . . . . . . . . . . . . . 16
⊢ (((𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟) ∧ (𝑥(ball‘𝐶)𝑟) ⊆ 𝑦) → (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦) |
39 | 38 | expcom 417 |
. . . . . . . . . . . . . . 15
⊢ ((𝑥(ball‘𝐶)𝑟) ⊆ 𝑦 → ((𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟) → (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦)) |
40 | 39 | reximdv 3192 |
. . . . . . . . . . . . . 14
⊢ ((𝑥(ball‘𝐶)𝑟) ⊆ 𝑦 → (∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟) → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦)) |
41 | 40 | impcom 411 |
. . . . . . . . . . . . 13
⊢
((∃𝑠 ∈
ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟) ∧ (𝑥(ball‘𝐶)𝑟) ⊆ 𝑦) → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦) |
42 | 41 | rexlimivw 3201 |
. . . . . . . . . . . 12
⊢
(∃𝑟 ∈
ℝ+ (∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟) ∧ (𝑥(ball‘𝐶)𝑟) ⊆ 𝑦) → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦) |
43 | 37, 42 | syl 17 |
. . . . . . . . . . 11
⊢
((∀𝑟 ∈
ℝ+ ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟) ∧ ∃𝑟 ∈ ℝ+ (𝑥(ball‘𝐶)𝑟) ⊆ 𝑦) → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦) |
44 | 43 | ex 416 |
. . . . . . . . . 10
⊢
(∀𝑟 ∈
ℝ+ ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟) → (∃𝑟 ∈ ℝ+ (𝑥(ball‘𝐶)𝑟) ⊆ 𝑦 → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦)) |
45 | 36, 44 | syl5com 31 |
. . . . . . . . 9
⊢ ((((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) ∧ 𝑥 ∈ 𝑋) ∧ (𝑦 ∈ ran (ball‘𝐶) ∧ 𝑥 ∈ 𝑦)) → (∀𝑟 ∈ ℝ+ ∃𝑠 ∈ ℝ+
(𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟) → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦)) |
46 | 45 | expr 460 |
. . . . . . . 8
⊢ ((((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) ∧ 𝑥 ∈ 𝑋) ∧ 𝑦 ∈ ran (ball‘𝐶)) → (𝑥 ∈ 𝑦 → (∀𝑟 ∈ ℝ+ ∃𝑠 ∈ ℝ+
(𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟) → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦))) |
47 | 46 | com23 86 |
. . . . . . 7
⊢ ((((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) ∧ 𝑥 ∈ 𝑋) ∧ 𝑦 ∈ ran (ball‘𝐶)) → (∀𝑟 ∈ ℝ+ ∃𝑠 ∈ ℝ+
(𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟) → (𝑥 ∈ 𝑦 → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦))) |
48 | 47 | ralrimdva 3110 |
. . . . . 6
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) ∧ 𝑥 ∈ 𝑋) → (∀𝑟 ∈ ℝ+ ∃𝑠 ∈ ℝ+
(𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟) → ∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦))) |
49 | 33, 48 | impbid 215 |
. . . . 5
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) ∧ 𝑥 ∈ 𝑋) → (∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑠 ∈ ℝ+ (𝑥(ball‘𝐷)𝑠) ⊆ 𝑦) ↔ ∀𝑟 ∈ ℝ+ ∃𝑠 ∈ ℝ+
(𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟))) |
50 | 20, 49 | bitrd 282 |
. . . 4
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) ∧ 𝑥 ∈ 𝑋) → (∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑧 ∈ ran (ball‘𝐷)(𝑥 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑦)) ↔ ∀𝑟 ∈ ℝ+ ∃𝑠 ∈ ℝ+
(𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟))) |
51 | 50 | ralbidva 3117 |
. . 3
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) → (∀𝑥 ∈ 𝑋 ∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑧 ∈ ran (ball‘𝐷)(𝑥 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑦)) ↔ ∀𝑥 ∈ 𝑋 ∀𝑟 ∈ ℝ+ ∃𝑠 ∈ ℝ+
(𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟))) |
52 | 16, 51 | bitrd 282 |
. 2
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) → (∀𝑥 ∈ ∪ ran
(ball‘𝐶)∀𝑦 ∈ ran (ball‘𝐶)(𝑥 ∈ 𝑦 → ∃𝑧 ∈ ran (ball‘𝐷)(𝑥 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑦)) ↔ ∀𝑥 ∈ 𝑋 ∀𝑟 ∈ ℝ+ ∃𝑠 ∈ ℝ+
(𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟))) |
53 | 7, 15, 52 | 3bitrd 308 |
1
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝐷 ∈ (∞Met‘𝑋)) → (𝐽 ⊆ 𝐾 ↔ ∀𝑥 ∈ 𝑋 ∀𝑟 ∈ ℝ+ ∃𝑠 ∈ ℝ+
(𝑥(ball‘𝐷)𝑠) ⊆ (𝑥(ball‘𝐶)𝑟))) |