10,541 research outputs found

    Multiple-Edge-Fault-Tolerant Approximate Shortest-Path Trees

    Full text link
    Let GG be an nn-node and mm-edge positively real-weighted undirected graph. For any given integer f1f \ge 1, we study the problem of designing a sparse \emph{f-edge-fault-tolerant} (ff-EFT) σ\sigma{\em -approximate single-source shortest-path tree} (σ\sigma-ASPT), namely a subgraph of GG having as few edges as possible and which, following the failure of a set FF of at most ff edges in GG, contains paths from a fixed source that are stretched at most by a factor of σ\sigma. To this respect, we provide an algorithm that efficiently computes an ff-EFT (2F+1)(2|F|+1)-ASPT of size O(fn)O(f n). Our structure improves on a previous related construction designed for \emph{unweighted} graphs, having the same size but guaranteeing a larger stretch factor of 3(f+1)3(f+1), plus an additive term of (f+1)logn(f+1) \log n. Then, we show how to convert our structure into an efficient ff-EFT \emph{single-source distance oracle} (SSDO), that can be built in O~(fm)\widetilde{O}(f m) time, has size O(fnlog2n)O(fn \log^2 n), and is able to report, after the failure of the edge set FF, in O(F2log2n)O(|F|^2 \log^2 n) time a (2F+1)(2|F|+1)-approximate distance from the source to any node, and a corresponding approximate path in the same amount of time plus the path's size. Such an oracle is obtained by handling another fundamental problem, namely that of updating a \emph{minimum spanning forest} (MSF) of GG after that a \emph{batch} of kk simultaneous edge modifications (i.e., edge insertions, deletions and weight changes) is performed. For this problem, we build in O(mlog3n)O(m \log^3 n) time a \emph{sensitivity} oracle of size O(mlog2n)O(m \log^2 n), that reports in O(k2log2n)O(k^2 \log^2 n) time the (at most 2k2k) edges either exiting from or entering into the MSF. [...]Comment: 16 pages, 4 figure
    corecore