Theorem 2 — with ,
ProvedRandomGradFree.Nonsmooth.gradient_smoothing_mem_epsSubdiffLet be a real inner product space of dimension , let be convex and Lipschitz continuous with constant , and let . Put . For let be the gradient of the Gaussian smoothing ; for let be the limiting vector of Eq. (24), where is the directional derivative. Then for every the vector is an -subgradient of at :
Thus the expected output of the random oracle is an approximate subgradient of the original nonsmooth function, with an error that vanishes linearly in .
Formalization Note The -subdifferential (p. 532) is written out as the inequality above. For the vector is Mathlib's gradient of (which is differentiable, Eq. (21)); for it is of Eq. (24), written as the Gaussian expectation of the shared oracle at , (Eq. (30), item 3). At the statement is , Eq. (31).
import Mathlib import Definitions.Def_RandomGradFree_Shared_smoothing import Definitions.Def_RandomGradFree_Shared_oracle open MeasureTheory ProbabilityTheory
namespace RandomGradFree.Nonsmooth
theorem gradient_smoothing_mem_epsSubdiff {E : Type*} [NormedAddCommGroup E] [InnerProductSpace ℝ E]
[FiniteDimensional ℝ E] [MeasurableSpace E] [BorelSpace E]
(f : E → ℝ) (hf : ConvexOn ℝ Set.univ f)
(L₀ : ℝ) (hL₀ : 0 ≤ L₀) (hLip : ∀ x y, |f x - f y| ≤ L₀ * ‖x - y‖)
(μ : ℝ) (hμ : 0 ≤ μ) (x : E) :
∀ y : E, f y ≥ f x - μ * L₀ * Real.sqrt (Module.finrank ℝ E)
+ inner ℝ (if μ = 0 then ∫ u, RandomGradFree.Shared.oracle f 0 x u ∂(stdGaussian E)
else gradient (RandomGradFree.Shared.smoothing f μ) x) (y - x) := by sorry
end RandomGradFree.Nonsmooth
Read-back
What the Lean code literally says, in plain math · claude-opus-5-5
Setting. is a finite-dimensional real inner product space, with its Borel -algebra. Write:
- ;
- for Mathlib's standard Gaussian probability measure on ;
- for the inner product.
Two functions come from imported files whose code was not supplied, so their meaning cannot be unfolded here:
- ;
- , a value in that depends on , the number , a point and a variable . It must lie in because it is integrated to give a vector that enters the inner product.
Hypotheses.
- is convex on all of .
- is a real number with .
- For all : . That is, is -Lipschitz.
- is a real number with .
- is a fixed point of .
No integrability or differentiability hypothesis is made.
The vector . Define
Two conventions matter here:
- The integral is a Bochner integral. If is not -integrable, the integral is defined to be .
- is Mathlib's gradient. If is not differentiable at , the gradient is defined to be .
Conclusion. For every ,
Degenerate cases.
- Junk-value zeros. If the relevant integral fails to exist (), or is not differentiable at (), then . The statement then asserts for all .
- . The correction term vanishes, and the claim is , with the oracle integral (or if it does not exist).
- . The Lipschitz hypothesis forces to be constant. The claim becomes for all .
- . has only the point , so and . The claim reduces to , which holds trivially.
- No vacuous case. The hypotheses can always be satisfied, for example by a constant with any .
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.