/- SamplingOptimisationGeometryBench public-dev reference. Reuses the existing project proof; retain LICENSE and NOTICE. -/ import AutoSamplingTheory.TechnicalLemmas.Analysis.StrongConvexFirstOrder import Mathlib.Analysis.InnerProductSpace.Calculus import Mathlib.Analysis.ODE.Gronwall open Set open scoped RealInnerProductSpace open AutoSamplingTheory.TechnicalLemmas.Analysis variable {E : Type*} [NormedAddCommGroup E] [InnerProductSpace ℝ E] [CompleteSpace E] example {f : E → ℝ} {X : ℝ → E} {z : E} {α T : ℝ} (hα : 0 ≤ α) (_hT : 0 ≤ T) (hf : Differentiable ℝ f) (hsc : StrongConvexOn univ α f) (hz : IsMinOn f univ z) (hX : ContinuousOn X (Icc 0 T)) (hflow : ∀ t ∈ Ico 0 T, HasDerivWithinAt X (-gradient f (X t)) (Ici t) t) : ∀ t ∈ Ioc 0 T, 0 ≤ f (X t) - f z ∧ f (X t) - f z ≤ if α = 0 then ‖X 0 - z‖ ^ 2 / (2 * t) else α / (2 * (Real.exp (α * t) - 1)) * ‖X 0 - z‖ ^ 2 := by -- Replace this comment with your proof.