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

Theorem hausnei2 21535
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 21533 . 2 (𝐽 ∈ (TopOn‘𝑋) → (𝐽 ∈ Haus ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
2 topontop 21095 . . 3 (𝐽 ∈ (TopOn‘𝑋) → 𝐽 ∈ Top)
3 simp1 1170 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝐽 ∈ Top)
43adantr 474 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝐽 ∈ Top)
5 simp2 1171 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝑚𝐽)
65adantr 474 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑚𝐽)
7 simp1 1170 . . . . . . . . . . . 12 ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → 𝑥𝑚)
87adantl 475 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑥𝑚)
9 opnneip 21301 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑥𝑚) → 𝑚 ∈ ((nei‘𝐽)‘{𝑥}))
104, 6, 8, 9syl3anc 1494 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑚 ∈ ((nei‘𝐽)‘{𝑥}))
11 simp3 1172 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝑛𝐽)
1211adantr 474 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑛𝐽)
13 simp2 1171 . . . . . . . . . . . 12 ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → 𝑦𝑛)
1413adantl 475 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑦𝑛)
15 opnneip 21301 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑛𝐽𝑦𝑛) → 𝑛 ∈ ((nei‘𝐽)‘{𝑦}))
164, 12, 14, 15syl3anc 1494 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑛 ∈ ((nei‘𝐽)‘{𝑦}))
17 simp3 1172 . . . . . . . . . . 11 ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → (𝑚𝑛) = ∅)
1817adantl 475 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → (𝑚𝑛) = ∅)
19 ineq1 4036 . . . . . . . . . . . 12 (𝑢 = 𝑚 → (𝑢𝑣) = (𝑚𝑣))
2019eqeq1d 2827 . . . . . . . . . . 11 (𝑢 = 𝑚 → ((𝑢𝑣) = ∅ ↔ (𝑚𝑣) = ∅))
21 ineq2 4037 . . . . . . . . . . . 12 (𝑣 = 𝑛 → (𝑚𝑣) = (𝑚𝑛))
2221eqeq1d 2827 . . . . . . . . . . 11 (𝑣 = 𝑛 → ((𝑚𝑣) = ∅ ↔ (𝑚𝑛) = ∅))
2320, 22rspc2ev 3541 . . . . . . . . . 10 ((𝑚 ∈ ((nei‘𝐽)‘{𝑥}) ∧ 𝑛 ∈ ((nei‘𝐽)‘{𝑦}) ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)
2410, 16, 18, 23syl3anc 1494 . . . . . . . . 9 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)
2524ex 403 . . . . . . . 8 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
26253expib 1156 . . . . . . 7 (𝐽 ∈ Top → ((𝑚𝐽𝑛𝐽) → ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
2726rexlimdvv 3247 . . . . . 6 (𝐽 ∈ Top → (∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
28 neii2 21290 . . . . . . . . 9 ((𝐽 ∈ Top ∧ 𝑢 ∈ ((nei‘𝐽)‘{𝑥})) → ∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢))
2928ex 403 . . . . . . . 8 (𝐽 ∈ Top → (𝑢 ∈ ((nei‘𝐽)‘{𝑥}) → ∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢)))
30 neii2 21290 . . . . . . . . 9 ((𝐽 ∈ Top ∧ 𝑣 ∈ ((nei‘𝐽)‘{𝑦})) → ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣))
3130ex 403 . . . . . . . 8 (𝐽 ∈ Top → (𝑣 ∈ ((nei‘𝐽)‘{𝑦}) → ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)))
32 vex 3417 . . . . . . . . . . . . . . 15 𝑥 ∈ V
3332snss 4537 . . . . . . . . . . . . . 14 (𝑥𝑚 ↔ {𝑥} ⊆ 𝑚)
3433anbi1i 617 . . . . . . . . . . . . 13 ((𝑥𝑚𝑚𝑢) ↔ ({𝑥} ⊆ 𝑚𝑚𝑢))
35 vex 3417 . . . . . . . . . . . . . . . . . . . . . . 23 𝑦 ∈ V
3635snss 4537 . . . . . . . . . . . . . . . . . . . . . 22 (𝑦𝑛 ↔ {𝑦} ⊆ 𝑛)
3736anbi1i 617 . . . . . . . . . . . . . . . . . . . . 21 ((𝑦𝑛𝑛𝑣) ↔ ({𝑦} ⊆ 𝑛𝑛𝑣))
38 simp1l 1258 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → 𝑥𝑚)
39 simp2l 1260 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → 𝑦𝑛)
40 ss2in 4067 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑚𝑢𝑛𝑣) → (𝑚𝑛) ⊆ (𝑢𝑣))
41 ssn0 4203 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((𝑚𝑛) ⊆ (𝑢𝑣) ∧ (𝑚𝑛) ≠ ∅) → (𝑢𝑣) ≠ ∅)
4241ex 403 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑚𝑛) ⊆ (𝑢𝑣) → ((𝑚𝑛) ≠ ∅ → (𝑢𝑣) ≠ ∅))
4342necon4d 3023 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑚𝑛) ⊆ (𝑢𝑣) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
4440, 43syl 17 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑚𝑢𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
4544ad2ant2l 752 . . . . . . . . . . . . . . . . . . . . . . . 24 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣)) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
46453impia 1149 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → (𝑚𝑛) = ∅)
4738, 39, 463jca 1162 . . . . . . . . . . . . . . . . . . . . . 22 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))
48473exp 1152 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥𝑚𝑚𝑢) → ((𝑦𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
4937, 48syl5bir 235 . . . . . . . . . . . . . . . . . . . 20 ((𝑥𝑚𝑚𝑢) → (({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
5049com3r 87 . . . . . . . . . . . . . . . . . . 19 ((𝑢𝑣) = ∅ → ((𝑥𝑚𝑚𝑢) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
5150imp 397 . . . . . . . . . . . . . . . . . 18 (((𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
52513adant1 1164 . . . . . . . . . . . . . . . . 17 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5352reximdv 3224 . . . . . . . . . . . . . . . 16 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
54533exp 1152 . . . . . . . . . . . . . . 15 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → ((𝑥𝑚𝑚𝑢) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
5554com34 91 . . . . . . . . . . . . . 14 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑥𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
56553imp 1141 . . . . . . . . . . . . 13 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → ((𝑥𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5734, 56syl5bir 235 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → (({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5857reximdv 3224 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
59583exp 1152 . . . . . . . . . 10 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
6059com24 95 . . . . . . . . 9 (𝐽 ∈ Top → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
6160impd 400 . . . . . . . 8 (𝐽 ∈ Top → ((∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
6229, 31, 61syl2and 601 . . . . . . 7 (𝐽 ∈ Top → ((𝑢 ∈ ((nei‘𝐽)‘{𝑥}) ∧ 𝑣 ∈ ((nei‘𝐽)‘{𝑦})) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
6362rexlimdvv 3247 . . . . . 6 (𝐽 ∈ Top → (∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
6427, 63impbid 204 . . . . 5 (𝐽 ∈ Top → (∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) ↔ ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
6564imbi2d 332 . . . 4 (𝐽 ∈ Top → ((𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
66652ralbidv 3198 . . 3 (𝐽 ∈ Top → (∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
672, 66syl 17 . 2 (𝐽 ∈ (TopOn‘𝑋) → (∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
681, 67bitrd 271 1 (𝐽 ∈ (TopOn‘𝑋) → (𝐽 ∈ Haus ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 198  wa 386  w3a 1111   = wceq 1656  wcel 2164  wne 2999  wral 3117  wrex 3118  cin 3797  wss 3798  c0 4146  {csn 4399  cfv 6127  Topctop 21075  TopOnctopon 21092  neicnei 21279  Hauscha 21490
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1894  ax-4 1908  ax-5 2009  ax-6 2075  ax-7 2112  ax-8 2166  ax-9 2173  ax-10 2192  ax-11 2207  ax-12 2220  ax-13 2389  ax-ext 2803  ax-rep 4996  ax-sep 5007  ax-nul 5015  ax-pow 5067  ax-pr 5129  ax-un 7214
This theorem depends on definitions:  df-bi 199  df-an 387  df-or 879  df-3an 1113  df-tru 1660  df-ex 1879  df-nf 1883  df-sb 2068  df-mo 2605  df-eu 2640  df-clab 2812  df-cleq 2818  df-clel 2821  df-nfc 2958  df-ne 3000  df-ral 3122  df-rex 3123  df-reu 3124  df-rab 3126  df-v 3416  df-sbc 3663  df-csb 3758  df-dif 3801  df-un 3803  df-in 3805  df-ss 3812  df-nul 4147  df-if 4309  df-pw 4382  df-sn 4400  df-pr 4402  df-op 4406  df-uni 4661  df-iun 4744  df-br 4876  df-opab 4938  df-mpt 4955  df-id 5252  df-xp 5352  df-rel 5353  df-cnv 5354  df-co 5355  df-dm 5356  df-rn 5357  df-res 5358  df-ima 5359  df-iota 6090  df-fun 6129  df-fn 6130  df-f 6131  df-f1 6132  df-fo 6133  df-f1o 6134  df-fv 6135  df-top 21076  df-topon 21093  df-nei 21280  df-haus 21497
This theorem is referenced by:  hausflim  22162
  Copyright terms: Public domain W3C validator