Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Lemma 2.2 — a feasible flow is at Nash equilibrium iff every used route is a minimum-latency route

Proved
SelfishRouting.Potential.lemma_2_2

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

nash-equilibriump2o-batch-pfp2ap2o-gran-per-chapterp2o-plan-paperp2o-v1selfish-routingwardrop-equilibrium

Consider a routing instance: edges eee with latency functions ℓe\ell_eℓe​ that are nonnegative, nondecreasing and continuous on [0,∞)[0,\infty)[0,∞); routes PPP given by 0/10/10/1 edge–route incidence columns, each serving one commodity iii (the set Pi\mathcal P_iPi​); and positive rates rir_iri​. For a flow fff write ℓP(f)=∑e∈Pℓe(fe)\ell_P(f)=\sum_{e\in P}\ell_e(f_e)ℓP​(f)=∑e∈P​ℓe​(fe​) for the latency of route PPP.

Lemma 2.2. A flow fff feasible for the instance is at Nash equilibrium (Definition 2.1) if and only if, for every commodity iii and all P1,P2∈PiP_1,P_2\in\mathcal P_iP1​,P2​∈Pi​,

fP1>0 ⟹ ℓP1(f)≤ℓP2(f).f_{P_1}>0\ \Longrightarrow\ \ell_{P_1}(f)\le\ell_{P_2}(f).fP1​​>0 ⟹ ℓP1​​(f)≤ℓP2​​(f).

The right-hand side is the Wardrop condition: all routes of a commodity that carry flow have the same latency, and none is longer than an unused route. It is the form of the equilibrium used in every later argument of the paper.

Formalization Note The right-hand side is the published KellyStochasticNetworks.IsWardropEquilibrium, which includes feasibility, so both sides presuppose a feasible flow as the page does. Latency hypotheses are imposed on [0,∞)[0,\infty)[0,∞) only, where flows live; continuity replaces the paper's differentiability, which footnote 3 (p. 7) allows. Routes are arbitrary 0/10/10/1 incidence columns rather than simple paths, a disclosed generalization. Definition 2.1 is read with P1≠P2P_1\ne P_2P1​=P2​ and fP1>0f_{P_1}>0fP1​​>0 (see the definition item).

Preamble
import Mathlib
import Definitions.Def_KellyStochasticNetworks_Wardrop
import Definitions.Def_SelfishRouting_Potential_Model

open KellyStochasticNetworks
Formal statement
namespace SelfishRouting.Potential

theorem lemma_2_2 {J R Sd : ℕ} (A : Fin J → Fin R → ℝ) (s : Fin R → Fin Sd)
    (rate : Fin Sd → ℝ) (ℓ : Fin J → ℝ → ℝ)
    (hA : ∀ j r, A j r = 0 ∨ A j r = 1) (hrate : ∀ i, 0 < rate i)
    (hℓnn : ∀ j t, 0 ≤ t → 0 ≤ ℓ j t)
    (hℓmono : ∀ j, MonotoneOn (ℓ j) (Set.Ici 0))
    (hℓcont : ∀ j, ContinuousOn (ℓ j) (Set.Ici 0))
    (x : Fin R → ℝ) :
    IsNashFlow A s ℓ rate x ↔ IsWardropEquilibrium A s ℓ rate x := by sorry

end SelfishRouting.Potential
Source
Roughgarden & Tardos, How Bad is Selfish Routing?, J. ACM 49(2) (2002), author's manuscript of 5 Dec 2001, p. 7, Lemma 2.2
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