How hard is counting triangles in the streaming model?

Vladimir Braverman, Rafail Ostrovsky, Dan Vilenchik

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review


The problem of (approximately) counting the number of triangles in a graph is one of the basic problems in graph theory. In this paper we study the problem in the streaming model. Specifically, the amount of memory required by a randomized algorithm to solve this problem. In case the algorithm is allowed one pass over the stream, we present a best possible lower bound of Ω(m) for graphs G with m edges. If a constant number of passes is allowed, we show a lower bound of Ω(m/T), T the number of triangles. We match, in some sense, this lower bound with a 2-pass O(m/T1/3)-memory algorithm that solves the problem of distinguishing graphs with no triangles from graphs with at least T triangles. We present a new graph parameter ρ(G) - the triangle density, and conjecture that the space complexity of the triangles problem is Θ(m/ρ(G)). We match this by a second algorithm that solves the distinguishing problem using O(m/ρ(G))-memory.

Original languageAmerican English
Title of host publicationAutomata, Languages, and Programming - 40th International Colloquium, ICALP 2013, Proceedings
Number of pages11
EditionPART 1
StatePublished - 23 Jul 2013
Externally publishedYes
Event40th International Colloquium on Automata, Languages, and Programming, ICALP 2013 - Riga, Latvia
Duration: 8 Jul 201312 Jul 2013

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
NumberPART 1
Volume7965 LNCS


Conference40th International Colloquium on Automata, Languages, and Programming, ICALP 2013

All Science Journal Classification (ASJC) codes

  • Theoretical Computer Science
  • General Computer Science


Dive into the research topics of 'How hard is counting triangles in the streaming model?'. Together they form a unique fingerprint.

Cite this