Alphabeta Math
Pipeline-generated
How statement and proof provenance work

The first chip identifies the source of the statement or construction; the second identifies the source of its local proof or verification.

  • Literature-sourced: the exact statement appears in a cited source; only wording and notation differ.
  • AI-adapted: a semantically identical restatement of literature-sourced material, modulo indexing, notation, and boundary cases adopted by the library.
  • AI-generated: a genuinely novel statement formulated by AI, with no source for the claim itself.

These labels describe origin, not correctness: citations and verification chips remain separate evidence.

✓ 3 results · all verified · 0 also independently AI-judged
Every result on this page is machine-checked by a proof checker and read in full and owner-audited; the judge is an additional, independent cross-model AI review of the proofs. The 3 not AI-judged were verified by owner audit (typically over a confirmed judge false positive), not failures.

Bfgs and limited memory quasi newton methods — Examples

1 · Prerequisites

2 · Summary

The examples calculate an exact BFGS secant update on a two-variable strongly convex quadratic, compare a nonconvex negative-curvature trial with its Powell-damped pair, and quantify the storage difference between full-memory BFGS and L-BFGS. The negative-curvature trial fails the Wolfe curvature test and is explicitly not treated as an accepted line-search step.

3 · Logical flowchart

4 · Definitions, theorems and proofs

None yet.

5 · Examples, counterexamples and false statements

ExampleConstruction: AI-generatedVerification: AI-adaptedprecheck passOpen item page →

An exact Bfgs secant update on a two-variable quadratic

Example

Let A=(2003) and f(x)=12xTAx on R2. Start at x0=(1,1)T with B0=H0=I. The exact steepest-descent BFGS direction is p0=−∇f(x0)=(−2,−3)T. Take the exact line-search step α0=13/35 and form the Hessian BFGS update.

Facts & Assumptions

Given: The objective, start, initial matrices, direction, and step in the Example.

[F1]

Bfgs curvature pairs and Hessian/inverse updates: s=αp, y=g+−g, and B+=B−BssTB/(sTBs)+yyT/(sTy) when sTy>0.

[F2]

Full-memory Bfgs with Wolfe search, descent reset, and Powell damping: an exact full-memory iteration uses p=−Hg and accepts a positive strong Wolfe step before updating.

[F3]

Bfgs updates preserve the secant equations, symmetry, and positive definiteness: an SPD BFGS update with positive curvature satisfies B+s=y and remains SPD.

Verification

Given: The objective, start, initial matrices, direction, and step in the Example.

[F1] Bfgs curvature pairs and Hessian/inverse updates: s=αp, y=g+−g, and B+=B−BssTB/(sTBs)+yyT/(sTy) when sTy>0.

[F2] Full-memory Bfgs with Wolfe search, descent reset, and Powell damping: an exact full-memory iteration uses p=−Hg and accepts a positive strong Wolfe step before updating.

[F3] Bfgs updates preserve the secant equations, symmetry, and positive definiteness: an SPD BFGS update with positive curvature satisfies B+s=y and remains SPD.

1.1givenF1F2algebra

The gradient is ∇f(x)=Ax, so g0=(2,3)T and the direction in [F2] is p0=−g0=(−2,−3)T. Along this ray, ϕ′(t)=g0Tp0+t p0TAp0=−13+35t, so the exact minimizer is α0=13/35.

1.2givenF2algebra

At this step ϕ′(α0)=0, which satisfies the strong curvature test for c2=2/5. The quadratic identity ϕ(α)=ϕ(0)+αϕ′(0)+12α2p0TAp0 gives ϕ(α0)−ϕ(0)=−169/70≤−(10−4)(169/35)=10−4α0ϕ′(0), so the strong Wolfe Armijo test also holds.

1.3givenF1algebra

The step and gradient change are s0=α0p0 and y0=As0=α0(−4,−9)T. Hence s0Ty0=35α02>0 and s0TB0s0=13α02>0.

2.1givenF1F3step 1.3algebra∎

Substitution in [F1] gives B1=I−113(4669)+135(16363681)=1455(5232582581193). Multiplication yields B1s0=α0(−4,−9)T=y0. The positive curvature from step 1.3 and [F3] also imply B1 is SPD.

Remarks

This verifies one exact strong-Wolfe input to the BFGS recurrence. A finite-budget bracketing search may return a different acceptable step or a failure status; this example does not claim that the search returns exactly 13/35.

ExampleConstruction: AI-generatedVerification: AI-adaptedprecheck passOpen item page →

Powell damping repairs a negative-curvature trial pair

Example

Consider the nonconvex function f(x1,x2)=−12x12+12x22 at x=(1,0)T. The gradient is g=(−1,0)T. The trial direction p=(1,0)T and trial step α=1 give s=(1,0)T and y=(−1,0)T. Use B=H=I to compare the raw and Powell-damped updates.

Facts & Assumptions

Given: The function, point, trial direction and step, and initial matrices in the Example.

[F1]

Bfgs curvature pairs and Hessian/inverse updates: an undamped BFGS update requires sTy>0; Powell damping uses c=sTBs and, if sTy<0.2c, forms y~=θy+(1−θ)Bs with θ=0.8c/(c−sTy).

[F2]

Powell damping gives a strictly positive curvature pair: this damping rule gives sTy~=0.2c>0 in the damped branch.

[F3]

Bfgs updates preserve the secant equations, symmetry, and positive definiteness: for SPD B and positive damped curvature, the BFGS Hessian update remains SPD and satisfies B+s=y~.

[F4]

Full-memory Bfgs with Wolfe search, descent reset, and Powell damping: the normal search branch requires a strong Wolfe step and reports line-search failure if its finite search does not return one.

Verification

Given: The function, point, trial direction and step, and initial matrices in the Example.

[F1] Bfgs curvature pairs and Hessian/inverse updates: an undamped BFGS update requires sTy>0; Powell damping uses c=sTBs and, if sTy<0.2c, forms y~=θy+(1−θ)Bs with θ=0.8c/(c−sTy).

[F2] Powell damping gives a strictly positive curvature pair: this damping rule gives sTy~=0.2c>0 in the damped branch.

[F3] Bfgs updates preserve the secant equations, symmetry, and positive definiteness: for SPD B and positive damped curvature, the BFGS Hessian update remains SPD and satisfies B+s=y~.

[F4] Full-memory Bfgs with Wolfe search, descent reset, and Powell damping: the normal search branch requires a strong Wolfe step and reports line-search failure if its finite search does not return one.

1.1givenF4algebra

Here gTp=−1<0, and f(x+p)−f(x)=−3/2. The Armijo inequality holds for c1=10−4, but the directional derivatives are ϕ′(0)=−1 and ϕ′(1)=−2. For c2=2/5, the Wolfe curvature test would require −2≥−2/5, which is false; the strong curvature test fails as well. Thus this is a nonconvex trial pair, not a step accepted by the strong-Wolfe search of [F4].

1.2givenF1algebra

The raw pair has sTy=−1, so its BFGS curvature denominator is negative. Direct substitution into the formal Hessian-update expression gives I−ssT+yyT/(−1)=diag⁡(−1,1), whose quadratic form at e1=(1,0)T is −1; it is not SPD.

1.3givenF1F2algebra

Here c=sTBs=1 and sTy=−1<0.2c, so θ=0.8/(1−(−1))=0.4 and y~=0.4(−1,0)T+0.6(1,0)T=(0.2,0)T. Therefore sTy~=0.2>0, as also follows from [F2].

2.1givenF1F3step 1.3algebra∎

The damped update is B+=I−ssT+y~y~TsTy~=diag⁡(0.2,1). It is SPD and B+s=(0.2,0)T=y~, in agreement with [F3]. The example shows the algebraic role of damping; because the trial fails Wolfe, the normal line-search algorithm rejects it rather than treating it as a successful BFGS iteration.

ExampleConstruction: AI-generatedVerification: AI-adaptedprecheck passOpen item page →

Full-memory and limited-memory storage costs

Example

Compare the paired Hessian/inverse state used by the full-memory algorithm with the correction-pair storage in L-BFGS for n=1000 variables and memory length m=10.

Facts & Assumptions

Given: n=1000, m=10, a full n×n BFGS matrix, and the limited-memory state of Limited-memory Bfgs two-loop recursion with curvature filtering.

[F1]

The L-Bfgs two-loop recursion equals the stored inverse updates and costs linear memory work: L-BFGS stores at most m pairs of length-n vectors and uses O(mn) work for the two-loop recursion.

[F3]

Full-memory Bfgs with Wolfe search, descent reset, and Powell damping: this fully explicit implementation maintains both consistent dense matrices Bk and Hk.

[F2]

Limited-memory Bfgs two-loop recursion with curvature filtering: the working vectors have length n and the stored memory is capped at m pairs.

[F4]

Bfgs curvature pairs and Hessian/inverse updates: the direct update is B+=B−BssTB/(sTBs)+yyT/(sTy), and the inverse update is H+=(I−ρsyT)H(I−ρysT)+ρssT, with ρ=(sTy)−1.

Verification

1.1givenF3algebra

Each dense matrix contains n2=10002=1,000,000 real entries. The paired state in [F3] therefore stores 2n2=2,000,000 matrix entries; a one-matrix implementation stores n2=1,000,000.

1.2givenF1F2algebra

The L-BFGS pair list contains at most 2mn=2⋅10⋅1000=20,000 real coordinates, plus O(n+m) temporary vectors and scalars.

2.1givenF1F3F4algebra∎

In exact inverse-matrix mode, computing p=−Hg uses one dense matrix-vector product and costs O(n2) scalar operations. For the direct update, first compute u:=Bs with one dense matrix-vector product; since B is symmetric, BssTB=uuT. Then form B+=B−uuT/(sTu)+yyT/(sTy) using two outer products and an entrywise matrix update, which costs O(n2). For the inverse update, first compute v:=Hy with one dense matrix-vector product and expand [F4] using symmetry of H to obtain H+=H−ρ(svT+vsT)+(ρ+ρ2yTv)ssT. This uses a constant number of outer-product updates and also costs O(n2). Thus the dense direction and the paired BFGS updates use O(n2) work per iteration. By [F1], the two-loop recursion uses O(mn) scalar work. Here mn=10,000 while n2=1,000,000; the paired representation uses 100 times as many matrix entries as correction-pair coordinates, and a one-matrix representation uses 50 times as many. These are storage comparisons, not exact operation totals.

Remarks

The example compares storage and update work only. It does not infer that L-BFGS has the same convergence rate as full BFGS; its convergence result requires separate curvature and scale bounds.

Sources