Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

MinWork belongs to the VGC family (proof of Claim 4.2)

Proved
AlgMechDesign.MinWork.minwork_is_vgc

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

mechanism-designp2o-batch-p200bp2o-gran-per-chapterp2o-plan-paperp2o-v1schedulingvcg

Let n≥2n \ge 2n≥2 agents and kkk tasks be given, let x(⋅)x(\cdot)x(⋅) be any MinWork allocation rule (every task goes to an agent with minimal declared time, ties broken arbitrarily), and let ttt be a positive type vector. Then:

  1. x(t)x(t)x(t) maximizes the utilitarian function over all allocations yyy:
∑i=1nvi(ti,y)≤∑i=1nvi(ti,x(t)),vi(ti,y)=−∑j∈yitji.\sum_{i=1}^n v^i(t^i, y) \le \sum_{i=1}^n v^i(t^i, x(t)), \qquad v^i(t^i, y) = -\sum_{j \in y^i} t^i_j .i=1∑n​vi(ti,y)≤i=1∑n​vi(ti,x(t)),vi(ti,y)=−j∈yi∑​tji​.
  1. For every agent iii the MinWork payment has the Groves form
pi(t)=∑i′≠ivi′(ti′,x(t))+h−i(t),h−i(t)=∑j=1kmin⁡i′≠itji′.p^i(t) = \sum_{i' \neq i} v^{i'}\big(t^{i'}, x(t)\big) + h^{-i}(t), \qquad h^{-i}(t) = \sum_{j=1}^k \min_{i' \neq i} t^{i'}_j .pi(t)=i′=i∑​vi′(ti′,x(t))+h−i(t),h−i(t)=j=1∑k​i′=imin​tji′​.
  1. h−ih^{-i}h−i depends only on t−it^{-i}t−i: replacing tit^iti by any other vector leaves it unchanged.

Together these say MinWork is a VGC mechanism (Definition 7), so by Groves' theorem (Theorem 3.1) it is truthful.

Formalization Note Part 3 makes explicit the paper's requirement that hih^ihi be "an arbitrary function of t−it^{-i}t−i".

Preamble
import Mathlib
import Definitions.Def_AlgMechDesign_MinWork_Model
import Definitions.Def_AlgMechDesign_MinWork_Mechanism
Formal statement
namespace AlgMechDesign.MinWork

open Finset

/-- MinWork belongs to the VGC family (proof of Claim 4.2): its allocation maximizes the
utilitarian function `∑ᵢ vⁱ(tⁱ, x) = -∑ᵢ tⁱ(xⁱ)` over all allocations, and its payment to
agent `i` equals `∑_{i' ≠ i} v^{i'}(t^{i'}, x(t)) + h^{-i}(t)` with
`h^{-i}(t) = ∑_j min_{i' ≠ i} t^{i'}_j`, a quantity that does not depend on `tⁱ`. -/
theorem minwork_is_vgc {n k : ℕ} (hn : 2 ≤ n)
    (alloc : (Fin n → Fin k → ℝ) → (Fin k → Fin n)) (hmin : IsMinWorkAlloc alloc)
    (t : Fin n → Fin k → ℝ) (ht : IsType t) :
    (∀ x : Fin k → Fin n, ∑ i, -(load t x i) ≤ ∑ i, -(load t (alloc t) i)) ∧
    (∀ i : Fin n,
      minWorkPay hn alloc t i =
        ∑ i' ∈ univ.erase i, -(load t (alloc t) i') + ∑ j, secondBest hn t i j) ∧
    (∀ (i : Fin n) (ti' : Fin k → ℝ),
      ∑ j, secondBest hn (Function.update t i ti') i j = ∑ j, secondBest hn t i j) := by sorry

end AlgMechDesign.MinWork
Source
Nisan, Ronen, Algorithmic Mechanism Design, Games Econ. Behav. 35, 2001, p. 177, proof of Claim 4.2, first paragraph (with Definition 7, p. 173)
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