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

Theorem tgioo 24684
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 24679 . . 3 𝐷 ∈ (∞Met‘ℝ)
3 tgioo.2 . . . 4 𝐽 = (MetOpen‘𝐷)
43mopnval 24326 . . 3 (𝐷 ∈ (∞Met‘ℝ) → 𝐽 = (topGen‘ran (ball‘𝐷)))
52, 4ax-mp 5 . 2 𝐽 = (topGen‘ran (ball‘𝐷))
61blssioo 24683 . . 3 ran (ball‘𝐷) ⊆ ran (,)
7 elssuni 4901 . . . . . . 7 (𝑣 ∈ ran (,) → 𝑣 ran (,))
8 unirnioo 13410 . . . . . . 7 ℝ = ran (,)
97, 8sseqtrrdi 3988 . . . . . 6 (𝑣 ∈ ran (,) → 𝑣 ⊆ ℝ)
10 retopbas 24648 . . . . . . . . . 10 ran (,) ∈ TopBases
1110a1i 11 . . . . . . . . 9 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → ran (,) ∈ TopBases)
12 simpl 482 . . . . . . . . 9 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → 𝑣 ∈ ran (,))
139sselda 3946 . . . . . . . . . 10 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → 𝑥 ∈ ℝ)
14 1re 11174 . . . . . . . . . . . 12 1 ∈ ℝ
151bl2ioo 24680 . . . . . . . . . . . 12 ((𝑥 ∈ ℝ ∧ 1 ∈ ℝ) → (𝑥(ball‘𝐷)1) = ((𝑥 − 1)(,)(𝑥 + 1)))
1614, 15mpan2 691 . . . . . . . . . . 11 (𝑥 ∈ ℝ → (𝑥(ball‘𝐷)1) = ((𝑥 − 1)(,)(𝑥 + 1)))
17 ioof 13408 . . . . . . . . . . . . 13 (,):(ℝ* × ℝ*)⟶𝒫 ℝ
18 ffn 6688 . . . . . . . . . . . . 13 ((,):(ℝ* × ℝ*)⟶𝒫 ℝ → (,) Fn (ℝ* × ℝ*))
1917, 18ax-mp 5 . . . . . . . . . . . 12 (,) Fn (ℝ* × ℝ*)
20 peano2rem 11489 . . . . . . . . . . . . 13 (𝑥 ∈ ℝ → (𝑥 − 1) ∈ ℝ)
2120rexrd 11224 . . . . . . . . . . . 12 (𝑥 ∈ ℝ → (𝑥 − 1) ∈ ℝ*)
22 peano2re 11347 . . . . . . . . . . . . 13 (𝑥 ∈ ℝ → (𝑥 + 1) ∈ ℝ)
2322rexrd 11224 . . . . . . . . . . . 12 (𝑥 ∈ ℝ → (𝑥 + 1) ∈ ℝ*)
24 fnovrn 7564 . . . . . . . . . . . 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 12955 . . . . . . . . . . . 12 1 ∈ ℝ+
30 blcntr 24301 . . . . . . . . . . . 12 ((𝐷 ∈ (∞Met‘ℝ) ∧ 𝑥 ∈ ℝ ∧ 1 ∈ ℝ+) → 𝑥 ∈ (𝑥(ball‘𝐷)1))
312, 29, 30mp3an13 1454 . . . . . . . . . . 11 (𝑥 ∈ ℝ → 𝑥 ∈ (𝑥(ball‘𝐷)1))
3213, 31syl 17 . . . . . . . . . 10 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → 𝑥 ∈ (𝑥(ball‘𝐷)1))
3328, 32elind 4163 . . . . . . . . 9 ((𝑣 ∈ ran (,) ∧ 𝑥𝑣) → 𝑥 ∈ (𝑣 ∩ (𝑥(ball‘𝐷)1)))
34 basis2 22838 . . . . . . . . 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 7565 . . . . . . . . . . 11 ((,) Fn (ℝ* × ℝ*) → (𝑧 ∈ ran (,) ↔ ∃𝑎 ∈ ℝ*𝑏 ∈ ℝ* 𝑧 = (𝑎(,)𝑏)))
3719, 36ax-mp 5 . . . . . . . . . 10 (𝑧 ∈ ran (,) ↔ ∃𝑎 ∈ ℝ*𝑏 ∈ ℝ* 𝑧 = (𝑎(,)𝑏))
38 eleq2 2817 . . . . . . . . . . . . . . 15 (𝑧 = (𝑎(,)𝑏) → (𝑥𝑧𝑥 ∈ (𝑎(,)𝑏)))
39 sseq1 3972 . . . . . . . . . . . . . . 15 (𝑧 = (𝑎(,)𝑏) → (𝑧 ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1)) ↔ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))))
4038, 39anbi12d 632 . . . . . . . . . . . . . 14 (𝑧 = (𝑎(,)𝑏) → ((𝑥𝑧𝑧 ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) ↔ (𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1)))))
41 inss2 4201 . . . . . . . . . . . . . . . . . . . . . 22 (𝑣 ∩ (𝑥(ball‘𝐷)1)) ⊆ (𝑥(ball‘𝐷)1)
42 sstr 3955 . . . . . . . . . . . . . . . . . . . . . 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 13336 . . . . . . . . . . . . . . . . . . . . . 22 (𝑥 ∈ (𝑎(,)𝑏) → 𝑥 ∈ ℝ)
4645adantr 480 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → 𝑥 ∈ ℝ)
4746, 16syl 17 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑥(ball‘𝐷)1) = ((𝑥 − 1)(,)(𝑥 + 1)))
4844, 47sseqtrd 3983 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑎(,)𝑏) ⊆ ((𝑥 − 1)(,)(𝑥 + 1)))
49 dfss 3933 . . . . . . . . . . . . . . . . . . 19 ((𝑎(,)𝑏) ⊆ ((𝑥 − 1)(,)(𝑥 + 1)) ↔ (𝑎(,)𝑏) = ((𝑎(,)𝑏) ∩ ((𝑥 − 1)(,)(𝑥 + 1))))
5048, 49sylib 218 . . . . . . . . . . . . . . . . . 18 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑎(,)𝑏) = ((𝑎(,)𝑏) ∩ ((𝑥 − 1)(,)(𝑥 + 1))))
51 eliooxr 13365 . . . . . . . . . . . . . . . . . . . 20 (𝑥 ∈ (𝑎(,)𝑏) → (𝑎 ∈ ℝ*𝑏 ∈ ℝ*))
5221, 23jca 511 . . . . . . . . . . . . . . . . . . . . 21 (𝑥 ∈ ℝ → ((𝑥 − 1) ∈ ℝ* ∧ (𝑥 + 1) ∈ ℝ*))
5345, 52syl 17 . . . . . . . . . . . . . . . . . . . 20 (𝑥 ∈ (𝑎(,)𝑏) → ((𝑥 − 1) ∈ ℝ* ∧ (𝑥 + 1) ∈ ℝ*))
54 iooin 13340 . . . . . . . . . . . . . . . . . . . 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 11231 . . . . . . . . . . . . . . . . . . . 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 4535 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) ∈ ℝ*)
6461simprd 495 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → 𝑏 ∈ ℝ*)
6546, 22syl 17 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑥 + 1) ∈ ℝ)
6665rexrd 11224 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑥 + 1) ∈ ℝ*)
6764, 66ifcld 4535 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ∈ ℝ*)
6845, 20syl 17 . . . . . . . . . . . . . . . . . . . . . 22 (𝑥 ∈ (𝑎(,)𝑏) → (𝑥 − 1) ∈ ℝ)
6968adantr 480 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑥 − 1) ∈ ℝ)
7069mnfltd 13084 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → -∞ < (𝑥 − 1))
71 xrmax2 13136 . . . . . . . . . . . . . . . . . . . . 21 ((𝑎 ∈ ℝ* ∧ (𝑥 − 1) ∈ ℝ*) → (𝑥 − 1) ≤ if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎))
7262, 60, 71syl2anc 584 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑥 − 1) ≤ if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎))
7359, 60, 63, 70, 72xrltletrd 13121 . . . . . . . . . . . . . . . . . . 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 13365 . . . . . . . . . . . . . . . . . . . . 21 (𝑥 ∈ (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))) → (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) ∈ ℝ* ∧ if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ∈ ℝ*))
77 ne0i 4304 . . . . . . . . . . . . . . . . . . . . . 22 (𝑥 ∈ (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))) → (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎)(,)if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1))) ≠ ∅)
78 ioon0 13332 . . . . . . . . . . . . . . . . . . . . . 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 13130 . . . . . . . . . . . . . . . . . . 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 13095 . . . . . . . . . . . . . . . . . . . . 21 (if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎) ∈ ℝ* → -∞ ≤ if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎))
8563, 84syl 17 . . . . . . . . . . . . . . . . . . . 20 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → -∞ ≤ if(𝑎 ≤ (𝑥 − 1), (𝑥 − 1), 𝑎))
8659, 63, 67, 85, 81xrlelttrd 13120 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → -∞ < if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)))
87 xrmin2 13138 . . . . . . . . . . . . . . . . . . . 20 ((𝑏 ∈ ℝ* ∧ (𝑥 + 1) ∈ ℝ*) → if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ≤ (𝑥 + 1))
8864, 66, 87syl2anc 584 . . . . . . . . . . . . . . . . . . 19 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → if(𝑏 ≤ (𝑥 + 1), 𝑏, (𝑥 + 1)) ≤ (𝑥 + 1))
89 xrre 13129 . . . . . . . . . . . . . . . . . . 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 24682 . . . . . . . . . . . . . . . . . 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 4200 . . . . . . . . . . . . . . . . . 18 (𝑣 ∩ (𝑥(ball‘𝐷)1)) ⊆ 𝑣
95 sstr 3955 . . . . . . . . . . . . . . . . . 18 (((𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1)) ∧ (𝑣 ∩ (𝑥(ball‘𝐷)1)) ⊆ 𝑣) → (𝑎(,)𝑏) ⊆ 𝑣)
9694, 95mpan2 691 . . . . . . . . . . . . . . . . 17 ((𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1)) → (𝑎(,)𝑏) ⊆ 𝑣)
9796adantl 481 . . . . . . . . . . . . . . . 16 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → (𝑎(,)𝑏) ⊆ 𝑣)
98 sseq1 3972 . . . . . . . . . . . . . . . . . 18 (𝑧 = (𝑎(,)𝑏) → (𝑧𝑣 ↔ (𝑎(,)𝑏) ⊆ 𝑣))
9938, 98anbi12d 632 . . . . . . . . . . . . . . . . 17 (𝑧 = (𝑎(,)𝑏) → ((𝑥𝑧𝑧𝑣) ↔ (𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ 𝑣)))
10099rspcev 3588 . . . . . . . . . . . . . . . 16 (((𝑎(,)𝑏) ∈ ran (ball‘𝐷) ∧ (𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ 𝑣)) → ∃𝑧 ∈ ran (ball‘𝐷)(𝑥𝑧𝑧𝑣))
10193, 74, 97, 100syl12anc 836 . . . . . . . . . . . . . . 15 ((𝑥 ∈ (𝑎(,)𝑏) ∧ (𝑎(,)𝑏) ⊆ (𝑣 ∩ (𝑥(ball‘𝐷)1))) → ∃𝑧 ∈ ran (ball‘𝐷)(𝑥𝑧𝑧𝑣))
102 blssex 24315 . . . . . . . . . . . . . . . 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 3179 . . . . . . . . . . 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 24333 . . . . . . 7 (𝐷 ∈ (∞Met‘ℝ) → (𝑣𝐽 ↔ (𝑣 ⊆ ℝ ∧ ∀𝑥𝑣𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣)))
1142, 113ax-mp 5 . . . . . 6 (𝑣𝐽 ↔ (𝑣 ⊆ ℝ ∧ ∀𝑥𝑣𝑦 ∈ ℝ+ (𝑥(ball‘𝐷)𝑦) ⊆ 𝑣))
1159, 112, 114sylanbrc 583 . . . . 5 (𝑣 ∈ ran (,) → 𝑣𝐽)
116115ssriv 3950 . . . 4 ran (,) ⊆ 𝐽
117116, 5sseqtri 3995 . . 3 ran (,) ⊆ (topGen‘ran (ball‘𝐷))
118 2basgen 22877 . . 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 3913  wss 3914  c0 4296  ifcif 4488  𝒫 cpw 4563   cuni 4871   class class class wbr 5107   × cxp 5636  ran crn 5639  cres 5640  ccom 5642   Fn wfn 6506  wf 6507  cfv 6511  (class class class)co 7387  cr 11067  1c1 11069   + caddc 11071  -∞cmnf 11206  *cxr 11207   < clt 11208  cle 11209  cmin 11405  +crp 12951  (,)cioo 13306  abscabs 15200  topGenctg 17400  ∞Metcxmet 21249  ballcbl 21251  MetOpencmopn 21254  TopBasesctb 22832
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 5251  ax-nul 5261  ax-pow 5320  ax-pr 5387  ax-un 7711  ax-cnex 11124  ax-resscn 11125  ax-1cn 11126  ax-icn 11127  ax-addcl 11128  ax-addrcl 11129  ax-mulcl 11130  ax-mulrcl 11131  ax-mulcom 11132  ax-addass 11133  ax-mulass 11134  ax-distr 11135  ax-i2m1 11136  ax-1ne0 11137  ax-1rid 11138  ax-rnegex 11139  ax-rrecex 11140  ax-cnre 11141  ax-pre-lttri 11142  ax-pre-lttrn 11143  ax-pre-ltadd 11144  ax-pre-mulgt0 11145  ax-pre-sup 11146
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 3354  df-reu 3355  df-rab 3406  df-v 3449  df-sbc 3754  df-csb 3863  df-dif 3917  df-un 3919  df-in 3921  df-ss 3931  df-pss 3934  df-nul 4297  df-if 4489  df-pw 4565  df-sn 4590  df-pr 4592  df-op 4596  df-uni 4872  df-iun 4957  df-br 5108  df-opab 5170  df-mpt 5189  df-tr 5215  df-id 5533  df-eprel 5538  df-po 5546  df-so 5547  df-fr 5591  df-we 5593  df-xp 5644  df-rel 5645  df-cnv 5646  df-co 5647  df-dm 5648  df-rn 5649  df-res 5650  df-ima 5651  df-pred 6274  df-ord 6335  df-on 6336  df-lim 6337  df-suc 6338  df-iota 6464  df-fun 6513  df-fn 6514  df-f 6515  df-f1 6516  df-fo 6517  df-f1o 6518  df-fv 6519  df-riota 7344  df-ov 7390  df-oprab 7391  df-mpo 7392  df-om 7843  df-1st 7968  df-2nd 7969  df-frecs 8260  df-wrecs 8291  df-recs 8340  df-rdg 8378  df-er 8671  df-map 8801  df-en 8919  df-dom 8920  df-sdom 8921  df-sup 9393  df-inf 9394  df-pnf 11210  df-mnf 11211  df-xr 11212  df-ltxr 11213  df-le 11214  df-sub 11407  df-neg 11408  df-div 11836  df-nn 12187  df-2 12249  df-3 12250  df-n0 12443  df-z 12530  df-uz 12794  df-q 12908  df-rp 12952  df-xneg 13072  df-xadd 13073  df-xmul 13074  df-ioo 13310  df-seq 13967  df-exp 14027  df-cj 15065  df-re 15066  df-im 15067  df-sqrt 15201  df-abs 15202  df-topgen 17406  df-psmet 21256  df-xmet 21257  df-met 21258  df-bl 21259  df-mopn 21260  df-bases 22833
This theorem is referenced by:  qdensere2  24685  rehaus  24687  resubmet  24690  tgioo2  24691  xrsmopn  24701  iccntr  24710  icccmplem3  24713  reconnlem2  24716  opnreen  24720  metdscn2  24746  evthicc  25360  opnmbllem  25502  dvlip2  25900  lhop  25921  dvcnvre  25924  nmcvcn  30624  opnrebl  36308  opnrebl2  36309  ptrecube  37614  poimirlem30  37644  opnmbllem0  37650  reheibor  37833
  Copyright terms: Public domain W3C validator