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

Theorem bcth 22239
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  M `  k 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 22238 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  |-  J  =  ( MetOpen `  D )
Assertion
Ref Expression
bcth  |-  ( ( D  e.  ( CMet `  X )  /\  M : NN --> ( Clsd `  J
)  /\  ( ( int `  J ) `  U. ran  M )  =/=  (/) )  ->  E. k  e.  NN  ( ( int `  J ) `  ( M `  k )
)  =/=  (/) )
Distinct variable groups:    D, k    k, J    k, M    k, X

Proof of Theorem bcth
Dummy variables  n  r  x  z  g  m  y are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 bcth.2 . . . . . 6  |-  J  =  ( MetOpen `  D )
2 simpll 758 . . . . . 6  |-  ( ( ( D  e.  (
CMet `  X )  /\  M : NN --> ( Clsd `  J ) )  /\  A. k  e.  NN  (
( int `  J
) `  ( M `  k ) )  =  (/) )  ->  D  e.  ( CMet `  X
) )
3 eleq1 2494 . . . . . . . . . . 11  |-  ( x  =  y  ->  (
x  e.  X  <->  y  e.  X ) )
4 eleq1 2494 . . . . . . . . . . 11  |-  ( r  =  m  ->  (
r  e.  RR+  <->  m  e.  RR+ ) )
53, 4bi2anan9 881 . . . . . . . . . 10  |-  ( ( x  =  y  /\  r  =  m )  ->  ( ( x  e.  X  /\  r  e.  RR+ )  <->  ( y  e.  X  /\  m  e.  RR+ ) ) )
6 simpr 462 . . . . . . . . . . . 12  |-  ( ( x  =  y  /\  r  =  m )  ->  r  =  m )
76breq1d 4376 . . . . . . . . . . 11  |-  ( ( x  =  y  /\  r  =  m )  ->  ( r  <  (
1  /  k )  <-> 
m  <  ( 1  /  k ) ) )
8 oveq12 6258 . . . . . . . . . . . . 13  |-  ( ( x  =  y  /\  r  =  m )  ->  ( x ( ball `  D ) r )  =  ( y (
ball `  D )
m ) )
98fveq2d 5829 . . . . . . . . . . . 12  |-  ( ( x  =  y  /\  r  =  m )  ->  ( ( cls `  J
) `  ( x
( ball `  D )
r ) )  =  ( ( cls `  J
) `  ( y
( ball `  D )
m ) ) )
109sseq1d 3434 . . . . . . . . . . 11  |-  ( ( x  =  y  /\  r  =  m )  ->  ( ( ( cls `  J ) `  (
x ( ball `  D
) r ) ) 
C_  ( ( (
ball `  D ) `  z )  \  ( M `  k )
)  <->  ( ( cls `  J ) `  (
y ( ball `  D
) m ) ) 
C_  ( ( (
ball `  D ) `  z )  \  ( M `  k )
) ) )
117, 10anbi12d 715 . . . . . . . . . 10  |-  ( ( x  =  y  /\  r  =  m )  ->  ( ( r  < 
( 1  /  k
)  /\  ( ( cls `  J ) `  ( x ( ball `  D ) r ) )  C_  ( (
( ball `  D ) `  z )  \  ( M `  k )
) )  <->  ( m  <  ( 1  /  k
)  /\  ( ( cls `  J ) `  ( y ( ball `  D ) m ) )  C_  ( (
( ball `  D ) `  z )  \  ( M `  k )
) ) ) )
125, 11anbi12d 715 . . . . . . . . 9  |-  ( ( x  =  y  /\  r  =  m )  ->  ( ( ( x  e.  X  /\  r  e.  RR+ )  /\  (
r  <  ( 1  /  k )  /\  ( ( cls `  J
) `  ( x
( ball `  D )
r ) )  C_  ( ( ( ball `  D ) `  z
)  \  ( M `  k ) ) ) )  <->  ( ( y  e.  X  /\  m  e.  RR+ )  /\  (
m  <  ( 1  /  k )  /\  ( ( cls `  J
) `  ( y
( ball `  D )
m ) )  C_  ( ( ( ball `  D ) `  z
)  \  ( M `  k ) ) ) ) ) )
1312cbvopabv 4436 . . . . . . . 8  |-  { <. x ,  r >.  |  ( ( x  e.  X  /\  r  e.  RR+ )  /\  ( r  <  (
1  /  k )  /\  ( ( cls `  J ) `  (
x ( ball `  D
) r ) ) 
C_  ( ( (
ball `  D ) `  z )  \  ( M `  k )
) ) ) }  =  { <. y ,  m >.  |  (
( y  e.  X  /\  m  e.  RR+ )  /\  ( m  <  (
1  /  k )  /\  ( ( cls `  J ) `  (
y ( ball `  D
) m ) ) 
C_  ( ( (
ball `  D ) `  z )  \  ( M `  k )
) ) ) }
14 oveq2 6257 . . . . . . . . . . . 12  |-  ( k  =  n  ->  (
1  /  k )  =  ( 1  /  n ) )
1514breq2d 4378 . . . . . . . . . . 11  |-  ( k  =  n  ->  (
m  <  ( 1  /  k )  <->  m  <  ( 1  /  n ) ) )
16 fveq2 5825 . . . . . . . . . . . . 13  |-  ( k  =  n  ->  ( M `  k )  =  ( M `  n ) )
1716difeq2d 3526 . . . . . . . . . . . 12  |-  ( k  =  n  ->  (
( ( ball `  D
) `  z )  \  ( M `  k ) )  =  ( ( ( ball `  D ) `  z
)  \  ( M `  n ) ) )
1817sseq2d 3435 . . . . . . . . . . 11  |-  ( k  =  n  ->  (
( ( cls `  J
) `  ( y
( ball `  D )
m ) )  C_  ( ( ( ball `  D ) `  z
)  \  ( M `  k ) )  <->  ( ( cls `  J ) `  ( y ( ball `  D ) m ) )  C_  ( (
( ball `  D ) `  z )  \  ( M `  n )
) ) )
1915, 18anbi12d 715 . . . . . . . . . 10  |-  ( k  =  n  ->  (
( m  <  (
1  /  k )  /\  ( ( cls `  J ) `  (
y ( ball `  D
) m ) ) 
C_  ( ( (
ball `  D ) `  z )  \  ( M `  k )
) )  <->  ( m  <  ( 1  /  n
)  /\  ( ( cls `  J ) `  ( y ( ball `  D ) m ) )  C_  ( (
( ball `  D ) `  z )  \  ( M `  n )
) ) ) )
2019anbi2d 708 . . . . . . . . 9  |-  ( k  =  n  ->  (
( ( y  e.  X  /\  m  e.  RR+ )  /\  (
m  <  ( 1  /  k )  /\  ( ( cls `  J
) `  ( y
( ball `  D )
m ) )  C_  ( ( ( ball `  D ) `  z
)  \  ( M `  k ) ) ) )  <->  ( ( y  e.  X  /\  m  e.  RR+ )  /\  (
m  <  ( 1  /  n )  /\  ( ( cls `  J
) `  ( y
( ball `  D )
m ) )  C_  ( ( ( ball `  D ) `  z
)  \  ( M `  n ) ) ) ) ) )
2120opabbidv 4430 . . . . . . . 8  |-  ( k  =  n  ->  { <. y ,  m >.  |  ( ( y  e.  X  /\  m  e.  RR+ )  /\  ( m  <  (
1  /  k )  /\  ( ( cls `  J ) `  (
y ( ball `  D
) m ) ) 
C_  ( ( (
ball `  D ) `  z )  \  ( M `  k )
) ) ) }  =  { <. y ,  m >.  |  (
( y  e.  X  /\  m  e.  RR+ )  /\  ( m  <  (
1  /  n )  /\  ( ( cls `  J ) `  (
y ( ball `  D
) m ) ) 
C_  ( ( (
ball `  D ) `  z )  \  ( M `  n )
) ) ) } )
2213, 21syl5eq 2474 . . . . . . 7  |-  ( k  =  n  ->  { <. x ,  r >.  |  ( ( x  e.  X  /\  r  e.  RR+ )  /\  ( r  <  (
1  /  k )  /\  ( ( cls `  J ) `  (
x ( ball `  D
) r ) ) 
C_  ( ( (
ball `  D ) `  z )  \  ( M `  k )
) ) ) }  =  { <. y ,  m >.  |  (
( y  e.  X  /\  m  e.  RR+ )  /\  ( m  <  (
1  /  n )  /\  ( ( cls `  J ) `  (
y ( ball `  D
) m ) ) 
C_  ( ( (
ball `  D ) `  z )  \  ( M `  n )
) ) ) } )
23 fveq2 5825 . . . . . . . . . . . 12  |-  ( z  =  g  ->  (
( ball `  D ) `  z )  =  ( ( ball `  D
) `  g )
)
2423difeq1d 3525 . . . . . . . . . . 11  |-  ( z  =  g  ->  (
( ( ball `  D
) `  z )  \  ( M `  n ) )  =  ( ( ( ball `  D ) `  g
)  \  ( M `  n ) ) )
2524sseq2d 3435 . . . . . . . . . 10  |-  ( z  =  g  ->  (
( ( cls `  J
) `  ( y
( ball `  D )
m ) )  C_  ( ( ( ball `  D ) `  z
)  \  ( M `  n ) )  <->  ( ( cls `  J ) `  ( y ( ball `  D ) m ) )  C_  ( (
( ball `  D ) `  g )  \  ( M `  n )
) ) )
2625anbi2d 708 . . . . . . . . 9  |-  ( z  =  g  ->  (
( m  <  (
1  /  n )  /\  ( ( cls `  J ) `  (
y ( ball `  D
) m ) ) 
C_  ( ( (
ball `  D ) `  z )  \  ( M `  n )
) )  <->  ( m  <  ( 1  /  n
)  /\  ( ( cls `  J ) `  ( y ( ball `  D ) m ) )  C_  ( (
( ball `  D ) `  g )  \  ( M `  n )
) ) ) )
2726anbi2d 708 . . . . . . . 8  |-  ( z  =  g  ->  (
( ( y  e.  X  /\  m  e.  RR+ )  /\  (
m  <  ( 1  /  n )  /\  ( ( cls `  J
) `  ( y
( ball `  D )
m ) )  C_  ( ( ( ball `  D ) `  z
)  \  ( M `  n ) ) ) )  <->  ( ( y  e.  X  /\  m  e.  RR+ )  /\  (
m  <  ( 1  /  n )  /\  ( ( cls `  J
) `  ( y
( ball `  D )
m ) )  C_  ( ( ( ball `  D ) `  g
)  \  ( M `  n ) ) ) ) ) )
2827opabbidv 4430 . . . . . . 7  |-  ( z  =  g  ->  { <. y ,  m >.  |  ( ( y  e.  X  /\  m  e.  RR+ )  /\  ( m  <  (
1  /  n )  /\  ( ( cls `  J ) `  (
y ( ball `  D
) m ) ) 
C_  ( ( (
ball `  D ) `  z )  \  ( M `  n )
) ) ) }  =  { <. y ,  m >.  |  (
( y  e.  X  /\  m  e.  RR+ )  /\  ( m  <  (
1  /  n )  /\  ( ( cls `  J ) `  (
y ( ball `  D
) m ) ) 
C_  ( ( (
ball `  D ) `  g )  \  ( M `  n )
) ) ) } )
2922, 28cbvmpt2v 6329 . . . . . 6  |-  ( k  e.  NN ,  z  e.  ( X  X.  RR+ )  |->  { <. x ,  r >.  |  ( ( x  e.  X  /\  r  e.  RR+ )  /\  ( r  <  (
1  /  k )  /\  ( ( cls `  J ) `  (
x ( ball `  D
) r ) ) 
C_  ( ( (
ball `  D ) `  z )  \  ( M `  k )
) ) ) } )  =  ( n  e.  NN ,  g  e.  ( X  X.  RR+ )  |->  { <. y ,  m >.  |  (
( y  e.  X  /\  m  e.  RR+ )  /\  ( m  <  (
1  /  n )  /\  ( ( cls `  J ) `  (
y ( ball `  D
) m ) ) 
C_  ( ( (
ball `  D ) `  g )  \  ( M `  n )
) ) ) } )
30 simplr 760 . . . . . 6  |-  ( ( ( D  e.  (
CMet `  X )  /\  M : NN --> ( Clsd `  J ) )  /\  A. k  e.  NN  (
( int `  J
) `  ( M `  k ) )  =  (/) )  ->  M : NN
--> ( Clsd `  J
) )
31 simpr 462 . . . . . . 7  |-  ( ( ( D  e.  (
CMet `  X )  /\  M : NN --> ( Clsd `  J ) )  /\  A. k  e.  NN  (
( int `  J
) `  ( M `  k ) )  =  (/) )  ->  A. k  e.  NN  ( ( int `  J ) `  ( M `  k )
)  =  (/) )
3216fveq2d 5829 . . . . . . . . 9  |-  ( k  =  n  ->  (
( int `  J
) `  ( M `  k ) )  =  ( ( int `  J
) `  ( M `  n ) ) )
3332eqeq1d 2430 . . . . . . . 8  |-  ( k  =  n  ->  (
( ( int `  J
) `  ( M `  k ) )  =  (/) 
<->  ( ( int `  J
) `  ( M `  n ) )  =  (/) ) )
3433cbvralv 2996 . . . . . . 7  |-  ( A. k  e.  NN  (
( int `  J
) `  ( M `  k ) )  =  (/) 
<-> 
A. n  e.  NN  ( ( int `  J
) `  ( M `  n ) )  =  (/) )
3531, 34sylib 199 . . . . . 6  |-  ( ( ( D  e.  (
CMet `  X )  /\  M : NN --> ( Clsd `  J ) )  /\  A. k  e.  NN  (
( int `  J
) `  ( M `  k ) )  =  (/) )  ->  A. n  e.  NN  ( ( int `  J ) `  ( M `  n )
)  =  (/) )
361, 2, 29, 30, 35bcthlem5 22238 . . . . 5  |-  ( ( ( D  e.  (
CMet `  X )  /\  M : NN --> ( Clsd `  J ) )  /\  A. k  e.  NN  (
( int `  J
) `  ( M `  k ) )  =  (/) )  ->  ( ( int `  J ) `
 U. ran  M
)  =  (/) )
3736ex 435 . . . 4  |-  ( ( D  e.  ( CMet `  X )  /\  M : NN --> ( Clsd `  J
) )  ->  ( A. k  e.  NN  ( ( int `  J
) `  ( M `  k ) )  =  (/)  ->  ( ( int `  J ) `  U. ran  M )  =  (/) ) )
3837necon3ad 2614 . . 3  |-  ( ( D  e.  ( CMet `  X )  /\  M : NN --> ( Clsd `  J
) )  ->  (
( ( int `  J
) `  U. ran  M
)  =/=  (/)  ->  -.  A. k  e.  NN  (
( int `  J
) `  ( M `  k ) )  =  (/) ) )
39383impia 1202 . 2  |-  ( ( D  e.  ( CMet `  X )  /\  M : NN --> ( Clsd `  J
)  /\  ( ( int `  J ) `  U. ran  M )  =/=  (/) )  ->  -.  A. k  e.  NN  (
( int `  J
) `  ( M `  k ) )  =  (/) )
40 df-ne 2601 . . . 4  |-  ( ( ( int `  J
) `  ( M `  k ) )  =/=  (/) 
<->  -.  ( ( int `  J ) `  ( M `  k )
)  =  (/) )
4140rexbii 2866 . . 3  |-  ( E. k  e.  NN  (
( int `  J
) `  ( M `  k ) )  =/=  (/) 
<->  E. k  e.  NN  -.  ( ( int `  J
) `  ( M `  k ) )  =  (/) )
42 rexnal 2813 . . 3  |-  ( E. k  e.  NN  -.  ( ( int `  J
) `  ( M `  k ) )  =  (/) 
<->  -.  A. k  e.  NN  ( ( int `  J ) `  ( M `  k )
)  =  (/) )
4341, 42bitri 252 . 2  |-  ( E. k  e.  NN  (
( int `  J
) `  ( M `  k ) )  =/=  (/) 
<->  -.  A. k  e.  NN  ( ( int `  J ) `  ( M `  k )
)  =  (/) )
4439, 43sylibr 215 1  |-  ( ( D  e.  ( CMet `  X )  /\  M : NN --> ( Clsd `  J
)  /\  ( ( int `  J ) `  U. ran  M )  =/=  (/) )  ->  E. k  e.  NN  ( ( int `  J ) `  ( M `  k )
)  =/=  (/) )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    /\ wa 370    /\ w3a 982    = wceq 1437    e. wcel 1872    =/= wne 2599   A.wral 2714   E.wrex 2715    \ cdif 3376    C_ wss 3379   (/)c0 3704   U.cuni 4162   class class class wbr 4366   {copab 4424    X. cxp 4794   ran crn 4797   -->wf 5540   ` cfv 5544  (class class class)co 6249    |-> cmpt2 6251   1c1 9491    < clt 9626    / cdiv 10220   NNcn 10560   RR+crp 11253   ballcbl 18900   MetOpencmopn 18903   Clsdccld 19973   intcnt 19974   clsccl 19975   CMetcms 22166
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1663  ax-4 1676  ax-5 1752  ax-6 1798  ax-7 1843  ax-8 1874  ax-9 1876  ax-10 1891  ax-11 1896  ax-12 1909  ax-13 2063  ax-ext 2408  ax-rep 4479  ax-sep 4489  ax-nul 4498  ax-pow 4545  ax-pr 4603  ax-un 6541  ax-inf2 8099  ax-dc 8827  ax-cnex 9546  ax-resscn 9547  ax-1cn 9548  ax-icn 9549  ax-addcl 9550  ax-addrcl 9551  ax-mulcl 9552  ax-mulrcl 9553  ax-mulcom 9554  ax-addass 9555  ax-mulass 9556  ax-distr 9557  ax-i2m1 9558  ax-1ne0 9559  ax-1rid 9560  ax-rnegex 9561  ax-rrecex 9562  ax-cnre 9563  ax-pre-lttri 9564  ax-pre-lttrn 9565  ax-pre-ltadd 9566  ax-pre-mulgt0 9567  ax-pre-sup 9568
This theorem depends on definitions:  df-bi 188  df-or 371  df-an 372  df-3or 983  df-3an 984  df-tru 1440  df-ex 1658  df-nf 1662  df-sb 1791  df-eu 2280  df-mo 2281  df-clab 2415  df-cleq 2421  df-clel 2424  df-nfc 2558  df-ne 2601  df-nel 2602  df-ral 2719  df-rex 2720  df-reu 2721  df-rmo 2722  df-rab 2723  df-v 3024  df-sbc 3243  df-csb 3339  df-dif 3382  df-un 3384  df-in 3386  df-ss 3393  df-pss 3395  df-nul 3705  df-if 3855  df-pw 3926  df-sn 3942  df-pr 3944  df-tp 3946  df-op 3948  df-uni 4163  df-int 4199  df-iun 4244  df-iin 4245  df-br 4367  df-opab 4426  df-mpt 4427  df-tr 4462  df-eprel 4707  df-id 4711  df-po 4717  df-so 4718  df-fr 4755  df-we 4757  df-xp 4802  df-rel 4803  df-cnv 4804  df-co 4805  df-dm 4806  df-rn 4807  df-res 4808  df-ima 4809  df-pred 5342  df-ord 5388  df-on 5389  df-lim 5390  df-suc 5391  df-iota 5508  df-fun 5546  df-fn 5547  df-f 5548  df-f1 5549  df-fo 5550  df-f1o 5551  df-fv 5552  df-riota 6211  df-ov 6252  df-oprab 6253  df-mpt2 6254  df-om 6651  df-1st 6751  df-2nd 6752  df-wrecs 6983  df-recs 7045  df-rdg 7083  df-1o 7137  df-er 7318  df-map 7429  df-pm 7430  df-en 7525  df-dom 7526  df-sdom 7527  df-sup 7909  df-inf 7910  df-pnf 9628  df-mnf 9629  df-xr 9630  df-ltxr 9631  df-le 9632  df-sub 9813  df-neg 9814  df-div 10221  df-nn 10561  df-2 10619  df-n0 10821  df-z 10889  df-uz 11111  df-q 11216  df-rp 11254  df-xneg 11360  df-xadd 11361  df-xmul 11362  df-ico 11592  df-rest 15264  df-topgen 15285  df-psmet 18905  df-xmet 18906  df-met 18907  df-bl 18908  df-mopn 18909  df-fbas 18910  df-fg 18911  df-top 19863  df-bases 19864  df-topon 19865  df-cld 19976  df-ntr 19977  df-cls 19978  df-nei 20056  df-lm 20187  df-fil 20803  df-fm 20895  df-flim 20896  df-flf 20897  df-cfil 22167  df-cau 22168  df-cmet 22169
This theorem is referenced by:  bcth2  22240  bcth3  22241
  Copyright terms: Public domain W3C validator