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

Theorem bcth 25650
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 25649 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 2844 . . . . . . . . . . 11 (𝑥 = 𝑦 → (𝑥 ∈ 𝑋 ↔ 𝑦 ∈ 𝑋))
4 eleq1w 2844 . . . . . . . . . . 11 (𝑟 = 𝑚 → (𝑟 ∈ ℝ+ ↔ 𝑚 ∈ ℝ+))
53, 4bi2anan9 650 . . . . . . . . . 10 ((𝑥 = 𝑦 ∧ 𝑟 = 𝑚) → ((𝑥 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) ↔ (𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+)))
6 simpr 490 . . . . . . . . . . . 12 ((𝑥 = 𝑦 ∧ 𝑟 = 𝑚) → 𝑟 = 𝑚)
76breq1d 5113 . . . . . . . . . . 11 ((𝑥 = 𝑦 ∧ 𝑟 = 𝑚) → (𝑟 < (1 / 𝑘) ↔ 𝑚 < (1 / 𝑘)))
8 oveq12 7429 . . . . . . . . . . . . 13 ((𝑥 = 𝑦 ∧ 𝑟 = 𝑚) → (𝑥(ball‘𝐷)𝑟) = (𝑦(ball‘𝐷)𝑚))
98fveq2d 6889 . . . . . . . . . . . 12 ((𝑥 = 𝑦 ∧ 𝑟 = 𝑚) → ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) = ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)))
109sseq1d 3962 . . . . . . . . . . 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 5178 . . . . . . . 8 {⟨𝑥, 𝑟⟩ ∣ ((𝑥 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) ∧ (𝑟 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))))} = {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))))}
14 oveq2 7428 . . . . . . . . . . . 12 (𝑘 = 𝑛 → (1 / 𝑘) = (1 / 𝑛))
1514breq2d 5115 . . . . . . . . . . 11 (𝑘 = 𝑛 → (𝑚 < (1 / 𝑘) ↔ 𝑚 < (1 / 𝑛)))
16 fveq2 6885 . . . . . . . . . . . . 13 (𝑘 = 𝑛 → (𝑀‘𝑘) = (𝑀‘𝑛))
1716difeq2d 4074 . . . . . . . . . . . 12 (𝑘 = 𝑛 → (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘)) = (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛)))
1817sseq2d 3963 . . . . . . . . . . 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 5171 . . . . . . . 8 (𝑘 = 𝑛 → {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))))} = {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛))))})
2213, 21eqtrid 2808 . . . . . . 7 (𝑘 = 𝑛 → {⟨𝑥, 𝑟⟩ ∣ ((𝑥 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) ∧ (𝑟 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))))} = {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛))))})
23 fveq2 6885 . . . . . . . . . . . 12 (𝑧 = 𝑔 → ((ball‘𝐷)‘𝑧) = ((ball‘𝐷)‘𝑔))
2423difeq1d 4073 . . . . . . . . . . 11 (𝑧 = 𝑔 → (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛)) = (((ball‘𝐷)‘𝑔) ∖ (𝑀‘𝑛)))
2524sseq2d 3963 . . . . . . . . . 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 5171 . . . . . . 7 (𝑧 = 𝑔 → {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑛))))} = {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑔) ∖ (𝑀‘𝑛))))})
2922, 28cbvmpov 7515 . . . . . 6 (𝑘 ∈ ℕ, 𝑧 ∈ (𝑋 × ℝ+) ↦ {⟨𝑥, 𝑟⟩ ∣ ((𝑥 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) ∧ (𝑟 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀‘𝑘))))}) = (𝑛 ∈ ℕ, 𝑔 ∈ (𝑋 × ℝ+) ↦ {⟨𝑦, 𝑚⟩ ∣ ((𝑦 ∈ 𝑋 ∧ 𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑔) ∖ (𝑀‘𝑛))))})
30 simplr 781 . . . . . 6 (((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) ∧ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅) → 𝑀:ℕ⟶(Clsd‘𝐽))
3116fveqeq2d 6893 . . . . . . . 8 (𝑘 = 𝑛 → (((int‘𝐽)‘(𝑀‘𝑘)) = ∅ ↔ ((int‘𝐽)‘(𝑀‘𝑛)) = ∅))
3231cbvralvw 3241 . . . . . . 7 (∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅ ↔ ∀𝑛 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑛)) = ∅)
3332bilani 510 . . . . . 6 (((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) ∧ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅) → ∀𝑛 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑛)) = ∅)
341, 2, 29, 30, 33bcthlem5 25649 . . . . 5 (((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) ∧ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅) → ((int‘𝐽)‘∪ ran 𝑀) = ∅)
3534ex 418 . . . 4 ((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) → (∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅ → ((int‘𝐽)‘∪ ran 𝑀) = ∅))
3635necon3ad 2969 . . 3 ((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) → (((int‘𝐽)‘∪ ran 𝑀) ≠ ∅ → ¬ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅))
37363impia 1135 . 2 ((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽) ∧ ((int‘𝐽)‘∪ ran 𝑀) ≠ ∅) → ¬ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅)
38 df-ne 2957 . . . 4 (((int‘𝐽)‘(𝑀‘𝑘)) ≠ ∅ ↔ ¬ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅)
3938rexbii 3110 . . 3 (∃𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀‘𝑘)) ≠ ∅ ↔ ∃𝑘 ∈ ℕ ¬ ((int‘𝐽)‘(𝑀‘𝑘)) = ∅)
40 rexnal 3115 . . 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 1570   ∈ wcel 2145   ≠ wne 2956  ∀wral 3077  ∃wrex 3087   ∖ cdif 3896   ⊆ wss 3899  ∅c0 4279  ∪ cuni 4867   class class class wbr 5103  {copab 5167   × cxp 5649  ran crn 5652  ⟶wf 6534  ‘cfv 6538  (class class class)co 7420   ∈ cmpo 7422  1c1 11201   < clt 11343   / cdiv 11973  ℕcn 12335  ℝ+crp 13120  ballcbl 21665  MetOpencmopn 21668  Clsdccld 23334  intcnt 23335  clsccl 23336  CMetccmet 25575
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-rep 5232  ax-sep 5249  ax-nul 5260  ax-pow 5327  ax-pr 5391  ax-un 7751  ax-inf2 9642  ax-dc 10524  ax-cnex 11256  ax-resscn 11257  ax-1cn 11258  ax-icn 11259  ax-addcl 11260  ax-addrcl 11261  ax-mulcl 11262  ax-mulrcl 11263  ax-mulcom 11264  ax-addass 11265  ax-mulass 11266  ax-distr 11267  ax-i2m1 11268  ax-1ne0 11269  ax-1rid 11270  ax-rnegex 11271  ax-rrecex 11272  ax-cnre 11273  ax-pre-lttri 11274  ax-pre-lttrn 11275  ax-pre-ltadd 11276  ax-pre-mulgt0 11277  ax-pre-sup 11278
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-nel 3063  df-ral 3078  df-rex 3088  df-rmo 3366  df-reu 3367  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-int 4908  df-iun 4953  df-iin 4954  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  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 6304  df-ord 6365  df-on 6366  df-lim 6367  df-suc 6368  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-f1 6543  df-fo 6544  df-f1o 6545  df-fv 6546  df-riota 7377  df-ov 7423  df-oprab 7424  df-mpo 7425  df-om 7878  df-1st 8001  df-2nd 8002  df-frecs 8299  df-wrecs 8330  df-recs 8379  df-rdg 8418  df-1o 8476  df-er 8717  df-map 8849  df-pm 8850  df-en 8974  df-dom 8975  df-sdom 8976  df-sup 9434  df-inf 9435  df-pnf 11345  df-mnf 11346  df-xr 11347  df-ltxr 11348  df-le 11349  df-sub 11543  df-neg 11544  df-div 11974  df-nn 12336  df-2 12405  df-n0 12607  df-z 12694  df-uz 12966  df-q 13076  df-rp 13121  df-xneg 13241  df-xadd 13242  df-xmul 13243  df-ico 13482  df-rest 17593  df-topgen 17614  df-psmet 21670  df-xmet 21671  df-met 21672  df-bl 21673  df-mopn 21674  df-fbas 21675  df-fg 21676  df-top 23212  df-topon 23229  df-bases 23264  df-cld 23337  df-ntr 23338  df-cls 23339  df-nei 23416  df-lm 23547  df-fil 24165  df-fm 24257  df-flim 24258  df-flf 24259  df-cfil 25576  df-cau 25577  df-cmet 25578
This theorem is used by:  bcth2  25651  bcth3  25652
  Copyright terms: Public domain W3C validator