Alphabeta Math
AlgorithmAlgorithm: AI-adaptedProof: Not applicablePipeline-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.

Full-memory Bfgs with Wolfe search, descent reset, and Powell damping

Definition

Inputs are a C1 objective f:D→R on an open D⊆Rn with n≥1, x0∈D, consistent SPD matrices B0,H0 with B0H0=H0B0=I, a reset scale γ>0, constants 0<c1<c2<1/2, finite line-search and iteration budgets E,Z,K∈N (zero is allowed), a direction mode exact or rounded-Cholesky, and an update mode undamped or Powell. For rounded-Cholesky mode, also input a finite binary arithmetic format for the called direction procedure.

Initialize k:=0, xk:=x0, Bk:=B0, Hk:=H0, and g0:=∇f(x0). If g0=0, return stationary at x0. While k<K, if gk=0, return stationary at xk. Use the Euclidean inner product of The Euclidean inner product ⟨x,y⟩=∑k<nxkyk on Rn in descent and curvature tests. In exact direction mode set pk:=−Hkgk. In rounded-Cholesky mode, first check that every entry of Bk and gk is finite and representable in the selected format. If any entry is not, return direction-input-failure with xk. Otherwise call Bfgs Hessian direction by failure-aware Cholesky solve with (Bk,gk) in that format; if the factorization or triangular solve fails, return its failure status with xk. Otherwise set pk to its returned direction. If the computed direction is not descending, reset Bk:=γ−1I, Hk:=γI, and set pk:=−γgk.

Call Finite-budget bracketing and zoom for a strong Wolfe step with (f,xk,pk,c1,c2,E,Z). If it returns a failure status, return that status and xk. Otherwise take its positive strong Wolfe step αk, set xk+1:=xk+αkpk, and compute gk+1:=∇f(xk+1). Define sk:=αkpk,yk:=gk+1−gk. In undamped mode set yˉk:=yk. In Powell mode put ck:=skTBksk and use the damping rule of Bfgs curvature pairs and Hessian/inverse updates to form yˉk. If skTyˉk≤0, skip the matrix update and return curvature-rejected with xk+1. Otherwise update both matrices by Bk+1=Bk−BkskskTBkskTBksk+yˉkyˉkTskTyˉk,Hk+1=(I−ρkskyˉkT)Hk(I−ρkyˉkskT)+ρkskskT,ρk=(skTyˉk)−1. If any required scalar or matrix operation is undefined, discard partial update results and return update-failure with xk+1. After a successful update, commit (xk+1,gk+1,Bk+1,Hk+1) as the state for the next iteration. If gk+1=0, return stationary at xk+1; if k+1=K, return iteration-budget-exhausted at xk+1. Otherwise set k:=k+1 and continue from that committed state. A line-search failure returns its status with xk. If the loop exits because k=K without another return, return iteration-budget-exhausted with xk; this covers K=0. The output is the last point and one of stationary, a line-search status, direction-input-failure, factorization/solve failure, curvature-rejected, update-failure, or iteration-budget-exhausted.

All objective and gradient evaluations, line-search arithmetic, descent and curvature tests, resets, and BFGS matrix updates are exact over R. Only the called rounded-Cholesky factorization and triangular solves use the selected finite arithmetic. The representability check is repeated before every call, since exact updates need not preserve representable entries. The rounded-Cholesky direction mode specifies a computed factor-and-solve direction only; this item supplies no backward-error or convergence theorem for that mode. Its returned direction is checked for descent before the strong Wolfe search. The line-search procedure can fail within its finite budgets even when an acceptable step exists.

Depends on

Used by

Dependency tree · two levels

25 results within two dependency steps of this one, each drawn at its shortest distance from it. An arrow runs from a result to what uses it, so the chart reads left to right and ends at this result, which carries a heavier outline. Every node is a link to that result. Click elsewhere on the chart to enlarge it.

Sources