Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Corollary 1, p. 496 — the quantity hedge region and size shrink, and Ω₁ expands in a₁⁰ and contracts in a₂⁰

Proved
MitigateSupplyRisk.DualSourcing.corollary_1

by mikedeng1 · Oct 7, 2026 · Mathlib 0df444a (Lean v4.33.1)

comparative-staticsinventoryp2o-batch-pfp2bp2o-gran-per-chapterp2o-plan-paperp2o-v1supply-risk

Work in the setting of Theorem 2: deterministic demand, no committed cost (η1=η2=0\eta_1 = \eta_2 = 0η1​=η2​=0), 0<ϕi<10 < \phi_i < 10<ϕi​<1, Gi(Ki,a)=1G_i(K_i, a) = 1Gi​(Ki​,a)=1 for every reliability index aaa, and ϕ1≥ϕ2\phi_1 \ge \phi_2ϕ1​≥ϕ2​. Let Ω1(a)\Omega_1(a)Ω1​(a) be the single-sourcing region, Ω3∪Ω4∪Ω5 (a)\Omega_3 \cup \Omega_4 \cup \Omega_5\,(a)Ω3​∪Ω4​∪Ω5​(a) the quantity-hedge region, and q1∗(a,x)+q2∗(a,x)q_1^*(a, x) + q_2^*(a, x)q1∗​(a,x)+q2∗​(a,x) the optimal total order of Theorem 2 at reliability indices aaa and demand xxx.

Raise one supplier's reliability index from sss to s′≥ss' \ge ss′≥s, keeping the other index fixed. Then:

  1. (a) the quantity-hedge region contracts, Ω3∪Ω4∪Ω5 (a′)⊆Ω3∪Ω4∪Ω5 (a)\Omega_3 \cup \Omega_4 \cup \Omega_5\,(a') \subseteq \Omega_3 \cup \Omega_4 \cup \Omega_5\,(a)Ω3​∪Ω4​∪Ω5​(a′)⊆Ω3​∪Ω4​∪Ω5​(a), and for every demand x≥0x \ge 0x≥0 the quantity hedge size does not increase:
[q1∗(a′,x)+q2∗(a′,x)−x]+≤[q1∗(a,x)+q2∗(a,x)−x]+;[q_1^*(a', x) + q_2^*(a', x) - x]^+ \le [q_1^*(a, x) + q_2^*(a, x) - x]^+;[q1∗​(a′,x)+q2∗​(a′,x)−x]+≤[q1∗​(a,x)+q2∗​(a,x)−x]+;
  1. (b) the single-sourcing region expands when supplier 1's index is raised, Ω1(a)⊆Ω1(a′)\Omega_1(a) \subseteq \Omega_1(a')Ω1​(a)⊆Ω1​(a′), and contracts when supplier 2's index is raised, Ω1(a′)⊆Ω1(a)\Omega_1(a') \subseteq \Omega_1(a)Ω1​(a′)⊆Ω1​(a).

As suppliers become more reliable, the firm has less need to over-order to hedge against capacity shortfalls.

Formalization Note. The regions and total order are those of Theorem 2 with corrected bounds; the hedge region Ω3∪Ω4∪Ω5\Omega_3 \cup \Omega_4 \cup \Omega_5Ω3​∪Ω4​∪Ω5​ is unchanged by the correction. Under Gi(Ki)=1G_i(K_i) = 1Gi​(Ki​)=1 the labelling hypothesis ϕ1G1(K1)≥ϕ2G2(K2)\phi_1 G_1(K_1) \ge \phi_2 G_2(K_2)ϕ1​G1​(K1​)≥ϕ2​G2​(K2​) of Theorem 2 reads ϕ1≥ϕ2\phi_1 \ge \phi_2ϕ1​≥ϕ2​, and the upper end K1−G1−1(ϕ2ϕ1G2(K2))K_1 - G_1^{-1}(\tfrac{\phi_2}{\phi_1} G_2(K_2))K1​−G1−1​(ϕ1​ϕ2​​G2​(K2​)) of Ω1\Omega_1Ω1​ does not depend on a2a_2a2​, so the contraction in a2a_2a2​ holds with equality. Strict increase of GiG_iGi​ is not needed for these statements and is not assumed.

Preamble
import Mathlib
import Definitions.Def_MitigateSupplyRisk_DualSourcing_Model
import Definitions.Def_MitigateSupplyRisk_DualSourcing_Regions

open MeasureTheory ProbabilityTheory
Formal statement
namespace MitigateSupplyRisk.DualSourcing

/-- Corollary 1 (Wang, Gilland, Tomlin 2010, p. 496), in the setting of Theorem 2 (`η = 0`,
`0 < φ_i < 1`, `G_i(K_i, a) = 1` at every reliability index, and `φ₁ ≥ φ₂`, which is the
ordering `φ₁ G₁(K₁) ≥ φ₂ G₂(K₂)` under `G_i(K_i) = 1`). Raise supplier `i`'s reliability index
from `s` to `s' ≥ s`, the other index fixed. Then
(a) the quantity-hedge region `Ω₃ ∪ Ω₄ ∪ Ω₅` contracts, and for every demand `x ≥ 0` the hedge
size `[q₁* + q₂* − x]⁺` of Theorem 2's optimal vector does not increase;
(b) the single-sourcing region `Ω₁` expands when `i` is supplier 1 and contracts when `i` is
supplier 2. -/
theorem corollary_1 (M : Model)
    (hη : ∀ i, M.η i = 0)
    (hφpos : ∀ i, 0 < M.phi i) (hφlt : ∀ i, M.phi i < 1)
    (hGK : ∀ i a, M.G i (M.K i) a = 1)
    (hord : M.phi 1 ≤ M.phi 0)
    (i : Fin 2) (a : Fin 2 → ℝ) (s s' : ℝ) (hss' : s ≤ s') :
    -- (a) the hedge region contracts
    M.hedgeRegion (Function.update a i s') ⊆ M.hedgeRegion (Function.update a i s) ∧
    -- (a) the hedge size decreases
    (∀ x : ℝ, 0 ≤ x →
      max (M.qstarTotal (Function.update a i s') x - x) 0 ≤
        max (M.qstarTotal (Function.update a i s) x - x) 0) ∧
    -- (b) Ω₁ expands as supplier 1's index increases
    (i = 0 → M.singleRegion (Function.update a i s) ⊆ M.singleRegion (Function.update a i s')) ∧
    -- (b) Ω₁ contracts as supplier 2's index increases
    (i = 1 → M.singleRegion (Function.update a i s') ⊆ M.singleRegion (Function.update a i s)) := by sorry

end MitigateSupplyRisk.DualSourcing
Source
Wang, Gilland, Tomlin, Mitigating Supply Risk: Dual Sourcing or Process Improvement?, Manufacturing & Service Operations Management 12(3):489–510 (2010), p. 496 (PDF p. 8), Corollary 1
Human review
  • Endorsed by Shuze Chen · Oct 7, 2026

    Confirmed by the moderator at approval.

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