We design f -edge fault-tolerant diameter oracles (f -FDO, or simply FDO if f = 1). For a given directed or undirected and possibly edge-weighted graph G with n vertices and m edges and a positive integer f , we preprocess the graph and construct a data structure that, when queried with a set F of edges, whereFor the case of a single edge failure (f = 1) in an unweighted directed graph, there exists an approximate FDO by Henzinger et al. [ITCS 2017] with stretch (1 + ε), constant query time, space O(m), and a combinatorial preprocessing time of O(mn + n 1.5 Dm/ε ), where D is the diameter.We present an FDO for directed graphs with the same stretch, query time, and space. It has a preprocessing time of O(mn + n 2 /ε), which is better for constant ε > 0. The preprocessing time nearly matches a conditional lower bound for combinatorial algorithms, also by Henzinger et al. With fast matrix multiplication, we achieve a preprocessing time of O(n 2.5794 + n 2 /ε). We further prove an information-theoretic lower bound showing that any FDO with stretch better than 3/2 requires Ω(m) bits of space. Thus, for constant 0 < ε < 3/2, our combinatorial (1 + ε)-approximate FDO is near-optimal in all parameters.In the case of multiple edge failures (f > 1) in undirected graphs with non-negative edge weights, we give an f -FDO with stretch (f + 2), query time O(f 2 log 2 n), O(f n) space, and preprocessing time O(f m). We complement this with a lower bound excluding any finite stretch in o(f n) space.Many real-world networks have polylogarithmic diameter. We show that for those graphs and up to f = o(log n/ log log n) failures one can swap approximation for query time and space. We present an exact combinatorial f -FDO with preprocessing time mn 1+o(1) , query time n o(1) , and space n 2+o(1) . When using fast matrix multiplication instead, the preprocessing time can be improved to n ω+o(1) , where ω < 2.373 is the matrix multiplication exponent.
ACM Subject ClassificationTheory of computation → Shortest paths; Theory of computation → Data structures design and analysis; Theory of computation → Cell probe models and lower bounds; Theory of computation → Pseudorandomness and derandomization