Odd Minimum Cut-Sets and b-Matchings 1: A Minimum-Weight Odd-Splitting Edge of the Gomory–Hu Cut-Tree Defines an Odd Minimum Cut-SetResearch Paper
Motivation
Edmonds showed that the convex hull of the matchings of a graph is described by the degree constraints together with the blossom inequalities, one for every odd set of nodes (Edmonds 1965). There are exponentially many of them, so any cutting-plane method for matching and b-matching problems must answer a separation question: given a fractional point, find a violated blossom inequality or certify that none exists. Padberg and Rao (1982) reduced this question to a purely graph-theoretic one, the odd minimum cut-set problem, and solved that problem in polynomial time with a single Gomory–Hu computation. The same subroutine underlies separation for many other odd-set constraints (for example the 2-matching and comb-type constraints of the travelling salesman polytope), and later work refined its running time (Letchford, Reinelt and Theis 2008).
This mission covers Section 1 of the paper: the combinatorial theorem about odd cuts, independent of matchings. A companion mission covers the reduction from capacitated b-matching separation (Section 3).
Setting
Let be a finite undirected graph without loops and multiple edges, with edge weights . Write for the weight of the edge , with , and if there is no such edge. For the cut-set is the set of edges with exactly one end in , and its capacity is
A nonempty set of nodes is labelled odd, the rest even. For the label is odd if is odd, and even otherwise; is even. The paper assumes throughout that is even, i.e. is even. A cut-set is odd if is odd, and an odd minimum cut-set is a solution of
A cut-set is a minimum cut-set with respect to all pairs of odd nodes if it separates two odd nodes and no cut-set separating two odd nodes has smaller capacity.
A cut-tree for the odd nodes is the output of the Gomory–Hu algorithm applied to all pairs of odd nodes (Gomory and Hu 1961). Each tree node contains exactly one odd node and possibly some even ones, so is identified with , and each node of belongs to one tree node . Removing a tree edge splits into two subtrees; the nodes of in the tree nodes of the -side subtree form a set , and the weight of is . The defining property (Hu, Theorem 9.2) is that for every tree edge the cut-set is a minimum cut-set of separating and . The cardinality of a subtree is its number of tree nodes.
Formalization targets
Goal: Theorem 1.1 (p. 70)
For every cut-tree of for the odd nodes:
- some edge of decomposes it into two subtrees of odd cardinality; and
- if is such an edge of minimum weight among all such edges, and is the -side shore of , then
Because is even, the two subtrees have the same parity, so the condition is checked on one side.
Milestones
- Lemma 1.1 (p. 68). If is a minimum cut-set with respect to all pairs of odd nodes, there is an odd minimum cut-set with or .
- Section 1, p. 70. If has minimum weight among all edges of , its shore gives a minimum cut-set with respect to all pairs of odd nodes.
Significance
Theorem 1.1 turns problem (1.1), a minimization over exponentially many odd sets, into maximum-flow computations followed by a scan of the tree edges. Combined with Section 3 of the paper, this gives a polynomial separation algorithm for the blossom inequalities of b-matching polytopes, and hence, by the equivalence of separation and optimization, a polynomial-time route to weighted b-matching through linear programming. The odd-cut routine is also used for separating the odd-set constraints of other polytopes.
The theorem has been proved since 1982 and is textbook material. What this mission adds is a machine-checked proof on a precise encoding of cut-trees. As far as the platform's corpus shows, neither the Gomory–Hu cut-tree property nor any odd-cut theorem has been formalized in Lean; Mathlib has trees and reachability in simple graphs but no cut-tree theory.
Difficulty
The obvious argument fails at the minimum. Every tree-edge shore separates two odd nodes, so a minimum-weight odd-splitting edge certainly yields an odd cut, but showing that no odd set , however it cuts across the tree nodes, has smaller capacity requires relating an arbitrary odd to a tree edge whose shore is also odd and whose endpoints separates. The cut-tree only certifies minimality for cuts separating the two ends of a tree edge; an odd set may split many tree nodes and cross many shores at once, and nothing in the cut-tree property speaks about parity. Parity bookkeeping between odd labels in and odd cardinality of subtrees is the other place where care is needed: the two notions agree only because each tree node holds exactly one odd node.
Formalization scope
The graph is a weight function c : V → V → ℝ on a Fintype V, with hypotheses that it is symmetric and nonnegative; a missing edge has weight 0 and the diagonal never enters a cut. Node sets are Finset V and is the complement Wᶜ. The odd nodes form a Finset odd with odd.Nonempty and Even odd.card on every statement. The cut-tree is a SimpleGraph on the subtype {v // v ∈ odd} together with a map π : V → {v // v ∈ odd}; IsOddCutTree requires that the graph is a tree, that π fixes every odd node, and the Gomory–Hu minimality for every tree edge. The tree-edge weight is computed from the shore, not supplied as data. Minimality is always stated as ≤ against every competitor; no real infimum is taken.
The existence of a cut-tree (the Gomory–Hu theorem) is a hypothesis-side object and is not part of this mission; the theorems hold for every tree satisfying the cut-tree property. A statement in which the cut-tree assumption already says that the chosen edge's shore is an odd minimum cut, or in which "odd minimum cut" is minimized only over tree-edge shores, would make Theorem 1.1 definitional; both are ruled out, since IsOddMinCut ranges over every node set with odd label.
A complete development needs: submodularity-type identities for cut capacities (reusable for any cut problem), the structure of fundamental cuts of a tree (the two sides of a removed edge are complementary and the parities of along tree edges combine), and Lemma 1.1. Proofs of the milestones, alternative arguments for the goal that avoid the recursion, and a formal Gomory–Hu existence theorem are all welcome contributions.
Selected references
- M. W. Padberg and M. R. Rao, Odd Minimum Cut-Sets and b-Matchings, Mathematics of Operations Research 7(1), 67–80, 1982. https://doi.org/10.1287/moor.7.1.67
- R. E. Gomory and T. C. Hu, Multi-Terminal Network Flows, Journal of the SIAM 9(4), 551–570, 1961. https://doi.org/10.1137/0109047
- T. C. Hu, Integer Programming and Network Flows, Addison-Wesley, 1969 (Chapter 9, Theorem 9.2).
- J. Edmonds, Maximum Matching and a Polyhedron with 0,1-Vertices, Journal of Research of the National Bureau of Standards 69B, 125–130, 1965. https://doi.org/10.6028/jres.069B.013
- A. N. Letchford, G. Reinelt and D. O. Theis, Odd Minimum Cut Sets and b-Matchings Revisited, SIAM Journal on Discrete Mathematics 22(4), 1480–1487, 2008. https://doi.org/10.1137/060664793