Tutorials › Graph Theory (Undergraduate) › Tutte’s Theorem by Induction

Tutte's Theorem and General Matchings · Tutorial 308 of 799

Tutte’s Theorem by Induction

Learn how tight sets and induction on the number of vertices establish Tutte’s characterization of graphs with perfect matchings.

Advanced 12 min read

What You'll Learn

  • State Tutte’s condition and the perfect-matching characterization precisely.
  • Explain why the condition is necessary.
  • Use the tight-set reduction lemma in the induction step.
  • Handle disconnected graphs before applying induction to a connected graph.
  • Prove that deleting the ends of an edge preserves Tutte’s condition in the no-nontrivial-tight-set case.
  • Distinguish singleton tight sets from the tight sets used in the induction split.

The Induction Strategy

Tutte’s theorem characterizes exactly when a finite graph has a perfect matching. Its condition counts the odd components left after deleting a set of vertices. The necessity of the condition follows by looking at how a perfect matching must cover those components. The sufficiency direction is harder: induction must handle both a set where the condition is tight and the case where every relevant inequality is strict.

All graphs in this tutorial are finite and simple. A matching is a set of edges no two of which share a vertex. It is perfect if every vertex is incident with one of its edges. A component is a maximal connected subgraph. For a graph \(G\) and a vertex set \(S\subseteq V(G)\), \(G-S\) means the subgraph induced by the vertices not in \(S\). Write \(o(G-S)\) for the number of components of \(G-S\) that have odd order. The empty graph has zero components, so \(o(G)=0\) when \(G\) has no vertices.

Definition: A vertex set \(S\subseteq V(G)\) is tight if \(o(G-S)=|S|\). Tutte’s condition is \(o(G-S)\le |S|\) for every \(S\subseteq V(G)\). In the induction below, a nontrivial tight set means a tight set with \(2\le |S|\le |V(G)|-1\).

Singleton tight sets are deliberately excluded from the phrase “nontrivial tight set.” In an even-order graph satisfying Tutte’s condition, deleting one vertex leaves an odd number of vertices, so the number of odd components is at least one and at most one. Thus singleton tight sets can occur routinely; they do not obstruct the edge-deletion step used in the induction.

Tutte’s Theorem

Theorem (Tutte): A finite graph \(G\) has a perfect matching if and only if \(o(G-S)\le |S|\) for every vertex set \(S\subseteq V(G)\).

Proof of necessity. Suppose \(G\) has a perfect matching \(M\), and fix \(S\subseteq V(G)\). Each odd component of \(G-S\) must have at least one vertex whose matching edge goes from that component to a vertex of \(S\): otherwise all vertices of the component would have to be matched to one another, which is impossible for an odd number of vertices. Different components require different vertices of \(S\), because \(M\) is a matching. Therefore \(o(G-S)\le |S|\). This also covers \(S=\varnothing\): a graph with a perfect matching has no odd component. \(\square\)

For sufficiency, we use induction on \(n=|V(G)|\), proving that every graph satisfying Tutte’s condition has a perfect matching. At \(n=0\), the empty matching is perfect, and the condition holds. If the condition holds at \(S=\varnothing\), then \(o(G)=0\); hence every component has even order and \(n\) is even. In particular, a graph of order one cannot satisfy the condition.

We will use the following earlier result, the Tight-Set Reduction Lemma. Its hypotheses are that \(G\) satisfies Tutte’s condition and \(S\) is a nonempty proper tight set. It gives a matching decomposition: the even components of \(G-S\) can be matched internally, and the odd components can be matched to distinct vertices of \(S\), using one edge from \(S\) into each such component and matching the remaining vertices of that component internally. The reduction lemma is the step that handles tight sets; it does not require each odd component of \(G-S\) to be factor-critical.

That last qualification matters. An odd component need not have a perfect matching after deletion of every possible vertex. The reduction lemma selects the vertices and edges together, so it only needs internal matchings after the particular vertices used to meet \(S\) have been selected. Since \(S\) is tight, the number of odd components is exactly \(|S|\), just the number needed in this matching decomposition.

Worked Example: A Tight Set in a 4-Cycle

Let \(G=(V,E)\), where \(V=\{1,2,3,4\}\) and \(E=\{12,23,34,41\}\). Take \(S=\{1,3\}\). The graph \(G-S\) consists of the two isolated vertices \(2\) and \(4\), so \(o(G-S)=2=|S|\); \(S\) is a nontrivial tight set.

The tight-set reduction matches the two odd components to the two vertices of \(S\). One valid choice is the edge \(12\) for the component \(\{2\}\) and the edge \(34\) for \(\{4\}\). The resulting matching is \(\{12,34\}\), which covers all four vertices.

Check: the two edges have no common endpoint, and their endpoints are exactly \(\{1,2,3,4\}\), so this matching is perfect. Independently, the other pair of opposite edges, \(\{23,41\}\), is also a perfect matching.

Disconnected Graphs and the Tight-Set Case

Suppose first that \(G\) is disconnected. For any component \(H\) of \(G\) and any \(X\subseteq V(H)\), the odd components of \(H-X\) are among the odd components of \(G-X\). Therefore \(o(H-X)\le o(G-X)\le |X|\), so \(H\) itself satisfies Tutte’s condition. Also, each component of \(G\) has even order: at \(S=\varnothing\), the condition says \(o(G)=0\). Every component has fewer than \(n\) vertices, so induction gives a perfect matching in each component. Their union is a perfect matching of \(G\).

It remains to consider connected \(G\). If there is a nontrivial tight set \(S\), then \(S\) is nonempty and proper, and the Tight-Set Reduction Lemma applies. Its matching decomposition covers every vertex of \(S\), every odd component of \(G-S\), and every even component of \(G-S\). Combining the edges it supplies gives a perfect matching of \(G\).

This accounts for the tight-set case without making an unwarranted claim about every vertex of an odd component. The induction still has to address the case in which there is no nontrivial tight set; that case uses a different reduction.

The Case with No Nontrivial Tight Set

Assume \(G\) is connected and satisfies Tutte’s condition, and suppose it has no nontrivial tight set. The order \(n\) is even and at least two, so connectedness guarantees an edge \(uv\). We will show that \(G-\{u,v\}\) satisfies Tutte’s condition. Induction will then give a perfect matching of that smaller graph; adding \(uv\) will complete the matching of \(G\).

Here is the parity fact that makes the argument work. For any vertex set \(T\), the sum of the orders of the components of \(G-T\) is \(n-|T|\). Modulo \(2\), that sum has the same parity as the number of odd components. Since \(n\) is even, this gives \(o(G-T)\equiv |T|\pmod 2\). Consequently, if \(2\le |T|\le n-1\), Tutte’s condition and the absence of nontrivial tight sets imply \(o(G-T)\le |T|-2\): the inequality is strict, and both sides have the same parity.

Now let \(X\subseteq V(G)\setminus\{u,v\}\), and set \(T=X\cup\{u,v\}\). If \(T=V(G)\), then \(G-T\) is empty and \(o(G-T)=0\le |X|\). Otherwise \(2\le |T|\le n-1\), so the parity bound gives \(o(G-T)\le |T|-2=|X|\). Since \(G-\{u,v\}-X=G-T\), this is exactly the condition required for \(G-\{u,v\}\).

The graph \(G-\{u,v\}\) has \(n-2<n\) vertices, so the induction hypothesis provides a perfect matching \(M\) in it. The edge \(uv\) has neither endpoint in that smaller graph. Therefore \(M\cup\{uv\}\) is a matching, and it covers every vertex of \(G\). This proves sufficiency and completes the induction. \(\square\)

Worked Example: The Edge-Deletion Step in \(K_4\)

Let \(G=K_4\), with \(V=\{1,2,3,4\}\) and \(E=\{12,13,14,23,24,34\}\). For a set \(T\) of size \(k\), \(G-T\) is a complete graph on \(4-k\) vertices. Thus \(o(G-T)\) is \(0\) when \(k=4\), and for \(k=0,1,2,3\) its values are respectively \(0,1,0,1\). Each value is at most \(k\), so Tutte’s condition holds.

There is no nontrivial tight set: for \(k=2\), \(o(G-T)=0<2\); for \(k=3\), \(o(G-T)=1<3\). Choose the edge \(12\). The remaining graph \(G-\{1,2\}\) has vertices \(\{3,4\}\) and edge \(34\). Its matching \(\{34\}\), together with \(12\), gives \(\{12,34\}\) in \(G\).

Check: the two selected edges are disjoint and cover all four vertices. The counts also show why singleton sets are not part of the no-nontrivial-tight-set assumption: for every one-vertex set \(T\), the remaining \(K_3\) has one odd component, so \(o(G-T)=1=|T|\).

Why the Strict Inequality Is Essential

In the edge-deletion step, the set tested in the original graph is \(T=X\cup\{u,v\}\). When \(X\) is nonempty, the desired upper bound is not merely \(o(G-T)\le |T|\); it is \(o(G-T)\le |T|-2\). The missing two account exactly for the two deleted vertices \(u\) and \(v\). Parity turns strictness into this two-unit improvement. If \(T\) were tight, this argument would not establish the condition for the smaller graph. That is why tight sets and the no-tight-set case require different steps.

A related common mistake is to call every tight set “nontrivial” and then assume strictness for all nonempty \(T\). That is false even in \(K_4\): every singleton \(T\) is tight. The induction only needs strictness for sets of size at least two, because every tested set \(T=X\cup\{u,v\}\) has at least two vertices. Empty sets and the full vertex set are handled directly in the proof.

Worked Example: A Disconnected Graph

Let \(G\) have \(V=\{1,2,3,4,5,6\}\) and \(E=\{12,23,34,41,56\}\). Its components are the 4-cycle on \(\{1,2,3,4\}\) and the single edge \(56\). Each component has an explicit perfect matching: \(\{12,34\}\) in the 4-cycle and \(\{56\}\) in the other component.

Combining these gives \(M=\{12,34,56\}\). It has three edges, no two share a vertex, and its endpoints are all six vertices. Thus \(M\) is perfect. By the necessity direction already proved, this also verifies Tutte’s condition for this graph: for every \(S\), \(o(G-S)\le |S|\).

Check: the componentwise matching uses \(2+1=3\) edges, and a perfect matching on six vertices must use \(6/2=3\) edges. The edge count agrees with the explicit matching.

Check Your Understanding

Use the theorem and induction proof to answer each question. When a condition concerns all vertex sets, include the empty set in your reasoning.

  1. Explain why a perfect matching forces \(o(G-S)\le |S|\) for every \(S\subseteq V(G)\).
  2. Why does \(o(G)=0\) imply that the order of \(G\) is even?
  3. In the no-nontrivial-tight-set case, why does parity improve \(o(G-T)<|T|\) to \(o(G-T)\le |T|-2\)?
  4. For the edge-deletion step, set \(T=X\cup\{u,v\}\). Explain separately what happens when \(T=V(G)\) and when \(T\ne V(G)\).
  5. Why can singleton tight sets occur without invalidating the no-nontrivial-tight-set argument?