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

Theorem hausnei2 23362
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 23360 . 2 (𝐽 ∈ (TopOn‘𝑋) → (𝐽 ∈ Haus ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
2 topontop 22920 . . 3 (𝐽 ∈ (TopOn‘𝑋) → 𝐽 ∈ Top)
3 simp1 1136 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝐽 ∈ Top)
4 simp2 1137 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝑚𝐽)
5 simp1 1136 . . . . . . . . . . 11 ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → 𝑥𝑚)
6 opnneip 23128 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑥𝑚) → 𝑚 ∈ ((nei‘𝐽)‘{𝑥}))
73, 4, 5, 6syl2an3an 1423 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑚 ∈ ((nei‘𝐽)‘{𝑥}))
8 simp3 1138 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝑛𝐽)
9 simp2 1137 . . . . . . . . . . 11 ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → 𝑦𝑛)
10 opnneip 23128 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑛𝐽𝑦𝑛) → 𝑛 ∈ ((nei‘𝐽)‘{𝑦}))
113, 8, 9, 10syl2an3an 1423 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑛 ∈ ((nei‘𝐽)‘{𝑦}))
12 simpr3 1196 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → (𝑚𝑛) = ∅)
13 ineq1 4212 . . . . . . . . . . . 12 (𝑢 = 𝑚 → (𝑢𝑣) = (𝑚𝑣))
1413eqeq1d 2738 . . . . . . . . . . 11 (𝑢 = 𝑚 → ((𝑢𝑣) = ∅ ↔ (𝑚𝑣) = ∅))
15 ineq2 4213 . . . . . . . . . . . 12 (𝑣 = 𝑛 → (𝑚𝑣) = (𝑚𝑛))
1615eqeq1d 2738 . . . . . . . . . . 11 (𝑣 = 𝑛 → ((𝑚𝑣) = ∅ ↔ (𝑚𝑛) = ∅))
1714, 16rspc2ev 3634 . . . . . . . . . 10 ((𝑚 ∈ ((nei‘𝐽)‘{𝑥}) ∧ 𝑛 ∈ ((nei‘𝐽)‘{𝑦}) ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)
187, 11, 12, 17syl3anc 1372 . . . . . . . . 9 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)
1918ex 412 . . . . . . . 8 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
20193expib 1122 . . . . . . 7 (𝐽 ∈ Top → ((𝑚𝐽𝑛𝐽) → ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
2120rexlimdvv 3211 . . . . . 6 (𝐽 ∈ Top → (∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
22 neii2 23117 . . . . . . . . 9 ((𝐽 ∈ Top ∧ 𝑢 ∈ ((nei‘𝐽)‘{𝑥})) → ∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢))
2322ex 412 . . . . . . . 8 (𝐽 ∈ Top → (𝑢 ∈ ((nei‘𝐽)‘{𝑥}) → ∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢)))
24 neii2 23117 . . . . . . . . 9 ((𝐽 ∈ Top ∧ 𝑣 ∈ ((nei‘𝐽)‘{𝑦})) → ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣))
2524ex 412 . . . . . . . 8 (𝐽 ∈ Top → (𝑣 ∈ ((nei‘𝐽)‘{𝑦}) → ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)))
26 vex 3483 . . . . . . . . . . . . . . 15 𝑥 ∈ V
2726snss 4784 . . . . . . . . . . . . . 14 (𝑥𝑚 ↔ {𝑥} ⊆ 𝑚)
2827anbi1i 624 . . . . . . . . . . . . 13 ((𝑥𝑚𝑚𝑢) ↔ ({𝑥} ⊆ 𝑚𝑚𝑢))
29 vex 3483 . . . . . . . . . . . . . . . . . . . . . . 23 𝑦 ∈ V
3029snss 4784 . . . . . . . . . . . . . . . . . . . . . 22 (𝑦𝑛 ↔ {𝑦} ⊆ 𝑛)
3130anbi1i 624 . . . . . . . . . . . . . . . . . . . . 21 ((𝑦𝑛𝑛𝑣) ↔ ({𝑦} ⊆ 𝑛𝑛𝑣))
32 simp1l 1197 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → 𝑥𝑚)
33 simp2l 1199 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → 𝑦𝑛)
34 ss2in 4244 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑚𝑢𝑛𝑣) → (𝑚𝑛) ⊆ (𝑢𝑣))
35 ssn0 4403 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((𝑚𝑛) ⊆ (𝑢𝑣) ∧ (𝑚𝑛) ≠ ∅) → (𝑢𝑣) ≠ ∅)
3635ex 412 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑚𝑛) ⊆ (𝑢𝑣) → ((𝑚𝑛) ≠ ∅ → (𝑢𝑣) ≠ ∅))
3736necon4d 2963 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑚𝑛) ⊆ (𝑢𝑣) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
3834, 37syl 17 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑚𝑢𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
3938ad2ant2l 746 . . . . . . . . . . . . . . . . . . . . . . . 24 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣)) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
40393impia 1117 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → (𝑚𝑛) = ∅)
4132, 33, 403jca 1128 . . . . . . . . . . . . . . . . . . . . . 22 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))
42413exp 1119 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥𝑚𝑚𝑢) → ((𝑦𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
4331, 42biimtrrid 243 . . . . . . . . . . . . . . . . . . . 20 ((𝑥𝑚𝑚𝑢) → (({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
4443com3r 87 . . . . . . . . . . . . . . . . . . 19 ((𝑢𝑣) = ∅ → ((𝑥𝑚𝑚𝑢) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
4544imp 406 . . . . . . . . . . . . . . . . . 18 (((𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
46453adant1 1130 . . . . . . . . . . . . . . . . 17 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
4746reximdv 3169 . . . . . . . . . . . . . . . 16 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
48473exp 1119 . . . . . . . . . . . . . . 15 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → ((𝑥𝑚𝑚𝑢) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
4948com34 91 . . . . . . . . . . . . . 14 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑥𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
50493imp 1110 . . . . . . . . . . . . 13 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → ((𝑥𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5128, 50biimtrrid 243 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → (({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5251reximdv 3169 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
53523exp 1119 . . . . . . . . . 10 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
5453com24 95 . . . . . . . . 9 (𝐽 ∈ Top → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
5554impd 410 . . . . . . . 8 (𝐽 ∈ Top → ((∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
5623, 25, 55syl2and 608 . . . . . . 7 (𝐽 ∈ Top → ((𝑢 ∈ ((nei‘𝐽)‘{𝑥}) ∧ 𝑣 ∈ ((nei‘𝐽)‘{𝑦})) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
5756rexlimdvv 3211 . . . . . 6 (𝐽 ∈ Top → (∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5821, 57impbid 212 . . . . 5 (𝐽 ∈ Top → (∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) ↔ ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
5958imbi2d 340 . . . 4 (𝐽 ∈ Top → ((𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
60592ralbidv 3220 . . 3 (𝐽 ∈ Top → (∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
612, 60syl 17 . 2 (𝐽 ∈ (TopOn‘𝑋) → (∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
621, 61bitrd 279 1 (𝐽 ∈ (TopOn‘𝑋) → (𝐽 ∈ Haus ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1086   = wceq 1539  wcel 2107  wne 2939  wral 3060  wrex 3069  cin 3949  wss 3950  c0 4332  {csn 4625  cfv 6560  Topctop 22900  TopOnctopon 22917  neicnei 23106  Hauscha 23317
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1794  ax-4 1808  ax-5 1909  ax-6 1966  ax-7 2006  ax-8 2109  ax-9 2117  ax-10 2140  ax-11 2156  ax-12 2176  ax-ext 2707  ax-rep 5278  ax-sep 5295  ax-nul 5305  ax-pow 5364  ax-pr 5431  ax-un 7756
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1779  df-nf 1783  df-sb 2064  df-mo 2539  df-eu 2568  df-clab 2714  df-cleq 2728  df-clel 2815  df-nfc 2891  df-ne 2940  df-ral 3061  df-rex 3070  df-reu 3380  df-rab 3436  df-v 3481  df-sbc 3788  df-csb 3899  df-dif 3953  df-un 3955  df-in 3957  df-ss 3967  df-nul 4333  df-if 4525  df-pw 4601  df-sn 4626  df-pr 4628  df-op 4632  df-uni 4907  df-iun 4992  df-br 5143  df-opab 5205  df-mpt 5225  df-id 5577  df-xp 5690  df-rel 5691  df-cnv 5692  df-co 5693  df-dm 5694  df-rn 5695  df-res 5696  df-ima 5697  df-iota 6513  df-fun 6562  df-fn 6563  df-f 6564  df-f1 6565  df-fo 6566  df-f1o 6567  df-fv 6568  df-top 22901  df-topon 22918  df-nei 23107  df-haus 23324
This theorem is referenced by:  hausflim  23990
  Copyright terms: Public domain W3C validator