Abstract
We consider the problem of estimating the number of triangles in a graph. This problem has been extensively studied in both theory and practice, but all existing algorithms read the entire graph. In this work we design a sublinear-time algorithm for approximating the number of triangles in a graph, where the algorithm is given query access to the graph. The allowed queries are degree queries, vertex-pair queries, and neighbor queries. We show that for any given approximation parameter 0 < ϵ < 1, the algorithm provides an estimate t such that, with high constant probability, (1 - ϵ)· t <t < (1 + ϵ)·t, where t is the number of triangles in the graph G. The expected query complexity of the algorithm is (n/t1/3 + min{m, m3/2/t})· poly(logn, 1/ϵ), where n is the number of vertices in the graph and m is the number of edges. The expected running time of the algorithm is (m is the number of edges. The expected running time of the algorithm is (n/t1/3 + m3/2/t)·poly (log n, 1/ϵ). We also prove that Ω(n/t1/3 + min{m, m3/2/t) queries are necessary, thus establishing that the query complexity of this algorithm is optimal up to the dependence on poly(logn, 1/ϵ).
| Original language | English |
|---|---|
| Pages (from-to) | 1603-1646 |
| Number of pages | 44 |
| Journal | SIAM Journal on Computing |
| Volume | 46 |
| Issue number | 5 |
| DOIs | |
| State | Published - 2017 |
All Science Journal Classification (ASJC) codes
- General Computer Science
- General Mathematics