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

Theorem elcls3 23073
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 22959 . . . . 5 (𝐵 ∈ TopBases → (topGen‘𝐵) ∈ Top)
42, 3syl 17 . . . 4 (𝜑 → (topGen‘𝐵) ∈ Top)
51, 4eqeltrd 2840 . . 3 (𝜑𝐽 ∈ Top)
6 elcls3.4 . . . 4 (𝜑𝑆𝑋)
7 elcls3.2 . . . 4 (𝜑𝑋 = 𝐽)
86, 7sseqtrd 3958 . . 3 (𝜑𝑆 𝐽)
9 elcls3.5 . . . 4 (𝜑𝑃𝑋)
109, 7eleqtrd 2842 . . 3 (𝜑𝑃 𝐽)
11 eqid 2740 . . . 4 𝐽 = 𝐽
1211elcls 23063 . . 3 ((𝐽 ∈ Top ∧ 𝑆 𝐽𝑃 𝐽) → (𝑃 ∈ ((cls‘𝐽)‘𝑆) ↔ ∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅)))
135, 8, 10, 12syl3anc 1379 . 2 (𝜑 → (𝑃 ∈ ((cls‘𝐽)‘𝑆) ↔ ∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅)))
14 bastg 22956 . . . . . . . . 9 (𝐵 ∈ TopBases → 𝐵 ⊆ (topGen‘𝐵))
152, 14syl 17 . . . . . . . 8 (𝜑𝐵 ⊆ (topGen‘𝐵))
1615, 1sseqtrrd 3959 . . . . . . 7 (𝜑𝐵𝐽)
1716sseld 3921 . . . . . 6 (𝜑 → (𝑦𝐵𝑦𝐽))
1817imim1d 82 . . . . 5 (𝜑 → ((𝑦𝐽 → (𝑃𝑦 → (𝑦𝑆) ≠ ∅)) → (𝑦𝐵 → (𝑃𝑦 → (𝑦𝑆) ≠ ∅))))
1918ralimdv2 3149 . . . 4 (𝜑 → (∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅) → ∀𝑦𝐵 (𝑃𝑦 → (𝑦𝑆) ≠ ∅)))
20 eleq2w 2824 . . . . . 6 (𝑦 = 𝑥 → (𝑃𝑦𝑃𝑥))
21 ineq1 4149 . . . . . . 7 (𝑦 = 𝑥 → (𝑦𝑆) = (𝑥𝑆))
2221neeq1d 2994 . . . . . 6 (𝑦 = 𝑥 → ((𝑦𝑆) ≠ ∅ ↔ (𝑥𝑆) ≠ ∅))
2320, 22imbi12d 345 . . . . 5 (𝑦 = 𝑥 → ((𝑃𝑦 → (𝑦𝑆) ≠ ∅) ↔ (𝑃𝑥 → (𝑥𝑆) ≠ ∅)))
2423cbvralvw 3218 . . . 4 (∀𝑦𝐵 (𝑃𝑦 → (𝑦𝑆) ≠ ∅) ↔ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅))
2519, 24imbitrdi 252 . . 3 (𝜑 → (∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅) → ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)))
26 simprl 776 . . . . . . . 8 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → 𝑦𝐽)
271ad2antrr 732 . . . . . . . 8 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → 𝐽 = (topGen‘𝐵))
2826, 27eleqtrd 2842 . . . . . . 7 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → 𝑦 ∈ (topGen‘𝐵))
29 simprr 778 . . . . . . 7 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → 𝑃𝑦)
30 tg2 22955 . . . . . . 7 ((𝑦 ∈ (topGen‘𝐵) ∧ 𝑃𝑦) → ∃𝑧𝐵 (𝑃𝑧𝑧𝑦))
3128, 29, 30syl2anc 590 . . . . . 6 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → ∃𝑧𝐵 (𝑃𝑧𝑧𝑦))
32 eleq2w 2824 . . . . . . . . . . . . . 14 (𝑥 = 𝑧 → (𝑃𝑥𝑃𝑧))
33 ineq1 4149 . . . . . . . . . . . . . . 15 (𝑥 = 𝑧 → (𝑥𝑆) = (𝑧𝑆))
3433neeq1d 2994 . . . . . . . . . . . . . 14 (𝑥 = 𝑧 → ((𝑥𝑆) ≠ ∅ ↔ (𝑧𝑆) ≠ ∅))
3532, 34imbi12d 345 . . . . . . . . . . . . 13 (𝑥 = 𝑧 → ((𝑃𝑥 → (𝑥𝑆) ≠ ∅) ↔ (𝑃𝑧 → (𝑧𝑆) ≠ ∅)))
3635rspccva 3566 . . . . . . . . . . . 12 ((∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) ∧ 𝑧𝐵) → (𝑃𝑧 → (𝑧𝑆) ≠ ∅))
3736imp 407 . . . . . . . . . . 11 (((∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) ∧ 𝑧𝐵) ∧ 𝑃𝑧) → (𝑧𝑆) ≠ ∅)
38 ssdisj 4395 . . . . . . . . . . . . 13 ((𝑧𝑦 ∧ (𝑦𝑆) = ∅) → (𝑧𝑆) = ∅)
3938ex 413 . . . . . . . . . . . 12 (𝑧𝑦 → ((𝑦𝑆) = ∅ → (𝑧𝑆) = ∅))
4039necon3d 2956 . . . . . . . . . . 11 (𝑧𝑦 → ((𝑧𝑆) ≠ ∅ → (𝑦𝑆) ≠ ∅))
4137, 40syl5com 31 . . . . . . . . . 10 (((∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) ∧ 𝑧𝐵) ∧ 𝑃𝑧) → (𝑧𝑦 → (𝑦𝑆) ≠ ∅))
4241exp31 420 . . . . . . . . 9 (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → (𝑧𝐵 → (𝑃𝑧 → (𝑧𝑦 → (𝑦𝑆) ≠ ∅))))
4342imp4a 423 . . . . . . . 8 (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → (𝑧𝐵 → ((𝑃𝑧𝑧𝑦) → (𝑦𝑆) ≠ ∅)))
4443rexlimdv 3139 . . . . . . 7 (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → (∃𝑧𝐵 (𝑃𝑧𝑧𝑦) → (𝑦𝑆) ≠ ∅))
4544ad2antlr 733 . . . . . 6 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → (∃𝑧𝐵 (𝑃𝑧𝑧𝑦) → (𝑦𝑆) ≠ ∅))
4631, 45mpd 15 . . . . 5 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → (𝑦𝑆) ≠ ∅)
4746exp43 437 . . . 4 (𝜑 → (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → (𝑦𝐽 → (𝑃𝑦 → (𝑦𝑆) ≠ ∅))))
4847ralrimdv 3138 . . 3 (𝜑 → (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → ∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅)))
4925, 48impbid 213 . 2 (𝜑 → (∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅) ↔ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)))
5013, 49bitrd 280 1 (𝜑 → (𝑃 ∈ ((cls‘𝐽)‘𝑆) ↔ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 207  wa 396   = wceq 1547  wcel 2119  wne 2935  wral 3054  wrex 3064  cin 3889  wss 3890  c0 4268   cuni 4845  cfv 6492  topGenctg 17398  Topctop 22883  TopBasesctb 22935  clsccl 23008
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1802  ax-4 1816  ax-5 1917  ax-6 1974  ax-7 2015  ax-8 2121  ax-9 2129  ax-10 2152  ax-11 2168  ax-12 2189  ax-ext 2712  ax-rep 5206  ax-sep 5225  ax-nul 5235  ax-pow 5301  ax-pr 5369  ax-un 7685
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 854  df-3an 1094  df-tru 1550  df-fal 1560  df-ex 1787  df-nf 1791  df-sb 2074  df-mo 2543  df-eu 2573  df-clab 2719  df-cleq 2732  df-clel 2815  df-nfc 2889  df-ne 2936  df-ral 3055  df-rex 3065  df-reu 3346  df-rab 3393  df-v 3434  df-sbc 3731  df-csb 3839  df-dif 3893  df-un 3895  df-in 3897  df-ss 3907  df-nul 4269  df-if 4462  df-pw 4538  df-sn 4563  df-pr 4565  df-op 4569  df-uni 4846  df-int 4885  df-iun 4930  df-iin 4931  df-br 5080  df-opab 5142  df-mpt 5161  df-id 5520  df-xp 5631  df-rel 5632  df-cnv 5633  df-co 5634  df-dm 5635  df-rn 5636  df-res 5637  df-ima 5638  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 17404  df-top 22884  df-bases 22936  df-cld 23009  df-ntr 23010  df-cls 23011
This theorem is referenced by:  2ndcsep  23449  ptclsg  23605  qdensere  24759
  Copyright terms: Public domain W3C validator