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

Theorem bcth 25662
Description: Baire's Category Theorem. If a nonempty metric space is complete, it is nonmeager in itself. In other words, no open set in the metric space can be the countable union of rare closed subsets (where rare means having a closure with empty interior), so some subset 𝑀‘𝑘 must have a nonempty interior. Theorem 4.7-2 of [Kreyszig] p. 247. (The terminology "meager" and "nonmeager" is used by Kreyszig to replace Baire's "of the first category" and "of the second category." The latter terms are going out of favor to avoid confusion with category theory.) See bcthlem5 25661 for an overview of the proof. (Contributed by NM, 28-Oct-2007.) (Proof shortened by Mario Carneiro, 6-Jan-2014.)
Hypothesis
Ref Expression
bcth.2 𝐽 = (MetOpen‘𝐷)
Assertion
Ref Expression
bcth ((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽) ∧ ((int‘𝐽)‘∪ ran 𝑀) ≠ ∅) → ∃𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) ≠ ∅)
Distinct variable groups:   𝐷,𝑘   𝑘,𝐽   𝑘,𝑀   𝑘,𝑋

Proof of Theorem bcth
Dummy variables 𝑛 𝑟 𝑥 𝑧 𝑔 𝑚 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 bcth.2 . . . . . 6 𝐽 = (MetOpen‘𝐷)
2 simpll 779 . . . . . 6 (((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) ∧ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅) → 𝐷 ∈ (CMet‘𝑋))
3 eleq1w 2846 . . . . . . . . . . 11 (𝑥 = 𝑦 → (𝑥 ∈ 𝑋 ↔ 𝑦 ∈ 𝑋))
4 eleq1w 2846 . . . . . . . . . . 11 (𝑟 = 𝑚 → (𝑟 ∈ ℝ+ ↔ 𝑚 ∈ ℝ+))
53, 4bi2anan9 650 . . . . . . . . . 10 ((𝑥 = 𝑦 ∧ 𝑟 = 𝑚) → ((𝑥 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) ↔ (𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+)))
6 simpr 490 . . . . . . . . . . . 12 ((𝑥 = 𝑦 ∧ 𝑟 = 𝑚) → 𝑟 = 𝑚)
76breq1d 5115 . . . . . . . . . . 11 ((𝑥 = 𝑦 ∧ 𝑟 = 𝑚) → (𝑟 < (1 / 𝑘) ↔ 𝑚 < (1 / 𝑘)))
8 oveq12 7436 . . . . . . . . . . . . 13 ((𝑥 = 𝑦 ∧ 𝑟 = 𝑚) → (𝑥(ball‘𝐷)𝑟) = (𝑦(ball‘𝐷)𝑚))
98fveq2d 6897 . . . . . . . . . . . 12 ((𝑥 = 𝑦 ∧ 𝑟 = 𝑚) → ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) = ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)))
109sseq1d 3943 . . . . . . . . . . 11 ((𝑥 = 𝑦 ∧ 𝑟 = 𝑚) → (((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘)) ↔ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))))
117, 10anbi12d 644 . . . . . . . . . 10 ((𝑥 = 𝑦 ∧ 𝑟 = 𝑚) → ((𝑟 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))) ↔ (𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘)))))
125, 11anbi12d 644 . . . . . . . . 9 ((𝑥 = 𝑦 ∧ 𝑟 = 𝑚) → (((𝑥 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) ∧ (𝑟 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘)))) ↔ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))))))
1312cbvopabv 5180 . . . . . . . 8 {⟨𝑥, 𝑟⟩ ∣ ((𝑥 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) ∧ (𝑟 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))))} = {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))))}
14 oveq2 7435 . . . . . . . . . . . 12 (𝑘 = 𝑛 → (1 / 𝑘) = (1 / 𝑛))
1514breq2d 5117 . . . . . . . . . . 11 (𝑘 = 𝑛 → (𝑚 < (1 / 𝑘) ↔ 𝑚 < (1 / 𝑛)))
16 fveq2 6893 . . . . . . . . . . . . 13 (𝑘 = 𝑛 → (𝑀‘𝑘) = (𝑀‘𝑛))
1716difeq2d 4065 . . . . . . . . . . . 12 (𝑘 = 𝑛 → (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘)) = (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛)))
1817sseq2d 3944 . . . . . . . . . . 11 (𝑘 = 𝑛 → (((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘)) ↔ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛))))
1915, 18anbi12d 644 . . . . . . . . . 10 (𝑘 = 𝑛 → ((𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))) ↔ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛)))))
2019anbi2d 642 . . . . . . . . 9 (𝑘 = 𝑛 → (((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘)))) ↔ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛))))))
2120opabbidv 5173 . . . . . . . 8 (𝑘 = 𝑛 → {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))))} = {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛))))})
2213, 21eqtrid 2810 . . . . . . 7 (𝑘 = 𝑛 → {⟨𝑥, 𝑟⟩ ∣ ((𝑥 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) ∧ (𝑟 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))))} = {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛))))})
23 fveq2 6893 . . . . . . . . . . . 12 (𝑧 = 𝑔 → ((ball‘𝐷)‘𝑧) = ((ball‘𝐷)‘𝑔))
2423difeq1d 4064 . . . . . . . . . . 11 (𝑧 = 𝑔 → (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛)) = (((ball‘𝐷)‘𝑔) ∖ (𝑀‘𝑛)))
2524sseq2d 3944 . . . . . . . . . 10 (𝑧 = 𝑔 → (((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛)) ↔ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑔) ∖ (𝑀‘𝑛))))
2625anbi2d 642 . . . . . . . . 9 (𝑧 = 𝑔 → ((𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛))) ↔ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑔) ∖ (𝑀‘𝑛)))))
2726anbi2d 642 . . . . . . . 8 (𝑧 = 𝑔 → (((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛)))) ↔ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑔) ∖ (𝑀‘𝑛))))))
2827opabbidv 5173 . . . . . . 7 (𝑧 = 𝑔 → {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛))))} = {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑔) ∖ (𝑀‘𝑛))))})
2922, 28cbvmpov 7522 . . . . . 6 (𝑘 ∈ ℕ, 𝑧 ∈ (𝑋 × ℝ+) ↦ {⟨𝑥, 𝑟⟩ ∣ ((𝑥 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) ∧ (𝑟 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))))}) = (𝑛 ∈ ℕ, 𝑔 ∈ (𝑋 × ℝ+) ↦ {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑔) ∖ (𝑀‘𝑛))))})
30 simplr 781 . . . . . 6 (((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) ∧ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅) → 𝑀:ℕ⟶(Clsd‘𝐽))
3116fveqeq2d 6901 . . . . . . . 8 (𝑘 = 𝑛 → (((int‘𝐽)‘(𝑀‘𝑘)) = ∅ ↔ ((int‘𝐽)‘(𝑀‘𝑛)) = ∅))
3231cbvralvw 3243 . . . . . . 7 (∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅ ↔ ∀𝑛 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑛)) = ∅)
3332bilani 510 . . . . . 6 (((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) ∧ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅) → ∀𝑛 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑛)) = ∅)
341, 2, 29, 30, 33bcthlem5 25661 . . . . 5 (((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) ∧ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅) → ((int‘𝐽)‘∪ ran 𝑀) = ∅)
3534ex 418 . . . 4 ((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) → (∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅ → ((int‘𝐽)‘∪ ran 𝑀) = ∅))
3635necon3ad 2971 . . 3 ((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) → (((int‘𝐽)‘∪ ran 𝑀) ≠ ∅ → ¬ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅))
37363impia 1135 . 2 ((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽) ∧ ((int‘𝐽)‘∪ ran 𝑀) ≠ ∅) → ¬ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅)
38 df-ne 2959 . . . 4 (((int‘𝐽)‘(𝑀‘𝑘)) ≠ ∅ ↔ ¬ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅)
3938rexbii 3112 . . 3 (∃𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) ≠ ∅ ↔ ∃𝑘 ∈ ℕ ¬ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅)
40 rexnal 3117 . . 3 (∃𝑘 ∈ ℕ ¬ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅ ↔ ¬ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅)
4139, 40bitri 278 . 2 (∃𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) ≠ ∅ ↔ ¬ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅)
4237, 41sylibr 237 1 ((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽) ∧ ((int‘𝐽)‘∪ ran 𝑀) ≠ ∅) → ∃𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) ≠ ∅)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ∧ wa 401   ∧ w3a 1103   = wceq 1569   ∈ wcel 2146   ≠ wne 2958  ∀wral 3079  ∃wrex 3089   ⊆ wss 3899   ∖ cdif 4047  ∅c0 4280  ∪ cuni 4869   class class class wbr 5105  {copab 5169   × cxp 5652  ran crn 5655  ⟶wf 6542  ‘cfv 6546  (class class class)co 7427   ∈ cmpo 7429  1c1 11211   < clt 11353   / cdiv 11983  ℕcn 12345  ℝ+crp 13130  ballcbl 21677  MetOpencmopn 21680  Clsdccld 23346  intcnt 23347  clsccl 23348  CMetccmet 25587
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 1944  ax-6 2001  ax-7 2042  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2196  ax-12 2215  ax-ext 2735  ax-rep 5234  ax-sep 5251  ax-nul 5262  ax-pow 5330  ax-pr 5394  ax-un 7758  ax-inf2 9652  ax-dc 10534  ax-cnex 11266  ax-resscn 11267  ax-1cn 11268  ax-icn 11269  ax-addcl 11270  ax-addrcl 11271  ax-mulcl 11272  ax-mulrcl 11273  ax-mulcom 11274  ax-addass 11275  ax-mulass 11276  ax-distr 11277  ax-i2m1 11278  ax-1ne0 11279  ax-1rid 11280  ax-rnegex 11281  ax-rrecex 11282  ax-cnre 11283  ax-pre-lttri 11284  ax-pre-lttrn 11285  ax-pre-ltadd 11286  ax-pre-mulgt0 11287  ax-pre-sup 11288
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 2101  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2838  df-nfc 2912  df-ne 2959  df-nel 3065  df-ral 3080  df-rex 3090  df-rmo 3368  df-reu 3369  df-rab 3416  df-v 3455  df-sbc 3742  df-csb 3851  df-ss 3900  df-pss 4016  df-dif 4049  df-in 4093  df-un 4153  df-nul 4281  df-if 4485  df-pw 4561  df-sn 4588  df-pr 4590  df-op 4838  df-uni 4870  df-int 4910  df-iun 4955  df-iin 4956  df-br 5106  df-opab 5170  df-mpt 5189  df-tr 5215  df-id 5549  df-eprel 5554  df-po 5562  df-so 5563  df-fr 5607  df-we 5609  df-xp 5660  df-rel 5661  df-cnv 5662  df-co 5663  df-dm 5664  df-rn 5665  df-res 5666  df-ima 5667  df-pred 6310  df-ord 6371  df-on 6372  df-lim 6373  df-suc 6374  df-iota 6500  df-fun 6548  df-fn 6549  df-f 6550  df-f1 6551  df-fo 6552  df-f1o 6553  df-fv 6554  df-riota 7384  df-ov 7430  df-oprab 7431  df-mpo 7432  df-om 7885  df-1st 8008  df-2nd 8009  df-frecs 8310  df-wrecs 8341  df-recs 8390  df-rdg 8429  df-1o 8487  df-er 8728  df-map 8860  df-pm 8861  df-en 8985  df-dom 8986  df-sdom 8987  df-sup 9444  df-inf 9445  df-pnf 11355  df-mnf 11356  df-xr 11357  df-ltxr 11358  df-le 11359  df-sub 11553  df-neg 11554  df-div 11984  df-nn 12346  df-2 12415  df-n0 12617  df-z 12704  df-uz 12976  df-q 13086  df-rp 13131  df-xneg 13251  df-xadd 13252  df-xmul 13253  df-ico 13492  df-rest 17605  df-topgen 17626  df-psmet 21682  df-xmet 21683  df-met 21684  df-bl 21685  df-mopn 21686  df-fbas 21687  df-fg 21688  df-top 23224  df-topon 23241  df-bases 23276  df-cld 23349  df-ntr 23350  df-cls 23351  df-nei 23428  df-lm 23559  df-fil 24177  df-fm 24269  df-flim 24270  df-flf 24271  df-cfil 25588  df-cau 25589  df-cmet 25590
This theorem is used by:  bcth2  25663  bcth3  25664
  Copyright terms: Public domain W3C validator