Fully Dynamic Algorithms for Transitive Reduction
Gramoz Goranci, Adam Karczmarz, Ali Momeni, Nikos Parotsidis
TL;DR
This work addresses maintaining the transitive reduction of a dynamic directed graph under full updates. It develops two complementary approaches: a combinatorial, deterministic framework that yields near-linear amortized update times, and a randomized algebraic framework that achieves worst-case subquadratic updates via dynamic matrix inverses and polynomial testing. The results cover both DAGs and general graphs, with per-graph updates governed by intricate SCC handling, per-vertex snapshot maintenance, and careful use of heavy-light decompositions and randomization. The findings establish the first fully dynamic transitive-reduction data structures, offering practical sparsification tools for dynamic reachability and enabling efficient maintenance in complex networked systems.
Abstract
Given a directed graph $G$, a transitive reduction $G^t$ of $G$ (first studied by Aho, Garey, Ullman [SICOMP `72]) is a minimal subgraph of $G$ that preserves the reachability relation between every two vertices in $G$. In this paper, we study the computational complexity of transitive reduction in the dynamic setting. We obtain the first fully dynamic algorithms for maintaining a transitive reduction of a general directed graph undergoing updates such as edge insertions or deletions. Our first algorithm achieves $O(m+n \log n)$ amortized update time, which is near-optimal for sparse directed graphs, and can even support extended update operations such as inserting a set of edges all incident to the same vertex, or deleting an arbitrary set of edges. Our second algorithm relies on fast matrix multiplication and achieves $O(m+ n^{1.585})$ \emph{worst-case} update time.
