Paths, Trees, and Flowers II: Invariance of the Dual — the Outer Vertices O(G) Are Exactly the Vertices Left Exposed by Some Maximum MatchingResearch Paper
Motivation
A maximum matching of a graph is a largest set of edges no two of which share a vertex. Maximum matchings are rarely unique, and a basic question is which features of them are forced by the graph. J. Edmonds' paper Paths, trees, and flowers (Canad. J. Math. 17 (1965), 449–467) gave the first polynomial-time algorithm for maximum matching in general graphs. Its Section 6, Invariance of the dual, uses the output of that algorithm to answer this question. The vertices that some maximum matching leaves uncovered, their neighbours, and the rest form a decomposition of the graph that does not depend on the matching chosen or on any choice made by the algorithm.
This decomposition is now called the Gallai–Edmonds structure theorem. T. Gallai obtained it independently (Gallai 1963, 1964; see Selected references). It is a standard tool in matching theory (Lovász–Plummer, Matching Theory, 1986): it determines the minimum odd-set cover of Section 5 of the same paper canonically (6.7), and it underlies the Tutte–Berge formula and the analysis of factor-critical graphs.
Timeline. Berge (1957) characterized maximum matchings by the absence of augmenting paths. Gallai (1963–1964) and Edmonds (1965, §6) proved the structure theorem; Edmonds' proof goes through the trees and shrunken blossoms of his algorithm. Witzgall's argument, reported in 6.6, simplifies the converse half.
Setting
A graph has a finite set of vertices and a finite set of edges, each edge meeting exactly two distinct vertices; parallel edges are allowed. A vertex is exposed for a set of edges if no edge of meets it.
An alternating tree is a tree (a connected graph with one more vertex than edges) whose vertices are split into inner and outer vertices, so that every edge joins an inner vertex to an outer one and every inner vertex meets exactly two edges of . A planted tree for with root is an alternating tree such that is a maximum matching of and , the vertex of left exposed by , is exposed for .
Shrinking a vertex set replaces by a single pseudovertex. Edges inside disappear; edges leaving keep their identity and now meet the pseudovertex. The set is the pseudovertex's complete expansion. A blossom for is an odd circuit for which is a maximum matching of . Shrinking blossoms repeatedly, inside graphs already shrunk, gives the graph , where is a partition of the vertices into blossom sets.
Construction 6.0. Let be a maximum matching. Run the matching algorithm on without augmenting. It grows planted trees in , one from each exposed vertex, and shrinks blossoms as they appear. The output satisfies:
- the trees are disjoint and planted for ;
- every exposed vertex of lies in some tree;
- is Hungarian in : its outer vertices are joined only to its own inner vertices or to earlier trees;
- every pseudovertex is an outer vertex of some .
The outer vertices are the vertices whose part is a one-vertex outer vertex of some , together with all vertices of pseudovertex expansions. The inner vertices are the vertices whose part is an inner vertex of some .
Formalization targets
Goal: Theorem 6.2 (a)–(c)
For every maximum matching and every output of construction 6.0:
where is the subgraph induced on .
Milestones
- 4.1–4.2: the maximum matchings of an alternating tree.
- 4.14: lifting a matching through the complete expansion of a pseudovertex, with a free choice of the exposed vertex.
- 4.15, extension, in the forest form of 4.20.
- 6.4: adjacency of outer and inner vertices.
- 6.2 (b) and 6.2 (c) separately.
- 6.5: every outer vertex is exposable.
- 6.6: for non-outer meeting , is maximum in .
- 6.6: only outer vertices are ever exposed.
A companion item states that construction 6.0 succeeds for every maximum matching.
Significance
The result. Part (a) characterizes, without reference to any algorithm, the vertices that a maximum matching can miss. Parts (b) and (c) then make and invariants of , as 6.1 announces: "the graph is uniquely determined by alone". Several consequences rest on this invariance: the unique preferred minimum odd-set cover (6.7), the Tutte–Berge deficiency formula read off from and the components of , and the classification of graphs into those with and without perfect matchings in terms of a canonical barrier.
Formalizing it. The theorem has been proved since 1964, but the proof in this paper has not been machine-checked. A formalization requires the paper's own objects: multigraphs with edge identity preserved under contraction, nested blossom shrinking, and alternating and planted trees. These are the objects of Edmonds' blossom algorithm, and they are reusable for any formal treatment of it. Mathlib contains Tutte's theorem for simple graphs but neither shrinking nor the Gallai–Edmonds decomposition.
Difficulty
The statement is about one particular output of a nondeterministic process. The partition into trees depends on the order in which they were grown, and the non-matching tree edges and the blossoms chosen are arbitrary (6.1). An outer vertex of a later tree may be joined to an inner vertex of an earlier one, so the individual trees are not Hungarian in . The tempting argument "each tree is Hungarian, so apply the tree lemma tree by tree" therefore fails. Only the ordered condition, applied in both directions as in 6.4, shows that the outer vertices of all trees together are adjacent only to inner vertices. Moving between and requires lifting matchings through nested blossoms, which means an induction over the nesting rather than over a single odd circuit.
Formalization scope
Graphs are the published EdmondsMatching65.Polyhedron.Graph V E: finite vertex and edge types, an unordered pair of distinct ends for each edge, parallel edges allowed. Matchings are its IsMatching, and "maximum" means maximum cardinality. A matching of a subgraph is a matching of contained in the subgraph's edges. Paths are not needed.
Shrinking is contraction along a Finpartition of the vertex set. The vertices of are the parts, and the edges of are the edges of joining different parts. Blossom sets are an inductive predicate recording the nested odd circuits directly; there is no tower of types.
The output of 6.0 is the structure Config60. It records exactly the invariants the construction establishes and nothing more, and the goal is stated for every such configuration. The configuration must not be weakened. Dropping density, the ordered Hungarian condition, the outerness of pseudovertices or the blossom condition on the parts makes (a) or (b) false. Taking the to be arbitrary trees, or an arbitrary partition, would state a different and false theorem. The goal is not vacuous: exists_config_6_0 asserts that a configuration exists for every maximum matching. Shrinking is defined in 4.9 only for connected sets, so the forest form of 4.15 assumes connected parts.
Welcome contributions: the general theory of alternating trees and Hungarian forests (4.2, 4.17 and their forest forms), the lifting lemma 4.14 for nested odd circuits, and a proof of exists_config_6_0.
Selected references
- J. Edmonds, Paths, trees, and flowers, Canadian Journal of Mathematics 17 (1965), 449–467. https://doi.org/10.4153/CJM-1965-045-4
- C. Berge, Two theorems in graph theory, Proceedings of the National Academy of Sciences USA 43 (1957), 842–844. https://doi.org/10.1073/pnas.43.9.842
- T. Gallai, Kritische Graphen II, Publ. Math. Inst. Hungar. Acad. Sci. 8 (1963), 373–395; Maximale Systeme unabhängiger Kanten, ibid. 9 (1964), 401–413.
- L. Lovász and M. D. Plummer, Matching Theory, North-Holland, 1986 (reprinted AMS Chelsea, 2009). https://doi.org/10.1090/chel/367
- A. Schrijver, Combinatorial Optimization: Polyhedra and Efficiency, Springer, 2003, Chapter 24.