English

Locally computing edge orientations

Data Structures and Algorithms 2025-01-07 v1

Abstract

We consider the question of orienting the edges in a graph GG such that every vertex has bounded out-degree. For graphs of arboricity α\alpha, there is an orientation in which every vertex has out-degree at most α\alpha and, moreover, the best possible maximum out-degree of an orientation is at least α1\alpha - 1. We are thus interested in algorithms that can achieve a maximum out-degree of close to α\alpha. A widely studied approach for this problem in the distributed algorithms setting is a ``peeling algorithm'' that provides an orientation with maximum out-degree α(2+ϵ)\alpha(2+\epsilon) in a logarithmic number of iterations. We consider this problem in the local computation algorithm (LCA) model, which quickly answers queries of the form ``What is the orientation of edge (u,v)(u,v)?'' by probing the input graph. When the peeling algorithm is executed in the LCA setting by applying standard techniques, e.g., the Parnas-Ron paradigm, it requires Ω(n)\Omega(n) probes per query on an nn-vertex graph. In the case where GG has unbounded degree, we show that any LCA that orients its edges to yield maximum out-degree rr must use Ω(n/r)\Omega(\sqrt n/r) probes to GG per query in the worst case, even if GG is known to be a forest (that is, α=1\alpha=1). We also show several algorithms with sublinear probe complexity when GG has unbounded degree. When GG is a tree such that the maximum degree Δ\Delta of GG is bounded, we demonstrate an algorithm that uses Δn1logΔr+o(1)\Delta n^{1-\log_\Delta r + o(1)} probes to GG per query. To obtain this result, we develop an edge-coloring approach that ultimately yields a graph-shattering-like result. We also use this shattering-like approach to demonstrate an LCA which 44-colors any tree using sublinear probes per query.

Keywords

Cite

@article{arxiv.2501.02136,
  title  = {Locally computing edge orientations},
  author = {Slobodan Mitrović and Ronitt Rubinfeld and Mihir Singhal},
  journal= {arXiv preprint arXiv:2501.02136},
  year   = {2025}
}