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

Theorem hausnei2 21157
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 21155 . 2 (𝐽 ∈ (TopOn‘𝑋) → (𝐽 ∈ Haus ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
2 topontop 20718 . . 3 (𝐽 ∈ (TopOn‘𝑋) → 𝐽 ∈ Top)
3 simp1 1061 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝐽 ∈ Top)
43adantr 481 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝐽 ∈ Top)
5 simp2 1062 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝑚𝐽)
65adantr 481 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑚𝐽)
7 simp1 1061 . . . . . . . . . . . 12 ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → 𝑥𝑚)
87adantl 482 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑥𝑚)
9 opnneip 20923 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑥𝑚) → 𝑚 ∈ ((nei‘𝐽)‘{𝑥}))
104, 6, 8, 9syl3anc 1326 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑚 ∈ ((nei‘𝐽)‘{𝑥}))
11 simp3 1063 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → 𝑛𝐽)
1211adantr 481 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑛𝐽)
13 simp2 1062 . . . . . . . . . . . 12 ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → 𝑦𝑛)
1413adantl 482 . . . . . . . . . . 11 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑦𝑛)
15 opnneip 20923 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ 𝑛𝐽𝑦𝑛) → 𝑛 ∈ ((nei‘𝐽)‘{𝑦}))
164, 12, 14, 15syl3anc 1326 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → 𝑛 ∈ ((nei‘𝐽)‘{𝑦}))
17 simp3 1063 . . . . . . . . . . 11 ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → (𝑚𝑛) = ∅)
1817adantl 482 . . . . . . . . . 10 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → (𝑚𝑛) = ∅)
19 ineq1 3807 . . . . . . . . . . . 12 (𝑢 = 𝑚 → (𝑢𝑣) = (𝑚𝑣))
2019eqeq1d 2624 . . . . . . . . . . 11 (𝑢 = 𝑚 → ((𝑢𝑣) = ∅ ↔ (𝑚𝑣) = ∅))
21 ineq2 3808 . . . . . . . . . . . 12 (𝑣 = 𝑛 → (𝑚𝑣) = (𝑚𝑛))
2221eqeq1d 2624 . . . . . . . . . . 11 (𝑣 = 𝑛 → ((𝑚𝑣) = ∅ ↔ (𝑚𝑛) = ∅))
2320, 22rspc2ev 3324 . . . . . . . . . 10 ((𝑚 ∈ ((nei‘𝐽)‘{𝑥}) ∧ 𝑛 ∈ ((nei‘𝐽)‘{𝑦}) ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)
2410, 16, 18, 23syl3anc 1326 . . . . . . . . 9 (((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) ∧ (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)
2524ex 450 . . . . . . . 8 ((𝐽 ∈ Top ∧ 𝑚𝐽𝑛𝐽) → ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
26253expib 1268 . . . . . . 7 (𝐽 ∈ Top → ((𝑚𝐽𝑛𝐽) → ((𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
2726rexlimdvv 3037 . . . . . 6 (𝐽 ∈ Top → (∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
28 neii2 20912 . . . . . . . . 9 ((𝐽 ∈ Top ∧ 𝑢 ∈ ((nei‘𝐽)‘{𝑥})) → ∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢))
2928ex 450 . . . . . . . 8 (𝐽 ∈ Top → (𝑢 ∈ ((nei‘𝐽)‘{𝑥}) → ∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢)))
30 neii2 20912 . . . . . . . . 9 ((𝐽 ∈ Top ∧ 𝑣 ∈ ((nei‘𝐽)‘{𝑦})) → ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣))
3130ex 450 . . . . . . . 8 (𝐽 ∈ Top → (𝑣 ∈ ((nei‘𝐽)‘{𝑦}) → ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)))
32 vex 3203 . . . . . . . . . . . . . . 15 𝑥 ∈ V
3332snss 4316 . . . . . . . . . . . . . 14 (𝑥𝑚 ↔ {𝑥} ⊆ 𝑚)
3433anbi1i 731 . . . . . . . . . . . . 13 ((𝑥𝑚𝑚𝑢) ↔ ({𝑥} ⊆ 𝑚𝑚𝑢))
35 vex 3203 . . . . . . . . . . . . . . . . . . . . . . 23 𝑦 ∈ V
3635snss 4316 . . . . . . . . . . . . . . . . . . . . . 22 (𝑦𝑛 ↔ {𝑦} ⊆ 𝑛)
3736anbi1i 731 . . . . . . . . . . . . . . . . . . . . 21 ((𝑦𝑛𝑛𝑣) ↔ ({𝑦} ⊆ 𝑛𝑛𝑣))
38 simp1l 1085 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → 𝑥𝑚)
39 simp2l 1087 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → 𝑦𝑛)
40 ss2in 3840 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑚𝑢𝑛𝑣) → (𝑚𝑛) ⊆ (𝑢𝑣))
41 ssn0 3976 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (((𝑚𝑛) ⊆ (𝑢𝑣) ∧ (𝑚𝑛) ≠ ∅) → (𝑢𝑣) ≠ ∅)
4241ex 450 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝑚𝑛) ⊆ (𝑢𝑣) → ((𝑚𝑛) ≠ ∅ → (𝑢𝑣) ≠ ∅))
4342necon4d 2818 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((𝑚𝑛) ⊆ (𝑢𝑣) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
4440, 43syl 17 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((𝑚𝑢𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
4544ad2ant2l 782 . . . . . . . . . . . . . . . . . . . . . . . 24 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣)) → ((𝑢𝑣) = ∅ → (𝑚𝑛) = ∅))
46453impia 1261 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → (𝑚𝑛) = ∅)
4738, 39, 463jca 1242 . . . . . . . . . . . . . . . . . . . . . 22 (((𝑥𝑚𝑚𝑢) ∧ (𝑦𝑛𝑛𝑣) ∧ (𝑢𝑣) = ∅) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))
48473exp 1264 . . . . . . . . . . . . . . . . . . . . 21 ((𝑥𝑚𝑚𝑢) → ((𝑦𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
4937, 48syl5bir 233 . . . . . . . . . . . . . . . . . . . 20 ((𝑥𝑚𝑚𝑢) → (({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
5049com3r 87 . . . . . . . . . . . . . . . . . . 19 ((𝑢𝑣) = ∅ → ((𝑥𝑚𝑚𝑢) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
5150imp 445 . . . . . . . . . . . . . . . . . 18 (((𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
52513adant1 1079 . . . . . . . . . . . . . . . . 17 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (({𝑦} ⊆ 𝑛𝑛𝑣) → (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5352reximdv 3016 . . . . . . . . . . . . . . . 16 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ (𝑥𝑚𝑚𝑢)) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
54533exp 1264 . . . . . . . . . . . . . . 15 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → ((𝑥𝑚𝑚𝑢) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
5554com34 91 . . . . . . . . . . . . . 14 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑥𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
56553imp 1256 . . . . . . . . . . . . 13 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → ((𝑥𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5734, 56syl5bir 233 . . . . . . . . . . . 12 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → (({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
5857reximdv 3016 . . . . . . . . . . 11 ((𝐽 ∈ Top ∧ (𝑢𝑣) = ∅ ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
59583exp 1264 . . . . . . . . . 10 (𝐽 ∈ Top → ((𝑢𝑣) = ∅ → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
6059com24 95 . . . . . . . . 9 (𝐽 ∈ Top → (∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) → (∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))))
6160impd 447 . . . . . . . 8 (𝐽 ∈ Top → ((∃𝑚𝐽 ({𝑥} ⊆ 𝑚𝑚𝑢) ∧ ∃𝑛𝐽 ({𝑦} ⊆ 𝑛𝑛𝑣)) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
6229, 31, 61syl2and 500 . . . . . . 7 (𝐽 ∈ Top → ((𝑢 ∈ ((nei‘𝐽)‘{𝑥}) ∧ 𝑣 ∈ ((nei‘𝐽)‘{𝑦})) → ((𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅))))
6362rexlimdvv 3037 . . . . . 6 (𝐽 ∈ Top → (∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅ → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)))
6427, 63impbid 202 . . . . 5 (𝐽 ∈ Top → (∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅) ↔ ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅))
6564imbi2d 330 . . . 4 (𝐽 ∈ Top → ((𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
66652ralbidv 2989 . . 3 (𝐽 ∈ Top → (∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
672, 66syl 17 . 2 (𝐽 ∈ (TopOn‘𝑋) → (∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑚𝐽𝑛𝐽 (𝑥𝑚𝑦𝑛 ∧ (𝑚𝑛) = ∅)) ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
681, 67bitrd 268 1 (𝐽 ∈ (TopOn‘𝑋) → (𝐽 ∈ Haus ↔ ∀𝑥𝑋𝑦𝑋 (𝑥𝑦 → ∃𝑢 ∈ ((nei‘𝐽)‘{𝑥})∃𝑣 ∈ ((nei‘𝐽)‘{𝑦})(𝑢𝑣) = ∅)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 196  wa 384  w3a 1037   = wceq 1483  wcel 1990  wne 2794  wral 2912  wrex 2913  cin 3573  wss 3574  c0 3915  {csn 4177  cfv 5888  Topctop 20698  TopOnctopon 20715  neicnei 20901  Hauscha 21112
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-8 1992  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-rep 4771  ax-sep 4781  ax-nul 4789  ax-pow 4843  ax-pr 4906  ax-un 6949
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ne 2795  df-ral 2917  df-rex 2918  df-reu 2919  df-rab 2921  df-v 3202  df-sbc 3436  df-csb 3534  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-nul 3916  df-if 4087  df-pw 4160  df-sn 4178  df-pr 4180  df-op 4184  df-uni 4437  df-iun 4522  df-br 4654  df-opab 4713  df-mpt 4730  df-id 5024  df-xp 5120  df-rel 5121  df-cnv 5122  df-co 5123  df-dm 5124  df-rn 5125  df-res 5126  df-ima 5127  df-iota 5851  df-fun 5890  df-fn 5891  df-f 5892  df-f1 5893  df-fo 5894  df-f1o 5895  df-fv 5896  df-top 20699  df-topon 20716  df-nei 20902  df-haus 21119
This theorem is referenced by:  hausflim  21785
  Copyright terms: Public domain W3C validator