TheoremComplete

Tutte's Theorem on Perfect Matchings

Theorem6.2Tutte's Theorem

A graph GG has a perfect matching if and only if o(Gβˆ’S)β‰€βˆ£S∣o(G - S) \leq |S| for every SβŠ†V(G)S \subseteq V(G), where o(H)o(H) is the number of connected components of HH with an odd number of vertices.


Proof

Proof

Necessity. If GG has a perfect matching MM and SβŠ†VS \subseteq V, consider an odd component CC of Gβˆ’SG - S. Since ∣V(C)∣|V(C)| is odd, at least one edge of MM in CC must go to SS (the matching restricted to CC can match at most ∣V(C)βˆ£βˆ’1|V(C)|-1 vertices). These edges are vertex-disjoint in SS, so o(Gβˆ’S)β‰€βˆ£S∣o(G-S) \leq |S|.

Sufficiency. Assume Tutte's condition o(Gβˆ’S)β‰€βˆ£S∣o(G-S) \leq |S| for all SS. Taking S=βˆ…S = \emptyset: o(G)=0o(G) = 0, so ∣V∣|V| is even.

We prove GG has a perfect matching by showing the maximum matching ν(G)=∣V∣/2\nu(G) = |V|/2.

Berge's formula (which we use as a lemma): Ξ½(G)=12min⁑SβŠ†V(∣Vβˆ£βˆ’o(Gβˆ’S)+∣S∣)\nu(G) = \frac{1}{2}\min_{S \subseteq V}(|V| - o(G-S) + |S|). This is equivalent to the Tutte-Berge formula.

If Ξ½(G)<∣V∣/2\nu(G) < |V|/2, then by Berge's formula, there exists SS with o(Gβˆ’S)βˆ’βˆ£S∣>0o(G-S) - |S| > 0, contradicting Tutte's condition.

Direct proof (without Berge's formula). We prove by induction on ∣V∣|V| that Tutte's condition implies a perfect matching exists.

Add edges to GG one at a time (maintaining Tutte's condition) until GG is maximal with Tutte's condition: no edge can be added without creating a violation. We claim this maximal graph Gβˆ—G^* has a simple structure.

In Gβˆ—G^*: for S=βˆ…S = \emptyset, the graph is connected (else add an edge between components). For any non-adjacent u,vu, v: adding uvuv must violate Tutte's condition, so there exists Sβ€²S' with o(Gβˆ—+uvβˆ’Sβ€²)>∣Sβ€²βˆ£o(G^* + uv - S') > |S'|, but o(Gβˆ—βˆ’Sβ€²)β‰€βˆ£Sβ€²βˆ£o(G^* - S') \leq |S'|. This forces u,v∈Sβ€²u, v \in S' and adding uvuv merges two odd components.

Careful analysis of Gβˆ—G^* shows it decomposes into a complete graph on SS plus complete graphs on each component of Gβˆ—βˆ’SG^* - S, where the components are all cliques of odd size connected to all of SS. In such a graph, a perfect matching is easily constructed: match within odd cliques (leaving one vertex each) and match the remaining vertices to SS.

The full details use Tutte's condition to verify that ∣S∣β‰₯|S| \geq number of odd components, ensuring enough vertices in SS to absorb the unmatched ones. β–‘\square

β– 

ExamplePetersen Graph and Tutte's Condition

The Petersen graph PP on 10 vertices is 3-regular. For any single vertex vv: Gβˆ’vG - v has 9 vertices and is connected, so o=1≀1o = 1 \leq 1. For SS with ∣S∣=2|S| = 2: Gβˆ’SG - S has 8 vertices, and by connectivity arguments, o≀2o \leq 2. One verifies Tutte's condition for all SS, confirming PP has a perfect matching. Indeed, PP has exactly 2000 perfect matchings (by computation).

RemarkBerge-Tutte Formula

The general form Ξ½(G)=12(∣Vβˆ£βˆ’max⁑S(o(Gβˆ’S)βˆ’βˆ£S∣))\nu(G) = \frac{1}{2}(|V| - \max_S(o(G-S) - |S|)) unifies Tutte's theorem (perfect matching iff deficiency is 0) with the maximum matching problem. The set SS achieving the maximum is related to the Gallai-Edmonds decomposition and can be found in polynomial time.