Documentation

LeanPool.PLAcceleratedNesterovLean.Core.Defs

Definitions for Nesterov Acceleration under a Local Polyak-Łojasiewicz Condition #

Core definitions: ambient space, optimization concepts (argmin, PL condition, L-smoothness), tubular neighborhoods, first-order algorithm model, convergence rate, and manifold setup.

@[reducible, inline]

The ambient Euclidean space ℝ^d.

Equations
Instances For

    Definitions for the optimization problem #

    def PLAcceleratedNesterovLean.argminSet {d : } (f : E d) :
    Set (E d)

    The set of global minimizers of f.

    Equations
    Instances For
      noncomputable def PLAcceleratedNesterovLean.fStar {d : } (f : E d) :

      The infimal value f⋆ = inf_x f(x).

      Equations
      Instances For
        def PLAcceleratedNesterovLean.PolyakLojasiewicz {d : } (f : E d) (μ : ) (U : Set (E d)) :

        A function f satisfies the μ-Polyak-Łojasiewicz (PL) condition on a set U if f is differentiable on U and ‖∇f(x)‖² ≥ 2μ(f(x) - f⋆) for all x ∈ U.

        Equations
        Instances For
          def PLAcceleratedNesterovLean.LSmooth {d : } (f : E d) (L : NNReal) :

          L-smoothness: the gradient of f is L-Lipschitz.

          Equations
          Instances For

            U is a general tubular neighborhood of S: U is open, S ⊆ U, and every point in U has a unique nearest point in S.

            Instances For

              First-order algorithm model #

              A first-order oracle algorithm with abstract internal state. At each step, the algorithm receives the function value f(x) and gradient ∇f(x) at the current readout point x, and produces a new internal state. The abstract state type S allows representing momentum methods like NAG (e.g. with S = E d × E d for the (xₖ, yₖ) pair).

              • S : Type u_1

                The internal state type.

              • init : E dself.S

                Initialize the state from a starting point.

              • step : self.SE dself.S

                Advance one step: (state, f(readout(state)), ∇f(readout(state))) → new state.

              • readout : self.SE d

                Extract the current iterate from the internal state.

              Instances For
                def PLAcceleratedNesterovLean.FirstOrderAlgorithm.stateAt {d : } (alg : FirstOrderAlgorithm d) (f : E d) (x₀ : E d) :
                alg.S

                The sequence of internal states produced by a first-order algorithm.

                Equations
                Instances For
                  noncomputable def PLAcceleratedNesterovLean.FirstOrderAlgorithm.iterate {d : } (alg : FirstOrderAlgorithm d) (f : E d) (x₀ : E d) (k : ) :
                  E d

                  The sequence of iterates produced by a first-order algorithm.

                  Equations
                  Instances For

                    Convergence rate #

                    def PLAcceleratedNesterovLean.HasAcceleratedRate {d : } (f : E d) (iterates : E d) (L μ : ) :

                    Accelerated convergence rate: f(xₖ) - f⋆ ≤ C · exp(-k / √(L/μ)).

                    Equations
                    Instances For
                      def PLAcceleratedNesterovLean.HasAcceleratedRateWithPrefactorTwo {d : } (f : E d) (iterates : E d) (L μ : ) (x₀ : E d) :

                      Accelerated convergence with explicit prefactor 2: f(xₖ) - f⋆ ≤ 2 · exp(-k / √(L/μ)) · (f(x₀) - f⋆).

                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For

                        Manifold setup: M as an embedded submanifold #

                        @[reducible, inline]

                        The model space for the n-dimensional submanifold.

                        Equations
                        Instances For

                          Model with corners for the n-dimensional Euclidean model (no boundary).

                          Equations
                          Instances For