MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  tgioo Structured version   Visualization version   GIF version

Theorem tgioo 24660
Description: The topology generated by open intervals of reals is the same as the open sets of the standard metric space on the reals. (Contributed by NM, 7-May-2007.) (Revised by Mario Carneiro, 13-Nov-2013.)
Hypotheses
Ref Expression
remet.1 𝐷 = ((abs ∘ − ) ↾ (ℝ × ℝ))
tgioo.2 𝐽 = (MetOpen‘𝐷)
Assertion
Ref Expression
tgioo (topGen‘ran (,)) = 𝐽

Proof of Theorem tgioo
Dummy variables 𝑥 𝑦 𝑧 𝑎 𝑏 𝑣 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 remet.1 . . . 4 𝐷 = ((abs ∘ − ) ↾ (ℝ × ℝ))
21rexmet 24655 . . 3 𝐷 ∈ (∞Met‘ℝ)
3 tgioo.2 . . . 4 𝐽 = (MetOpen‘𝐷)
43mopnval 24302 . . 3 (𝐷 ∈ (∞Met‘ℝ) → 𝐽 = (topGen‘ran (ball‘𝐷)))
52, 4ax-mp 5 . 2 𝐽 = (topGen‘ran (ball‘𝐷))
61blssioo 24659 . . 3 ran (ball‘𝐷) ⊆ ran (,)
7 elssuni 4897 . . . . . . 7 (𝑣 ∈ ran (,) → 𝑣 ran (,))
8 unirnioo 13386 . . . . . . 7 ℝ = ran (,)
97, 8sseqtrrdi 3985 . . . . . 6 (𝑣 ∈ ran (,) → 𝑣 ⊆ ℝ)
10 retopbas 24624 . . . . . . . . . 10 ran (,) ∈ TopBases
1110a1i 11 . . . . . . . . 9 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → ran (,) ∈ TopBases)
12 simpl 482 . . . . . . . . 9 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → 𝑣 ∈ ran (,))
139sselda 3943 . . . . . . . . . 10 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → 𝑥 ∈ ℝ)
14 1re 11150 . . . . . . . . . . . 12 1 ∈ ℝ
151bl2ioo 24656 . . . . . . . . . . . 12 ((𝑥 ∈ ℝ ∧ 1 ∈ ℝ) → (𝑥(ball‘𝐷)1) = ((𝑥 − 1)(,)(𝑥 + 1)))
1614, 15mpan2 691 . . . . . . . . . . 11 (𝑥 ∈ ℝ → (𝑥(ball‘𝐷)1) = ((𝑥 − 1)(,)(𝑥 + 1)))
17 ioof 13384 . . . . . . . . . . . . 13 (,):(ℝ* × ℝ*)⟶𝒫 ℝ
18 ffn 6670 . . . . . . . . . . . . 13 ((,):(ℝ* × ℝ*)⟶𝒫 ℝ → (,) Fn (ℝ* × ℝ*))
1917, 18ax-mp 5 . . . . . . . . . . . 12 (,) Fn (ℝ* × ℝ*)
20 peano2rem 11465 . . . . . . . . . . . . 13 (𝑥 ∈ ℝ → (𝑥 − 1) ∈ ℝ)
2120rexrd 11200 . . . . . . . . . . . 12 (𝑥 ∈ ℝ → (𝑥 − 1) ∈ ℝ*)
22 peano2re 11323 . . . . . . . . . . . . 13 (𝑥 ∈ ℝ → (𝑥 + 1) ∈ ℝ)
2322rexrd 11200 . . . . . . . . . . . 12 (𝑥 ∈ ℝ → (𝑥 + 1) ∈ ℝ*)
24 fnovrn 7544 . . . . . . . . . . . 12 (((,) Fn (ℝ* × ℝ*) ∧ (𝑥 − 1) ∈ ℝ* ∧ (𝑥 + 1) ∈ ℝ*) → ((𝑥 − 1)(,)(𝑥 + 1)) ∈ ran (,))
2519, 21, 23, 24mp3an2i 1468 . . . . . . . . . . 11 (𝑥 ∈ ℝ → ((𝑥 − 1)(,)(𝑥 + 1)) ∈ ran (,))
2616, 25eqeltrd 2828 . . . . . . . . . 10 (𝑥 ∈ ℝ → (𝑥(ball‘𝐷)1) ∈ ran (,))
2713, 26syl 17 . . . . . . . . 9 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → (𝑥(ball‘𝐷)1) ∈ ran (,))
28 simpr 484 . . . . . . . . . 10 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → 𝑥𝑣)
29 1rp 12931 . . . . . . . . . . . 12 1 ∈ ℝ+
30 blcntr 24277 . . . . . . . . . . . 12 ((𝐷 ∈ (∞Met‘ℝ) ∧ 𝑥 ∈ ℝ ∧ 1 ∈ ℝ+) → 𝑥 ∈ (𝑥(ball‘𝐷)1))
312, 29, 30mp3an13 1454 . . . . . . . . . . 11 (𝑥 ∈ ℝ → 𝑥 ∈ (𝑥(ball‘𝐷)1))
3213, 31syl 17 . . . . . . . . . 10 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → 𝑥 ∈ (𝑥(ball‘𝐷)1))
3328, 32elind 4159 . . . . . . . . 9 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → 𝑥 ∈ (𝑣 ∩ (𝑥(ball‘𝐷)1)))
34 basis2 22814 . . . . . . . . 9 (((ran (,) ∈ TopBases ∧ 𝑣 ∈ ran (,)) ∧ ((𝑥(ball‘𝐷)1) ∈ ran (,) ∧ 𝑥 ∈ (𝑣 ∩ (𝑥(ball‘𝐷)1)))) → ∃𝑧 ∈ ran (,)(𝑥𝑧𝑧 ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))))
3511, 12, 27, 33, 34syl22anc 838 . . . . . . . 8 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → ∃𝑧 ∈ ran (,)(𝑥𝑧𝑧 ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))))
36 ovelrn 7545 . . . . . . . . . . 11 ((,) Fn (ℝ* × ℝ*) → (𝑧 ∈ ran (,) ↔ ∃𝑎 ∈ ℝ*𝑏 ∈ ℝ* 𝑧 = (𝑎(,)𝑏)))
3719, 36ax-mp 5 . . . . . . . . . 10 (𝑧 ∈ ran (,) ↔ ∃𝑎 ∈ ℝ*𝑏 ∈ ℝ* 𝑧 = (𝑎(,)𝑏))
38 eleq2 2817 . . . . . . . . . . . . . . 15 (𝑧 = (𝑎(,)𝑏) → (𝑥𝑧𝑥 ∈ (𝑎(,)𝑏)))
39 sseq1 3969 . . . . . . . . . . . . . . 15 (𝑧 = (𝑎(,)𝑏) → (𝑧 ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1)) ↔ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))))
4038, 39anbi12d 632 . . . . . . . . . . . . . 14 (𝑧 = (𝑎(,)𝑏) → ((𝑥𝑧𝑧 ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) ↔ (𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1)))))
41 inss2 4197 . . . . . . . . . . . . . . . . . . . . . 22 (𝑣 ∩ (𝑥(ball‘𝐷)1)) ⊆ (𝑥(ball‘𝐷)1)
42 sstr 3952 . . . . . . . . . . . . . . . . . . . . . 22 (((𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1)) ∧ (𝑣 ∩ (𝑥(ball‘𝐷)1)) ⊆ (𝑥(ball‘𝐷)1)) → (𝑎(,)𝑏) ⊆ (𝑥(ball‘𝐷)1))
4341, 42mpan2 691 . . . . . . . . . . . . . . . . . . . . 21 ((𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1)) → (𝑎(,)𝑏) ⊆ (𝑥(ball‘𝐷)1))
4443adantl 481 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑎(,)𝑏) ⊆ (𝑥(ball‘𝐷)1))
45 elioore 13312 . . . . . . . . . . . . . . . . . . . . . 22 (𝑥 ∈ (𝑎(,)𝑏) → 𝑥 ∈ ℝ)
4645adantr 480 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → 𝑥 ∈ ℝ)
4746, 16syl 17 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑥(ball‘𝐷)1) = ((𝑥 − 1)(,)(𝑥 + 1)))
4844, 47sseqtrd 3980 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑎(,)𝑏) ⊆ ((𝑥 − 1)(,)(𝑥 + 1)))
49 dfss 3930 . . . . . . . . . . . . . . . . . . 19 ((𝑎(,)𝑏) ⊆ ((𝑥 − 1)(,)(𝑥 + 1)) ↔ (𝑎(,)𝑏) = ((𝑎(,)𝑏) ∩ ((𝑥 − 1)(,)(𝑥 + 1))))
5048, 49sylib 218 . . . . . . . . . . . . . . . . . 18 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑎(,)𝑏) = ((𝑎(,)𝑏) ∩ ((𝑥 − 1)(,)(𝑥 + 1))))
51 eliooxr 13341 . . . . . . . . . . . . . . . . . . . 20 (𝑥 ∈ (𝑎(,)𝑏) → (𝑎 ∈ ℝ*𝑏 ∈ ℝ*))
5221, 23jca 511 . . . . . . . . . . . . . . . . . . . . 21 (𝑥 ∈ ℝ → ((𝑥 − 1) ∈ ℝ* ∧ (𝑥 + 1) ∈ ℝ*))
5345, 52syl 17 . . . . . . . . . . . . . . . . . . . 20 (𝑥 ∈ (𝑎(,)𝑏) → ((𝑥 − 1) ∈ ℝ* ∧ (𝑥 + 1) ∈ ℝ*))
54 iooin 13316 . . . . . . . . . . . . . . . . . . . 20 (((𝑎 ∈ ℝ*𝑏 ∈ ℝ*) ∧ ((𝑥 − 1) ∈ ℝ* ∧ (𝑥 + 1) ∈ ℝ*)) → ((𝑎(,)𝑏) ∩ ((𝑥 − 1)(,)(𝑥 + 1))) = (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))))
5551, 53, 54syl2anc 584 . . . . . . . . . . . . . . . . . . 19 (𝑥 ∈ (𝑎(,)𝑏) → ((𝑎(,)𝑏) ∩ ((𝑥 − 1)(,)(𝑥 + 1))) = (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))))
5655adantr 480 . . . . . . . . . . . . . . . . . 18 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → ((𝑎(,)𝑏) ∩ ((𝑥 − 1)(,)(𝑥 + 1))) = (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))))
5750, 56eqtrd 2764 . . . . . . . . . . . . . . . . 17 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑎(,)𝑏) = (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))))
58 mnfxr 11207 . . . . . . . . . . . . . . . . . . . 20 -∞ ∈ ℝ*
5958a1i 11 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → -∞ ∈ ℝ*)
6046, 21syl 17 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑥 − 1) ∈ ℝ*)
6151adantr 480 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑎 ∈ ℝ*𝑏 ∈ ℝ*))
6261simpld 494 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → 𝑎 ∈ ℝ*)
6360, 62ifcld 4531 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) ∈ ℝ*)
6461simprd 495 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → 𝑏 ∈ ℝ*)
6546, 22syl 17 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑥 + 1) ∈ ℝ)
6665rexrd 11200 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑥 + 1) ∈ ℝ*)
6764, 66ifcld 4531 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ∈ ℝ*)
6845, 20syl 17 . . . . . . . . . . . . . . . . . . . . . 22 (𝑥 ∈ (𝑎(,)𝑏) → (𝑥 − 1) ∈ ℝ)
6968adantr 480 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑥 − 1) ∈ ℝ)
7069mnfltd 13060 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → -∞ < (𝑥 − 1))
71 xrmax2 13112 . . . . . . . . . . . . . . . . . . . . 21 ((𝑎 ∈ ℝ* ∧ (𝑥 − 1) ∈ ℝ*) → (𝑥 − 1) ≤ if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎))
7262, 60, 71syl2anc 584 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑥 − 1) ≤ if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎))
7359, 60, 63, 70, 72xrltletrd 13097 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → -∞ < if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎))
74 simpl 482 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → 𝑥 ∈ (𝑎(,)𝑏))
7574, 57eleqtrd 2830 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → 𝑥 ∈ (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))))
76 eliooxr 13341 . . . . . . . . . . . . . . . . . . . . 21 (𝑥 ∈ (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))) → (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) ∈ ℝ* ∧ if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ∈ ℝ*))
77 ne0i 4300 . . . . . . . . . . . . . . . . . . . . . 22 (𝑥 ∈ (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))) → (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))) ≠ ∅)
78 ioon0 13308 . . . . . . . . . . . . . . . . . . . . . 22 ((if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) ∈ ℝ* ∧ if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ∈ ℝ*) → ((if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))) ≠ ∅ ↔ if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) < if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))))
7977, 78imbitrid 244 . . . . . . . . . . . . . . . . . . . . 21 ((if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) ∈ ℝ* ∧ if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ∈ ℝ*) → (𝑥 ∈ (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))) → if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) < if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))))
8076, 79mpcom 38 . . . . . . . . . . . . . . . . . . . 20 (𝑥 ∈ (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))) → if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) < if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)))
8175, 80syl 17 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) < if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)))
82 xrre2 13106 . . . . . . . . . . . . . . . . . . 19 (((-∞ ∈ ℝ* ∧ if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) ∈ ℝ* ∧ if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ∈ ℝ*) ∧ (-∞ < if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) ∧ if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) < if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)))) → if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) ∈ ℝ)
8359, 63, 67, 73, 81, 82syl32anc 1380 . . . . . . . . . . . . . . . . . 18 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) ∈ ℝ)
84 mnfle 13071 . . . . . . . . . . . . . . . . . . . . 21 (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) ∈ ℝ* → -∞ ≤ if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎))
8563, 84syl 17 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → -∞ ≤ if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎))
8659, 63, 67, 85, 81xrlelttrd 13096 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → -∞ < if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)))
87 xrmin2 13114 . . . . . . . . . . . . . . . . . . . 20 ((𝑏 ∈ ℝ* ∧ (𝑥 + 1) ∈ ℝ*) → if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ≤ (𝑥 + 1))
8864, 66, 87syl2anc 584 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ≤ (𝑥 + 1))
89 xrre 13105 . . . . . . . . . . . . . . . . . . 19 (((if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ∈ ℝ* ∧ (𝑥 + 1) ∈ ℝ) ∧ (-∞ < if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ∧ if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ≤ (𝑥 + 1))) → if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ∈ ℝ)
9067, 65, 86, 88, 89syl22anc 838 . . . . . . . . . . . . . . . . . 18 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ∈ ℝ)
911ioo2blex 24658 . . . . . . . . . . . . . . . . . 18 ((if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) ∈ ℝ ∧ if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ∈ ℝ) → (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))) ∈ ran (ball‘𝐷))
9283, 90, 91syl2anc 584 . . . . . . . . . . . . . . . . 17 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))) ∈ ran (ball‘𝐷))
9357, 92eqeltrd 2828 . . . . . . . . . . . . . . . 16 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑎(,)𝑏) ∈ ran (ball‘𝐷))
94 inss1 4196 . . . . . . . . . . . . . . . . . 18 (𝑣 ∩ (𝑥(ball‘𝐷)1)) ⊆ 𝑣
95 sstr 3952 . . . . . . . . . . . . . . . . . 18 (((𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1)) ∧ (𝑣 ∩ (𝑥(ball‘𝐷)1)) ⊆ 𝑣) → (𝑎(,)𝑏) ⊆ 𝑣)
9694, 95mpan2 691 . . . . . . . . . . . . . . . . 17 ((𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1)) → (𝑎(,)𝑏) ⊆ 𝑣)
9796adantl 481 . . . . . . . . . . . . . . . 16 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑎(,)𝑏) ⊆ 𝑣)
98 sseq1 3969 . . . . . . . . . . . . . . . . . 18 (𝑧 = (𝑎(,)𝑏) → (𝑧𝑣 ↔ (𝑎(,)𝑏) ⊆ 𝑣))
9938, 98anbi12d 632 . . . . . . . . . . . . . . . . 17 (𝑧 = (𝑎(,)𝑏) → ((𝑥𝑧𝑧𝑣) ↔ (𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ 𝑣)))
10099rspcev 3585 . . . . . . . . . . . . . . . 16 (((𝑎(,)𝑏) ∈ ran (ball‘𝐷) ∧ (𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ 𝑣)) → ∃𝑧 ∈ ran (ball‘𝐷)(𝑥𝑧𝑧𝑣))
10193, 74, 97, 100syl12anc 836 . . . . . . . . . . . . . . 15 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → ∃𝑧 ∈ ran (ball‘𝐷)(𝑥𝑧𝑧𝑣))
102 blssex 24291 . . . . . . . . . . . . . . . 16 ((𝐷 ∈ (∞Met‘ℝ) ∧ 𝑥 ∈ ℝ) → (∃𝑧 ∈ ran (ball‘𝐷)(𝑥𝑧𝑧𝑣) ↔ ∃𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣))
1032, 46, 102sylancr 587 . . . . . . . . . . . . . . 15 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (∃𝑧 ∈ ran (ball‘𝐷)(𝑥𝑧𝑧𝑣) ↔ ∃𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣))
104101, 103mpbid 232 . . . . . . . . . . . . . 14 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → ∃𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣)
10540, 104biimtrdi 253 . . . . . . . . . . . . 13 (𝑧 = (𝑎(,)𝑏) → ((𝑥𝑧𝑧 ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → ∃𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣))
106105a1i 11 . . . . . . . . . . . 12 ((𝑎 ∈ ℝ*𝑏 ∈ ℝ*) → (𝑧 = (𝑎(,)𝑏) → ((𝑥𝑧𝑧 ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → ∃𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣)))
107106rexlimivv 3177 . . . . . . . . . . 11 (∃𝑎 ∈ ℝ*𝑏 ∈ ℝ* 𝑧 = (𝑎(,)𝑏) → ((𝑥𝑧𝑧 ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → ∃𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣))
108107imp 406 . . . . . . . . . 10 ((∃𝑎 ∈ ℝ*𝑏 ∈ ℝ* 𝑧 = (𝑎(,)𝑏) ∧ (𝑥𝑧𝑧 ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1)))) → ∃𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣)
10937, 108sylanb 581 . . . . . . . . 9 ((𝑧 ∈ ran (,) ∧ (𝑥𝑧𝑧 ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1)))) → ∃𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣)
110109rexlimiva 3126 . . . . . . . 8 (∃𝑧 ∈ ran (,)(𝑥𝑧𝑧 ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → ∃𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣)
11135, 110syl 17 . . . . . . 7 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → ∃𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣)
112111ralrimiva 3125 . . . . . 6 (𝑣 ∈ ran (,) → ∀𝑥𝑣𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣)
1133elmopn2 24309 . . . . . . 7 (𝐷 ∈ (∞Met‘ℝ) → (𝑣𝐽 ↔ (𝑣 ⊆ ℝ ∧ ∀𝑥𝑣𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣)))
1142, 113ax-mp 5 . . . . . 6 (𝑣𝐽 ↔ (𝑣 ⊆ ℝ ∧ ∀𝑥𝑣𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣))
1159, 112, 114sylanbrc 583 . . . . 5 (𝑣 ∈ ran (,) → 𝑣𝐽)
116115ssriv 3947 . . . 4 ran (,) ⊆ 𝐽
117116, 5sseqtri 3992 . . 3 ran (,) ⊆ (topGen‘ran (ball‘𝐷))
118 2basgen 22853 . . 3 ((ran (ball‘𝐷) ⊆ ran (,) ∧ ran (,) ⊆ (topGen‘ran (ball‘𝐷))) → (topGen‘ran (ball‘𝐷)) = (topGen‘ran (,)))
1196, 117, 118mp2an 692 . 2 (topGen‘ran (ball‘𝐷)) = (topGen‘ran (,))
1205, 119eqtr2i 2753 1 (topGen‘ran (,)) = 𝐽
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395   = wceq 1540  wcel 2109  wne 2925  wral 3044  wrex 3053  cin 3910  wss 3911  c0 4292  ifcif 4484  𝒫 cpw 4559   cuni 4867   class class class wbr 5102   × cxp 5629  ran crn 5632  cres 5633  ccom 5635   Fn wfn 6494  wf 6495  cfv 6499  (class class class)co 7369  cr 11043  1c1 11045   + caddc 11047  -∞cmnf 11182  *cxr 11183   < clt 11184  cle 11185  cmin 11381  +crp 12927  (,)cioo 13282  abscabs 15176  topGenctg 17376  ∞Metcxmet 21225  ballcbl 21227  MetOpencmopn 21230  TopBasesctb 22808
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-sep 5246  ax-nul 5256  ax-pow 5315  ax-pr 5382  ax-un 7691  ax-cnex 11100  ax-resscn 11101  ax-1cn 11102  ax-icn 11103  ax-addcl 11104  ax-addrcl 11105  ax-mulcl 11106  ax-mulrcl 11107  ax-mulcom 11108  ax-addass 11109  ax-mulass 11110  ax-distr 11111  ax-i2m1 11112  ax-1ne0 11113  ax-1rid 11114  ax-rnegex 11115  ax-rrecex 11116  ax-cnre 11117  ax-pre-lttri 11118  ax-pre-lttrn 11119  ax-pre-ltadd 11120  ax-pre-mulgt0 11121  ax-pre-sup 11122
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-nel 3030  df-ral 3045  df-rex 3054  df-rmo 3351  df-reu 3352  df-rab 3403  df-v 3446  df-sbc 3751  df-csb 3860  df-dif 3914  df-un 3916  df-in 3918  df-ss 3928  df-pss 3931  df-nul 4293  df-if 4485  df-pw 4561  df-sn 4586  df-pr 4588  df-op 4592  df-uni 4868  df-iun 4953  df-br 5103  df-opab 5165  df-mpt 5184  df-tr 5210  df-id 5526  df-eprel 5531  df-po 5539  df-so 5540  df-fr 5584  df-we 5586  df-xp 5637  df-rel 5638  df-cnv 5639  df-co 5640  df-dm 5641  df-rn 5642  df-res 5643  df-ima 5644  df-pred 6262  df-ord 6323  df-on 6324  df-lim 6325  df-suc 6326  df-iota 6452  df-fun 6501  df-fn 6502  df-f 6503  df-f1 6504  df-fo 6505  df-f1o 6506  df-fv 6507  df-riota 7326  df-ov 7372  df-oprab 7373  df-mpo 7374  df-om 7823  df-1st 7947  df-2nd 7948  df-frecs 8237  df-wrecs 8268  df-recs 8317  df-rdg 8355  df-er 8648  df-map 8778  df-en 8896  df-dom 8897  df-sdom 8898  df-sup 9369  df-inf 9370  df-pnf 11186  df-mnf 11187  df-xr 11188  df-ltxr 11189  df-le 11190  df-sub 11383  df-neg 11384  df-div 11812  df-nn 12163  df-2 12225  df-3 12226  df-n0 12419  df-z 12506  df-uz 12770  df-q 12884  df-rp 12928  df-xneg 13048  df-xadd 13049  df-xmul 13050  df-ioo 13286  df-seq 13943  df-exp 14003  df-cj 15041  df-re 15042  df-im 15043  df-sqrt 15177  df-abs 15178  df-topgen 17382  df-psmet 21232  df-xmet 21233  df-met 21234  df-bl 21235  df-mopn 21236  df-bases 22809
This theorem is referenced by:  qdensere2  24661  rehaus  24663  resubmet  24666  tgioo2  24667  xrsmopn  24677  iccntr  24686  icccmplem3  24689  reconnlem2  24692  opnreen  24696  metdscn2  24722  evthicc  25336  opnmbllem  25478  dvlip2  25876  lhop  25897  dvcnvre  25900  nmcvcn  30597  opnrebl  36281  opnrebl2  36282  ptrecube  37587  poimirlem30  37617  opnmbllem0  37623  reheibor  37806
  Copyright terms: Public domain W3C validator