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

Theorem methaus 24848
Description: The topology generated by a metric space is Hausdorff. (Contributed by Mario Carneiro, 21-Mar-2015.) (Revised by Mario Carneiro, 26-Aug-2015.)
Hypothesis
Ref Expression
methaus.1 𝐽 = (MetOpen‘𝐷)
Assertion
Ref Expression
methaus (𝐷 ∈ (∞Met‘𝑋) → 𝐽 ∈ Haus)

Proof of Theorem methaus
Dummy variables 𝑛 𝑑 𝑥 𝑦 𝑚 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 methaus.1 . . 3 𝐽 = (MetOpen‘𝐷)
21mopnex 24847 . 2 (𝐷 ∈ (∞Met‘𝑋) → ∃𝑑 ∈ (Met‘𝑋)𝐽 = (MetOpen‘𝑑))
3 metxmet 24662 . . . . . . . . . 10 (𝑑 ∈ (Met‘𝑋) → 𝑑 ∈ (∞Met‘𝑋))
43ad2antrr 739 . . . . . . . . 9 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → 𝑑 ∈ (∞Met‘𝑋))
5 simplrl 789 . . . . . . . . 9 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → 𝑥 ∈ 𝑋)
6 metcl 24660 . . . . . . . . . . . . . 14 ((𝑑 ∈ (Met‘𝑋) ∧ 𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋) → (𝑥𝑑𝑦) ∈ ℝ)
763expb 1138 . . . . . . . . . . . . 13 ((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → (𝑥𝑑𝑦) ∈ ℝ)
87adantr 486 . . . . . . . . . . . 12 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → (𝑥𝑑𝑦) ∈ ℝ)
9 metgt0 24687 . . . . . . . . . . . . . 14 ((𝑑 ∈ (Met‘𝑋) ∧ 𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋) → (𝑥 ≠ 𝑦 ↔ 0 < (𝑥𝑑𝑦)))
1093expb 1138 . . . . . . . . . . . . 13 ((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → (𝑥 ≠ 𝑦 ↔ 0 < (𝑥𝑑𝑦)))
1110biimpa 482 . . . . . . . . . . . 12 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → 0 < (𝑥𝑑𝑦))
128, 11elrpd 13168 . . . . . . . . . . 11 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → (𝑥𝑑𝑦) ∈ ℝ+)
1312rphalfcld 13183 . . . . . . . . . 10 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → ((𝑥𝑑𝑦) / 2) ∈ ℝ+)
1413rpxrd 13172 . . . . . . . . 9 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → ((𝑥𝑑𝑦) / 2) ∈ ℝ*)
15 eqid 2760 . . . . . . . . . 10 (MetOpen‘𝑑) = (MetOpen‘𝑑)
1615blopn 24828 . . . . . . . . 9 ((𝑑 ∈ (∞Met‘𝑋) ∧ 𝑥 ∈ 𝑋 ∧ ((𝑥𝑑𝑦) / 2) ∈ ℝ*) → (𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∈ (MetOpen‘𝑑))
174, 5, 14, 16syl3anc 1398 . . . . . . . 8 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → (𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∈ (MetOpen‘𝑑))
18 simplrr 790 . . . . . . . . 9 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → 𝑦 ∈ 𝑋)
1915blopn 24828 . . . . . . . . 9 ((𝑑 ∈ (∞Met‘𝑋) ∧ 𝑦 ∈ 𝑋 ∧ ((𝑥𝑑𝑦) / 2) ∈ ℝ*) → (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∈ (MetOpen‘𝑑))
204, 18, 14, 19syl3anc 1398 . . . . . . . 8 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∈ (MetOpen‘𝑑))
21 blcntr 24741 . . . . . . . . 9 ((𝑑 ∈ (∞Met‘𝑋) ∧ 𝑥 ∈ 𝑋 ∧ ((𝑥𝑑𝑦) / 2) ∈ ℝ+) → 𝑥 ∈ (𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)))
224, 5, 13, 21syl3anc 1398 . . . . . . . 8 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → 𝑥 ∈ (𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)))
23 blcntr 24741 . . . . . . . . 9 ((𝑑 ∈ (∞Met‘𝑋) ∧ 𝑦 ∈ 𝑋 ∧ ((𝑥𝑑𝑦) / 2) ∈ ℝ+) → 𝑦 ∈ (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2)))
244, 18, 13, 23syl3anc 1398 . . . . . . . 8 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → 𝑦 ∈ (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2)))
2513rpred 13171 . . . . . . . . . . . 12 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → ((𝑥𝑑𝑦) / 2) ∈ ℝ)
2625, 25rexaddd 13371 . . . . . . . . . . 11 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → (((𝑥𝑑𝑦) / 2) +e ((𝑥𝑑𝑦) / 2)) = (((𝑥𝑑𝑦) / 2) + ((𝑥𝑑𝑦) / 2)))
278recnd 11344 . . . . . . . . . . . 12 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → (𝑥𝑑𝑦) ∈ ℂ)
28272halvesd 12599 . . . . . . . . . . 11 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → (((𝑥𝑑𝑦) / 2) + ((𝑥𝑑𝑦) / 2)) = (𝑥𝑑𝑦))
2926, 28eqtrd 2795 . . . . . . . . . 10 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → (((𝑥𝑑𝑦) / 2) +e ((𝑥𝑑𝑦) / 2)) = (𝑥𝑑𝑦))
308leidd 11889 . . . . . . . . . 10 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → (𝑥𝑑𝑦) ≤ (𝑥𝑑𝑦))
3129, 30eqbrtrd 5126 . . . . . . . . 9 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → (((𝑥𝑑𝑦) / 2) +e ((𝑥𝑑𝑦) / 2)) ≤ (𝑥𝑑𝑦))
32 bldisj 24726 . . . . . . . . 9 (((𝑑 ∈ (∞Met‘𝑋) ∧ 𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋) ∧ (((𝑥𝑑𝑦) / 2) ∈ ℝ* ∧ ((𝑥𝑑𝑦) / 2) ∈ ℝ* ∧ (((𝑥𝑑𝑦) / 2) +e ((𝑥𝑑𝑦) / 2)) ≤ (𝑥𝑑𝑦))) → ((𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∩ (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2))) = ∅)
334, 5, 18, 14, 14, 31, 32syl33anc 1412 . . . . . . . 8 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → ((𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∩ (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2))) = ∅)
34 eleq2 2849 . . . . . . . . . 10 (𝑚 = (𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) → (𝑥 ∈ 𝑚 ↔ 𝑥 ∈ (𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2))))
35 ineq1 4109 . . . . . . . . . . 11 (𝑚 = (𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) → (𝑚 ∩ 𝑛) = ((𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∩ 𝑛))
3635eqeq1d 2762 . . . . . . . . . 10 (𝑚 = (𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) → ((𝑚 ∩ 𝑛) = ∅ ↔ ((𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∩ 𝑛) = ∅))
3734, 363anbi13d 1466 . . . . . . . . 9 (𝑚 = (𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) → ((𝑥 ∈ 𝑚 ∧ 𝑦 ∈ 𝑛 ∧ (𝑚 ∩ 𝑛) = ∅) ↔ (𝑥 ∈ (𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∧ 𝑦 ∈ 𝑛 ∧ ((𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∩ 𝑛) = ∅)))
38 eleq2 2849 . . . . . . . . . 10 (𝑛 = (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2)) → (𝑦 ∈ 𝑛 ↔ 𝑦 ∈ (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2))))
39 ineq2 4110 . . . . . . . . . . 11 (𝑛 = (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2)) → ((𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∩ 𝑛) = ((𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∩ (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2))))
4039eqeq1d 2762 . . . . . . . . . 10 (𝑛 = (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2)) → (((𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∩ 𝑛) = ∅ ↔ ((𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∩ (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2))) = ∅))
4138, 403anbi23d 1467 . . . . . . . . 9 (𝑛 = (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2)) → ((𝑥 ∈ (𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∧ 𝑦 ∈ 𝑛 ∧ ((𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∩ 𝑛) = ∅) ↔ (𝑥 ∈ (𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∧ 𝑦 ∈ (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∧ ((𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∩ (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2))) = ∅)))
4237, 41rspc2ev 3588 . . . . . . . 8 (((𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∈ (MetOpen‘𝑑) ∧ (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∈ (MetOpen‘𝑑) ∧ (𝑥 ∈ (𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∧ 𝑦 ∈ (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∧ ((𝑥(ball‘𝑑)((𝑥𝑑𝑦) / 2)) ∩ (𝑦(ball‘𝑑)((𝑥𝑑𝑦) / 2))) = ∅)) → ∃𝑚 ∈ (MetOpen‘𝑑)∃𝑛 ∈ (MetOpen‘𝑑)(𝑥 ∈ 𝑚 ∧ 𝑦 ∈ 𝑛 ∧ (𝑚 ∩ 𝑛) = ∅))
4317, 20, 22, 24, 33, 42syl113anc 1409 . . . . . . 7 (((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) ∧ 𝑥 ≠ 𝑦) → ∃𝑚 ∈ (MetOpen‘𝑑)∃𝑛 ∈ (MetOpen‘𝑑)(𝑥 ∈ 𝑚 ∧ 𝑦 ∈ 𝑛 ∧ (𝑚 ∩ 𝑛) = ∅))
4443ex 418 . . . . . 6 ((𝑑 ∈ (Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → (𝑥 ≠ 𝑦 → ∃𝑚 ∈ (MetOpen‘𝑑)∃𝑛 ∈ (MetOpen‘𝑑)(𝑥 ∈ 𝑚 ∧ 𝑦 ∈ 𝑛 ∧ (𝑚 ∩ 𝑛) = ∅)))
4544ralrimivva 3205 . . . . 5 (𝑑 ∈ (Met‘𝑋) → ∀𝑥 ∈ 𝑋 ∀𝑦 ∈ 𝑋 (𝑥 ≠ 𝑦 → ∃𝑚 ∈ (MetOpen‘𝑑)∃𝑛 ∈ (MetOpen‘𝑑)(𝑥 ∈ 𝑚 ∧ 𝑦 ∈ 𝑛 ∧ (𝑚 ∩ 𝑛) = ∅)))
4615mopntopon 24767 . . . . . 6 (𝑑 ∈ (∞Met‘𝑋) → (MetOpen‘𝑑) ∈ (TopOn‘𝑋))
47 ishaus2 23678 . . . . . 6 ((MetOpen‘𝑑) ∈ (TopOn‘𝑋) → ((MetOpen‘𝑑) ∈ Haus ↔ ∀𝑥 ∈ 𝑋 ∀𝑦 ∈ 𝑋 (𝑥 ≠ 𝑦 → ∃𝑚 ∈ (MetOpen‘𝑑)∃𝑛 ∈ (MetOpen‘𝑑)(𝑥 ∈ 𝑚 ∧ 𝑦 ∈ 𝑛 ∧ (𝑚 ∩ 𝑛) = ∅))))
483, 46, 473syl 19 . . . . 5 (𝑑 ∈ (Met‘𝑋) → ((MetOpen‘𝑑) ∈ Haus ↔ ∀𝑥 ∈ 𝑋 ∀𝑦 ∈ 𝑋 (𝑥 ≠ 𝑦 → ∃𝑚 ∈ (MetOpen‘𝑑)∃𝑛 ∈ (MetOpen‘𝑑)(𝑥 ∈ 𝑚 ∧ 𝑦 ∈ 𝑛 ∧ (𝑚 ∩ 𝑛) = ∅))))
4945, 48mpbird 260 . . . 4 (𝑑 ∈ (Met‘𝑋) → (MetOpen‘𝑑) ∈ Haus)
50 eleq1 2848 . . . 4 (𝐽 = (MetOpen‘𝑑) → (𝐽 ∈ Haus ↔ (MetOpen‘𝑑) ∈ Haus))
5149, 50syl5ibrcom 250 . . 3 (𝑑 ∈ (Met‘𝑋) → (𝐽 = (MetOpen‘𝑑) → 𝐽 ∈ Haus))
5251rexlimiv 3156 . 2 (∃𝑑 ∈ (Met‘𝑋)𝐽 = (MetOpen‘𝑑) → 𝐽 ∈ Haus)
532, 52syl 18 1 (𝐷 ∈ (∞Met‘𝑋) → 𝐽 ∈ Haus)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   ∧ wa 401   ∧ w3a 1103   = wceq 1569   ∈ wcel 2144   ≠ wne 2955  ∀wral 3076  ∃wrex 3086   ∩ cin 4088  ∅c0 4277   class class class wbr 5102  ‘cfv 6543  (class class class)co 7424  ℝcr 11206  0cc0 11207   + caddc 11210  ℝ*cxr 11349   < clt 11350   ≤ cle 11351   / cdiv 11980  2c2 12404  ℝ+crp 13127   +e cxad 13246  ∞Metcxmet 21672  Metcmet 21673  ballcbl 21674  MetOpencmopn 21677  TopOnctopon 23237  Hauscha 23635
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1942  ax-6 1999  ax-7 2040  ax-8 2146  ax-9 2154  ax-10 2177  ax-11 2193  ax-12 2212  ax-ext 2732  ax-sep 5248  ax-nul 5259  ax-pow 5327  ax-pr 5391  ax-un 7755  ax-cnex 11263  ax-resscn 11264  ax-1cn 11265  ax-icn 11266  ax-addcl 11267  ax-addrcl 11268  ax-mulcl 11269  ax-mulrcl 11270  ax-mulcom 11271  ax-addass 11272  ax-mulass 11273  ax-distr 11274  ax-i2m1 11275  ax-1ne0 11276  ax-1rid 11277  ax-rnegex 11278  ax-rrecex 11279  ax-cnre 11280  ax-pre-lttri 11281  ax-pre-lttrn 11282  ax-pre-ltadd 11283  ax-pre-mulgt0 11284  ax-pre-sup 11285
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2099  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-rmo 3365  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3848  df-ss 3897  df-pss 4013  df-dif 4046  df-in 4090  df-un 4150  df-nul 4278  df-if 4482  df-pw 4558  df-sn 4585  df-pr 4587  df-op 4835  df-uni 4867  df-iun 4952  df-br 5103  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-we 5606  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-pred 6307  df-ord 6368  df-on 6369  df-lim 6370  df-suc 6371  df-iota 6497  df-fun 6545  df-fn 6546  df-f 6547  df-f1 6548  df-fo 6549  df-f1o 6550  df-fv 6551  df-riota 7381  df-ov 7427  df-oprab 7428  df-mpo 7429  df-om 7882  df-1st 8005  df-2nd 8006  df-frecs 8307  df-wrecs 8338  df-recs 8387  df-rdg 8426  df-er 8725  df-map 8857  df-en 8982  df-dom 8983  df-sdom 8984  df-sup 9441  df-inf 9442  df-pnf 11352  df-mnf 11353  df-xr 11354  df-ltxr 11355  df-le 11356  df-sub 11550  df-neg 11551  df-div 11981  df-nn 12343  df-2 12412  df-n0 12614  df-z 12701  df-uz 12973  df-q 13083  df-rp 13128  df-xneg 13248  df-xadd 13249  df-xmul 13250  df-icc 13490  df-topgen 17623  df-psmet 21679  df-xmet 21680  df-met 21681  df-bl 21682  df-mopn 21683  df-top 23221  df-topon 23238  df-bases 23273  df-haus 23642
This theorem is used by:  cnfldhaus  25112  rehaus  25127  metreg  25192  lmcau  25643  metsscmetcld  25645  minveclem4a  25760  minvecolem4a  31488  minvecolem4b  31489  minvecolem4  31491  hlimf  31848  hmopidmchi  32762  rrhcn  34679  rrexthaus  34689  sitmcl  35033  heiborlem9  38890  bfplem1  38893
  Copyright terms: Public domain W3C validator