Table of Contents
Fetching ...

All-Hops Shortest Paths

Virginia Vassilevska Williams, Zoe Xi, Yinzhan Xu, Uri Zwick

TL;DR

The single-pair, single-source and all-pairs versions of the problem, and a distance oracle version of the problem in which the algorithms are not required to explicitly compute all distances, but rather return each one of these distances upon request are considered.

Abstract

Let $G=(V,E,w)$ be a weighted directed graph without negative cycles. For two vertices $s,t\in V$, we let $d_{\le h}(s,t)$ be the minimum, according to the weight function $w$, of a path from $s$ to $t$ that uses at most $h$ edges, or hops. We consider algorithms for computing $d_{\le h}(s,t)$ for every $1\le h\le n$, where $n=|V|$, in various settings. We consider the single-pair, single-source and all-pairs versions of the problem. We also consider a distance oracle version of the problem in which we are not required to explicitly compute all distances $d_{\le h}(s,t)$, but rather return each one of these distances upon request. We consider both the case in which the edge weights are arbitrary, and in which they are small integers in the range $\{-M,\ldots,M\}$. For some of our results we obtain matching conditional lower bounds.

All-Hops Shortest Paths

TL;DR

The single-pair, single-source and all-pairs versions of the problem, and a distance oracle version of the problem in which the algorithms are not required to explicitly compute all distances, but rather return each one of these distances upon request are considered.

Abstract

Let be a weighted directed graph without negative cycles. For two vertices , we let be the minimum, according to the weight function , of a path from to that uses at most edges, or hops. We consider algorithms for computing for every , where , in various settings. We consider the single-pair, single-source and all-pairs versions of the problem. We also consider a distance oracle version of the problem in which we are not required to explicitly compute all distances , but rather return each one of these distances upon request. We consider both the case in which the edge weights are arbitrary, and in which they are small integers in the range . For some of our results we obtain matching conditional lower bounds.

Paper Structure

This paper contains 16 sections, 28 theorems, 25 equations, 1 figure.

Key Result

Theorem 1.1

There is an $\widetilde{O}(M n^{\omega})$ time algorithm that takes as input a weighted directed graph $G = (V, E,w)$, with edge weights in $\{-M, \ldots, M\}$ and no negative cycles, and vertices $s, t\in V$, and outputs $d_{\leq h}(s, t)$ for all $1\leq h< n = |V|$.

Figures (1)

  • Figure 1: A depiction of our gadget for $\ell=2$. Note that the distance between $u_i$ and $v$ is $2+i$ for every $i=1,2,3,4$. The number of hops on each $u_i$ to $v$ path is $3$.

Theorems & Definitions (50)

  • Theorem 1.1
  • Theorem 1.2
  • Theorem 1.3
  • Theorem 1.4
  • Corollary 1.5
  • Theorem 1.6
  • Theorem 1.7
  • Theorem 1.8
  • Theorem 1.9
  • Theorem 2.1: Bellman58Ford56
  • ...and 40 more