Step |
Hyp |
Ref |
Expression |
1 |
|
ptrecube.r |
⊢ 𝑅 = ( ∏t ‘ ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ) |
2 |
|
ptrecube.d |
⊢ 𝐷 = ( ( abs ∘ − ) ↾ ( ℝ × ℝ ) ) |
3 |
|
fzfi |
⊢ ( 1 ... 𝑁 ) ∈ Fin |
4 |
|
retop |
⊢ ( topGen ‘ ran (,) ) ∈ Top |
5 |
|
fnconstg |
⊢ ( ( topGen ‘ ran (,) ) ∈ Top → ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) Fn ( 1 ... 𝑁 ) ) |
6 |
4 5
|
ax-mp |
⊢ ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) Fn ( 1 ... 𝑁 ) |
7 |
|
eqid |
⊢ { 𝑥 ∣ ∃ ℎ ( ( ℎ 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 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ) } |
8 |
7
|
ptval |
⊢ ( ( ( 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 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ) } ) ) |
9 |
3 6 8
|
mp2an |
⊢ ( ∏t ‘ ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ) = ( topGen ‘ { 𝑥 ∣ ∃ ℎ ( ( ℎ Fn ( 1 ... 𝑁 ) ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ∧ ∃ 𝑤 ∈ Fin ∀ 𝑛 ∈ ( ( 1 ... 𝑁 ) ∖ 𝑤 ) ( ℎ ‘ 𝑛 ) = ∪ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ) ∧ 𝑥 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ) } ) |
10 |
1 9
|
eqtri |
⊢ 𝑅 = ( topGen ‘ { 𝑥 ∣ ∃ ℎ ( ( ℎ Fn ( 1 ... 𝑁 ) ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ∧ ∃ 𝑤 ∈ Fin ∀ 𝑛 ∈ ( ( 1 ... 𝑁 ) ∖ 𝑤 ) ( ℎ ‘ 𝑛 ) = ∪ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ) ∧ 𝑥 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ) } ) |
11 |
10
|
eleq2i |
⊢ ( 𝑆 ∈ 𝑅 ↔ 𝑆 ∈ ( topGen ‘ { 𝑥 ∣ ∃ ℎ ( ( ℎ Fn ( 1 ... 𝑁 ) ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ∧ ∃ 𝑤 ∈ Fin ∀ 𝑛 ∈ ( ( 1 ... 𝑁 ) ∖ 𝑤 ) ( ℎ ‘ 𝑛 ) = ∪ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ) ∧ 𝑥 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ) } ) ) |
12 |
|
tg2 |
⊢ ( ( 𝑆 ∈ ( 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 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ) } ( 𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆 ) ) |
13 |
7
|
elpt |
⊢ ( 𝑧 ∈ { 𝑥 ∣ ∃ ℎ ( ( ℎ 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 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ) ) |
14 |
|
fvex |
⊢ ( topGen ‘ ran (,) ) ∈ V |
15 |
14
|
fvconst2 |
⊢ ( 𝑛 ∈ ( 1 ... 𝑁 ) → ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) = ( topGen ‘ ran (,) ) ) |
16 |
15
|
eleq2d |
⊢ ( 𝑛 ∈ ( 1 ... 𝑁 ) → ( ( 𝑔 ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ↔ ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ) ) |
17 |
16
|
ralbiia |
⊢ ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ↔ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ) |
18 |
|
elixp2 |
⊢ ( 𝑃 ∈ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ↔ ( 𝑃 ∈ V ∧ 𝑃 Fn ( 1 ... 𝑁 ) ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑃 ‘ 𝑛 ) ∈ ( 𝑔 ‘ 𝑛 ) ) ) |
19 |
18
|
simp3bi |
⊢ ( 𝑃 ∈ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) → ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑃 ‘ 𝑛 ) ∈ ( 𝑔 ‘ 𝑛 ) ) |
20 |
|
r19.26 |
⊢ ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ∧ ( 𝑃 ‘ 𝑛 ) ∈ ( 𝑔 ‘ 𝑛 ) ) ↔ ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑃 ‘ 𝑛 ) ∈ ( 𝑔 ‘ 𝑛 ) ) ) |
21 |
|
uniretop |
⊢ ℝ = ∪ ( topGen ‘ ran (,) ) |
22 |
21
|
eltopss |
⊢ ( ( ( topGen ‘ ran (,) ) ∈ Top ∧ ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ) → ( 𝑔 ‘ 𝑛 ) ⊆ ℝ ) |
23 |
4 22
|
mpan |
⊢ ( ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) → ( 𝑔 ‘ 𝑛 ) ⊆ ℝ ) |
24 |
23
|
sselda |
⊢ ( ( ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ∧ ( 𝑃 ‘ 𝑛 ) ∈ ( 𝑔 ‘ 𝑛 ) ) → ( 𝑃 ‘ 𝑛 ) ∈ ℝ ) |
25 |
2
|
rexmet |
⊢ 𝐷 ∈ ( ∞Met ‘ ℝ ) |
26 |
|
eqid |
⊢ ( MetOpen ‘ 𝐷 ) = ( MetOpen ‘ 𝐷 ) |
27 |
2 26
|
tgioo |
⊢ ( topGen ‘ ran (,) ) = ( MetOpen ‘ 𝐷 ) |
28 |
27
|
mopni2 |
⊢ ( ( 𝐷 ∈ ( ∞Met ‘ ℝ ) ∧ ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ∧ ( 𝑃 ‘ 𝑛 ) ∈ ( 𝑔 ‘ 𝑛 ) ) → ∃ 𝑦 ∈ ℝ+ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑦 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) |
29 |
25 28
|
mp3an1 |
⊢ ( ( ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ∧ ( 𝑃 ‘ 𝑛 ) ∈ ( 𝑔 ‘ 𝑛 ) ) → ∃ 𝑦 ∈ ℝ+ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑦 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) |
30 |
|
r19.42v |
⊢ ( ∃ 𝑦 ∈ ℝ+ ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑦 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ↔ ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ∃ 𝑦 ∈ ℝ+ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑦 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) |
31 |
24 29 30
|
sylanbrc |
⊢ ( ( ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ∧ ( 𝑃 ‘ 𝑛 ) ∈ ( 𝑔 ‘ 𝑛 ) ) → ∃ 𝑦 ∈ ℝ+ ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑦 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) |
32 |
31
|
ralimi |
⊢ ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ∧ ( 𝑃 ‘ 𝑛 ) ∈ ( 𝑔 ‘ 𝑛 ) ) → ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ∃ 𝑦 ∈ ℝ+ ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑦 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) |
33 |
|
oveq2 |
⊢ ( 𝑦 = ( ℎ ‘ 𝑛 ) → ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑦 ) = ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ) |
34 |
33
|
sseq1d |
⊢ ( 𝑦 = ( ℎ ‘ 𝑛 ) → ( ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑦 ) ⊆ ( 𝑔 ‘ 𝑛 ) ↔ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) |
35 |
34
|
anbi2d |
⊢ ( 𝑦 = ( ℎ ‘ 𝑛 ) → ( ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑦 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ↔ ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) ) |
36 |
35
|
ac6sfi |
⊢ ( ( ( 1 ... 𝑁 ) ∈ Fin ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ∃ 𝑦 ∈ ℝ+ ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑦 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) → ∃ ℎ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) ) |
37 |
3 32 36
|
sylancr |
⊢ ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ∧ ( 𝑃 ‘ 𝑛 ) ∈ ( 𝑔 ‘ 𝑛 ) ) → ∃ ℎ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) ) |
38 |
|
1rp |
⊢ 1 ∈ ℝ+ |
39 |
38
|
a1i |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ ( 1 ... 𝑁 ) = ∅ ) → 1 ∈ ℝ+ ) |
40 |
|
frn |
⊢ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ → ran ℎ ⊆ ℝ+ ) |
41 |
40
|
adantr |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ ¬ ( 1 ... 𝑁 ) = ∅ ) → ran ℎ ⊆ ℝ+ ) |
42 |
|
ffn |
⊢ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ → ℎ Fn ( 1 ... 𝑁 ) ) |
43 |
|
fnfi |
⊢ ( ( ℎ Fn ( 1 ... 𝑁 ) ∧ ( 1 ... 𝑁 ) ∈ Fin ) → ℎ ∈ Fin ) |
44 |
42 3 43
|
sylancl |
⊢ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ → ℎ ∈ Fin ) |
45 |
|
rnfi |
⊢ ( ℎ ∈ Fin → ran ℎ ∈ Fin ) |
46 |
44 45
|
syl |
⊢ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ → ran ℎ ∈ Fin ) |
47 |
46
|
adantr |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ ¬ ( 1 ... 𝑁 ) = ∅ ) → ran ℎ ∈ Fin ) |
48 |
|
dm0rn0 |
⊢ ( dom ℎ = ∅ ↔ ran ℎ = ∅ ) |
49 |
|
fdm |
⊢ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ → dom ℎ = ( 1 ... 𝑁 ) ) |
50 |
49
|
eqeq1d |
⊢ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ → ( dom ℎ = ∅ ↔ ( 1 ... 𝑁 ) = ∅ ) ) |
51 |
48 50
|
bitr3id |
⊢ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ → ( ran ℎ = ∅ ↔ ( 1 ... 𝑁 ) = ∅ ) ) |
52 |
51
|
necon3abid |
⊢ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ → ( ran ℎ ≠ ∅ ↔ ¬ ( 1 ... 𝑁 ) = ∅ ) ) |
53 |
52
|
biimpar |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ ¬ ( 1 ... 𝑁 ) = ∅ ) → ran ℎ ≠ ∅ ) |
54 |
|
rpssre |
⊢ ℝ+ ⊆ ℝ |
55 |
40 54
|
sstrdi |
⊢ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ → ran ℎ ⊆ ℝ ) |
56 |
55
|
adantr |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ ¬ ( 1 ... 𝑁 ) = ∅ ) → ran ℎ ⊆ ℝ ) |
57 |
|
ltso |
⊢ < Or ℝ |
58 |
|
fiinfcl |
⊢ ( ( < Or ℝ ∧ ( ran ℎ ∈ Fin ∧ ran ℎ ≠ ∅ ∧ ran ℎ ⊆ ℝ ) ) → inf ( ran ℎ , ℝ , < ) ∈ ran ℎ ) |
59 |
57 58
|
mpan |
⊢ ( ( ran ℎ ∈ Fin ∧ ran ℎ ≠ ∅ ∧ ran ℎ ⊆ ℝ ) → inf ( ran ℎ , ℝ , < ) ∈ ran ℎ ) |
60 |
47 53 56 59
|
syl3anc |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ ¬ ( 1 ... 𝑁 ) = ∅ ) → inf ( ran ℎ , ℝ , < ) ∈ ran ℎ ) |
61 |
41 60
|
sseldd |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ ¬ ( 1 ... 𝑁 ) = ∅ ) → inf ( ran ℎ , ℝ , < ) ∈ ℝ+ ) |
62 |
39 61
|
ifclda |
⊢ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ → if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ∈ ℝ+ ) |
63 |
62
|
adantr |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) → if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ∈ ℝ+ ) |
64 |
62
|
adantr |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) → if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ∈ ℝ+ ) |
65 |
64
|
rpxrd |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) → if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ∈ ℝ* ) |
66 |
|
ffvelrn |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) → ( ℎ ‘ 𝑛 ) ∈ ℝ+ ) |
67 |
66
|
rpxrd |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) → ( ℎ ‘ 𝑛 ) ∈ ℝ* ) |
68 |
|
ne0i |
⊢ ( 𝑛 ∈ ( 1 ... 𝑁 ) → ( 1 ... 𝑁 ) ≠ ∅ ) |
69 |
|
ifnefalse |
⊢ ( ( 1 ... 𝑁 ) ≠ ∅ → if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) = inf ( ran ℎ , ℝ , < ) ) |
70 |
68 69
|
syl |
⊢ ( 𝑛 ∈ ( 1 ... 𝑁 ) → if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) = inf ( ran ℎ , ℝ , < ) ) |
71 |
70
|
adantl |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) → if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) = inf ( ran ℎ , ℝ , < ) ) |
72 |
55
|
adantr |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) → ran ℎ ⊆ ℝ ) |
73 |
|
0re |
⊢ 0 ∈ ℝ |
74 |
|
rpge0 |
⊢ ( 𝑦 ∈ ℝ+ → 0 ≤ 𝑦 ) |
75 |
74
|
rgen |
⊢ ∀ 𝑦 ∈ ℝ+ 0 ≤ 𝑦 |
76 |
|
ssralv |
⊢ ( ran ℎ ⊆ ℝ+ → ( ∀ 𝑦 ∈ ℝ+ 0 ≤ 𝑦 → ∀ 𝑦 ∈ ran ℎ 0 ≤ 𝑦 ) ) |
77 |
40 75 76
|
mpisyl |
⊢ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ → ∀ 𝑦 ∈ ran ℎ 0 ≤ 𝑦 ) |
78 |
|
breq1 |
⊢ ( 𝑥 = 0 → ( 𝑥 ≤ 𝑦 ↔ 0 ≤ 𝑦 ) ) |
79 |
78
|
ralbidv |
⊢ ( 𝑥 = 0 → ( ∀ 𝑦 ∈ ran ℎ 𝑥 ≤ 𝑦 ↔ ∀ 𝑦 ∈ ran ℎ 0 ≤ 𝑦 ) ) |
80 |
79
|
rspcev |
⊢ ( ( 0 ∈ ℝ ∧ ∀ 𝑦 ∈ ran ℎ 0 ≤ 𝑦 ) → ∃ 𝑥 ∈ ℝ ∀ 𝑦 ∈ ran ℎ 𝑥 ≤ 𝑦 ) |
81 |
73 77 80
|
sylancr |
⊢ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ → ∃ 𝑥 ∈ ℝ ∀ 𝑦 ∈ ran ℎ 𝑥 ≤ 𝑦 ) |
82 |
81
|
adantr |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) → ∃ 𝑥 ∈ ℝ ∀ 𝑦 ∈ ran ℎ 𝑥 ≤ 𝑦 ) |
83 |
|
fnfvelrn |
⊢ ( ( ℎ Fn ( 1 ... 𝑁 ) ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) → ( ℎ ‘ 𝑛 ) ∈ ran ℎ ) |
84 |
42 83
|
sylan |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) → ( ℎ ‘ 𝑛 ) ∈ ran ℎ ) |
85 |
|
infrelb |
⊢ ( ( ran ℎ ⊆ ℝ ∧ ∃ 𝑥 ∈ ℝ ∀ 𝑦 ∈ ran ℎ 𝑥 ≤ 𝑦 ∧ ( ℎ ‘ 𝑛 ) ∈ ran ℎ ) → inf ( ran ℎ , ℝ , < ) ≤ ( ℎ ‘ 𝑛 ) ) |
86 |
72 82 84 85
|
syl3anc |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) → inf ( ran ℎ , ℝ , < ) ≤ ( ℎ ‘ 𝑛 ) ) |
87 |
71 86
|
eqbrtrd |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) → if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ≤ ( ℎ ‘ 𝑛 ) ) |
88 |
65 67 87
|
jca31 |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) → ( ( if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ∈ ℝ* ∧ ( ℎ ‘ 𝑛 ) ∈ ℝ* ) ∧ if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ≤ ( ℎ ‘ 𝑛 ) ) ) |
89 |
|
ssbl |
⊢ ( ( ( 𝐷 ∈ ( ∞Met ‘ ℝ ) ∧ ( 𝑃 ‘ 𝑛 ) ∈ ℝ ) ∧ ( if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ∈ ℝ* ∧ ( ℎ ‘ 𝑛 ) ∈ ℝ* ) ∧ if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ≤ ( ℎ ‘ 𝑛 ) ) → ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ) |
90 |
89
|
3expb |
⊢ ( ( ( 𝐷 ∈ ( ∞Met ‘ ℝ ) ∧ ( 𝑃 ‘ 𝑛 ) ∈ ℝ ) ∧ ( ( if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ∈ ℝ* ∧ ( ℎ ‘ 𝑛 ) ∈ ℝ* ) ∧ if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ≤ ( ℎ ‘ 𝑛 ) ) ) → ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ) |
91 |
25 90
|
mpanl1 |
⊢ ( ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ∈ ℝ* ∧ ( ℎ ‘ 𝑛 ) ∈ ℝ* ) ∧ if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ≤ ( ℎ ‘ 𝑛 ) ) ) → ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ) |
92 |
91
|
ancoms |
⊢ ( ( ( ( if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ∈ ℝ* ∧ ( ℎ ‘ 𝑛 ) ∈ ℝ* ) ∧ if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ≤ ( ℎ ‘ 𝑛 ) ) ∧ ( 𝑃 ‘ 𝑛 ) ∈ ℝ ) → ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ) |
93 |
88 92
|
sylan |
⊢ ( ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) ∧ ( 𝑃 ‘ 𝑛 ) ∈ ℝ ) → ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ) |
94 |
|
sstr2 |
⊢ ( ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) → ( ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ⊆ ( 𝑔 ‘ 𝑛 ) → ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) |
95 |
93 94
|
syl |
⊢ ( ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) ∧ ( 𝑃 ‘ 𝑛 ) ∈ ℝ ) → ( ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ⊆ ( 𝑔 ‘ 𝑛 ) → ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) |
96 |
95
|
expimpd |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ 𝑛 ∈ ( 1 ... 𝑁 ) ) → ( ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) → ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) |
97 |
96
|
ralimdva |
⊢ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ → ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) → ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) |
98 |
97
|
imp |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) → ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) |
99 |
2
|
fveq2i |
⊢ ( ball ‘ 𝐷 ) = ( ball ‘ ( ( abs ∘ − ) ↾ ( ℝ × ℝ ) ) ) |
100 |
99
|
oveqi |
⊢ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) = ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ ( ( abs ∘ − ) ↾ ( ℝ × ℝ ) ) ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) |
101 |
100
|
sseq1i |
⊢ ( ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ↔ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ ( ( abs ∘ − ) ↾ ( ℝ × ℝ ) ) ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) |
102 |
101
|
ralbii |
⊢ ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ↔ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ ( ( abs ∘ − ) ↾ ( ℝ × ℝ ) ) ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) |
103 |
|
nfv |
⊢ Ⅎ 𝑑 ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ ( ( abs ∘ − ) ↾ ( ℝ × ℝ ) ) ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) |
104 |
102 103
|
nfxfr |
⊢ Ⅎ 𝑑 ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) |
105 |
|
oveq2 |
⊢ ( 𝑑 = if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) → ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) = ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ) |
106 |
105
|
sseq1d |
⊢ ( 𝑑 = if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) → ( ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ ( 𝑔 ‘ 𝑛 ) ↔ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) |
107 |
106
|
ralbidv |
⊢ ( 𝑑 = if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) → ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ ( 𝑔 ‘ 𝑛 ) ↔ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) |
108 |
104 107
|
rspce |
⊢ ( ( if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ∈ ℝ+ ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) if ( ( 1 ... 𝑁 ) = ∅ , 1 , inf ( ran ℎ , ℝ , < ) ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) → ∃ 𝑑 ∈ ℝ+ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) |
109 |
63 98 108
|
syl2anc |
⊢ ( ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) → ∃ 𝑑 ∈ ℝ+ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) |
110 |
109
|
exlimiv |
⊢ ( ∃ ℎ ( ℎ : ( 1 ... 𝑁 ) ⟶ ℝ+ ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ∈ ℝ ∧ ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) ( ℎ ‘ 𝑛 ) ) ⊆ ( 𝑔 ‘ 𝑛 ) ) ) → ∃ 𝑑 ∈ ℝ+ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) |
111 |
37 110
|
syl |
⊢ ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ∧ ( 𝑃 ‘ 𝑛 ) ∈ ( 𝑔 ‘ 𝑛 ) ) → ∃ 𝑑 ∈ ℝ+ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) |
112 |
20 111
|
sylbir |
⊢ ( ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑃 ‘ 𝑛 ) ∈ ( 𝑔 ‘ 𝑛 ) ) → ∃ 𝑑 ∈ ℝ+ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) |
113 |
19 112
|
sylan2 |
⊢ ( ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∈ ( topGen ‘ ran (,) ) ∧ 𝑃 ∈ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ) → ∃ 𝑑 ∈ ℝ+ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) |
114 |
17 113
|
sylanb |
⊢ ( ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ∧ 𝑃 ∈ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ) → ∃ 𝑑 ∈ ℝ+ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ ( 𝑔 ‘ 𝑛 ) ) |
115 |
|
sstr2 |
⊢ ( X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) → ( X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ⊆ 𝑆 → X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) ) |
116 |
|
ss2ixp |
⊢ ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ ( 𝑔 ‘ 𝑛 ) → X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ) |
117 |
115 116
|
syl11 |
⊢ ( X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ⊆ 𝑆 → ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ ( 𝑔 ‘ 𝑛 ) → X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) ) |
118 |
117
|
reximdv |
⊢ ( X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ⊆ 𝑆 → ( ∃ 𝑑 ∈ ℝ+ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ ( 𝑔 ‘ 𝑛 ) → ∃ 𝑑 ∈ ℝ+ X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) ) |
119 |
114 118
|
syl5com |
⊢ ( ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ∧ 𝑃 ∈ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ) → ( X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ⊆ 𝑆 → ∃ 𝑑 ∈ ℝ+ X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) ) |
120 |
119
|
expimpd |
⊢ ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) → ( ( 𝑃 ∈ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∧ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ⊆ 𝑆 ) → ∃ 𝑑 ∈ ℝ+ X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) ) |
121 |
|
eleq2 |
⊢ ( 𝑧 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) → ( 𝑃 ∈ 𝑧 ↔ 𝑃 ∈ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ) ) |
122 |
|
sseq1 |
⊢ ( 𝑧 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) → ( 𝑧 ⊆ 𝑆 ↔ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ⊆ 𝑆 ) ) |
123 |
121 122
|
anbi12d |
⊢ ( 𝑧 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) → ( ( 𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆 ) ↔ ( 𝑃 ∈ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∧ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ⊆ 𝑆 ) ) ) |
124 |
123
|
imbi1d |
⊢ ( 𝑧 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) → ( ( ( 𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆 ) → ∃ 𝑑 ∈ ℝ+ X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) ↔ ( ( 𝑃 ∈ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∧ X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ⊆ 𝑆 ) → ∃ 𝑑 ∈ ℝ+ X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) ) ) |
125 |
120 124
|
syl5ibrcom |
⊢ ( ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) → ( 𝑧 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) → ( ( 𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆 ) → ∃ 𝑑 ∈ ℝ+ X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) ) ) |
126 |
125
|
3ad2ant2 |
⊢ ( ( 𝑔 Fn ( 1 ... 𝑁 ) ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ∧ ∃ 𝑧 ∈ Fin ∀ 𝑛 ∈ ( ( 1 ... 𝑁 ) ∖ 𝑧 ) ( 𝑔 ‘ 𝑛 ) = ∪ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ) → ( 𝑧 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) → ( ( 𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆 ) → ∃ 𝑑 ∈ ℝ+ X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) ) ) |
127 |
126
|
imp |
⊢ ( ( ( 𝑔 Fn ( 1 ... 𝑁 ) ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ∧ ∃ 𝑧 ∈ Fin ∀ 𝑛 ∈ ( ( 1 ... 𝑁 ) ∖ 𝑧 ) ( 𝑔 ‘ 𝑛 ) = ∪ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ) ∧ 𝑧 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ) → ( ( 𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆 ) → ∃ 𝑑 ∈ ℝ+ X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) ) |
128 |
127
|
exlimiv |
⊢ ( ∃ 𝑔 ( ( 𝑔 Fn ( 1 ... 𝑁 ) ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ∧ ∃ 𝑧 ∈ Fin ∀ 𝑛 ∈ ( ( 1 ... 𝑁 ) ∖ 𝑧 ) ( 𝑔 ‘ 𝑛 ) = ∪ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ) ∧ 𝑧 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( 𝑔 ‘ 𝑛 ) ) → ( ( 𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆 ) → ∃ 𝑑 ∈ ℝ+ X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) ) |
129 |
13 128
|
sylbi |
⊢ ( 𝑧 ∈ { 𝑥 ∣ ∃ ℎ ( ( ℎ Fn ( 1 ... 𝑁 ) ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ∧ ∃ 𝑤 ∈ Fin ∀ 𝑛 ∈ ( ( 1 ... 𝑁 ) ∖ 𝑤 ) ( ℎ ‘ 𝑛 ) = ∪ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ) ∧ 𝑥 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ) } → ( ( 𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆 ) → ∃ 𝑑 ∈ ℝ+ X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) ) |
130 |
129
|
rexlimiv |
⊢ ( ∃ 𝑧 ∈ { 𝑥 ∣ ∃ ℎ ( ( ℎ Fn ( 1 ... 𝑁 ) ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ∧ ∃ 𝑤 ∈ Fin ∀ 𝑛 ∈ ( ( 1 ... 𝑁 ) ∖ 𝑤 ) ( ℎ ‘ 𝑛 ) = ∪ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ) ∧ 𝑥 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ) } ( 𝑃 ∈ 𝑧 ∧ 𝑧 ⊆ 𝑆 ) → ∃ 𝑑 ∈ ℝ+ X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) |
131 |
12 130
|
syl |
⊢ ( ( 𝑆 ∈ ( topGen ‘ { 𝑥 ∣ ∃ ℎ ( ( ℎ Fn ( 1 ... 𝑁 ) ∧ ∀ 𝑛 ∈ ( 1 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ∈ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ∧ ∃ 𝑤 ∈ Fin ∀ 𝑛 ∈ ( ( 1 ... 𝑁 ) ∖ 𝑤 ) ( ℎ ‘ 𝑛 ) = ∪ ( ( ( 1 ... 𝑁 ) × { ( topGen ‘ ran (,) ) } ) ‘ 𝑛 ) ) ∧ 𝑥 = X 𝑛 ∈ ( 1 ... 𝑁 ) ( ℎ ‘ 𝑛 ) ) } ) ∧ 𝑃 ∈ 𝑆 ) → ∃ 𝑑 ∈ ℝ+ X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) |
132 |
11 131
|
sylanb |
⊢ ( ( 𝑆 ∈ 𝑅 ∧ 𝑃 ∈ 𝑆 ) → ∃ 𝑑 ∈ ℝ+ X 𝑛 ∈ ( 1 ... 𝑁 ) ( ( 𝑃 ‘ 𝑛 ) ( ball ‘ 𝐷 ) 𝑑 ) ⊆ 𝑆 ) |