APNOutputs/AICollaborator/Optimization/LastIterateConvergence.lean
Explanation legend Lean4 Domain Explanation Language (L4DEL)
L4DEL explanations are a separate layer. They do not change the Lean source. Intuition is explanatory prose; numbered items are a reading path; sources link the wording back to evidence.
- L4DEL
- Lean4 Domain Explanation Language
Credit: Google DeepMind published the AlphaProof Nexus proof artifacts. The pinned repository identifies the mathematical sources and collaborators, including OEIS, Erdős Problems, Gergely Bérczi, and Mario Krenn; those source records remain the authority for individual credit.
Project sources: Pinned AlphaProof Nexus results documentation, AlphaProof Nexus paper, Pinned human-written natural-language proof companions
35 declarations, 0 contain sorry, 0 declared as axioms
ODE Analysis of Stochastic Gradient Methods with Optimism and Anchoring for Minimax Problems
Reference: arxiv/1905.10899 by Ernest K. Ryu, Kun Yuan, Wotao Yin
Imports (1)
FormalConjectures.Util.ProblemImports
- abbrev
Arxiv.«1905.10899».E_nline 32 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NatProof uses:
EuclideanSpace,Real,Fin - abbrev
Arxiv.«1905.10899».F_mline 33 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NatProof uses:
EuclideanSpace,Real,Fin - abbrev
Arxiv.«1905.10899».Z_spaceline 34 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NatProof uses:
WithLp,OfNat.ofNat,ENNReal,Prod, Arxiv.«1905.10899».E_n, Arxiv.«1905.10899».F_m5 instances, coercions and auxiliary constants left out.
- def
Arxiv.«1905.10899».toProdline 36 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,ContinuousLinearEquiv,Real,RingHom.id, Arxiv.«1905.10899».Z_space,OfNat.ofNat,ENNReal, Arxiv.«1905.10899».E_n, Arxiv.«1905.10899».F_m,Fin,ProdProof uses:
WithLp.prodContinuousLinearEquiv81 instances, coercions and auxiliary constants left out.
- structure
Arxiv.«1905.10899».Stateline 39 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat - def
Arxiv.«1905.10899».F_operatorOperator G(z) = (∇_x L(z), -∇_y L(z)) line 46 sourceSource comment
Operator G(z) = (∇_x L(z), -∇_y L(z))standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Arxiv.«1905.10899».Z_space,RealProof uses:
Prod, Arxiv.«1905.10899».E_n, Arxiv.«1905.10899».F_m,ContinuousLinearEquiv,RingHom.id,OfNat.ofNat,ENNReal,Fin, Arxiv.«1905.10899».toProd,gradient,ContinuousLinearEquiv.symm,Prod.mk,Prod.fst,Neg.neg,Prod.snd59 instances, coercions and auxiliary constants left out.
noncomputable def F_operator (L : (Z_space n m) → ℝ) (z : Z_space n m) : Z_space n m := …
Mentions: Arxiv.«1905.10899».Z_space
- def
Arxiv.«1905.10899».IsSaddlePointline 52 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Arxiv.«1905.10899».Z_space,RealProof uses:
Arxiv.«1905.10899».IsSaddlePoint.match_1,Prod, Arxiv.«1905.10899».E_n, Arxiv.«1905.10899».F_m,ContinuousLinearEquiv,RingHom.id,OfNat.ofNat,ENNReal,Fin, Arxiv.«1905.10899».toProd,And,LE.le,ContinuousLinearEquiv.symm,Prod.mk50 instances, coercions and auxiliary constants left out.
- def
Arxiv.«1905.10899».stepAnchored Simultaneous Gradient Descent z_{t+1} = z_t - α_t * G(z_t) + β_t * (z_0 - z_t) line 59 sourceSource comment
Anchored Simultaneous Gradient Descent z_{t+1} = z_t - α_t * G(z_t) + β_t * (z_0 - z_t)standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Arxiv.«1905.10899».Z_space,Real, Arxiv.«1905.10899».StateProof uses: Arxiv.«1905.10899».F_operator,
Arxiv.«1905.10899».State.z,HSMul.hSMul,OfNat.ofNat,ENNReal,Prod, Arxiv.«1905.10899».E_n, Arxiv.«1905.10899».F_m,Fin,HSub.hSub,Arxiv.«1905.10899».State.z0,HAdd.hAdd,Arxiv.«1905.10899».State.mk,Arxiv.«1905.10899».State.t,HAppend.hAppend,List,Arxiv.«1905.10899».State.history,List.cons,List.nil40 instances, coercions and auxiliary constants left out.
noncomputable def step (L : (Z_space n m) → ℝ) (s : State n m) (grad_coeff anchor_coeff : ℝ) : State n m := …
Mentions: Arxiv.«1905.10899».Z_space, Arxiv.«1905.10899».State
- def
Arxiv.«1905.10899».coefficients_scheduleline 85 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Real,Nat,ProdProof uses:
Prod.mk,HDiv.hDiv,OfNat.ofNat,HMul.hMul,Real.sqrt,HAdd.hAdd11 instances, coercions and auxiliary constants left out.
- lemma
Arxiv.«1905.10899».inner_F_operator_self_ge_zeroline 90 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Arxiv.«1905.10899».Z_space,Real,GE.ge,Inner.inner,OfNat.ofNat,ENNReal, Arxiv.«1905.10899».E_n, Arxiv.«1905.10899».F_m,Fin,HSub.hSub, Arxiv.«1905.10899».F_operator,Eq,ProdProof uses:
sub_zero,Eq.mp,congrArg76 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».F_operator_lipschitz_boundline 100 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Arxiv.«1905.10899».Z_space,Real,NNReal,LE.le,Norm.norm,OfNat.ofNat,ENNReal, Arxiv.«1905.10899».E_n, Arxiv.«1905.10899».F_m,Fin,HSub.hSub, Arxiv.«1905.10899».F_operator,HMul.hMul,Eq,ProdProof uses:
sub_zero,Eq.mp,congrArg66 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».z0_eqline 111 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Arxiv.«1905.10899».Z_space,Real, Arxiv.«1905.10899».State,Eq,OfNat.ofNat,Arxiv.«1905.10899».State.mk,List.cons,List.nil,HAdd.hAdd, Arxiv.«1905.10899».step,Prod.fst, Arxiv.«1905.10899».coefficients_schedule,Prod.snd,Arxiv.«1905.10899».State.z0Proof uses:
Nat.recAux,Eq.mpr,id,congrArg,Eq.refl6 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».z_update_eqline 123 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Arxiv.«1905.10899».Z_space,Real, Arxiv.«1905.10899».State,Eq,OfNat.ofNat,Arxiv.«1905.10899».State.mk,List.cons,List.nil,HAdd.hAdd, Arxiv.«1905.10899».step,Prod.fst, Arxiv.«1905.10899».coefficients_schedule,Prod.snd,Arxiv.«1905.10899».State.z,ENNReal, Arxiv.«1905.10899».E_n, Arxiv.«1905.10899».F_m,Fin,HSub.hSuband 6 moreProof uses:
Arxiv.«1905.10899».State.z0, Arxiv.«1905.10899».z0_eq,Eq.mpr,id,congrArg,rfl,Eq.refl96 instances, coercions and auxiliary constants left out.
Tactic trace: 6 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».norm_convex_comb_sqline 138 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NormedAddCommGroup,InnerProductSpace,Real,LE.le,OfNat.ofNat,HPow.hPow,Nat,Norm.norm,HAdd.hAdd,HSMul.hSMul,HSub.hSub,HMul.hMulProof uses:
Inner.inner,le_of_not_gt,LT.lt,Mathlib.Tactic.Linarith.lt_irrefl,Eq.mp,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.add_congr,Nat.rawCast,Mathlib.Tactic.Ring.instCommSemiringNat,Int.rawCast,Int.negOfNat,Mathlib.Meta.NormNum.instAddMonoidWithOne,Mathlib.Tactic.Ring.sub_congr,Mathlib.Tactic.Ring.pow_congr,Mathlib.Tactic.Ring.atom_pf,Mathlib.Tactic.Ring.cast_pos,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Mathlib.Tactic.Ring.pow_addand 70 more166 instances, coercions and auxiliary constants left out.
Tactic trace: 9 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».inner_cross_boundline 144 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NormedAddCommGroup,InnerProductSpace,Real,LE.le,HMul.hMul,Neg.neg,OfNat.ofNat,Nat,Inner.inner,HAdd.hAdd,HPow.hPow,Norm.norm,OfScientific.ofScientific,Bool.trueProof uses:
Or,Eq,le_total,Or.inl,le_of_not_gt,LT.lt,Mathlib.Tactic.Linarith.lt_irrefl,Eq.mp,HSub.hSub,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.add_congr,Nat.rawCast,Mathlib.Tactic.Ring.instCommSemiringNat,Mathlib.Meta.NormNum.instAddMonoidWithOne,Int.rawCast,Int.negOfNat,Mathlib.Tactic.Ring.sub_congr,Mathlib.Tactic.Ring.cast_zero,Mathlib.Meta.NormNum.isNat_ofNatand 104 more162 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».one_step_boundline 150 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NormedAddCommGroup,InnerProductSpace,Real,LE.le,OfNat.ofNat,Inner.inner,HSub.hSub,Norm.norm,HMul.hMul,Eq,HAdd.hAdd,HSMul.hSMul,HPow.hPow,Nat,OfScientific.ofScientific,Bool.trueProof uses:
Eq.mpr,id,congrArg,Eq.refl,Eq.symm,norm_sub_sq_real,RingHom,starRingEnd,congr,Eq.trans,inner_smul_right,inner_add_left,inner_smul_left,mul_comm,add_mul,mul_assoc, Arxiv.«1905.10899».norm_convex_comb_sq,norm_smul_of_nonneg,mul_pow,Neg.negand 123 more242 instances, coercions and auxiliary constants left out.
Tactic trace: 21 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».poly_boundline 172 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Real,LE.le,OfNat.ofNat,Nat,HAdd.hAdd,HMul.hMul,HPow.hPowProof uses:
Eq,Mathlib.Tactic.Ring.of_eq,Nat.rawCast,Mathlib.Tactic.Ring.instCommSemiringNat,Mathlib.Tactic.Ring.add_congr,Mathlib.Tactic.Ring.mul_congr,Mathlib.Tactic.Ring.cast_pos,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Mathlib.Meta.NormNum.instAtLeastTwo,Mathlib.Tactic.Ring.atom_pf,Mathlib.Tactic.Ring.add_pf_add_lt,Mathlib.Tactic.Ring.add_pf_zero_add,Mathlib.Tactic.Ring.add_mul,Mathlib.Tactic.Ring.mul_add,Mathlib.Tactic.Ring.mul_pf_right,Mathlib.Tactic.Ring.mul_one,Mathlib.Tactic.Ring.mul_zero,Mathlib.Tactic.Ring.add_pf_add_zero,Mathlib.Tactic.Ring.zero_muland 53 more95 instances, coercions and auxiliary constants left out.
Tactic trace: 7 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».seq_bound_algebra_newline 179 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Real,LE.le,OfNat.ofNat,HMul.hMul,Nat,HDiv.hDiv,HAdd.hAdd,HSub.hSub,OfScientific.ofScientific,Bool.true,HPow.hPowProof uses:
LT.lt,lt_of_not_ge,Mathlib.Tactic.Linarith.lt_irrefl,Eq.mp,Neg.neg,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.add_congr,Nat.rawCast,Mathlib.Tactic.Ring.instCommSemiringNat,Int.rawCast,Int.negOfNat,Mathlib.Tactic.Ring.mul_congr,Mathlib.Tactic.Ring.cast_pos,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Mathlib.Meta.NormNum.instAtLeastTwo,Mathlib.Tactic.Ring.neg_congr,Nat.cast_one,Mathlib.Tactic.Ring.neg_addand 190 more198 instances, coercions and auxiliary constants left out.
Tactic trace: 21 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».bounded_iterates_Dline 201 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Arxiv.«1905.10899».Z_space,Real,Differentiable,OfNat.ofNat,ENNReal,Prod, Arxiv.«1905.10899».E_n, Arxiv.«1905.10899».F_m,Fin,GE.ge,Inner.inner,HSub.hSub, Arxiv.«1905.10899».F_operator,NNReal,LT.lt,LE.le,Norm.norm,HMul.hMul, Arxiv.«1905.10899».State and 12 moreProof uses:
Nat.recAux,Eq.mpr,id,congrArg,Eq.refl,sq_nonneg,le_of_not_gt,Mathlib.Tactic.Linarith.lt_irrefl,Eq.mp,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.add_congr,Nat.rawCast,Mathlib.Tactic.Ring.instCommSemiringNat,Int.rawCast,Int.negOfNat,Mathlib.Meta.NormNum.instAddMonoidWithOne,Mathlib.Tactic.Ring.mul_congr,Mathlib.Tactic.Ring.cast_pos,Mathlib.Meta.NormNum.isNat_ofNat,Mathlib.Meta.NormNum.instAtLeastTwoand 129 more316 instances, coercions and auxiliary constants left out.
Tactic trace: 37 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».bounded_iterates_D_exist_helperline 238 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Real,LE.le,HMul.hMul,OfNat.ofNat,Nat,Eq,HAdd.hAdd,Real.sqrtProof uses:
Mathlib.Tactic.LinearCombination.le_of_le,Mathlib.Tactic.LinearCombination.add_le_eq,Real.sqrt_le_sqrt,Eq.symm,Real.sqrt_mul',Mathlib.Tactic.LinearCombination.le_rearrange,Mathlib.Tactic.Ring.le_congr,HSub.hSub,Mathlib.Tactic.Ring.sub_congr,HPow.hPow,Nat.rawCast,Mathlib.Tactic.Ring.instCommSemiringNat,Mathlib.Tactic.Ring.add_congr,Mathlib.Tactic.Ring.atom_pf,Mathlib.Tactic.Ring.add_pf_add_lt,Mathlib.Tactic.Ring.add_pf_zero_add,Mathlib.Tactic.Ring.mul_congr,Mathlib.Tactic.Ring.add_mul,Mathlib.Tactic.Ring.mul_add,Mathlib.Tactic.Ring.mul_pf_rightand 31 more70 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».bounded_iterates_D_existline 243 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Arxiv.«1905.10899».Z_space,Real,Differentiable,OfNat.ofNat,ENNReal,Prod, Arxiv.«1905.10899».E_n, Arxiv.«1905.10899».F_m,Fin,GE.ge,Inner.inner,HSub.hSub, Arxiv.«1905.10899».F_operator,NNReal,LT.lt,LE.le,Norm.norm,HMul.hMul, Arxiv.«1905.10899».State and 13 moreProof uses:
HPow.hPow, Arxiv.«1905.10899».bounded_iterates_D,Exists.intro,Real.sqrt,And.intro,le_of_lt,add_pos',Real.sqrt_pos_of_pos,Mathlib.Meta.Positivity.pos_of_isNat,inferInstance,PartialOrder,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Mathlib.Meta.NormNum.instAtLeastTwo,Bool,Nat.ble,Nat.cast_one,norm_nonneg,mul_nonneg,Eq.transand 72 more233 instances, coercions and auxiliary constants left out.
Tactic trace: 26 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».A_boundline 277 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Real,LE.le,OfNat.ofNat,LT.lt,HDiv.hDiv,Real.sqrt,HAdd.hAdd,HSub.hSub,OfScientific.ofScientific,Bool.trueProof uses:
Eq.mpr,HMul.hMul,inferInstance,CommGroupWithZero,id,Eq,Mathlib.Tactic.FieldSimp.le_eq_cancel_le,Mathlib.Tactic.FieldSimp.NF.eval,Mathlib.Tactic.FieldSimp.NF.cons,Prod.mk,Int,Neg.neg,List.nil,Prod,Mathlib.Tactic.FieldSimp.eq_mul_of_eq_eq_eq_mul,rfl,Eq.trans,Mathlib.Tactic.FieldSimp.subst_sub,Mathlib.Tactic.FieldSimp.NF.one_eq_eval,Eq.symmand 157 more174 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».error_term_boundline 284 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Real,LE.le,OfNat.ofNat,HDiv.hDiv,Real.sqrt,HAdd.hAdd,abs,HSub.hSub,HMul.hMul,HPow.hPow,NatProof uses:
Eq.mpr,And,Inv.inv,id,Eq,Eq.trans,Neg.neg,congr,congrArg,div_eq_mul_inv,one_mul,inv_inv,mul_comm,mul_sub,mul_assoc,inferInstance,CommGroupWithZero,Mathlib.Tactic.FieldSimp.le_eq_cancel_le,Mathlib.Tactic.FieldSimp.NF.eval,Mathlib.Tactic.FieldSimp.NF.consand 143 more182 instances, coercions and auxiliary constants left out.
Tactic trace: 9 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».contraction_factor_sqline 295 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Real,LE.le,OfNat.ofNat,HDiv.hDiv,HAdd.hAdd,Nat,HPow.hPow,HSub.hSub,HMul.hMul,OfScientific.ofScientific,Bool.trueProof uses:
le_of_not_gt,LT.lt,Mathlib.Tactic.Linarith.lt_irrefl,Eq.mp,inferInstance,AddMonoidWithOne,Mathlib.Meta.NormNum.instAtLeastTwo,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.add_congr,Nat.rawCast,Mathlib.Tactic.Ring.instCommSemiringNat,Int.rawCast,Int.negOfNat,Mathlib.Meta.NormNum.instAddMonoidWithOne,Mathlib.Tactic.Ring.mul_congr,Mathlib.Tactic.Ring.cast_pos,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Mathlib.Tactic.Ring.sub_congrand 99 more170 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».delta_contraction_factorline 298 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Real,LE.le,OfNat.ofNat,Nat,LT.lt,HDiv.hDiv,Real.sqrt,HAdd.hAdd,HSub.hSub,And,HPow.hPow,HMul.hMul,OfScientific.ofScientific,Bool.trueProof uses:
Eq.mpr,Inv.inv,Mathlib.Meta.NormNum.instAtLeastTwo,id,Eq,Eq.trans,congr,congrArg,one_div,div_inv_eq_mul,div_pow,inv_pow,Real.sq_sqrt,of_eq_true,True,eq_true,LE.le.trans',Mathlib.Meta.NormNum.isNat_le_true,Mathlib.Meta.NormNum.isNat_ofNat,Nat.cast_zeroand 224 more234 instances, coercions and auxiliary constants left out.
Tactic trace: 18 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».delta_algebra_substline 314 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NormedAddCommGroup,NormedSpace,Real,Eq,HAdd.hAdd,HSub.hSub,HSMul.hSMul,Ne,OfNat.ofNat,HDiv.hDiv,HMul.hMulProof uses:
Eq.mpr,id,congr,congrArg,Eq.trans,smul_sub,Mathlib.Tactic.LinearCombination.eq_of_eq,Neg.neg,Mathlib.Tactic.LinearCombination.smul_const_eq,Mathlib.Tactic.LinearCombination.smul_eq_const,div_self,Mathlib.Tactic.LinearCombination.eq_rearrange,Mathlib.Tactic.Module.NF.eq_of_eval_eq_eval,Nat,Mathlib.Tactic.Module.NF.cons,Prod.mk,RingHom,Int,algebraMap,List.niland 79 more166 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».delta_norm_boundline 324 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NormedAddCommGroup,InnerProductSpace,Real,LE.le,OfNat.ofNat,Eq,HAdd.hAdd,HSub.hSub,HSMul.hSMul,Inner.inner,Norm.norm,HMul.hMul,Real.sqrt,HPow.hPow,NatProof uses:
Eq.rec,norm_add_le_of_le,le_of_sq_le_sq,LE.le.trans,Eq.mpr,id,congrArg,norm_sub_sq_real,norm_smul_of_nonneg,real_inner_smul_right,real_inner_smul_left,real_inner_comm,le_refl,Mathlib.Tactic.LinearCombination.le_of_le,add_le_add,Mathlib.Tactic.LinearCombination.add_le_eq,Mathlib.Tactic.LinearCombination.mul_le_const,Mathlib.Tactic.LinearCombination.mul_const_le,le_of_lt,Mathlib.Meta.Positivity.pos_of_isNatand 69 more167 instances, coercions and auxiliary constants left out.
Tactic trace: 8 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».delta_inductionline 334 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Real,LE.le,OfNat.ofNat,Nat,HAdd.hAdd,HMul.hMul,HSub.hSub,HDiv.hDiv,OfScientific.ofScientific,Bool.true,HPow.hPow,Exists,AndProof uses:
Exists.elim,Max.max,exists_nat_ge,Exists.intro,And.intro,le_sup_left,Iff.mpr,le_div_iff₀,add_pos',LT.lt,Nat.cast_pos',lt_of_lt_of_le,inferInstance,PartialOrder,Zero,Mathlib.Meta.Positivity.pos_of_isNat,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Bool,Nat.bleand 131 more206 instances, coercions and auxiliary constants left out.
Tactic trace: 13 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».bounded_differences_Eline 342 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Arxiv.«1905.10899».Z_space,Real,Differentiable,OfNat.ofNat,ENNReal,Prod, Arxiv.«1905.10899».E_n, Arxiv.«1905.10899».F_m,Fin,GE.ge,Inner.inner,HSub.hSub, Arxiv.«1905.10899».F_operator,NNReal,LT.lt,LE.le,Norm.norm,HMul.hMul, Arxiv.«1905.10899».State and 14 moreProof uses: Arxiv.«1905.10899».bounded_iterates_D_exist,
OfScientific.ofScientific,Bool.true,HPow.hPow,Real.sqrt,HSMul.hSMul,id,Eq.mpr,congrArg,HAdd,Eq.rec,Eq.refl,HSub,HSMul,Inv.inv,congr,Prod.mk,Eq.trans,Nat.cast_add,Mathlib.Meta.NormNum.IsNat.to_eqand 281 more394 instances, coercions and auxiliary constants left out.
Tactic trace: 91 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».F_norm_bound_helperline 422 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NormedAddCommGroup,NormedSpace,Real,Eq,HAdd.hAdd,HSub.hSub,HSMul.hSMul,LT.lt,OfNat.ofNat,LE.le,Norm.norm,HMul.hMul,HDiv.hDivProof uses:
Eq.mpr,id,Eq.trans,Inv.inv,congrArg,congr,div_eq_inv_mul,Eq.mp,sub_add,sub_sub_self,mul_assoc,of_eq_true,True,one_mul146 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».rate_algebraline 430 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Real,LE.le,OfNat.ofNat,LT.lt,HAdd.hAdd,HMul.hMul,Real.sqrt,HDiv.hDiv,HPow.hPow,NatProof uses:
pow_le_pow_left₀,LE.le.trans,Mathlib.Tactic.LinearCombination.le_of_le,Inv.inv,Mathlib.Tactic.LinearCombination.mul_const_le,add_le_add,Mathlib.Meta.Positivity.div_nonneg_of_nonneg_of_pos,Real.sqrt_pos_of_pos,add_pos_of_pos_of_nonneg,inferInstance,PartialOrder,lt_of_lt_of_le,Zero,Mathlib.Meta.Positivity.pos_of_isNat,Mathlib.Meta.NormNum.isNat_ofNat,Nat.cast_one,Eq.refl,Bool,Nat.ble,Mathlib.Tactic.LinearCombination.add_le_eqand 56 more112 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».last_iterate_algebra_h1line 440 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Real,LE.le,OfNat.ofNat,Nat,HDiv.hDiv,Real.sqrt,HAdd.hAddProof uses:
LT.lt,lt_of_not_ge,Mathlib.Tactic.Linarith.lt_irrefl,Eq.mp,Neg.neg,HSub.hSub,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.add_congr,HMul.hMul,HPow.hPow,Nat.rawCast,Mathlib.Tactic.Ring.instCommSemiringNat,Int.rawCast,Int.negOfNat,Mathlib.Tactic.Ring.neg_congr,Mathlib.Tactic.Ring.cast_pos,Mathlib.Meta.NormNum.isNat_ofNat,Nat.cast_one,Mathlib.Tactic.Ring.neg_addand 87 more121 instances, coercions and auxiliary constants left out.
Tactic trace: 23 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».last_iterate_algebra_h2line 458 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Real,LE.le,OfNat.ofNat,Nat,HDiv.hDiv,Real.sqrt,HAdd.hAddProof uses:
LT.lt,lt_of_not_ge,Mathlib.Tactic.Linarith.lt_irrefl,Eq.mp,Neg.neg,HSub.hSub,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.add_congr,HMul.hMul,HPow.hPow,Nat.rawCast,Mathlib.Tactic.Ring.instCommSemiringNat,Int.rawCast,Int.negOfNat,Mathlib.Tactic.Ring.neg_congr,Mathlib.Tactic.Ring.cast_pos,Mathlib.Meta.NormNum.isNat_ofNat,Nat.cast_one,Mathlib.Tactic.Ring.neg_addand 46 more91 instances, coercions and auxiliary constants left out.
Tactic trace: 10 steps
Open to load the checked before-and-after goal states.
- lemma
Arxiv.«1905.10899».last_iterate_algebraline 469 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Real,LE.le,OfNat.ofNat,Nat,LT.lt,HAdd.hAdd,HPow.hPow,HMul.hMul,HDiv.hDiv,Real.sqrtProof uses:
le_of_not_gt,Mathlib.Tactic.Linarith.lt_irrefl,Eq.mp,Neg.neg,HSub.hSub,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.add_congr,Int.rawCast,Int.negOfNat,Nat.rawCast,Mathlib.Tactic.Ring.mul_congr,Mathlib.Tactic.Ring.cast_pos,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Mathlib.Meta.NormNum.instAtLeastTwo,Mathlib.Tactic.Ring.neg_congr,Nat.cast_one,Mathlib.Tactic.Ring.neg_add,Mathlib.Tactic.Ring.neg_one_muland 76 more134 instances, coercions and auxiliary constants left out.
Tactic trace: 6 steps
Open to load the checked before-and-after goal states.
- theorem
Arxiv.«1905.10899».last_iterate_convergenceExact last-iterateO(1/T)convergence for anchored gradient descent-ascent line 491 sourceSource documentation
The last-iterate convergence of Anchored Simultaneous Gradient Descent (SimGD-A) with parameter $p = 1/2$.
This theorem corresponds to the critical boundary case of Theorem 3 in arXiv:1905.10899, where the step size $\alpha_t$ and anchoring coefficient $\beta_t$ are set to achieve an $O(1/T)$ convergence rate on the squared norm of the operator.
While Theorem 3 in the paper is formally stated for $p \in (1/2, 1)$, the "Further discussion" in Section 4.2 identifies $p = 1/2$ as the theoretical limit of stability and discretization.
A DeepMind prover agent was able to proof that convergence holds for $p = 1/2$.
L4DEL explanation
it remained an open problem whether the improved exact O(1/t) rate is achievable
If p ∈ (1/2, 1) and γ ≥ 2, then SimGD-A converges
The proof departs from continuous-time ordinary differential equations (ODE) analysis used in previous work, instead using a discrete-time recurrence-based approach.
For a differentiable convex-concave objective whose saddle operator is monotone and Lipschitz, the schedule
α_t = 1/(K√(t+γ))andβ_t = γ/(t+γ)withγ ≥ 2gives a positive constantCsuch that‖F(z_T)‖² ≤ C/Tfor everyT ≥ 1.- The hypotheses explicitly supply differentiability, monotonicity, a positive Lipschitz constant, and a saddle point
z_starsatisfyingF(z_star)=0. - The sequence is not arbitrary: each state must follow the pinned update rule with the square-root step size and reciprocal anchoring schedule.
- The proof first bounds every iterate relative to the saddle point, then bounds consecutive-iterate differences, and finally rewrites the update to control the last operator value.
- The conclusion is existential in
C; the proof constructs one, but the public theorem promises only that some positive uniform constant works.
Sources and attribution: Pinned Lean source (0647711a7118), Anja Surina et al., improved anchored-GDA paper (2026), Ernest K. Ryu, Kun Yuan, and Wotao Yin, original anchored-SimGD paper (2020 revision), George Tsoukalas et al., AlphaProof Nexus paper (Section 4)
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Arxiv.«1905.10899».Z_space,Real,Differentiable,OfNat.ofNat,ENNReal,Prod, Arxiv.«1905.10899».E_n, Arxiv.«1905.10899».F_m,Fin,GE.ge,Inner.inner,HSub.hSub, Arxiv.«1905.10899».F_operator,NNReal,LT.lt,LE.le,Norm.norm,HMul.hMul, Arxiv.«1905.10899».State and 15 moreProof uses: Arxiv.«1905.10899».bounded_iterates_D_exist, Arxiv.«1905.10899».bounded_differences_E,
Exists.intro,And.intro,sq_nonneg,lt_of_not_ge,Mathlib.Tactic.Linarith.lt_irrefl,Eq.mp,Neg.neg,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.add_congr,Int.rawCast,Int.negOfNat,Nat.rawCast,Mathlib.Tactic.Ring.instCommSemiringNat,Mathlib.Tactic.Ring.mul_congr,Mathlib.Tactic.Ring.cast_pos,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refland 110 more301 instances, coercions and auxiliary constants left out.
Tactic trace: 48 steps
Open to load the checked before-and-after goal states.
theorem last_iterate_convergence (L : (Z_space n m) → ℝ) (h_diff : Differentiable ℝ L) (h_monotone : ∀ z w : Z_space n m, inner ℝ (F_operator n m L z - F_operator n m L w) (z - w) ≥ (0 : ℝ)) -- Convex-Concave (K : NNReal) (h_K_nonneg : 0 < K) -- Lipschitz-Continuous (h_lipschitz : ∀ z w : Z_space n m, ‖F_operator n m L z - F_operator n m L w‖ ≤ K * ‖z - w‖) -- Algorithm Parameter …Mentions: Arxiv.«1905.10899».Z_space, Arxiv.«1905.10899».F_operator, K
- The hypotheses explicitly supply differentiability, monotonicity, a positive Lipschitz constant, and a saddle point