Simple Deterministic Algorithms for Fully Dynamic Maximal Matching

A maximal matching can be maintained in fully dynamic (supporting both addition and deletion of edges) <i>n</i>-vertex graphs using a trivial deterministic algorithm with a worst-case update time of <i>O</i>(<i>n</i>). No deterministic algorithm that outperforms the naïve <i>O</i>(<i>n</i>) one was reported up to this date. The only progress in this direction is due to Ivković and Lloyd, who in 1993 devised a deterministic algorithm with an <i>amortized</i> update time of <i>O</i>((<i>n</i>+<i>m</i>)<sup>&sqrt;2/2</sup>), where <i>m</i> is the number of edges. In this article, we show the first deterministic fully dynamic algorithm that outperforms the trivial one. Specifically, we provide a deterministic worst-case update time of <i>O</i>(&sqrt;<i>m</i>). Moreover, our algorithm maintains a matching, which in fact is a 3/2-approximate maximum cardinality matching (MCM). We remark that no fully dynamic algorithm for maintaining (2 − ε)-approximate MCM improving upon the naïve <i>O</i>(<i>n</i>) was known prior to this work, even allowing amortized time bounds and randomization. For low arboricity graphs (e.g., planar graphs and graphs excluding fixed minors), we devise another simple deterministic algorithm with sublogarithmic update time. Specifically, it maintains a fully dynamic maximal matching with amortized update time of <i>O</i>(log <i>n</i>/log log <i>n</i>). This result addresses an open question of Onak and Rubinfeld [2010]. We also show a deterministic algorithm with optimal space usage, which for arbitrary graphs maintains a maximal matching in amortized <i>O</i>(&sqrt;<i>m</i>) time and uses only <i>O</i>(<i>n</i> + <i>m</i>) space.

[1]  Errol L. Lloyd,et al.  Fully Dynamic Maintenance of Vertex Cover , 1993, WG.

[2]  Giuseppe F. Italiano,et al.  Trade-offs for fully dynamic transitive closure on DAGs: breaking through the O(n2 barrier , 2005, JACM.

[3]  C. Nash-Williams Decomposition of Finite Graphs Into Forests , 1964 .

[4]  Piotr Sankowski,et al.  Faster dynamic matchings and vertex connectivity , 2007, SODA '07.

[5]  Valerie King,et al.  A fully dynamic algorithm for maintaining the transitive closure , 1999, STOC '99.

[6]  Krzysztof Onak,et al.  Maintaining a large matching and a small vertex cover , 2010, STOC '10.

[7]  David Eppstein,et al.  Sparsification—a technique for speeding up dynamic graph algorithms , 1997, JACM.

[8]  Giuseppe F. Italiano,et al.  A new approach to dynamic all pairs shortest paths , 2004, JACM.

[9]  Baruch Awerbuch,et al.  Improved approximation algorithms for the multi-commodity flow problem and local competitive routing in dynamic networks , 1994, STOC '94.

[10]  Edward R. Scheinerman,et al.  On the thickness and arboricity of a graph , 1991, J. Comb. Theory, Ser. B.

[11]  Gerth Stølting Brodal,et al.  Dynamic Representation of Sparse Graphs , 1999, WADS.

[12]  Mikkel Thorup,et al.  Fully-Dynamic Min-Cut* , 2007, Comb..

[13]  Mikkel Thorup,et al.  Poly-logarithmic deterministic fully-dynamic algorithms for connectivity, minimum spanning tree, 2-edge, and biconnectivity , 2001, JACM.

[14]  Silvio Micali,et al.  An O(v|v| c |E|) algoithm for finding maximum matching in general graphs , 1980, 21st Annual Symposium on Foundations of Computer Science (sfcs 1980).

[15]  Richard M. Karp,et al.  A n^5/2 Algorithm for Maximum Matchings in Bipartite Graphs , 1971, SWAT.

[16]  Sandeep Sen,et al.  Fully Dynamic Maximal Matching in O (log n) Update Time , 2011, FOCS.

[17]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[18]  Mikkel Thorup,et al.  Dynamic ordered sets with exponential search trees , 2002, J. ACM.