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

Theorem 2ndc1stc 22059
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 22055 . 2 (𝐽 ∈ 2ndω → 𝐽 ∈ Top)
2 is2ndc 22054 . . . 4 (𝐽 ∈ 2ndω ↔ ∃𝑏 ∈ TopBases (𝑏 ≼ ω ∧ (topGen‘𝑏) = 𝐽))
3 ssrab2 4056 . . . . . . . . . . 11 {𝑞𝑏𝑥𝑞} ⊆ 𝑏
4 bastg 21574 . . . . . . . . . . . 12 (𝑏 ∈ TopBases → 𝑏 ⊆ (topGen‘𝑏))
543ad2ant1 1129 . . . . . . . . . . 11 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → 𝑏 ⊆ (topGen‘𝑏))
63, 5sstrid 3978 . . . . . . . . . 10 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → {𝑞𝑏𝑥𝑞} ⊆ (topGen‘𝑏))
7 fvex 6683 . . . . . . . . . . 11 (topGen‘𝑏) ∈ V
87elpw2 5248 . . . . . . . . . 10 ({𝑞𝑏𝑥𝑞} ∈ 𝒫 (topGen‘𝑏) ↔ {𝑞𝑏𝑥𝑞} ⊆ (topGen‘𝑏))
96, 8sylibr 236 . . . . . . . . 9 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → {𝑞𝑏𝑥𝑞} ∈ 𝒫 (topGen‘𝑏))
10 vex 3497 . . . . . . . . . . 11 𝑏 ∈ V
11 ssdomg 8555 . . . . . . . . . . 11 (𝑏 ∈ V → ({𝑞𝑏𝑥𝑞} ⊆ 𝑏 → {𝑞𝑏𝑥𝑞} ≼ 𝑏))
1210, 3, 11mp2 9 . . . . . . . . . 10 {𝑞𝑏𝑥𝑞} ≼ 𝑏
13 simp2 1133 . . . . . . . . . 10 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → 𝑏 ≼ ω)
14 domtr 8562 . . . . . . . . . 10 (({𝑞𝑏𝑥𝑞} ≼ 𝑏𝑏 ≼ ω) → {𝑞𝑏𝑥𝑞} ≼ ω)
1512, 13, 14sylancr 589 . . . . . . . . 9 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → {𝑞𝑏𝑥𝑞} ≼ ω)
16 eltg2b 21567 . . . . . . . . . . . 12 (𝑏 ∈ TopBases → (𝑜 ∈ (topGen‘𝑏) ↔ ∀𝑦𝑜𝑡𝑏 (𝑦𝑡𝑡𝑜)))
17163ad2ant1 1129 . . . . . . . . . . 11 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → (𝑜 ∈ (topGen‘𝑏) ↔ ∀𝑦𝑜𝑡𝑏 (𝑦𝑡𝑡𝑜)))
18 elequ1 2121 . . . . . . . . . . . . . . 15 (𝑦 = 𝑥 → (𝑦𝑡𝑥𝑡))
1918anbi1d 631 . . . . . . . . . . . . . 14 (𝑦 = 𝑥 → ((𝑦𝑡𝑡𝑜) ↔ (𝑥𝑡𝑡𝑜)))
2019rexbidv 3297 . . . . . . . . . . . . 13 (𝑦 = 𝑥 → (∃𝑡𝑏 (𝑦𝑡𝑡𝑜) ↔ ∃𝑡𝑏 (𝑥𝑡𝑡𝑜)))
2120rspccv 3620 . . . . . . . . . . . 12 (∀𝑦𝑜𝑡𝑏 (𝑦𝑡𝑡𝑜) → (𝑥𝑜 → ∃𝑡𝑏 (𝑥𝑡𝑡𝑜)))
22 id 22 . . . . . . . . . . . . . . . 16 ((𝑡𝑏𝑥𝑡) → (𝑡𝑏𝑥𝑡))
2322adantrr 715 . . . . . . . . . . . . . . 15 ((𝑡𝑏 ∧ (𝑥𝑡𝑡𝑜)) → (𝑡𝑏𝑥𝑡))
24 elequ2 2129 . . . . . . . . . . . . . . . 16 (𝑞 = 𝑡 → (𝑥𝑞𝑥𝑡))
2524elrab 3680 . . . . . . . . . . . . . . 15 (𝑡 ∈ {𝑞𝑏𝑥𝑞} ↔ (𝑡𝑏𝑥𝑡))
2623, 25sylibr 236 . . . . . . . . . . . . . 14 ((𝑡𝑏 ∧ (𝑥𝑡𝑡𝑜)) → 𝑡 ∈ {𝑞𝑏𝑥𝑞})
27 simprr 771 . . . . . . . . . . . . . 14 (((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) ∧ (𝑡𝑏 ∧ (𝑥𝑡𝑡𝑜))) → (𝑥𝑡𝑡𝑜))
28 elequ2 2129 . . . . . . . . . . . . . . . 16 (𝑝 = 𝑡 → (𝑥𝑝𝑥𝑡))
29 sseq1 3992 . . . . . . . . . . . . . . . 16 (𝑝 = 𝑡 → (𝑝𝑜𝑡𝑜))
3028, 29anbi12d 632 . . . . . . . . . . . . . . 15 (𝑝 = 𝑡 → ((𝑥𝑝𝑝𝑜) ↔ (𝑥𝑡𝑡𝑜)))
3130rspcev 3623 . . . . . . . . . . . . . 14 ((𝑡 ∈ {𝑞𝑏𝑥𝑞} ∧ (𝑥𝑡𝑡𝑜)) → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))
3226, 27, 31syl2an2 684 . . . . . . . . . . . . 13 (((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) ∧ (𝑡𝑏 ∧ (𝑥𝑡𝑡𝑜))) → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))
3332rexlimdvaa 3285 . . . . . . . . . . . 12 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → (∃𝑡𝑏 (𝑥𝑡𝑡𝑜) → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))
3421, 33syl9r 78 . . . . . . . . . . 11 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → (∀𝑦𝑜𝑡𝑏 (𝑦𝑡𝑡𝑜) → (𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))))
3517, 34sylbid 242 . . . . . . . . . 10 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → (𝑜 ∈ (topGen‘𝑏) → (𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))))
3635ralrimiv 3181 . . . . . . . . 9 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))
37 breq1 5069 . . . . . . . . . . 11 (𝑠 = {𝑞𝑏𝑥𝑞} → (𝑠 ≼ ω ↔ {𝑞𝑏𝑥𝑞} ≼ ω))
38 rexeq 3406 . . . . . . . . . . . . 13 (𝑠 = {𝑞𝑏𝑥𝑞} → (∃𝑝𝑠 (𝑥𝑝𝑝𝑜) ↔ ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))
3938imbi2d 343 . . . . . . . . . . . 12 (𝑠 = {𝑞𝑏𝑥𝑞} → ((𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)) ↔ (𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))))
4039ralbidv 3197 . . . . . . . . . . 11 (𝑠 = {𝑞𝑏𝑥𝑞} → (∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)) ↔ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜))))
4137, 40anbi12d 632 . . . . . . . . . 10 (𝑠 = {𝑞𝑏𝑥𝑞} → ((𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))) ↔ ({𝑞𝑏𝑥𝑞} ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))))
4241rspcev 3623 . . . . . . . . 9 (({𝑞𝑏𝑥𝑞} ∈ 𝒫 (topGen‘𝑏) ∧ ({𝑞𝑏𝑥𝑞} ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝 ∈ {𝑞𝑏𝑥𝑞} (𝑥𝑝𝑝𝑜)))) → ∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))
439, 15, 36, 42syl12anc 834 . . . . . . . 8 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω ∧ 𝑥 (topGen‘𝑏)) → ∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))
44433expia 1117 . . . . . . 7 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω) → (𝑥 (topGen‘𝑏) → ∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
45 unieq 4849 . . . . . . . . 9 ((topGen‘𝑏) = 𝐽 (topGen‘𝑏) = 𝐽)
4645eleq2d 2898 . . . . . . . 8 ((topGen‘𝑏) = 𝐽 → (𝑥 (topGen‘𝑏) ↔ 𝑥 𝐽))
47 pweq 4555 . . . . . . . . 9 ((topGen‘𝑏) = 𝐽 → 𝒫 (topGen‘𝑏) = 𝒫 𝐽)
48 raleq 3405 . . . . . . . . . 10 ((topGen‘𝑏) = 𝐽 → (∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)) ↔ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))
4948anbi2d 630 . . . . . . . . 9 ((topGen‘𝑏) = 𝐽 → ((𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))) ↔ (𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
5047, 49rexeqbidv 3402 . . . . . . . 8 ((topGen‘𝑏) = 𝐽 → (∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))) ↔ ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
5146, 50imbi12d 347 . . . . . . 7 ((topGen‘𝑏) = 𝐽 → ((𝑥 (topGen‘𝑏) → ∃𝑠 ∈ 𝒫 (topGen‘𝑏)(𝑠 ≼ ω ∧ ∀𝑜 ∈ (topGen‘𝑏)(𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))) ↔ (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))))
5244, 51syl5ibcom 247 . . . . . 6 ((𝑏 ∈ TopBases ∧ 𝑏 ≼ ω) → ((topGen‘𝑏) = 𝐽 → (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))))
5352expimpd 456 . . . . 5 (𝑏 ∈ TopBases → ((𝑏 ≼ ω ∧ (topGen‘𝑏) = 𝐽) → (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))))
5453rexlimiv 3280 . . . 4 (∃𝑏 ∈ TopBases (𝑏 ≼ ω ∧ (topGen‘𝑏) = 𝐽) → (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
552, 54sylbi 219 . . 3 (𝐽 ∈ 2ndω → (𝑥 𝐽 → ∃𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
5655ralrimiv 3181 . 2 (𝐽 ∈ 2ndω → ∀𝑥 𝐽𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜))))
57 eqid 2821 . . 3 𝐽 = 𝐽
5857is1stc2 22050 . 2 (𝐽 ∈ 1stω ↔ (𝐽 ∈ Top ∧ ∀𝑥 𝐽𝑠 ∈ 𝒫 𝐽(𝑠 ≼ ω ∧ ∀𝑜𝐽 (𝑥𝑜 → ∃𝑝𝑠 (𝑥𝑝𝑝𝑜)))))
591, 56, 58sylanbrc 585 1 (𝐽 ∈ 2ndω → 𝐽 ∈ 1stω)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 398  w3a 1083   = wceq 1537  wcel 2114  wral 3138  wrex 3139  {crab 3142  Vcvv 3494  wss 3936  𝒫 cpw 4539   cuni 4838   class class class wbr 5066  cfv 6355  ωcom 7580  cdom 8507  topGenctg 16711  Topctop 21501  TopBasesctb 21553  1stωc1stc 22045  2ndωc2ndc 22046
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2116  ax-9 2124  ax-10 2145  ax-11 2161  ax-12 2177  ax-ext 2793  ax-sep 5203  ax-nul 5210  ax-pow 5266  ax-pr 5330  ax-un 7461
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-3an 1085  df-tru 1540  df-ex 1781  df-nf 1785  df-sb 2070  df-mo 2622  df-eu 2654  df-clab 2800  df-cleq 2814  df-clel 2893  df-nfc 2963  df-ral 3143  df-rex 3144  df-rab 3147  df-v 3496  df-sbc 3773  df-dif 3939  df-un 3941  df-in 3943  df-ss 3952  df-nul 4292  df-if 4468  df-pw 4541  df-sn 4568  df-pr 4570  df-op 4574  df-uni 4839  df-br 5067  df-opab 5129  df-mpt 5147  df-id 5460  df-xp 5561  df-rel 5562  df-cnv 5563  df-co 5564  df-dm 5565  df-rn 5566  df-res 5567  df-ima 5568  df-iota 6314  df-fun 6357  df-fn 6358  df-f 6359  df-f1 6360  df-fo 6361  df-f1o 6362  df-fv 6363  df-dom 8511  df-topgen 16717  df-top 21502  df-bases 21554  df-1stc 22047  df-2ndc 22048
This theorem is referenced by:  dis1stc  22107
  Copyright terms: Public domain W3C validator