[Paper Review] Improved Distance Sensitivity Oracles with Subcubic Preprocessing Time
This paper presents a novel, simplified construction of distance sensitivity oracles (DSOs) for directed and undirected graphs with small integer edge weights. By leveraging a key observation that any DSO with preprocessing time P and query time Q can be transformed into one with O(1) query time at the cost of adding ˜O(n²)·Q to preprocessing, the authors achieve ˜O(n².⁷²³³M) preprocessing time for directed graphs and ˜O(n².⁶⁸⁶⁵M) for undirected graphs, both with O(1) query time. The approach uses recursive extension of r-truncated DSOs and supports efficient path reporting with O(ℓ) time per query for paths of length ℓ.
We consider the problem of building Distance Sensitivity Oracles (DSOs). Given a directed graph $G=(V, E)$ with edge weights in $\{1, 2, \dots, M\}$, we need to preprocess it into a data structure, and answer the following queries: given vertices $u,v\in V$ and a failed vertex or edge $f\in (V\cup E)$, output the length of the shortest path from $u$ to $v$ that does not go through $f$. Our main result is a simple DSO with $ ilde{O}(n^{2.7233}M)$ preprocessing time and $O(1)$ query time. Moreover, if the input graph is undirected, the preprocessing time can be improved to $ ilde{O}(n^{2.6865}M)$. The preprocessing algorithm is randomized with correct probability $\ge 1-1/n^C$, for a constant $C$ that can be made arbitrarily large. Previously, there is a DSO with $ ilde{O}(n^{2.8729}M)$ preprocessing time and $\operatorname{polylog}(n)$ query time [Chechik and Cohen, STOC'20]. At the core of our DSO is the following observation from [Bernstein and Karger, STOC'09]: if there is a DSO with preprocessing time $P$ and query time $Q$, then we can construct a DSO with preprocessing time $P+ ilde{O}(n^2)\cdot Q$ and query time $O(1)$. (Here $ ilde{O}(\cdot)$ hides $\operatorname{polylog}(n)$ factors.)
Motivation & Objective
- To design a more efficient and conceptually simpler distance sensitivity oracle (DSO) for graphs with small integer edge weights.
- To reduce the preprocessing time of DSOs below cubic time while maintaining constant-time query support.
- To extend the DSO to support path-reporting queries with linear-time output relative to path length.
- To improve upon prior work by achieving better preprocessing time bounds, especially for undirected graphs.
- To explore the feasibility of generalizing the approach to handle negative edge weights, though this remains an open challenge.
Proposed method
- The core method relies on a transformation: any DSO with preprocessing time P and query time Q can be converted into one with O(1) query time and preprocessing time P + ˜O(n²)·Q.
- The authors recursively construct r-truncated DSOs using fast matrix multiplication techniques, starting from a base DSO with small r.
- For each level i, they compute a DSO Di by extending the previous level Di−1 using a set of ˜O(n²) carefully selected queries (uq, vq, fq) that capture paths of increasing length.
- A key vertex hitting mechanism is used to decompose long paths into shorter subpaths that can be retrieved from lower-level DSOs.
- Path-reporting is supported by storing hitting vertices and recursively reconstructing paths from subpaths in lower-level DSOs.
- The preprocessing uses randomized algorithms with high probability (w.h.p.) of correctness, and the final DSO size is ˜O(n²) for basic queries, growing to ˜O(n²⁺ᵃ) when path reporting is enabled.
Experimental results
Research questions
- RQ1Can we achieve subcubic preprocessing time for DSOs with O(1) query time in graphs with small integer edge weights?
- RQ2Is it possible to simplify existing DSO constructions while improving their preprocessing time?
- RQ3Can the preprocessing time for undirected graphs be further reduced below the current ˜O(n².⁶⁸⁶⁵M) bound?
- RQ4Can the DSO construction be extended to support efficient path reporting without incurring excessive space overhead?
- RQ5Can the technique be generalized to handle negative edge weights, given the challenges in defining compatible r-truncated DSOs?
Key findings
- The paper achieves a preprocessing time of ˜O(n².⁷²³³M) for directed graphs and ˜O(n².⁶⁸⁶⁵M) for undirected graphs, both with O(1) query time.
- The preprocessing time for undirected graphs matches the best-known APSP algorithm time of ˜O(nωM) when ω ≈ 2.3728639.
- The path-reporting variant of the DSO runs in O(ℓ) time for a path of length ℓ, with space complexity ˜O(n²⁺ᵃ), where a = 0.276724 for directed graphs.
- The construction is randomized and correct with high probability (1 − 1/nᶜ for any constant c).
- The method improves upon the previous best-known preprocessing time of ˜O(n².⁸⁷²⁹M) for DSOs with polylogarithmic query time.
- The approach is conceptually simpler than prior constructions and leverages a general transformation that converts any DSO into one with constant query time.
Better researchstarts right now
From reading papers to final review, dramatically reduce your research time.
No credit card · Free plan available
This review was created by AI and reviewed by human editors.