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

Theorem elcls3 23201
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 23087 . . . . 5 (𝐵 ∈ TopBases → (topGen‘𝐵) ∈ Top)
42, 3syl 18 . . . 4 (𝜑 → (topGen‘𝐵) ∈ Top)
51, 4eqeltrd 2865 . . 3 (𝜑𝐽 ∈ Top)
6 elcls3.4 . . . 4 (𝜑𝑆𝑋)
7 elcls3.2 . . . 4 (𝜑𝑋 = 𝐽)
86, 7sseqtrd 3975 . . 3 (𝜑𝑆 𝐽)
9 elcls3.5 . . . 4 (𝜑𝑃𝑋)
109, 7eleqtrd 2867 . . 3 (𝜑𝑃 𝐽)
11 eqid 2765 . . . 4 𝐽 = 𝐽
1211elcls 23191 . . 3 ((𝐽 ∈ Top ∧ 𝑆 𝐽𝑃 𝐽) → (𝑃 ∈ ((cls‘𝐽)‘𝑆) ↔ ∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅)))
135, 8, 10, 12syl3anc 1394 . 2 (𝜑 → (𝑃 ∈ ((cls‘𝐽)‘𝑆) ↔ ∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅)))
14 bastg 23084 . . . . . . . . 9 (𝐵 ∈ TopBases → 𝐵 ⊆ (topGen‘𝐵))
152, 14syl 18 . . . . . . . 8 (𝜑𝐵 ⊆ (topGen‘𝐵))
1615, 1sseqtrrd 3976 . . . . . . 7 (𝜑𝐵𝐽)
1716sseld 3938 . . . . . 6 (𝜑 → (𝑦𝐵𝑦𝐽))
1817imim1d 83 . . . . 5 (𝜑 → ((𝑦𝐽 → (𝑃𝑦 → (𝑦𝑆) ≠ ∅)) → (𝑦𝐵 → (𝑃𝑦 → (𝑦𝑆) ≠ ∅))))
1918ralimdv2 3174 . . . 4 (𝜑 → (∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅) → ∀𝑦𝐵 (𝑃𝑦 → (𝑦𝑆) ≠ ∅)))
20 eleq2w 2849 . . . . . 6 (𝑦 = 𝑥 → (𝑃𝑦𝑃𝑥))
21 ineq1 4168 . . . . . . 7 (𝑦 = 𝑥 → (𝑦𝑆) = (𝑥𝑆))
2221neeq1d 3019 . . . . . 6 (𝑦 = 𝑥 → ((𝑦𝑆) ≠ ∅ ↔ (𝑥𝑆) ≠ ∅))
2320, 22imbi12d 347 . . . . 5 (𝑦 = 𝑥 → ((𝑃𝑦 → (𝑦𝑆) ≠ ∅) ↔ (𝑃𝑥 → (𝑥𝑆) ≠ ∅)))
2423cbvralvw 3243 . . . 4 (∀𝑦𝐵 (𝑃𝑦 → (𝑦𝑆) ≠ ∅) ↔ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅))
2519, 24imbitrdi 254 . . 3 (𝜑 → (∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅) → ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)))
26 simprl 782 . . . . . . . 8 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → 𝑦𝐽)
271ad2antrr 738 . . . . . . . 8 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → 𝐽 = (topGen‘𝐵))
2826, 27eleqtrd 2867 . . . . . . 7 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → 𝑦 ∈ (topGen‘𝐵))
29 simprr 784 . . . . . . 7 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → 𝑃𝑦)
30 tg2 23083 . . . . . . 7 ((𝑦 ∈ (topGen‘𝐵) ∧ 𝑃𝑦) → ∃𝑧𝐵 (𝑃𝑧𝑧𝑦))
3128, 29, 30syl2anc 595 . . . . . 6 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → ∃𝑧𝐵 (𝑃𝑧𝑧𝑦))
32 eleq2w 2849 . . . . . . . . . . . . . 14 (𝑥 = 𝑧 → (𝑃𝑥𝑃𝑧))
33 ineq1 4168 . . . . . . . . . . . . . . 15 (𝑥 = 𝑧 → (𝑥𝑆) = (𝑧𝑆))
3433neeq1d 3019 . . . . . . . . . . . . . 14 (𝑥 = 𝑧 → ((𝑥𝑆) ≠ ∅ ↔ (𝑧𝑆) ≠ ∅))
3532, 34imbi12d 347 . . . . . . . . . . . . 13 (𝑥 = 𝑧 → ((𝑃𝑥 → (𝑥𝑆) ≠ ∅) ↔ (𝑃𝑧 → (𝑧𝑆) ≠ ∅)))
3635rspccva 3583 . . . . . . . . . . . 12 ((∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) ∧ 𝑧𝐵) → (𝑃𝑧 → (𝑧𝑆) ≠ ∅))
3736imp 411 . . . . . . . . . . 11 (((∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) ∧ 𝑧𝐵) ∧ 𝑃𝑧) → (𝑧𝑆) ≠ ∅)
38 ssdisj 4417 . . . . . . . . . . . . 13 ((𝑧𝑦 ∧ (𝑦𝑆) = ∅) → (𝑧𝑆) = ∅)
3938ex 417 . . . . . . . . . . . 12 (𝑧𝑦 → ((𝑦𝑆) = ∅ → (𝑧𝑆) = ∅))
4039necon3d 2981 . . . . . . . . . . 11 (𝑧𝑦 → ((𝑧𝑆) ≠ ∅ → (𝑦𝑆) ≠ ∅))
4137, 40syl5com 32 . . . . . . . . . 10 (((∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) ∧ 𝑧𝐵) ∧ 𝑃𝑧) → (𝑧𝑦 → (𝑦𝑆) ≠ ∅))
4241exp31 424 . . . . . . . . 9 (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → (𝑧𝐵 → (𝑃𝑧 → (𝑧𝑦 → (𝑦𝑆) ≠ ∅))))
4342imp4a 427 . . . . . . . 8 (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → (𝑧𝐵 → ((𝑃𝑧𝑧𝑦) → (𝑦𝑆) ≠ ∅)))
4443rexlimdv 3164 . . . . . . 7 (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → (∃𝑧𝐵 (𝑃𝑧𝑧𝑦) → (𝑦𝑆) ≠ ∅))
4544ad2antlr 739 . . . . . 6 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → (∃𝑧𝐵 (𝑃𝑧𝑧𝑦) → (𝑦𝑆) ≠ ∅))
4631, 45mpd 16 . . . . 5 (((𝜑 ∧ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)) ∧ (𝑦𝐽𝑃𝑦)) → (𝑦𝑆) ≠ ∅)
4746exp43 441 . . . 4 (𝜑 → (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → (𝑦𝐽 → (𝑃𝑦 → (𝑦𝑆) ≠ ∅))))
4847ralrimdv 3163 . . 3 (𝜑 → (∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅) → ∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅)))
4925, 48impbid 215 . 2 (𝜑 → (∀𝑦𝐽 (𝑃𝑦 → (𝑦𝑆) ≠ ∅) ↔ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)))
5013, 49bitrd 282 1 (𝜑 → (𝑃 ∈ ((cls‘𝐽)‘𝑆) ↔ ∀𝑥𝐵 (𝑃𝑥 → (𝑥𝑆) ≠ ∅)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 400   = wceq 1563  wcel 2145  wne 2960  wral 3079  wrex 3089  cin 3906  wss 3907  c0 4288   cuni 4868  cfv 6525  topGenctg 17480  Topctop 23011  TopBasesctb 23063  clsccl 23136
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1818  ax-4 1832  ax-5 1933  ax-6 1990  ax-7 2031  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2737  ax-rep 5232  ax-sep 5251  ax-nul 5261  ax-pow 5327  ax-pr 5395  ax-un 7722
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3an 1103  df-tru 1566  df-fal 1576  df-ex 1803  df-nf 1807  df-sb 2094  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-ral 3080  df-rex 3090  df-reu 3371  df-rab 3418  df-v 3459  df-sbc 3748  df-csb 3856  df-dif 3910  df-un 3912  df-in 3914  df-ss 3924  df-nul 4289  df-if 4484  df-pw 4560  df-sn 4586  df-pr 4588  df-op 4592  df-uni 4869  df-int 4909  df-iun 4954  df-iin 4955  df-br 5106  df-opab 5168  df-mpt 5187  df-id 5547  df-xp 5658  df-rel 5659  df-cnv 5660  df-co 5661  df-dm 5662  df-rn 5663  df-res 5664  df-ima 5665  df-iota 6481  df-fun 6527  df-fn 6528  df-f 6529  df-f1 6530  df-fo 6531  df-f1o 6532  df-fv 6533  df-topgen 17486  df-top 23012  df-bases 23064  df-cld 23137  df-ntr 23138  df-cls 23139
This theorem is referenced by:  2ndcsep  23577  ptclsg  23733  qdensere  24887
  Copyright terms: Public domain W3C validator