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

Theorem elcls3 23058
Description: Membership in a closure in terms of the members of a basis. Theorem 6.5(b) of [Munkres] p. 95. (Contributed by NM, 26-Feb-2007.) (Revised by Mario Carneiro, 3-Sep-2015.)
Hypotheses
Ref Expression
elcls3.1 (𝜑𝐽 = (topGen‘𝐵))
elcls3.2 (𝜑𝑋 = 𝐽)
elcls3.3 (𝜑𝐵 ∈ TopBases)
elcls3.4 (𝜑𝑆𝑋)
elcls3.5 (𝜑𝑃𝑋)
Assertion
Ref Expression
elcls3 (𝜑 → (𝑃 ∈ ((cls‘𝐽)‘𝑆) ↔ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)))
Distinct variable groups:   𝑥,𝐵   𝑥,𝑃   𝑥,𝑆
Allowed substitution hints:   𝜑(𝑥)   𝐽(𝑥)   𝑋(𝑥)

Proof of Theorem elcls3
Dummy variables 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 elcls3.1 . . . 4 (𝜑𝐽 = (topGen‘𝐵))
2 elcls3.3 . . . . 5 (𝜑𝐵 ∈ TopBases)
3 tgcl 22944 . . . . 5 (𝐵 ∈ TopBases → (topGen‘𝐵) ∈ Top)
42, 3syl 17 . . . 4 (𝜑 → (topGen‘𝐵) ∈ Top)
51, 4eqeltrd 2837 . . 3 (𝜑𝐽 ∈ Top)
6 elcls3.4 . . . 4 (𝜑𝑆𝑋)
7 elcls3.2 . . . 4 (𝜑𝑋 = 𝐽)
86, 7sseqtrd 3959 . . 3 (𝜑𝑆 𝐽)
9 elcls3.5 . . . 4 (𝜑𝑃𝑋)
109, 7eleqtrd 2839 . . 3 (𝜑𝑃 𝐽)
11 eqid 2737 . . . 4 𝐽 = 𝐽
1211elcls 23048 . . 3 ((𝐽 ∈ Top ∧ 𝑆 𝐽𝑃 𝐽) → (𝑃 ∈ ((cls‘𝐽)‘𝑆) ↔ ∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅)))
135, 8, 10, 12syl3anc 1374 . 2 (𝜑 → (𝑃 ∈ ((cls‘𝐽)‘𝑆) ↔ ∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅)))
14 bastg 22941 . . . . . . . . 9 (𝐵 ∈ TopBases → 𝐵 ⊆ (topGen‘𝐵))
152, 14syl 17 . . . . . . . 8 (𝜑𝐵 ⊆ (topGen‘𝐵))
1615, 1sseqtrrd 3960 . . . . . . 7 (𝜑𝐵𝐽)
1716sseld 3921 . . . . . 6 (𝜑 → (𝑦𝐵𝑦𝐽))
1817imim1d 82 . . . . 5 (𝜑 → ((𝑦𝐽 → (𝑃𝑦 → (𝑦𝑆) ≠ ∅)) → (𝑦𝐵 → (𝑃𝑦 → (𝑦𝑆) ≠ ∅))))
1918ralimdv2 3147 . . . 4 (𝜑 → (∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅) → ∀𝑦𝐵 (𝑃𝑦 → (𝑦𝑆) ≠ ∅)))
20 eleq2w 2821 . . . . . 6 (𝑦 = 𝑥 → (𝑃𝑦𝑃𝑥))
21 ineq1 4154 . . . . . . 7 (𝑦 = 𝑥 → (𝑦𝑆) = (𝑥𝑆))
2221neeq1d 2992 . . . . . 6 (𝑦 = 𝑥 → ((𝑦𝑆) ≠ ∅ ↔ (𝑥𝑆) ≠ ∅))
2320, 22imbi12d 344 . . . . 5 (𝑦 = 𝑥 → ((𝑃𝑦 → (𝑦𝑆) ≠ ∅) ↔ (𝑃𝑥 → (𝑥𝑆) ≠ ∅)))
2423cbvralvw 3216 . . . 4 (∀𝑦𝐵 (𝑃𝑦 → (𝑦𝑆) ≠ ∅) ↔ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅))
2519, 24imbitrdi 251 . . 3 (𝜑 → (∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅) → ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)))
26 simprl 771 . . . . . . . 8 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → 𝑦𝐽)
271ad2antrr 727 . . . . . . . 8 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → 𝐽 = (topGen‘𝐵))
2826, 27eleqtrd 2839 . . . . . . 7 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → 𝑦 ∈ (topGen‘𝐵))
29 simprr 773 . . . . . . 7 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → 𝑃𝑦)
30 tg2 22940 . . . . . . 7 ((𝑦 ∈ (topGen‘𝐵) ∧ 𝑃𝑦) → ∃𝑧𝐵 (𝑃𝑧𝑧𝑦))
3128, 29, 30syl2anc 585 . . . . . 6 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → ∃𝑧𝐵 (𝑃𝑧𝑧𝑦))
32 eleq2w 2821 . . . . . . . . . . . . . 14 (𝑥 = 𝑧 → (𝑃𝑥𝑃𝑧))
33 ineq1 4154 . . . . . . . . . . . . . . 15 (𝑥 = 𝑧 → (𝑥𝑆) = (𝑧𝑆))
3433neeq1d 2992 . . . . . . . . . . . . . 14 (𝑥 = 𝑧 → ((𝑥𝑆) ≠ ∅ ↔ (𝑧𝑆) ≠ ∅))
3532, 34imbi12d 344 . . . . . . . . . . . . 13 (𝑥 = 𝑧 → ((𝑃𝑥 → (𝑥𝑆) ≠ ∅) ↔ (𝑃𝑧 → (𝑧𝑆) ≠ ∅)))
3635rspccva 3564 . . . . . . . . . . . 12 ((∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) ∧ 𝑧𝐵) → (𝑃𝑧 → (𝑧𝑆) ≠ ∅))
3736imp 406 . . . . . . . . . . 11 (((∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) ∧ 𝑧𝐵) ∧ 𝑃𝑧) → (𝑧𝑆) ≠ ∅)
38 ssdisj 4401 . . . . . . . . . . . . 13 ((𝑧𝑦 ∧ (𝑦𝑆) = ∅) → (𝑧𝑆) = ∅)
3938ex 412 . . . . . . . . . . . 12 (𝑧𝑦 → ((𝑦𝑆) = ∅ → (𝑧𝑆) = ∅))
4039necon3d 2954 . . . . . . . . . . 11 (𝑧𝑦 → ((𝑧𝑆) ≠ ∅ → (𝑦𝑆) ≠ ∅))
4137, 40syl5com 31 . . . . . . . . . 10 (((∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) ∧ 𝑧𝐵) ∧ 𝑃𝑧) → (𝑧𝑦 → (𝑦𝑆) ≠ ∅))
4241exp31 419 . . . . . . . . 9 (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → (𝑧𝐵 → (𝑃𝑧 → (𝑧𝑦 → (𝑦𝑆) ≠ ∅))))
4342imp4a 422 . . . . . . . 8 (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → (𝑧𝐵 → ((𝑃𝑧𝑧𝑦) → (𝑦𝑆) ≠ ∅)))
4443rexlimdv 3137 . . . . . . 7 (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → (∃𝑧𝐵 (𝑃𝑧𝑧𝑦) → (𝑦𝑆) ≠ ∅))
4544ad2antlr 728 . . . . . 6 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → (∃𝑧𝐵 (𝑃𝑧𝑧𝑦) → (𝑦𝑆) ≠ ∅))
4631, 45mpd 15 . . . . 5 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → (𝑦𝑆) ≠ ∅)
4746exp43 436 . . . 4 (𝜑 → (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → (𝑦𝐽 → (𝑃𝑦 → (𝑦𝑆) ≠ ∅))))
4847ralrimdv 3136 . . 3 (𝜑 → (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → ∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅)))
4925, 48impbid 212 . 2 (𝜑 → (∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅) ↔ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)))
5013, 49bitrd 279 1 (𝜑 → (𝑃 ∈ ((cls‘𝐽)‘𝑆) ↔ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395   = wceq 1542  wcel 2114  wne 2933  wral 3052  wrex 3062  cin 3889  wss 3890  c0 4274   cuni 4851  cfv 6492  topGenctg 17391  Topctop 22868  TopBasesctb 22920  clsccl 22993
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 1912  ax-6 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-10 2147  ax-11 2163  ax-12 2185  ax-ext 2709  ax-rep 5212  ax-sep 5231  ax-nul 5241  ax-pow 5302  ax-pr 5370  ax-un 7682
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-nf 1786  df-sb 2069  df-mo 2540  df-eu 2570  df-clab 2716  df-cleq 2729  df-clel 2812  df-nfc 2886  df-ne 2934  df-ral 3053  df-rex 3063  df-reu 3344  df-rab 3391  df-v 3432  df-sbc 3730  df-csb 3839  df-dif 3893  df-un 3895  df-in 3897  df-ss 3907  df-nul 4275  df-if 4468  df-pw 4544  df-sn 4569  df-pr 4571  df-op 4575  df-uni 4852  df-int 4891  df-iun 4936  df-iin 4937  df-br 5087  df-opab 5149  df-mpt 5168  df-id 5519  df-xp 5630  df-rel 5631  df-cnv 5632  df-co 5633  df-dm 5634  df-rn 5635  df-res 5636  df-ima 5637  df-iota 6448  df-fun 6494  df-fn 6495  df-f 6496  df-f1 6497  df-fo 6498  df-f1o 6499  df-fv 6500  df-topgen 17397  df-top 22869  df-bases 22921  df-cld 22994  df-ntr 22995  df-cls 22996
This theorem is referenced by:  2ndcsep  23434  ptclsg  23590  qdensere  24744
  Copyright terms: Public domain W3C validator