| Step | Hyp | Ref | Expression | 
|---|
| 1 |  | mopni.1 | . . . . 5
⊢ 𝐽 = (MetOpen‘𝐷) | 
| 2 | 1 | mopntop 24451 | . . . 4
⊢ (𝐷 ∈ (∞Met‘𝑋) → 𝐽 ∈ Top) | 
| 3 | 2 | adantr 480 | . . 3
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋) → 𝐽 ∈ Top) | 
| 4 | 1 | mopnuni 24452 | . . . . 5
⊢ (𝐷 ∈ (∞Met‘𝑋) → 𝑋 = ∪ 𝐽) | 
| 5 | 4 | eleq2d 2826 | . . . 4
⊢ (𝐷 ∈ (∞Met‘𝑋) → (𝑃 ∈ 𝑋 ↔ 𝑃 ∈ ∪ 𝐽)) | 
| 6 | 5 | biimpa 476 | . . 3
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋) → 𝑃 ∈ ∪ 𝐽) | 
| 7 |  | eqid 2736 | . . . 4
⊢ ∪ 𝐽 =
∪ 𝐽 | 
| 8 | 7 | isneip 23114 | . . 3
⊢ ((𝐽 ∈ Top ∧ 𝑃 ∈ ∪ 𝐽)
→ (𝑁 ∈
((nei‘𝐽)‘{𝑃}) ↔ (𝑁 ⊆ ∪ 𝐽 ∧ ∃𝑦 ∈ 𝐽 (𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁)))) | 
| 9 | 3, 6, 8 | syl2anc 584 | . 2
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋) → (𝑁 ∈ ((nei‘𝐽)‘{𝑃}) ↔ (𝑁 ⊆ ∪ 𝐽 ∧ ∃𝑦 ∈ 𝐽 (𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁)))) | 
| 10 | 4 | sseq2d 4015 | . . . 4
⊢ (𝐷 ∈ (∞Met‘𝑋) → (𝑁 ⊆ 𝑋 ↔ 𝑁 ⊆ ∪ 𝐽)) | 
| 11 | 10 | adantr 480 | . . 3
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋) → (𝑁 ⊆ 𝑋 ↔ 𝑁 ⊆ ∪ 𝐽)) | 
| 12 | 11 | anbi1d 631 | . 2
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋) → ((𝑁 ⊆ 𝑋 ∧ ∃𝑦 ∈ 𝐽 (𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁)) ↔ (𝑁 ⊆ ∪ 𝐽 ∧ ∃𝑦 ∈ 𝐽 (𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁)))) | 
| 13 | 1 | mopni2 24507 | . . . . . . . . 9
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑦 ∈ 𝐽 ∧ 𝑃 ∈ 𝑦) → ∃𝑟 ∈ ℝ+ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑦) | 
| 14 |  | sstr2 3989 | . . . . . . . . . . 11
⊢ ((𝑃(ball‘𝐷)𝑟) ⊆ 𝑦 → (𝑦 ⊆ 𝑁 → (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁)) | 
| 15 | 14 | com12 32 | . . . . . . . . . 10
⊢ (𝑦 ⊆ 𝑁 → ((𝑃(ball‘𝐷)𝑟) ⊆ 𝑦 → (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁)) | 
| 16 | 15 | reximdv 3169 | . . . . . . . . 9
⊢ (𝑦 ⊆ 𝑁 → (∃𝑟 ∈ ℝ+ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑦 → ∃𝑟 ∈ ℝ+ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁)) | 
| 17 | 13, 16 | syl5com 31 | . . . . . . . 8
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑦 ∈ 𝐽 ∧ 𝑃 ∈ 𝑦) → (𝑦 ⊆ 𝑁 → ∃𝑟 ∈ ℝ+ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁)) | 
| 18 | 17 | 3exp 1119 | . . . . . . 7
⊢ (𝐷 ∈ (∞Met‘𝑋) → (𝑦 ∈ 𝐽 → (𝑃 ∈ 𝑦 → (𝑦 ⊆ 𝑁 → ∃𝑟 ∈ ℝ+ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁)))) | 
| 19 | 18 | imp4a 422 | . . . . . 6
⊢ (𝐷 ∈ (∞Met‘𝑋) → (𝑦 ∈ 𝐽 → ((𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁) → ∃𝑟 ∈ ℝ+ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁))) | 
| 20 | 19 | ad2antrr 726 | . . . . 5
⊢ (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋) ∧ 𝑁 ⊆ 𝑋) → (𝑦 ∈ 𝐽 → ((𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁) → ∃𝑟 ∈ ℝ+ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁))) | 
| 21 | 20 | rexlimdv 3152 | . . . 4
⊢ (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋) ∧ 𝑁 ⊆ 𝑋) → (∃𝑦 ∈ 𝐽 (𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁) → ∃𝑟 ∈ ℝ+ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁)) | 
| 22 |  | rpxr 13045 | . . . . . . . . 9
⊢ (𝑟 ∈ ℝ+
→ 𝑟 ∈
ℝ*) | 
| 23 | 1 | blopn 24514 | . . . . . . . . 9
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋 ∧ 𝑟 ∈ ℝ*) → (𝑃(ball‘𝐷)𝑟) ∈ 𝐽) | 
| 24 | 22, 23 | syl3an3 1165 | . . . . . . . 8
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) → (𝑃(ball‘𝐷)𝑟) ∈ 𝐽) | 
| 25 |  | blcntr 24424 | . . . . . . . 8
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) → 𝑃 ∈ (𝑃(ball‘𝐷)𝑟)) | 
| 26 |  | eleq2 2829 | . . . . . . . . . . 11
⊢ (𝑦 = (𝑃(ball‘𝐷)𝑟) → (𝑃 ∈ 𝑦 ↔ 𝑃 ∈ (𝑃(ball‘𝐷)𝑟))) | 
| 27 |  | sseq1 4008 | . . . . . . . . . . 11
⊢ (𝑦 = (𝑃(ball‘𝐷)𝑟) → (𝑦 ⊆ 𝑁 ↔ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁)) | 
| 28 | 26, 27 | anbi12d 632 | . . . . . . . . . 10
⊢ (𝑦 = (𝑃(ball‘𝐷)𝑟) → ((𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁) ↔ (𝑃 ∈ (𝑃(ball‘𝐷)𝑟) ∧ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁))) | 
| 29 | 28 | rspcev 3621 | . . . . . . . . 9
⊢ (((𝑃(ball‘𝐷)𝑟) ∈ 𝐽 ∧ (𝑃 ∈ (𝑃(ball‘𝐷)𝑟) ∧ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁)) → ∃𝑦 ∈ 𝐽 (𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁)) | 
| 30 | 29 | expr 456 | . . . . . . . 8
⊢ (((𝑃(ball‘𝐷)𝑟) ∈ 𝐽 ∧ 𝑃 ∈ (𝑃(ball‘𝐷)𝑟)) → ((𝑃(ball‘𝐷)𝑟) ⊆ 𝑁 → ∃𝑦 ∈ 𝐽 (𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁))) | 
| 31 | 24, 25, 30 | syl2anc 584 | . . . . . . 7
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋 ∧ 𝑟 ∈ ℝ+) → ((𝑃(ball‘𝐷)𝑟) ⊆ 𝑁 → ∃𝑦 ∈ 𝐽 (𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁))) | 
| 32 | 31 | 3expia 1121 | . . . . . 6
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋) → (𝑟 ∈ ℝ+ → ((𝑃(ball‘𝐷)𝑟) ⊆ 𝑁 → ∃𝑦 ∈ 𝐽 (𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁)))) | 
| 33 | 32 | rexlimdv 3152 | . . . . 5
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋) → (∃𝑟 ∈ ℝ+ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁 → ∃𝑦 ∈ 𝐽 (𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁))) | 
| 34 | 33 | adantr 480 | . . . 4
⊢ (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋) ∧ 𝑁 ⊆ 𝑋) → (∃𝑟 ∈ ℝ+ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁 → ∃𝑦 ∈ 𝐽 (𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁))) | 
| 35 | 21, 34 | impbid 212 | . . 3
⊢ (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋) ∧ 𝑁 ⊆ 𝑋) → (∃𝑦 ∈ 𝐽 (𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁) ↔ ∃𝑟 ∈ ℝ+ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁)) | 
| 36 | 35 | pm5.32da 579 | . 2
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋) → ((𝑁 ⊆ 𝑋 ∧ ∃𝑦 ∈ 𝐽 (𝑃 ∈ 𝑦 ∧ 𝑦 ⊆ 𝑁)) ↔ (𝑁 ⊆ 𝑋 ∧ ∃𝑟 ∈ ℝ+ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁))) | 
| 37 | 9, 12, 36 | 3bitr2d 307 | 1
⊢ ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃 ∈ 𝑋) → (𝑁 ∈ ((nei‘𝐽)‘{𝑃}) ↔ (𝑁 ⊆ 𝑋 ∧ ∃𝑟 ∈ ℝ+ (𝑃(ball‘𝐷)𝑟) ⊆ 𝑁))) |