Math 2.0

Combinatorics Proof

Proof of Tutte's theorem via an edge-maximal counterexample

Builds on GraphConnected componentPerfect matchingMatchingPathSymmetric differenceCycleSubgraph

Proof

For a graph HH on VV and U⊆VU \subseteq V, write o(H−U)o(H - U) for the number of odd connected components of H−UH - U. Say that HH satisfies Tutte's condition if o(H−U)≤∣U∣o(H - U) \le \abs{U} for all U⊆VU \subseteq V. Let GG be a finite graph with vertex set VV.

The condition is necessary.

  1. Let MM be a perfect matching of GG, and let U⊆VU \subseteq V. Let KK be an odd component of G−UG - U.
  2. The edges of MM inside KK cover an even number of vertices of KK. As ∣K∣\abs{K} is odd, some vertex xK∈Kx_K \in K is matched to a vertex yK∉Ky_K \notin K.
  3. There are no edges between different components of G−UG - U, so yK∈Uy_K \in U.
  4. Distinct odd components give distinct vertices xKx_K. Since MM is a matching, they also give distinct yKy_K. So K↦yKK \mapsto y_K is injective, and o(G−U)≤∣U∣o(G - U) \le \abs{U}.

The condition is sufficient: setup.

  1. Suppose that GG satisfies Tutte's condition but has no perfect matching. We derive a contradiction.
  2. For U=∅U = \varnothing, the condition gives o(G)=0o(G) = 0. So every component of GG is even, and ∣V∣\abs{V} is even.
  3. Among all graphs on VV that contain every edge of GG and have no perfect matching, choose one, G∗G^*, with the most edges. Then G∗+uvG^* + uv has a perfect matching for any two nonadjacent vertices u≠vu \ne v of G∗G^*.
  4. The graph G∗G^* satisfies Tutte's condition. Let U⊆VU \subseteq V. Each component of G∗−UG^* - U is a union of components of G−UG - U, since GG is a subgraph of G∗G^*.
  5. A union of even sets is even, so each odd component of G∗−UG^* - U contains an odd component of G−UG - U. These are distinct for distinct components. So o(G∗−U)≤o(G−U)≤∣U∣o(G^* - U) \le o(G - U) \le \abs{U}.
  6. Let SS be the set of vertices of G∗G^* adjacent to all other vertices.

Case 1: every component of G∗−SG^* - S is a complete graph.

  1. Let K1,…,KkK_1, \dots, K_k be the odd components of G∗−SG^* - S. By Step 8, k≤∣S∣k \le \abs{S}. Choose distinct s1,…,sk∈Ss_1, \dots, s_k \in S and vertices xi∈Kix_i \in K_i.
  2. Match xix_i with sis_i; this is an edge, since si∈Ss_i \in S. The set Ki∖{xi}K_i \setminus \set{x_i} is even and complete, so pair up its vertices by edges.
  3. Pair up the vertices of each even component in the same way.
  4. Let S′=S∖{s1,…,sk}S' = S \setminus \set{s_1, \dots, s_k}. Modulo 22, ∣V∣=∣S∣+∑components∣K∣≡∣S∣+k\abs{V} = \abs{S} + \sum_{\text{components}} \abs{K} \equiv \abs{S} + k. As ∣V∣\abs{V} is even, ∣S′∣=∣S∣−k\abs{S'} = \abs{S} - k is even.
  5. Any two vertices of SS are adjacent, so pair up the vertices of S′S' by edges.
  6. Steps 12 to 15 give a perfect matching of G∗G^*. This contradicts Step 7.

Case 2: some component KK of G∗−SG^* - S is not complete.

  1. Choose nonadjacent vertices of KK and a shortest path in KK between them. Let a,b,ca, b, c be its first three vertices. Then abab and bcbc are edges and a,ca, c are not adjacent, by minimality of the path.
  2. Since b∈Kb \in K, b∉Sb \notin S. So there is a vertex d≠bd \ne b not adjacent to bb. Then d≠a,cd \ne a, c.
  3. By Step 7, G∗+acG^* + ac has a perfect matching M1M_1, and G∗+bdG^* + bd has a perfect matching M2M_2. Then ac∈M1ac \in M_1 and bd∈M2bd \in M_2, since G∗G^* has no perfect matching.
  4. Also bd∉M1bd \notin M_1 and ac∉M2ac \notin M_2, since these are not edges of G∗+acG^* + ac and G∗+bdG^* + bd respectively.
  5. Let D=M1△M2D = M_1 \mathbin{\triangle} M_2 be the symmetric difference. Each vertex lies on one edge of M1M_1 and one of M2M_2. So it lies on 00 or 22 edges of DD, one from each matching.
  6. Hence DD is a disjoint union of cycles whose edges alternate between M1M_1 and M2M_2. By Step 20, bd∈Dbd \in D. Let CC be the cycle of DD through bdbd.
  7. At each vertex of CC, both its M1M_1-edge and its M2M_2-edge lie on CC. So edges of M1M_1 or M2M_2 not on CC have no end on CC.
  8. Case 2a: ac∉Cac \notin C. Let M=(M2∖C)∪(M1∩C)M = (M_2 \setminus C) \cup (M_1 \cap C). The edges M1∩CM_1 \cap C cover each vertex of CC once, and M2∖CM_2 \setminus C covers each other vertex once, by Step 23.
  9. So MM is a perfect matching. It avoids bdbd, which is on CC and not in M1M_1, and it avoids acac, which is not on CC and not in M2M_2. So MM is a perfect matching of G∗G^*, a contradiction.
  10. Case 2b: ac∈Cac \in C. Walk along CC from bb through dd, and stop at the first vertex u∈{a,c}u \in \set{a, c}. This exists, since a,ca, c lie on CC and b,d∉{a,c}b, d \notin \set{a, c}. Let PP be the part of CC from dd to uu.
  11. The path PP does not contain acac, since we stop on first reaching an end of acac. So PP reaches uu along the other CC-edge at uu, which is the M2M_2-edge of uu.
  12. The first edge of PP is the M1M_1-edge of dd, as the M2M_2-edge of dd is bdbd. So the edges of PP alternate, starting in M1M_1 and ending in M2M_2.
  13. The edge ubub is an edge of G∗G^* by Step 17. Let C′C' be the cycle formed by bdbd, PP and ubub. Its edges in order are bd∈M2bd \in M_2, then PP alternating from M1M_1 to M2M_2, then ubub.
  14. Let NN consist of ubub and the M1M_1-edges of PP. These are every second edge of C′C', so NN covers each vertex of C′C' exactly once. No edge of NN is acac or bdbd.
  15. Each vertex of C′C' has its M2M_2-edge on C′C': for bb this is bdbd, and for the other vertices it lies on PP. So the edges of M2M_2 not on C′C' have no end on C′C'.
  16. Let M=(M2∖C′)∪NM = (M_2 \setminus C') \cup N. By Steps 30 and 31, MM is a perfect matching of G∗G^*, since it avoids bdbd. This contradicts Step 7.
  17. All cases lead to a contradiction. So GG has a perfect matching whenever it satisfies Tutte's condition.

Idea

A perfect matching must send one vertex of each odd piece of G−UG - U into UU, which gives necessity. For sufficiency, add edges until any further edge would create a perfect matching. If the graph splits around its universal vertices into complete pieces, a matching is easy to build. Otherwise two matchings of slightly larger graphs combine along an alternating cycle into a matching of the graph itself.

Reading path

To understand this page from the ground up, read these 20 pages in order. The foundations come first.

Show the path as a graph
Each page uses the pages above it. The colour of the bar on a box shows how strong the evidence is, and the box also gives it as text. The list has the same pages.
  • no evidence level
  1. Element definition
  2. Graph definition
  3. Matching definition
  4. Proposition concept
  5. Set definition
  6. Subgraph definition
  7. Walk definition
  8. Perfect matching definition
  9. Disjunction definition
  10. Negation definition
  11. Union definition
  12. Set difference definition
  13. Path definition
  14. Reachability definition
  15. Trail definition
  16. Symmetric difference definition
  17. Connected component definition
  18. Circuit definition
  19. Cycle definition
  20. Proof of Tutte's theorem via an edge-maximal counterexample proof

Where this leads

2 pages build on this one.

Further reading

  1. Web https://en.wikipedia.org/wiki/Tutte's_theorem_on_perfect_matchings, Proof
About this page
TagNQNPP83YQN
URIm2://NQNPP83YQN
Kindproof
WritingW0 stub
MSC05C70
ProvesTutte's theorem
UsesGraph, Connected component, Perfect matching, Matching, Path, Symmetric difference, Cycle, Subgraph
MethodsProof by contradiction, Proof by cases
Changed4 November 2026

Markdown · JSON · Edit on GitHub

What this page needs for W1

  • an inventory row: the row of the inventory that the node accounts for (0 of 1)

The writing levels say how complete the text of a page is. They do not measure its truth.

What links here

No page links to this page yet.