Sensitive Distance and Reachability Oracles for Large Batch Updates

In the sensitive distance oracle problem, there are three phases. We first preprocess a given directed graph G with n nodes and integer weights from [-W,W]. Second, given a single batch of f edge insertions and deletions, we update the data structure. Third, given a query pair of nodes (u,v), return the distance from u to v. In the easier problem called sensitive reachability oracle problem, we only ask if there exists a directed path from u to v. Our first result is a sensitive distance oracle with Õ(Wn^ω+(3-ω)µ) preprocessing time, Õ(Wn^2-µ f^2+Wnf^ω) update time, and Õ(Wn^2-µ f+Wnf^2) query time where the parameter µ∊[0,1] can be chosen. The data-structure requires O(Wn^2+µ log n) bits of memory. This is the first algorithm that can handle f≥log n updates. Previous results (e.g. [Demetrescu et al. SICOMP'08; Bernstein and Karger SODA'08 and FOCS'09; Duan and Pettie SODA'09; Grandoni and Williams FOCS'12]) can handle at most 2 updates. When 3≤ f≤log n, the only non-trivial algorithm was by [Weimann and Yuster FOCS'10]. When W=Õ(1), our algorithm simultaneously improves their preprocessing time, update time, and query time. In particular, when f=ω(1), their update and query time is Ω(n^2-o(1)), while our update and query time are truly subquadratic in n, i.e., ours is faster by a polynomial factor of n. To highlight the technique, ours is the first graph algorithm that exploits the kernel basis decomposition of polynomial matrices by [Jeannerod and Villard J.Comp'05; Zhou, Labahn and Storjohann J.Comp'15] developed in the symbolic computation community. As an easy observation from our technique, we obtain the first sensitive reachability oracle can handle f≥log n updates. Our algorithm has O(n^ω) preprocessing time, O(f^ω) update time, and O(f^2) query time. This data-structure requires O(n^2 log n) bits of memory. Efficient sensitive reachability oracles were asked in [Chechik, Cohen, Fiat, and Kaplan SODA'17]. Our algorithm can handle any constant number of updates in constant time. Previous algorithms with constant update and query time can handle only at most f≤2 updates. Otherwise, there are non-trivial results for f≤log n, though, with query time Ω(n) by adapting [Baswana, Choudhary and Roditty STOC'16].

[1]  Danupon Nanongkai,et al.  Dynamic Approximate Shortest Paths and Beyond: Subquadratic and Worst-Case Update Time , 2019, 2019 IEEE 60th Annual Symposium on Foundations of Computer Science (FOCS).

[2]  Ran Duan,et al.  Connectivity oracles for failure prone graphs , 2010, STOC '10.

[3]  George Labahn,et al.  A deterministic algorithm for inverting a polynomial matrix , 2015, J. Complex..

[4]  Michael Langberg,et al.  f-Sensitivity Distance Oracles and Routing Schemes , 2010, Algorithmica.

[5]  Noga Alon,et al.  1 Derandomizing the Replacment Paths Algorithm of Roditty and Zwick [ 37 , 2019 .

[6]  Liam Roditty,et al.  Fault tolerant subgraph for single source reachability: generic and optimal , 2016, STOC.

[7]  Mikkel Thorup,et al.  Planning for Fast Connectivity Updates , 2007, 48th Annual IEEE Symposium on Foundations of Computer Science (FOCS'07).

[8]  Piotr Sankowski,et al.  Shortest Paths in Matrix Multiplication Time , 2005, ESA.

[9]  WeimannOren,et al.  Replacement Paths and Distance Sensitivity Oracles via Fast Matrix Multiplication , 2013 .

[10]  Robert E. Tarjan,et al.  Corrections to "Finding dominators via disjoint set union" [J. Discrete Algorithms 23 (2013) 2-20] , 2014, J. Discrete Algorithms.

[11]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[12]  Robert E. Tarjan,et al.  A fast algorithm for finding dominators in a flowgraph , 1979, TOPL.

[13]  Monika Henzinger,et al.  Conditional Hardness for Sensitivity Problems , 2017, ITCS.

[14]  Virginia Vassilevska Williams,et al.  Multiplying matrices faster than coppersmith-winograd , 2012, STOC '12.

[15]  Ran Duan,et al.  Connectivity Oracles for Graphs Subject to Vertex Failures , 2016, SODA.

[16]  Fabrizio Grandoni,et al.  Improved Distance Sensitivity Oracles via Fast Single-Source Replacement Paths , 2012, 2012 IEEE 53rd Annual Symposium on Foundations of Computer Science.

[17]  George Labahn,et al.  Fast, deterministic computation of the Hermite normal form and determinant of a polynomial matrix , 2017, J. Complex..

[18]  Ran Duan,et al.  Dual-failure distance and connectivity oracles , 2009, SODA.

[19]  Thatchaphol Saranurak,et al.  Dynamic Matrix Inverse: Improved Algorithms and Matching Conditional Lower Bounds , 2019, 2019 IEEE 60th Annual Symposium on Foundations of Computer Science (FOCS).

[20]  Amir Abboud,et al.  Popular Conjectures Imply Strong Lower Bounds for Dynamic Problems , 2014, 2014 IEEE 55th Annual Symposium on Foundations of Computer Science.

[21]  Claude-Pierre Jeannerod,et al.  Essentially optimal computation of the inverse of generic polynomial matrices , 2005, J. Complex..

[22]  David R. Karger,et al.  Improved distance sensitivity oracles via random sampling , 2008, SODA '08.

[23]  Haim Kaplan,et al.  (1 + ∊)-Approximate f-Sensitive Distance Oracles , 2017, SODA.

[24]  Piotr Sankowski,et al.  Faster dynamic matchings and vertex connectivity , 2007, SODA '07.

[25]  François Le Gall,et al.  Powers of tensors and fast matrix multiplication , 2014, ISSAC.

[26]  Monika Henzinger,et al.  Incremental and Fully Dynamic Subgraph Connectivity For Emergency Planning , 2016, ESA.

[27]  Piotr Sankowski,et al.  Dynamic transitive closure via dynamic matrix inverse: extended abstract , 2004, 45th Annual IEEE Symposium on Foundations of Computer Science.

[28]  Raphael Yuster,et al.  Replacement Paths and Distance Sensitivity Oracles via Fast Matrix Multiplication , 2013, TALG.

[29]  Liam Roditty,et al.  Fault Tolerant Reachability for Directed Graphs , 2015, DISC.

[30]  Arne Storjohann,et al.  High-order lifting and integrality certification , 2003, J. Symb. Comput..

[31]  Mikkel Thorup,et al.  Oracles for Distances Avoiding a Failed Node or Link , 2008, SIAM J. Comput..

[32]  David R. Karger,et al.  A nearly optimal oracle for avoiding failed vertices and edges , 2009, STOC '09.

[33]  Surender Baswana,et al.  Approximate Shortest Paths Avoiding a Failed Vertex: Near Optimal Data Structures for Undirected Unweighted Graphs , 2012, Algorithmica.

[34]  Piotr Sankowski,et al.  Subquadratic Algorithm for Dynamic Shortest Distances , 2005, COCOON.

[35]  Keerti Choudhary An Optimal Dual Fault Tolerant Reachability Oracle , 2016, ICALP.

[36]  Robert E. Tarjan,et al.  Dominators, Directed Bipolar Orders, and Independent Spanning Trees , 2012, ICALP.

[37]  Haim Kaplan,et al.  Linear-Time Algorithms for Dominators and Other Path-Evaluation Problems , 2008, SIAM J. Comput..