Documentation

FirstOrderMethodsOptimization_Beck_2017.Chap10.Theorem_10_46

theorem IsSmoothApproximationNonneg.is_l_smooth_on_nonneg_weighted_sum {E : Type u} [NormedAddCommGroup E] [NormedSpace E] {f1 f2 : E} {L1 L2 gamma1 gamma2 : NNReal} (hs1 : is_l_smooth_on f1 Set.univ L1) (hs2 : is_l_smooth_on f2 Set.univ L2) :
is_l_smooth_on (fun (x : E) => gamma1 * f1 x + gamma2 * f2 x) Set.univ (gamma1 * L1 + gamma2 * L2)

Helper for Theorem 10.46: a nonnegative weighted sum of globally smooth functions is globally smooth, with smoothness constant given by the same weighted sum.

theorem IsSmoothApproximationNonneg.fderiv_comp_continuousAffineMap {E : Type u} {V : Type v} [NormedAddCommGroup E] [NormedSpace E] [NormedAddCommGroup V] [NormedSpace V] {f : V} {φ : E →ᴬ[] V} {x : E} (hf : DifferentiableAt f (φ x)) :
fderiv (fun (z : E) => f (φ z)) x = fderiv f (φ x) ∘SL φ.contLinear

Helper for Theorem 10.46: differentiating a real-valued function after precomposition by a continuous affine map amounts to composing the derivative with the affine map's linear part.

theorem IsSmoothApproximationNonneg.continuousAffineMap_norm_sub_le {E : Type u} {V : Type v} [NormedAddCommGroup E] [NormedSpace E] [NormedAddCommGroup V] [NormedSpace V] (φ : E →ᴬ[] V) (x y : E) :
φ x - φ y φ.contLinear * x - y

Helper for Theorem 10.46: the displacement of a continuous affine map is controlled by the operator norm of its linear part.

theorem IsSmoothApproximationNonneg.is_l_smooth_on_precompose_continuousAffineMap {E : Type u} {V : Type v} [NormedAddCommGroup E] [NormedSpace E] [NormedAddCommGroup V] [NormedSpace V] {f : V} {φ : E →ᴬ[] V} {L : NNReal} (hs : is_l_smooth_on f Set.univ L) :
is_l_smooth_on (fun (x : E) => f (φ x)) Set.univ (L * φ.contLinear‖₊ ^ 2)

Helper for Theorem 10.46: precomposing a globally smooth function with a continuous affine map multiplies the smoothness constant by the square of the operator norm of the linear part.

theorem IsSmoothApproximationNonneg.nonneg_weighted_sum {E : Type u} [NormedAddCommGroup E] [NormedSpace E] {h1 h1μ h2 h2μ : E} {α1 β1 α2 β2 : NNReal} {μ : PosReal} (hh1 : IsSmoothApproximationNonneg h1 h1μ α1 β1 μ) (hh2 : IsSmoothApproximationNonneg h2 h2μ α2 β2 μ) (gamma1 gamma2 : NNReal) :
IsSmoothApproximationNonneg (fun (x : E) => gamma1 * h1 x + gamma2 * h2 x) (fun (x : E) => gamma1 * h1μ x + gamma2 * h2μ x) (gamma1 * α1 + gamma2 * α2) (gamma1 * β1 + gamma2 * β2) μ

Theorem 10.46 (1): a nonnegative linear combination of two 1 / μ-smooth approximations is a 1 / μ-smooth approximation of the corresponding nonnegative linear combination, with parameters obtained by the same linear combination.

theorem IsSmoothApproximationNonneg.precompose_continuousAffineMap {E : Type u} {V : Type v} [NormedAddCommGroup E] [NormedSpace E] [NormedAddCommGroup V] [NormedSpace V] {h : V} {α β : NNReal} {μ : PosReal} (hh : IsSmoothApproximationNonneg h α β μ) (φ : E →ᴬ[] V) :
IsSmoothApproximationNonneg (fun (x : E) => h (φ x)) (fun (x : E) => (φ x)) (α * φ.contLinear‖₊ ^ 2) β μ

Theorem 10.46 (2): precomposing a 1 / μ-smooth approximation with a continuous affine map φ multiplies the smoothness parameter by ‖φ.contLinear‖² and leaves the error parameter unchanged.

theorem IsSmoothApproximationNonneg.precompose_linearMap_add {E : Type u} {V : Type v} [NormedAddCommGroup E] [NormedSpace E] [NormedAddCommGroup V] [NormedSpace V] {h : V} {α β : NNReal} {μ : PosReal} (hh : IsSmoothApproximationNonneg h α β μ) (A : E →L[] V) (b : V) :
IsSmoothApproximationNonneg (fun (x : E) => h (A x + b)) (fun (x : E) => (A x + b)) (α * A‖₊ ^ 2) β μ

Source-facing specialization of Theorem 10.46 (2) to affine maps written as x ↦ A x + b.