mathlib documentation

analysis.calculus.fderiv

The Fréchet derivative #

Let E and F be normed spaces, f : E → F, and f' : E →L[𝕜] F a continuous 𝕜-linear map, where 𝕜 is a non-discrete normed field. Then

has_fderiv_within_at f f' s x

says that f has derivative f' at x, where the domain of interest is restricted to s. We also have

has_fderiv_at f f' x := has_fderiv_within_at f f' x univ

Finally,

has_strict_fderiv_at f f' x

means that f : E → F has derivative f' : E →L[𝕜] F in the sense of strict differentiability, i.e., f y - f z - f'(y - z) = o(y - z) as y, z → x. This notion is used in the inverse function theorem, and is defined here only to avoid proving theorems like is_bounded_bilinear_map.has_fderiv_at twice: first for has_fderiv_at, then for has_strict_fderiv_at.

Main results #

In addition to the definition and basic properties of the derivative, this file contains the usual formulas (and existence assertions) for the derivative of

For most binary operations we also define const_op and op_const theorems for the cases when the first or second argument is a constant. This makes writing chains of has_deriv_at's easier, and they more frequently lead to the desired result.

One can also interpret the derivative of a function f : 𝕜 → E as an element of E (by identifying a linear function from 𝕜 to E with its value at 1). Results on the Fréchet derivative are translated to this more elementary point of view on the derivative in the file deriv.lean. The derivative of polynomials is handled there, as it is naturally one-dimensional.

The simplifier is set up to prove automatically that some functions are differentiable, or differentiable at a point (but not differentiable on a set or within a set at a point, as checking automatically that the good domains are mapped one to the other when using composition is not something the simplifier can easily do). This means that one can write example (x : ℝ) : differentiable ℝ (λ x, sin (exp (3 + x^2)) - 5 * cos x) := by simp. If there are divisions, one needs to supply to the simplifier proofs that the denominators do not vanish, as in

example (x : ) (h : 1 + sin x  0) : differentiable_at  (λ x, exp x / (1 + sin x)) x :=
by simp [h]

Of course, these examples only work once exp, cos and sin have been shown to be differentiable, in analysis.special_functions.trigonometric.

The simplifier is not set up to compute the Fréchet derivative of maps (as these are in general complicated multidimensional linear maps), but it will compute one-dimensional derivatives, see deriv.lean.

Implementation details #

The derivative is defined in terms of the is_o relation, but also characterized in terms of the tendsto relation.

We also introduce predicates differentiable_within_at 𝕜 f s x (where 𝕜 is the base field, f the function to be differentiated, x the point at which the derivative is asserted to exist, and s the set along which the derivative is defined), as well as differentiable_at 𝕜 f x, differentiable_on 𝕜 f s and differentiable 𝕜 f to express the existence of a derivative.

To be able to compute with derivatives, we write fderiv_within 𝕜 f s x and fderiv 𝕜 f x for some choice of a derivative if it exists, and the zero function otherwise. This choice only behaves well along sets for which the derivative is unique, i.e., those for which the tangent directions span a dense subset of the whole space. The predicates unique_diff_within_at s x and unique_diff_on s, defined in tangent_cone.lean express this property. We prove that indeed they imply the uniqueness of the derivative. This is satisfied for open subsets, and in particular for univ. This uniqueness only holds when the field is non-discrete, which we request at the very beginning: otherwise, a derivative can be defined, but it has no interesting properties whatsoever.

To make sure that the simplifier can prove automatically that functions are differentiable, we tag many lemmas with the simp attribute, for instance those saying that the sum of differentiable functions is differentiable, as well as their product, their cartesian product, and so on. A notable exception is the chain rule: we do not mark as a simp lemma the fact that, if f and g are differentiable, then their composition also is: simp would always be able to match this lemma, by taking f or g to be the identity. Instead, for every reasonable function (say, exp), we add a lemma that if f is differentiable then so is (λ x, exp (f x)). This means adding some boilerplate lemmas, but these can also be useful in their own right.

Tests for this ability of the simplifier (with more examples) are provided in tests/differentiable.lean.

Tags #

derivative, differentiable, Fréchet, calculus

def has_fderiv_at_filter {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (f : E → F) (f' : E →L[𝕜] F) (x : E) (L : filter E) :
Prop

A function f has the continuous linear map f' as derivative along the filter L if f x' = f x + f' (x' - x) + o (x' - x) when x' converges along the filter L. This definition is designed to be specialized for L = 𝓝 x (in has_fderiv_at), giving rise to the usual notion of Fréchet derivative, and for L = 𝓝[s] x (in has_fderiv_within_at), giving rise to the notion of Fréchet derivative along the set s.

Equations
def has_fderiv_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (f : E → F) (f' : E →L[𝕜] F) (s : set E) (x : E) :
Prop

A function f has the continuous linear map f' as derivative at x within a set s if f x' = f x + f' (x' - x) + o (x' - x) when x' tends to x inside s.

Equations
def has_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (f : E → F) (f' : E →L[𝕜] F) (x : E) :
Prop

A function f has the continuous linear map f' as derivative at x if f x' = f x + f' (x' - x) + o (x' - x) when x' tends to x.

Equations
def has_strict_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (f : E → F) (f' : E →L[𝕜] F) (x : E) :
Prop

A function f has derivative f' at a in the sense of strict differentiability if f x - f y - f' (x - y) = o(x - y) as x, y → a. This form of differentiability is required, e.g., by the inverse function theorem. Any C^1 function on a vector space over is strictly differentiable but this definition works, e.g., for vector spaces over p-adic numbers.

Equations
def differentiable_within_at (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (f : E → F) (s : set E) (x : E) :
Prop

A function f is differentiable at a point x within a set s if it admits a derivative there (possibly non-unique).

Equations
def differentiable_at (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (f : E → F) (x : E) :
Prop

A function f is differentiable at a point x if it admits a derivative there (possibly non-unique).

Equations
noncomputable def fderiv_within (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (f : E → F) (s : set E) (x : E) :
E →L[𝕜] F

If f has a derivative at x within s, then fderiv_within 𝕜 f s x is such a derivative. Otherwise, it is set to 0.

Equations
noncomputable def fderiv (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (f : E → F) (x : E) :
E →L[𝕜] F

If f has a derivative at x, then fderiv 𝕜 f x is such a derivative. Otherwise, it is set to 0.

Equations
def differentiable_on (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (f : E → F) (s : set E) :
Prop

differentiable_on 𝕜 f s means that f is differentiable within s at any point of s.

Equations
def differentiable (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (f : E → F) :
Prop

differentiable 𝕜 f means that f is differentiable at any point.

Equations
theorem fderiv_within_zero_of_not_differentiable_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : ¬differentiable_within_at 𝕜 f s x) :
fderiv_within 𝕜 f s x = 0
theorem fderiv_zero_of_not_differentiable_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (h : ¬differentiable_at 𝕜 f x) :
fderiv 𝕜 f x = 0
theorem has_fderiv_within_at.lim {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : has_fderiv_within_at f f' s x) {α : Type u_4} (l : filter α) {c : α → 𝕜} {d : α → E} {v : E} (dtop : ∀ᶠ (n : α) in l, x + d n s) (clim : filter.tendsto (λ (n : α), c n) l filter.at_top) (cdlim : filter.tendsto (λ (n : α), c n d n) l (nhds v)) :
filter.tendsto (λ (n : α), c n (f (x + d n) - f x)) l (nhds (f' v))

If a function f has a derivative f' at x, a rescaled version of f around x converges to f', i.e., n (f (x + (1/n) v) - f x) converges to f' v. More generally, if c n tends to infinity and c n * d n tends to v, then c n * (f (x + d n) - f x) tends to f' v. This lemma expresses this fact, for functions having a derivative within a set. Its specific formulation is useful for tangent cone related discussions.

theorem has_fderiv_within_at.unique_on {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' f₁' : E →L[𝕜] F} {x : E} {s : set E} (hf : has_fderiv_within_at f f' s x) (hg : has_fderiv_within_at f f₁' s x) :
set.eq_on f' f₁' (tangent_cone_at 𝕜 s x)

If f' and f₁' are two derivatives of f within s at x, then they are equal on the tangent cone to s at x

theorem unique_diff_within_at.eq {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' f₁' : E →L[𝕜] F} {x : E} {s : set E} (H : unique_diff_within_at 𝕜 s x) (hf : has_fderiv_within_at f f' s x) (hg : has_fderiv_within_at f f₁' s x) :
f' = f₁'

unique_diff_within_at achieves its goal: it implies the uniqueness of the derivative.

theorem unique_diff_on.eq {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' f₁' : E →L[𝕜] F} {x : E} {s : set E} (H : unique_diff_on 𝕜 s) (hx : x s) (h : has_fderiv_within_at f f' s x) (h₁ : has_fderiv_within_at f f₁' s x) :
f' = f₁'

Basic properties of the derivative #

theorem has_fderiv_at_filter_iff_tendsto {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {L : filter E} :
has_fderiv_at_filter f f' x L filter.tendsto (λ (x' : E), x' - x⁻¹ * f x' - f x - f' (x' - x)) L (nhds 0)
theorem has_fderiv_within_at_iff_tendsto {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} :
has_fderiv_within_at f f' s x filter.tendsto (λ (x' : E), x' - x⁻¹ * f x' - f x - f' (x' - x)) (nhds_within x s) (nhds 0)
theorem has_fderiv_at_iff_tendsto {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} :
has_fderiv_at f f' x filter.tendsto (λ (x' : E), x' - x⁻¹ * f x' - f x - f' (x' - x)) (nhds x) (nhds 0)
theorem has_fderiv_at_iff_is_o_nhds_zero {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} :
has_fderiv_at f f' x (λ (h : E), f (x + h) - f x - f' h) =o[nhds 0] λ (h : E), h
theorem has_fderiv_at.le_of_lip' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x₀ : E} (hf : has_fderiv_at f f' x₀) {C : } (hC₀ : 0 C) (hlip : ∀ᶠ (x : E) in nhds x₀, f x - f x₀ C * x - x₀) :

Converse to the mean value inequality: if f is differentiable at x₀ and C-lipschitz on a neighborhood of x₀ then it its derivative at x₀ has norm bounded by C. This version only assumes that ∥f x - f x₀∥ ≤ C * ∥x - x₀∥ in a neighborhood of x.

theorem has_fderiv_at.le_of_lip {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x₀ : E} (hf : has_fderiv_at f f' x₀) {s : set E} (hs : s nhds x₀) {C : nnreal} (hlip : lipschitz_on_with C f s) :

Converse to the mean value inequality: if f is differentiable at x₀ and C-lipschitz on a neighborhood of x₀ then it its derivative at x₀ has norm bounded by C.

theorem has_fderiv_at_filter.mono {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {L₁ L₂ : filter E} (h : has_fderiv_at_filter f f' x L₂) (hst : L₁ L₂) :
theorem has_fderiv_within_at.mono_of_mem {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s t : set E} (h : has_fderiv_within_at f f' t x) (hst : t nhds_within x s) :
theorem has_fderiv_within_at.mono {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s t : set E} (h : has_fderiv_within_at f f' t x) (hst : s t) :
theorem has_fderiv_at.has_fderiv_at_filter {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {L : filter E} (h : has_fderiv_at f f' x) (hL : L nhds x) :
theorem has_fderiv_at.has_fderiv_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : has_fderiv_at f f' x) :
theorem has_fderiv_within_at.differentiable_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : has_fderiv_within_at f f' s x) :
theorem has_fderiv_at.differentiable_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (h : has_fderiv_at f f' x) :
@[simp]
theorem has_fderiv_within_at_univ {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} :
theorem has_strict_fderiv_at.is_O_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_strict_fderiv_at f f' x) :
(λ (p : E × E), f p.fst - f p.snd) =O[nhds (x, x)] λ (p : E × E), p.fst - p.snd
theorem has_fderiv_at_filter.is_O_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {L : filter E} (h : has_fderiv_at_filter f f' x L) :
(λ (x' : E), f x' - f x) =O[L] λ (x' : E), x' - x
@[protected]
theorem has_strict_fderiv_at.has_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_strict_fderiv_at f f' x) :
@[protected]
theorem has_strict_fderiv_at.differentiable_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_strict_fderiv_at f f' x) :
theorem has_strict_fderiv_at.exists_lipschitz_on_with_of_nnnorm_lt {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_strict_fderiv_at f f' x) (K : nnreal) (hK : f'∥₊ < K) :
∃ (s : set E) (H : s nhds x), lipschitz_on_with K f s

If f is strictly differentiable at x with derivative f' and K > ∥f'∥₊, then f is K-Lipschitz in a neighborhood of x.

theorem has_strict_fderiv_at.exists_lipschitz_on_with {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_strict_fderiv_at f f' x) :
∃ (K : nnreal) (s : set E) (H : s nhds x), lipschitz_on_with K f s

If f is strictly differentiable at x with derivative f', then f is Lipschitz in a neighborhood of x. See also has_strict_fderiv_at.exists_lipschitz_on_with_of_nnnorm_lt for a more precise statement.

theorem has_fderiv_at.lim {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_fderiv_at f f' x) (v : E) {α : Type u_4} {c : α → 𝕜} {l : filter α} (hc : filter.tendsto (λ (n : α), c n) l filter.at_top) :
filter.tendsto (λ (n : α), c n (f (x + (c n)⁻¹ v) - f x)) l (nhds (f' v))

Directional derivative agrees with has_fderiv.

theorem has_fderiv_at.unique {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f₀' f₁' : E →L[𝕜] F} {x : E} (h₀ : has_fderiv_at f f₀' x) (h₁ : has_fderiv_at f f₁' x) :
f₀' = f₁'
theorem has_fderiv_within_at_inter' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s t : set E} (h : t nhds_within x s) :
theorem has_fderiv_within_at_inter {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s t : set E} (h : t nhds x) :
theorem has_fderiv_within_at.union {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s t : set E} (hs : has_fderiv_within_at f f' s x) (ht : has_fderiv_within_at f f' t x) :
theorem has_fderiv_within_at.nhds_within {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s t : set E} (h : has_fderiv_within_at f f' s x) (ht : s nhds_within x t) :
theorem has_fderiv_within_at.has_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : has_fderiv_within_at f f' s x) (hs : s nhds x) :
theorem differentiable_within_at.differentiable_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : differentiable_within_at 𝕜 f s x) (hs : s nhds x) :
theorem differentiable_within_at.has_fderiv_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : differentiable_within_at 𝕜 f s x) :
theorem differentiable_at.has_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (h : differentiable_at 𝕜 f x) :
has_fderiv_at f (fderiv 𝕜 f x) x
theorem differentiable_on.has_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : differentiable_on 𝕜 f s) (hs : s nhds x) :
has_fderiv_at f (fderiv 𝕜 f x) x
theorem differentiable_on.differentiable_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : differentiable_on 𝕜 f s) (hs : s nhds x) :
theorem differentiable_on.eventually_differentiable_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : differentiable_on 𝕜 f s) (hs : s nhds x) :
∀ᶠ (y : E) in nhds x, differentiable_at 𝕜 f y
theorem has_fderiv_at.fderiv {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (h : has_fderiv_at f f' x) :
fderiv 𝕜 f x = f'
theorem fderiv_eq {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E → (E →L[𝕜] F)} (h : ∀ (x : E), has_fderiv_at f (f' x) x) :
fderiv 𝕜 f = f'
theorem fderiv_at.le_of_lip {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x₀ : E} (hf : differentiable_at 𝕜 f x₀) {s : set E} (hs : s nhds x₀) {C : nnreal} (hlip : lipschitz_on_with C f s) :
fderiv 𝕜 f x₀ C

Converse to the mean value inequality: if f is differentiable at x₀ and C-lipschitz on a neighborhood of x₀ then it its derivative at x₀ has norm bounded by C. Version using fderiv.

theorem has_fderiv_within_at.fderiv_within {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : has_fderiv_within_at f f' s x) (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 f s x = f'
theorem has_fderiv_within_at_of_not_mem_closure {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : x closure s) :

If x is not in the closure of s, then f has any derivative at x within s, as this statement is empty.

theorem differentiable_within_at.mono {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s t : set E} (h : differentiable_within_at 𝕜 f t x) (st : s t) :
theorem differentiable_within_at.mono_of_mem {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : differentiable_within_at 𝕜 f s x) {t : set E} (hst : s nhds_within x t) :
theorem differentiable_within_at_univ {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} :
theorem differentiable_within_at_inter {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s t : set E} (ht : t nhds x) :
theorem differentiable_within_at_inter' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s t : set E} (ht : t nhds_within x s) :
theorem differentiable_within_at.antimono {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s t : set E} (h : differentiable_within_at 𝕜 f s x) (hst : s t) (hx : s nhds_within x t) :
theorem has_fderiv_within_at.antimono {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s t : set E} (h : has_fderiv_within_at f f' s x) (hst : s t) (hs : unique_diff_within_at 𝕜 s x) (hx : s nhds_within x t) :
theorem differentiable_at.differentiable_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : differentiable_at 𝕜 f x) :
theorem differentiable.differentiable_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (h : differentiable 𝕜 f) :
theorem differentiable_at.fderiv_within {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : differentiable_at 𝕜 f x) (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 f s x = fderiv 𝕜 f x
theorem differentiable_on.mono {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s t : set E} (h : differentiable_on 𝕜 f t) (st : s t) :
theorem differentiable_on_univ {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} :
theorem differentiable.differentiable_on {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (h : differentiable 𝕜 f) :
theorem differentiable_on_of_locally_differentiable_on {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (h : ∀ (x : E), x s(∃ (u : set E), is_open u x u differentiable_on 𝕜 f (s u))) :
theorem fderiv_within_subset {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s t : set E} (st : s t) (ht : unique_diff_within_at 𝕜 s x) (h : differentiable_within_at 𝕜 f t x) :
fderiv_within 𝕜 f s x = fderiv_within 𝕜 f t x
theorem fderiv_within_subset' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s t : set E} (st : s t) (ht : unique_diff_within_at 𝕜 s x) (hx : s nhds_within x t) (h : differentiable_within_at 𝕜 f s x) :
fderiv_within 𝕜 f s x = fderiv_within 𝕜 f t x
@[simp]
theorem fderiv_within_univ {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} :
theorem fderiv_within_inter {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s t : set E} (ht : t nhds x) (hs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 f (s t) x = fderiv_within 𝕜 f s x
theorem fderiv_within_of_mem_nhds {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : s nhds x) :
fderiv_within 𝕜 f s x = fderiv 𝕜 f x
theorem fderiv_within_of_open {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (hs : is_open s) (hx : x s) :
fderiv_within 𝕜 f s x = fderiv 𝕜 f x
theorem fderiv_within_eq_fderiv {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (hs : unique_diff_within_at 𝕜 s x) (h : differentiable_at 𝕜 f x) :
fderiv_within 𝕜 f s x = fderiv 𝕜 f x
theorem fderiv_mem_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set (E →L[𝕜] F)} {x : E} :
fderiv 𝕜 f x s differentiable_at 𝕜 f x fderiv 𝕜 f x s ¬differentiable_at 𝕜 f x 0 s
theorem fderiv_within_mem_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {t : set E} {s : set (E →L[𝕜] F)} {x : E} :

Deducing continuity from differentiability #

theorem has_fderiv_at_filter.tendsto_nhds {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {L : filter E} (hL : L nhds x) (h : has_fderiv_at_filter f f' x L) :
filter.tendsto f L (nhds (f x))
theorem has_fderiv_within_at.continuous_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : has_fderiv_within_at f f' s x) :
theorem has_fderiv_at.continuous_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (h : has_fderiv_at f f' x) :
theorem differentiable_within_at.continuous_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : differentiable_within_at 𝕜 f s x) :
theorem differentiable_at.continuous_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (h : differentiable_at 𝕜 f x) :
theorem differentiable_on.continuous_on {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (h : differentiable_on 𝕜 f s) :
theorem differentiable.continuous {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} (h : differentiable 𝕜 f) :
@[protected]
theorem has_strict_fderiv_at.continuous_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_strict_fderiv_at f f' x) :
theorem has_strict_fderiv_at.is_O_sub_rev {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {f' : E ≃L[𝕜] F} (hf : has_strict_fderiv_at f f' x) :
(λ (p : E × E), p.fst - p.snd) =O[nhds (x, x)] λ (p : E × E), f p.fst - f p.snd
theorem has_fderiv_at_filter.is_O_sub_rev {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {L : filter E} (hf : has_fderiv_at_filter f f' x L) {C : nnreal} (hf' : antilipschitz_with C f') :
(λ (x' : E), x' - x) =O[L] λ (x' : E), f x' - f x

congr properties of the derivative #

theorem filter.eventually_eq.has_strict_fderiv_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f₀ f₁ : E → F} {f₀' f₁' : E →L[𝕜] F} {x : E} (h : f₀ =ᶠ[nhds x] f₁) (h' : ∀ (y : E), f₀' y = f₁' y) :
theorem has_strict_fderiv_at.congr_of_eventually_eq {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {f' : E →L[𝕜] F} {x : E} (h : has_strict_fderiv_at f f' x) (h₁ : f =ᶠ[nhds x] f₁) :
theorem filter.eventually_eq.has_fderiv_at_filter_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f₀ f₁ : E → F} {f₀' f₁' : E →L[𝕜] F} {x : E} {L : filter E} (h₀ : f₀ =ᶠ[L] f₁) (hx : f₀ x = f₁ x) (h₁ : ∀ (x : E), f₀' x = f₁' x) :
has_fderiv_at_filter f₀ f₀' x L has_fderiv_at_filter f₁ f₁' x L
theorem has_fderiv_at_filter.congr_of_eventually_eq {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {f' : E →L[𝕜] F} {x : E} {L : filter E} (h : has_fderiv_at_filter f f' x L) (hL : f₁ =ᶠ[L] f) (hx : f₁ x = f x) :
theorem filter.eventually_eq.has_fderiv_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f₀ f₁ : E → F} {f' : E →L[𝕜] F} {x : E} (h : f₀ =ᶠ[nhds x] f₁) :
has_fderiv_at f₀ f' x has_fderiv_at f₁ f' x
theorem filter.eventually_eq.differentiable_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f₀ f₁ : E → F} {x : E} (h : f₀ =ᶠ[nhds x] f₁) :
differentiable_at 𝕜 f₀ x differentiable_at 𝕜 f₁ x
theorem filter.eventually_eq.has_fderiv_within_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f₀ f₁ : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : f₀ =ᶠ[nhds_within x s] f₁) (hx : f₀ x = f₁ x) :
theorem filter.eventually_eq.has_fderiv_within_at_iff_of_mem {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f₀ f₁ : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : f₀ =ᶠ[nhds_within x s] f₁) (hx : x s) :
theorem filter.eventually_eq.differentiable_within_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f₀ f₁ : E → F} {x : E} {s : set E} (h : f₀ =ᶠ[nhds_within x s] f₁) (hx : f₀ x = f₁ x) :
theorem filter.eventually_eq.differentiable_within_at_iff_of_mem {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f₀ f₁ : E → F} {x : E} {s : set E} (h : f₀ =ᶠ[nhds_within x s] f₁) (hx : x s) :
theorem has_fderiv_within_at.congr_mono {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {f' : E →L[𝕜] F} {x : E} {s t : set E} (h : has_fderiv_within_at f f' s x) (ht : ∀ (x : E), x tf₁ x = f x) (hx : f₁ x = f x) (h₁ : t s) :
theorem has_fderiv_within_at.congr {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : has_fderiv_within_at f f' s x) (hs : ∀ (x : E), x sf₁ x = f x) (hx : f₁ x = f x) :
theorem has_fderiv_within_at.congr' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : has_fderiv_within_at f f' s x) (hs : ∀ (x : E), x sf₁ x = f x) (hx : x s) :
theorem has_fderiv_within_at.congr_of_eventually_eq {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : has_fderiv_within_at f f' s x) (h₁ : f₁ =ᶠ[nhds_within x s] f) (hx : f₁ x = f x) :
theorem has_fderiv_at.congr_of_eventually_eq {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {f' : E →L[𝕜] F} {x : E} (h : has_fderiv_at f f' x) (h₁ : f₁ =ᶠ[nhds x] f) :
has_fderiv_at f₁ f' x
theorem differentiable_within_at.congr_mono {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {x : E} {s t : set E} (h : differentiable_within_at 𝕜 f s x) (ht : ∀ (x : E), x tf₁ x = f x) (hx : f₁ x = f x) (h₁ : t s) :
theorem differentiable_within_at.congr {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {x : E} {s : set E} (h : differentiable_within_at 𝕜 f s x) (ht : ∀ (x : E), x sf₁ x = f x) (hx : f₁ x = f x) :
theorem differentiable_within_at.congr_of_eventually_eq {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {x : E} {s : set E} (h : differentiable_within_at 𝕜 f s x) (h₁ : f₁ =ᶠ[nhds_within x s] f) (hx : f₁ x = f x) :
theorem differentiable_on.congr_mono {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {s t : set E} (h : differentiable_on 𝕜 f s) (h' : ∀ (x : E), x tf₁ x = f x) (h₁ : t s) :
differentiable_on 𝕜 f₁ t
theorem differentiable_on.congr {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {s : set E} (h : differentiable_on 𝕜 f s) (h' : ∀ (x : E), x sf₁ x = f x) :
differentiable_on 𝕜 f₁ s
theorem differentiable_on_congr {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {s : set E} (h' : ∀ (x : E), x sf₁ x = f x) :
theorem differentiable_at.congr_of_eventually_eq {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {x : E} (h : differentiable_at 𝕜 f x) (hL : f₁ =ᶠ[nhds x] f) :
differentiable_at 𝕜 f₁ x
theorem differentiable_within_at.fderiv_within_congr_mono {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {x : E} {s t : set E} (h : differentiable_within_at 𝕜 f s x) (hs : ∀ (x : E), x tf₁ x = f x) (hx : f₁ x = f x) (hxt : unique_diff_within_at 𝕜 t x) (h₁ : t s) :
fderiv_within 𝕜 f₁ t x = fderiv_within 𝕜 f s x
theorem filter.eventually_eq.fderiv_within_eq {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {x : E} {s : set E} (hs : unique_diff_within_at 𝕜 s x) (hL : f₁ =ᶠ[nhds_within x s] f) (hx : f₁ x = f x) :
fderiv_within 𝕜 f₁ s x = fderiv_within 𝕜 f s x
theorem filter.eventually_eq.fderiv_within_eq_nhds {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {x : E} {s : set E} (hs : unique_diff_within_at 𝕜 s x) (hL : f₁ =ᶠ[nhds x] f) :
fderiv_within 𝕜 f₁ s x = fderiv_within 𝕜 f s x
theorem fderiv_within_congr {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {x : E} {s : set E} (hs : unique_diff_within_at 𝕜 s x) (hL : ∀ (y : E), y sf₁ y = f y) (hx : f₁ x = f x) :
fderiv_within 𝕜 f₁ s x = fderiv_within 𝕜 f s x
theorem filter.eventually_eq.fderiv_eq {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {x : E} (hL : f₁ =ᶠ[nhds x] f) :
fderiv 𝕜 f₁ x = fderiv 𝕜 f x
@[protected]
theorem filter.eventually_eq.fderiv {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f f₁ : E → F} {x : E} (h : f₁ =ᶠ[nhds x] f) :
fderiv 𝕜 f₁ =ᶠ[nhds x] fderiv 𝕜 f

Derivative of the identity #

theorem has_strict_fderiv_at_id {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] (x : E) :
theorem has_fderiv_at_filter_id {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] (x : E) (L : filter E) :
theorem has_fderiv_within_at_id {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] (x : E) (s : set E) :
theorem has_fderiv_at_id {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] (x : E) :
@[simp]
theorem differentiable_at_id {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} :
@[simp]
theorem differentiable_at_id' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} :
differentiable_at 𝕜 (λ (x : E), x) x
theorem differentiable_within_at_id {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} :
@[simp]
theorem differentiable_id {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] :
@[simp]
theorem differentiable_id' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] :
differentiable 𝕜 (λ (x : E), x)
theorem differentiable_on_id {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {s : set E} :
theorem fderiv_id {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} :
@[simp]
theorem fderiv_id' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} :
fderiv 𝕜 (λ (x : E), x) x = continuous_linear_map.id 𝕜 E
theorem fderiv_within_id {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} (hxs : unique_diff_within_at 𝕜 s x) :
theorem fderiv_within_id' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 (λ (x : E), x) s x = continuous_linear_map.id 𝕜 E

derivative of a constant function #

theorem has_strict_fderiv_at_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (c : F) (x : E) :
has_strict_fderiv_at (λ (_x : E), c) 0 x
theorem has_fderiv_at_filter_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (c : F) (x : E) (L : filter E) :
has_fderiv_at_filter (λ (x : E), c) 0 x L
theorem has_fderiv_within_at_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (c : F) (x : E) (s : set E) :
has_fderiv_within_at (λ (x : E), c) 0 s x
theorem has_fderiv_at_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (c : F) (x : E) :
has_fderiv_at (λ (x : E), c) 0 x
@[simp]
theorem differentiable_at_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} (c : F) :
differentiable_at 𝕜 (λ (x : E), c) x
theorem differentiable_within_at_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} (c : F) :
differentiable_within_at 𝕜 (λ (x : E), c) s x
theorem fderiv_const_apply {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} (c : F) :
fderiv 𝕜 (λ (y : E), c) x = 0
@[simp]
theorem fderiv_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (c : F) :
fderiv 𝕜 (λ (y : E), c) = 0
theorem fderiv_within_const_apply {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} (c : F) (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 (λ (y : E), c) s x = 0
@[simp]
theorem differentiable_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (c : F) :
differentiable 𝕜 (λ (x : E), c)
theorem differentiable_on_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {s : set E} (c : F) :
differentiable_on 𝕜 (λ (x : E), c) s
theorem has_fderiv_within_at_singleton {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (f : E → F) (x : E) :
theorem has_fderiv_at_of_subsingleton {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] [h : subsingleton E] (f : E → F) (x : E) :
theorem differentiable_on_empty {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} :
theorem differentiable_on_singleton {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} :
theorem set.subsingleton.differentiable_on {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (hs : s.subsingleton) :

Continuous linear maps #

There are currently two variants of these in mathlib, the bundled version (named continuous_linear_map, and denoted E →L[𝕜] F), and the unbundled version (with a predicate is_bounded_linear_map). We give statements for both versions.

@[protected]
theorem continuous_linear_map.has_strict_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (e : E →L[𝕜] F) {x : E} :
@[protected]
theorem continuous_linear_map.has_fderiv_at_filter {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (e : E →L[𝕜] F) {x : E} {L : filter E} :
@[protected]
theorem continuous_linear_map.has_fderiv_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (e : E →L[𝕜] F) {x : E} {s : set E} :
@[protected]
theorem continuous_linear_map.has_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (e : E →L[𝕜] F) {x : E} :
@[protected, simp]
theorem continuous_linear_map.differentiable_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (e : E →L[𝕜] F) {x : E} :
@[protected]
theorem continuous_linear_map.differentiable_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (e : E →L[𝕜] F) {x : E} {s : set E} :
@[protected, simp]
theorem continuous_linear_map.fderiv {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (e : E →L[𝕜] F) {x : E} :
fderiv 𝕜 e x = e
@[protected]
theorem continuous_linear_map.fderiv_within {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (e : E →L[𝕜] F) {x : E} {s : set E} (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 e s x = e
@[protected, simp]
theorem continuous_linear_map.differentiable {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (e : E →L[𝕜] F) :
@[protected]
theorem continuous_linear_map.differentiable_on {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (e : E →L[𝕜] F) {s : set E} :
theorem is_bounded_linear_map.has_fderiv_at_filter {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {L : filter E} (h : is_bounded_linear_map 𝕜 f) :
theorem is_bounded_linear_map.has_fderiv_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : is_bounded_linear_map 𝕜 f) :
theorem is_bounded_linear_map.has_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (h : is_bounded_linear_map 𝕜 f) :
theorem is_bounded_linear_map.differentiable_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (h : is_bounded_linear_map 𝕜 f) :
theorem is_bounded_linear_map.differentiable_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : is_bounded_linear_map 𝕜 f) :
theorem is_bounded_linear_map.fderiv {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (h : is_bounded_linear_map 𝕜 f) :
theorem is_bounded_linear_map.fderiv_within {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : is_bounded_linear_map 𝕜 f) (hxs : unique_diff_within_at 𝕜 s x) :
theorem is_bounded_linear_map.differentiable {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} (h : is_bounded_linear_map 𝕜 f) :
theorem is_bounded_linear_map.differentiable_on {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (h : is_bounded_linear_map 𝕜 f) :

Derivative of the composition of two functions #

For composition lemmas, we put x explicit to help the elaborator, as otherwise Lean tends to get confused since there are too many possibilities for composition

theorem has_fderiv_at_filter.comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} {f' : E →L[𝕜] F} (x : E) {L : filter E} {g : F → G} {g' : F →L[𝕜] G} {L' : filter F} (hg : has_fderiv_at_filter g g' (f x) L') (hf : has_fderiv_at_filter f f' x L) (hL : filter.tendsto f L L') :
has_fderiv_at_filter (g f) (g'.comp f') x L
theorem has_fderiv_within_at.comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} {f' : E →L[𝕜] F} (x : E) {s : set E} {g : F → G} {g' : F →L[𝕜] G} {t : set F} (hg : has_fderiv_within_at g g' t (f x)) (hf : has_fderiv_within_at f f' s x) (hst : set.maps_to f s t) :
has_fderiv_within_at (g f) (g'.comp f') s x
theorem has_fderiv_at.comp_has_fderiv_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} {f' : E →L[𝕜] F} (x : E) {s : set E} {g : F → G} {g' : F →L[𝕜] G} (hg : has_fderiv_at g g' (f x)) (hf : has_fderiv_within_at f f' s x) :
has_fderiv_within_at (g f) (g'.comp f') s x
theorem has_fderiv_at.comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} {f' : E →L[𝕜] F} (x : E) {g : F → G} {g' : F →L[𝕜] G} (hg : has_fderiv_at g g' (f x)) (hf : has_fderiv_at f f' x) :
has_fderiv_at (g f) (g'.comp f') x

The chain rule.

theorem differentiable_within_at.comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} (x : E) {s : set E} {g : F → G} {t : set F} (hg : differentiable_within_at 𝕜 g t (f x)) (hf : differentiable_within_at 𝕜 f s x) (h : set.maps_to f s t) :
theorem differentiable_within_at.comp' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} (x : E) {s : set E} {g : F → G} {t : set F} (hg : differentiable_within_at 𝕜 g t (f x)) (hf : differentiable_within_at 𝕜 f s x) :
differentiable_within_at 𝕜 (g f) (s f ⁻¹' t) x
theorem differentiable_at.comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} (x : E) {g : F → G} (hg : differentiable_at 𝕜 g (f x)) (hf : differentiable_at 𝕜 f x) :
differentiable_at 𝕜 (g f) x
theorem differentiable_at.comp_differentiable_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} (x : E) {s : set E} {g : F → G} (hg : differentiable_at 𝕜 g (f x)) (hf : differentiable_within_at 𝕜 f s x) :
theorem fderiv_within.comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} (x : E) {s : set E} {g : F → G} {t : set F} (hg : differentiable_within_at 𝕜 g t (f x)) (hf : differentiable_within_at 𝕜 f s x) (h : set.maps_to f s t) (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 (g f) s x = (fderiv_within 𝕜 g t (f x)).comp (fderiv_within 𝕜 f s x)
theorem fderiv_within.comp₃ {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {G' : Type u_5} [normed_add_comm_group G'] [normed_space 𝕜 G'] {f : E → F} (x : E) {s : set E} {g' : G → G'} {g : F → G} {t : set F} {u : set G} {y : F} {y' : G} (hg' : differentiable_within_at 𝕜 g' u y') (hg : differentiable_within_at 𝕜 g t y) (hf : differentiable_within_at 𝕜 f s x) (h2g : set.maps_to g t u) (h2f : set.maps_to f s t) (h3g : g y = y') (h3f : f x = y) (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 (g' g f) s x = (fderiv_within 𝕜 g' u y').comp ((fderiv_within 𝕜 g t y).comp (fderiv_within 𝕜 f s x))

Ternary version of fderiv_within.comp, with equality assumptions of basepoints added, in order to apply more easily as a rewrite from right-to-left.

theorem fderiv.comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} (x : E) {g : F → G} (hg : differentiable_at 𝕜 g (f x)) (hf : differentiable_at 𝕜 f x) :
fderiv 𝕜 (g f) x = (fderiv 𝕜 g (f x)).comp (fderiv 𝕜 f x)
theorem fderiv.comp_fderiv_within {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} (x : E) {s : set E} {g : F → G} (hg : differentiable_at 𝕜 g (f x)) (hf : differentiable_within_at 𝕜 f s x) (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 (g f) s x = (fderiv 𝕜 g (f x)).comp (fderiv_within 𝕜 f s x)
theorem differentiable_on.comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} {s : set E} {g : F → G} {t : set F} (hg : differentiable_on 𝕜 g t) (hf : differentiable_on 𝕜 f s) (st : set.maps_to f s t) :
differentiable_on 𝕜 (g f) s
theorem differentiable.comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} {g : F → G} (hg : differentiable 𝕜 g) (hf : differentiable 𝕜 f) :
differentiable 𝕜 (g f)
theorem differentiable.comp_differentiable_on {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} {s : set E} {g : F → G} (hg : differentiable 𝕜 g) (hf : differentiable_on 𝕜 f s) :
differentiable_on 𝕜 (g f) s
@[protected]
theorem has_strict_fderiv_at.comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f : E → F} {f' : E →L[𝕜] F} (x : E) {g : F → G} {g' : F →L[𝕜] G} (hg : has_strict_fderiv_at g g' (f x)) (hf : has_strict_fderiv_at f f' x) :
has_strict_fderiv_at (λ (x : E), g (f x)) (g'.comp f') x

The chain rule for derivatives in the sense of strict differentiability.

@[protected]
theorem differentiable.iterate {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {f : E → E} (hf : differentiable 𝕜 f) (n : ) :
@[protected]
theorem differentiable_on.iterate {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {s : set E} {f : E → E} (hf : differentiable_on 𝕜 f s) (hs : set.maps_to f s s) (n : ) :
@[protected]
theorem has_fderiv_at_filter.iterate {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {L : filter E} {f : E → E} {f' : E →L[𝕜] E} (hf : has_fderiv_at_filter f f' x L) (hL : filter.tendsto f L L) (hx : f x = x) (n : ) :
@[protected]
theorem has_fderiv_at.iterate {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {f : E → E} {f' : E →L[𝕜] E} (hf : has_fderiv_at f f' x) (hx : f x = x) (n : ) :
has_fderiv_at f^[n] (f' ^ n) x
@[protected]
theorem has_fderiv_within_at.iterate {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {f : E → E} {f' : E →L[𝕜] E} (hf : has_fderiv_within_at f f' s x) (hx : f x = x) (hs : set.maps_to f s s) (n : ) :
@[protected]
theorem has_strict_fderiv_at.iterate {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {f : E → E} {f' : E →L[𝕜] E} (hf : has_strict_fderiv_at f f' x) (hx : f x = x) (n : ) :
@[protected]
theorem differentiable_at.iterate {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {f : E → E} (hf : differentiable_at 𝕜 f x) (hx : f x = x) (n : ) :
@[protected]
theorem differentiable_within_at.iterate {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {f : E → E} (hf : differentiable_within_at 𝕜 f s x) (hx : f x = x) (hs : set.maps_to f s s) (n : ) :

Derivative of the cartesian product of two functions #

@[protected]
theorem has_strict_fderiv_at.prod {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f₁ : E → F} {f₁' : E →L[𝕜] F} {x : E} {f₂ : E → G} {f₂' : E →L[𝕜] G} (hf₁ : has_strict_fderiv_at f₁ f₁' x) (hf₂ : has_strict_fderiv_at f₂ f₂' x) :
has_strict_fderiv_at (λ (x : E), (f₁ x, f₂ x)) (f₁'.prod f₂') x
theorem has_fderiv_at_filter.prod {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f₁ : E → F} {f₁' : E →L[𝕜] F} {x : E} {L : filter E} {f₂ : E → G} {f₂' : E →L[𝕜] G} (hf₁ : has_fderiv_at_filter f₁ f₁' x L) (hf₂ : has_fderiv_at_filter f₂ f₂' x L) :
has_fderiv_at_filter (λ (x : E), (f₁ x, f₂ x)) (f₁'.prod f₂') x L
theorem has_fderiv_within_at.prod {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f₁ : E → F} {f₁' : E →L[𝕜] F} {x : E} {s : set E} {f₂ : E → G} {f₂' : E →L[𝕜] G} (hf₁ : has_fderiv_within_at f₁ f₁' s x) (hf₂ : has_fderiv_within_at f₂ f₂' s x) :
has_fderiv_within_at (λ (x : E), (f₁ x, f₂ x)) (f₁'.prod f₂') s x
theorem has_fderiv_at.prod {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f₁ : E → F} {f₁' : E →L[𝕜] F} {x : E} {f₂ : E → G} {f₂' : E →L[𝕜] G} (hf₁ : has_fderiv_at f₁ f₁' x) (hf₂ : has_fderiv_at f₂ f₂' x) :
has_fderiv_at (λ (x : E), (f₁ x, f₂ x)) (f₁'.prod f₂') x
theorem has_fderiv_at_prod_mk_left {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (e₀ : E) (f₀ : F) :
has_fderiv_at (λ (e : E), (e, f₀)) (continuous_linear_map.inl 𝕜 E F) e₀
theorem has_fderiv_at_prod_mk_right {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (e₀ : E) (f₀ : F) :
has_fderiv_at (λ (f : F), (e₀, f)) (continuous_linear_map.inr 𝕜 E F) f₀
theorem differentiable_within_at.prod {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f₁ : E → F} {x : E} {s : set E} {f₂ : E → G} (hf₁ : differentiable_within_at 𝕜 f₁ s x) (hf₂ : differentiable_within_at 𝕜 f₂ s x) :
differentiable_within_at 𝕜 (λ (x : E), (f₁ x, f₂ x)) s x
@[simp]
theorem differentiable_at.prod {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f₁ : E → F} {x : E} {f₂ : E → G} (hf₁ : differentiable_at 𝕜 f₁ x) (hf₂ : differentiable_at 𝕜 f₂ x) :
differentiable_at 𝕜 (λ (x : E), (f₁ x, f₂ x)) x
theorem differentiable_on.prod {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f₁ : E → F} {s : set E} {f₂ : E → G} (hf₁ : differentiable_on 𝕜 f₁ s) (hf₂ : differentiable_on 𝕜 f₂ s) :
differentiable_on 𝕜 (λ (x : E), (f₁ x, f₂ x)) s
@[simp]
theorem differentiable.prod {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f₁ : E → F} {f₂ : E → G} (hf₁ : differentiable 𝕜 f₁) (hf₂ : differentiable 𝕜 f₂) :
differentiable 𝕜 (λ (x : E), (f₁ x, f₂ x))
theorem differentiable_at.fderiv_prod {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f₁ : E → F} {x : E} {f₂ : E → G} (hf₁ : differentiable_at 𝕜 f₁ x) (hf₂ : differentiable_at 𝕜 f₂ x) :
fderiv 𝕜 (λ (x : E), (f₁ x, f₂ x)) x = (fderiv 𝕜 f₁ x).prod (fderiv 𝕜 f₂ x)
theorem differentiable_at.fderiv_within_prod {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f₁ : E → F} {x : E} {s : set E} {f₂ : E → G} (hf₁ : differentiable_within_at 𝕜 f₁ s x) (hf₂ : differentiable_within_at 𝕜 f₂ s x) (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 (λ (x : E), (f₁ x, f₂ x)) s x = (fderiv_within 𝕜 f₁ s x).prod (fderiv_within 𝕜 f₂ s x)
theorem has_strict_fderiv_at_fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} :
@[protected]
theorem has_strict_fderiv_at.fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {f₂ : E → F × G} {f₂' : E →L[𝕜] F × G} (h : has_strict_fderiv_at f₂ f₂' x) :
has_strict_fderiv_at (λ (x : E), (f₂ x).fst) ((continuous_linear_map.fst 𝕜 F G).comp f₂') x
theorem has_fderiv_at_filter_fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} {L : filter (E × F)} :
@[protected]
theorem has_fderiv_at_filter.fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {L : filter E} {f₂ : E → F × G} {f₂' : E →L[𝕜] F × G} (h : has_fderiv_at_filter f₂ f₂' x L) :
has_fderiv_at_filter (λ (x : E), (f₂ x).fst) ((continuous_linear_map.fst 𝕜 F G).comp f₂') x L
theorem has_fderiv_at_fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} :
@[protected]
theorem has_fderiv_at.fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {f₂ : E → F × G} {f₂' : E →L[𝕜] F × G} (h : has_fderiv_at f₂ f₂' x) :
has_fderiv_at (λ (x : E), (f₂ x).fst) ((continuous_linear_map.fst 𝕜 F G).comp f₂') x
theorem has_fderiv_within_at_fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} {s : set (E × F)} :
@[protected]
theorem has_fderiv_within_at.fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {s : set E} {f₂ : E → F × G} {f₂' : E →L[𝕜] F × G} (h : has_fderiv_within_at f₂ f₂' s x) :
has_fderiv_within_at (λ (x : E), (f₂ x).fst) ((continuous_linear_map.fst 𝕜 F G).comp f₂') s x
theorem differentiable_at_fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} :
@[protected, simp]
theorem differentiable_at.fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {f₂ : E → F × G} (h : differentiable_at 𝕜 f₂ x) :
differentiable_at 𝕜 (λ (x : E), (f₂ x).fst) x
theorem differentiable_fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] :
@[protected, simp]
theorem differentiable.fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f₂ : E → F × G} (h : differentiable 𝕜 f₂) :
differentiable 𝕜 (λ (x : E), (f₂ x).fst)
theorem differentiable_within_at_fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} {s : set (E × F)} :
@[protected]
theorem differentiable_within_at.fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {s : set E} {f₂ : E → F × G} (h : differentiable_within_at 𝕜 f₂ s x) :
differentiable_within_at 𝕜 (λ (x : E), (f₂ x).fst) s x
theorem differentiable_on_fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {s : set (E × F)} :
@[protected]
theorem differentiable_on.fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {s : set E} {f₂ : E → F × G} (h : differentiable_on 𝕜 f₂ s) :
differentiable_on 𝕜 (λ (x : E), (f₂ x).fst) s
theorem fderiv_fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} :
theorem fderiv.fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {f₂ : E → F × G} (h : differentiable_at 𝕜 f₂ x) :
fderiv 𝕜 (λ (x : E), (f₂ x).fst) x = (continuous_linear_map.fst 𝕜 F G).comp (fderiv 𝕜 f₂ x)
theorem fderiv_within_fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} {s : set (E × F)} (hs : unique_diff_within_at 𝕜 s p) :
theorem fderiv_within.fst {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {s : set E} {f₂ : E → F × G} (hs : unique_diff_within_at 𝕜 s x) (h : differentiable_within_at 𝕜 f₂ s x) :
fderiv_within 𝕜 (λ (x : E), (f₂ x).fst) s x = (continuous_linear_map.fst 𝕜 F G).comp (fderiv_within 𝕜 f₂ s x)
theorem has_strict_fderiv_at_snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} :
@[protected]
theorem has_strict_fderiv_at.snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {f₂ : E → F × G} {f₂' : E →L[𝕜] F × G} (h : has_strict_fderiv_at f₂ f₂' x) :
has_strict_fderiv_at (λ (x : E), (f₂ x).snd) ((continuous_linear_map.snd 𝕜 F G).comp f₂') x
theorem has_fderiv_at_filter_snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} {L : filter (E × F)} :
@[protected]
theorem has_fderiv_at_filter.snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {L : filter E} {f₂ : E → F × G} {f₂' : E →L[𝕜] F × G} (h : has_fderiv_at_filter f₂ f₂' x L) :
has_fderiv_at_filter (λ (x : E), (f₂ x).snd) ((continuous_linear_map.snd 𝕜 F G).comp f₂') x L
theorem has_fderiv_at_snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} :
@[protected]
theorem has_fderiv_at.snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {f₂ : E → F × G} {f₂' : E →L[𝕜] F × G} (h : has_fderiv_at f₂ f₂' x) :
has_fderiv_at (λ (x : E), (f₂ x).snd) ((continuous_linear_map.snd 𝕜 F G).comp f₂') x
theorem has_fderiv_within_at_snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} {s : set (E × F)} :
@[protected]
theorem has_fderiv_within_at.snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {s : set E} {f₂ : E → F × G} {f₂' : E →L[𝕜] F × G} (h : has_fderiv_within_at f₂ f₂' s x) :
has_fderiv_within_at (λ (x : E), (f₂ x).snd) ((continuous_linear_map.snd 𝕜 F G).comp f₂') s x
theorem differentiable_at_snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} :
@[protected, simp]
theorem differentiable_at.snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {f₂ : E → F × G} (h : differentiable_at 𝕜 f₂ x) :
differentiable_at 𝕜 (λ (x : E), (f₂ x).snd) x
theorem differentiable_snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] :
@[protected, simp]
theorem differentiable.snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {f₂ : E → F × G} (h : differentiable 𝕜 f₂) :
differentiable 𝕜 (λ (x : E), (f₂ x).snd)
theorem differentiable_within_at_snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} {s : set (E × F)} :
@[protected]
theorem differentiable_within_at.snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {s : set E} {f₂ : E → F × G} (h : differentiable_within_at 𝕜 f₂ s x) :
differentiable_within_at 𝕜 (λ (x : E), (f₂ x).snd) s x
theorem differentiable_on_snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {s : set (E × F)} :
@[protected]
theorem differentiable_on.snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {s : set E} {f₂ : E → F × G} (h : differentiable_on 𝕜 f₂ s) :
differentiable_on 𝕜 (λ (x : E), (f₂ x).snd) s
theorem fderiv_snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} :
theorem fderiv.snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {f₂ : E → F × G} (h : differentiable_at 𝕜 f₂ x) :
fderiv 𝕜 (λ (x : E), (f₂ x).snd) x = (continuous_linear_map.snd 𝕜 F G).comp (fderiv 𝕜 f₂ x)
theorem fderiv_within_snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {p : E × F} {s : set (E × F)} (hs : unique_diff_within_at 𝕜 s p) :
theorem fderiv_within.snd {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {s : set E} {f₂ : E → F × G} (hs : unique_diff_within_at 𝕜 s x) (h : differentiable_within_at 𝕜 f₂ s x) :
fderiv_within 𝕜 (λ (x : E), (f₂ x).snd) s x = (continuous_linear_map.snd 𝕜 F G).comp (fderiv_within 𝕜 f₂ s x)
@[protected]
theorem has_strict_fderiv_at.prod_map {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {G' : Type u_5} [normed_add_comm_group G'] [normed_space 𝕜 G'] {f : E → F} {f' : E →L[𝕜] F} {f₂ : G → G'} {f₂' : G →L[𝕜] G'} (p : E × G) (hf : has_strict_fderiv_at f f' p.fst) (hf₂ : has_strict_fderiv_at f₂ f₂' p.snd) :
has_strict_fderiv_at (prod.map f f₂) (f'.prod_map f₂') p
@[protected]
theorem has_fderiv_at.prod_map {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {G' : Type u_5} [normed_add_comm_group G'] [normed_space 𝕜 G'] {f : E → F} {f' : E →L[𝕜] F} {f₂ : G → G'} {f₂' : G →L[𝕜] G'} (p : E × G) (hf : has_fderiv_at f f' p.fst) (hf₂ : has_fderiv_at f₂ f₂' p.snd) :
has_fderiv_at (prod.map f f₂) (f'.prod_map f₂') p
@[protected, simp]
theorem differentiable_at.prod_map {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {G' : Type u_5} [normed_add_comm_group G'] [normed_space 𝕜 G'] {f : E → F} {f₂ : G → G'} (p : E × G) (hf : differentiable_at 𝕜 f p.fst) (hf₂ : differentiable_at 𝕜 f₂ p.snd) :
differentiable_at 𝕜 (λ (p : E × G), (f p.fst, f₂ p.snd)) p

Derivative of a function multiplied by a constant #

theorem has_strict_fderiv_at.const_smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {R : Type u_6} [semiring R] [module R F] [smul_comm_class 𝕜 R F] [has_continuous_const_smul R F] (h : has_strict_fderiv_at f f' x) (c : R) :
has_strict_fderiv_at (λ (x : E), c f x) (c f') x
theorem has_fderiv_at_filter.const_smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {L : filter E} {R : Type u_6} [semiring R] [module R F] [smul_comm_class 𝕜 R F] [has_continuous_const_smul R F] (h : has_fderiv_at_filter f f' x L) (c : R) :
has_fderiv_at_filter (λ (x : E), c f x) (c f') x L
theorem has_fderiv_within_at.const_smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} {R : Type u_6} [semiring R] [module R F] [smul_comm_class 𝕜 R F] [has_continuous_const_smul R F] (h : has_fderiv_within_at f f' s x) (c : R) :
has_fderiv_within_at (λ (x : E), c f x) (c f') s x
theorem has_fderiv_at.const_smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {R : Type u_6} [semiring R] [module R F] [smul_comm_class 𝕜 R F] [has_continuous_const_smul R F] (h : has_fderiv_at f f' x) (c : R) :
has_fderiv_at (λ (x : E), c f x) (c f') x
theorem differentiable_within_at.const_smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} {R : Type u_6} [semiring R] [module R F] [smul_comm_class 𝕜 R F] [has_continuous_const_smul R F] (h : differentiable_within_at 𝕜 f s x) (c : R) :
differentiable_within_at 𝕜 (λ (y : E), c f y) s x
theorem differentiable_at.const_smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {R : Type u_6} [semiring R] [module R F] [smul_comm_class 𝕜 R F] [has_continuous_const_smul R F] (h : differentiable_at 𝕜 f x) (c : R) :
differentiable_at 𝕜 (λ (y : E), c f y) x
theorem differentiable_on.const_smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} {R : Type u_6} [semiring R] [module R F] [smul_comm_class 𝕜 R F] [has_continuous_const_smul R F] (h : differentiable_on 𝕜 f s) (c : R) :
differentiable_on 𝕜 (λ (y : E), c f y) s
theorem differentiable.const_smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {R : Type u_6} [semiring R] [module R F] [smul_comm_class 𝕜 R F] [has_continuous_const_smul R F] (h : differentiable 𝕜 f) (c : R) :
differentiable 𝕜 (λ (y : E), c f y)
theorem fderiv_within_const_smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} {R : Type u_6} [semiring R] [module R F] [smul_comm_class 𝕜 R F] [has_continuous_const_smul R F] (hxs : unique_diff_within_at 𝕜 s x) (h : differentiable_within_at 𝕜 f s x) (c : R) :
fderiv_within 𝕜 (λ (y : E), c f y) s x = c fderiv_within 𝕜 f s x
theorem fderiv_const_smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {R : Type u_6} [semiring R] [module R F] [smul_comm_class 𝕜 R F] [has_continuous_const_smul R F] (h : differentiable_at 𝕜 f x) (c : R) :
fderiv 𝕜 (λ (y : E), c f y) x = c fderiv 𝕜 f x

Derivative of the sum of two functions #

theorem has_strict_fderiv_at.add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {f' g' : E →L[𝕜] F} {x : E} (hf : has_strict_fderiv_at f f' x) (hg : has_strict_fderiv_at g g' x) :
has_strict_fderiv_at (λ (y : E), f y + g y) (f' + g') x
theorem has_fderiv_at_filter.add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {f' g' : E →L[𝕜] F} {x : E} {L : filter E} (hf : has_fderiv_at_filter f f' x L) (hg : has_fderiv_at_filter g g' x L) :
has_fderiv_at_filter (λ (y : E), f y + g y) (f' + g') x L
theorem has_fderiv_within_at.add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {f' g' : E →L[𝕜] F} {x : E} {s : set E} (hf : has_fderiv_within_at f f' s x) (hg : has_fderiv_within_at g g' s x) :
has_fderiv_within_at (λ (y : E), f y + g y) (f' + g') s x
theorem has_fderiv_at.add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {f' g' : E →L[𝕜] F} {x : E} (hf : has_fderiv_at f f' x) (hg : has_fderiv_at g g' x) :
has_fderiv_at (λ (x : E), f x + g x) (f' + g') x
theorem differentiable_within_at.add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {x : E} {s : set E} (hf : differentiable_within_at 𝕜 f s x) (hg : differentiable_within_at 𝕜 g s x) :
differentiable_within_at 𝕜 (λ (y : E), f y + g y) s x
@[simp]
theorem differentiable_at.add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {x : E} (hf : differentiable_at 𝕜 f x) (hg : differentiable_at 𝕜 g x) :
differentiable_at 𝕜 (λ (y : E), f y + g y) x
theorem differentiable_on.add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {s : set E} (hf : differentiable_on 𝕜 f s) (hg : differentiable_on 𝕜 g s) :
differentiable_on 𝕜 (λ (y : E), f y + g y) s
@[simp]
theorem differentiable.add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} (hf : differentiable 𝕜 f) (hg : differentiable 𝕜 g) :
differentiable 𝕜 (λ (y : E), f y + g y)
theorem fderiv_within_add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {x : E} {s : set E} (hxs : unique_diff_within_at 𝕜 s x) (hf : differentiable_within_at 𝕜 f s x) (hg : differentiable_within_at 𝕜 g s x) :
fderiv_within 𝕜 (λ (y : E), f y + g y) s x = fderiv_within 𝕜 f s x + fderiv_within 𝕜 g s x
theorem fderiv_add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {x : E} (hf : differentiable_at 𝕜 f x) (hg : differentiable_at 𝕜 g x) :
fderiv 𝕜 (λ (y : E), f y + g y) x = fderiv 𝕜 f x + fderiv 𝕜 g x
theorem has_strict_fderiv_at.add_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_strict_fderiv_at f f' x) (c : F) :
has_strict_fderiv_at (λ (y : E), f y + c) f' x
theorem has_fderiv_at_filter.add_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {L : filter E} (hf : has_fderiv_at_filter f f' x L) (c : F) :
has_fderiv_at_filter (λ (y : E), f y + c) f' x L
theorem has_fderiv_within_at.add_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (hf : has_fderiv_within_at f f' s x) (c : F) :
has_fderiv_within_at (λ (y : E), f y + c) f' s x
theorem has_fderiv_at.add_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_fderiv_at f f' x) (c : F) :
has_fderiv_at (λ (x : E), f x + c) f' x
theorem differentiable_within_at.add_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (hf : differentiable_within_at 𝕜 f s x) (c : F) :
differentiable_within_at 𝕜 (λ (y : E), f y + c) s x
@[simp]
theorem differentiable_within_at_add_const_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (c : F) :
differentiable_within_at 𝕜 (λ (y : E), f y + c) s x differentiable_within_at 𝕜 f s x
theorem differentiable_at.add_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (hf : differentiable_at 𝕜 f x) (c : F) :
differentiable_at 𝕜 (λ (y : E), f y + c) x
@[simp]
theorem differentiable_at_add_const_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (c : F) :
differentiable_at 𝕜 (λ (y : E), f y + c) x differentiable_at 𝕜 f x
theorem differentiable_on.add_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (hf : differentiable_on 𝕜 f s) (c : F) :
differentiable_on 𝕜 (λ (y : E), f y + c) s
@[simp]
theorem differentiable_on_add_const_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (c : F) :
differentiable_on 𝕜 (λ (y : E), f y + c) s differentiable_on 𝕜 f s
theorem differentiable.add_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} (hf : differentiable 𝕜 f) (c : F) :
differentiable 𝕜 (λ (y : E), f y + c)
@[simp]
theorem differentiable_add_const_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} (c : F) :
differentiable 𝕜 (λ (y : E), f y + c) differentiable 𝕜 f
theorem fderiv_within_add_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (hxs : unique_diff_within_at 𝕜 s x) (c : F) :
fderiv_within 𝕜 (λ (y : E), f y + c) s x = fderiv_within 𝕜 f s x
theorem fderiv_add_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (c : F) :
fderiv 𝕜 (λ (y : E), f y + c) x = fderiv 𝕜 f x
theorem has_strict_fderiv_at.const_add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_strict_fderiv_at f f' x) (c : F) :
has_strict_fderiv_at (λ (y : E), c + f y) f' x
theorem has_fderiv_at_filter.const_add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {L : filter E} (hf : has_fderiv_at_filter f f' x L) (c : F) :
has_fderiv_at_filter (λ (y : E), c + f y) f' x L
theorem has_fderiv_within_at.const_add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (hf : has_fderiv_within_at f f' s x) (c : F) :
has_fderiv_within_at (λ (y : E), c + f y) f' s x
theorem has_fderiv_at.const_add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_fderiv_at f f' x) (c : F) :
has_fderiv_at (λ (x : E), c + f x) f' x
theorem differentiable_within_at.const_add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (hf : differentiable_within_at 𝕜 f s x) (c : F) :
differentiable_within_at 𝕜 (λ (y : E), c + f y) s x
@[simp]
theorem differentiable_within_at_const_add_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (c : F) :
differentiable_within_at 𝕜 (λ (y : E), c + f y) s x differentiable_within_at 𝕜 f s x
theorem differentiable_at.const_add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (hf : differentiable_at 𝕜 f x) (c : F) :
differentiable_at 𝕜 (λ (y : E), c + f y) x
@[simp]
theorem differentiable_at_const_add_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (c : F) :
differentiable_at 𝕜 (λ (y : E), c + f y) x differentiable_at 𝕜 f x
theorem differentiable_on.const_add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (hf : differentiable_on 𝕜 f s) (c : F) :
differentiable_on 𝕜 (λ (y : E), c + f y) s
@[simp]
theorem differentiable_on_const_add_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (c : F) :
differentiable_on 𝕜 (λ (y : E), c + f y) s differentiable_on 𝕜 f s
theorem differentiable.const_add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} (hf : differentiable 𝕜 f) (c : F) :
differentiable 𝕜 (λ (y : E), c + f y)
@[simp]
theorem differentiable_const_add_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} (c : F) :
differentiable 𝕜 (λ (y : E), c + f y) differentiable 𝕜 f
theorem fderiv_within_const_add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (hxs : unique_diff_within_at 𝕜 s x) (c : F) :
fderiv_within 𝕜 (λ (y : E), c + f y) s x = fderiv_within 𝕜 f s x
theorem fderiv_const_add {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (c : F) :
fderiv 𝕜 (λ (y : E), c + f y) x = fderiv 𝕜 f x

Derivative of a finite sum of functions #

theorem has_strict_fderiv_at.sum {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {ι : Type u_6} {u : finset ι} {A : ι → E → F} {A' : ι → (E →L[𝕜] F)} (h : ∀ (i : ι), i uhas_strict_fderiv_at (A i) (A' i) x) :
has_strict_fderiv_at (λ (y : E), u.sum (λ (i : ι), A i y)) (u.sum (λ (i : ι), A' i)) x
theorem has_fderiv_at_filter.sum {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {L : filter E} {ι : Type u_6} {u : finset ι} {A : ι → E → F} {A' : ι → (E →L[𝕜] F)} (h : ∀ (i : ι), i uhas_fderiv_at_filter (A i) (A' i) x L) :
has_fderiv_at_filter (λ (y : E), u.sum (λ (i : ι), A i y)) (u.sum (λ (i : ι), A' i)) x L
theorem has_fderiv_within_at.sum {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} {ι : Type u_6} {u : finset ι} {A : ι → E → F} {A' : ι → (E →L[𝕜] F)} (h : ∀ (i : ι), i uhas_fderiv_within_at (A i) (A' i) s x) :
has_fderiv_within_at (λ (y : E), u.sum (λ (i : ι), A i y)) (u.sum (λ (i : ι), A' i)) s x
theorem has_fderiv_at.sum {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {ι : Type u_6} {u : finset ι} {A : ι → E → F} {A' : ι → (E →L[𝕜] F)} (h : ∀ (i : ι), i uhas_fderiv_at (A i) (A' i) x) :
has_fderiv_at (λ (y : E), u.sum (λ (i : ι), A i y)) (u.sum (λ (i : ι), A' i)) x
theorem differentiable_within_at.sum {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} {ι : Type u_6} {u : finset ι} {A : ι → E → F} (h : ∀ (i : ι), i udifferentiable_within_at 𝕜 (A i) s x) :
differentiable_within_at 𝕜 (λ (y : E), u.sum (λ (i : ι), A i y)) s x
@[simp]
theorem differentiable_at.sum {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {ι : Type u_6} {u : finset ι} {A : ι → E → F} (h : ∀ (i : ι), i udifferentiable_at 𝕜 (A i) x) :
differentiable_at 𝕜 (λ (y : E), u.sum (λ (i : ι), A i y)) x
theorem differentiable_on.sum {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {s : set E} {ι : Type u_6} {u : finset ι} {A : ι → E → F} (h : ∀ (i : ι), i udifferentiable_on 𝕜 (A i) s) :
differentiable_on 𝕜 (λ (y : E), u.sum (λ (i : ι), A i y)) s
@[simp]
theorem differentiable.sum {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {ι : Type u_6} {u : finset ι} {A : ι → E → F} (h : ∀ (i : ι), i udifferentiable 𝕜 (A i)) :
differentiable 𝕜 (λ (y : E), u.sum (λ (i : ι), A i y))
theorem fderiv_within_sum {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} {ι : Type u_6} {u : finset ι} {A : ι → E → F} (hxs : unique_diff_within_at 𝕜 s x) (h : ∀ (i : ι), i udifferentiable_within_at 𝕜 (A i) s x) :
fderiv_within 𝕜 (λ (y : E), u.sum (λ (i : ι), A i y)) s x = u.sum (λ (i : ι), fderiv_within 𝕜 (A i) s x)
theorem fderiv_sum {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {ι : Type u_6} {u : finset ι} {A : ι → E → F} (h : ∀ (i : ι), i udifferentiable_at 𝕜 (A i) x) :
fderiv 𝕜 (λ (y : E), u.sum (λ (i : ι), A i y)) x = u.sum (λ (i : ι), fderiv 𝕜 (A i) x)

Derivatives of functions f : E → Π i, F' i #

In this section we formulate has_*fderiv*_pi theorems as iffs, and provide two versions of each theorem:

@[simp]
theorem has_strict_fderiv_at_pi' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {Φ : E → Π (i : ι), F' i} {Φ' : E →L[𝕜] Π (i : ι), F' i} :
has_strict_fderiv_at Φ Φ' x ∀ (i : ι), has_strict_fderiv_at (λ (x : E), Φ x i) ((continuous_linear_map.proj i).comp Φ') x
@[simp]
theorem has_strict_fderiv_at_pi {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {φ : Π (i : ι), E → F' i} {φ' : Π (i : ι), E →L[𝕜] F' i} :
has_strict_fderiv_at (λ (x : E) (i : ι), φ i x) (continuous_linear_map.pi φ') x ∀ (i : ι), has_strict_fderiv_at (φ i) (φ' i) x
@[simp]
theorem has_fderiv_at_filter_pi' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {L : filter E} {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {Φ : E → Π (i : ι), F' i} {Φ' : E →L[𝕜] Π (i : ι), F' i} :
has_fderiv_at_filter Φ Φ' x L ∀ (i : ι), has_fderiv_at_filter (λ (x : E), Φ x i) ((continuous_linear_map.proj i).comp Φ') x L
theorem has_fderiv_at_filter_pi {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {L : filter E} {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {φ : Π (i : ι), E → F' i} {φ' : Π (i : ι), E →L[𝕜] F' i} :
has_fderiv_at_filter (λ (x : E) (i : ι), φ i x) (continuous_linear_map.pi φ') x L ∀ (i : ι), has_fderiv_at_filter (φ i) (φ' i) x L
@[simp]
theorem has_fderiv_at_pi' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {Φ : E → Π (i : ι), F' i} {Φ' : E →L[𝕜] Π (i : ι), F' i} :
has_fderiv_at Φ Φ' x ∀ (i : ι), has_fderiv_at (λ (x : E), Φ x i) ((continuous_linear_map.proj i).comp Φ') x
theorem has_fderiv_at_pi {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {φ : Π (i : ι), E → F' i} {φ' : Π (i : ι), E →L[𝕜] F' i} :
has_fderiv_at (λ (x : E) (i : ι), φ i x) (continuous_linear_map.pi φ') x ∀ (i : ι), has_fderiv_at (φ i) (φ' i) x
@[simp]
theorem has_fderiv_within_at_pi' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {Φ : E → Π (i : ι), F' i} {Φ' : E →L[𝕜] Π (i : ι), F' i} :
has_fderiv_within_at Φ Φ' s x ∀ (i : ι), has_fderiv_within_at (λ (x : E), Φ x i) ((continuous_linear_map.proj i).comp Φ') s x
theorem has_fderiv_within_at_pi {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {φ : Π (i : ι), E → F' i} {φ' : Π (i : ι), E →L[𝕜] F' i} :
has_fderiv_within_at (λ (x : E) (i : ι), φ i x) (continuous_linear_map.pi φ') s x ∀ (i : ι), has_fderiv_within_at (φ i) (φ' i) s x
@[simp]
theorem differentiable_within_at_pi {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {Φ : E → Π (i : ι), F' i} :
differentiable_within_at 𝕜 Φ s x ∀ (i : ι), differentiable_within_at 𝕜 (λ (x : E), Φ x i) s x
@[simp]
theorem differentiable_at_pi {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {Φ : E → Π (i : ι), F' i} :
differentiable_at 𝕜 Φ x ∀ (i : ι), differentiable_at 𝕜 (λ (x : E), Φ x i) x
theorem differentiable_on_pi {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {s : set E} {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {Φ : E → Π (i : ι), F' i} :
differentiable_on 𝕜 Φ s ∀ (i : ι), differentiable_on 𝕜 (λ (x : E), Φ x i) s
theorem differentiable_pi {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {Φ : E → Π (i : ι), F' i} :
differentiable 𝕜 Φ ∀ (i : ι), differentiable 𝕜 (λ (x : E), Φ x i)
theorem fderiv_within_pi {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {φ : Π (i : ι), E → F' i} (h : ∀ (i : ι), differentiable_within_at 𝕜 (φ i) s x) (hs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 (λ (x : E) (i : ι), φ i x) s x = continuous_linear_map.pi (λ (i : ι), fderiv_within 𝕜 (φ i) s x)
theorem fderiv_pi {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {ι : Type u_6} [fintype ι] {F' : ι → Type u_7} [Π (i : ι), normed_add_comm_group (F' i)] [Π (i : ι), normed_space 𝕜 (F' i)] {φ : Π (i : ι), E → F' i} (h : ∀ (i : ι), differentiable_at 𝕜 (φ i) x) :
fderiv 𝕜 (λ (x : E) (i : ι), φ i x) x = continuous_linear_map.pi (λ (i : ι), fderiv 𝕜 (φ i) x)

Derivative of the negative of a function #

theorem has_strict_fderiv_at.neg {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (h : has_strict_fderiv_at f f' x) :
has_strict_fderiv_at (λ (x : E), -f x) (-f') x
theorem has_fderiv_at_filter.neg {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {L : filter E} (h : has_fderiv_at_filter f f' x L) :
has_fderiv_at_filter (λ (x : E), -f x) (-f') x L
theorem has_fderiv_within_at.neg {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : has_fderiv_within_at f f' s x) :
has_fderiv_within_at (λ (x : E), -f x) (-f') s x
theorem has_fderiv_at.neg {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (h : has_fderiv_at f f' x) :
has_fderiv_at (λ (x : E), -f x) (-f') x
theorem differentiable_within_at.neg {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (h : differentiable_within_at 𝕜 f s x) :
differentiable_within_at 𝕜 (λ (y : E), -f y) s x
@[simp]
theorem differentiable_within_at_neg_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} :
differentiable_within_at 𝕜 (λ (y : E), -f y) s x differentiable_within_at 𝕜 f s x
theorem differentiable_at.neg {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (h : differentiable_at 𝕜 f x) :
differentiable_at 𝕜 (λ (y : E), -f y) x
@[simp]
theorem differentiable_at_neg_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} :
differentiable_at 𝕜 (λ (y : E), -f y) x differentiable_at 𝕜 f x
theorem differentiable_on.neg {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (h : differentiable_on 𝕜 f s) :
differentiable_on 𝕜 (λ (y : E), -f y) s
@[simp]
theorem differentiable_on_neg_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} :
differentiable_on 𝕜 (λ (y : E), -f y) s differentiable_on 𝕜 f s
theorem differentiable.neg {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} (h : differentiable 𝕜 f) :
differentiable 𝕜 (λ (y : E), -f y)
@[simp]
theorem differentiable_neg_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} :
differentiable 𝕜 (λ (y : E), -f y) differentiable 𝕜 f
theorem fderiv_within_neg {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 (λ (y : E), -f y) s x = -fderiv_within 𝕜 f s x
@[simp]
theorem fderiv_neg {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} :
fderiv 𝕜 (λ (y : E), -f y) x = -fderiv 𝕜 f x

Derivative of the difference of two functions #

theorem has_strict_fderiv_at.sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {f' g' : E →L[𝕜] F} {x : E} (hf : has_strict_fderiv_at f f' x) (hg : has_strict_fderiv_at g g' x) :
has_strict_fderiv_at (λ (x : E), f x - g x) (f' - g') x
theorem has_fderiv_at_filter.sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {f' g' : E →L[𝕜] F} {x : E} {L : filter E} (hf : has_fderiv_at_filter f f' x L) (hg : has_fderiv_at_filter g g' x L) :
has_fderiv_at_filter (λ (x : E), f x - g x) (f' - g') x L
theorem has_fderiv_within_at.sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {f' g' : E →L[𝕜] F} {x : E} {s : set E} (hf : has_fderiv_within_at f f' s x) (hg : has_fderiv_within_at g g' s x) :
has_fderiv_within_at (λ (x : E), f x - g x) (f' - g') s x
theorem has_fderiv_at.sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {f' g' : E →L[𝕜] F} {x : E} (hf : has_fderiv_at f f' x) (hg : has_fderiv_at g g' x) :
has_fderiv_at (λ (x : E), f x - g x) (f' - g') x
theorem differentiable_within_at.sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {x : E} {s : set E} (hf : differentiable_within_at 𝕜 f s x) (hg : differentiable_within_at 𝕜 g s x) :
differentiable_within_at 𝕜 (λ (y : E), f y - g y) s x
@[simp]
theorem differentiable_at.sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {x : E} (hf : differentiable_at 𝕜 f x) (hg : differentiable_at 𝕜 g x) :
differentiable_at 𝕜 (λ (y : E), f y - g y) x
theorem differentiable_on.sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {s : set E} (hf : differentiable_on 𝕜 f s) (hg : differentiable_on 𝕜 g s) :
differentiable_on 𝕜 (λ (y : E), f y - g y) s
@[simp]
theorem differentiable.sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} (hf : differentiable 𝕜 f) (hg : differentiable 𝕜 g) :
differentiable 𝕜 (λ (y : E), f y - g y)
theorem fderiv_within_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {x : E} {s : set E} (hxs : unique_diff_within_at 𝕜 s x) (hf : differentiable_within_at 𝕜 f s x) (hg : differentiable_within_at 𝕜 g s x) :
fderiv_within 𝕜 (λ (y : E), f y - g y) s x = fderiv_within 𝕜 f s x - fderiv_within 𝕜 g s x
theorem fderiv_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f g : E → F} {x : E} (hf : differentiable_at 𝕜 f x) (hg : differentiable_at 𝕜 g x) :
fderiv 𝕜 (λ (y : E), f y - g y) x = fderiv 𝕜 f x - fderiv 𝕜 g x
theorem has_strict_fderiv_at.sub_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_strict_fderiv_at f f' x) (c : F) :
has_strict_fderiv_at (λ (x : E), f x - c) f' x
theorem has_fderiv_at_filter.sub_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {L : filter E} (hf : has_fderiv_at_filter f f' x L) (c : F) :
has_fderiv_at_filter (λ (x : E), f x - c) f' x L
theorem has_fderiv_within_at.sub_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (hf : has_fderiv_within_at f f' s x) (c : F) :
has_fderiv_within_at (λ (x : E), f x - c) f' s x
theorem has_fderiv_at.sub_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_fderiv_at f f' x) (c : F) :
has_fderiv_at (λ (x : E), f x - c) f' x
theorem differentiable_within_at.sub_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (hf : differentiable_within_at 𝕜 f s x) (c : F) :
differentiable_within_at 𝕜 (λ (y : E), f y - c) s x
@[simp]
theorem differentiable_within_at_sub_const_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (c : F) :
differentiable_within_at 𝕜 (λ (y : E), f y - c) s x differentiable_within_at 𝕜 f s x
theorem differentiable_at.sub_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (hf : differentiable_at 𝕜 f x) (c : F) :
differentiable_at 𝕜 (λ (y : E), f y - c) x
@[simp]
theorem differentiable_at_sub_const_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (c : F) :
differentiable_at 𝕜 (λ (y : E), f y - c) x differentiable_at 𝕜 f x
theorem differentiable_on.sub_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (hf : differentiable_on 𝕜 f s) (c : F) :
differentiable_on 𝕜 (λ (y : E), f y - c) s
@[simp]
theorem differentiable_on_sub_const_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (c : F) :
differentiable_on 𝕜 (λ (y : E), f y - c) s differentiable_on 𝕜 f s
theorem differentiable.sub_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} (hf : differentiable 𝕜 f) (c : F) :
differentiable 𝕜 (λ (y : E), f y - c)
@[simp]
theorem differentiable_sub_const_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} (c : F) :
differentiable 𝕜 (λ (y : E), f y - c) differentiable 𝕜 f
theorem fderiv_within_sub_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (hxs : unique_diff_within_at 𝕜 s x) (c : F) :
fderiv_within 𝕜 (λ (y : E), f y - c) s x = fderiv_within 𝕜 f s x
theorem fderiv_sub_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (c : F) :
fderiv 𝕜 (λ (y : E), f y - c) x = fderiv 𝕜 f x
theorem has_strict_fderiv_at.const_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_strict_fderiv_at f f' x) (c : F) :
has_strict_fderiv_at (λ (x : E), c - f x) (-f') x
theorem has_fderiv_at_filter.const_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {L : filter E} (hf : has_fderiv_at_filter f f' x L) (c : F) :
has_fderiv_at_filter (λ (x : E), c - f x) (-f') x L
theorem has_fderiv_within_at.const_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (hf : has_fderiv_within_at f f' s x) (c : F) :
has_fderiv_within_at (λ (x : E), c - f x) (-f') s x
theorem has_fderiv_at.const_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (hf : has_fderiv_at f f' x) (c : F) :
has_fderiv_at (λ (x : E), c - f x) (-f') x
theorem differentiable_within_at.const_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (hf : differentiable_within_at 𝕜 f s x) (c : F) :
differentiable_within_at 𝕜 (λ (y : E), c - f y) s x
@[simp]
theorem differentiable_within_at_const_sub_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (c : F) :
differentiable_within_at 𝕜 (λ (y : E), c - f y) s x differentiable_within_at 𝕜 f s x
theorem differentiable_at.const_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (hf : differentiable_at 𝕜 f x) (c : F) :
differentiable_at 𝕜 (λ (y : E), c - f y) x
@[simp]
theorem differentiable_at_const_sub_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (c : F) :
differentiable_at 𝕜 (λ (y : E), c - f y) x differentiable_at 𝕜 f x
theorem differentiable_on.const_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (hf : differentiable_on 𝕜 f s) (c : F) :
differentiable_on 𝕜 (λ (y : E), c - f y) s
@[simp]
theorem differentiable_on_const_sub_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} (c : F) :
differentiable_on 𝕜 (λ (y : E), c - f y) s differentiable_on 𝕜 f s
theorem differentiable.const_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} (hf : differentiable 𝕜 f) (c : F) :
differentiable 𝕜 (λ (y : E), c - f y)
@[simp]
theorem differentiable_const_sub_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} (c : F) :
differentiable 𝕜 (λ (y : E), c - f y) differentiable 𝕜 f
theorem fderiv_within_const_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} (hxs : unique_diff_within_at 𝕜 s x) (c : F) :
fderiv_within 𝕜 (λ (y : E), c - f y) s x = -fderiv_within 𝕜 f s x
theorem fderiv_const_sub {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} (c : F) :
fderiv 𝕜 (λ (y : E), c - f y) x = -fderiv 𝕜 f x

Derivative of a bounded bilinear map #

theorem is_bounded_bilinear_map.has_strict_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {b : E × F → G} (h : is_bounded_bilinear_map 𝕜 b) (p : E × F) :
theorem is_bounded_bilinear_map.has_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {b : E × F → G} (h : is_bounded_bilinear_map 𝕜 b) (p : E × F) :
theorem is_bounded_bilinear_map.has_fderiv_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {b : E × F → G} {u : set (E × F)} (h : is_bounded_bilinear_map 𝕜 b) (p : E × F) :
theorem is_bounded_bilinear_map.differentiable_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {b : E × F → G} (h : is_bounded_bilinear_map 𝕜 b) (p : E × F) :
theorem is_bounded_bilinear_map.differentiable_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {b : E × F → G} {u : set (E × F)} (h : is_bounded_bilinear_map 𝕜 b) (p : E × F) :
theorem is_bounded_bilinear_map.fderiv {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {b : E × F → G} (h : is_bounded_bilinear_map 𝕜 b) (p : E × F) :
fderiv 𝕜 b p = h.deriv p
theorem is_bounded_bilinear_map.fderiv_within {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {b : E × F → G} {u : set (E × F)} (h : is_bounded_bilinear_map 𝕜 b) (p : E × F) (hxs : unique_diff_within_at 𝕜 u p) :
fderiv_within 𝕜 b u p = h.deriv p
theorem is_bounded_bilinear_map.differentiable {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {b : E × F → G} (h : is_bounded_bilinear_map 𝕜 b) :
theorem is_bounded_bilinear_map.differentiable_on {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {b : E × F → G} {u : set (E × F)} (h : is_bounded_bilinear_map 𝕜 b) :

Derivative of the pointwise composition/application of continuous linear maps #

theorem has_strict_fderiv_at.clm_comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {c' : E →L[𝕜] G →L[𝕜] H} {d : E → (F →L[𝕜] G)} {d' : E →L[𝕜] F →L[𝕜] G} (hc : has_strict_fderiv_at c c' x) (hd : has_strict_fderiv_at d d' x) :
has_strict_fderiv_at (λ (y : E), (c y).comp (d y)) (((continuous_linear_map.compL 𝕜 F G H) (c x)).comp d' + (((continuous_linear_map.compL 𝕜 F G H).flip) (d x)).comp c') x
theorem has_fderiv_within_at.clm_comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {s : set E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {c' : E →L[𝕜] G →L[𝕜] H} {d : E → (F →L[𝕜] G)} {d' : E →L[𝕜] F →L[𝕜] G} (hc : has_fderiv_within_at c c' s x) (hd : has_fderiv_within_at d d' s x) :
has_fderiv_within_at (λ (y : E), (c y).comp (d y)) (((continuous_linear_map.compL 𝕜 F G H) (c x)).comp d' + (((continuous_linear_map.compL 𝕜 F G H).flip) (d x)).comp c') s x
theorem has_fderiv_at.clm_comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {c' : E →L[𝕜] G →L[𝕜] H} {d : E → (F →L[𝕜] G)} {d' : E →L[𝕜] F →L[𝕜] G} (hc : has_fderiv_at c c' x) (hd : has_fderiv_at d d' x) :
has_fderiv_at (λ (y : E), (c y).comp (d y)) (((continuous_linear_map.compL 𝕜 F G H) (c x)).comp d' + (((continuous_linear_map.compL 𝕜 F G H).flip) (d x)).comp c') x
theorem differentiable_within_at.clm_comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {s : set E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {d : E → (F →L[𝕜] G)} (hc : differentiable_within_at 𝕜 c s x) (hd : differentiable_within_at 𝕜 d s x) :
differentiable_within_at 𝕜 (λ (y : E), (c y).comp (d y)) s x
theorem differentiable_at.clm_comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {d : E → (F →L[𝕜] G)} (hc : differentiable_at 𝕜 c x) (hd : differentiable_at 𝕜 d x) :
differentiable_at 𝕜 (λ (y : E), (c y).comp (d y)) x
theorem differentiable_on.clm_comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {s : set E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {d : E → (F →L[𝕜] G)} (hc : differentiable_on 𝕜 c s) (hd : differentiable_on 𝕜 d s) :
differentiable_on 𝕜 (λ (y : E), (c y).comp (d y)) s
theorem differentiable.clm_comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {d : E → (F →L[𝕜] G)} (hc : differentiable 𝕜 c) (hd : differentiable 𝕜 d) :
differentiable 𝕜 (λ (y : E), (c y).comp (d y))
theorem fderiv_within_clm_comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {s : set E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {d : E → (F →L[𝕜] G)} (hxs : unique_diff_within_at 𝕜 s x) (hc : differentiable_within_at 𝕜 c s x) (hd : differentiable_within_at 𝕜 d s x) :
fderiv_within 𝕜 (λ (y : E), (c y).comp (d y)) s x = ((continuous_linear_map.compL 𝕜 F G H) (c x)).comp (fderiv_within 𝕜 d s x) + (((continuous_linear_map.compL 𝕜 F G H).flip) (d x)).comp (fderiv_within 𝕜 c s x)
theorem fderiv_clm_comp {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {d : E → (F →L[𝕜] G)} (hc : differentiable_at 𝕜 c x) (hd : differentiable_at 𝕜 d x) :
fderiv 𝕜 (λ (y : E), (c y).comp (d y)) x = ((continuous_linear_map.compL 𝕜 F G H) (c x)).comp (fderiv 𝕜 d x) + (((continuous_linear_map.compL 𝕜 F G H).flip) (d x)).comp (fderiv 𝕜 c x)
theorem has_strict_fderiv_at.clm_apply {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {c' : E →L[𝕜] G →L[𝕜] H} {u : E → G} {u' : E →L[𝕜] G} (hc : has_strict_fderiv_at c c' x) (hu : has_strict_fderiv_at u u' x) :
has_strict_fderiv_at (λ (y : E), (c y) (u y)) ((c x).comp u' + (c'.flip) (u x)) x
theorem has_fderiv_within_at.clm_apply {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {s : set E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {c' : E →L[𝕜] G →L[𝕜] H} {u : E → G} {u' : E →L[𝕜] G} (hc : has_fderiv_within_at c c' s x) (hu : has_fderiv_within_at u u' s x) :
has_fderiv_within_at (λ (y : E), (c y) (u y)) ((c x).comp u' + (c'.flip) (u x)) s x
theorem has_fderiv_at.clm_apply {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {c' : E →L[𝕜] G →L[𝕜] H} {u : E → G} {u' : E →L[𝕜] G} (hc : has_fderiv_at c c' x) (hu : has_fderiv_at u u' x) :
has_fderiv_at (λ (y : E), (c y) (u y)) ((c x).comp u' + (c'.flip) (u x)) x
theorem differentiable_within_at.clm_apply {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {s : set E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {u : E → G} (hc : differentiable_within_at 𝕜 c s x) (hu : differentiable_within_at 𝕜 u s x) :
differentiable_within_at 𝕜 (λ (y : E), (c y) (u y)) s x
theorem differentiable_at.clm_apply {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {u : E → G} (hc : differentiable_at 𝕜 c x) (hu : differentiable_at 𝕜 u x) :
differentiable_at 𝕜 (λ (y : E), (c y) (u y)) x
theorem differentiable_on.clm_apply {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {s : set E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {u : E → G} (hc : differentiable_on 𝕜 c s) (hu : differentiable_on 𝕜 u s) :
differentiable_on 𝕜 (λ (y : E), (c y) (u y)) s
theorem differentiable.clm_apply {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {u : E → G} (hc : differentiable 𝕜 c) (hu : differentiable 𝕜 u) :
differentiable 𝕜 (λ (y : E), (c y) (u y))
theorem fderiv_within_clm_apply {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {s : set E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {u : E → G} (hxs : unique_diff_within_at 𝕜 s x) (hc : differentiable_within_at 𝕜 c s x) (hu : differentiable_within_at 𝕜 u s x) :
fderiv_within 𝕜 (λ (y : E), (c y) (u y)) s x = (c x).comp (fderiv_within 𝕜 u s x) + ((fderiv_within 𝕜 c s x).flip) (u x)
theorem fderiv_clm_apply {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] {x : E} {H : Type u_6} [normed_add_comm_group H] [normed_space 𝕜 H] {c : E → (G →L[𝕜] H)} {u : E → G} (hc : differentiable_at 𝕜 c x) (hu : differentiable_at 𝕜 u x) :
fderiv 𝕜 (λ (y : E), (c y) (u y)) x = (c x).comp (fderiv 𝕜 u x) + ((fderiv 𝕜 c x).flip) (u x)

Derivative of the product of a scalar-valued function and a vector-valued function #

If c is a differentiable scalar-valued function and f is a differentiable vector-valued function, then λ x, c x • f x is differentiable as well. Lemmas in this section works for function c taking values in the base field, as well as in a normed algebra over the base field: e.g., they work for c : E → ℂ and f : E → F provided that F is a complex normed vector space.

theorem has_strict_fderiv_at.smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} {c' : E →L[𝕜] 𝕜'} (hc : has_strict_fderiv_at c c' x) (hf : has_strict_fderiv_at f f' x) :
has_strict_fderiv_at (λ (y : E), c y f y) (c x f' + c'.smul_right (f x)) x
theorem has_fderiv_within_at.smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} {c' : E →L[𝕜] 𝕜'} (hc : has_fderiv_within_at c c' s x) (hf : has_fderiv_within_at f f' s x) :
has_fderiv_within_at (λ (y : E), c y f y) (c x f' + c'.smul_right (f x)) s x
theorem has_fderiv_at.smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} {c' : E →L[𝕜] 𝕜'} (hc : has_fderiv_at c c' x) (hf : has_fderiv_at f f' x) :
has_fderiv_at (λ (y : E), c y f y) (c x f' + c'.smul_right (f x)) x
theorem differentiable_within_at.smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} (hc : differentiable_within_at 𝕜 c s x) (hf : differentiable_within_at 𝕜 f s x) :
differentiable_within_at 𝕜 (λ (y : E), c y f y) s x
@[simp]
theorem differentiable_at.smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} (hc : differentiable_at 𝕜 c x) (hf : differentiable_at 𝕜 f x) :
differentiable_at 𝕜 (λ (y : E), c y f y) x
theorem differentiable_on.smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} (hc : differentiable_on 𝕜 c s) (hf : differentiable_on 𝕜 f s) :
differentiable_on 𝕜 (λ (y : E), c y f y) s
@[simp]
theorem differentiable.smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} (hc : differentiable 𝕜 c) (hf : differentiable 𝕜 f) :
differentiable 𝕜 (λ (y : E), c y f y)
theorem fderiv_within_smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {s : set E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} (hxs : unique_diff_within_at 𝕜 s x) (hc : differentiable_within_at 𝕜 c s x) (hf : differentiable_within_at 𝕜 f s x) :
fderiv_within 𝕜 (λ (y : E), c y f y) s x = c x fderiv_within 𝕜 f s x + (fderiv_within 𝕜 c s x).smul_right (f x)
theorem fderiv_smul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {x : E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} (hc : differentiable_at 𝕜 c x) (hf : differentiable_at 𝕜 f x) :
fderiv 𝕜 (λ (y : E), c y f y) x = c x fderiv 𝕜 f x + (fderiv 𝕜 c x).smul_right (f x)
theorem has_strict_fderiv_at.smul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} {c' : E →L[𝕜] 𝕜'} (hc : has_strict_fderiv_at c c' x) (f : F) :
has_strict_fderiv_at (λ (y : E), c y f) (c'.smul_right f) x
theorem has_fderiv_within_at.smul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} {c' : E →L[𝕜] 𝕜'} (hc : has_fderiv_within_at c c' s x) (f : F) :
has_fderiv_within_at (λ (y : E), c y f) (c'.smul_right f) s x
theorem has_fderiv_at.smul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} {c' : E →L[𝕜] 𝕜'} (hc : has_fderiv_at c c' x) (f : F) :
has_fderiv_at (λ (y : E), c y f) (c'.smul_right f) x
theorem differentiable_within_at.smul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} (hc : differentiable_within_at 𝕜 c s x) (f : F) :
differentiable_within_at 𝕜 (λ (y : E), c y f) s x
theorem differentiable_at.smul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} (hc : differentiable_at 𝕜 c x) (f : F) :
differentiable_at 𝕜 (λ (y : E), c y f) x
theorem differentiable_on.smul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {s : set E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} (hc : differentiable_on 𝕜 c s) (f : F) :
differentiable_on 𝕜 (λ (y : E), c y f) s
theorem differentiable.smul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} (hc : differentiable 𝕜 c) (f : F) :
differentiable 𝕜 (λ (y : E), c y f)
theorem fderiv_within_smul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} (hxs : unique_diff_within_at 𝕜 s x) (hc : differentiable_within_at 𝕜 c s x) (f : F) :
fderiv_within 𝕜 (λ (y : E), c y f) s x = (fderiv_within 𝕜 c s x).smul_right f
theorem fderiv_smul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {𝕜' : Type u_6} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {c : E → 𝕜'} (hc : differentiable_at 𝕜 c x) (f : F) :
fderiv 𝕜 (λ (y : E), c y f) x = (fderiv 𝕜 c x).smul_right f

Derivative of the product of two functions #

theorem has_strict_fderiv_at.mul' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a b : E → 𝔸} {a' b' : E →L[𝕜] 𝔸} {x : E} (ha : has_strict_fderiv_at a a' x) (hb : has_strict_fderiv_at b b' x) :
has_strict_fderiv_at (λ (y : E), a y * b y) (a x b' + a'.smul_right (b x)) x
theorem has_strict_fderiv_at.mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸' : Type u_7} [normed_comm_ring 𝔸'] [normed_algebra 𝕜 𝔸'] {c d : E → 𝔸'} {c' d' : E →L[𝕜] 𝔸'} (hc : has_strict_fderiv_at c c' x) (hd : has_strict_fderiv_at d d' x) :
has_strict_fderiv_at (λ (y : E), c y * d y) (c x d' + d x c') x
theorem has_fderiv_within_at.mul' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a b : E → 𝔸} {a' b' : E →L[𝕜] 𝔸} (ha : has_fderiv_within_at a a' s x) (hb : has_fderiv_within_at b b' s x) :
has_fderiv_within_at (λ (y : E), a y * b y) (a x b' + a'.smul_right (b x)) s x
theorem has_fderiv_within_at.mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸' : Type u_7} [normed_comm_ring 𝔸'] [normed_algebra 𝕜 𝔸'] {c d : E → 𝔸'} {c' d' : E →L[𝕜] 𝔸'} (hc : has_fderiv_within_at c c' s x) (hd : has_fderiv_within_at d d' s x) :
has_fderiv_within_at (λ (y : E), c y * d y) (c x d' + d x c') s x
theorem has_fderiv_at.mul' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a b : E → 𝔸} {a' b' : E →L[𝕜] 𝔸} (ha : has_fderiv_at a a' x) (hb : has_fderiv_at b b' x) :
has_fderiv_at (λ (y : E), a y * b y) (a x b' + a'.smul_right (b x)) x
theorem has_fderiv_at.mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸' : Type u_7} [normed_comm_ring 𝔸'] [normed_algebra 𝕜 𝔸'] {c d : E → 𝔸'} {c' d' : E →L[𝕜] 𝔸'} (hc : has_fderiv_at c c' x) (hd : has_fderiv_at d d' x) :
has_fderiv_at (λ (y : E), c y * d y) (c x d' + d x c') x
theorem differentiable_within_at.mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a b : E → 𝔸} (ha : differentiable_within_at 𝕜 a s x) (hb : differentiable_within_at 𝕜 b s x) :
differentiable_within_at 𝕜 (λ (y : E), a y * b y) s x
@[simp]
theorem differentiable_at.mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a b : E → 𝔸} (ha : differentiable_at 𝕜 a x) (hb : differentiable_at 𝕜 b x) :
differentiable_at 𝕜 (λ (y : E), a y * b y) x
theorem differentiable_on.mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a b : E → 𝔸} (ha : differentiable_on 𝕜 a s) (hb : differentiable_on 𝕜 b s) :
differentiable_on 𝕜 (λ (y : E), a y * b y) s
@[simp]
theorem differentiable.mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a b : E → 𝔸} (ha : differentiable 𝕜 a) (hb : differentiable 𝕜 b) :
differentiable 𝕜 (λ (y : E), a y * b y)
theorem differentiable_within_at.pow {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable_within_at 𝕜 a s x) (n : ) :
differentiable_within_at 𝕜 (λ (x : E), a x ^ n) s x
@[simp]
theorem differentiable_at.pow {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable_at 𝕜 a x) (n : ) :
differentiable_at 𝕜 (λ (x : E), a x ^ n) x
theorem differentiable_on.pow {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable_on 𝕜 a s) (n : ) :
differentiable_on 𝕜 (λ (x : E), a x ^ n) s
@[simp]
theorem differentiable.pow {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable 𝕜 a) (n : ) :
differentiable 𝕜 (λ (x : E), a x ^ n)
theorem fderiv_within_mul' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a b : E → 𝔸} (hxs : unique_diff_within_at 𝕜 s x) (ha : differentiable_within_at 𝕜 a s x) (hb : differentiable_within_at 𝕜 b s x) :
fderiv_within 𝕜 (λ (y : E), a y * b y) s x = a x fderiv_within 𝕜 b s x + (fderiv_within 𝕜 a s x).smul_right (b x)
theorem fderiv_within_mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸' : Type u_7} [normed_comm_ring 𝔸'] [normed_algebra 𝕜 𝔸'] {c d : E → 𝔸'} (hxs : unique_diff_within_at 𝕜 s x) (hc : differentiable_within_at 𝕜 c s x) (hd : differentiable_within_at 𝕜 d s x) :
fderiv_within 𝕜 (λ (y : E), c y * d y) s x = c x fderiv_within 𝕜 d s x + d x fderiv_within 𝕜 c s x
theorem fderiv_mul' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a b : E → 𝔸} (ha : differentiable_at 𝕜 a x) (hb : differentiable_at 𝕜 b x) :
fderiv 𝕜 (λ (y : E), a y * b y) x = a x fderiv 𝕜 b x + (fderiv 𝕜 a x).smul_right (b x)
theorem fderiv_mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸' : Type u_7} [normed_comm_ring 𝔸'] [normed_algebra 𝕜 𝔸'] {c d : E → 𝔸'} (hc : differentiable_at 𝕜 c x) (hd : differentiable_at 𝕜 d x) :
fderiv 𝕜 (λ (y : E), c y * d y) x = c x fderiv 𝕜 d x + d x fderiv 𝕜 c x
theorem has_strict_fderiv_at.mul_const' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} {a' : E →L[𝕜] 𝔸} (ha : has_strict_fderiv_at a a' x) (b : 𝔸) :
has_strict_fderiv_at (λ (y : E), a y * b) (a'.smul_right b) x
theorem has_strict_fderiv_at.mul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸' : Type u_7} [normed_comm_ring 𝔸'] [normed_algebra 𝕜 𝔸'] {c : E → 𝔸'} {c' : E →L[𝕜] 𝔸'} (hc : has_strict_fderiv_at c c' x) (d : 𝔸') :
has_strict_fderiv_at (λ (y : E), c y * d) (d c') x
theorem has_fderiv_within_at.mul_const' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} {a' : E →L[𝕜] 𝔸} (ha : has_fderiv_within_at a a' s x) (b : 𝔸) :
has_fderiv_within_at (λ (y : E), a y * b) (a'.smul_right b) s x
theorem has_fderiv_within_at.mul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸' : Type u_7} [normed_comm_ring 𝔸'] [normed_algebra 𝕜 𝔸'] {c : E → 𝔸'} {c' : E →L[𝕜] 𝔸'} (hc : has_fderiv_within_at c c' s x) (d : 𝔸') :
has_fderiv_within_at (λ (y : E), c y * d) (d c') s x
theorem has_fderiv_at.mul_const' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} {a' : E →L[𝕜] 𝔸} (ha : has_fderiv_at a a' x) (b : 𝔸) :
has_fderiv_at (λ (y : E), a y * b) (a'.smul_right b) x
theorem has_fderiv_at.mul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸' : Type u_7} [normed_comm_ring 𝔸'] [normed_algebra 𝕜 𝔸'] {c : E → 𝔸'} {c' : E →L[𝕜] 𝔸'} (hc : has_fderiv_at c c' x) (d : 𝔸') :
has_fderiv_at (λ (y : E), c y * d) (d c') x
theorem differentiable_within_at.mul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable_within_at 𝕜 a s x) (b : 𝔸) :
differentiable_within_at 𝕜 (λ (y : E), a y * b) s x
theorem differentiable_at.mul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable_at 𝕜 a x) (b : 𝔸) :
differentiable_at 𝕜 (λ (y : E), a y * b) x
theorem differentiable_on.mul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable_on 𝕜 a s) (b : 𝔸) :
differentiable_on 𝕜 (λ (y : E), a y * b) s
theorem differentiable.mul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable 𝕜 a) (b : 𝔸) :
differentiable 𝕜 (λ (y : E), a y * b)
theorem fderiv_within_mul_const' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (hxs : unique_diff_within_at 𝕜 s x) (ha : differentiable_within_at 𝕜 a s x) (b : 𝔸) :
fderiv_within 𝕜 (λ (y : E), a y * b) s x = (fderiv_within 𝕜 a s x).smul_right b
theorem fderiv_within_mul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸' : Type u_7} [normed_comm_ring 𝔸'] [normed_algebra 𝕜 𝔸'] {c : E → 𝔸'} (hxs : unique_diff_within_at 𝕜 s x) (hc : differentiable_within_at 𝕜 c s x) (d : 𝔸') :
fderiv_within 𝕜 (λ (y : E), c y * d) s x = d fderiv_within 𝕜 c s x
theorem fderiv_mul_const' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable_at 𝕜 a x) (b : 𝔸) :
fderiv 𝕜 (λ (y : E), a y * b) x = (fderiv 𝕜 a x).smul_right b
theorem fderiv_mul_const {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸' : Type u_7} [normed_comm_ring 𝔸'] [normed_algebra 𝕜 𝔸'] {c : E → 𝔸'} (hc : differentiable_at 𝕜 c x) (d : 𝔸') :
fderiv 𝕜 (λ (y : E), c y * d) x = d fderiv 𝕜 c x
theorem has_strict_fderiv_at.const_mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} {a' : E →L[𝕜] 𝔸} (ha : has_strict_fderiv_at a a' x) (b : 𝔸) :
has_strict_fderiv_at (λ (y : E), b * a y) (b a') x
theorem has_fderiv_within_at.const_mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} {a' : E →L[𝕜] 𝔸} (ha : has_fderiv_within_at a a' s x) (b : 𝔸) :
has_fderiv_within_at (λ (y : E), b * a y) (b a') s x
theorem has_fderiv_at.const_mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} {a' : E →L[𝕜] 𝔸} (ha : has_fderiv_at a a' x) (b : 𝔸) :
has_fderiv_at (λ (y : E), b * a y) (b a') x
theorem differentiable_within_at.const_mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable_within_at 𝕜 a s x) (b : 𝔸) :
differentiable_within_at 𝕜 (λ (y : E), b * a y) s x
theorem differentiable_at.const_mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable_at 𝕜 a x) (b : 𝔸) :
differentiable_at 𝕜 (λ (y : E), b * a y) x
theorem differentiable_on.const_mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable_on 𝕜 a s) (b : 𝔸) :
differentiable_on 𝕜 (λ (y : E), b * a y) s
theorem differentiable.const_mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable 𝕜 a) (b : 𝔸) :
differentiable 𝕜 (λ (y : E), b * a y)
theorem fderiv_within_const_mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {s : set E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (hxs : unique_diff_within_at 𝕜 s x) (ha : differentiable_within_at 𝕜 a s x) (b : 𝔸) :
fderiv_within 𝕜 (λ (y : E), b * a y) s x = b fderiv_within 𝕜 a s x
theorem fderiv_const_mul {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {x : E} {𝔸 : Type u_6} [normed_ring 𝔸] [normed_algebra 𝕜 𝔸] {a : E → 𝔸} (ha : differentiable_at 𝕜 a x) (b : 𝔸) :
fderiv 𝕜 (λ (y : E), b * a y) x = b fderiv 𝕜 a x

At an invertible element x of a normed algebra R, the Fréchet derivative of the inversion operation is the linear map λ t, - x⁻¹ * t * x⁻¹.

theorem differentiable_at_inverse {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {R : Type u_6} [normed_ring R] [normed_algebra 𝕜 R] [complete_space R] (x : Rˣ) :

Differentiability of linear equivs, and invariance of differentiability #

@[protected]
theorem continuous_linear_equiv.has_strict_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} (iso : E ≃L[𝕜] F) :
@[protected]
theorem continuous_linear_equiv.has_fderiv_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} (iso : E ≃L[𝕜] F) :
@[protected]
theorem continuous_linear_equiv.has_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} (iso : E ≃L[𝕜] F) :
@[protected]
theorem continuous_linear_equiv.differentiable_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} (iso : E ≃L[𝕜] F) :
@[protected]
theorem continuous_linear_equiv.differentiable_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} (iso : E ≃L[𝕜] F) :
@[protected]
theorem continuous_linear_equiv.fderiv {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} (iso : E ≃L[𝕜] F) :
fderiv 𝕜 iso x = iso
@[protected]
theorem continuous_linear_equiv.fderiv_within {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} (iso : E ≃L[𝕜] F) (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 iso s x = iso
@[protected]
theorem continuous_linear_equiv.differentiable {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (iso : E ≃L[𝕜] F) :
@[protected]
theorem continuous_linear_equiv.differentiable_on {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {s : set E} (iso : E ≃L[𝕜] F) :
theorem continuous_linear_equiv.comp_differentiable_within_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃L[𝕜] F) {f : G → E} {s : set G} {x : G} :
theorem continuous_linear_equiv.comp_differentiable_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃L[𝕜] F) {f : G → E} {x : G} :
theorem continuous_linear_equiv.comp_differentiable_on_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃L[𝕜] F) {f : G → E} {s : set G} :
theorem continuous_linear_equiv.comp_differentiable_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃L[𝕜] F) {f : G → E} :
theorem continuous_linear_equiv.comp_has_fderiv_within_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃L[𝕜] F) {f : G → E} {s : set G} {x : G} {f' : G →L[𝕜] E} :
theorem continuous_linear_equiv.comp_has_strict_fderiv_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃L[𝕜] F) {f : G → E} {x : G} {f' : G →L[𝕜] E} :
theorem continuous_linear_equiv.comp_has_fderiv_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃L[𝕜] F) {f : G → E} {x : G} {f' : G →L[𝕜] E} :
has_fderiv_at (iso f) (iso.comp f') x has_fderiv_at f f' x
theorem continuous_linear_equiv.comp_has_fderiv_within_at_iff' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃L[𝕜] F) {f : G → E} {s : set G} {x : G} {f' : G →L[𝕜] F} :
theorem continuous_linear_equiv.comp_has_fderiv_at_iff' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃L[𝕜] F) {f : G → E} {x : G} {f' : G →L[𝕜] F} :
has_fderiv_at (iso f) f' x has_fderiv_at f ((iso.symm).comp f') x
theorem continuous_linear_equiv.comp_fderiv_within {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃L[𝕜] F) {f : G → E} {s : set G} {x : G} (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 (iso f) s x = iso.comp (fderiv_within 𝕜 f s x)
theorem continuous_linear_equiv.comp_fderiv {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃L[𝕜] F) {f : G → E} {x : G} :
fderiv 𝕜 (iso f) x = iso.comp (fderiv 𝕜 f x)

Differentiability of linear isometry equivs, and invariance of differentiability #

@[protected]
theorem linear_isometry_equiv.has_strict_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} (iso : E ≃ₗᵢ[𝕜] F) :
@[protected]
theorem linear_isometry_equiv.has_fderiv_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} (iso : E ≃ₗᵢ[𝕜] F) :
@[protected]
theorem linear_isometry_equiv.has_fderiv_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} (iso : E ≃ₗᵢ[𝕜] F) :
@[protected]
theorem linear_isometry_equiv.differentiable_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} (iso : E ≃ₗᵢ[𝕜] F) :
@[protected]
theorem linear_isometry_equiv.differentiable_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} (iso : E ≃ₗᵢ[𝕜] F) :
@[protected]
theorem linear_isometry_equiv.fderiv {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} (iso : E ≃ₗᵢ[𝕜] F) :
fderiv 𝕜 iso x = iso
@[protected]
theorem linear_isometry_equiv.fderiv_within {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {x : E} {s : set E} (iso : E ≃ₗᵢ[𝕜] F) (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 iso s x = iso
@[protected]
theorem linear_isometry_equiv.differentiable {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (iso : E ≃ₗᵢ[𝕜] F) :
@[protected]
theorem linear_isometry_equiv.differentiable_on {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {s : set E} (iso : E ≃ₗᵢ[𝕜] F) :
theorem linear_isometry_equiv.comp_differentiable_within_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃ₗᵢ[𝕜] F) {f : G → E} {s : set G} {x : G} :
theorem linear_isometry_equiv.comp_differentiable_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃ₗᵢ[𝕜] F) {f : G → E} {x : G} :
theorem linear_isometry_equiv.comp_differentiable_on_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃ₗᵢ[𝕜] F) {f : G → E} {s : set G} :
theorem linear_isometry_equiv.comp_differentiable_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃ₗᵢ[𝕜] F) {f : G → E} :
theorem linear_isometry_equiv.comp_has_fderiv_within_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃ₗᵢ[𝕜] F) {f : G → E} {s : set G} {x : G} {f' : G →L[𝕜] E} :
theorem linear_isometry_equiv.comp_has_strict_fderiv_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃ₗᵢ[𝕜] F) {f : G → E} {x : G} {f' : G →L[𝕜] E} :
theorem linear_isometry_equiv.comp_has_fderiv_at_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃ₗᵢ[𝕜] F) {f : G → E} {x : G} {f' : G →L[𝕜] E} :
has_fderiv_at (iso f) (iso.comp f') x has_fderiv_at f f' x
theorem linear_isometry_equiv.comp_has_fderiv_within_at_iff' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃ₗᵢ[𝕜] F) {f : G → E} {s : set G} {x : G} {f' : G →L[𝕜] F} :
theorem linear_isometry_equiv.comp_has_fderiv_at_iff' {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃ₗᵢ[𝕜] F) {f : G → E} {x : G} {f' : G →L[𝕜] F} :
has_fderiv_at (iso f) f' x has_fderiv_at f ((iso.symm).comp f') x
theorem linear_isometry_equiv.comp_fderiv_within {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃ₗᵢ[𝕜] F) {f : G → E} {s : set G} {x : G} (hxs : unique_diff_within_at 𝕜 s x) :
fderiv_within 𝕜 (iso f) s x = iso.comp (fderiv_within 𝕜 f s x)
theorem linear_isometry_equiv.comp_fderiv {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {G : Type u_4} [normed_add_comm_group G] [normed_space 𝕜 G] (iso : E ≃ₗᵢ[𝕜] F) {f : G → E} {x : G} :
fderiv 𝕜 (iso f) x = iso.comp (fderiv 𝕜 f x)
theorem has_strict_fderiv_at.of_local_left_inverse {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E ≃L[𝕜] F} {g : F → E} {a : F} (hg : continuous_at g a) (hf : has_strict_fderiv_at f f' (g a)) (hfg : ∀ᶠ (y : F) in nhds a, f (g y) = y) :

If f (g y) = y for y in some neighborhood of a, g is continuous at a, and f has an invertible derivative f' at g a in the strict sense, then g has the derivative f'⁻¹ at a in the strict sense.

This is one of the easy parts of the inverse function theorem: it assumes that we already have an inverse function.

theorem has_fderiv_at.of_local_left_inverse {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E ≃L[𝕜] F} {g : F → E} {a : F} (hg : continuous_at g a) (hf : has_fderiv_at f f' (g a)) (hfg : ∀ᶠ (y : F) in nhds a, f (g y) = y) :

If f (g y) = y for y in some neighborhood of a, g is continuous at a, and f has an invertible derivative f' at g a, then g has the derivative f'⁻¹ at a.

This is one of the easy parts of the inverse function theorem: it assumes that we already have an inverse function.

theorem local_homeomorph.has_strict_fderiv_at_symm {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (f : local_homeomorph E F) {f' : E ≃L[𝕜] F} {a : F} (ha : a f.to_local_equiv.target) (htff' : has_strict_fderiv_at f f' ((f.symm) a)) :

If f is a local homeomorphism defined on a neighbourhood of f.symm a, and f has an invertible derivative f' in the sense of strict differentiability at f.symm a, then f.symm has the derivative f'⁻¹ at a.

This is one of the easy parts of the inverse function theorem: it assumes that we already have an inverse function.

theorem local_homeomorph.has_fderiv_at_symm {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] (f : local_homeomorph E F) {f' : E ≃L[𝕜] F} {a : F} (ha : a f.to_local_equiv.target) (htff' : has_fderiv_at f f' ((f.symm) a)) :

If f is a local homeomorphism defined on a neighbourhood of f.symm a, and f has an invertible derivative f' at f.symm a, then f.symm has the derivative f'⁻¹ at a.

This is one of the easy parts of the inverse function theorem: it assumes that we already have an inverse function.

theorem has_fderiv_within_at.eventually_ne {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} {s : set E} (h : has_fderiv_within_at f f' s x) (hf' : ∃ (C : ), ∀ (z : E), z C * f' z) :
∀ᶠ (z : E) in nhds_within x (s \ {x}), f z f x
theorem has_fderiv_at.eventually_ne {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {f' : E →L[𝕜] F} {x : E} (h : has_fderiv_at f f' x) (hf' : ∃ (C : ), ∀ (z : E), z C * f' z) :
∀ᶠ (z : E) in nhds_within x {x}, f z f x
theorem has_fderiv_at_filter_real_equiv {E : Type u_1} [normed_add_comm_group E] [normed_space E] {F : Type u_2} [normed_add_comm_group F] [normed_space F] {f : E → F} {f' : E →L[] F} {x : E} {L : filter E} :
filter.tendsto (λ (x' : E), x' - x⁻¹ * f x' - f x - f' (x' - x)) L (nhds 0) filter.tendsto (λ (x' : E), x' - x⁻¹ (f x' - f x - f' (x' - x))) L (nhds 0)
theorem has_fderiv_at.lim_real {E : Type u_1} [normed_add_comm_group E] [normed_space E] {F : Type u_2} [normed_add_comm_group F] [normed_space F] {f : E → F} {f' : E →L[] F} {x : E} (hf : has_fderiv_at f f' x) (v : E) :
filter.tendsto (λ (c : ), c (f (x + c⁻¹ v) - f x)) filter.at_top (nhds (f' v))
theorem has_fderiv_within_at.maps_to_tangent_cone {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} {f' : E →L[𝕜] F} {x : E} (h : has_fderiv_within_at f f' s x) :
set.maps_to f' (tangent_cone_at 𝕜 s x) (tangent_cone_at 𝕜 (f '' s) (f x))

The image of a tangent cone under the differential of a map is included in the tangent cone to the image.

theorem has_fderiv_within_at.unique_diff_within_at {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} {f' : E →L[𝕜] F} {x : E} (h : has_fderiv_within_at f f' s x) (hs : unique_diff_within_at 𝕜 s x) (h' : dense_range f') :
unique_diff_within_at 𝕜 (f '' s) (f x)

If a set has the unique differentiability property at a point x, then the image of this set under a map with onto derivative has also the unique differentiability property at the image point.

theorem unique_diff_on.image {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} {f' : E → (E →L[𝕜] F)} (hs : unique_diff_on 𝕜 s) (hf' : ∀ (x : E), x shas_fderiv_within_at f (f' x) s x) (hd : ∀ (x : E), x sdense_range (f' x)) :
unique_diff_on 𝕜 (f '' s)
theorem has_fderiv_within_at.unique_diff_within_at_of_continuous_linear_equiv {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} {s : set E} {x : E} (e' : E ≃L[𝕜] F) (h : has_fderiv_within_at f e' s x) (hs : unique_diff_within_at 𝕜 s x) :
unique_diff_within_at 𝕜 (f '' s) (f x)
theorem continuous_linear_equiv.unique_diff_on_image {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {s : set E} (e : E ≃L[𝕜] F) (h : unique_diff_on 𝕜 s) :
@[simp]
theorem continuous_linear_equiv.unique_diff_on_image_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {s : set E} (e : E ≃L[𝕜] F) :
@[simp]
theorem continuous_linear_equiv.unique_diff_on_preimage_iff {𝕜 : Type u_1} [nontrivially_normed_field 𝕜] {E : Type u_2} [normed_add_comm_group E] [normed_space 𝕜 E] {F : Type u_3} [normed_add_comm_group F] [normed_space 𝕜 F] {s : set E} (e : F ≃L[𝕜] E) :

Restricting from to , or generally from 𝕜' to 𝕜 #

If a function is differentiable over , then it is differentiable over . In this paragraph, we give variants of this statement, in the general situation where and are replaced respectively by 𝕜' and 𝕜 where 𝕜' is a normed algebra over 𝕜.

theorem has_strict_fderiv_at.restrict_scalars (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {𝕜' : Type u_2} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] {E : Type u_3} [normed_add_comm_group E] [normed_space 𝕜 E] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] {F : Type u_4} [normed_add_comm_group F] [normed_space 𝕜 F] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {f : E → F} {f' : E →L[𝕜'] F} {x : E} (h : has_strict_fderiv_at f f' x) :
theorem has_fderiv_at_filter.restrict_scalars (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {𝕜' : Type u_2} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] {E : Type u_3} [normed_add_comm_group E] [normed_space 𝕜 E] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] {F : Type u_4} [normed_add_comm_group F] [normed_space 𝕜 F] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {f : E → F} {f' : E →L[𝕜'] F} {x : E} {L : filter E} (h : has_fderiv_at_filter f f' x L) :
theorem has_fderiv_at.restrict_scalars (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {𝕜' : Type u_2} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] {E : Type u_3} [normed_add_comm_group E] [normed_space 𝕜 E] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] {F : Type u_4} [normed_add_comm_group F] [normed_space 𝕜 F] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {f : E → F} {f' : E →L[𝕜'] F} {x : E} (h : has_fderiv_at f f' x) :
theorem has_fderiv_within_at.restrict_scalars (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {𝕜' : Type u_2} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] {E : Type u_3} [normed_add_comm_group E] [normed_space 𝕜 E] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] {F : Type u_4} [normed_add_comm_group F] [normed_space 𝕜 F] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {f : E → F} {f' : E →L[𝕜'] F} {s : set E} {x : E} (h : has_fderiv_within_at f f' s x) :
theorem differentiable_at.restrict_scalars (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {𝕜' : Type u_2} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] {E : Type u_3} [normed_add_comm_group E] [normed_space 𝕜 E] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] {F : Type u_4} [normed_add_comm_group F] [normed_space 𝕜 F] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {f : E → F} {x : E} (h : differentiable_at 𝕜' f x) :
theorem differentiable_within_at.restrict_scalars (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {𝕜' : Type u_2} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] {E : Type u_3} [normed_add_comm_group E] [normed_space 𝕜 E] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] {F : Type u_4} [normed_add_comm_group F] [normed_space 𝕜 F] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {f : E → F} {s : set E} {x : E} (h : differentiable_within_at 𝕜' f s x) :
theorem differentiable_on.restrict_scalars (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {𝕜' : Type u_2} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] {E : Type u_3} [normed_add_comm_group E] [normed_space 𝕜 E] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] {F : Type u_4} [normed_add_comm_group F] [normed_space 𝕜 F] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {f : E → F} {s : set E} (h : differentiable_on 𝕜' f s) :
theorem differentiable.restrict_scalars (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {𝕜' : Type u_2} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] {E : Type u_3} [normed_add_comm_group E] [normed_space 𝕜 E] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] {F : Type u_4} [normed_add_comm_group F] [normed_space 𝕜 F] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {f : E → F} (h : differentiable 𝕜' f) :
theorem has_fderiv_within_at_of_restrict_scalars (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {𝕜' : Type u_2} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] {E : Type u_3} [normed_add_comm_group E] [normed_space 𝕜 E] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] {F : Type u_4} [normed_add_comm_group F] [normed_space 𝕜 F] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {f : E → F} {f' : E →L[𝕜'] F} {s : set E} {x : E} {g' : E →L[𝕜] F} (h : has_fderiv_within_at f g' s x) (H : continuous_linear_map.restrict_scalars 𝕜 f' = g') :
theorem has_fderiv_at_of_restrict_scalars (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {𝕜' : Type u_2} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] {E : Type u_3} [normed_add_comm_group E] [normed_space 𝕜 E] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] {F : Type u_4} [normed_add_comm_group F] [normed_space 𝕜 F] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {f : E → F} {f' : E →L[𝕜'] F} {x : E} {g' : E →L[𝕜] F} (h : has_fderiv_at f g' x) (H : continuous_linear_map.restrict_scalars 𝕜 f' = g') :
theorem differentiable_at.fderiv_restrict_scalars (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {𝕜' : Type u_2} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] {E : Type u_3} [normed_add_comm_group E] [normed_space 𝕜 E] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] {F : Type u_4} [normed_add_comm_group F] [normed_space 𝕜 F] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {f : E → F} {x : E} (h : differentiable_at 𝕜' f x) :
theorem differentiable_within_at_iff_restrict_scalars (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {𝕜' : Type u_2} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] {E : Type u_3} [normed_add_comm_group E] [normed_space 𝕜 E] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] {F : Type u_4} [normed_add_comm_group F] [normed_space 𝕜 F] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {f : E → F} {s : set E} {x : E} (hf : differentiable_within_at 𝕜 f s x) (hs : unique_diff_within_at 𝕜 s x) :
differentiable_within_at 𝕜' f s x ∃ (g' : E →L[𝕜'] F), continuous_linear_map.restrict_scalars 𝕜 g' = fderiv_within 𝕜 f s x
theorem differentiable_at_iff_restrict_scalars (𝕜 : Type u_1) [nontrivially_normed_field 𝕜] {𝕜' : Type u_2} [nontrivially_normed_field 𝕜'] [normed_algebra 𝕜 𝕜'] {E : Type u_3} [normed_add_comm_group E] [normed_space 𝕜 E] [normed_space 𝕜' E] [is_scalar_tower 𝕜 𝕜' E] {F : Type u_4} [normed_add_comm_group F] [normed_space 𝕜 F] [normed_space 𝕜' F] [is_scalar_tower 𝕜 𝕜' F] {f : E → F} {x : E} (hf : differentiable_at 𝕜 f x) :
differentiable_at 𝕜' f x ∃ (g' : E →L[𝕜'] F), continuous_linear_map.restrict_scalars 𝕜 g' = fderiv 𝕜 f x

Support of derivatives #

theorem support_fderiv_subset (𝕜 : Type u_1) {E : Type u_2} {F : Type u_3} [nontrivially_normed_field 𝕜] [normed_add_comm_group E] [normed_space 𝕜 E] [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} :
theorem has_compact_support.fderiv (𝕜 : Type u_1) {E : Type u_2} {F : Type u_3} [nontrivially_normed_field 𝕜] [normed_add_comm_group E] [normed_space 𝕜 E] [normed_add_comm_group F] [normed_space 𝕜 F] {f : E → F} (hf : has_compact_support f) :