Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Theorem 2.1 — optimal redistribution: min⁡qD(J;q)=DJ\min_q D(J;q)=D_Jminq​D(J;q)=DJ​, attained at qˉ\bar qqˉ​ of (7)

Proved
ScenarioReduction.ForwardSelection.redistribution

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

optimal-transportp2o-batch-p100bp2o-gran-per-chapterp2o-plan-paperp2o-v1scenario-reduction

Let ω1,…,ωN\omega_1,\dots,\omega_Nω1​,…,ωN​ be scenarios in a finite-dimensional normed space with probabilities pi>0p_i>0pi​>0, ∑ipi=1\sum_ip_i=1∑i​pi​=1, and let ccc be the cost (3) built from a growth function hhh and a point ω0\omega_0ω0​. Let J⊂{1,…,N}J\subset\{1,\dots,N\}J⊂{1,…,N} be a set of deleted scenarios with at least one scenario kept. For a reduced weight qqq (qj≥0q_j\ge 0qj​≥0, ∑j∉Jqj=1\sum_{j\notin J}q_j=1∑j∈/J​qj​=1) let D(J;q)D(J;q)D(J;q) be the optimal value of the linear transportation problem between P=∑ipiδωiP=\sum_ip_i\delta_{\omega_i}P=∑i​pi​δωi​​ and Q=∑j∉JqjδωjQ=\sum_{j\notin J}q_j\delta_{\omega_j}Q=∑j∈/J​qj​δωj​​ with cost ccc. Then

DJ=min⁡{D(J;q):qj≥0, ∑j∉Jqj=1}=∑i∈Jpimin⁡j∉Jc(ωi,ωj).D_J=\min\Bigl\{D(J;q):q_j\ge 0,\ \sum_{j\notin J}q_j=1\Bigr\}=\sum_{i\in J}p_i\min_{j\notin J}c(\omega_i,\omega_j).DJ​=min{D(J;q):qj​≥0, j∈/J∑​qj​=1}=i∈J∑​pi​j∈/Jmin​c(ωi​,ωj​).

Moreover, for every choice j(i)∈arg⁡min⁡j∉Jc(ωi,ωj)j(i)\in\arg\min_{j\notin J}c(\omega_i,\omega_j)j(i)∈argminj∈/J​c(ωi​,ωj​) (i∈Ji\in Ji∈J), the minimum is attained at the redistributed weight

qˉj=pj+∑i∈Jjpi,Jj={i∈J:j(i)=j},j∉J,\bar q_j=p_j+\sum_{i\in J_j}p_i,\qquad J_j=\{i\in J:j(i)=j\},\qquad j\notin J,qˉ​j​=pj​+i∈Jj​∑​pi​,Jj​={i∈J:j(i)=j},j∈/J,

which is itself a reduced weight, and D(J;qˉ)=DJD(J;\bar q)=D_JD(J;qˉ​)=DJ​.

The theorem turns the optimal reduction problem into the combinatorial problem (8) of choosing JJJ: once the deleted set is fixed, the best reduced measure moves the mass of each deleted scenario to a nearest kept one.

Formalization Note D(J;q)D(J;q)D(J;q) is the paper's own finite transportation problem (p. 188), not the Kantorovich functional on measures. The first part is stated as: DJD_JDJ​ is the least value of the transportation cost over all pairs (reduced weight qqq, feasible plan η\etaη). The second part states that qˉ\bar qqˉ​ is a reduced weight and DJD_JDJ​ is the least transportation cost over plans with second marginal qˉ\bar qqˉ​. The hypothesis that JJJ has nonempty complement is necessary: for J={1,…,N}J=\{1,\dots,N\}J={1,…,N} no reduced weight exists.

Preamble
import Mathlib
import Definitions.Def_ScenarioReduction_ForwardSelection_fmCost
import Definitions.Def_ScenarioReduction_ForwardSelection_reductionCost
import Definitions.Def_ScenarioReduction_ForwardSelection_IsTransportPlan
Formal statement
namespace ScenarioReduction.ForwardSelection

/-- Theorem 2.1 (redistribution), Heitsch–Römisch 2003, p. 190. For the cost (3) and a set `J` of
deleted scenarios with nonempty complement, `D_J` is the minimum of the transportation cost over all
reduced weights `q` and all plans `η` between `P` and `Q`, and the minimum is attained at the
redistributed weight `q̄` of (7), for every choice of nearest kept scenarios `j(i)`. -/
theorem redistribution {E : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E]
    [FiniteDimensional ℝ E] {N : ℕ} (h : ℝ → ℝ) (hh : IsGrowthFunction h) (ω₀ : E)
    (ω : Fin N → E) (p : Fin N → ℝ) (hp : ∀ i, 0 < p i) (hsum : ∑ i, p i = 1)
    (J : Finset (Fin N)) (hJ : Jᶜ.Nonempty) :
    IsLeast {v : ℝ | ∃ q : Fin N → ℝ, ∃ η : Fin N → Fin N → ℝ, IsReducedWeight J q ∧
        IsTransportPlan J p q η ∧ v = transportCost (scenCost h ω₀ ω) J η}
      (reductionCost (scenCost h ω₀ ω) p J hJ) ∧
    ∀ jsel : Fin N → Fin N,
      (∀ i ∈ J, jsel i ∉ J ∧ ∀ j, j ∉ J → scenCost h ω₀ ω i (jsel i) ≤ scenCost h ω₀ ω i j) →
      IsReducedWeight J (redistWeight p J jsel) ∧
      IsLeast {v : ℝ | ∃ η : Fin N → Fin N → ℝ, IsTransportPlan J p (redistWeight p J jsel) η ∧
          v = transportCost (scenCost h ω₀ ω) J η}
        (reductionCost (scenCost h ω₀ ω) p J hJ) := by sorry

end ScenarioReduction.ForwardSelection
Source
Heitsch, Römisch, Scenario Reduction Algorithms in Stochastic Programming, Comput. Optim. Appl. 24 (2003), p. 190, Theorem 2.1, eqs. (6)–(7)
Read-back

What the Lean code literally says, in plain math · claude-opus-5-5

Setting and hypotheses.

  • EEE is a finite-dimensional real normed vector space (dimension 000 allowed).
  • h:R→Rh:\mathbb R\to\mathbb Rh:R→R is continuous and nondecreasing on [0,∞)[0,\infty)[0,∞), with h(0)=0h(0)=0h(0)=0 and h≥0h\ge0h≥0 on [0,∞)[0,\infty)[0,∞).
  • ω0∈E\omega_0\in Eω0​∈E is a reference point.
  • N∈NN\in\mathbb NN∈N, and ω0′,…,ωN−1′∈E\omega'_0,\dots,\omega'_{N-1}\in Eω0′​,…,ωN−1′​∈E are scenarios indexed by [N]={0,…,N−1}[N]=\{0,\dots,N-1\}[N]={0,…,N−1}.
  • pi>0p_i>0pi​>0 for every iii, and ∑ipi=1\sum_i p_i=1∑i​pi​=1.
  • J⊆[N]J\subseteq[N]J⊆[N] is a set whose complement is nonempty.

Cost matrix.

Cij=max⁡{1,h(∥ωi′−ω0∥),h(∥ωj′−ω0∥)} ∥ωi′−ωj′∥.C_{ij}=\max\{1,h(\|\omega'_i-\omega_0\|),h(\|\omega'_j-\omega_0\|)\}\,\|\omega'_i-\omega'_j\|.Cij​=max{1,h(∥ωi′​−ω0​∥),h(∥ωj′​−ω0​∥)}∥ωi′​−ωj′​∥.

Reduction cost.

DJ=∑i∈Jpimin⁡j∉JCij.D_J=\sum_{i\in J}p_i\min_{j\notin J}C_{ij}.DJ​=i∈J∑​pi​j∈/Jmin​Cij​.

Reduced weight and transport plan.

  • A reduced weight is a qqq with qj≥0q_j\ge0qj​≥0 for j∉Jj\notin Jj∈/J, qj=0q_j=0qj​=0 for j∈Jj\in Jj∈J, and ∑j∉Jqj=1\sum_{j\notin J}q_j=1∑j∈/J​qj​=1.
  • A transport plan between ppp and qqq is an array η\etaη with:
    • ηij≥0\eta_{ij}\ge0ηij​≥0 for j∉Jj\notin Jj∈/J;
    • ηij=0\eta_{ij}=0ηij​=0 for j∈Jj\in Jj∈J;
    • ∑i∈[N]ηij=qj\sum_{i\in[N]}\eta_{ij}=q_j∑i∈[N]​ηij​=qj​ for each j∉Jj\notin Jj∈/J;
    • ∑j∉Jηij=pi\sum_{j\notin J}\eta_{ij}=p_i∑j∈/J​ηij​=pi​ for every i∈[N]i\in[N]i∈[N].
  • Its cost is T(η)=∑i∈[N]∑j∉JCijηijT(\eta)=\sum_{i\in[N]}\sum_{j\notin J}C_{ij}\eta_{ij}T(η)=∑i∈[N]​∑j∈/J​Cij​ηij​.

Claim 1. DJD_JDJ​ is the least element of

{ T(η): q a reduced weight, η a transport plan between p and q }.\{\,T(\eta):\ q\text{ a reduced weight},\ \eta\text{ a transport plan between }p\text{ and }q\,\}.{T(η): q a reduced weight, η a transport plan between p and q}.

That is, DJD_JDJ​ is attained by some pair (q,η)(q,\eta)(q,η), and DJ≤T(η)D_J\le T(\eta)DJ​≤T(η) for every such pair.

Claim 2. Take any σ:[N]→[N]\sigma:[N]\to[N]σ:[N]→[N] such that, for every i∈Ji\in Ji∈J:

  • σ(i)∉J\sigma(i)\notin Jσ(i)∈/J, and
  • Ciσ(i)≤CijC_{i\sigma(i)}\le C_{ij}Ciσ(i)​≤Cij​ for all j∉Jj\notin Jj∈/J.

Define qˉj=0\bar q_j=0qˉ​j​=0 for j∈Jj\in Jj∈J and qˉj=pj+∑i∈J, σ(i)=jpi\bar q_j=p_j+\sum_{i\in J,\,\sigma(i)=j}p_iqˉ​j​=pj​+∑i∈J,σ(i)=j​pi​ for j∉Jj\notin Jj∈/J. Then:

  • qˉ\bar qqˉ​ is a reduced weight, and
  • DJD_JDJ​ is the least element of {T(η):η a transport plan between p and qˉ}\{T(\eta):\eta\text{ a transport plan between }p\text{ and }\bar q\}{T(η):η a transport plan between p and qˉ​}.

Values of σ\sigmaσ at indices outside JJJ are irrelevant.

Degenerate cases.

  • ∑pi=1\sum p_i=1∑pi​=1 forces N≥1N\ge1N≥1, and the complement hypothesis excludes J=[N]J=[N]J=[N].
  • For J=∅J=\varnothingJ=∅: DJ=0D_J=0DJ​=0, qˉ=p\bar q=pqˉ​=p, and both claims assert that 000 is the least attainable transport cost.
  • If EEE has dimension 000, all scenarios equal ω0\omega_0ω0​, every Cij=0C_{ij}=0Cij​=0, and every set above is {0}\{0\}{0} or contains only 000.
  • Values of hhh on negative numbers never enter, since only norms are passed to hhh.
Human review
  • Endorsed by Shuze Chen · Sep 27, 2026

    Confirmed by the moderator at approval.

  • Endorsed by mikedeng1 · Sep 27, 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