Table of Contents
Fetching ...

Parallel Batch-Dynamic Maximal Matching with Constant Work per Update

Guy E. Blelloch, Andrew C. Brady

TL;DR

This work solves parallel batch-dynamic maximal matching against an oblivious adversary by introducing a work-efficient, lazy leveled framework that handles deletions and settlements via a random greedy maximal matching. The algorithm achieves $O(1)$ expected amortized work per edge update on regular graphs and $O(r^3)$ per edge on rank-$r$ hypergraphs, with depth $O(\log^3 m)$ whp, and extends to work-efficient static maximal matching on hypergraphs with $O(m')$ expected work and $O(\log^2 m)$ depth whp. A static hypergraph maximal matching subroutine and a reduction from set cover to hyperedge maximal matching yield state-of-the-art $r$-approximate parallel set cover results for batch updates. Collectively, these results advance the efficiency and applicability of parallel batch-dynamic matching and related combinatorial problems in hypergraphs.

Abstract

We present a work optimal algorithm for parallel fully batch-dynamic maximal matching against an oblivious adversary. It processes batches of updates (either insertions or deletions of edges) in constant expected amortized work per edge update, and in $O(\log^3 m)$ depth per batch whp, where $m$ is the maximum number of edges in the graph over time. This greatly improves on the recent result by Ghaffari and Trygub (2024) that requires $O(\log^9 m)$ amortized work per update and $O(\log^4 m )$ depth per batch, both whp. The algorithm can also be used for parallel batch-dynamic hyperedge maximal matching. For hypergraphs with rank $r$ (maximum cardinality of any edge) the algorithm supports batches of updates with $O(r^3)$ expected amortized work per edge update, and $O(\log^3 m)$ depth per batch whp. Ghaffari and Trygub's parallel batch-dynamic algorithm on hypergraphs requires $O(r^8 \log^9 m)$ amortized work per edge update whp. We leverage ideas from the prior algorithms but introduce substantial new ideas. Furthermore, our algorithm is relatively simple, perhaps even simpler than Assadi and Solomon's (2021) sequential dynamic hyperedge algorithm. We also present the first work-efficient algorithm for parallel static maximal matching on hypergraphs. For a hypergraph with total cardinality $m'$ (i.e., sum over the cardinality of each edge), the algorithm runs in $O(m')$ work in expectation and $O(\log^2 m)$ depth whp. The algorithm also has some properties that allow us to use it as a subroutine in the dynamic algorithm to select random edges in the graph to add to the matching. With a standard reduction from set cover to hyperedge maximal matching, we give state of the art $r$-approximate static and batch-dynamic parallel set cover algorithms, where $r$ is the maximum frequency of any element, and batch-dynamic updates consist of adding or removing batches of elements.

Parallel Batch-Dynamic Maximal Matching with Constant Work per Update

TL;DR

This work solves parallel batch-dynamic maximal matching against an oblivious adversary by introducing a work-efficient, lazy leveled framework that handles deletions and settlements via a random greedy maximal matching. The algorithm achieves expected amortized work per edge update on regular graphs and per edge on rank- hypergraphs, with depth whp, and extends to work-efficient static maximal matching on hypergraphs with expected work and depth whp. A static hypergraph maximal matching subroutine and a reduction from set cover to hyperedge maximal matching yield state-of-the-art -approximate parallel set cover results for batch updates. Collectively, these results advance the efficiency and applicability of parallel batch-dynamic matching and related combinatorial problems in hypergraphs.

Abstract

We present a work optimal algorithm for parallel fully batch-dynamic maximal matching against an oblivious adversary. It processes batches of updates (either insertions or deletions of edges) in constant expected amortized work per edge update, and in depth per batch whp, where is the maximum number of edges in the graph over time. This greatly improves on the recent result by Ghaffari and Trygub (2024) that requires amortized work per update and depth per batch, both whp. The algorithm can also be used for parallel batch-dynamic hyperedge maximal matching. For hypergraphs with rank (maximum cardinality of any edge) the algorithm supports batches of updates with expected amortized work per edge update, and depth per batch whp. Ghaffari and Trygub's parallel batch-dynamic algorithm on hypergraphs requires amortized work per edge update whp. We leverage ideas from the prior algorithms but introduce substantial new ideas. Furthermore, our algorithm is relatively simple, perhaps even simpler than Assadi and Solomon's (2021) sequential dynamic hyperedge algorithm. We also present the first work-efficient algorithm for parallel static maximal matching on hypergraphs. For a hypergraph with total cardinality (i.e., sum over the cardinality of each edge), the algorithm runs in work in expectation and depth whp. The algorithm also has some properties that allow us to use it as a subroutine in the dynamic algorithm to select random edges in the graph to add to the matching. With a standard reduction from set cover to hyperedge maximal matching, we give state of the art -approximate static and batch-dynamic parallel set cover algorithms, where is the maximum frequency of any element, and batch-dynamic updates consist of adding or removing batches of elements.

Paper Structure

This paper contains 16 sections, 20 theorems, 4 equations, 4 figures, 1 table.

Key Result

theorem 1

There exists a randomized algorithm that solves the parallel batch-dynamic maximal matching problem on hypergraphs with $O(r^3)$ amortized and expected work per edge update against an oblivious adversary. Furthermore, processing each batch requires $O(\log^3 m)$ depth with high probability. Here $r$

Figures (4)

  • Figure 1: Sequential random greedy maximal matching.
  • Figure 2: Parallel random greedy maximal matching. In the code, $V(e)$ indicates the vertices incident on $e$, and for a set of vertices $V$, $N(V)$ indicates the union of all edges incident on at least one vertex in $V$.
  • Figure 3: Parallel batch-dynamic algorithm for maximal matching with $O(r^3)$ expected amortized cost per edge update.
  • Figure 4: Flow chart representation of deleteEdges. After edges are removed from the graph, they are separated into matched and unmatched. The matched edges are passed into deleteMatchedEdges, where they are separated into light and heavy. The light matches (and their cross edges) are reinserted into the graph, while the heavy matches and their cross edges ($E'$) are sent to randomSettle. A static maximal matching is run on $E'$, and the matches are separated into satisfied (no further action needed), stolen, and bloated. We repeat the process by sending the stolen and bloated edges to $\textsc{deleteMatchedEdges}$. We repeat until we have sampled sufficiently many edges.

Theorems & Definitions (37)

  • theorem 1
  • corollary 1
  • lemma 1
  • corollary 2
  • corollary 3
  • lemma 2
  • proof
  • theorem 2
  • proof
  • proof
  • ...and 27 more