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
Key Concepts
Matchings & Augmenting Paths
A matching 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 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:
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 be bipartite. For , let denote the set of neighbors of in .
- -
Hall's condition: every subset of one side has at least neighbors on the other side
- -
To disprove: find one set where
- -
Perfect matching in bipartite: Hall's condition must hold for both sides
- -
Deficiency: measures how far we are from a perfect matching