We study maximum matchings in fully dynamic graphs, which are graphs that undergo both edge insertions and deletions. Our focus is on algorithms that estimate the size of maximum matching after each update while spending a small time. An important question studied extensively is the best approximation achievable via algorithms that only spend $\text{poly}(\log n)$ time per update, where $n$ is the number of vertices. The current best bound is a $(1/2+\varepsilon_0)$-approximation for a small constant $\varepsilon_0 > 0$, due to recent works of Behnezhad [SODA'23] ($\varepsilon_0 \sim 0.001$) and Bhattacharya, Kiss, Saranurak, Wajc [SODA'23] ($\varepsilon_0 \sim 0.006$) who broke the long-standing 1/2-approximation barrier. These works also showed that for any fixed $\varepsilon > 0$, the approximation can be further improved to $(2-\sqrt{2}-\varepsilon) \sim .585$ for bipartite graphs, leaving a huge gap between general and bipartite graphs. In this work, we close this gap. We show that for any fixed $\varepsilon > 0$, a $(2-\sqrt{2}-\varepsilon)$ approximation can be maintained in $\text{poly}(\log n)$ time per update even in general graphs. Our techniques also lead to the same approximation for general graphs in two passes of the semi-streaming setting, removing a similar gap in that setting.
翻译:暂无翻译