Approximate Triangle Counting via Sampling and Fast Matrix Multiplication

Abstract

There is a trivial O(n3T) time algorithm for approximate triangle counting where T is the number of triangles in the graph and n the number of vertices. At the same time, one may count triangles exactly using fast matrix multiplication in time O(nω). Is it possible to get a negative dependency on the number of triangles T while retaining the nω dependency on n? We answer this question positively by providing an algorithm which runs in time O(nωTω - 2) · poly(no(1)/ε). This is optimal in the sense that as long as the exponent of T is independent of n, T, it cannot be improved while retaining the dependency on n; this as follows from the lower bound of Eden and Rosenbaum [APPROX/RANDOM 2018]. Our algorithm improves upon the state of the art when T = ω(1) and T = o(n). We also consider the problem of approximate triangle counting in sparse graphs, parameterizing by the number of edges m. The best known algorithm runs in time O(m3/2T) [Eden et al., SIAM Journal on Computing, 2017]. There is also a well known algorithm for exact triangle counting that runs in time O(m2ω/(ω + 1)). We again get an algorithm that retains the exponent of m while running faster on graphs with larger number of triangles. Specifically, our algorithm runs in time O(m2ω/(ω+1) T2(ω-1)/(ω+1)) · poly(no(1)/ε). This is again optimal in the sense that if the exponent of T is to be constant, it cannot be improved without worsening the dependency on m. This algorithm improves upon the state of the art when T = ω(1) and T = o(m).

0

Turn this paper into a lesson

ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…