Deterministic and Work-Efficient Parallel Batch-Dynamic Trees in Low Span

by   Daniel Anderson, et al.

Dynamic trees are a well-studied and fundamental building block of dynamic graph algorithms dating back to the seminal work of Sleator and Tarjan [STOC'81, (1981), pp. 114-122]. The problem is to maintain a tree subject to online edge insertions and deletions while answering queries about the tree, such as the heaviest weight on a path, etc. In the parallel batch-dynamic setting, the goal is to process batches of edge updates work efficiently in low (polylog n) span. Two work-efficient algorithms are known, batch-parallel Euler Tour Trees by Tseng et al. [ALENEX'19, (2019), pp. 92-106] and parallel Rake-Compress (RC) Trees by Acar et al. [ESA'20, (2020), pp. 2:1-2:23]. Both however are randomized and work efficient in expectation. Several downstream results that use these data structures (and indeed to the best of our knowledge, all known work-efficient parallel batch-dynamic graph algorithms) are therefore also randomized. In this work, we give the first deterministic work-efficient solution to the problem. Our algorithm maintains a dynamic parallel tree contraction subject to batches of k edge updates deterministically in worst-case O(k log(1 + n/k)) work and O(log n log^(c) k) span for any constant c. This allows us to implement parallel batch-dynamic RC-Trees with worst-case O(k log(1 + n/k)) work updates and queries deterministically. Our techniques that we use to obtain the given span bound can also be applied to the state-of-the-art randomized variant of the algorithm to improve its span from O(log n log^* n) to O(log n).


page 1

page 2

page 3

page 4


Fully-dynamic α+ 2 Arboricity Decomposition and Implicit Colouring

In the implicit dynamic colouring problem, the task is to maintain a rep...

Batch-Parallel Euler Tour Trees

The dynamic trees problem is to maintain a forest undergoing edge insert...

Batch-dynamic Algorithms via Parallel Change Propagation and Applications to Dynamic Trees

Dynamic algorithms capable of supporting batches of updates are increasi...

Parallel Batch-Dynamic Graph Connectivity

With the rapid growth of graph datasets over the past decade, a new kind...

Work-efficient Batch-incremental Minimum Spanning Trees with Applications to the Sliding Window Model

Algorithms for dynamically maintaining minimum spanning trees (MSTs) hav...

Optimal Multithreaded Batch-Parallel 2-3 Trees

This paper presents a batch-parallel 2-3 tree T in the asynchronous PPM ...

CPMA: An Efficient Batch-Parallel Compressed Set Without Pointers

This paper introduces the batch-parallel Compressed Packed Memory Array ...

Please sign up or login with your details

Forgot password? Click here to reset