Optimality of a feasible penalty cluster point
ProvedVectorSpaceOpt.penalty_cluster_point_optimalLet a subsequence of x n converge to a feasible point x₀, and let f be lower semicontinuous at x₀. Assume a feasible point xStar globally minimizes f on the constraint set and that f (x n) ≤ f xStar for every n. Then
and x₀ is itself a global constrained minimizer. This is the optimality half of the cluster-point argument on p. 306. It cleanly separates the lower-semicontinuous objective limit from feasibility recovery, and it states feasibility of both reference and limit points explicitly because Mathlib's IsMinOn predicate alone does not include set membership.
import Definitions.Def_VectorSpaceOpt_quadratic_penalty open Filter Set
namespace VectorSpaceOpt
/-- The optimality half of Luenberger, Chapter 10, §10.11, Theorem 1. -/
theorem penalty_cluster_point_optimal
{X : Type*} [TopologicalSpace X] {p : ℕ} (f : X → ℝ)
(G : X → Fin p → ℝ) (x : ℕ → X) (xStar x₀ : X) (phi : ℕ → ℕ)
(hphi : StrictMono phi)
(hxlim : Tendsto (x ∘ phi) atTop (nhds x₀))
(hflsc : LowerSemicontinuousAt f x₀)
(hupper : ∀ n, f (x n) ≤ f xStar)
(hfeasStar : IsConstraintFeasible G xStar)
(hminStar : IsMinOn f {y | IsConstraintFeasible G y} xStar)
(hfeas₀ : IsConstraintFeasible G x₀) :
f x₀ = f xStar ∧ IsMinOn f {y | IsConstraintFeasible G y} x₀ := by
sorry
end VectorSpaceOptRead-back
What the Lean code literally says, in plain math · gpt-5
Let be an arbitrary topological space, , , , , , and . Assume is strictly increasing, tends to , is lower semicontinuous at , and for every . Assume for every , for every feasible with all , and itself is feasible. Then , and for every feasible . No member is assumed feasible, and no relation to penalty parameters or penalized minimization is present in this theorem. The space need not be Hausdorff; for , every point is feasible.
Confirmed by the mission captain (proposal self-audit).