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

Theorem 2ndcsb 22057
 Description: Having a countable subbase is a sufficient condition for second-countability. (Contributed by Jeff Hankins, 17-Jan-2010.) (Proof shortened by Mario Carneiro, 21-Mar-2015.)
Assertion
Ref Expression
2ndcsb (𝐽 ∈ 2ndω ↔ ∃𝑥(𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽))
Distinct variable group:   𝑥,𝐽

Proof of Theorem 2ndcsb
Dummy variable 𝑦 is distinct from all other variables.
StepHypRef Expression
1 is2ndc 22054 . . 3 (𝐽 ∈ 2ndω ↔ ∃𝑥 ∈ TopBases (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽))
2 df-rex 3115 . . . 4 (∃𝑥 ∈ TopBases (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽) ↔ ∃𝑥(𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)))
3 simprl 770 . . . . . 6 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → 𝑥 ≼ ω)
4 ssfii 8871 . . . . . . . 8 (𝑥 ∈ TopBases → 𝑥 ⊆ (fi‘𝑥))
5 fvex 6662 . . . . . . . . . 10 (topGen‘𝑥) ∈ V
6 bastg 21574 . . . . . . . . . . 11 (𝑥 ∈ TopBases → 𝑥 ⊆ (topGen‘𝑥))
76adantr 484 . . . . . . . . . 10 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → 𝑥 ⊆ (topGen‘𝑥))
8 fiss 8876 . . . . . . . . . 10 (((topGen‘𝑥) ∈ V ∧ 𝑥 ⊆ (topGen‘𝑥)) → (fi‘𝑥) ⊆ (fi‘(topGen‘𝑥)))
95, 7, 8sylancr 590 . . . . . . . . 9 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (fi‘𝑥) ⊆ (fi‘(topGen‘𝑥)))
10 tgcl 21577 . . . . . . . . . . 11 (𝑥 ∈ TopBases → (topGen‘𝑥) ∈ Top)
1110adantr 484 . . . . . . . . . 10 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (topGen‘𝑥) ∈ Top)
12 fitop 21508 . . . . . . . . . 10 ((topGen‘𝑥) ∈ Top → (fi‘(topGen‘𝑥)) = (topGen‘𝑥))
1311, 12syl 17 . . . . . . . . 9 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (fi‘(topGen‘𝑥)) = (topGen‘𝑥))
149, 13sseqtrd 3958 . . . . . . . 8 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (fi‘𝑥) ⊆ (topGen‘𝑥))
15 2basgen 21598 . . . . . . . 8 ((𝑥 ⊆ (fi‘𝑥) ∧ (fi‘𝑥) ⊆ (topGen‘𝑥)) → (topGen‘𝑥) = (topGen‘(fi‘𝑥)))
164, 14, 15syl2an2r 684 . . . . . . 7 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (topGen‘𝑥) = (topGen‘(fi‘𝑥)))
17 simprr 772 . . . . . . 7 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (topGen‘𝑥) = 𝐽)
1816, 17eqtr3d 2838 . . . . . 6 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (topGen‘(fi‘𝑥)) = 𝐽)
193, 18jca 515 . . . . 5 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽))
2019eximi 1836 . . . 4 (∃𝑥(𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → ∃𝑥(𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽))
212, 20sylbi 220 . . 3 (∃𝑥 ∈ TopBases (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽) → ∃𝑥(𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽))
221, 21sylbi 220 . 2 (𝐽 ∈ 2ndω → ∃𝑥(𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽))
23 fibas 21585 . . . . 5 (fi‘𝑥) ∈ TopBases
24 simpl 486 . . . . . . 7 ((𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → 𝑥 ≼ ω)
25 fictb 9660 . . . . . . . 8 (𝑥 ∈ V → (𝑥 ≼ ω ↔ (fi‘𝑥) ≼ ω))
2625elv 3449 . . . . . . 7 (𝑥 ≼ ω ↔ (fi‘𝑥) ≼ ω)
2724, 26sylib 221 . . . . . 6 ((𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → (fi‘𝑥) ≼ ω)
28 simpr 488 . . . . . 6 ((𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → (topGen‘(fi‘𝑥)) = 𝐽)
2927, 28jca 515 . . . . 5 ((𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → ((fi‘𝑥) ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽))
30 breq1 5036 . . . . . . 7 (𝑦 = (fi‘𝑥) → (𝑦 ≼ ω ↔ (fi‘𝑥) ≼ ω))
31 fveqeq2 6658 . . . . . . 7 (𝑦 = (fi‘𝑥) → ((topGen‘𝑦) = 𝐽 ↔ (topGen‘(fi‘𝑥)) = 𝐽))
3230, 31anbi12d 633 . . . . . 6 (𝑦 = (fi‘𝑥) → ((𝑦 ≼ ω ∧ (topGen‘𝑦) = 𝐽) ↔ ((fi‘𝑥) ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽)))
3332rspcev 3574 . . . . 5 (((fi‘𝑥) ∈ TopBases ∧ ((fi‘𝑥) ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽)) → ∃𝑦 ∈ TopBases (𝑦 ≼ ω ∧ (topGen‘𝑦) = 𝐽))
3423, 29, 33sylancr 590 . . . 4 ((𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → ∃𝑦 ∈ TopBases (𝑦 ≼ ω ∧ (topGen‘𝑦) = 𝐽))
35 is2ndc 22054 . . . 4 (𝐽 ∈ 2ndω ↔ ∃𝑦 ∈ TopBases (𝑦 ≼ ω ∧ (topGen‘𝑦) = 𝐽))
3634, 35sylibr 237 . . 3 ((𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → 𝐽 ∈ 2ndω)
3736exlimiv 1931 . 2 (∃𝑥(𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → 𝐽 ∈ 2ndω)
3822, 37impbii 212 1 (𝐽 ∈ 2ndω ↔ ∃𝑥(𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽))
 Colors of variables: wff setvar class Syntax hints:   ↔ wb 209   ∧ wa 399   = wceq 1538  ∃wex 1781   ∈ wcel 2112  ∃wrex 3110  Vcvv 3444   ⊆ wss 3884   class class class wbr 5033  ‘cfv 6328  ωcom 7564   ≼ cdom 8494  ficfi 8862  topGenctg 16706  Topctop 21501  TopBasesctb 21553  2ndωc2ndc 22046 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 2114  ax-9 2122  ax-10 2143  ax-11 2159  ax-12 2176  ax-ext 2773  ax-rep 5157  ax-sep 5170  ax-nul 5177  ax-pow 5234  ax-pr 5298  ax-un 7445 This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2601  df-eu 2632  df-clab 2780  df-cleq 2794  df-clel 2873  df-nfc 2941  df-ne 2991  df-ral 3114  df-rex 3115  df-reu 3116  df-rmo 3117  df-rab 3118  df-v 3446  df-sbc 3724  df-csb 3832  df-dif 3887  df-un 3889  df-in 3891  df-ss 3901  df-pss 3903  df-nul 4247  df-if 4429  df-pw 4502  df-sn 4529  df-pr 4531  df-tp 4533  df-op 4535  df-uni 4804  df-int 4842  df-iun 4886  df-br 5034  df-opab 5096  df-mpt 5114  df-tr 5140  df-id 5428  df-eprel 5433  df-po 5442  df-so 5443  df-fr 5482  df-se 5483  df-we 5484  df-xp 5529  df-rel 5530  df-cnv 5531  df-co 5532  df-dm 5533  df-rn 5534  df-res 5535  df-ima 5536  df-pred 6120  df-ord 6166  df-on 6167  df-lim 6168  df-suc 6169  df-iota 6287  df-fun 6330  df-fn 6331  df-f 6332  df-f1 6333  df-fo 6334  df-f1o 6335  df-fv 6336  df-isom 6337  df-riota 7097  df-ov 7142  df-oprab 7143  df-mpo 7144  df-om 7565  df-1st 7675  df-2nd 7676  df-wrecs 7934  df-recs 7995  df-rdg 8033  df-1o 8089  df-2o 8090  df-oadd 8093  df-er 8276  df-map 8395  df-en 8497  df-dom 8498  df-sdom 8499  df-fin 8500  df-fi 8863  df-dju 9318  df-card 9356  df-acn 9359  df-topgen 16712  df-top 21502  df-bases 21554  df-2ndc 22048 This theorem is referenced by: (None)
 Copyright terms: Public domain W3C validator