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

Theorem 2ndc1stc 22056
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 22052 . 2 (𝐽 ∈ 2ndω → 𝐽 ∈ Top)
2 is2ndc 22051 . . . 4 (𝐽 ∈ 2ndω ↔ ∃𝑏 ∈ TopBases (𝑏 ≼ ω ∧ (topGen‘𝑏) = 𝐽))
3 ssrab2 4007 . . . . . . . . . . 11 {𝑞𝑏𝑥𝑞} ⊆ 𝑏
4 bastg 21571 . . . . . . . . . . . 12 (𝑏 ∈ TopBases → 𝑏 ⊆ (topGen‘𝑏))
543ad2ant1 1130 . . . . . . . . . . 11 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → 𝑏 ⊆ (topGen‘𝑏))
63, 5sstrid 3926 . . . . . . . . . 10 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → {𝑞𝑏𝑥𝑞} ⊆ (topGen‘𝑏))
7 fvex 6658 . . . . . . . . . . 11 (topGen‘𝑏) ∈ V
87elpw2 5212 . . . . . . . . . 10 ({𝑞𝑏𝑥𝑞} ∈ 𝒫 (topGen‘𝑏) ↔ {𝑞𝑏𝑥𝑞} ⊆ (topGen‘𝑏))
96, 8sylibr 237 . . . . . . . . 9 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → {𝑞𝑏𝑥𝑞} ∈ 𝒫 (topGen‘𝑏))
10 vex 3444 . . . . . . . . . . 11 𝑏 ∈ V
11 ssdomg 8538 . . . . . . . . . . 11 (𝑏 ∈ V → ({𝑞𝑏𝑥𝑞} ⊆ 𝑏 → {𝑞𝑏𝑥𝑞} ≼ 𝑏))
1210, 3, 11mp2 9 . . . . . . . . . 10 {𝑞𝑏𝑥𝑞} ≼ 𝑏
13 simp2 1134 . . . . . . . . . 10 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → 𝑏 ≼ ω)
14 domtr 8545 . . . . . . . . . 10 (({𝑞𝑏𝑥𝑞} ≼ 𝑏𝑏 ≼ ω) → {𝑞𝑏𝑥𝑞} ≼ ω)
1512, 13, 14sylancr 590 . . . . . . . . 9 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → {𝑞𝑏𝑥𝑞} ≼ ω)
16 eltg2b 21564 . . . . . . . . . . . 12 (𝑏 ∈ TopBases → (𝑜 ∈ (topGen‘𝑏) ↔ ∀𝑦𝑜𝑡𝑏 (𝑦𝑡𝑡𝑜)))
17163ad2ant1 1130 . . . . . . . . . . 11 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → (𝑜 ∈ (topGen‘𝑏) ↔ ∀𝑦𝑜𝑡𝑏 (𝑦𝑡𝑡𝑜)))
18 elequ1 2118 . . . . . . . . . . . . . . 15 (𝑦 = 𝑥 → (𝑦𝑡𝑥𝑡))
1918anbi1d 632 . . . . . . . . . . . . . 14 (𝑦 = 𝑥 → ((𝑦𝑡𝑡𝑜) ↔ (𝑥𝑡𝑡𝑜)))
2019rexbidv 3256 . . . . . . . . . . . . 13 (𝑦 = 𝑥 → (∃𝑡𝑏 (𝑦𝑡𝑡𝑜) ↔ ∃𝑡𝑏 (𝑥𝑡𝑡𝑜)))
2120rspccv 3568 . . . . . . . . . . . 12 (∀𝑦𝑜𝑡𝑏 (𝑦𝑡𝑡𝑜) → (𝑥𝑜 → ∃𝑡𝑏 (𝑥𝑡𝑡𝑜)))
22 id 22 . . . . . . . . . . . . . . . 16 ((𝑡𝑏𝑥𝑡) → (𝑡𝑏𝑥𝑡))
2322adantrr 716 . . . . . . . . . . . . . . 15 ((𝑡𝑏 ∧ (𝑥𝑡𝑡𝑜)) → (𝑡𝑏𝑥𝑡))
24 elequ2 2126 . . . . . . . . . . . . . . . 16 (𝑞 = 𝑡 → (𝑥𝑞𝑥𝑡))
2524elrab 3628 . . . . . . . . . . . . . . 15 (𝑡 ∈ {𝑞𝑏𝑥𝑞} ↔ (𝑡𝑏𝑥𝑡))
2623, 25sylibr 237 . . . . . . . . . . . . . 14 ((𝑡𝑏 ∧ (𝑥𝑡𝑡𝑜)) → 𝑡 ∈ {𝑞𝑏𝑥𝑞})
27 simprr 772 . . . . . . . . . . . . . 14 (((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) ∧ (𝑡𝑏 ∧ (𝑥𝑡𝑡𝑜))) → (𝑥𝑡𝑡𝑜))
28 elequ2 2126 . . . . . . . . . . . . . . . 16 (𝑝 = 𝑡 → (𝑥𝑝𝑥𝑡))
29 sseq1 3940 . . . . . . . . . . . . . . . 16 (𝑝 = 𝑡 → (𝑝𝑜𝑡𝑜))
3028, 29anbi12d 633 . . . . . . . . . . . . . . 15 (𝑝 = 𝑡 → ((𝑥𝑝𝑝𝑜) ↔ (𝑥𝑡𝑡𝑜)))
3130rspcev 3571 . . . . . . . . . . . . . 14 ((𝑡 ∈ {𝑞𝑏𝑥𝑞} ∧ (𝑥𝑡𝑡𝑜)) → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))
3226, 27, 31syl2an2 685 . . . . . . . . . . . . 13 (((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) ∧ (𝑡𝑏 ∧ (𝑥𝑡𝑡𝑜))) → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))
3332rexlimdvaa 3244 . . . . . . . . . . . 12 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → (∃𝑡𝑏 (𝑥𝑡𝑡𝑜) → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))
3421, 33syl9r 78 . . . . . . . . . . 11 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → (∀𝑦𝑜𝑡𝑏 (𝑦𝑡𝑡𝑜) → (𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))))
3517, 34sylbid 243 . . . . . . . . . 10 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → (𝑜 ∈ (topGen‘𝑏) → (𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))))
3635ralrimiv 3148 . . . . . . . . 9 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))
37 breq1 5033 . . . . . . . . . . 11 (𝑠 = {𝑞𝑏𝑥𝑞} → (𝑠 ≼ ω ↔ {𝑞𝑏𝑥𝑞} ≼ ω))
38 rexeq 3359 . . . . . . . . . . . . 13 (𝑠 = {𝑞𝑏𝑥𝑞} → (∃𝑝𝑠 (𝑥𝑝𝑝𝑜) ↔ ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))
3938imbi2d 344 . . . . . . . . . . . 12 (𝑠 = {𝑞𝑏𝑥𝑞} → ((𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)) ↔ (𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))))
4039ralbidv 3162 . . . . . . . . . . 11 (𝑠 = {𝑞𝑏𝑥𝑞} → (∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)) ↔ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))))
4137, 40anbi12d 633 . . . . . . . . . 10 (𝑠 = {𝑞𝑏𝑥𝑞} → ((𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))) ↔ ({𝑞𝑏𝑥𝑞} ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))))
4241rspcev 3571 . . . . . . . . 9 (({𝑞𝑏𝑥𝑞} ∈ 𝒫 (topGen‘𝑏) ∧ ({𝑞𝑏𝑥𝑞} ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))) → ∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))
439, 15, 36, 42syl12anc 835 . . . . . . . 8 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → ∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))
44433expia 1118 . . . . . . 7 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω) → (𝑥 (topGen‘𝑏) → ∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
45 unieq 4811 . . . . . . . . 9 ((topGen‘𝑏) = 𝐽 (topGen‘𝑏) = 𝐽)
4645eleq2d 2875 . . . . . . . 8 ((topGen‘𝑏) = 𝐽 → (𝑥 (topGen‘𝑏) ↔ 𝑥 𝐽))
47 pweq 4513 . . . . . . . . 9 ((topGen‘𝑏) = 𝐽 → 𝒫 (topGen‘𝑏) = 𝒫 𝐽)
48 raleq 3358 . . . . . . . . . 10 ((topGen‘𝑏) = 𝐽 → (∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)) ↔ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))
4948anbi2d 631 . . . . . . . . 9 ((topGen‘𝑏) = 𝐽 → ((𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))) ↔ (𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
5047, 49rexeqbidv 3355 . . . . . . . 8 ((topGen‘𝑏) = 𝐽 → (∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))) ↔ ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
5146, 50imbi12d 348 . . . . . . 7 ((topGen‘𝑏) = 𝐽 → ((𝑥 (topGen‘𝑏) → ∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))) ↔ (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))))
5244, 51syl5ibcom 248 . . . . . 6 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω) → ((topGen‘𝑏) = 𝐽 → (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))))
5352expimpd 457 . . . . 5 (𝑏 ∈ TopBases → ((𝑏 ≼ ω ∧ (topGen‘𝑏) = 𝐽) → (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))))
5453rexlimiv 3239 . . . 4 (∃𝑏 ∈ TopBases (𝑏 ≼ ω ∧ (topGen‘𝑏) = 𝐽) → (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
552, 54sylbi 220 . . 3 (𝐽 ∈ 2ndω → (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
5655ralrimiv 3148 . 2 (𝐽 ∈ 2ndω → ∀𝑥 𝐽𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))
57 eqid 2798 . . 3 𝐽 = 𝐽
5857is1stc2 22047 . 2 (𝐽 ∈ 1stω ↔ (𝐽 ∈ Top ∧ ∀𝑥 𝐽𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
591, 56, 58sylanbrc 586 1 (𝐽 ∈ 2ndω → 𝐽 ∈ 1stω)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 399  w3a 1084   = wceq 1538  wcel 2111  wral 3106  wrex 3107  {crab 3110  Vcvv 3441  wss 3881  𝒫 cpw 4497   cuni 4800   class class class wbr 5030  cfv 6324  ωcom 7560  cdom 8490  topGenctg 16703  Topctop 21498  TopBasesctb 21550  1stωc1stc 22042  2ndωc2ndc 22043
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2113  ax-9 2121  ax-10 2142  ax-11 2158  ax-12 2175  ax-ext 2770  ax-sep 5167  ax-nul 5174  ax-pow 5231  ax-pr 5295  ax-un 7441
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2598  df-eu 2629  df-clab 2777  df-cleq 2791  df-clel 2870  df-nfc 2938  df-ral 3111  df-rex 3112  df-rab 3115  df-v 3443  df-sbc 3721  df-dif 3884  df-un 3886  df-in 3888  df-ss 3898  df-nul 4244  df-if 4426  df-pw 4499  df-sn 4526  df-pr 4528  df-op 4532  df-uni 4801  df-br 5031  df-opab 5093  df-mpt 5111  df-id 5425  df-xp 5525  df-rel 5526  df-cnv 5527  df-co 5528  df-dm 5529  df-rn 5530  df-res 5531  df-ima 5532  df-iota 6283  df-fun 6326  df-fn 6327  df-f 6328  df-f1 6329  df-fo 6330  df-f1o 6331  df-fv 6332  df-dom 8494  df-topgen 16709  df-top 21499  df-bases 21551  df-1stc 22044  df-2ndc 22045
This theorem is referenced by:  dis1stc  22104
  Copyright terms: Public domain W3C validator