Documentation

IntroductoryLecturesOnConvexOptimization_Nesterov_2004.Chap01.Definition_1_6_4

def SatisfiesArmijoRule {E : Type u} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] (f : E) (stepSize : ) (x0 : E) (α β : ) :

Definition 1.6.4: a step-size schedule hₖ satisfies the Armijo rule for the gradient-method trajectory started at x₀ when the objective is differentiable at every iterate, so the displayed ∇ f(xₖ) is genuine, 0 < α < β < 1, every step size is positive, and the consecutive iterates satisfy the two-sided Armijo decrease bounds.

Instances For
    theorem SatisfiesArmijoRule.differentiableAt {E : Type u} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] {f : E} {stepSize : } {x0 : E} {α β : } (hArmijo : SatisfiesArmijoRule f stepSize x0 α β) (k : ) :
    DifferentiableAt f (gradientMethod stepSize f x0 k)

    Along an Armijo trajectory, the objective is differentiable at every iterate.

    theorem SatisfiesArmijoRule.hasGradientAt {E : Type u} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] {f : E} {stepSize : } {x0 : E} {α β : } (hArmijo : SatisfiesArmijoRule f stepSize x0 α β) (k : ) :
    HasGradientAt f (gradient f (gradientMethod stepSize f x0 k)) (gradientMethod stepSize f x0 k)

    Along an Armijo trajectory, the displayed antigradient is the genuine gradient at every iterate.

    theorem SatisfiesArmijoRule.alpha_pos {E : Type u} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] {f : E} {stepSize : } {x0 : E} {α β : } (hArmijo : SatisfiesArmijoRule f stepSize x0 α β) :
    0 < α

    The Armijo rule forces the lower parameter to be positive.

    theorem SatisfiesArmijoRule.alpha_lt_beta {E : Type u} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] {f : E} {stepSize : } {x0 : E} {α β : } (hArmijo : SatisfiesArmijoRule f stepSize x0 α β) :
    α < β

    The Armijo parameters satisfy α < β.

    theorem SatisfiesArmijoRule.beta_lt_one {E : Type u} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] {f : E} {stepSize : } {x0 : E} {α β : } (hArmijo : SatisfiesArmijoRule f stepSize x0 α β) :
    β < 1

    The upper Armijo parameter lies below 1.

    theorem SatisfiesArmijoRule.stepSize_pos {E : Type u} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] {f : E} {stepSize : } {x0 : E} {α β : } (hArmijo : SatisfiesArmijoRule f stepSize x0 α β) (k : ) :
    0 < stepSize k

    Every Armijo step size is positive.

    theorem SatisfiesArmijoRule.bounds {E : Type u} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] {f : E} {stepSize : } {x0 : E} {α β : } (hArmijo : SatisfiesArmijoRule f stepSize x0 α β) (k : ) :
    α * inner (gradient f (gradientMethod stepSize f x0 k)) (gradientMethod stepSize f x0 k - gradientMethod stepSize f x0 (k + 1)) f (gradientMethod stepSize f x0 k) - f (gradientMethod stepSize f x0 (k + 1)) f (gradientMethod stepSize f x0 k) - f (gradientMethod stepSize f x0 (k + 1)) β * inner (gradient f (gradientMethod stepSize f x0 k)) (gradientMethod stepSize f x0 k - gradientMethod stepSize f x0 (k + 1))

    The Armijo rule provides both comparison inequalities at each iterate.

    theorem SatisfiesArmijoRule.lowerBound {E : Type u} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] {f : E} {stepSize : } {x0 : E} {α β : } (hArmijo : SatisfiesArmijoRule f stepSize x0 α β) (k : ) :
    α * inner (gradient f (gradientMethod stepSize f x0 k)) (gradientMethod stepSize f x0 k - gradientMethod stepSize f x0 (k + 1)) f (gradientMethod stepSize f x0 k) - f (gradientMethod stepSize f x0 (k + 1))

    The lower Armijo comparison inequality.

    theorem SatisfiesArmijoRule.upperBound {E : Type u} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] {f : E} {stepSize : } {x0 : E} {α β : } (hArmijo : SatisfiesArmijoRule f stepSize x0 α β) (k : ) :
    f (gradientMethod stepSize f x0 k) - f (gradientMethod stepSize f x0 (k + 1)) β * inner (gradient f (gradientMethod stepSize f x0 k)) (gradientMethod stepSize f x0 k - gradientMethod stepSize f x0 (k + 1))

    The upper Armijo comparison inequality.

    theorem zero_zero_constOne_satisfiesArmijoRule {E : Type u} [NormedAddCommGroup E] [InnerProductSpace E] [CompleteSpace E] :
    SatisfiesArmijoRule (fun (x : E) => 0) (fun (x : ) => 1) 0 (1 / 4) (1 / 2)

    The constant zero objective with initial point 0 and unit step sizes satisfies the Armijo rule for the canonical parameters α = 1 / 4 and β = 1 / 2.