We consider the well-known problem of enumerating all triangles of an undirected graph. Our focus is on determining the input/output (I/O) complexity of this problem. Let $E$ be the number of edges, $M<E$ the size of internal memory, and $B$ the block size. The best results obtained previously are sort$(E^{3/2})$ I/Os (Dementiev, PhD thesis 2006) and $O(E^2/(MB))$ I/Os (Hu et al., SIGMOD 2013), where sort$(n)$ denotes the number of I/Os for sorting $n$ items. We improve the I/O complexity to $O(E^{3/2}/(\sqrt{M} B))$ expected I/Os, which improves the previous bounds by a factor $\min(\sqrt{E/M},\sqrt{M})$. Our algorithm is cache-oblivious and also I/O optimal: We show that any algorithm enumerating $t$ distinct triangles must always use $\Omega(t/(\sqrt{M} B))$ I/Os, and there are graphs for which $t=\Omega(E^{3/2})$. Finally, we give a deterministic cache-aware algorithm using $O(E^{3/2}/(\sqrt{M} B))$ I/Os assuming $M\geq E^\varepsilon$ for a constant $\varepsilon > 0$. Our results are based on a new color coding technique, which may be of independent interest.

The Input/Output Complexity of Triangle Enumeration

SILVESTRI, FRANCESCO
2014

Abstract

We consider the well-known problem of enumerating all triangles of an undirected graph. Our focus is on determining the input/output (I/O) complexity of this problem. Let $E$ be the number of edges, $M 0$. Our results are based on a new color coding technique, which may be of independent interest.
2014
Proceedings of the 33rd ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems
9781450323758
File in questo prodotto:
Non ci sono file associati a questo prodotto.
Pubblicazioni consigliate

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11577/2836358
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 48
  • ???jsp.display-item.citation.isi??? 29
social impact