Documentation

Newton.Analysis.Convolution.Bounds

theorem Newton.convolution_sub {n : } (f₁ f₂ g : (Fin n)) (hconv₁ : ∀ᵐ (x : Fin n), MeasureTheory.Integrable (fun (y : Fin n) => f₁ (x - y) * g y) MeasureTheory.volume) (hconv₂ : ∀ᵐ (x : Fin n), MeasureTheory.Integrable (fun (y : Fin n) => f₂ (x - y) * g y) MeasureTheory.volume) :
(fun (x : Fin n) => (a : Fin n), (f₁ (x - a) - f₂ (x - a)) * g a) =ᵐ[MeasureTheory.volume] fun (x : Fin n) => ( (a : Fin n), f₁ (x - a) * g a) - (a : Fin n), f₂ (x - a) * g a

Transport AEMeasurable across a positive scalar multiple of a measure. If f is a.e.-measurable w.r.t. μ, then it is also a.e.-measurable w.r.t. c • μ. This simple helper is used to avoid threading measurability through map equalities.

theorem Newton.scaled_mollifier_L1_norm_one {n : } (ψ : (Fin n)) (η : ) ( : 0 < η) (hψ_int : MeasureTheory.Integrable ψ MeasureTheory.volume) (hψ_norm : (x : Fin n), ψ x = 1) (hψ_nonneg : ∀ (x : Fin n), 0 ψ x) :
MeasureTheory.eLpNorm (fun (x : Fin n) => η ^ (-n) * ψ fun (i : Fin n) => x i / η) 1 MeasureTheory.volume = ENNReal.ofReal 1

For the scaled mollifier ψ_η with ∫ ψ = 1, we have ‖ψ_η‖₁ = 1.

theorem Newton.convolution_diff_bound_L1 {n : } (f₁ f₂ ψ : (Fin n)) (hf₁ : MeasureTheory.Integrable f₁ MeasureTheory.volume) (hf₂ : MeasureTheory.Integrable f₂ MeasureTheory.volume) ( : MeasureTheory.Integrable ψ MeasureTheory.volume) :
MeasureTheory.eLpNorm (fun (x : Fin n) => ( (y : Fin n), f₁ (x - y) * ψ y) - (y : Fin n), f₂ (x - y) * ψ y) 1 MeasureTheory.volume MeasureTheory.eLpNorm (fun (x : Fin n) => f₁ x - f₂ x) 1 MeasureTheory.volume * MeasureTheory.eLpNorm ψ 1 MeasureTheory.volume

Bound on difference of convolutions (L¹ case).

‖(g - f₀) * ψ‖₁ ≤ ‖g - f₀‖₁ · ‖ψ‖₁

Corresponds to h_conv_diff_bound in the code.

theorem Newton.mollifier_convolution_diff_L1 {n : } (g f₀ : (Fin n)) (ψ : (Fin n)) (hg : MeasureTheory.Integrable g MeasureTheory.volume) (hf₀ : MeasureTheory.Integrable f₀ MeasureTheory.volume) (hψ_nonneg : ∀ (x : Fin n), 0 ψ x) (hψ_int : (x : Fin n), ψ x = 1) (η : ) :
0 < ηη < 1MeasureTheory.eLpNorm (fun (x : Fin n) => ( (y : Fin n), g (x - y) * ↑(η ^ (-n) * ψ fun (i : Fin n) => y i / η)) - (y : Fin n), f₀ (x - y) * ↑(η ^ (-n) * ψ fun (i : Fin n) => y i / η)) 1 MeasureTheory.volume MeasureTheory.eLpNorm (fun (x : Fin n) => g x - f₀ x) 1 MeasureTheory.volume

Bound on difference of convolutions with a normalized mollifier (L¹ case).

If ψ is a non-negative mollifier with unit mass, convolution with the scaled ψ does not increase the L¹ distance between two functions.

theorem Newton.convolution_diff_bound_L2 {n : } (f₁ f₂ ψ : (Fin n)) (hf₁ : MeasureTheory.MemLp f₁ 2 MeasureTheory.volume) (hf₂ : MeasureTheory.MemLp f₂ 2 MeasureTheory.volume) ( : MeasureTheory.Integrable ψ MeasureTheory.volume) :
MeasureTheory.eLpNorm (fun (x : Fin n) => ( (y : Fin n), f₁ (x - y) * ψ y) - (y : Fin n), f₂ (x - y) * ψ y) 2 MeasureTheory.volume MeasureTheory.eLpNorm (fun (x : Fin n) => f₁ x - f₂ x) 2 MeasureTheory.volume * MeasureTheory.eLpNorm ψ 1 MeasureTheory.volume

Bound on difference of convolutions (L² case).

‖(g - f₀) * ψ‖₂ ≤ ‖g - f₀‖₂ · ‖ψ‖₁

L² version of the above, used for L² error bounds.