theorem
TorusConvolution.eLpNorm_convolution_le
{T : ℝ}
[hT : Fact (0 < T)]
{f g : AddCircle T → ℂ}
(hf : MeasureTheory.Integrable f AddCircle.haarAddCircle)
(hg : MeasureTheory.Integrable g AddCircle.haarAddCircle)
:
theorem
ApproximateIdentity.periodic_continuous_uniformContinuous
{f : ℝ → ℝ}
{p : ℝ}
(hp : 0 < p)
(hf : Continuous f)
(hper : Function.Periodic f p)
:
theorem
ApproximateIdentity.convolution_sub_eq
(f K : ℝ → ℝ)
(x : ℝ)
(hK : IntervalIntegrable K MeasureTheory.volume (-Real.pi) Real.pi)
(hfK : IntervalIntegrable (fun (y : ℝ) => f (x - y) * K y) MeasureTheory.volume (-Real.pi) Real.pi)
(hnorm : 1 / (2 * Real.pi) * ∫ (y : ℝ) in -Real.pi..Real.pi, K y = 1)
:
theorem
ApproximateIdentity.approximate_identity_lemma
(f : ℝ → ℝ)
(K : ℕ → ℝ → ℝ)
(hf_cont : Continuous f)
(hf_periodic : Function.Periodic f (2 * Real.pi))
(hK_intble : ∀ (N : ℕ), IntervalIntegrable (K N) MeasureTheory.volume (-Real.pi) Real.pi)
(hfK_intble :
∀ (N : ℕ) (x : ℝ), IntervalIntegrable (fun (y : ℝ) => f (x - y) * K N y) MeasureTheory.volume (-Real.pi) Real.pi)
(habs_K_intble : ∀ (N : ℕ), IntervalIntegrable (fun (y : ℝ) => |K N y|) MeasureTheory.volume (-Real.pi) Real.pi)
(hdiff_K_intble :
∀ (N : ℕ) (x : ℝ),
IntervalIntegrable (fun (y : ℝ) => |f (x - y) - f x| * |K N y|) MeasureTheory.volume (-Real.pi) Real.pi)
(h_normalize : ∀ (N : ℕ), 1 / (2 * Real.pi) * ∫ (x : ℝ) in -Real.pi..Real.pi, K N x = 1)
(h_bound : ∃ (M : ℝ), ∀ (N : ℕ), ∫ (x : ℝ) in -Real.pi..Real.pi, |K N x| ≤ M)
(h_concentrate :
∀ (δ : ℝ),
0 < δ →
δ ≤ Real.pi →
Filter.Tendsto (fun (N : ℕ) => (∫ (x : ℝ) in -Real.pi..-δ, |K N x|) + ∫ (x : ℝ) in δ..Real.pi, |K N x|)
Filter.atTop (nhds 0))
(ε : ℝ)
:
theorem
TrigPolyDensity.trigPoly_dense_in_continuous
{T : ℝ}
[hT : Fact (0 < T)]
:
Dense ↑(Submodule.span ℂ (Set.range fourier))
theorem
FejerL1Density.continuous_periodic_dense_L1
(f : ℝ → ℝ)
(hf_periodic : Function.Periodic f (2 * Real.pi))
(hf_intble : IntervalIntegrable f MeasureTheory.volume (-Real.pi) Real.pi)
(ε : ℝ)
:
ε > 0 → ∃ (g : ℝ → ℝ), Continuous g ∧ Function.Periodic g (2 * Real.pi) ∧ (periodicL1Norm fun (x : ℝ) => f x - g x) ≤ ε
theorem
FejerL1Density.fubini_conv_eq
(h : ℝ → ℝ)
(N : ℕ)
(hh_per : Function.Periodic h (2 * Real.pi))
(hint :
MeasureTheory.Integrable (Function.uncurry fun (x y : ℝ) => |h (x - y)| * fejerKernel N y)
((MeasureTheory.volume.restrict (Set.Ioc (-Real.pi) Real.pi)).prod
(MeasureTheory.volume.restrict (Set.Ioc (-Real.pi) Real.pi))))
:
theorem
FejerL1Density.young_fejerKernel
(h : ℝ → ℝ)
(N : ℕ)
(hh : IntervalIntegrable h MeasureTheory.volume (-Real.pi) Real.pi)
(hh_per : Function.Periodic h (2 * Real.pi))
:
theorem
FejerL1Density.fejer_uniform_convergence
(g : ℝ → ℝ)
(hg_cont : Continuous g)
(hg_per : Function.Periodic g (2 * Real.pi))
(ε : ℝ)
:
ε > 0 → ∃ (N₀ : ℕ), ∀ N ≥ N₀, ∀ (x : ℝ), |g x - periodicConvolution g (fejerKernel N) x| ≤ ε
theorem
FejerL1Density.convolution_linear
(g h : ℝ → ℝ)
(N : ℕ)
(x : ℝ)
(hg : IntervalIntegrable (fun (y : ℝ) => g (x - y) * fejerKernel N y) MeasureTheory.volume (-Real.pi) Real.pi)
(hh : IntervalIntegrable (fun (y : ℝ) => h (x - y) * fejerKernel N y) MeasureTheory.volume (-Real.pi) Real.pi)
:
periodicConvolution (fun (y : ℝ) => g y - h y) (fejerKernel N) x = periodicConvolution g (fejerKernel N) x - periodicConvolution h (fejerKernel N) x
theorem
FejerL1Density.conv_intble_of_continuous
(g : ℝ → ℝ)
(hg : Continuous g)
(N : ℕ)
(x : ℝ)
:
IntervalIntegrable (fun (y : ℝ) => g (x - y) * fejerKernel N y) MeasureTheory.volume (-Real.pi) Real.pi
theorem
FejerL1Density.conv_intble_of_periodic
(f : ℝ → ℝ)
(hf_per : Function.Periodic f (2 * Real.pi))
(hf_intble : IntervalIntegrable f MeasureTheory.volume (-Real.pi) Real.pi)
(N : ℕ)
(x : ℝ)
:
IntervalIntegrable (fun (y : ℝ) => f (x - y) * fejerKernel N y) MeasureTheory.volume (-Real.pi) Real.pi
theorem
FejerL1Density.isTrigPolynomial_add
{p q : ℝ → ℝ}
(hp : IsTrigPolynomial p)
(hq : IsTrigPolynomial q)
:
IsTrigPolynomial fun (x : ℝ) => p x + q x
theorem
FejerL1Density.isTrigPolynomial_smul
(c : ℝ)
{p : ℝ → ℝ}
(hp : IsTrigPolynomial p)
:
IsTrigPolynomial fun (x : ℝ) => c * p x
theorem
FejerL1Density.isTrigPolynomial_finset_sum
{f : ℕ → ℝ → ℝ}
{s : Finset ℕ}
(hf : ∀ i ∈ s, IsTrigPolynomial (f i))
:
IsTrigPolynomial fun (x : ℝ) => ∑ i ∈ s, f i x
theorem
FejerL1Density.dirichlet_isTrigPolynomial
(j : ℕ)
:
IsTrigPolynomial fun (x : ℝ) => 1 + 2 * ∑ k ∈ Finset.range j, Real.cos ((↑k + 1) * x)
theorem
FejerL1Density.fejerKernel_eq_dirichlet_avg
(N : ℕ)
(hN : N ≠ 0)
(x : ℝ)
:
fejerKernel N x = 1 / ↑N * ∑ j ∈ Finset.range N, (1 + 2 * ∑ k ∈ Finset.range j, Real.cos ((↑k + 1) * x))
theorem
FejerL1Density.fxy_intervalIntegrable
(f : ℝ → ℝ)
(hf_per : Function.Periodic f (2 * Real.pi))
(hf_intble : IntervalIntegrable f MeasureTheory.volume (-Real.pi) Real.pi)
(x : ℝ)
:
IntervalIntegrable (fun (y : ℝ) => f (x - y)) MeasureTheory.volume (-Real.pi) Real.pi
theorem
FejerL1Density.single_term_convolution
(f : ℝ → ℝ)
(hf_per : Function.Periodic f (2 * Real.pi))
(hf_intble : IntervalIntegrable f MeasureTheory.volume (-Real.pi) Real.pi)
(a b : ℝ)
(n : ℕ)
(x : ℝ)
:
∫ (y : ℝ) in -Real.pi..Real.pi, f (x - y) * (a * Real.cos (↑n * y) + b * Real.sin (↑n * y)) = ((a * ∫ (t : ℝ) in -Real.pi..Real.pi, f t * Real.cos (↑n * t)) - b * ∫ (t : ℝ) in -Real.pi..Real.pi, f t * Real.sin (↑n * t)) * Real.cos (↑n * x) + ((a * ∫ (t : ℝ) in -Real.pi..Real.pi, f t * Real.sin (↑n * t)) + b * ∫ (t : ℝ) in -Real.pi..Real.pi, f t * Real.cos (↑n * t)) * Real.sin (↑n * x)
theorem
FejerL1Density.fejerMean_isTrigPolynomial
(f : ℝ → ℝ)
(N : ℕ)
(hf_per : Function.Periodic f (2 * Real.pi))
(hf_intble : IntervalIntegrable f MeasureTheory.volume (-Real.pi) Real.pi)
:
IsTrigPolynomial (fejerMean f N)
theorem
FejerL1Density.intble_diff_abs
(f g : ℝ → ℝ)
(hf : IntervalIntegrable f MeasureTheory.volume (-Real.pi) Real.pi)
(hg_cont : Continuous g)
(_hg_per : Function.Periodic g (2 * Real.pi))
:
IntervalIntegrable (fun (x : ℝ) => |f x - g x|) MeasureTheory.volume (-Real.pi) Real.pi
theorem
FejerL1Density.intble_cts_conv
(g : ℝ → ℝ)
(N : ℕ)
(hg_cont : Continuous g)
(hg_per : Function.Periodic g (2 * Real.pi))
:
IntervalIntegrable (fun (x : ℝ) => |g x - periodicConvolution g (fejerKernel N) x|) MeasureTheory.volume (-Real.pi)
Real.pi
theorem
FejerL1Density.periodicConv_intervalIntegrable
(f : ℝ → ℝ)
(N : ℕ)
(hf_per : Function.Periodic f (2 * Real.pi))
(hf : IntervalIntegrable f MeasureTheory.volume (-Real.pi) Real.pi)
:
theorem
FejerL1Density.intble_result
(f : ℝ → ℝ)
(N : ℕ)
(hf_per : Function.Periodic f (2 * Real.pi))
(hf : IntervalIntegrable f MeasureTheory.volume (-Real.pi) Real.pi)
:
IntervalIntegrable (fun (x : ℝ) => |f x - fejerMean f N x|) MeasureTheory.volume (-Real.pi) Real.pi
theorem
FejerL1Density.intble_conv_diff
(f g : ℝ → ℝ)
(N : ℕ)
(hf_per : Function.Periodic f (2 * Real.pi))
(hf : IntervalIntegrable f MeasureTheory.volume (-Real.pi) Real.pi)
(hg_cont : Continuous g)
(hg_per : Function.Periodic g (2 * Real.pi))
:
IntervalIntegrable (fun (x : ℝ) => |periodicConvolution g (fejerKernel N) x - periodicConvolution f (fejerKernel N) x|)
MeasureTheory.volume (-Real.pi) Real.pi
theorem
FejerL1Density.intble_diff
(f g : ℝ → ℝ)
(hf : IntervalIntegrable f MeasureTheory.volume (-Real.pi) Real.pi)
(hg_cont : Continuous g)
(_hg_per : Function.Periodic g (2 * Real.pi))
:
IntervalIntegrable (fun (x : ℝ) => g x - f x) MeasureTheory.volume (-Real.pi) Real.pi
theorem
FejerL1Density.fejer_L1_convergence
(f : ℝ → ℝ)
(hf_periodic : Function.Periodic f (2 * Real.pi))
(hf_intble : IntervalIntegrable f MeasureTheory.volume (-Real.pi) Real.pi)
:
Filter.Tendsto (fun (N : ℕ) => periodicL1Norm fun (x : ℝ) => f x - fejerMean f N x) Filter.atTop (nhds 0)