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

Theorem hausnei2 21889
Description: The Hausdorff condition still holds if one considers general neighborhoods instead of open sets. (Contributed by Jeff Hankins, 5-Sep-2009.)
Assertion
Ref Expression
hausnei2 (𝐽 ∈ (TopOn‘𝑋) → (𝐽 ∈ Haus ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
Distinct variable groups:   𝑥,𝑦   𝑣,𝑢,𝑥,𝑦,𝐽   𝑢,𝑋,𝑣,𝑥,𝑦

Proof of Theorem hausnei2
Dummy variables 𝑚 𝑛 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 ishaus2 21887 . 2 (𝐽 ∈ (TopOn‘𝑋) → (𝐽 ∈ Haus ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
2 topontop 21449 . . 3 (𝐽 ∈ (TopOn‘𝑋) → 𝐽 ∈ Top)
3 simp1 1128 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝐽 ∈ Top)
4 simp2 1129 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝑚𝐽)
5 simp1 1128 . . . . . . . . . . 11 ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → 𝑥𝑚)
6 opnneip 21655 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑥𝑚) → 𝑚 ∈ ((nei‘𝐽)‘{𝑥}))
73, 4, 5, 6syl2an3an 1414 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑚 ∈ ((nei‘𝐽)‘{𝑥}))
8 simp3 1130 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝑛𝐽)
9 simp2 1129 . . . . . . . . . . 11 ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → 𝑦𝑛)
10 opnneip 21655 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑛𝐽𝑦𝑛) → 𝑛 ∈ ((nei‘𝐽)‘{𝑦}))
113, 8, 9, 10syl2an3an 1414 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑛 ∈ ((nei‘𝐽)‘{𝑦}))
12 simpr3 1188 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → (𝑚𝑛) = ∅)
13 ineq1 4178 . . . . . . . . . . . 12 (𝑢 = 𝑚 → (𝑢𝑣) = (𝑚𝑣))
1413eqeq1d 2820 . . . . . . . . . . 11 (𝑢 = 𝑚 → ((𝑢𝑣) = ∅ ↔ (𝑚𝑣) = ∅))
15 ineq2 4180 . . . . . . . . . . . 12 (𝑣 = 𝑛 → (𝑚𝑣) = (𝑚𝑛))
1615eqeq1d 2820 . . . . . . . . . . 11 (𝑣 = 𝑛 → ((𝑚𝑣) = ∅ ↔ (𝑚𝑛) = ∅))
1714, 16rspc2ev 3632 . . . . . . . . . 10 ((𝑚 ∈ ((nei‘𝐽)‘{𝑥}) ∧ 𝑛 ∈ ((nei‘𝐽)‘{𝑦}) ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)
187, 11, 12, 17syl3anc 1363 . . . . . . . . 9 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)
1918ex 413 . . . . . . . 8 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
20193expib 1114 . . . . . . 7 (𝐽 ∈ Top → ((𝑚𝐽𝑛𝐽) → ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
2120rexlimdvv 3290 . . . . . 6 (𝐽 ∈ Top → (∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
22 neii2 21644 . . . . . . . . 9 ((𝐽 ∈ Top ∧ 𝑢 ∈ ((nei‘𝐽)‘{𝑥})) → ∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢))
2322ex 413 . . . . . . . 8 (𝐽 ∈ Top → (𝑢 ∈ ((nei‘𝐽)‘{𝑥}) → ∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢)))
24 neii2 21644 . . . . . . . . 9 ((𝐽 ∈ Top ∧ 𝑣 ∈ ((nei‘𝐽)‘{𝑦})) → ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣))
2524ex 413 . . . . . . . 8 (𝐽 ∈ Top → (𝑣 ∈ ((nei‘𝐽)‘{𝑦}) → ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)))
26 vex 3495 . . . . . . . . . . . . . . 15 𝑥 ∈ V
2726snss 4710 . . . . . . . . . . . . . 14 (𝑥𝑚 ↔ {𝑥} ⊆ 𝑚)
2827anbi1i 623 . . . . . . . . . . . . 13 ((𝑥𝑚𝑚𝑢) ↔ ({𝑥} ⊆ 𝑚𝑚𝑢))
29 vex 3495 . . . . . . . . . . . . . . . . . . . . . . 23 𝑦 ∈ V
3029snss 4710 . . . . . . . . . . . . . . . . . . . . . 22 (𝑦𝑛 ↔ {𝑦} ⊆ 𝑛)
3130anbi1i 623 . . . . . . . . . . . . . . . . . . . . 21 ((𝑦𝑛𝑛𝑣) ↔ ({𝑦} ⊆ 𝑛𝑛𝑣))
32 simp1l 1189 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → 𝑥𝑚)
33 simp2l 1191 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → 𝑦𝑛)
34 ss2in 4210 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑚𝑢𝑛𝑣) → (𝑚𝑛) ⊆ (𝑢𝑣))
35 ssn0 4351 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((𝑚𝑛) ⊆ (𝑢𝑣) ∧ (𝑚𝑛) ≠ ∅) → (𝑢𝑣) ≠ ∅)
3635ex 413 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑚𝑛) ⊆ (𝑢𝑣) → ((𝑚𝑛) ≠ ∅ → (𝑢𝑣) ≠ ∅))
3736necon4d 3037 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑚𝑛) ⊆ (𝑢𝑣) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
3834, 37syl 17 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑚𝑢𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
3938ad2ant2l 742 . . . . . . . . . . . . . . . . . . . . . . . 24 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣)) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
40393impia 1109 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → (𝑚𝑛) = ∅)
4132, 33, 403jca 1120 . . . . . . . . . . . . . . . . . . . . . 22 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))
42413exp 1111 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥𝑚𝑚𝑢) → ((𝑦𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
4331, 42syl5bir 244 . . . . . . . . . . . . . . . . . . . 20 ((𝑥𝑚𝑚𝑢) → (({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
4443com3r 87 . . . . . . . . . . . . . . . . . . 19 ((𝑢𝑣) = ∅ → ((𝑥𝑚𝑚𝑢) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
4544imp 407 . . . . . . . . . . . . . . . . . 18 (((𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
46453adant1 1122 . . . . . . . . . . . . . . . . 17 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
4746reximdv 3270 . . . . . . . . . . . . . . . 16 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
48473exp 1111 . . . . . . . . . . . . . . 15 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → ((𝑥𝑚𝑚𝑢) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
4948com34 91 . . . . . . . . . . . . . 14 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑥𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
50493imp 1103 . . . . . . . . . . . . 13 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → ((𝑥𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5128, 50syl5bir 244 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → (({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5251reximdv 3270 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
53523exp 1111 . . . . . . . . . 10 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
5453com24 95 . . . . . . . . 9 (𝐽 ∈ Top → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
5554impd 411 . . . . . . . 8 (𝐽 ∈ Top → ((∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
5623, 25, 55syl2and 607 . . . . . . 7 (𝐽 ∈ Top → ((𝑢 ∈ ((nei‘𝐽)‘{𝑥}) ∧ 𝑣 ∈ ((nei‘𝐽)‘{𝑦})) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
5756rexlimdvv 3290 . . . . . 6 (𝐽 ∈ Top → (∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5821, 57impbid 213 . . . . 5 (𝐽 ∈ Top → (∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) ↔ ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
5958imbi2d 342 . . . 4 (𝐽 ∈ Top → ((𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
60592ralbidv 3196 . . 3 (𝐽 ∈ Top → (∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
612, 60syl 17 . 2 (𝐽 ∈ (TopOn‘𝑋) → (∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
621, 61bitrd 280 1 (𝐽 ∈ (TopOn‘𝑋) → (𝐽 ∈ Haus ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 207  wa 396  w3a 1079   = wceq 1528  wcel 2105  wne 3013  wral 3135  wrex 3136  cin 3932  wss 3933  c0 4288  {csn 4557  cfv 6348  Topctop 21429  TopOnctopon 21446  neicnei 21633  Hauscha 21844
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1787  ax-4 1801  ax-5 1902  ax-6 1961  ax-7 2006  ax-8 2107  ax-9 2115  ax-10 2136  ax-11 2151  ax-12 2167  ax-ext 2790  ax-rep 5181  ax-sep 5194  ax-nul 5201  ax-pow 5257  ax-pr 5320  ax-un 7450
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 842  df-3an 1081  df-tru 1531  df-ex 1772  df-nf 1776  df-sb 2061  df-mo 2615  df-eu 2647  df-clab 2797  df-cleq 2811  df-clel 2890  df-nfc 2960  df-ne 3014  df-ral 3140  df-rex 3141  df-reu 3142  df-rab 3144  df-v 3494  df-sbc 3770  df-csb 3881  df-dif 3936  df-un 3938  df-in 3940  df-ss 3949  df-nul 4289  df-if 4464  df-pw 4537  df-sn 4558  df-pr 4560  df-op 4564  df-uni 4831  df-iun 4912  df-br 5058  df-opab 5120  df-mpt 5138  df-id 5453  df-xp 5554  df-rel 5555  df-cnv 5556  df-co 5557  df-dm 5558  df-rn 5559  df-res 5560  df-ima 5561  df-iota 6307  df-fun 6350  df-fn 6351  df-f 6352  df-f1 6353  df-fo 6354  df-f1o 6355  df-fv 6356  df-top 21430  df-topon 21447  df-nei 21634  df-haus 21851
This theorem is referenced by:  hausflim  22517
  Copyright terms: Public domain W3C validator