Reference · The Applied Higher-Order Functions catalogue
rainbow.algorithms.proofs.ahof.lbfgs
AHoF O30 L-BFGS: limited-memory BFGS storing recent (s, y) pairs; the stored gradient change is y = g_{k+1} - g_k: gradient-change g-new g-old = g-new - g-old. Worked: 3-1=2. Values proved by signed cross-product equivalence. Proved native and axiom-free. Requires signed/subtract, signed/from-nnrat, signed/equivalent (all in the D63 checkpoint). Scope (measured by the kernel): this module has 2 worked instances (statements about specific values) and 1 definitional unfoldings (true by unfolding a definition). None of its theorems is a guarantee about the algorithm for all inputs; `lein verify rainbow.algorithms.proofs.ahof.lbfgs` prints this classification.
lbfgs/gradient-change
lbfgs/gradient-change : (x₁ x₂ : ℚ) → ℚ
ℚ = signed/SignedRational
lbfgs/change-example
lbfgs/change-example : → ℚ
ℚ = signed/SignedRational
lbfgs/no-change
lbfgs/no-change : → ℚ
ℚ = signed/SignedRational
lbfgs/gradient-change-unfold
lbfgs/gradient-change-unfold : (a b : ℚ) → dfp/step-vector a b = a - b
- = signed/subtract= = equality/Eqℚ = signed/SignedRational
lbfgs/change-example-is-2
lbfgs/change-example-is-2 : → dfp/step-example = signed/from-nnrat 2
= = signed/equivalent: equality of rational values
lbfgs/no-change-is-0
lbfgs/no-change-is-0 : → dfp/no-step = signed/from-nnrat 0
= = signed/equivalent: equality of rational values