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

Theorem bcth 25388
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 25387 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 776 . . . . . 6 (((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) ∧ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀𝑘)) = ∅) → 𝐷 ∈ (CMet‘𝑋))
3 eleq1w 2845 . . . . . . . . . . 11 (𝑥 = 𝑦 → (𝑥𝑋𝑦𝑋))
4 eleq1w 2845 . . . . . . . . . . 11 (𝑟 = 𝑚 → (𝑟 ∈ ℝ+𝑚 ∈ ℝ+))
53, 4bi2anan9 647 . . . . . . . . . 10 ((𝑥 = 𝑦𝑟 = 𝑚) → ((𝑥𝑋𝑟 ∈ ℝ+) ↔ (𝑦𝑋𝑚 ∈ ℝ+)))
6 simpr 488 . . . . . . . . . . . 12 ((𝑥 = 𝑦𝑟 = 𝑚) → 𝑟 = 𝑚)
76breq1d 5110 . . . . . . . . . . 11 ((𝑥 = 𝑦𝑟 = 𝑚) → (𝑟 < (1 / 𝑘) ↔ 𝑚 < (1 / 𝑘)))
8 oveq12 7405 . . . . . . . . . . . . 13 ((𝑥 = 𝑦𝑟 = 𝑚) → (𝑥(ball‘𝐷)𝑟) = (𝑦(ball‘𝐷)𝑚))
98fveq2d 6871 . . . . . . . . . . . 12 ((𝑥 = 𝑦𝑟 = 𝑚) → ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) = ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)))
109sseq1d 3967 . . . . . . . . . . 11 ((𝑥 = 𝑦𝑟 = 𝑚) → (((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘)) ↔ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘))))
117, 10anbi12d 641 . . . . . . . . . 10 ((𝑥 = 𝑦𝑟 = 𝑚) → ((𝑟 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘))) ↔ (𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘)))))
125, 11anbi12d 641 . . . . . . . . 9 ((𝑥 = 𝑦𝑟 = 𝑚) → (((𝑥𝑋𝑟 ∈ ℝ+) ∧ (𝑟 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘)))) ↔ ((𝑦𝑋𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘))))))
1312cbvopabv 5173 . . . . . . . 8 {⟨𝑥, 𝑟⟩ ∣ ((𝑥𝑋𝑟 ∈ ℝ+) ∧ (𝑟 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘))))} = {⟨𝑦, 𝑚⟩ ∣ ((𝑦𝑋𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘))))}
14 oveq2 7404 . . . . . . . . . . . 12 (𝑘 = 𝑛 → (1 / 𝑘) = (1 / 𝑛))
1514breq2d 5112 . . . . . . . . . . 11 (𝑘 = 𝑛 → (𝑚 < (1 / 𝑘) ↔ 𝑚 < (1 / 𝑛)))
16 fveq2 6867 . . . . . . . . . . . . 13 (𝑘 = 𝑛 → (𝑀𝑘) = (𝑀𝑛))
1716difeq2d 4080 . . . . . . . . . . . 12 (𝑘 = 𝑛 → (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘)) = (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑛)))
1817sseq2d 3968 . . . . . . . . . . 11 (𝑘 = 𝑛 → (((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘)) ↔ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑛))))
1915, 18anbi12d 641 . . . . . . . . . 10 (𝑘 = 𝑛 → ((𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘))) ↔ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑛)))))
2019anbi2d 639 . . . . . . . . 9 (𝑘 = 𝑛 → (((𝑦𝑋𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘)))) ↔ ((𝑦𝑋𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑛))))))
2120opabbidv 5166 . . . . . . . 8 (𝑘 = 𝑛 → {⟨𝑦, 𝑚⟩ ∣ ((𝑦𝑋𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘))))} = {⟨𝑦, 𝑚⟩ ∣ ((𝑦𝑋𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑛))))})
2213, 21eqtrid 2809 . . . . . . 7 (𝑘 = 𝑛 → {⟨𝑥, 𝑟⟩ ∣ ((𝑥𝑋𝑟 ∈ ℝ+) ∧ (𝑟 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘))))} = {⟨𝑦, 𝑚⟩ ∣ ((𝑦𝑋𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑛))))})
23 fveq2 6867 . . . . . . . . . . . 12 (𝑧 = 𝑔 → ((ball‘𝐷)‘𝑧) = ((ball‘𝐷)‘𝑔))
2423difeq1d 4079 . . . . . . . . . . 11 (𝑧 = 𝑔 → (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑛)) = (((ball‘𝐷)‘𝑔) ∖ (𝑀𝑛)))
2524sseq2d 3968 . . . . . . . . . 10 (𝑧 = 𝑔 → (((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑛)) ↔ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑔) ∖ (𝑀𝑛))))
2625anbi2d 639 . . . . . . . . 9 (𝑧 = 𝑔 → ((𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑛))) ↔ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑔) ∖ (𝑀𝑛)))))
2726anbi2d 639 . . . . . . . 8 (𝑧 = 𝑔 → (((𝑦𝑋𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑛)))) ↔ ((𝑦𝑋𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑔) ∖ (𝑀𝑛))))))
2827opabbidv 5166 . . . . . . 7 (𝑧 = 𝑔 → {⟨𝑦, 𝑚⟩ ∣ ((𝑦𝑋𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑛))))} = {⟨𝑦, 𝑚⟩ ∣ ((𝑦𝑋𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑔) ∖ (𝑀𝑛))))})
2922, 28cbvmpov 7491 . . . . . 6 (𝑘 ∈ ℕ, 𝑧 ∈ (𝑋 × ℝ+) ↦ {⟨𝑥, 𝑟⟩ ∣ ((𝑥𝑋𝑟 ∈ ℝ+) ∧ (𝑟 < (1 / 𝑘) ∧ ((cls‘𝐽)‘(𝑥(ball‘𝐷)𝑟)) ⊆ (((ball‘𝐷)‘𝑧) ∖ (𝑀𝑘))))}) = (𝑛 ∈ ℕ, 𝑔 ∈ (𝑋 × ℝ+) ↦ {⟨𝑦, 𝑚⟩ ∣ ((𝑦𝑋𝑚 ∈ ℝ+) ∧ (𝑚 < (1 / 𝑛) ∧ ((cls‘𝐽)‘(𝑦(ball‘𝐷)𝑚)) ⊆ (((ball‘𝐷)‘𝑔) ∖ (𝑀𝑛))))})
30 simplr 778 . . . . . 6 (((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) ∧ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀𝑘)) = ∅) → 𝑀:ℕ⟶(Clsd‘𝐽))
3116fveqeq2d 6875 . . . . . . . 8 (𝑘 = 𝑛 → (((int‘𝐽)‘(𝑀𝑘)) = ∅ ↔ ((int‘𝐽)‘(𝑀𝑛)) = ∅))
3231cbvralvw 3240 . . . . . . 7 (∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀𝑘)) = ∅ ↔ ∀𝑛 ∈ ℕ ((int‘𝐽)‘(𝑀𝑛)) = ∅)
3332bilani 508 . . . . . 6 (((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) ∧ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀𝑘)) = ∅) → ∀𝑛 ∈ ℕ ((int‘𝐽)‘(𝑀𝑛)) = ∅)
341, 2, 29, 30, 33bcthlem5 25387 . . . . 5 (((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) ∧ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀𝑘)) = ∅) → ((int‘𝐽)‘ ran 𝑀) = ∅)
3534ex 416 . . . 4 ((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) → (∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀𝑘)) = ∅ → ((int‘𝐽)‘ ran 𝑀) = ∅))
3635necon3ad 2970 . . 3 ((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽)) → (((int‘𝐽)‘ ran 𝑀) ≠ ∅ → ¬ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀𝑘)) = ∅))
37363impia 1130 . 2 ((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽) ∧ ((int‘𝐽)‘ ran 𝑀) ≠ ∅) → ¬ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀𝑘)) = ∅)
38 df-ne 2958 . . . 4 (((int‘𝐽)‘(𝑀𝑘)) ≠ ∅ ↔ ¬ ((int‘𝐽)‘(𝑀𝑘)) = ∅)
3938rexbii 3109 . . 3 (∃𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀𝑘)) ≠ ∅ ↔ ∃𝑘 ∈ ℕ ¬ ((int‘𝐽)‘(𝑀𝑘)) = ∅)
40 rexnal 3114 . . 3 (∃𝑘 ∈ ℕ ¬ ((int‘𝐽)‘(𝑀𝑘)) = ∅ ↔ ¬ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀𝑘)) = ∅)
4139, 40bitri 277 . 2 (∃𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀𝑘)) ≠ ∅ ↔ ¬ ∀𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀𝑘)) = ∅)
4237, 41sylibr 236 1 ((𝐷 ∈ (CMet‘𝑋) ∧ 𝑀:ℕ⟶(Clsd‘𝐽) ∧ ((int‘𝐽)‘ ran 𝑀) ≠ ∅) → ∃𝑘 ∈ ℕ ((int‘𝐽)‘(𝑀𝑘)) ≠ ∅)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 399  w3a 1098   = wceq 1560  wcel 2142  wne 2957  wral 3076  wrex 3086  cdif 3901  wss 3904  c0 4285   cuni 4865   class class class wbr 5100  {copab 5162   × cxp 5645  ran crn 5648  wf 6517  cfv 6521  (class class class)co 7396  cmpo 7398  1c1 11074   < clt 11216   / cdiv 11844  cn 12210  +crp 12993  ballcbl 21408  MetOpencmopn 21411  Clsdccld 23073  intcnt 23074  clsccl 23075  CMetccmet 25313
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1815  ax-4 1829  ax-5 1930  ax-6 1987  ax-7 2028  ax-8 2144  ax-9 2152  ax-10 2175  ax-11 2191  ax-12 2212  ax-ext 2734  ax-rep 5227  ax-sep 5246  ax-nul 5256  ax-pow 5322  ax-pr 5390  ax-un 7718  ax-inf2 9596  ax-dc 10403  ax-cnex 11129  ax-resscn 11130  ax-1cn 11131  ax-icn 11132  ax-addcl 11133  ax-addrcl 11134  ax-mulcl 11135  ax-mulrcl 11136  ax-mulcom 11137  ax-addass 11138  ax-mulass 11139  ax-distr 11140  ax-i2m1 11141  ax-1ne0 11142  ax-1rid 11143  ax-rnegex 11144  ax-rrecex 11145  ax-cnre 11146  ax-pre-lttri 11147  ax-pre-lttrn 11148  ax-pre-ltadd 11149  ax-pre-mulgt0 11150  ax-pre-sup 11151
This theorem depends on definitions:  df-bi 209  df-an 400  df-or 859  df-3or 1099  df-3an 1100  df-tru 1563  df-fal 1573  df-ex 1800  df-nf 1804  df-sb 2091  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-nel 3062  df-ral 3077  df-rex 3087  df-rmo 3367  df-reu 3368  df-rab 3415  df-v 3456  df-sbc 3745  df-csb 3853  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-pss 3924  df-nul 4286  df-if 4481  df-pw 4557  df-sn 4583  df-pr 4585  df-op 4589  df-uni 4866  df-int 4906  df-iun 4951  df-iin 4952  df-br 5101  df-opab 5163  df-mpt 5182  df-tr 5208  df-id 5542  df-eprel 5547  df-po 5555  df-so 5556  df-fr 5600  df-we 5602  df-xp 5653  df-rel 5654  df-cnv 5655  df-co 5656  df-dm 5657  df-rn 5658  df-res 5659  df-ima 5660  df-pred 6288  df-ord 6349  df-on 6350  df-lim 6351  df-suc 6352  df-iota 6477  df-fun 6523  df-fn 6524  df-f 6525  df-f1 6526  df-fo 6527  df-f1o 6528  df-fv 6529  df-riota 7353  df-ov 7399  df-oprab 7400  df-mpo 7401  df-om 7847  df-1st 7970  df-2nd 7971  df-frecs 8262  df-wrecs 8293  df-recs 8342  df-rdg 8381  df-1o 8437  df-er 8678  df-map 8810  df-pm 8811  df-en 8928  df-dom 8929  df-sdom 8930  df-sup 9388  df-inf 9389  df-pnf 11218  df-mnf 11219  df-xr 11220  df-ltxr 11221  df-le 11222  df-sub 11416  df-neg 11417  df-div 11845  df-nn 12211  df-2 12280  df-n0 12482  df-z 12569  df-uz 12840  df-q 12950  df-rp 12994  df-xneg 13114  df-xadd 13115  df-xmul 13116  df-ico 13355  df-rest 17451  df-topgen 17472  df-psmet 21413  df-xmet 21414  df-met 21415  df-bl 21416  df-mopn 21417  df-fbas 21418  df-fg 21419  df-top 22951  df-topon 22968  df-bases 23003  df-cld 23076  df-ntr 23077  df-cls 23078  df-nei 23155  df-lm 23286  df-fil 23903  df-fm 23995  df-flim 23996  df-flf 23997  df-cfil 25314  df-cau 25315  df-cmet 25316
This theorem is referenced by:  bcth2  25389  bcth3  25390
  Copyright terms: Public domain W3C validator