Documentation

LeanPool.PLAcceleratedNesterovLean.Convergence.PhaseSchedule

Retuning Parameters for Nesterov Algorithm #

Defines both direct θ retuning parameters and phase-indexed auxiliary parameters for the Nesterov algorithm:

Key arithmetic facts:

Phase parameter definitions #

noncomputable def PLAcceleratedNesterovLean.muOfPhase (μ : ) (k : ) :

PL parameter at phase k: μₖ = μ · (1 - (1/4)^k).

Equations
Instances For

    Budget-split parameter at phase k: θₖ = (1/4)^k.

    Equations
    Instances For
      noncomputable def PLAcceleratedNesterovLean.rhoOfPhase (L μ : ) (k : ) :

      Momentum parameter at phase k.

      Equations
      Instances For

        Directly retuned PL parameter: μθ = μ · (1 - θ).

        Equations
        Instances For
          noncomputable def PLAcceleratedNesterovLean.rhoOfTheta (L μ θ : ) :

          Directly retuned momentum parameter.

          Equations
          Instances For

            Step size (constant across phases).

            Equations
            Instances For

              Basic arithmetic properties #

              theorem PLAcceleratedNesterovLean.muOfPhase_pos {μ : } ( : 0 < μ) {k : } (hk : 1 k) :
              0 < muOfPhase μ k
              theorem PLAcceleratedNesterovLean.muOfTheta_pos {μ θ : } ( : 0 < μ) (hθ_lt1 : θ < 1) :
              0 < muOfTheta μ θ

              Positivity of the retuned parameter μθ.

              theorem PLAcceleratedNesterovLean.muOfTheta_lt_mu {μ θ : } ( : 0 < μ) (hθ_pos : 0 < θ) :
              muOfTheta μ θ < μ

              The retuned parameter is strictly below μ when θ > 0.

              theorem PLAcceleratedNesterovLean.muOfPhase_lt_mu {μ : } ( : 0 < μ) (k : ) :
              muOfPhase μ k < μ
              theorem PLAcceleratedNesterovLean.muOfPhase_increasing {μ : } ( : 0 < μ) (k : ) :
              muOfPhase μ k muOfPhase μ (k + 1)

              muOfPhase k = μ · (1 - θₖ)

              theorem PLAcceleratedNesterovLean.one_sub_muOfPhase_div {μ : } ( : 0 < μ) (k : ) :
              1 - muOfPhase μ k / μ = thetaOfPhase k

              1 - muOfPhase k / μ = θₖ

              theorem PLAcceleratedNesterovLean.sqrt_muOfPhase_eta_le {μ η : } ( : 0 < μ) ( : 0 < η) (k : ) :
              (muOfPhase μ k * η) (μ * η)

              a_k = √(μ_k·η) ≤ √(μ·η) for all k.

              theorem PLAcceleratedNesterovLean.one_div_one_sub_sqrt_le {μ η : } ( : 0 < μ) ( : 0 < η) (hμη : μ * η < 1) (k : ) :
              1 / (1 - (muOfPhase μ k * η)) 1 / (1 - (μ * η))

              1/(1-a_k) ≤ 1/(1-√(μη)) for all k (uniform bound on jump constants).

              Geometric series bounds #

              theorem PLAcceleratedNesterovLean.partial_geometric_sum_le {r : } (hr0 : 0 r) (hr1 : r < 1) (K : ) :
              kFinset.range K, r ^ (k + 1) r / (1 - r)

              Partial sums of r^(k+1) for 0 ≤ r < 1 are bounded by r/(1-r).

              theorem PLAcceleratedNesterovLean.partial_geometric_half_le (K : ) :
              kFinset.range K, (1 / 2) ^ (k + 1) 1

              Partial sums of (1/2)^(k+1) are bounded by 1.

              theorem PLAcceleratedNesterovLean.partial_geometric_quarter_le (K : ) :
              kFinset.range K, (1 / 4) ^ (k + 1) 1 / 3

              Partial sums of (1/4)^k for k ≥ 1 are bounded by 1/3.