Skip to main content
fpvandoorn/carleson
Source indexedlemma · leanprover/lean4:v4.32.0

Function.Periodic.uniformContinuous_of_continuous

Carleson.Classical.Basic · Carleson/Classical/Basic.lean:188 to 208

Mathematical statement

Exact Lean statement

lemma Function.Periodic.uniformContinuous_of_continuous {f : ℝ → ℂ} {T : ℝ} (hT : 0 < T)
    (hp : Function.Periodic f T) (hc : ContinuousOn f (Set.Icc (-T) (2 * T))) :
    UniformContinuous f

Complete declaration

Lean source

Canonical source
Full Lean sourceLean 4
lemma Function.Periodic.uniformContinuous_of_continuous {f :   ℂ} {T : } (hT : 0 < T)    (hp : Function.Periodic f T) (hc : ContinuousOn f (Set.Icc (-T) (2 * T))) :    UniformContinuous f := by  have : IsCompact (Set.Icc (-T) (2 * T)) := isCompact_Icc  have unicont_on_Icc := this.uniformContinuousOn_of_continuous hc  rw [Metric.uniformContinuousOn_iff] at unicont_on_Icc  rw [Metric.uniformContinuous_iff]  intro ε εpos  rcases (unicont_on_Icc ε εpos) with δ, δpos, h  use min δ T, lt_min δpos hT  have h1 : min δ T  T := min_le_right ..  intro x y hxy  rcases (hp.exists_mem_Ico₀' hT x) with n, ha, hxa  have hyb: f y = f (y - n • T) := (hp.sub_zsmul_eq n).symm  rw [hxa, hyb]  apply h (x - n • T) _ (y - n • T)  on_goal 1 => rw [dist_eq, abs_lt] at hxy  constructor <;> linarith [ha.1, ha.2]  · rw [dist_eq,zsmul_eq_mul, sub_sub_sub_cancel_right,  dist_eq]    exact hxy.trans_le (min_le_left ..)  · constructor <;> linarith [ha.1, ha.2]