290f0b777fef553e.tex
1: \begin{abstract}
2:   The fastest deterministic algorithms for connected components take logarithmic
3:   time and perform superlinear work on a Parallel Random Access Machine
4:   (PRAM). These algorithms maintain a spanning forest by merging and compressing
5:   trees, which requires pointer-chasing operations that increase memory access
6:   latency and are limited to shared-memory systems. Many of these PRAM
7:   algorithms are also very complicated to implement. Another popular method is
8:   ``leader-contraction'' where the challenge is to select a constant fraction of
9:   leaders that are adjacent to a constant fraction of non-leaders with high
10:   probability. Instead we investigate label propagation because it is
11:   deterministic and does not rely on pointer-chasing. Label propagation
12:   exchanges representative labels within a component using simple graph
13:   traversal, but it is inherently difficult to complete in a sublinear number of
14:   steps. We are able to solve the problems with label propagation for graph
15:   connectivity.
16: 
17:   We introduce a simple framework for deterministic graph connectivity using
18:   label propagation that is easily adaptable to many computational models. It
19:   propagates directed edges and alternates edge direction to achieve linear edge
20:   count each step and sublinear convergence. We present new algorithms in PRAM,
21:   Stream, and MapReduce for a simple, undirected graph $G=(V,E)$ with $n=|V|$
22:   vertices, $m=|E|$ edges. Our approach takes $O(m)$ work each step, but we can
23:   only prove logarithmic convergence on a path graph. It was conjectured by Liu
24:   and Tarjan (2019) to take $O(\log n)$ steps or possibly $O(\log^2 n)$
25:   steps. We leave the proof of convergence as an open problem.
26: 
27:   \textit{Keywords:} graph connectivity, connected components, parallel
28:   algorithm, pram, stream, mapreduce
29: \end{abstract}