Table of Contents
Fetching ...

Faster Semi-streaming Matchings via Alternating Trees

Slobodan Mitrović, Anish Mukherjee, Piotr Sankowski, Wen-Horng Sheu

TL;DR

The paper tackles the problem of computing a $ $ (1+\epsilon) $-approximate maximum matching in general graphs under the semi-streaming model. It introduces a deterministic algorithm that searches for short augmentations via parallel alternating trees and blossoms, with careful management of structures and edge labels to guarantee correctness. By employing a scale-based approach and preserving key invariants, the method achieves $O(1/\epsilon^6)$ passes and $O(n/\epsilon^6)$ space while delivering a $$(1+\epsilon)$$-approximation, significantly improving prior pass complexity from $O(1/\epsilon^{19})$. The framework extends to related distributed models (MPC and CONGEST) using FMU's paradigm, enabling analogous speedups, and offers a simpler, blossom-based correctness argument relative to prior ad-hoc structures.

Abstract

We design a deterministic algorithm for the $(1+ε)$-approximate maximum matching problem. Our primary result demonstrates that this problem can be solved in $O(ε^{-6})$ semi-streaming passes, improving upon the $O(ε^{-19})$ pass-complexity algorithm by [Fischer, Mitrović, and Uitto, STOC'22]. This contributes substantially toward resolving Open question 2 from [Assadi, SOSA'24]. Leveraging the framework introduced in [FMU'22], our algorithm achieves an analogous round complexity speed-up for computing a $(1+ε)$-approximate maximum matching in both the Massively Parallel Computation (MPC) and CONGEST models. The data structures maintained by our algorithm are formulated using blossom notation and represented through alternating trees. This approach enables a simplified correctness analysis by treating specific components as if operating on bipartite graphs, effectively circumventing certain technical intricacies present in prior work.

Faster Semi-streaming Matchings via Alternating Trees

TL;DR

The paper tackles the problem of computing a (1+\epsilon) O(1/\epsilon^6)O(n/\epsilon^6)O(1/\epsilon^{19})$. The framework extends to related distributed models (MPC and CONGEST) using FMU's paradigm, enabling analogous speedups, and offers a simpler, blossom-based correctness argument relative to prior ad-hoc structures.

Abstract

We design a deterministic algorithm for the -approximate maximum matching problem. Our primary result demonstrates that this problem can be solved in semi-streaming passes, improving upon the pass-complexity algorithm by [Fischer, Mitrović, and Uitto, STOC'22]. This contributes substantially toward resolving Open question 2 from [Assadi, SOSA'24]. Leveraging the framework introduced in [FMU'22], our algorithm achieves an analogous round complexity speed-up for computing a -approximate maximum matching in both the Massively Parallel Computation (MPC) and CONGEST models. The data structures maintained by our algorithm are formulated using blossom notation and represented through alternating trees. This approach enables a simplified correctness analysis by treating specific components as if operating on bipartite graphs, effectively circumventing certain technical intricacies present in prior work.

Paper Structure

This paper contains 63 sections, 16 theorems, 13 equations, 6 figures, 3 tables, 3 algorithms.

Key Result

Theorem 1.1

There exists a deterministic semi-streaming algorithm that, given any $\epsilon > 0$ and a graph $G$ on $n$ vertices, outputs a $(1+\epsilon)$-approximate maximum matching in $G$ in $O(1/\epsilon^6)$ passes. The algorithm uses $O(n /\epsilon^6)$ words of space.

Figures (6)

  • Figure 1: An example of alternating tree. Dashed and solid edges denote the unmatched and matched edges, respectively. The encircled vertices correspond to the non-trivial blossoms, i.e., $B_1$, $B_3$, and $B_4$ are non-trivial blossoms. $B_1 = \Omega_\alpha(\alpha)$ is the blossom containing a free vertex $\alpha$. $w'_\alpha$ is the working vertex and the highlighted path, from $B_1$ to $B_4$, is the active path.
  • Figure 2: An example of $\textsc{Overtake}\xspace$. In this example, $g = (u, v)$ connects two alternating trees $S_\alpha$ and $S_\beta$, with $\Omega(u)$ being the working vertex of $S_\alpha$ before $\textsc{Overtake}\xspace$. The circles represent blossoms, which are not contracted in this sketch so as to illustrate possible situations better. The alternating path from $\alpha$ to matched edge $(\Omega(v), \Omega(t))$ along $g$ improves the label of $(\Omega(v), \Omega(t))$, and hence Overtake is invoked. (Observe that $\{v\} = \Omega(v)$.)
  • Figure 3: Example of a structure $S_\alpha$. Dashed and solid edges denote the unmatched and matched edges, respectively. $\alpha$ is a free vertex. $\Omega_\alpha$ contains all trivial blossoms in $G_\alpha$ and the non-trivial blossoms $\{B_1, B_2, B_3, B_4\}$, where $B_1 = \Omega_\alpha(\alpha)$ and $B_4$ is the working vertex $w'_\alpha$ in $G_\alpha/\Omega_\alpha$. (a) The graph $G_\alpha$. (b) The corresponding contracted graph $G_\alpha/\Omega_\alpha$. The encircled vertices correspond to the non-trivial blossoms. $w'_\alpha$ is the working vertex and the highlighted path, from $B_1$ to $B_4$, is the active path.
  • Figure 4: Example of Case 2.1 of procedure $\textsc{Overtake}\xspace$. In this case, $\Omega(u)$ and $\Omega(v)$ are in the same structure. (a) The structure $S_\alpha$ before, where the arc $g$ is highlighted. (b) The structure $S_\alpha$ after we invoke $\textsc{Overtake}\xspace$ via $g = (u,v)$.
  • Figure 5: Example of Case 2.2 of the procedure $\textsc{Overtake}\xspace$ where $g = (u, v)$ connects the two structures $S_\alpha$ and $S_\beta$. While, in this example $\Omega(p) = \{p\}$ is a trivial blossom, it can be a non-trivial blossom in general.
  • ...and 1 more figures

Theorems & Definitions (34)

  • Theorem 1.1
  • Definition 2.1: An unmatched edge and a free vertex
  • Definition 2.2: Alternating and augmenting paths
  • Definition 2.3: Alternating trees, inner vertices, and outer vertices
  • Definition 2.4: Blossoms and trivial blossoms
  • Remark 1
  • Lemma 2.5: DP14
  • Definition 2.6: Blossom contraction
  • Lemma 2.7: edmonds1965paths
  • Definition 2.8: Regular set of blossoms
  • ...and 24 more