Computational Optimal Transport IV: The Support Graph of an Extreme Point of the Transportation Polytope U(a, b) Has No Cycle, Hence at Most n + m − 1 Nonzero EntriesTextbook
Motivation
Discrete optimal transport between two histograms is a linear program. Its feasible set, the transportation polytope, has been studied since Hitchcock (1941) and Kantorovich, and the structure of its vertices underlies the classical algorithms for the problem: the north-west corner rule produces a vertex, and the network simplex moves from vertex to vertex. A linear program with a nonempty bounded feasible set attains its minimum at a vertex, so knowing what vertices look like tells us what optimal transport plans can be assumed to look like.
This mission is the fourth of a series formalizing G. Peyré and M. Cuturi, Computational Optimal Transport (Foundations and Trends in Machine Learning, 2019). It covers §3.4.1 of the book, Tree Structure of the Support of All Vertices of U(a, b) (pp. 405–407), whose single numbered result, Proposition 3.4, states that the support of a vertex is a forest. The book credits the result to Brualdi, Combinatorial Matrix Classes (2006, Theorem 8.1.2).
Setting
Fix integers and histograms , . The transportation polytope is
the set of nonnegative matrices whose row sums are and whose column sums are . Histograms are nonnegative and sum to one; is the set of couplings between them. The cost of a plan for a cost matrix is .
A point of a set is an extremal point (vertex) of if, whenever and , necessarily .
Take source nodes and target nodes . The complete bipartite graph between them has the edges . For a matrix , the support is the set of edges with , and the support graph is . A transport plan is a flow on the complete bipartite graph, with leaving node and entering node ; records the edges the flow actually uses.
Formalization targets
Goal: Proposition 3.4 (p. 406)
If is an extremal point of , then
Milestones (proof of Proposition 3.4, p. 407)
- If has a cycle, there is a nonzero matrix with , , and .
- For such an and , both and lie in for some .
- A graph with nodes and no cycles has at most edges.
- For , the edges of correspond one-to-one to the nonzero entries of .
Companion (§3.4, p. 405)
For , and any cost , some minimizer of over is an extremal point of .
Significance
Proposition 3.4 is the sparsity statement of discrete optimal transport: a vertex of moves mass along at most source–target pairs, out of possible. With the companion, some optimal plan is that sparse. This is what makes the network simplex method a combinatorial algorithm on spanning trees of the bipartite graph (§3.5 of the book), and it is the reason the north-west corner rule (§3.4.2) can produce a feasible vertex with a tree support. The same fact, specialized to and uniform histograms, is one step on the way from Kantorovich's relaxation back to Monge's assignment problem.
The result is classical and proved; it has not, to our knowledge, been formalized. Mathlib has the transportation polytope only implicitly (no dedicated definition), and it has the edge count of trees (SimpleGraph.IsTree.card_edgeFinset) but not the corresponding bound for forests. The mission produces a machine-checked link between the convex geometry of and the combinatorics of its support graph, reusable by later missions of the series on the network simplex and on the assignment problem.
Difficulty
The convex-geometric half is elementary; the work is in the passage between a cycle of a graph and a matrix. The cycle is an object of Mathlib's graph library (a closed walk with distinct vertices in a graph on ), while the perturbation is a matrix indexed by . An informal picture of a cycle as a list of edges hides what the matrix statement needs: each source and each target must be visited at most once, and Mathlib's cycles are walks whose distinctness conditions have to be carried to the matrix level.
The edge bound for forests is not packaged in Mathlib either: it counts the edges of a tree, a connected acyclic graph, while the support graph of a vertex is in general disconnected, and the empty graph must be handled.
Formalization scope
All objects live in the namespace CompOT.Vertices. Indices are Fin n and Fin m (0-based; the book's ). Matrices are Matrix (Fin n) (Fin m) ℝ, and is the set of matrices with nonnegative entries, row sums and column sums . Extremality is the book's midpoint definition, relative to the set: the points in range over only. This rules out the trivializing reading in which range over all matrices (no point would then be extremal and the goal would be vacuous); conversely, the sanity file shows a non-extremal coupling, so extremality is not automatic either.
The support graph is a SimpleGraph (Fin n ⊕ Fin m) with Sum.inl i adjacent to Sum.inr j exactly when and no other adjacencies. The book calls the edges directed, but the cycles of its proof alternate between sources and targets, so "no cycles" is Mathlib's SimpleGraph.IsAcyclic of this undirected graph. The number of nonzero entries is the cardinality of .
The goal, feasibility milestone and companion carry , , the book's standing notation for histograms (p. 360). These hypotheses make the index sets nonempty, so natural-number subtraction in the bound agrees with the book's integer expression.
Useful infrastructure, reusable beyond this mission: the forest edge bound for finite simple graphs, and the correspondence between cycles of a bipartite graph and signed matrices with zero line sums. Contributions of either as standalone lemmas are welcome.
Selected references
- G. Peyré, M. Cuturi, Computational Optimal Transport, Foundations and Trends in Machine Learning 11(5–6):355–607, 2019. https://doi.org/10.1561/2200000073
- R. A. Brualdi, Combinatorial Matrix Classes, Cambridge University Press, 2006, §8.1. https://doi.org/10.1017/CBO9780511721182
- D. Bertsimas, J. N. Tsitsiklis, Introduction to Linear Optimization, Athena Scientific, 1997, Theorem 2.7.
- F. L. Hitchcock, The distribution of a product from several sources to numerous localities, Journal of Mathematics and Physics 20:224–230, 1941. https://doi.org/10.1002/sapm1941201224