Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Corollary 7.3 — the LP value function is finite convex polyhedral on pos A, or identically −∞

Proved
Wets1974.Stability.LPValue_polyhedral_or_bot

by mikedeng1 · Sep 29, 2026 · Mathlib 0df444a (Lean v4.33.1)

convex-analysislinear-programmingp2o-batch-p200bp2o-gran-per-chapterp2o-plan-paperp2o-v1parametric-lp

Let AAA be a real m×nm\times nm×n matrix and c∈Rnc\in\mathbb R^nc∈Rn a row vector. For t∈Rmt\in\mathbb R^mt∈Rm let

Q(t)=min⁡{cx∣Ax=t, x≥0}∈[−∞,+∞]Q(t)=\min\{cx \mid Ax=t,\ x\ge 0\}\in[-\infty,+\infty]Q(t)=min{cx∣Ax=t, x≥0}∈[−∞,+∞]

(with +∞+\infty+∞ for an infeasible and −∞-\infty−∞ for an unbounded program), and let pos⁡A={Ax:x≥0}\operatorname{pos}A=\{Ax: x\ge 0\}posA={Ax:x≥0}. Then exactly the following dichotomy holds:

  1. either QQQ is a finite convex polyhedral function on pos⁡A\operatorname{pos}AposA: there are finitely many affine functions a0,…,aka_0,\dots,a_ka0​,…,ak​ on Rm\mathbb R^mRm with
Q(t)=max⁡0≤i≤kai(t)∈Rfor every t∈pos⁡A;Q(t)=\max_{0\le i\le k}a_i(t)\in\mathbb R\qquad\text{for every }t\in\operatorname{pos}A;Q(t)=0≤i≤kmax​ai​(t)∈Rfor every t∈posA;
  1. or Q(t)=−∞Q(t)=-\inftyQ(t)=−∞ for every t∈pos⁡At\in\operatorname{pos}At∈posA.

In the paper's words, QQQ is finite convex polyhedral on pos⁡A\operatorname{pos}AposA unless Q(t)=−∞Q(t)=-\inftyQ(t)=−∞ for some t∈pos⁡At\in\operatorname{pos}At∈posA, in which case it is identically −∞-\infty−∞ there. This is the parametric-LP fact that makes the recourse function Q(x,ξ)Q(x,\xi)Q(x,ξ) piecewise linear in its right-hand side, and it drives Proposition 7.5 and Theorem 7.6.

Formalization Note QQQ is the platform definition KallMayer.Recourse.LPValue A c t. The paper's Theorem 7.2 assumes AAA has rank mmm; Corollary 7.3 holds without it, and this statement omits it, which makes it stronger. "Convex polyhedral" is read as the maximum of finitely many affine functions (see the definition file); the paper never defines it.

Preamble
import Mathlib
import Definitions.Def_KallMayer_Recourse_LPValue
import Definitions.Def_Wets1974_Stability_ConvexAnalysis
Formal statement
namespace Wets1974.Stability

/-- Corollary 7.3, p. 328: the value function `Q(t) = min {c x | A x = t, x ≥ 0}` is a finite
convex polyhedral function on `pos A`, unless `Q(t) = −∞` for some `t ∈ pos A`, in which case
it is identically `−∞` on `pos A`. -/
theorem LPValue_polyhedral_or_bot {m n : ℕ} (A : Matrix (Fin m) (Fin n) ℝ) (c : Fin n → ℝ) :
    IsFiniteConvexPolyhedralOn (fun t => KallMayer.Recourse.LPValue A c t) (posCone A) ∨
      ∀ t ∈ posCone A, KallMayer.Recourse.LPValue A c t = ⊥ := by sorry

end Wets1974.Stability
Source
Wets, Stochastic Programs with Fixed Recourse: The Equivalent Deterministic Program, SIAM Review 16(3), 1974, p. 328, Corollary 7.3
Human review
  • Endorsed by Shuze Chen · Oct 1, 2026

    Confirmed by the moderator at approval.

  • Endorsed by mikedeng1 · Oct 1, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me