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

Theorem hausnei2 20967
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 20965 . 2 (𝐽 ∈ (TopOn‘𝑋) → (𝐽 ∈ Haus ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
2 topontop 20541 . . 3 (𝐽 ∈ (TopOn‘𝑋) → 𝐽 ∈ Top)
3 simp1 1054 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝐽 ∈ Top)
43adantr 480 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝐽 ∈ Top)
5 simp2 1055 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝑚𝐽)
65adantr 480 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑚𝐽)
7 simp1 1054 . . . . . . . . . . . 12 ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → 𝑥𝑚)
87adantl 481 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑥𝑚)
9 opnneip 20733 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑥𝑚) → 𝑚 ∈ ((nei‘𝐽)‘{𝑥}))
104, 6, 8, 9syl3anc 1318 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑚 ∈ ((nei‘𝐽)‘{𝑥}))
11 simp3 1056 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝑛𝐽)
1211adantr 480 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑛𝐽)
13 simp2 1055 . . . . . . . . . . . 12 ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → 𝑦𝑛)
1413adantl 481 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑦𝑛)
15 opnneip 20733 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑛𝐽𝑦𝑛) → 𝑛 ∈ ((nei‘𝐽)‘{𝑦}))
164, 12, 14, 15syl3anc 1318 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑛 ∈ ((nei‘𝐽)‘{𝑦}))
17 simp3 1056 . . . . . . . . . . 11 ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → (𝑚𝑛) = ∅)
1817adantl 481 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → (𝑚𝑛) = ∅)
19 ineq1 3769 . . . . . . . . . . . 12 (𝑢 = 𝑚 → (𝑢𝑣) = (𝑚𝑣))
2019eqeq1d 2612 . . . . . . . . . . 11 (𝑢 = 𝑚 → ((𝑢𝑣) = ∅ ↔ (𝑚𝑣) = ∅))
21 ineq2 3770 . . . . . . . . . . . 12 (𝑣 = 𝑛 → (𝑚𝑣) = (𝑚𝑛))
2221eqeq1d 2612 . . . . . . . . . . 11 (𝑣 = 𝑛 → ((𝑚𝑣) = ∅ ↔ (𝑚𝑛) = ∅))
2320, 22rspc2ev 3295 . . . . . . . . . 10 ((𝑚 ∈ ((nei‘𝐽)‘{𝑥}) ∧ 𝑛 ∈ ((nei‘𝐽)‘{𝑦}) ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)
2410, 16, 18, 23syl3anc 1318 . . . . . . . . 9 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)
2524ex 449 . . . . . . . 8 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
26253expib 1260 . . . . . . 7 (𝐽 ∈ Top → ((𝑚𝐽𝑛𝐽) → ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
2726rexlimdvv 3019 . . . . . 6 (𝐽 ∈ Top → (∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
28 neii2 20722 . . . . . . . . 9 ((𝐽 ∈ Top ∧ 𝑢 ∈ ((nei‘𝐽)‘{𝑥})) → ∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢))
2928ex 449 . . . . . . . 8 (𝐽 ∈ Top → (𝑢 ∈ ((nei‘𝐽)‘{𝑥}) → ∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢)))
30 neii2 20722 . . . . . . . . 9 ((𝐽 ∈ Top ∧ 𝑣 ∈ ((nei‘𝐽)‘{𝑦})) → ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣))
3130ex 449 . . . . . . . 8 (𝐽 ∈ Top → (𝑣 ∈ ((nei‘𝐽)‘{𝑦}) → ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)))
32 vex 3176 . . . . . . . . . . . . . . 15 𝑥 ∈ V
3332snss 4259 . . . . . . . . . . . . . 14 (𝑥𝑚 ↔ {𝑥} ⊆ 𝑚)
3433anbi1i 727 . . . . . . . . . . . . 13 ((𝑥𝑚𝑚𝑢) ↔ ({𝑥} ⊆ 𝑚𝑚𝑢))
35 vex 3176 . . . . . . . . . . . . . . . . . . . . . . 23 𝑦 ∈ V
3635snss 4259 . . . . . . . . . . . . . . . . . . . . . 22 (𝑦𝑛 ↔ {𝑦} ⊆ 𝑛)
3736anbi1i 727 . . . . . . . . . . . . . . . . . . . . 21 ((𝑦𝑛𝑛𝑣) ↔ ({𝑦} ⊆ 𝑛𝑛𝑣))
38 simp1l 1078 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → 𝑥𝑚)
39 simp2l 1080 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → 𝑦𝑛)
40 ss2in 3802 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑚𝑢𝑛𝑣) → (𝑚𝑛) ⊆ (𝑢𝑣))
41 ssn0 3928 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((𝑚𝑛) ⊆ (𝑢𝑣) ∧ (𝑚𝑛) ≠ ∅) → (𝑢𝑣) ≠ ∅)
4241ex 449 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑚𝑛) ⊆ (𝑢𝑣) → ((𝑚𝑛) ≠ ∅ → (𝑢𝑣) ≠ ∅))
4342necon4d 2806 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑚𝑛) ⊆ (𝑢𝑣) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
4440, 43syl 17 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑚𝑢𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
4544ad2ant2l 778 . . . . . . . . . . . . . . . . . . . . . . . 24 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣)) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
46453impia 1253 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → (𝑚𝑛) = ∅)
4738, 39, 463jca 1235 . . . . . . . . . . . . . . . . . . . . . 22 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))
48473exp 1256 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥𝑚𝑚𝑢) → ((𝑦𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
4937, 48syl5bir 232 . . . . . . . . . . . . . . . . . . . 20 ((𝑥𝑚𝑚𝑢) → (({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
5049com3r 85 . . . . . . . . . . . . . . . . . . 19 ((𝑢𝑣) = ∅ → ((𝑥𝑚𝑚𝑢) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
5150imp 444 . . . . . . . . . . . . . . . . . 18 (((𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
52513adant1 1072 . . . . . . . . . . . . . . . . 17 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5352reximdv 2999 . . . . . . . . . . . . . . . 16 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
54533exp 1256 . . . . . . . . . . . . . . 15 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → ((𝑥𝑚𝑚𝑢) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
5554com34 89 . . . . . . . . . . . . . 14 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑥𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
56553imp 1249 . . . . . . . . . . . . 13 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → ((𝑥𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5734, 56syl5bir 232 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → (({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5857reximdv 2999 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
59583exp 1256 . . . . . . . . . 10 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
6059com24 93 . . . . . . . . 9 (𝐽 ∈ Top → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
6160impd 446 . . . . . . . 8 (𝐽 ∈ Top → ((∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
6229, 31, 61syl2and 499 . . . . . . 7 (𝐽 ∈ Top → ((𝑢 ∈ ((nei‘𝐽)‘{𝑥}) ∧ 𝑣 ∈ ((nei‘𝐽)‘{𝑦})) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
6362rexlimdvv 3019 . . . . . 6 (𝐽 ∈ Top → (∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
6427, 63impbid 201 . . . . 5 (𝐽 ∈ Top → (∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) ↔ ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
6564imbi2d 329 . . . 4 (𝐽 ∈ Top → ((𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
66652ralbidv 2972 . . 3 (𝐽 ∈ Top → (∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
672, 66syl 17 . 2 (𝐽 ∈ (TopOn‘𝑋) → (∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
681, 67bitrd 267 1 (𝐽 ∈ (TopOn‘𝑋) → (𝐽 ∈ Haus ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 195  wa 383  w3a 1031   = wceq 1475  wcel 1977  wne 2780  wral 2896  wrex 2897  cin 3539  wss 3540  c0 3874  {csn 4125  cfv 5804  Topctop 20517  TopOnctopon 20518  neicnei 20711  Hauscha 20922
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-8 1979  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-rep 4699  ax-sep 4709  ax-nul 4717  ax-pow 4769  ax-pr 4833  ax-un 6847
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ne 2782  df-ral 2901  df-rex 2902  df-reu 2903  df-rab 2905  df-v 3175  df-sbc 3403  df-csb 3500  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-nul 3875  df-if 4037  df-pw 4110  df-sn 4126  df-pr 4128  df-op 4132  df-uni 4373  df-iun 4457  df-br 4584  df-opab 4644  df-mpt 4645  df-id 4953  df-xp 5044  df-rel 5045  df-cnv 5046  df-co 5047  df-dm 5048  df-rn 5049  df-res 5050  df-ima 5051  df-iota 5768  df-fun 5806  df-fn 5807  df-f 5808  df-f1 5809  df-fo 5810  df-f1o 5811  df-fv 5812  df-top 20521  df-topon 20523  df-nei 20712  df-haus 20929
This theorem is referenced by:  hausflim  21595
  Copyright terms: Public domain W3C validator