A \emph{metric tree embedding} of expected \emph{stretch~α≥1}
maps a weighted n-node graph G=(V,E,ω) to a weighted tree T=(VT,ET,ωT) with V⊆VT such that, for all v,w∈V,
dist(v,w,G)≤dist(v,w,T) and
operatornameE[dist(v,w,T)]≤αdist(v,w,G). Such embeddings are highly useful for designing
fast approximation algorithms, as many hard problems are easy to solve on tree
instances. However, to date the best parallel (polylogn)-depth algorithm that achieves an asymptotically optimal expected stretch of
α∈O(logn) requires Ω(n2)
work and a metric as input.
In this paper, we show how to achieve the same guarantees using
polylogn depth and O~(m1+ϵ)
work, where m=∣E∣ and ϵ>0 is an arbitrarily small constant.
Moreover, one may further reduce the work to O~(m+n1+ϵ) at the expense of increasing the expected stretch to
O(ϵ−1logn).
Our main tool in deriving these parallel algorithms is an algebraic
characterization of a generalization of the classic Moore-Bellman-Ford
algorithm. We consider this framework, which subsumes a variety of previous
"Moore-Bellman-Ford-like" algorithms, to be of independent interest and discuss
it in depth. In our tree embedding algorithm, we leverage it for providing
efficient query access to an approximate metric that allows sampling the tree
using polylogn depth and O~(m) work.
We illustrate the generality and versatility of our techniques by various
examples and a number of additional results