proofs
Provedalphabaguettebaguette-zoptimizer

Baguette's bias-corrected AdamW step is bounded by lr·C/(1−β₁) at every step t ≥ 1

For all lr,ε,m,v,β1,β2,C∈R\htmlData{mx=1}{\mathit{lr}, \varepsilon, m, v, \beta_{1}, \beta_{2}, C \in \htmlData{mx=0}{\mathbb{R}}} and t∈N\htmlData{mx=1}{t \in \htmlData{mx=0}{\mathbb{N}}}, if 1≤t1 \mathrel{\htmlData{mx=1}{\leq}} \htmlData{mx=0}{t}, 0≤lr0 \mathrel{\htmlData{mx=1}{\leq}} \htmlData{mx=0}{\mathit{lr}}, 0<ε0 \mathrel{\htmlData{mx=1}{<}} \htmlData{mx=0}{\varepsilon}, 0≤C0 \mathrel{\htmlData{mx=1}{\leq}} \htmlData{mx=0}{C}, 0≤β10 \mathrel{\htmlData{mx=1}{\leq}} \htmlData{mx=0}{\beta_{1}}, β1<1\htmlData{mx=0}{\beta_{1}} \mathrel{\htmlData{mx=1}{<}} 1, 0≤β20 \mathrel{\htmlData{mx=1}{\leq}} \htmlData{mx=0}{\beta_{2}}, β2<1\htmlData{mx=0}{\beta_{2}} \mathrel{\htmlData{mx=1}{<}} 1 and m2≤C2⋅v\htmlData{mx=1}{\htmlData{mx=0}{m}^{2}} \mathrel{\htmlData{mx=6}{\leq}} \htmlData{mx=5}{\htmlData{mx=3}{\htmlData{mx=2}{C}^{2}} \cdot \htmlData{mx=4}{v}}, then

∣lr⋅1−β2t1−β1t⋅mv+ε⋅1−β2t∣≤lr⋅C1−β1\begin{aligned} & \htmlData{mx=26}{\left\lvert \htmlData{mx=25}{\frac{\htmlData{mx=14}{\htmlData{mx=12}{\frac{\htmlData{mx=7}{\htmlData{mx=1}{\mathit{lr}} \cdot \htmlData{mx=6}{\sqrt{\htmlData{mx=5}{1 - \htmlData{mx=4}{\htmlData{mx=2}{\beta_{2}}^{\htmlData{mx=3}{t}}}}}}}}{\htmlData{mx=11}{1 - \htmlData{mx=10}{\htmlData{mx=8}{\beta_{1}}^{\htmlData{mx=9}{t}}}}}} \cdot \htmlData{mx=13}{m}}}{\htmlData{mx=24}{\htmlData{mx=16}{\sqrt{\htmlData{mx=15}{v}}} + \htmlData{mx=23}{\htmlData{mx=17}{\varepsilon} \cdot \htmlData{mx=22}{\sqrt{\htmlData{mx=21}{1 - \htmlData{mx=20}{\htmlData{mx=18}{\beta_{2}}^{\htmlData{mx=19}{t}}}}}}}}}} \right\rvert} \\ & \quad \htmlData{mx=0}{\leq} \htmlData{mx=32}{\frac{\htmlData{mx=29}{\htmlData{mx=27}{\mathit{lr}} \cdot \htmlData{mx=28}{C}}}{\htmlData{mx=31}{1 - \htmlData{mx=30}{\beta_{1}}}}} \end{aligned}
What the notation means · or point at any symbol
RReal numbers
The real numbers: every point on the number line. (ℝ)
x ∈ TVariables
lr, ε, m, v, β₁, β₂, C range over real numbers: the statement must hold for every choice. ((lr ε m v β₁ β₂ C : ℝ))
NNatural numbers
The natural numbers 0, 1, 2, …. In Lean they start at 0. (ℕ)
≤At most
1 is less than or equal to t. (1 ≤ t)
<Less than
0 is strictly smaller than ε. (0 < ε)
aᵇPower
m raised to the power 2. (m ^ 2)
|x|Absolute value
The size of lr · √(1 − β₂^t)/(1 − β₁^t) · m/(√(v) + ε · √(1 − β₂^t)) without its sign. (|lr * Real.sqrt (1 - β₂ ^ t) / (1 - β₁ …)
a/bDivision
lr · √(1 − β₂^t) divided by 1 − β₁^t. In Lean, dividing by 0 gives 0. (lr * Real.sqrt (1 - β₂ ^ t) / (1 - β₁ ^…)
√Square root
The non-negative number whose square is 1 − β₂^t. (Real.sqrt (1 - β₂ ^ t))
·Multiplication
C^2 times v. (C ^ 2 * v)
-Subtraction
1 minus β₂^t. On ℕ, Lean's subtraction stops at 0: 2 − 5 = 0. (1 - β₂ ^ t)
+Addition
√(v) plus ε · √(1 − β₂^t). (Real.sqrt v + ε * Real.sqrt (1 - β₂ ^ t))

Baguette folds bias correction into lr·√(1−β₂ᵗ)/(1−β₁ᵗ) and ε·√(1−β₂ᵗ) (MomentCorrection.alpha). With m² ≤ C²v, the folded step magnitude is at most lr·C/(1−β₁), uniformly in t. Part of the plan 'Baguette-Z: closed-loop certified integer-state training'.

How it was proved

Proved
3 October 2026
By
Ajax, with the agent “Baguette math & proofs (Claude Code, 2026-10-03)”
Checked by
Lean's kernel (Lean 4.33.1, with Mathlib); the proof is signed and replays offline
Axioms
Classical.choice, Quot.sound, propext
Proof
43 lines of Lean
Sign in to see the proofThe proof, its signed report and its history.

More proved statements