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

Theorem dis2ndc 21263
Description: A discrete space is second-countable iff it is countable. (Contributed by Mario Carneiro, 13-Apr-2015.)
Assertion
Ref Expression
dis2ndc  |-  ( X  ~<_  om  <->  ~P X  e.  2ndc )

Proof of Theorem dis2ndc
Dummy variables  w  b  x  y  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 reldom 7961 . . 3  |-  Rel  ~<_
21brrelexi 5158 . 2  |-  ( X  ~<_  om  ->  X  e.  _V )
3 pwexr 6974 . 2  |-  ( ~P X  e.  2ndc  ->  X  e.  _V )
4 elex 3212 . . . . 5  |-  ( X  e.  _V  ->  X  e.  _V )
5 snex 4908 . . . . . . . 8  |-  { x }  e.  _V
652a1i 12 . . . . . . 7  |-  ( X  e.  _V  ->  (
x  e.  X  ->  { x }  e.  _V ) )
7 vex 3203 . . . . . . . . . 10  |-  x  e. 
_V
87sneqr 4371 . . . . . . . . 9  |-  ( { x }  =  {
y }  ->  x  =  y )
9 sneq 4187 . . . . . . . . 9  |-  ( x  =  y  ->  { x }  =  { y } )
108, 9impbii 199 . . . . . . . 8  |-  ( { x }  =  {
y }  <->  x  =  y )
11102a1i 12 . . . . . . 7  |-  ( X  e.  _V  ->  (
( x  e.  X  /\  y  e.  X
)  ->  ( {
x }  =  {
y }  <->  x  =  y ) ) )
126, 11dom2lem 7995 . . . . . 6  |-  ( X  e.  _V  ->  (
x  e.  X  |->  { x } ) : X -1-1-> _V )
13 f1f1orn 6148 . . . . . 6  |-  ( ( x  e.  X  |->  { x } ) : X -1-1-> _V  ->  ( x  e.  X  |->  { x } ) : X -1-1-onto-> ran  ( x  e.  X  |->  { x } ) )
1412, 13syl 17 . . . . 5  |-  ( X  e.  _V  ->  (
x  e.  X  |->  { x } ) : X -1-1-onto-> ran  ( x  e.  X  |->  { x }
) )
15 f1oeng 7974 . . . . 5  |-  ( ( X  e.  _V  /\  ( x  e.  X  |->  { x } ) : X -1-1-onto-> ran  ( x  e.  X  |->  { x }
) )  ->  X  ~~  ran  ( x  e.  X  |->  { x }
) )
164, 14, 15syl2anc 693 . . . 4  |-  ( X  e.  _V  ->  X  ~~  ran  ( x  e.  X  |->  { x }
) )
17 domen1 8102 . . . 4  |-  ( X 
~~  ran  ( x  e.  X  |->  { x } )  ->  ( X  ~<_  om  <->  ran  ( x  e.  X  |->  { x }
)  ~<_  om ) )
1816, 17syl 17 . . 3  |-  ( X  e.  _V  ->  ( X  ~<_  om  <->  ran  ( x  e.  X  |->  { x }
)  ~<_  om ) )
19 distop 20799 . . . . . . 7  |-  ( X  e.  _V  ->  ~P X  e.  Top )
20 simpr 477 . . . . . . . . . 10  |-  ( ( X  e.  _V  /\  x  e.  X )  ->  x  e.  X )
217snelpw 4913 . . . . . . . . . 10  |-  ( x  e.  X  <->  { x }  e.  ~P X
)
2220, 21sylib 208 . . . . . . . . 9  |-  ( ( X  e.  _V  /\  x  e.  X )  ->  { x }  e.  ~P X )
23 eqid 2622 . . . . . . . . 9  |-  ( x  e.  X  |->  { x } )  =  ( x  e.  X  |->  { x } )
2422, 23fmptd 6385 . . . . . . . 8  |-  ( X  e.  _V  ->  (
x  e.  X  |->  { x } ) : X --> ~P X )
25 frn 6053 . . . . . . . 8  |-  ( ( x  e.  X  |->  { x } ) : X --> ~P X  ->  ran  ( x  e.  X  |->  { x } ) 
C_  ~P X )
2624, 25syl 17 . . . . . . 7  |-  ( X  e.  _V  ->  ran  ( x  e.  X  |->  { x } ) 
C_  ~P X )
27 elpwi 4168 . . . . . . . . . . . . 13  |-  ( y  e.  ~P X  -> 
y  C_  X )
2827ad2antrl 764 . . . . . . . . . . . 12  |-  ( ( X  e.  _V  /\  ( y  e.  ~P X  /\  z  e.  y ) )  ->  y  C_  X )
29 simprr 796 . . . . . . . . . . . 12  |-  ( ( X  e.  _V  /\  ( y  e.  ~P X  /\  z  e.  y ) )  ->  z  e.  y )
3028, 29sseldd 3604 . . . . . . . . . . 11  |-  ( ( X  e.  _V  /\  ( y  e.  ~P X  /\  z  e.  y ) )  ->  z  e.  X )
31 eqidd 2623 . . . . . . . . . . 11  |-  ( ( X  e.  _V  /\  ( y  e.  ~P X  /\  z  e.  y ) )  ->  { z }  =  { z } )
32 sneq 4187 . . . . . . . . . . . . 13  |-  ( x  =  z  ->  { x }  =  { z } )
3332eqeq2d 2632 . . . . . . . . . . . 12  |-  ( x  =  z  ->  ( { z }  =  { x }  <->  { z }  =  { z } ) )
3433rspcev 3309 . . . . . . . . . . 11  |-  ( ( z  e.  X  /\  { z }  =  {
z } )  ->  E. x  e.  X  { z }  =  { x } )
3530, 31, 34syl2anc 693 . . . . . . . . . 10  |-  ( ( X  e.  _V  /\  ( y  e.  ~P X  /\  z  e.  y ) )  ->  E. x  e.  X  { z }  =  { x } )
36 snex 4908 . . . . . . . . . . 11  |-  { z }  e.  _V
3723elrnmpt 5372 . . . . . . . . . . 11  |-  ( { z }  e.  _V  ->  ( { z }  e.  ran  ( x  e.  X  |->  { x } )  <->  E. x  e.  X  { z }  =  { x } ) )
3836, 37ax-mp 5 . . . . . . . . . 10  |-  ( { z }  e.  ran  ( x  e.  X  |->  { x } )  <->  E. x  e.  X  { z }  =  { x } )
3935, 38sylibr 224 . . . . . . . . 9  |-  ( ( X  e.  _V  /\  ( y  e.  ~P X  /\  z  e.  y ) )  ->  { z }  e.  ran  (
x  e.  X  |->  { x } ) )
40 vsnid 4209 . . . . . . . . . 10  |-  z  e. 
{ z }
4140a1i 11 . . . . . . . . 9  |-  ( ( X  e.  _V  /\  ( y  e.  ~P X  /\  z  e.  y ) )  ->  z  e.  { z } )
4229snssd 4340 . . . . . . . . 9  |-  ( ( X  e.  _V  /\  ( y  e.  ~P X  /\  z  e.  y ) )  ->  { z }  C_  y )
43 eleq2 2690 . . . . . . . . . . 11  |-  ( w  =  { z }  ->  ( z  e.  w  <->  z  e.  {
z } ) )
44 sseq1 3626 . . . . . . . . . . 11  |-  ( w  =  { z }  ->  ( w  C_  y 
<->  { z }  C_  y ) )
4543, 44anbi12d 747 . . . . . . . . . 10  |-  ( w  =  { z }  ->  ( ( z  e.  w  /\  w  C_  y )  <->  ( z  e.  { z }  /\  { z }  C_  y
) ) )
4645rspcev 3309 . . . . . . . . 9  |-  ( ( { z }  e.  ran  ( x  e.  X  |->  { x } )  /\  ( z  e. 
{ z }  /\  { z }  C_  y
) )  ->  E. w  e.  ran  ( x  e.  X  |->  { x }
) ( z  e.  w  /\  w  C_  y ) )
4739, 41, 42, 46syl12anc 1324 . . . . . . . 8  |-  ( ( X  e.  _V  /\  ( y  e.  ~P X  /\  z  e.  y ) )  ->  E. w  e.  ran  ( x  e.  X  |->  { x }
) ( z  e.  w  /\  w  C_  y ) )
4847ralrimivva 2971 . . . . . . 7  |-  ( X  e.  _V  ->  A. y  e.  ~P  X A. z  e.  y  E. w  e.  ran  ( x  e.  X  |->  { x }
) ( z  e.  w  /\  w  C_  y ) )
49 basgen2 20793 . . . . . . 7  |-  ( ( ~P X  e.  Top  /\ 
ran  ( x  e.  X  |->  { x }
)  C_  ~P X  /\  A. y  e.  ~P  X A. z  e.  y  E. w  e.  ran  ( x  e.  X  |->  { x } ) ( z  e.  w  /\  w  C_  y ) )  ->  ( topGen ` 
ran  ( x  e.  X  |->  { x }
) )  =  ~P X )
5019, 26, 48, 49syl3anc 1326 . . . . . 6  |-  ( X  e.  _V  ->  ( topGen `
 ran  ( x  e.  X  |->  { x } ) )  =  ~P X )
5150adantr 481 . . . . 5  |-  ( ( X  e.  _V  /\  ran  ( x  e.  X  |->  { x } )  ~<_  om )  ->  ( topGen `
 ran  ( x  e.  X  |->  { x } ) )  =  ~P X )
5250, 19eqeltrd 2701 . . . . . . 7  |-  ( X  e.  _V  ->  ( topGen `
 ran  ( x  e.  X  |->  { x } ) )  e. 
Top )
53 tgclb 20774 . . . . . . 7  |-  ( ran  ( x  e.  X  |->  { x } )  e.  TopBases 
<->  ( topGen `  ran  ( x  e.  X  |->  { x } ) )  e. 
Top )
5452, 53sylibr 224 . . . . . 6  |-  ( X  e.  _V  ->  ran  ( x  e.  X  |->  { x } )  e.  TopBases )
55 2ndci 21251 . . . . . 6  |-  ( ( ran  ( x  e.  X  |->  { x }
)  e.  TopBases  /\  ran  ( x  e.  X  |->  { x } )  ~<_  om )  ->  ( topGen `
 ran  ( x  e.  X  |->  { x } ) )  e. 
2ndc )
5654, 55sylan 488 . . . . 5  |-  ( ( X  e.  _V  /\  ran  ( x  e.  X  |->  { x } )  ~<_  om )  ->  ( topGen `
 ran  ( x  e.  X  |->  { x } ) )  e. 
2ndc )
5751, 56eqeltrrd 2702 . . . 4  |-  ( ( X  e.  _V  /\  ran  ( x  e.  X  |->  { x } )  ~<_  om )  ->  ~P X  e.  2ndc )
58 is2ndc 21249 . . . . . 6  |-  ( ~P X  e.  2ndc  <->  E. b  e. 
TopBases  ( b  ~<_  om  /\  ( topGen `  b )  =  ~P X ) )
59 vex 3203 . . . . . . . . . 10  |-  b  e. 
_V
60 simpr 477 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( X  e. 
_V  /\  b  e.  TopBases )  /\  ( b  ~<_  om 
/\  ( topGen `  b
)  =  ~P X
) )  /\  x  e.  X )  ->  x  e.  X )
6160, 21sylib 208 . . . . . . . . . . . . . . 15  |-  ( ( ( ( X  e. 
_V  /\  b  e.  TopBases )  /\  ( b  ~<_  om 
/\  ( topGen `  b
)  =  ~P X
) )  /\  x  e.  X )  ->  { x }  e.  ~P X
)
62 simplrr 801 . . . . . . . . . . . . . . 15  |-  ( ( ( ( X  e. 
_V  /\  b  e.  TopBases )  /\  ( b  ~<_  om 
/\  ( topGen `  b
)  =  ~P X
) )  /\  x  e.  X )  ->  ( topGen `
 b )  =  ~P X )
6361, 62eleqtrrd 2704 . . . . . . . . . . . . . 14  |-  ( ( ( ( X  e. 
_V  /\  b  e.  TopBases )  /\  ( b  ~<_  om 
/\  ( topGen `  b
)  =  ~P X
) )  /\  x  e.  X )  ->  { x }  e.  ( topGen `  b ) )
64 vsnid 4209 . . . . . . . . . . . . . 14  |-  x  e. 
{ x }
65 tg2 20769 . . . . . . . . . . . . . 14  |-  ( ( { x }  e.  ( topGen `  b )  /\  x  e.  { x } )  ->  E. y  e.  b  ( x  e.  y  /\  y  C_ 
{ x } ) )
6663, 64, 65sylancl 694 . . . . . . . . . . . . 13  |-  ( ( ( ( X  e. 
_V  /\  b  e.  TopBases )  /\  ( b  ~<_  om 
/\  ( topGen `  b
)  =  ~P X
) )  /\  x  e.  X )  ->  E. y  e.  b  ( x  e.  y  /\  y  C_ 
{ x } ) )
67 simprrl 804 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( ( X  e.  _V  /\  b  e. 
TopBases )  /\  ( b  ~<_  om  /\  ( topGen `  b )  =  ~P X ) )  /\  x  e.  X )  /\  ( y  e.  b  /\  ( x  e.  y  /\  y  C_  { x } ) ) )  ->  x  e.  y )
6867snssd 4340 . . . . . . . . . . . . . . 15  |-  ( ( ( ( ( X  e.  _V  /\  b  e. 
TopBases )  /\  ( b  ~<_  om  /\  ( topGen `  b )  =  ~P X ) )  /\  x  e.  X )  /\  ( y  e.  b  /\  ( x  e.  y  /\  y  C_  { x } ) ) )  ->  { x }  C_  y )
69 simprrr 805 . . . . . . . . . . . . . . 15  |-  ( ( ( ( ( X  e.  _V  /\  b  e. 
TopBases )  /\  ( b  ~<_  om  /\  ( topGen `  b )  =  ~P X ) )  /\  x  e.  X )  /\  ( y  e.  b  /\  ( x  e.  y  /\  y  C_  { x } ) ) )  ->  y  C_  { x } )
7068, 69eqssd 3620 . . . . . . . . . . . . . 14  |-  ( ( ( ( ( X  e.  _V  /\  b  e. 
TopBases )  /\  ( b  ~<_  om  /\  ( topGen `  b )  =  ~P X ) )  /\  x  e.  X )  /\  ( y  e.  b  /\  ( x  e.  y  /\  y  C_  { x } ) ) )  ->  { x }  =  y )
71 simprl 794 . . . . . . . . . . . . . 14  |-  ( ( ( ( ( X  e.  _V  /\  b  e. 
TopBases )  /\  ( b  ~<_  om  /\  ( topGen `  b )  =  ~P X ) )  /\  x  e.  X )  /\  ( y  e.  b  /\  ( x  e.  y  /\  y  C_  { x } ) ) )  ->  y  e.  b )
7270, 71eqeltrd 2701 . . . . . . . . . . . . 13  |-  ( ( ( ( ( X  e.  _V  /\  b  e. 
TopBases )  /\  ( b  ~<_  om  /\  ( topGen `  b )  =  ~P X ) )  /\  x  e.  X )  /\  ( y  e.  b  /\  ( x  e.  y  /\  y  C_  { x } ) ) )  ->  { x }  e.  b )
7366, 72rexlimddv 3035 . . . . . . . . . . . 12  |-  ( ( ( ( X  e. 
_V  /\  b  e.  TopBases )  /\  ( b  ~<_  om 
/\  ( topGen `  b
)  =  ~P X
) )  /\  x  e.  X )  ->  { x }  e.  b )
7473, 23fmptd 6385 . . . . . . . . . . 11  |-  ( ( ( X  e.  _V  /\  b  e.  TopBases )  /\  ( b  ~<_  om  /\  ( topGen `  b )  =  ~P X ) )  ->  ( x  e.  X  |->  { x }
) : X --> b )
75 frn 6053 . . . . . . . . . . 11  |-  ( ( x  e.  X  |->  { x } ) : X --> b  ->  ran  ( x  e.  X  |->  { x } ) 
C_  b )
7674, 75syl 17 . . . . . . . . . 10  |-  ( ( ( X  e.  _V  /\  b  e.  TopBases )  /\  ( b  ~<_  om  /\  ( topGen `  b )  =  ~P X ) )  ->  ran  ( x  e.  X  |->  { x } )  C_  b
)
77 ssdomg 8001 . . . . . . . . . 10  |-  ( b  e.  _V  ->  ( ran  ( x  e.  X  |->  { x } ) 
C_  b  ->  ran  ( x  e.  X  |->  { x } )  ~<_  b ) )
7859, 76, 77mpsyl 68 . . . . . . . . 9  |-  ( ( ( X  e.  _V  /\  b  e.  TopBases )  /\  ( b  ~<_  om  /\  ( topGen `  b )  =  ~P X ) )  ->  ran  ( x  e.  X  |->  { x } )  ~<_  b )
79 simprl 794 . . . . . . . . 9  |-  ( ( ( X  e.  _V  /\  b  e.  TopBases )  /\  ( b  ~<_  om  /\  ( topGen `  b )  =  ~P X ) )  ->  b  ~<_  om )
80 domtr 8009 . . . . . . . . 9  |-  ( ( ran  ( x  e.  X  |->  { x }
)  ~<_  b  /\  b  ~<_  om )  ->  ran  (
x  e.  X  |->  { x } )  ~<_  om )
8178, 79, 80syl2anc 693 . . . . . . . 8  |-  ( ( ( X  e.  _V  /\  b  e.  TopBases )  /\  ( b  ~<_  om  /\  ( topGen `  b )  =  ~P X ) )  ->  ran  ( x  e.  X  |->  { x } )  ~<_  om )
8281ex 450 . . . . . . 7  |-  ( ( X  e.  _V  /\  b  e.  TopBases )  ->  (
( b  ~<_  om  /\  ( topGen `  b )  =  ~P X )  ->  ran  ( x  e.  X  |->  { x } )  ~<_  om ) )
8382rexlimdva 3031 . . . . . 6  |-  ( X  e.  _V  ->  ( E. b  e.  TopBases  ( b  ~<_  om  /\  ( topGen `  b )  =  ~P X )  ->  ran  ( x  e.  X  |->  { x } )  ~<_  om ) )
8458, 83syl5bi 232 . . . . 5  |-  ( X  e.  _V  ->  ( ~P X  e.  2ndc  ->  ran  ( x  e.  X  |->  { x } )  ~<_  om ) )
8584imp 445 . . . 4  |-  ( ( X  e.  _V  /\  ~P X  e.  2ndc )  ->  ran  ( x  e.  X  |->  { x } )  ~<_  om )
8657, 85impbida 877 . . 3  |-  ( X  e.  _V  ->  ( ran  ( x  e.  X  |->  { x } )  ~<_  om  <->  ~P X  e.  2ndc ) )
8718, 86bitrd 268 . 2  |-  ( X  e.  _V  ->  ( X  ~<_  om  <->  ~P X  e.  2ndc ) )
882, 3, 87pm5.21nii 368 1  |-  ( X  ~<_  om  <->  ~P X  e.  2ndc )
Colors of variables: wff setvar class
Syntax hints:    <-> wb 196    /\ wa 384    = wceq 1483    e. wcel 1990   A.wral 2912   E.wrex 2913   _Vcvv 3200    C_ wss 3574   ~Pcpw 4158   {csn 4177   class class class wbr 4653    |-> cmpt 4729   ran crn 5115   -->wf 5884   -1-1->wf1 5885   -1-1-onto->wf1o 5887   ` cfv 5888   omcom 7065    ~~ cen 7952    ~<_ cdom 7953   topGenctg 16098   Topctop 20698   TopBasesctb 20749   2ndcc2ndc 21241
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-8 1992  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-rep 4771  ax-sep 4781  ax-nul 4789  ax-pow 4843  ax-pr 4906  ax-un 6949
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ne 2795  df-ral 2917  df-rex 2918  df-reu 2919  df-rab 2921  df-v 3202  df-sbc 3436  df-csb 3534  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-nul 3916  df-if 4087  df-pw 4160  df-sn 4178  df-pr 4180  df-op 4184  df-uni 4437  df-iun 4522  df-br 4654  df-opab 4713  df-mpt 4730  df-id 5024  df-xp 5120  df-rel 5121  df-cnv 5122  df-co 5123  df-dm 5124  df-rn 5125  df-res 5126  df-ima 5127  df-iota 5851  df-fun 5890  df-fn 5891  df-f 5892  df-f1 5893  df-fo 5894  df-f1o 5895  df-fv 5896  df-er 7742  df-en 7956  df-dom 7957  df-topgen 16104  df-top 20699  df-bases 20750  df-2ndc 21243
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator