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

Theorem 2ndcsb 21252
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 21249 . . 3 (𝐽 ∈ 2nd𝜔 ↔ ∃𝑥 ∈ TopBases (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽))
2 df-rex 2918 . . . 4 (∃𝑥 ∈ TopBases (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽) ↔ ∃𝑥(𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)))
3 simprl 794 . . . . . 6 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → 𝑥 ≼ ω)
4 ssfii 8325 . . . . . . . . 9 (𝑥 ∈ TopBases → 𝑥 ⊆ (fi‘𝑥))
54adantr 481 . . . . . . . 8 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → 𝑥 ⊆ (fi‘𝑥))
6 fvex 6201 . . . . . . . . . 10 (topGen‘𝑥) ∈ V
7 bastg 20770 . . . . . . . . . . 11 (𝑥 ∈ TopBases → 𝑥 ⊆ (topGen‘𝑥))
87adantr 481 . . . . . . . . . 10 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → 𝑥 ⊆ (topGen‘𝑥))
9 fiss 8330 . . . . . . . . . 10 (((topGen‘𝑥) ∈ V ∧ 𝑥 ⊆ (topGen‘𝑥)) → (fi‘𝑥) ⊆ (fi‘(topGen‘𝑥)))
106, 8, 9sylancr 695 . . . . . . . . 9 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (fi‘𝑥) ⊆ (fi‘(topGen‘𝑥)))
11 tgcl 20773 . . . . . . . . . . 11 (𝑥 ∈ TopBases → (topGen‘𝑥) ∈ Top)
1211adantr 481 . . . . . . . . . 10 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (topGen‘𝑥) ∈ Top)
13 fitop 20705 . . . . . . . . . 10 ((topGen‘𝑥) ∈ Top → (fi‘(topGen‘𝑥)) = (topGen‘𝑥))
1412, 13syl 17 . . . . . . . . 9 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (fi‘(topGen‘𝑥)) = (topGen‘𝑥))
1510, 14sseqtrd 3641 . . . . . . . 8 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (fi‘𝑥) ⊆ (topGen‘𝑥))
16 2basgen 20794 . . . . . . . 8 ((𝑥 ⊆ (fi‘𝑥) ∧ (fi‘𝑥) ⊆ (topGen‘𝑥)) → (topGen‘𝑥) = (topGen‘(fi‘𝑥)))
175, 15, 16syl2anc 693 . . . . . . 7 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (topGen‘𝑥) = (topGen‘(fi‘𝑥)))
18 simprr 796 . . . . . . 7 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (topGen‘𝑥) = 𝐽)
1917, 18eqtr3d 2658 . . . . . 6 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (topGen‘(fi‘𝑥)) = 𝐽)
203, 19jca 554 . . . . 5 ((𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → (𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽))
2120eximi 1762 . . . 4 (∃𝑥(𝑥 ∈ TopBases ∧ (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽)) → ∃𝑥(𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽))
222, 21sylbi 207 . . 3 (∃𝑥 ∈ TopBases (𝑥 ≼ ω ∧ (topGen‘𝑥) = 𝐽) → ∃𝑥(𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽))
231, 22sylbi 207 . 2 (𝐽 ∈ 2nd𝜔 → ∃𝑥(𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽))
24 fibas 20781 . . . . 5 (fi‘𝑥) ∈ TopBases
25 simpl 473 . . . . . . 7 ((𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → 𝑥 ≼ ω)
26 vex 3203 . . . . . . . 8 𝑥 ∈ V
27 fictb 9067 . . . . . . . 8 (𝑥 ∈ V → (𝑥 ≼ ω ↔ (fi‘𝑥) ≼ ω))
2826, 27ax-mp 5 . . . . . . 7 (𝑥 ≼ ω ↔ (fi‘𝑥) ≼ ω)
2925, 28sylib 208 . . . . . 6 ((𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → (fi‘𝑥) ≼ ω)
30 simpr 477 . . . . . 6 ((𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → (topGen‘(fi‘𝑥)) = 𝐽)
3129, 30jca 554 . . . . 5 ((𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → ((fi‘𝑥) ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽))
32 breq1 4656 . . . . . . 7 (𝑦 = (fi‘𝑥) → (𝑦 ≼ ω ↔ (fi‘𝑥) ≼ ω))
33 fveq2 6191 . . . . . . . 8 (𝑦 = (fi‘𝑥) → (topGen‘𝑦) = (topGen‘(fi‘𝑥)))
3433eqeq1d 2624 . . . . . . 7 (𝑦 = (fi‘𝑥) → ((topGen‘𝑦) = 𝐽 ↔ (topGen‘(fi‘𝑥)) = 𝐽))
3532, 34anbi12d 747 . . . . . 6 (𝑦 = (fi‘𝑥) → ((𝑦 ≼ ω ∧ (topGen‘𝑦) = 𝐽) ↔ ((fi‘𝑥) ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽)))
3635rspcev 3309 . . . . 5 (((fi‘𝑥) ∈ TopBases ∧ ((fi‘𝑥) ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽)) → ∃𝑦 ∈ TopBases (𝑦 ≼ ω ∧ (topGen‘𝑦) = 𝐽))
3724, 31, 36sylancr 695 . . . 4 ((𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → ∃𝑦 ∈ TopBases (𝑦 ≼ ω ∧ (topGen‘𝑦) = 𝐽))
38 is2ndc 21249 . . . 4 (𝐽 ∈ 2nd𝜔 ↔ ∃𝑦 ∈ TopBases (𝑦 ≼ ω ∧ (topGen‘𝑦) = 𝐽))
3937, 38sylibr 224 . . 3 ((𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → 𝐽 ∈ 2nd𝜔)
4039exlimiv 1858 . 2 (∃𝑥(𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽) → 𝐽 ∈ 2nd𝜔)
4123, 40impbii 199 1 (𝐽 ∈ 2nd𝜔 ↔ ∃𝑥(𝑥 ≼ ω ∧ (topGen‘(fi‘𝑥)) = 𝐽))
Colors of variables: wff setvar class
Syntax hints:  wb 196  wa 384   = wceq 1483  wex 1704  wcel 1990  wrex 2913  Vcvv 3200  wss 3574   class class class wbr 4653  cfv 5888  ωcom 7065  cdom 7953  ficfi 8316  topGenctg 16098  Topctop 20698  TopBasesctb 20749  2nd𝜔c2ndc 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-3or 1038  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-rmo 2920  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-pss 3590  df-nul 3916  df-if 4087  df-pw 4160  df-sn 4178  df-pr 4180  df-tp 4182  df-op 4184  df-uni 4437  df-int 4476  df-iun 4522  df-br 4654  df-opab 4713  df-mpt 4730  df-tr 4753  df-id 5024  df-eprel 5029  df-po 5035  df-so 5036  df-fr 5073  df-se 5074  df-we 5075  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-pred 5680  df-ord 5726  df-on 5727  df-lim 5728  df-suc 5729  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-isom 5897  df-riota 6611  df-ov 6653  df-oprab 6654  df-mpt2 6655  df-om 7066  df-1st 7168  df-2nd 7169  df-wrecs 7407  df-recs 7468  df-rdg 7506  df-1o 7560  df-2o 7561  df-oadd 7564  df-er 7742  df-map 7859  df-en 7956  df-dom 7957  df-sdom 7958  df-fin 7959  df-fi 8317  df-card 8765  df-acn 8768  df-cda 8990  df-topgen 16104  df-top 20699  df-bases 20750  df-2ndc 21243
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator