Users' Mathboxes Mathbox for Brendan Leahy < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  ptrecube Structured version   Visualization version   GIF version

Theorem ptrecube 38458
Description: Any point in an open set of N-space is surrounded by an open cube within that set. (Contributed by Brendan Leahy, 21-Aug-2020.) (Proof shortened by AV, 28-Sep-2020.)
Hypotheses
Ref Expression
ptrecube.r 𝑅 = (∏t‘((1...𝑁) × {(topGen‘ran (,))}))
ptrecube.d 𝐷 = ((abs ∘ − ) ↾ (ℝ × ℝ))
Assertion
Ref Expression
ptrecube ((𝑆 ∈ 𝑅 ∧ 𝑃 ∈ 𝑆) → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆)
Distinct variable groups:   𝑛,𝑑,𝑁   𝑃,𝑑,𝑛   𝑆,𝑑,𝑛
Allowed substitution hints:   𝐷(𝑛, 𝑑)   𝑅(𝑛, 𝑑)

Proof of Theorem ptrecube
Dummy variables 𝑔 ℎ 𝑤 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 ptrecube.r . . . 4 𝑅 = (∏t‘((1...𝑁) × {(topGen‘ran (,))}))
2 fzfi 14083 . . . . 5 (1...𝑁) ∈ Fin
3 retop 25041 . . . . . 6 (topGen‘ran (,)) ∈ Top
4 fnconstg 6758 . . . . . 6 ((topGen‘ran (,)) ∈ Top → ((1...𝑁) × {(topGen‘ran (,))}) Fn (1...𝑁))
53, 4ax-mp 5 . . . . 5 ((1...𝑁) × {(topGen‘ran (,))}) Fn (1...𝑁)
6 eqid 2760 . . . . . 6 {𝑥 ∣ ∃ℎ((ℎ Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(ℎ‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑤 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑤)(ℎ‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑥 = X𝑛 ∈ (1...𝑁)(ℎ‘𝑛))} = {𝑥 ∣ ∃ℎ((ℎ Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(ℎ‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑤 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑤)(ℎ‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑥 = X𝑛 ∈ (1...𝑁)(ℎ‘𝑛))}
76ptval 23850 . . . . 5 (((1...𝑁) ∈ Fin ∧ ((1...𝑁) × {(topGen‘ran (,))}) Fn (1...𝑁)) → (∏t‘((1...𝑁) × {(topGen‘ran (,))})) = (topGen‘{𝑥 ∣ ∃ℎ((ℎ Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(ℎ‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑤 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑤)(ℎ‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑥 = X𝑛 ∈ (1...𝑁)(ℎ‘𝑛))}))
82, 5, 7mp2an 705 . . . 4 (∏t‘((1...𝑁) × {(topGen‘ran (,))})) = (topGen‘{𝑥 ∣ ∃ℎ((ℎ Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(ℎ‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑤 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑤)(ℎ‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑥 = X𝑛 ∈ (1...𝑁)(ℎ‘𝑛))})
91, 8eqtri 2783 . . 3 𝑅 = (topGen‘{𝑥 ∣ ∃ℎ((ℎ Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(ℎ‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑤 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑤)(ℎ‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑥 = X𝑛 ∈ (1...𝑁)(ℎ‘𝑛))})
109eleq2i 2852 . 2 (𝑆 ∈ 𝑅 ↔ 𝑆 ∈ (topGen‘{𝑥 ∣ ∃ℎ((ℎ Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(ℎ‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑤 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑤)(ℎ‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑥 = X𝑛 ∈ (1...𝑁)(ℎ‘𝑛))}))
11 tg2 23244 . . 3 ((𝑆 ∈ (topGen‘{𝑥 ∣ ∃ℎ((ℎ Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(ℎ‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑤 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑤)(ℎ‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑥 = X𝑛 ∈ (1...𝑁)(ℎ‘𝑛))}) ∧ 𝑃 ∈ 𝑆) → ∃𝑧 ∈ {𝑥 ∣ ∃ℎ((ℎ Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(ℎ‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑤 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑤)(ℎ‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑥 = X𝑛 ∈ (1...𝑁)(ℎ‘𝑛))} (𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆))
126elpt 23852 . . . . 5 (𝑧 ∈ {𝑥 ∣ ∃ℎ((ℎ Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(ℎ‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑤 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑤)(ℎ‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑥 = X𝑛 ∈ (1...𝑁)(ℎ‘𝑛))} ↔ ∃𝑔((𝑔 Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑧 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑧)(𝑔‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑧 = X𝑛 ∈ (1...𝑁)(𝑔‘𝑛)))
13 fvex 6886 . . . . . . . . . . . . . . 15 (topGen‘ran (,)) ∈ V
1413fvconst2 7198 . . . . . . . . . . . . . 14 (𝑛 ∈ (1...𝑁) → (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) = (topGen‘ran (,)))
1514eleq2d 2846 . . . . . . . . . . . . 13 (𝑛 ∈ (1...𝑁) → ((𝑔‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ↔ (𝑔‘𝑛) ∈ (topGen‘ran (,))))
1615ralbiia 3106 . . . . . . . . . . . 12 (∀𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ↔ ∀𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∈ (topGen‘ran (,)))
17 elixp2 8907 . . . . . . . . . . . . . 14 (𝑃 ∈ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ↔ (𝑃 ∈ V ∧ 𝑃 Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(𝑃‘𝑛) ∈ (𝑔‘𝑛)))
1817simp3bi 1165 . . . . . . . . . . . . 13 (𝑃 ∈ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) → ∀𝑛 ∈ (1...𝑁)(𝑃‘𝑛) ∈ (𝑔‘𝑛))
19 r19.26 3122 . . . . . . . . . . . . . 14 (∀𝑛 ∈ (1...𝑁)((𝑔‘𝑛) ∈ (topGen‘ran (,)) ∧ (𝑃‘𝑛) ∈ (𝑔‘𝑛)) ↔ (∀𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∈ (topGen‘ran (,)) ∧ ∀𝑛 ∈ (1...𝑁)(𝑃‘𝑛) ∈ (𝑔‘𝑛)))
20 uniretop 25042 . . . . . . . . . . . . . . . . . . . . 21 ℝ = ∪ (topGen‘ran (,))
2120eltopss 23186 . . . . . . . . . . . . . . . . . . . 20 (((topGen‘ran (,)) ∈ Top ∧ (𝑔‘𝑛) ∈ (topGen‘ran (,))) → (𝑔‘𝑛) ⊆ ℝ)
223, 21mpan 703 . . . . . . . . . . . . . . . . . . 19 ((𝑔‘𝑛) ∈ (topGen‘ran (,)) → (𝑔‘𝑛) ⊆ ℝ)
2322sselda 3930 . . . . . . . . . . . . . . . . . 18 (((𝑔‘𝑛) ∈ (topGen‘ran (,)) ∧ (𝑃‘𝑛) ∈ (𝑔‘𝑛)) → (𝑃‘𝑛) ∈ ℝ)
24 ptrecube.d . . . . . . . . . . . . . . . . . . . 20 𝐷 = ((abs ∘ − ) ↾ (ℝ × ℝ))
2524rexmet 25071 . . . . . . . . . . . . . . . . . . 19 𝐷 ∈ (∞Met‘ℝ)
26 eqid 2760 . . . . . . . . . . . . . . . . . . . . 21 (MetOpen‘𝐷) = (MetOpen‘𝐷)
2724, 26tgioo 25076 . . . . . . . . . . . . . . . . . . . 20 (topGen‘ran (,)) = (MetOpen‘𝐷)
2827mopni2 24773 . . . . . . . . . . . . . . . . . . 19 ((𝐷 ∈ (∞Met‘ℝ) ∧ (𝑔‘𝑛) ∈ (topGen‘ran (,)) ∧ (𝑃‘𝑛) ∈ (𝑔‘𝑛)) → ∃𝑦 ∈ ℝ+ ((𝑃‘𝑛)(ball‘𝐷)𝑦) ⊆ (𝑔‘𝑛))
2925, 28mp3an1 1477 . . . . . . . . . . . . . . . . . 18 (((𝑔‘𝑛) ∈ (topGen‘ran (,)) ∧ (𝑃‘𝑛) ∈ (𝑔‘𝑛)) → ∃𝑦 ∈ ℝ+ ((𝑃‘𝑛)(ball‘𝐷)𝑦) ⊆ (𝑔‘𝑛))
30 r19.42v 3194 . . . . . . . . . . . . . . . . . 18 (∃𝑦 ∈ ℝ+ ((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)𝑦) ⊆ (𝑔‘𝑛)) ↔ ((𝑃‘𝑛) ∈ ℝ ∧ ∃𝑦 ∈ ℝ+ ((𝑃‘𝑛)(ball‘𝐷)𝑦) ⊆ (𝑔‘𝑛)))
3123, 29, 30sylanbrc 595 . . . . . . . . . . . . . . . . 17 (((𝑔‘𝑛) ∈ (topGen‘ran (,)) ∧ (𝑃‘𝑛) ∈ (𝑔‘𝑛)) → ∃𝑦 ∈ ℝ+ ((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)𝑦) ⊆ (𝑔‘𝑛)))
3231ralimi 3099 . . . . . . . . . . . . . . . 16 (∀𝑛 ∈ (1...𝑁)((𝑔‘𝑛) ∈ (topGen‘ran (,)) ∧ (𝑃‘𝑛) ∈ (𝑔‘𝑛)) → ∀𝑛 ∈ (1...𝑁)∃𝑦 ∈ ℝ+ ((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)𝑦) ⊆ (𝑔‘𝑛)))
33 oveq2 7416 . . . . . . . . . . . . . . . . . . 19 (𝑦 = (ℎ‘𝑛) → ((𝑃‘𝑛)(ball‘𝐷)𝑦) = ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)))
3433sseq1d 3961 . . . . . . . . . . . . . . . . . 18 (𝑦 = (ℎ‘𝑛) → (((𝑃‘𝑛)(ball‘𝐷)𝑦) ⊆ (𝑔‘𝑛) ↔ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)) ⊆ (𝑔‘𝑛)))
3534anbi2d 642 . . . . . . . . . . . . . . . . 17 (𝑦 = (ℎ‘𝑛) → (((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)𝑦) ⊆ (𝑔‘𝑛)) ↔ ((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)) ⊆ (𝑔‘𝑛))))
3635ac6sfi 9253 . . . . . . . . . . . . . . . 16 (((1...𝑁) ∈ Fin ∧ ∀𝑛 ∈ (1...𝑁)∃𝑦 ∈ ℝ+ ((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)𝑦) ⊆ (𝑔‘𝑛))) → ∃ℎ(ℎ:(1...𝑁)⟶ℝ+ ∧ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)) ⊆ (𝑔‘𝑛))))
372, 32, 36sylancr 599 . . . . . . . . . . . . . . 15 (∀𝑛 ∈ (1...𝑁)((𝑔‘𝑛) ∈ (topGen‘ran (,)) ∧ (𝑃‘𝑛) ∈ (𝑔‘𝑛)) → ∃ℎ(ℎ:(1...𝑁)⟶ℝ+ ∧ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)) ⊆ (𝑔‘𝑛))))
38 1rp 13093 . . . . . . . . . . . . . . . . . . . 20 1 ∈ ℝ+
3938a1i 11 . . . . . . . . . . . . . . . . . . 19 ((ℎ:(1...𝑁)⟶ℝ+ ∧ (1...𝑁) = ∅) → 1 ∈ ℝ+)
40 frn 6705 . . . . . . . . . . . . . . . . . . . . 21 (ℎ:(1...𝑁)⟶ℝ+ → ran ℎ ⊆ ℝ+)
4140adantr 486 . . . . . . . . . . . . . . . . . . . 20 ((ℎ:(1...𝑁)⟶ℝ+ ∧ ¬ (1...𝑁) = ∅) → ran ℎ ⊆ ℝ+)
42 ffn 6697 . . . . . . . . . . . . . . . . . . . . . . . 24 (ℎ:(1...𝑁)⟶ℝ+ → ℎ Fn (1...𝑁))
43 fnfi 9171 . . . . . . . . . . . . . . . . . . . . . . . 24 ((ℎ Fn (1...𝑁) ∧ (1...𝑁) ∈ Fin) → ℎ ∈ Fin)
4442, 2, 43sylancl 598 . . . . . . . . . . . . . . . . . . . . . . 23 (ℎ:(1...𝑁)⟶ℝ+ → ℎ ∈ Fin)
45 rnfi 9307 . . . . . . . . . . . . . . . . . . . . . . 23 (ℎ ∈ Fin → ran ℎ ∈ Fin)
4644, 45syl 18 . . . . . . . . . . . . . . . . . . . . . 22 (ℎ:(1...𝑁)⟶ℝ+ → ran ℎ ∈ Fin)
4746adantr 486 . . . . . . . . . . . . . . . . . . . . 21 ((ℎ:(1...𝑁)⟶ℝ+ ∧ ¬ (1...𝑁) = ∅) → ran ℎ ∈ Fin)
48 dm0rn0 5902 . . . . . . . . . . . . . . . . . . . . . . . 24 (dom ℎ = ∅ ↔ ran ℎ = ∅)
49 fdm 6707 . . . . . . . . . . . . . . . . . . . . . . . . 25 (ℎ:(1...𝑁)⟶ℝ+ → dom ℎ = (1...𝑁))
5049eqeq1d 2762 . . . . . . . . . . . . . . . . . . . . . . . 24 (ℎ:(1...𝑁)⟶ℝ+ → (dom ℎ = ∅ ↔ (1...𝑁) = ∅))
5148, 50bitr3id 288 . . . . . . . . . . . . . . . . . . . . . . 23 (ℎ:(1...𝑁)⟶ℝ+ → (ran ℎ = ∅ ↔ (1...𝑁) = ∅))
5251necon3abid 2991 . . . . . . . . . . . . . . . . . . . . . 22 (ℎ:(1...𝑁)⟶ℝ+ → (ran ℎ ≠ ∅ ↔ ¬ (1...𝑁) = ∅))
5352biimpar 483 . . . . . . . . . . . . . . . . . . . . 21 ((ℎ:(1...𝑁)⟶ℝ+ ∧ ¬ (1...𝑁) = ∅) → ran ℎ ≠ ∅)
54 rpssre 13097 . . . . . . . . . . . . . . . . . . . . . . 23 ℝ+ ⊆ ℝ
5540, 54sstrdi 3942 . . . . . . . . . . . . . . . . . . . . . 22 (ℎ:(1...𝑁)⟶ℝ+ → ran ℎ ⊆ ℝ)
5655adantr 486 . . . . . . . . . . . . . . . . . . . . 21 ((ℎ:(1...𝑁)⟶ℝ+ ∧ ¬ (1...𝑁) = ∅) → ran ℎ ⊆ ℝ)
57 ltso 11361 . . . . . . . . . . . . . . . . . . . . . 22 < Or ℝ
58 fiinfcl 9473 . . . . . . . . . . . . . . . . . . . . . 22 (( < Or ℝ ∧ (ran ℎ ∈ Fin ∧ ran ℎ ≠ ∅ ∧ ran ℎ ⊆ ℝ)) → inf(ran ℎ, ℝ, < ) ∈ ran ℎ)
5957, 58mpan 703 . . . . . . . . . . . . . . . . . . . . 21 ((ran ℎ ∈ Fin ∧ ran ℎ ≠ ∅ ∧ ran ℎ ⊆ ℝ) → inf(ran ℎ, ℝ, < ) ∈ ran ℎ)
6047, 53, 56, 59syl3anc 1398 . . . . . . . . . . . . . . . . . . . 20 ((ℎ:(1...𝑁)⟶ℝ+ ∧ ¬ (1...𝑁) = ∅) → inf(ran ℎ, ℝ, < ) ∈ ran ℎ)
6141, 60sseldd 3931 . . . . . . . . . . . . . . . . . . 19 ((ℎ:(1...𝑁)⟶ℝ+ ∧ ¬ (1...𝑁) = ∅) → inf(ran ℎ, ℝ, < ) ∈ ℝ+)
6239, 61ifclda 4517 . . . . . . . . . . . . . . . . . 18 (ℎ:(1...𝑁)⟶ℝ+ → if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ∈ ℝ+)
6362adantr 486 . . . . . . . . . . . . . . . . 17 ((ℎ:(1...𝑁)⟶ℝ+ ∧ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)) ⊆ (𝑔‘𝑛))) → if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ∈ ℝ+)
6462adantr 486 . . . . . . . . . . . . . . . . . . . . . . . 24 ((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) → if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ∈ ℝ+)
6564rpxrd 13134 . . . . . . . . . . . . . . . . . . . . . . 23 ((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) → if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ∈ ℝ*)
66 ffvelcdm 7069 . . . . . . . . . . . . . . . . . . . . . . . 24 ((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) → (ℎ‘𝑛) ∈ ℝ+)
6766rpxrd 13134 . . . . . . . . . . . . . . . . . . . . . . 23 ((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) → (ℎ‘𝑛) ∈ ℝ*)
68 ne0i 4286 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑛 ∈ (1...𝑁) → (1...𝑁) ≠ ∅)
69 ifnefalse 4493 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((1...𝑁) ≠ ∅ → if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) = inf(ran ℎ, ℝ, < ))
7068, 69syl 18 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑛 ∈ (1...𝑁) → if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) = inf(ran ℎ, ℝ, < ))
7170adantl 487 . . . . . . . . . . . . . . . . . . . . . . . 24 ((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) → if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) = inf(ran ℎ, ℝ, < ))
7255adantr 486 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) → ran ℎ ⊆ ℝ)
73 0re 11281 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 0 ∈ ℝ
74 rpge0 13103 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (𝑦 ∈ ℝ+ → 0 ≤ 𝑦)
7574rgen 3078 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ∀𝑦 ∈ ℝ+ 0 ≤ 𝑦
76 ssralv 3999 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (ran ℎ ⊆ ℝ+ → (∀𝑦 ∈ ℝ+ 0 ≤ 𝑦 → ∀𝑦 ∈ ran ℎ0 ≤ 𝑦))
7740, 75, 76mpisyl 22 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (ℎ:(1...𝑁)⟶ℝ+ → ∀𝑦 ∈ ran ℎ0 ≤ 𝑦)
78 breq1 5105 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 (𝑥 = 0 → (𝑥 ≤ 𝑦 ↔ 0 ≤ 𝑦))
7978ralbidv 3185 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 (𝑥 = 0 → (∀𝑦 ∈ ran ℎ 𝑥 ≤ 𝑦 ↔ ∀𝑦 ∈ ran ℎ0 ≤ 𝑦))
8079rspcev 3576 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((0 ∈ ℝ ∧ ∀𝑦 ∈ ran ℎ0 ≤ 𝑦) → ∃𝑥 ∈ ℝ ∀𝑦 ∈ ran ℎ 𝑥 ≤ 𝑦)
8173, 77, 80sylancr 599 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (ℎ:(1...𝑁)⟶ℝ+ → ∃𝑥 ∈ ℝ ∀𝑦 ∈ ran ℎ 𝑥 ≤ 𝑦)
8281adantr 486 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) → ∃𝑥 ∈ ℝ ∀𝑦 ∈ ran ℎ 𝑥 ≤ 𝑦)
83 fnfvelrn 7068 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((ℎ Fn (1...𝑁) ∧ 𝑛 ∈ (1...𝑁)) → (ℎ‘𝑛) ∈ ran ℎ)
8442, 83sylan 592 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) → (ℎ‘𝑛) ∈ ran ℎ)
85 infrelb 12271 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((ran ℎ ⊆ ℝ ∧ ∃𝑥 ∈ ℝ ∀𝑦 ∈ ran ℎ 𝑥 ≤ 𝑦 ∧ (ℎ‘𝑛) ∈ ran ℎ) → inf(ran ℎ, ℝ, < ) ≤ (ℎ‘𝑛))
8672, 82, 84, 85syl3anc 1398 . . . . . . . . . . . . . . . . . . . . . . . 24 ((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) → inf(ran ℎ, ℝ, < ) ≤ (ℎ‘𝑛))
8771, 86eqbrtrd 5126 . . . . . . . . . . . . . . . . . . . . . . 23 ((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) → if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ≤ (ℎ‘𝑛))
8865, 67, 87jca31 524 . . . . . . . . . . . . . . . . . . . . . 22 ((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) → ((if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ∈ ℝ* ∧ (ℎ‘𝑛) ∈ ℝ*) ∧ if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ≤ (ℎ‘𝑛)))
89 ssbl 24703 . . . . . . . . . . . . . . . . . . . . . . . . 25 (((𝐷 ∈ (∞Met‘ℝ) ∧ (𝑃‘𝑛) ∈ ℝ) ∧ (if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ∈ ℝ* ∧ (ℎ‘𝑛) ∈ ℝ*) ∧ if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ≤ (ℎ‘𝑛)) → ((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)))
90893expb 1138 . . . . . . . . . . . . . . . . . . . . . . . 24 (((𝐷 ∈ (∞Met‘ℝ) ∧ (𝑃‘𝑛) ∈ ℝ) ∧ ((if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ∈ ℝ* ∧ (ℎ‘𝑛) ∈ ℝ*) ∧ if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ≤ (ℎ‘𝑛))) → ((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)))
9125, 90mpanl1 713 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝑃‘𝑛) ∈ ℝ ∧ ((if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ∈ ℝ* ∧ (ℎ‘𝑛) ∈ ℝ*) ∧ if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ≤ (ℎ‘𝑛))) → ((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)))
9291ancoms 464 . . . . . . . . . . . . . . . . . . . . . 22 ((((if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ∈ ℝ* ∧ (ℎ‘𝑛) ∈ ℝ*) ∧ if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ≤ (ℎ‘𝑛)) ∧ (𝑃‘𝑛) ∈ ℝ) → ((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)))
9388, 92sylan 592 . . . . . . . . . . . . . . . . . . . . 21 (((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) ∧ (𝑃‘𝑛) ∈ ℝ) → ((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)))
94 sstr2 3937 . . . . . . . . . . . . . . . . . . . . 21 (((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)) → (((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)) ⊆ (𝑔‘𝑛) → ((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛)))
9593, 94syl 18 . . . . . . . . . . . . . . . . . . . 20 (((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) ∧ (𝑃‘𝑛) ∈ ℝ) → (((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)) ⊆ (𝑔‘𝑛) → ((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛)))
9695expimpd 459 . . . . . . . . . . . . . . . . . . 19 ((ℎ:(1...𝑁)⟶ℝ+ ∧ 𝑛 ∈ (1...𝑁)) → (((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)) ⊆ (𝑔‘𝑛)) → ((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛)))
9796ralimdva 3174 . . . . . . . . . . . . . . . . . 18 (ℎ:(1...𝑁)⟶ℝ+ → (∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)) ⊆ (𝑔‘𝑛)) → ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛)))
9897imp 412 . . . . . . . . . . . . . . . . 17 ((ℎ:(1...𝑁)⟶ℝ+ ∧ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)) ⊆ (𝑔‘𝑛))) → ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛))
9924fveq2i 6876 . . . . . . . . . . . . . . . . . . . . . 22 (ball‘𝐷) = (ball‘((abs ∘ − ) ↾ (ℝ × ℝ)))
10099oveqi 7421 . . . . . . . . . . . . . . . . . . . . 21 ((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) = ((𝑃‘𝑛)(ball‘((abs ∘ − ) ↾ (ℝ × ℝ)))if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )))
101100sseq1i 3958 . . . . . . . . . . . . . . . . . . . 20 (((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛) ↔ ((𝑃‘𝑛)(ball‘((abs ∘ − ) ↾ (ℝ × ℝ)))if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛))
102101ralbii 3108 . . . . . . . . . . . . . . . . . . 19 (∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛) ↔ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘((abs ∘ − ) ↾ (ℝ × ℝ)))if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛))
103 nfv 1947 . . . . . . . . . . . . . . . . . . 19 Ⅎ𝑑∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘((abs ∘ − ) ↾ (ℝ × ℝ)))if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛)
104102, 103nfxfr 1886 . . . . . . . . . . . . . . . . . 18 Ⅎ𝑑∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛)
105 oveq2 7416 . . . . . . . . . . . . . . . . . . . 20 (𝑑 = if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) → ((𝑃‘𝑛)(ball‘𝐷)𝑑) = ((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))))
106105sseq1d 3961 . . . . . . . . . . . . . . . . . . 19 (𝑑 = if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) → (((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ (𝑔‘𝑛) ↔ ((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛)))
107106ralbidv 3185 . . . . . . . . . . . . . . . . . 18 (𝑑 = if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) → (∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ (𝑔‘𝑛) ↔ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛)))
108104, 107rspce 3565 . . . . . . . . . . . . . . . . 17 ((if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < )) ∈ ℝ+ ∧ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)if((1...𝑁) = ∅, 1, inf(ran ℎ, ℝ, < ))) ⊆ (𝑔‘𝑛)) → ∃𝑑 ∈ ℝ+ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ (𝑔‘𝑛))
10963, 98, 108syl2anc 596 . . . . . . . . . . . . . . . 16 ((ℎ:(1...𝑁)⟶ℝ+ ∧ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)) ⊆ (𝑔‘𝑛))) → ∃𝑑 ∈ ℝ+ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ (𝑔‘𝑛))
110109exlimiv 1963 . . . . . . . . . . . . . . 15 (∃ℎ(ℎ:(1...𝑁)⟶ℝ+ ∧ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛) ∈ ℝ ∧ ((𝑃‘𝑛)(ball‘𝐷)(ℎ‘𝑛)) ⊆ (𝑔‘𝑛))) → ∃𝑑 ∈ ℝ+ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ (𝑔‘𝑛))
11137, 110syl 18 . . . . . . . . . . . . . 14 (∀𝑛 ∈ (1...𝑁)((𝑔‘𝑛) ∈ (topGen‘ran (,)) ∧ (𝑃‘𝑛) ∈ (𝑔‘𝑛)) → ∃𝑑 ∈ ℝ+ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ (𝑔‘𝑛))
11219, 111sylbir 238 . . . . . . . . . . . . 13 ((∀𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∈ (topGen‘ran (,)) ∧ ∀𝑛 ∈ (1...𝑁)(𝑃‘𝑛) ∈ (𝑔‘𝑛)) → ∃𝑑 ∈ ℝ+ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ (𝑔‘𝑛))
11318, 112sylan2 605 . . . . . . . . . . . 12 ((∀𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∈ (topGen‘ran (,)) ∧ 𝑃 ∈ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛)) → ∃𝑑 ∈ ℝ+ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ (𝑔‘𝑛))
11416, 113sylanb 593 . . . . . . . . . . 11 ((∀𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ 𝑃 ∈ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛)) → ∃𝑑 ∈ ℝ+ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ (𝑔‘𝑛))
115 sstr2 3937 . . . . . . . . . . . . 13 (X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) → (X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ⊆ 𝑆 → X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆))
116 ss2ixp 8916 . . . . . . . . . . . . 13 (∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ (𝑔‘𝑛) → X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛))
117115, 116syl11 34 . . . . . . . . . . . 12 (X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ⊆ 𝑆 → (∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ (𝑔‘𝑛) → X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆))
118117reximdv 3177 . . . . . . . . . . 11 (X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ⊆ 𝑆 → (∃𝑑 ∈ ℝ+ ∀𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ (𝑔‘𝑛) → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆))
119114, 118syl5com 32 . . . . . . . . . 10 ((∀𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ 𝑃 ∈ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛)) → (X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ⊆ 𝑆 → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆))
120119expimpd 459 . . . . . . . . 9 (∀𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) → ((𝑃 ∈ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∧ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ⊆ 𝑆) → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆))
121 eleq2 2849 . . . . . . . . . . 11 (𝑧 = X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) → (𝑃 ∈ 𝑧 ↔ 𝑃 ∈ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛)))
122 sseq1 3955 . . . . . . . . . . 11 (𝑧 = X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) → (𝑧 ⊆ 𝑆 ↔ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ⊆ 𝑆))
123121, 122anbi12d 644 . . . . . . . . . 10 (𝑧 = X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) → ((𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆) ↔ (𝑃 ∈ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∧ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ⊆ 𝑆)))
124123imbi1d 344 . . . . . . . . 9 (𝑧 = X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) → (((𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆) → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆) ↔ ((𝑃 ∈ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∧ X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ⊆ 𝑆) → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆)))
125120, 124syl5ibrcom 250 . . . . . . . 8 (∀𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) → (𝑧 = X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) → ((𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆) → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆)))
1261253ad2ant2 1152 . . . . . . 7 ((𝑔 Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑧 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑧)(𝑔‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) → (𝑧 = X𝑛 ∈ (1...𝑁)(𝑔‘𝑛) → ((𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆) → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆)))
127126imp 412 . . . . . 6 (((𝑔 Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑧 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑧)(𝑔‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑧 = X𝑛 ∈ (1...𝑁)(𝑔‘𝑛)) → ((𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆) → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆))
128127exlimiv 1963 . . . . 5 (∃𝑔((𝑔 Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(𝑔‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑧 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑧)(𝑔‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑧 = X𝑛 ∈ (1...𝑁)(𝑔‘𝑛)) → ((𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆) → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆))
12912, 128sylbi 220 . . . 4 (𝑧 ∈ {𝑥 ∣ ∃ℎ((ℎ Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(ℎ‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑤 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑤)(ℎ‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑥 = X𝑛 ∈ (1...𝑁)(ℎ‘𝑛))} → ((𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆) → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆))
130129rexlimiv 3156 . . 3 (∃𝑧 ∈ {𝑥 ∣ ∃ℎ((ℎ Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(ℎ‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑤 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑤)(ℎ‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑥 = X𝑛 ∈ (1...𝑁)(ℎ‘𝑛))} (𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆) → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆)
13111, 130syl 18 . 2 ((𝑆 ∈ (topGen‘{𝑥 ∣ ∃ℎ((ℎ Fn (1...𝑁) ∧ ∀𝑛 ∈ (1...𝑁)(ℎ‘𝑛) ∈ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛) ∧ ∃𝑤 ∈ Fin ∀𝑛 ∈ ((1...𝑁) ∖ 𝑤)(ℎ‘𝑛) = ∪ (((1...𝑁) × {(topGen‘ran (,))})‘𝑛)) ∧ 𝑥 = X𝑛 ∈ (1...𝑁)(ℎ‘𝑛))}) ∧ 𝑃 ∈ 𝑆) → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆)
13210, 131sylanb 593 1 ((𝑆 ∈ 𝑅 ∧ 𝑃 ∈ 𝑆) → ∃𝑑 ∈ ℝ+ X𝑛 ∈ (1...𝑁)((𝑃‘𝑛)(ball‘𝐷)𝑑) ⊆ 𝑆)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ∧ wa 401   ∧ w3a 1103   = wceq 1570  ∃wex 1812   ∈ wcel 2145  {cab 2738   ≠ wne 2955  ∀wral 3076  ∃wrex 3086  Vcvv 3450   ∖ cdif 3895   ⊆ wss 3898  ∅c0 4278  ifcif 4481  {csn 4583  ∪ cuni 4866   class class class wbr 5102   Or wor 5554   × cxp 5645  dom cdm 5647  ran crn 5648   ↾ cres 5649   ∘ ccom 5651   Fn wfn 6522  ⟶wf 6523  ‘cfv 6527  (class class class)co 7408  Xcixp 8903  Fincfn 8951  infcinf 9411  ℝcr 11170  0cc0 11171  1c1 11172  ℝ*cxr 11313   < clt 11314   ≤ cle 11315   − cmin 11512  ℝ+crp 13089  (,)cioo 13445  ...cfz 13608  abscabs 15368  topGenctg 17569  ∏tcpt 17570  ∞Metcxmet 21624  ballcbl 21626  MetOpencmopn 21629  Topctop 23172
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-rep 5231  ax-sep 5248  ax-nul 5259  ax-pow 5326  ax-pr 5390  ax-un 7734  ax-cnex 11227  ax-resscn 11228  ax-1cn 11229  ax-icn 11230  ax-addcl 11231  ax-addrcl 11232  ax-mulcl 11233  ax-mulrcl 11234  ax-mulcom 11235  ax-addass 11236  ax-mulass 11237  ax-distr 11238  ax-i2m1 11239  ax-1ne0 11240  ax-1rid 11241  ax-rnegex 11242  ax-rrecex 11243  ax-cnre 11244  ax-pre-lttri 11245  ax-pre-lttrn 11246  ax-pre-ltadd 11247  ax-pre-mulgt0 11248  ax-pre-sup 11249
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-rmo 3365  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3847  df-dif 3901  df-un 3903  df-in 3905  df-ss 3915  df-pss 3918  df-nul 4279  df-if 4482  df-pw 4558  df-sn 4584  df-pr 4586  df-op 4590  df-uni 4867  df-iun 4952  df-br 5103  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5542  df-eprel 5547  df-po 5555  df-so 5556  df-fr 5600  df-we 5602  df-xp 5653  df-rel 5654  df-cnv 5655  df-co 5656  df-dm 5657  df-rn 5658  df-res 5659  df-ima 5660  df-pred 6293  df-ord 6354  df-on 6355  df-lim 6356  df-suc 6357  df-iota 6483  df-fun 6529  df-fn 6530  df-f 6531  df-f1 6532  df-fo 6533  df-f1o 6534  df-fv 6535  df-riota 7365  df-ov 7411  df-oprab 7412  df-mpo 7413  df-om 7861  df-1st 7984  df-2nd 7985  df-frecs 8277  df-wrecs 8308  df-recs 8357  df-rdg 8396  df-1o 8454  df-er 8695  df-map 8827  df-ixp 8904  df-en 8952  df-dom 8953  df-sdom 8954  df-fin 8955  df-sup 9412  df-inf 9413  df-pnf 11316  df-mnf 11317  df-xr 11318  df-ltxr 11319  df-le 11320  df-sub 11514  df-neg 11515  df-div 11943  df-nn 12305  df-2 12374  df-3 12375  df-n0 12576  df-z 12663  df-uz 12935  df-q 13045  df-rp 13090  df-xneg 13210  df-xadd 13211  df-xmul 13212  df-ioo 13449  df-fz 13609  df-seq 14113  df-exp 14173  df-cj 15233  df-re 15234  df-im 15235  df-sqrt 15369  df-abs 15370  df-topgen 17575  df-pt 17576  df-psmet 21631  df-xmet 21632  df-met 21633  df-bl 21634  df-mopn 21635  df-top 23173  df-topon 23190  df-bases 23225
This theorem is used by:  poimirlem29  38487
  Copyright terms: Public domain W3C validator