Spanning Adjacency Oracles in Sublinear Time

08/26/2023
by   Greg Bodwin, et al.
0

Suppose we are given an n-node, m-edge input graph G, and the goal is to compute a spanning subgraph H on O(n) edges. This can be achieved in linear O(m + n) time via breadth-first search. But can we hope for sublinear runtime in some range of parameters? If the goal is to return H as an adjacency list, there are simple lower bounds showing that Ω(m + n) runtime is necessary. If the goal is to return H as an adjacency matrix, then we need Ω(n^2) time just to write down the entries of the output matrix. However, we show that neither of these lower bounds still apply if instead the goal is to return H as an implicit adjacency matrix, which we call an adjacency oracle. An adjacency oracle is a data structure that gives a user the illusion that an adjacency matrix has been computed: it accepts edge queries (u, v), and it returns in near-constant time a bit indicating whether (u, v) ∈ E(H). Our main result is that one can construct an adjacency oracle for a spanning subgraph on at most (1+ε)n edges, in Õ(n ε^-1) time, and that this construction time is near-optimal. Additional results include constructions of adjacency oracles for k-connectivity certificates and spanners, which are similarly sublinear on dense-enough input graphs. Our adjacency oracles are closely related to Local Computation Algorithms (LCAs) for graph sparsifiers; they can be viewed as LCAs with some computation moved to a preprocessing step, in order to speed up queries. Our oracles imply the first Local algorithm for computing sparse spanning subgraphs of general input graphs in Õ(n) query time, which works by constructing our adjacency oracle, querying it once, and then throwing the rest of the oracle away. This addresses an open problem of Rubinfeld [CSR '17].

READ FULL TEXT

page 8

page 18

page 21

page 23

page 26

research
11/19/2020

Quantum query complexity of edge connectivity

The edge connectivity of a simple graph is the least number of edges who...
research
09/05/2021

On the query complexity of connectivity with global queries

We study the query complexity of determining if a graph is connected wit...
research
11/19/2018

A Simple Sublinear-Time Algorithm for Counting Arbitrary Subgraphs via Edge Sampling

In the subgraph counting problem, we are given a input graph G(V, E) and...
research
07/01/2023

Effective Resistances in Non-Expander Graphs

Effective resistances are ubiquitous in graph algorithms and network ana...
research
06/09/2020

Sublinear Algorithms and Lower Bounds for Metric TSP Cost Estimation

We consider the problem of designing sublinear time algorithms for estim...
research
12/07/2017

Core Discovery in Hidden Graphs

Massive network exploration is an important research direction with many...
research
04/06/2020

Random Osborne: a simple, practical algorithm for Matrix Balancing in near-linear time

We revisit Matrix Balancing, a pre-conditioning task used ubiquitously f...

Please sign up or login with your details

Forgot password? Click here to reset