@@ -4,6 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
4
4
Authors: Sébastien Gouëzel
5
5
-/
6
6
import analysis.calculus.mean_value
7
+ import analysis.calculus.formal_multilinear_series
7
8
8
9
/-!
9
10
# Higher differentiability
@@ -32,8 +33,6 @@ We prove basic properties of these notions.
32
33
## Main definitions and results
33
34
Let `f : E → F` be a map between normed vector spaces over a nondiscrete normed field `𝕜`.
34
35
35
- * `formal_multilinear_series 𝕜 E F`: a family of `n`-multilinear maps for all `n`, designed to
36
- model the sequence of derivatives of a function.
37
36
* `has_ftaylor_series_up_to n f p`: expresses that the formal multilinear series `p` is a sequence
38
37
of iterated derivatives of `f`, up to the `n`-th term (where `n` is a natural number or `∞`).
39
38
* `has_ftaylor_series_up_to_on n f p s`: same thing, but inside a set `s`. The notion of derivative
@@ -176,58 +175,6 @@ variables {𝕜 : Type*} [nondiscrete_normed_field 𝕜]
176
175
{s s₁ t u : set E} {f f₁ : E → F} {g : F → G} {x : E} {c : F}
177
176
{b : E × F → G}
178
177
179
- /-- A formal multilinear series over a field `𝕜`, from `E` to `F`, is given by a family of
180
- multilinear maps from `E^n` to `F` for all `n`. -/
181
- @[derive add_comm_group]
182
- def formal_multilinear_series
183
- (𝕜 : Type *) [nondiscrete_normed_field 𝕜]
184
- (E : Type *) [normed_group E] [normed_space 𝕜 E]
185
- (F : Type *) [normed_group F] [normed_space 𝕜 F] :=
186
- Π (n : ℕ), (E [×n]→L[𝕜] F)
187
-
188
- instance : inhabited (formal_multilinear_series 𝕜 E F) := ⟨0 ⟩
189
-
190
- section module
191
- /- `derive` is not able to find the module structure, probably because Lean is confused by the
192
- dependent types. We register it explicitly. -/
193
- local attribute [reducible] formal_multilinear_series
194
-
195
- instance : module 𝕜 (formal_multilinear_series 𝕜 E F) :=
196
- begin
197
- letI : ∀ n, module 𝕜 (continuous_multilinear_map 𝕜 (λ (i : fin n), E) F) :=
198
- λ n, by apply_instance,
199
- apply_instance
200
- end
201
-
202
- end module
203
-
204
- namespace formal_multilinear_series
205
-
206
- variables (p : formal_multilinear_series 𝕜 E F)
207
-
208
- /-- Forgetting the zeroth term in a formal multilinear series, and interpreting the following terms
209
- as multilinear maps into `E →L[𝕜] F`. If `p` corresponds to the Taylor series of a function, then
210
- `p.shift` is the Taylor series of the derivative of the function. -/
211
- def shift : formal_multilinear_series 𝕜 E (E →L[𝕜] F) :=
212
- λn, (p n.succ).curry_right
213
-
214
- /-- Adding a zeroth term to a formal multilinear series taking values in `E →L[𝕜] F`. This
215
- corresponds to starting from a Taylor series for the derivative of a function, and building a Taylor
216
- series for the function itself. -/
217
- def unshift (q : formal_multilinear_series 𝕜 E (E →L[𝕜] F)) (z : F) :
218
- formal_multilinear_series 𝕜 E F
219
- | 0 := (continuous_multilinear_curry_fin0 𝕜 E F).symm z
220
- | (n + 1 ) := continuous_multilinear_curry_right_equiv' 𝕜 n E F (q n)
221
-
222
- /-- Convenience congruence lemma stating in a dependent setting that, if the arguments to a formal
223
- multilinear series are equal, then the values are also equal. -/
224
- lemma congr (p : formal_multilinear_series 𝕜 E F) {m n : ℕ} {v : fin m → E} {w : fin n → E}
225
- (h1 : m = n) (h2 : ∀ (i : ℕ) (him : i < m) (hin : i < n), v ⟨i, him⟩ = w ⟨i, hin⟩) :
226
- p m v = p n w :=
227
- by { cases h1, congr' with ⟨i, hi⟩, exact h2 i hi hi }
228
-
229
- end formal_multilinear_series
230
-
231
178
/-! ### Functions with a Taylor series on a domain -/
232
179
233
180
variable {p : E → formal_multilinear_series 𝕜 E F}
@@ -2752,12 +2699,6 @@ variables [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E]
2752
2699
variables [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F]
2753
2700
variables {p' : E → formal_multilinear_series 𝕜' E F} {n : with_top ℕ}
2754
2701
2755
- /-- Reinterpret a formal `𝕜'`-multilinear series as a formal `𝕜`-multilinear series, where `𝕜'` is a
2756
- normed algebra over `𝕜`. -/
2757
- @[simp] def formal_multilinear_series.restrict_scalars (p : formal_multilinear_series 𝕜' E F) :
2758
- formal_multilinear_series 𝕜 E F :=
2759
- λ n, (p n).restrict_scalars 𝕜
2760
-
2761
2702
lemma has_ftaylor_series_up_to_on.restrict_scalars
2762
2703
(h : has_ftaylor_series_up_to_on n f p' s) :
2763
2704
has_ftaylor_series_up_to_on n f (λ x, (p' x).restrict_scalars 𝕜) s :=
0 commit comments