Deterministic Decremental Reachability, SCC, and Shortest Paths via Directed Expanders and Congestion Balancing - Bernstein, Aaron; Gutenberg, Maximilian Probst; Saranurak, Thatchaphol (Proceedings / annual Symposium on Foundations of Computer Science, 2020)
Let G=(V, E, w) be a weighted, directed graph subject to a sequence of adversarial edge deletions. In the decremental single-source reachability problem (SSR), we are given a fixed source s and the goal is to maintain a data structure that can answer path-queries s\rightarrowtail v for any v\in V . In the more general single-source shortest paths (SSSP) problem the goal is to return an approximate shortest path to v , and in the SCC problem the goal is to maintain strongly connected components of G and to answer path queries within each component. All of these problems have been very actively studied over the past two decades, but all the fast algorithms are randomized and, more significantly, they can only answer path queries if they assume a weaker model: they assume an oblivious adversary which is not adaptive and must fix the update sequence in advance. This assumption significantly limits the use of these data structures, most notably preventing them from being used as subroutines in static algorithms. All the above problems are notoriously difficult in the adaptive setting. In fact, the state-of-the-art is still the Even and Shiloach tree, which dates back all the way to 1981 [1] and achieves total update time O(mn) . We present the first algorithms to break through this barrier. *deterministic decremental SSR/SSC with total update time mn^{2/3+o(1)} *deterministic decremental SSSP with total update time n^{2+2/3+o(1)} To achieve these results, we develop two general techniques for working with dynamic graphs. The first generalizes expander-based tools to dynamic directed graphs. While these tools have already proven very successful in undirected graphs, the underlying expander decomposition they rely on does not exist in directed graphs. We thus need to develop an efficient framework for using expanders in directed graphs, as well as overcome several technical challenges in processing directed expanders. We establish several powerful primitives that we hope will pave the way for other expander-based algorithms in directed graphs. The second technique, which we call congestion balancing, provides a new method for maintaining flow under adversarial deletions. The results above use this technique to maintain an embedding of an expander. The technique is quite general, and to highlight its power, we use it to achieve the following additional result: *The first near-optimal algorithm for decremental bipartite matching