Sensitive Distance and Reachability Oracles for Large Batch Updates
Abstract
In the sensitive distance oracle problem, there are three phases. We first preprocess a given directed graph with nodes and integer weights from . Second, given a single batch of edge insertions and deletions, we update the data structure. Third, given a query pair of nodes , return the distance from to . In the easier problem called sensitive reachability oracle problem, we only ask if there exists a directed path from to . Our first result is a sensitive distance oracle with preprocessing time, update time, and query time where the parameter can be chosen. The data-structure requires bits of memory. This is the first algorithm that can handle 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 , the only non-trivial algorithm was by [Weimann and Yuster FOCS'10]. When , our algorithm simultaneously improves their preprocessing time, update time, and query time. In particular, when , their update and query time is , while our update and query time are truly subquadratic in , i.e., ours is faster by a polynomial factor of . 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. [...]
Cite
@article{arxiv.1907.07982,
title = {Sensitive Distance and Reachability Oracles for Large Batch Updates},
author = {Jan van den Brand and Thatchaphol Saranurak},
journal= {arXiv preprint arXiv:1907.07982},
year = {2019}
}
Comments
To appear in FOCS 2019