@@ -82,8 +82,9 @@ namespace formal_multilinear_series
82
82
83
83
variables (p : formal_multilinear_series 𝕜 E F) {r : ℝ≥0 }
84
84
85
- /-- The radius of a formal multilinear series is the largest `r` such that the sum `Σ pₙ yⁿ`
86
- converges for all `∥y∥ < r`. -/
85
+ /-- The radius of a formal multilinear series is the largest `r` such that the sum `Σ ∥pₙ∥ ∥y∥ⁿ`
86
+ converges for all `∥y∥ < r`. This implies that `Σ pₙ yⁿ` converges for all `∥y∥ < r`, but these
87
+ definitions are *not* equivalent in general. -/
87
88
def radius (p : formal_multilinear_series 𝕜 E F) : ℝ≥0 ∞ :=
88
89
⨆ (r : ℝ≥0 ) (C : ℝ) (hr : ∀ n, ∥p n∥ * r ^ n ≤ C), (r : ℝ≥0 ∞)
89
90
@@ -103,14 +104,14 @@ exists.elim (is_O_one_nat_at_top_iff.1 h) $ λ C hC, p.le_radius_of_bound C $
103
104
λ n, (le_abs_self _).trans (hC n)
104
105
105
106
lemma radius_eq_top_of_forall_nnreal_is_O
106
- (h : ∀ r : ℝ≥0 , is_O (λ n, ∥p n∥ * r^n) (λ n, (1 : ℝ)) at_top) : p.radius = ⊤ :=
107
+ (h : ∀ r : ℝ≥0 , is_O (λ n, ∥p n∥ * r^n) (λ n, (1 : ℝ)) at_top) : p.radius = ∞ :=
107
108
ennreal.eq_top_of_forall_nnreal_le $ λ r, p.le_radius_of_is_O (h r)
108
109
109
- lemma radius_eq_top_of_eventually_eq_zero (h : ∀ᶠ n in at_top, p n = 0 ) : p.radius = ⊤ :=
110
+ lemma radius_eq_top_of_eventually_eq_zero (h : ∀ᶠ n in at_top, p n = 0 ) : p.radius = ∞ :=
110
111
p.radius_eq_top_of_forall_nnreal_is_O $
111
112
λ r, (is_O_zero _ _).congr' (h.mono $ λ n hn, by simp [hn]) eventually_eq.rfl
112
113
113
- lemma radius_eq_top_of_forall_image_add_eq_zero (n : ℕ) (hn : ∀ m, p (m + n) = 0 ) : p.radius = ⊤ :=
114
+ lemma radius_eq_top_of_forall_image_add_eq_zero (n : ℕ) (hn : ∀ m, p (m + n) = 0 ) : p.radius = ∞ :=
114
115
p.radius_eq_top_of_eventually_eq_zero $ mem_at_top_sets.2 ⟨n, λ k hk, nat.sub_add_cancel hk ▸ hn _⟩
115
116
116
117
/-- For `r` strictly smaller than the radius of `p`, then `∥pₙ∥ rⁿ` tends to zero exponentially:
@@ -182,6 +183,58 @@ lemma nnnorm_mul_pow_le_of_lt_radius (p : formal_multilinear_series 𝕜 E F) {r
182
183
let ⟨C, hC, hp⟩ := p.norm_mul_pow_le_of_lt_radius h
183
184
in ⟨⟨C, hC.lt.le⟩, hC, by exact_mod_cast hp⟩
184
185
186
+ lemma le_radius_of_tendsto (p : formal_multilinear_series 𝕜 E F) {l : ℝ}
187
+ (h : tendsto (λ n, ∥p n∥ * r^n) at_top (𝓝 l)) : ↑r ≤ p.radius :=
188
+ p.le_radius_of_is_O (is_O_one_of_tendsto _ h)
189
+
190
+ lemma le_radius_of_summable_norm (p : formal_multilinear_series 𝕜 E F)
191
+ (hs : summable (λ n, ∥p n∥ * r^n)) : ↑r ≤ p.radius :=
192
+ p.le_radius_of_tendsto hs.tendsto_at_top_zero
193
+
194
+ lemma not_summable_norm_of_radius_lt_nnnorm (p : formal_multilinear_series 𝕜 E F) {x : E}
195
+ (h : p.radius < nnnorm x) : ¬ summable (λ n, ∥p n∥ * ∥x∥^n) :=
196
+ λ hs, not_le_of_lt h (p.le_radius_of_summable_norm hs)
197
+
198
+ lemma summable_norm_of_lt_radius (p : formal_multilinear_series 𝕜 E F)
199
+ (h : ↑r < p.radius) : summable (λ n, ∥p n∥ * r^n) :=
200
+ begin
201
+ obtain ⟨a, ha : a ∈ Ioo (0 : ℝ) 1 , C, hC : 0 < C, hp⟩ :=
202
+ p.norm_mul_pow_le_mul_pow_of_lt_radius h,
203
+ refine (summable_of_norm_bounded (λ n, (C : ℝ) * a ^ n)
204
+ ((summable_geometric_of_lt_1 ha.1 .le ha.2 ).mul_left _) (λ n, _)),
205
+ specialize hp n,
206
+ rwa real.norm_of_nonneg (mul_nonneg (norm_nonneg _) (pow_nonneg r.coe_nonneg n))
207
+ end
208
+
209
+ lemma summable_of_nnnorm_lt_radius (p : formal_multilinear_series 𝕜 E F) [complete_space F]
210
+ {x : E} (h : ↑(nnnorm x) < p.radius) : summable (λ n, p n (λ i, x)) :=
211
+ begin
212
+ refine summable_of_norm_bounded (λ n, ∥p n∥ * (nnnorm x)^n) (p.summable_norm_of_lt_radius h) _,
213
+ intros n,
214
+ calc ∥(p n) (λ (i : fin n), x)∥
215
+ ≤ ∥p n∥ * (∏ i : fin n, ∥x∥) : continuous_multilinear_map.le_op_norm _ _
216
+ ... = ∥p n∥ * (nnnorm x)^n : by simp
217
+ end
218
+
219
+ lemma radius_eq_top_of_summable_norm (p : formal_multilinear_series 𝕜 E F)
220
+ (hs : ∀ r : ℝ≥0 , summable (λ n, ∥p n∥ * r^n)) : p.radius = ∞ :=
221
+ ennreal.eq_top_of_forall_nnreal_le (λ r, p.le_radius_of_summable_norm (hs r))
222
+
223
+ lemma radius_eq_top_iff_summable_norm (p : formal_multilinear_series 𝕜 E F) :
224
+ p.radius = ∞ ↔ ∀ r : ℝ≥0 , summable (λ n, ∥p n∥ * r^n) :=
225
+ begin
226
+ split,
227
+ { intros h r,
228
+ obtain ⟨a, ha : a ∈ Ioo (0 : ℝ) 1 , C, hC : 0 < C, hp⟩ :=
229
+ p.norm_mul_pow_le_mul_pow_of_lt_radius
230
+ (show (r:ℝ≥0 ∞) < p.radius, from h.symm ▸ ennreal.coe_lt_top),
231
+ refine (summable_of_norm_bounded (λ n, (C : ℝ) * a ^ n)
232
+ ((summable_geometric_of_lt_1 ha.1 .le ha.2 ).mul_left _) (λ n, _)),
233
+ specialize hp n,
234
+ rwa real.norm_of_nonneg (mul_nonneg (norm_nonneg _) (pow_nonneg r.coe_nonneg n)) },
235
+ { exact p.radius_eq_top_of_summable_norm }
236
+ end
237
+
185
238
/-- If the radius of `p` is positive, then `∥pₙ∥` grows at most geometrically. -/
186
239
lemma le_mul_pow_of_radius_pos (p : formal_multilinear_series 𝕜 E F) (h : 0 < p.radius) :
187
240
∃ C r (hC : 0 < C) (hr : 0 < r), ∀ n, ∥p n∥ ≤ C * r ^ n :=
@@ -589,14 +642,7 @@ lemma formal_multilinear_series.has_fpower_series_on_ball [complete_space F]
589
642
rw zero_add,
590
643
replace hy : (nnnorm y : ℝ≥0 ∞) < p.radius,
591
644
by { convert hy, exact (edist_eq_coe_nnnorm _).symm },
592
- obtain ⟨a, ha : a ∈ Ioo (0 : ℝ) 1 , C, hC : 0 < C, hp⟩ :=
593
- p.norm_mul_pow_le_mul_pow_of_lt_radius hy,
594
- refine (summable_of_norm_bounded (λ n, (C : ℝ) * a ^ n)
595
- ((summable_geometric_of_lt_1 ha.1 .le ha.2 ).mul_left _) (λ n, _)).has_sum,
596
- calc ∥(p n) (λ (i : fin n), y)∥
597
- ≤ ∥p n∥ * (∏ i : fin n, ∥y∥) : continuous_multilinear_map.le_op_norm _ _
598
- ... = ∥p n∥ * (nnnorm y)^n : by simp
599
- ... ≤ C * a ^ n : hp n
645
+ exact (p.summable_of_nnnorm_lt_radius hy).has_sum
600
646
end }
601
647
602
648
lemma has_fpower_series_on_ball.sum [complete_space F] (h : has_fpower_series_on_ball f p x r)
0 commit comments