Proofs: Gupta-Peng dynamic matching algorithm
These are the human proofs of Gupta-Peng dynamic matching algorithm, at full length.
Lazy rebuilding keeps a (1 + ε)-approximate matching full
This proof shows: correctness.
Write for the size of a maximum matching of . Fix . We prove that after every update the structure holds a matching of the current graph with .
Lemma 1 (one update moves by at most one). If is with one edge inserted or deleted, then .
Proof. Let be the edge. A maximum matching of the graph with loses at most one edge, namely , when is removed, and what remains is a matching of the graph without . A matching of the graph without is also a matching of the graph with . So the two values differ by at most one.
Lemma 2 ( stays a matching of the current graph). After every update, is a matching, and all its edges are edges of the current graph.
Proof. A rebuild returns a matching of the current graph. Line L2 adds an edge of the graph whose two ends are free, so stays a matching. Line L3 removes the deleted edge from if it was there, so every edge of is still present. No other line changes or the graph.
Lemma 3 (stability). Let be the matching right after a rebuild of the graph , with . After more updates, with no rebuild in between, the matching and the graph satisfy
Proof. The first inequality follows from Lemma 1 by induction on . For the second, between rebuilds only line L3 removes edges from , at most one per update, and line L2 only adds edges.
Lemma 4 (the budget is enough). If , then .
Proof. From we get , that is, . By Lemma 3, .
Theorem. After every update, is a matching of the current graph with .
Proof. is a matching of the current graph by Lemma 2. Consider the last rebuild before or at the current update, with matching and budget . If the rebuild happened at this update, then is maximum and the bound is clear. Otherwise the counter equals the number of updates since that rebuild, and since line L5 did not rebuild, . Lemma 4 gives the bound. The structure starts with a rebuild of the empty graph, so a last rebuild always exists.