Metamath Proof Explorer


Theorem tgioo

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)

Ref Expression
Hypotheses remet.1 ⊢ D = abs ∘ − ↾ ℝ 2
tgioo.2 ⊢ J = MetOpen ⁡ D
Assertion tgioo ⊢ topGen ⁡ ran ⁡ . = J

Proof

Step Hyp Ref Expression
1 remet.1 ⊢ D = abs ∘ − ↾ ℝ 2
2 tgioo.2 ⊢ J = MetOpen ⁡ D
3 1 rexmet ⊢ D ∈ ∞Met ⁡ ℝ
4 2 mopnval ⊢ D ∈ ∞Met ⁡ ℝ → J = topGen ⁡ ran ⁡ ball ⁡ D
5 3 4 ax-mp ⊢ J = topGen ⁡ ran ⁡ ball ⁡ D
6 1 blssioo ⊢ ran ⁡ ball ⁡ D ⊆ ran ⁡ .
7 elssuni ⊢ v ∈ ran ⁡ . → v ⊆ ⋃ ran ⁡ .
8 unirnioo ⊢ ℝ = ⋃ ran ⁡ .
9 7 8 sseqtrrdi ⊢ v ∈ ran ⁡ . → v ⊆ ℝ
10 retopbas ⊢ ran ⁡ . ∈ TopBases
11 10 a1i ⊢ v ∈ ran ⁡ . ∧ x ∈ v → ran ⁡ . ∈ TopBases
12 simpl ⊢ v ∈ ran ⁡ . ∧ x ∈ v → v ∈ ran ⁡ .
13 9 sselda ⊢ v ∈ ran ⁡ . ∧ x ∈ v → x ∈ ℝ
14 1re ⊢ 1 ∈ ℝ
15 1 bl2ioo ⊢ x ∈ ℝ ∧ 1 ∈ ℝ → x ball ⁡ D 1 = x − 1 x + 1
16 14 15 mpan2 ⊢ x ∈ ℝ → x ball ⁡ D 1 = x − 1 x + 1
17 ioof ⊢ . : ℝ * × ℝ * ⟶ 𝒫 ℝ
18 ffn ⊢ . : ℝ * × ℝ * ⟶ 𝒫 ℝ → . Fn ℝ * × ℝ *
19 17 18 ax-mp ⊢ . Fn ℝ * × ℝ *
20 peano2rem ⊢ x ∈ ℝ → x − 1 ∈ ℝ
21 20 rexrd ⊢ x ∈ ℝ → x − 1 ∈ ℝ *
22 peano2re ⊢ x ∈ ℝ → x + 1 ∈ ℝ
23 22 rexrd ⊢ x ∈ ℝ → x + 1 ∈ ℝ *
24 fnovrn ⊢ . Fn ℝ * × ℝ * ∧ x − 1 ∈ ℝ * ∧ x + 1 ∈ ℝ * → x − 1 x + 1 ∈ ran ⁡ .
25 19 21 23 24 mp3an2i ⊢ x ∈ ℝ → x − 1 x + 1 ∈ ran ⁡ .
26 16 25 eqeltrd ⊢ x ∈ ℝ → x ball ⁡ D 1 ∈ ran ⁡ .
27 13 26 syl ⊢ v ∈ ran ⁡ . ∧ x ∈ v → x ball ⁡ D 1 ∈ ran ⁡ .
28 simpr ⊢ v ∈ ran ⁡ . ∧ x ∈ v → x ∈ v
29 1rp ⊢ 1 ∈ ℝ +
30 blcntr ⊢ D ∈ ∞Met ⁡ ℝ ∧ x ∈ ℝ ∧ 1 ∈ ℝ + → x ∈ x ball ⁡ D 1
31 3 29 30 mp3an13 ⊢ x ∈ ℝ → x ∈ x ball ⁡ D 1
32 13 31 syl ⊢ v ∈ ran ⁡ . ∧ x ∈ v → x ∈ x ball ⁡ D 1
33 28 32 elind ⊢ v ∈ ran ⁡ . ∧ x ∈ v → x ∈ v ∩ x ball ⁡ D 1
34 basis2 ⊢ ran ⁡ . ∈ TopBases ∧ v ∈ ran ⁡ . ∧ x ball ⁡ D 1 ∈ ran ⁡ . ∧ x ∈ v ∩ x ball ⁡ D 1 → ∃ z ∈ ran ⁡ . x ∈ z ∧ z ⊆ v ∩ x ball ⁡ D 1
35 11 12 27 33 34 syl22anc ⊢ v ∈ ran ⁡ . ∧ x ∈ v → ∃ z ∈ ran ⁡ . x ∈ z ∧ z ⊆ v ∩ x ball ⁡ D 1
36 ovelrn ⊢ . Fn ℝ * × ℝ * → z ∈ ran ⁡ . ↔ ∃ a ∈ ℝ * ∃ b ∈ ℝ * z = a b
37 19 36 ax-mp ⊢ z ∈ ran ⁡ . ↔ ∃ a ∈ ℝ * ∃ b ∈ ℝ * z = a b
38 eleq2 ⊢ z = a b → x ∈ z ↔ x ∈ a b
39 sseq1 ⊢ z = a b → z ⊆ v ∩ x ball ⁡ D 1 ↔ a b ⊆ v ∩ x ball ⁡ D 1
40 38 39 anbi12d ⊢ z = a b → x ∈ z ∧ z ⊆ v ∩ x ball ⁡ D 1 ↔ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1
41 inss2 ⊢ v ∩ x ball ⁡ D 1 ⊆ x ball ⁡ D 1
42 sstr ⊢ a b ⊆ v ∩ x ball ⁡ D 1 ∧ v ∩ x ball ⁡ D 1 ⊆ x ball ⁡ D 1 → a b ⊆ x ball ⁡ D 1
43 41 42 mpan2 ⊢ a b ⊆ v ∩ x ball ⁡ D 1 → a b ⊆ x ball ⁡ D 1
44 43 adantl ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → a b ⊆ x ball ⁡ D 1
45 elioore ⊢ x ∈ a b → x ∈ ℝ
46 45 adantr ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → x ∈ ℝ
47 46 16 syl ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → x ball ⁡ D 1 = x − 1 x + 1
48 44 47 sseqtrd ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → a b ⊆ x − 1 x + 1
49 dfss ⊢ a b ⊆ x − 1 x + 1 ↔ a b = a b ∩ x − 1 x + 1
50 48 49 sylib ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → a b = a b ∩ x − 1 x + 1
51 eliooxr ⊢ x ∈ a b → a ∈ ℝ * ∧ b ∈ ℝ *
52 21 23 jca ⊢ x ∈ ℝ → x − 1 ∈ ℝ * ∧ x + 1 ∈ ℝ *
53 45 52 syl ⊢ x ∈ a b → x − 1 ∈ ℝ * ∧ x + 1 ∈ ℝ *
54 iooin ⊢ a ∈ ℝ * ∧ b ∈ ℝ * ∧ x − 1 ∈ ℝ * ∧ x + 1 ∈ ℝ * → a b ∩ x − 1 x + 1 = if a ≤ x − 1 x − 1 a if b ≤ x + 1 b x + 1
55 51 53 54 syl2anc ⊢ x ∈ a b → a b ∩ x − 1 x + 1 = if a ≤ x − 1 x − 1 a if b ≤ x + 1 b x + 1
56 55 adantr ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → a b ∩ x − 1 x + 1 = if a ≤ x − 1 x − 1 a if b ≤ x + 1 b x + 1
57 50 56 eqtrd ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → a b = if a ≤ x − 1 x − 1 a if b ≤ x + 1 b x + 1
58 mnfxr ⊢ −∞ ∈ ℝ *
59 58 a1i ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → −∞ ∈ ℝ *
60 46 21 syl ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → x − 1 ∈ ℝ *
61 51 adantr ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → a ∈ ℝ * ∧ b ∈ ℝ *
62 61 simpld ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → a ∈ ℝ *
63 60 62 ifcld ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → if a ≤ x − 1 x − 1 a ∈ ℝ *
64 61 simprd ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → b ∈ ℝ *
65 46 22 syl ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → x + 1 ∈ ℝ
66 65 rexrd ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → x + 1 ∈ ℝ *
67 64 66 ifcld ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → if b ≤ x + 1 b x + 1 ∈ ℝ *
68 45 20 syl ⊢ x ∈ a b → x − 1 ∈ ℝ
69 68 adantr ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → x − 1 ∈ ℝ
70 69 mnfltd ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → −∞ < x − 1
71 xrmax2 ⊢ a ∈ ℝ * ∧ x − 1 ∈ ℝ * → x − 1 ≤ if a ≤ x − 1 x − 1 a
72 62 60 71 syl2anc ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → x − 1 ≤ if a ≤ x − 1 x − 1 a
73 59 60 63 70 72 xrltletrd ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → −∞ < if a ≤ x − 1 x − 1 a
74 simpl ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → x ∈ a b
75 74 57 eleqtrd ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → x ∈ if a ≤ x − 1 x − 1 a if b ≤ x + 1 b x + 1
76 eliooxr ⊢ x ∈ if a ≤ x − 1 x − 1 a if b ≤ x + 1 b x + 1 → if a ≤ x − 1 x − 1 a ∈ ℝ * ∧ if b ≤ x + 1 b x + 1 ∈ ℝ *
77 ne0i ⊢ x ∈ if a ≤ x − 1 x − 1 a if b ≤ x + 1 b x + 1 → if a ≤ x − 1 x − 1 a if b ≤ x + 1 b x + 1 ≠ ∅
78 ioon0 ⊢ if a ≤ x − 1 x − 1 a ∈ ℝ * ∧ if b ≤ x + 1 b x + 1 ∈ ℝ * → if a ≤ x − 1 x − 1 a if b ≤ x + 1 b x + 1 ≠ ∅ ↔ if a ≤ x − 1 x − 1 a < if b ≤ x + 1 b x + 1
79 77 78 imbitrid ⊢ if a ≤ x − 1 x − 1 a ∈ ℝ * ∧ if b ≤ x + 1 b x + 1 ∈ ℝ * → x ∈ if a ≤ x − 1 x − 1 a if b ≤ x + 1 b x + 1 → if a ≤ x − 1 x − 1 a < if b ≤ x + 1 b x + 1
80 76 79 mpcom ⊢ x ∈ if a ≤ x − 1 x − 1 a if b ≤ x + 1 b x + 1 → if a ≤ x − 1 x − 1 a < if b ≤ x + 1 b x + 1
81 75 80 syl ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → if a ≤ x − 1 x − 1 a < if b ≤ x + 1 b x + 1
82 xrre2 ⊢ −∞ ∈ ℝ * ∧ if a ≤ x − 1 x − 1 a ∈ ℝ * ∧ if b ≤ x + 1 b x + 1 ∈ ℝ * ∧ −∞ < if a ≤ x − 1 x − 1 a ∧ if a ≤ x − 1 x − 1 a < if b ≤ x + 1 b x + 1 → if a ≤ x − 1 x − 1 a ∈ ℝ
83 59 63 67 73 81 82 syl32anc ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → if a ≤ x − 1 x − 1 a ∈ ℝ
84 mnfle ⊢ if a ≤ x − 1 x − 1 a ∈ ℝ * → −∞ ≤ if a ≤ x − 1 x − 1 a
85 63 84 syl ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → −∞ ≤ if a ≤ x − 1 x − 1 a
86 59 63 67 85 81 xrlelttrd ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → −∞ < if b ≤ x + 1 b x + 1
87 xrmin2 ⊢ b ∈ ℝ * ∧ x + 1 ∈ ℝ * → if b ≤ x + 1 b x + 1 ≤ x + 1
88 64 66 87 syl2anc ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → if b ≤ x + 1 b x + 1 ≤ x + 1
89 xrre ⊢ if b ≤ x + 1 b x + 1 ∈ ℝ * ∧ x + 1 ∈ ℝ ∧ −∞ < if b ≤ x + 1 b x + 1 ∧ if b ≤ x + 1 b x + 1 ≤ x + 1 → if b ≤ x + 1 b x + 1 ∈ ℝ
90 67 65 86 88 89 syl22anc ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → if b ≤ x + 1 b x + 1 ∈ ℝ
91 1 ioo2blex ⊢ if a ≤ x − 1 x − 1 a ∈ ℝ ∧ if b ≤ x + 1 b x + 1 ∈ ℝ → if a ≤ x − 1 x − 1 a if b ≤ x + 1 b x + 1 ∈ ran ⁡ ball ⁡ D
92 83 90 91 syl2anc ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → if a ≤ x − 1 x − 1 a if b ≤ x + 1 b x + 1 ∈ ran ⁡ ball ⁡ D
93 57 92 eqeltrd ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → a b ∈ ran ⁡ ball ⁡ D
94 inss1 ⊢ v ∩ x ball ⁡ D 1 ⊆ v
95 sstr ⊢ a b ⊆ v ∩ x ball ⁡ D 1 ∧ v ∩ x ball ⁡ D 1 ⊆ v → a b ⊆ v
96 94 95 mpan2 ⊢ a b ⊆ v ∩ x ball ⁡ D 1 → a b ⊆ v
97 96 adantl ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → a b ⊆ v
98 sseq1 ⊢ z = a b → z ⊆ v ↔ a b ⊆ v
99 38 98 anbi12d ⊢ z = a b → x ∈ z ∧ z ⊆ v ↔ x ∈ a b ∧ a b ⊆ v
100 99 rspcev ⊢ a b ∈ ran ⁡ ball ⁡ D ∧ x ∈ a b ∧ a b ⊆ v → ∃ z ∈ ran ⁡ ball ⁡ D x ∈ z ∧ z ⊆ v
101 93 74 97 100 syl12anc ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → ∃ z ∈ ran ⁡ ball ⁡ D x ∈ z ∧ z ⊆ v
102 blssex ⊢ D ∈ ∞Met ⁡ ℝ ∧ x ∈ ℝ → ∃ z ∈ ran ⁡ ball ⁡ D x ∈ z ∧ z ⊆ v ↔ ∃ y ∈ ℝ + x ball ⁡ D y ⊆ v
103 3 46 102 sylancr ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → ∃ z ∈ ran ⁡ ball ⁡ D x ∈ z ∧ z ⊆ v ↔ ∃ y ∈ ℝ + x ball ⁡ D y ⊆ v
104 101 103 mpbid ⊢ x ∈ a b ∧ a b ⊆ v ∩ x ball ⁡ D 1 → ∃ y ∈ ℝ + x ball ⁡ D y ⊆ v
105 40 104 biimtrdi ⊢ z = a b → x ∈ z ∧ z ⊆ v ∩ x ball ⁡ D 1 → ∃ y ∈ ℝ + x ball ⁡ D y ⊆ v
106 105 a1i ⊢ a ∈ ℝ * ∧ b ∈ ℝ * → z = a b → x ∈ z ∧ z ⊆ v ∩ x ball ⁡ D 1 → ∃ y ∈ ℝ + x ball ⁡ D y ⊆ v
107 106 rexlimivv ⊢ ∃ a ∈ ℝ * ∃ b ∈ ℝ * z = a b → x ∈ z ∧ z ⊆ v ∩ x ball ⁡ D 1 → ∃ y ∈ ℝ + x ball ⁡ D y ⊆ v
108 107 imp ⊢ ∃ a ∈ ℝ * ∃ b ∈ ℝ * z = a b ∧ x ∈ z ∧ z ⊆ v ∩ x ball ⁡ D 1 → ∃ y ∈ ℝ + x ball ⁡ D y ⊆ v
109 37 108 sylanb ⊢ z ∈ ran ⁡ . ∧ x ∈ z ∧ z ⊆ v ∩ x ball ⁡ D 1 → ∃ y ∈ ℝ + x ball ⁡ D y ⊆ v
110 109 rexlimiva ⊢ ∃ z ∈ ran ⁡ . x ∈ z ∧ z ⊆ v ∩ x ball ⁡ D 1 → ∃ y ∈ ℝ + x ball ⁡ D y ⊆ v
111 35 110 syl ⊢ v ∈ ran ⁡ . ∧ x ∈ v → ∃ y ∈ ℝ + x ball ⁡ D y ⊆ v
112 111 ralrimiva ⊢ v ∈ ran ⁡ . → ∀ x ∈ v ∃ y ∈ ℝ + x ball ⁡ D y ⊆ v
113 2 elmopn2 ⊢ D ∈ ∞Met ⁡ ℝ → v ∈ J ↔ v ⊆ ℝ ∧ ∀ x ∈ v ∃ y ∈ ℝ + x ball ⁡ D y ⊆ v
114 3 113 ax-mp ⊢ v ∈ J ↔ v ⊆ ℝ ∧ ∀ x ∈ v ∃ y ∈ ℝ + x ball ⁡ D y ⊆ v
115 9 112 114 sylanbrc ⊢ v ∈ ran ⁡ . → v ∈ J
116 115 ssriv ⊢ ran ⁡ . ⊆ J
117 116 5 sseqtri ⊢ ran ⁡ . ⊆ topGen ⁡ ran ⁡ ball ⁡ D
118 2basgen ⊢ ran ⁡ ball ⁡ D ⊆ ran ⁡ . ∧ ran ⁡ . ⊆ topGen ⁡ ran ⁡ ball ⁡ D → topGen ⁡ ran ⁡ ball ⁡ D = topGen ⁡ ran ⁡ .
119 6 117 118 mp2an ⊢ topGen ⁡ ran ⁡ ball ⁡ D = topGen ⁡ ran ⁡ .
120 5 119 eqtr2i ⊢ topGen ⁡ ran ⁡ . = J