Dashboard/Block 3: Covers & Matchings/Week 8
Week 8Covers & Matchings

Matchings & Hall's Theorem

We dive deep into matchings — sets of pairwise non-adjacent edges. The key algorithmic idea is augmenting paths: if one exists, the matching isn't maximum. Hall's theorem characterizes when a bipartite graph has a perfect matching. Frobenius' theorem extends this to general matchings.

Learning Objectives

Define matchings, perfect matchings, and maximum matchings
Understand augmenting paths and use them to improve matchings
State and apply Hall's theorem (marriage theorem)
State Frobenius' deficiency formula

Key Concepts

Matchings & Augmenting Paths

A matching MM in a graph is a set of edges with no shared endpoints. A perfect matching covers all vertices. A matching is maximum if no larger matching exists.

An augmenting path for matching MM is a path that alternates between non-matching and matching edges, with both endpoints unmatched. If an augmenting path exists, we can increase the matching size by 1.

  • -

    If an augmenting path exists, flip it to get a larger matching

  • -

    No augmenting path means the matching is maximum

  • -

    Augmenting path algorithm: find augmenting paths until none exist

  • -

    The algorithm also produces a minimum vertex cover: T(AS)T \cup (A \setminus S)

Hall's Theorem

Hall's theorem (Marriage Theorem) gives a necessary and sufficient condition for a bipartite graph to have a matching that covers one side completely.

Let G=(AB,E)G = (A \cup B, E) be bipartite. For SAS \subseteq A, let N(S)N(S) denote the set of neighbors of SS in BB.

  • -

    Hall's condition: every subset SS of one side has at least S|S| neighbors on the other side

  • -

    To disprove: find one set SS where N(S)<S|N(S)| < |S|

  • -

    Perfect matching in bipartite: Hall's condition must hold for both sides

  • -

    Deficiency: maxS(SN(S))\max_S(|S| - |N(S)|) measures how far we are from a perfect matching