Documentation

TauCeti.Analysis.Calculus.Gradient

The gradient is an isometric conjugate-linear image of the FrΓ©chet derivative #

Mathlib defines gradient f x, written βˆ‡ f x, as the Riesz representative (InnerProductSpace.toDual π•œ F).symm (fderiv π•œ f x) of the FrΓ©chet derivative of a scalar function on an inner product space, and develops its differential calculus. This file records the three consequences of the defining formula that come from toDual being a conjugate-linear isometric equivalence: the gradient has the same norm as the derivative, it is additive, and it is conjugate-homogeneous. Since toDual is moreover continuous, the gradient of an arbitrary function is Borel measurable, as the FrΓ©chet derivative is.

These are exactly what is needed to see a family of gradients as a conjugate-linear, norm-preserving image of the corresponding family of derivatives. Over ℝ it is linear; for instance, Ο† ↦ βˆ‡ Ο† is linear on real-valued test functions, and β€–βˆ‡ Ο†β€– may be estimated by any theorem about β€–DΟ†β€–.

Main declarations #

theorem TauCeti.norm_gradient_eq_norm_fderiv {π•œ : Type u_1} {F : Type u_2} [RCLike π•œ] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [CompleteSpace F] (f : F β†’ π•œ) (x : F) :

The gradient has the same norm as the FrΓ©chet derivative it represents: toDual is an isometry.

theorem TauCeti.gradient_add {π•œ : Type u_1} {F : Type u_2} [RCLike π•œ] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [CompleteSpace F] {f g : F β†’ π•œ} {x : F} (hf : DifferentiableAt π•œ f x) (hg : DifferentiableAt π•œ g x) :
gradient (f + g) x = gradient f x + gradient g x

The gradient is additive wherever both summands are differentiable.

theorem TauCeti.gradient_const_smul {π•œ : Type u_1} {F : Type u_2} [RCLike π•œ] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [CompleteSpace F] {f : F β†’ π•œ} {x : F} (c : π•œ) :
gradient (c β€’ f) x = (starRingEnd π•œ) c β€’ gradient f x

The gradient is conjugate-homogeneous: toDual is conjugate-linear, so scaling the function by c scales the gradient by conj c. Over ℝ the conjugation is the identity.

@[simp]
theorem TauCeti.gradient_of_notMem_tsupport {π•œ : Type u_1} {F : Type u_2} [RCLike π•œ] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [CompleteSpace F] {f : F β†’ π•œ} {x : F} (h : x βˆ‰ tsupport f) :
gradient f x = 0

The gradient vanishes off the topological support of the function, as the FrΓ©chet derivative does.

theorem TauCeti.measurable_gradient {π•œ : Type u_1} {F : Type u_2} [RCLike π•œ] [NormedAddCommGroup F] [InnerProductSpace π•œ F] [CompleteSpace F] [MeasurableSpace F] [BorelSpace F] (f : F β†’ π•œ) :

The gradient of an arbitrary function is Borel measurable, as is its FrΓ©chet derivative (measurable_fderiv); no differentiability is assumed, the gradient being 0 where f is not differentiable.

theorem ContDiff.gradient_right {E : Type u_3} [NormedAddCommGroup E] [InnerProductSpace ℝ E] [CompleteSpace E] {m n : WithTop β„•βˆž} {f : E β†’ ℝ} (hf : ContDiff ℝ n f) (hmn : m + 1 ≀ n) :

Over ℝ the Riesz isomorphism is a linear isometry, so the gradient of a C^{m+1} function is Cᡐ, just as its FrΓ©chet derivative is.