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

Theorem 2ndc1stc 22510
Description: A second-countable space is first-countable. (Contributed by Jeff Hankins, 17-Jan-2010.)
Assertion
Ref Expression
2ndc1stc (𝐽 ∈ 2ndω → 𝐽 ∈ 1stω)

Proof of Theorem 2ndc1stc
Dummy variables 𝑜 𝑏 𝑝 𝑞 𝑠 𝑡 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 2ndctop 22506 . 2 (𝐽 ∈ 2ndω → 𝐽 ∈ Top)
2 is2ndc 22505 . . . 4 (𝐽 ∈ 2ndω ↔ ∃𝑏 ∈ TopBases (𝑏 ≼ ω ∧ (topGen‘𝑏) = 𝐽))
3 ssrab2 4009 . . . . . . . . . . 11 {𝑞𝑏𝑥𝑞} ⊆ 𝑏
4 bastg 22024 . . . . . . . . . . . 12 (𝑏 ∈ TopBases → 𝑏 ⊆ (topGen‘𝑏))
543ad2ant1 1131 . . . . . . . . . . 11 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → 𝑏 ⊆ (topGen‘𝑏))
63, 5sstrid 3928 . . . . . . . . . 10 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → {𝑞𝑏𝑥𝑞} ⊆ (topGen‘𝑏))
7 fvex 6769 . . . . . . . . . . 11 (topGen‘𝑏) ∈ V
87elpw2 5264 . . . . . . . . . 10 ({𝑞𝑏𝑥𝑞} ∈ 𝒫 (topGen‘𝑏) ↔ {𝑞𝑏𝑥𝑞} ⊆ (topGen‘𝑏))
96, 8sylibr 233 . . . . . . . . 9 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → {𝑞𝑏𝑥𝑞} ∈ 𝒫 (topGen‘𝑏))
10 vex 3426 . . . . . . . . . . 11 𝑏 ∈ V
11 ssdomg 8741 . . . . . . . . . . 11 (𝑏 ∈ V → ({𝑞𝑏𝑥𝑞} ⊆ 𝑏 → {𝑞𝑏𝑥𝑞} ≼ 𝑏))
1210, 3, 11mp2 9 . . . . . . . . . 10 {𝑞𝑏𝑥𝑞} ≼ 𝑏
13 simp2 1135 . . . . . . . . . 10 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → 𝑏 ≼ ω)
14 domtr 8748 . . . . . . . . . 10 (({𝑞𝑏𝑥𝑞} ≼ 𝑏𝑏 ≼ ω) → {𝑞𝑏𝑥𝑞} ≼ ω)
1512, 13, 14sylancr 586 . . . . . . . . 9 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → {𝑞𝑏𝑥𝑞} ≼ ω)
16 eltg2b 22017 . . . . . . . . . . . 12 (𝑏 ∈ TopBases → (𝑜 ∈ (topGen‘𝑏) ↔ ∀𝑦𝑜𝑡𝑏 (𝑦𝑡𝑡𝑜)))
17163ad2ant1 1131 . . . . . . . . . . 11 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → (𝑜 ∈ (topGen‘𝑏) ↔ ∀𝑦𝑜𝑡𝑏 (𝑦𝑡𝑡𝑜)))
18 elequ1 2115 . . . . . . . . . . . . . . 15 (𝑦 = 𝑥 → (𝑦𝑡𝑥𝑡))
1918anbi1d 629 . . . . . . . . . . . . . 14 (𝑦 = 𝑥 → ((𝑦𝑡𝑡𝑜) ↔ (𝑥𝑡𝑡𝑜)))
2019rexbidv 3225 . . . . . . . . . . . . 13 (𝑦 = 𝑥 → (∃𝑡𝑏 (𝑦𝑡𝑡𝑜) ↔ ∃𝑡𝑏 (𝑥𝑡𝑡𝑜)))
2120rspccv 3549 . . . . . . . . . . . 12 (∀𝑦𝑜𝑡𝑏 (𝑦𝑡𝑡𝑜) → (𝑥𝑜 → ∃𝑡𝑏 (𝑥𝑡𝑡𝑜)))
22 id 22 . . . . . . . . . . . . . . . 16 ((𝑡𝑏𝑥𝑡) → (𝑡𝑏𝑥𝑡))
2322adantrr 713 . . . . . . . . . . . . . . 15 ((𝑡𝑏 ∧ (𝑥𝑡𝑡𝑜)) → (𝑡𝑏𝑥𝑡))
24 elequ2 2123 . . . . . . . . . . . . . . . 16 (𝑞 = 𝑡 → (𝑥𝑞𝑥𝑡))
2524elrab 3617 . . . . . . . . . . . . . . 15 (𝑡 ∈ {𝑞𝑏𝑥𝑞} ↔ (𝑡𝑏𝑥𝑡))
2623, 25sylibr 233 . . . . . . . . . . . . . 14 ((𝑡𝑏 ∧ (𝑥𝑡𝑡𝑜)) → 𝑡 ∈ {𝑞𝑏𝑥𝑞})
27 simprr 769 . . . . . . . . . . . . . 14 (((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) ∧ (𝑡𝑏 ∧ (𝑥𝑡𝑡𝑜))) → (𝑥𝑡𝑡𝑜))
28 elequ2 2123 . . . . . . . . . . . . . . . 16 (𝑝 = 𝑡 → (𝑥𝑝𝑥𝑡))
29 sseq1 3942 . . . . . . . . . . . . . . . 16 (𝑝 = 𝑡 → (𝑝𝑜𝑡𝑜))
3028, 29anbi12d 630 . . . . . . . . . . . . . . 15 (𝑝 = 𝑡 → ((𝑥𝑝𝑝𝑜) ↔ (𝑥𝑡𝑡𝑜)))
3130rspcev 3552 . . . . . . . . . . . . . 14 ((𝑡 ∈ {𝑞𝑏𝑥𝑞} ∧ (𝑥𝑡𝑡𝑜)) → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))
3226, 27, 31syl2an2 682 . . . . . . . . . . . . 13 (((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) ∧ (𝑡𝑏 ∧ (𝑥𝑡𝑡𝑜))) → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))
3332rexlimdvaa 3213 . . . . . . . . . . . 12 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → (∃𝑡𝑏 (𝑥𝑡𝑡𝑜) → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))
3421, 33syl9r 78 . . . . . . . . . . 11 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → (∀𝑦𝑜𝑡𝑏 (𝑦𝑡𝑡𝑜) → (𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))))
3517, 34sylbid 239 . . . . . . . . . 10 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → (𝑜 ∈ (topGen‘𝑏) → (𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))))
3635ralrimiv 3106 . . . . . . . . 9 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))
37 breq1 5073 . . . . . . . . . . 11 (𝑠 = {𝑞𝑏𝑥𝑞} → (𝑠 ≼ ω ↔ {𝑞𝑏𝑥𝑞} ≼ ω))
38 rexeq 3334 . . . . . . . . . . . . 13 (𝑠 = {𝑞𝑏𝑥𝑞} → (∃𝑝𝑠 (𝑥𝑝𝑝𝑜) ↔ ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))
3938imbi2d 340 . . . . . . . . . . . 12 (𝑠 = {𝑞𝑏𝑥𝑞} → ((𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)) ↔ (𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))))
4039ralbidv 3120 . . . . . . . . . . 11 (𝑠 = {𝑞𝑏𝑥𝑞} → (∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)) ↔ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))))
4137, 40anbi12d 630 . . . . . . . . . 10 (𝑠 = {𝑞𝑏𝑥𝑞} → ((𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))) ↔ ({𝑞𝑏𝑥𝑞} ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))))
4241rspcev 3552 . . . . . . . . 9 (({𝑞𝑏𝑥𝑞} ∈ 𝒫 (topGen‘𝑏) ∧ ({𝑞𝑏𝑥𝑞} ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))) → ∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))
439, 15, 36, 42syl12anc 833 . . . . . . . 8 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → ∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))
44433expia 1119 . . . . . . 7 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω) → (𝑥 (topGen‘𝑏) → ∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
45 unieq 4847 . . . . . . . . 9 ((topGen‘𝑏) = 𝐽 (topGen‘𝑏) = 𝐽)
4645eleq2d 2824 . . . . . . . 8 ((topGen‘𝑏) = 𝐽 → (𝑥 (topGen‘𝑏) ↔ 𝑥 𝐽))
47 pweq 4546 . . . . . . . . 9 ((topGen‘𝑏) = 𝐽 → 𝒫 (topGen‘𝑏) = 𝒫 𝐽)
48 raleq 3333 . . . . . . . . . 10 ((topGen‘𝑏) = 𝐽 → (∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)) ↔ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))
4948anbi2d 628 . . . . . . . . 9 ((topGen‘𝑏) = 𝐽 → ((𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))) ↔ (𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
5047, 49rexeqbidv 3328 . . . . . . . 8 ((topGen‘𝑏) = 𝐽 → (∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))) ↔ ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
5146, 50imbi12d 344 . . . . . . 7 ((topGen‘𝑏) = 𝐽 → ((𝑥 (topGen‘𝑏) → ∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))) ↔ (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))))
5244, 51syl5ibcom 244 . . . . . 6 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω) → ((topGen‘𝑏) = 𝐽 → (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))))
5352expimpd 453 . . . . 5 (𝑏 ∈ TopBases → ((𝑏 ≼ ω ∧ (topGen‘𝑏) = 𝐽) → (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))))
5453rexlimiv 3208 . . . 4 (∃𝑏 ∈ TopBases (𝑏 ≼ ω ∧ (topGen‘𝑏) = 𝐽) → (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
552, 54sylbi 216 . . 3 (𝐽 ∈ 2ndω → (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
5655ralrimiv 3106 . 2 (𝐽 ∈ 2ndω → ∀𝑥 𝐽𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))
57 eqid 2738 . . 3 𝐽 = 𝐽
5857is1stc2 22501 . 2 (𝐽 ∈ 1stω ↔ (𝐽 ∈ Top ∧ ∀𝑥 𝐽𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
591, 56, 58sylanbrc 582 1 (𝐽 ∈ 2ndω → 𝐽 ∈ 1stω)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 395  w3a 1085   = wceq 1539  wcel 2108  wral 3063  wrex 3064  {crab 3067  Vcvv 3422  wss 3883  𝒫 cpw 4530   cuni 4836   class class class wbr 5070  cfv 6418  ωcom 7687  cdom 8689  topGenctg 17065  Topctop 21950  TopBasesctb 22003  1stωc1stc 22496  2ndωc2ndc 22497
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1799  ax-4 1813  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2110  ax-9 2118  ax-10 2139  ax-11 2156  ax-12 2173  ax-ext 2709  ax-sep 5218  ax-nul 5225  ax-pow 5283  ax-pr 5347  ax-un 7566
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 844  df-3an 1087  df-tru 1542  df-fal 1552  df-ex 1784  df-nf 1788  df-sb 2069  df-mo 2540  df-eu 2569  df-clab 2716  df-cleq 2730  df-clel 2817  df-nfc 2888  df-ne 2943  df-ral 3068  df-rex 3069  df-rab 3072  df-v 3424  df-dif 3886  df-un 3888  df-in 3890  df-ss 3900  df-nul 4254  df-if 4457  df-pw 4532  df-sn 4559  df-pr 4561  df-op 4565  df-uni 4837  df-br 5071  df-opab 5133  df-mpt 5154  df-id 5480  df-xp 5586  df-rel 5587  df-cnv 5588  df-co 5589  df-dm 5590  df-rn 5591  df-res 5592  df-ima 5593  df-iota 6376  df-fun 6420  df-fn 6421  df-f 6422  df-f1 6423  df-fo 6424  df-f1o 6425  df-fv 6426  df-dom 8693  df-topgen 17071  df-top 21951  df-bases 22004  df-1stc 22498  df-2ndc 22499
This theorem is referenced by:  dis1stc  22558
  Copyright terms: Public domain W3C validator