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

Authors:
Sepehr Assadi, Michael Kapralov, Sanjeev Khanna.

Abstract:
In the subgraph counting problem, we are given a (large) graph G(V, E) and a (small) graph H (e.g., a triangle), and the goal is to estimate the number of occurrences of H in G. Our focus here is on designing
sublinear-time algorithms for approximately computing number of occurrences of H in G in the setting where the algorithm is given query access to G.
This problem has been studied in several recent works which primarily focused on specific families of graphs H such as triangles, cliques, and stars.
However, not much is known about approximate counting of arbitrary graphs H in the literature. This is in sharp contrast to the closely related subgraph enumeration problem that has received significant attention in the database community as the database join problem. The AGM bound shows that the maximum number of occurrences of any arbitrary subgraph H in a graph G with m edges is O(m^{ρ(H)}), where ρ(H) is the fractional
edge cover of H, and enumeration algorithms with matching runtime are known for any H.

In this work, we bridge this gap between the subgraph counting and subgraph enumeration problems by designing a simple sublinear-time algorithm that can estimate the number of occurrences of any arbitrary graph H in G, denoted by #H, to within a (1 ± ε)-approximation with high probability in O(m^{ρ(H)} /#H)·poly(logn,1/ε) time. Our algorithm is allowed the standard set of queries for general graphs, namely degree queries, pair queries and neighbor queries, plus an additional edge-sample query that returns an edge chosen uniformly at random. The performance of our algorithm matches those of Eden et al. [FOCS 2015, STOC 2018] for counting triangles and cliques and extend them to all choices of subgraph H under the additional assumption of edge-sample queries. We further show that our algorithm works for a more general version of the estimation problem where edges of G and H have colors, which corresponds to the database join size estimation problem. For this slightly more general setting, we also establish a matching lower bound for any choice of subgraph H.

In this work, we bridge this gap between the subgraph counting and subgraph enumeration problems by designing a simple sublinear-time algorithm that can estimate the number of occurrences of any arbitrary graph H in G, denoted by #H, to within a (1 ± ε)-approximation with high probability in O(m^{ρ(H)} /#H)·poly(logn,1/ε) time. Our algorithm is allowed the standard set of queries for general graphs, namely degree queries, pair queries and neighbor queries, plus an additional edge-sample query that returns an edge chosen uniformly at random. The performance of our algorithm matches those of Eden et al. [FOCS 2015, STOC 2018] for counting triangles and cliques and extend them to all choices of subgraph H under the additional assumption of edge-sample queries. We further show that our algorithm works for a more general version of the estimation problem where edges of G and H have colors, which corresponds to the database join size estimation problem. For this slightly more general setting, we also establish a matching lower bound for any choice of subgraph H.

Conference version:
[PDF]

Full version:
[arXiv]

Streaming Video:
[YouTube] (presenting on TCS+)

BibTex:
[DBLP]