Eq. (4.2): the Hessian of off the surface , where is smooth
ProvedNonsmoothNewton.AugLagrangian.eta_grad_smooth_off_surfaceLet , let be of class , and let . Then
and is continuously differentiable in a neighbourhood of every point with .
That is, is smooth except on the surface ; the remaining work of Theorem 4.1 is semismoothness on that surface.
Formalization Note The Hessian is the Fréchet derivative of the map . Applied to a direction it is stated as the linear functional when , and when , which is the matrix (4.2) applied to and paired with . "Smooth" is the paper's continuously differentiable (ContDiffAt ℝ 1).
import Mathlib import Definitions.Def_NonsmoothNewton_Shared_clarkeJac import Definitions.Def_NonsmoothNewton_AugLagrangian_SemismoothAt import Definitions.Def_NonsmoothNewton_AugLagrangian_augLagrangian open Filter Topology
namespace NonsmoothNewton.AugLagrangian
/-- Qi–Sun (1993), Section 4, Eq. (4.2), p. 364. For `r > 0` and `g ∈ C²`, the Hessian of
`η(x, s) = φ(r, g(x), s)` is, applied to a direction `(h, α)`,
`(r ∇g(x)∇g(x)ᵀ + (s + r g(x)) ∇²g(x)) h + α ∇g(x)` in `x` and `∇g(x)ᵀ h` in `s` where
`s + r g(x) > 0`, and `(0, -α/r)` where `s + r g(x) < 0`; and `∇η` is `C¹` near every point
off the surface `s + r g(x) = 0`. -/
theorem eta_grad_smooth_off_surface {n : ℕ} (r : ℝ) (hr : 0 < r)
(g : EuclideanSpace ℝ (Fin n) → ℝ) (hg : ContDiff ℝ 2 g) :
(∀ z : EuclideanSpace ℝ (Fin n) × ℝ, 0 < z.2 + r * g z.1 →
∀ v : EuclideanSpace ℝ (Fin n) × ℝ,
fderiv ℝ (fun w => fderiv ℝ (eta r g) w) z v =
(r * fderiv ℝ g z.1 v.1 + v.2) • (fderiv ℝ g z.1).comp
(ContinuousLinearMap.fst ℝ (EuclideanSpace ℝ (Fin n)) ℝ)
+ (z.2 + r * g z.1) • (fderiv ℝ (fun u => fderiv ℝ g u) z.1 v.1).comp
(ContinuousLinearMap.fst ℝ (EuclideanSpace ℝ (Fin n)) ℝ)
+ fderiv ℝ g z.1 v.1 • ContinuousLinearMap.snd ℝ (EuclideanSpace ℝ (Fin n)) ℝ) ∧
(∀ z : EuclideanSpace ℝ (Fin n) × ℝ, z.2 + r * g z.1 < 0 →
∀ v : EuclideanSpace ℝ (Fin n) × ℝ,
fderiv ℝ (fun w => fderiv ℝ (eta r g) w) z v =
(-(v.2 / r)) • ContinuousLinearMap.snd ℝ (EuclideanSpace ℝ (Fin n)) ℝ) ∧
(∀ z : EuclideanSpace ℝ (Fin n) × ℝ, z.2 + r * g z.1 ≠ 0 →
ContDiffAt ℝ 1 (fun w => fderiv ℝ (eta r g) w) z) := by sorry
end NonsmoothNewton.AugLagrangian
Read-back
What the Lean code literally says, in plain math · claude-opus-5-5
Setting. Let , let be a real number with , and let be , with Euclidean. Let
where if , and otherwise.
Consider the map . It sends each point of to a linear functional on . Write for the derivative of at applied to a direction ; this is again a linear functional. Write for the derivative of at , applied first to and then to .
Conclusion. The statement asserts all three of the following.
- At every with (strictly), and for every direction , the functional acts on by
- At every with (strictly), and for every direction :
- At every with , the map is continuously differentiable () at .
Nothing is said about points where .
Degenerate cases:
- By default the derivative of a non-differentiable function is . The formulas in items 1 and 2 are stated as literal equalities with the value returned under that convention. Item 3 separately asserts that is differentiable at the points off the surface.
- . is a constant , and . Item 1 then says is the functional wherever .
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.