Faster and Generalized Temporal Triangle Counting, via Degeneracy Ordering

06/05/2021
by   Noujan Pashanasangi, et al.
0

Triangle counting is a fundamental technique in network analysis, that has received much attention in various input models. The vast majority of triangle counting algorithms are targeted to static graphs. Yet, many real-world graphs are directed and temporal, where edges come with timestamps. Temporal triangles yield much more information, since they account for both the graph topology and the timestamps. Temporal triangle counting has seen a few recent results, but there are varying definitions of temporal triangles. In all cases, temporal triangle patterns enforce constraints on the time interval between edges (in the triangle). We define a general notion (δ_1,3, δ_1,2, δ_2,3)-temporal triangles that allows for separate time constraints for all pairs of edges. Our main result is a new algorithm, DOTTT (Degeneracy Oriented Temporal Triangle Totaler), that exactly counts all directed variants of (δ_1,3, δ_1,2, δ_2,3)-temporal triangles. Using the classic idea of degeneracy ordering with careful combinatorial arguments, we can prove that DOTTT runs in O(mκlog m) time, where m is the number of (temporal) edges and κ is the graph degeneracy (max core number). Up to log factors, this matches the running time of the best static triangle counters. Moreover, this running time is better than existing. DOTTT has excellent practical behavior and runs twice as fast as existing state-of-the-art temporal triangle counters (and is also more general). For example, DOTTT computes all types of temporal queries in Bitcoin temporal network with half a billion edges in less than an hour on a commodity machine.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/30/2019

Equivalences between triangle and range query problems

We define a natural class of range query problems, and prove that all pr...
research
09/10/2017

WRS: Waiting Room Sampling for Accurate Triangle Counting in Real Graph Streams

If we cannot store all edges in a graph stream, which edges should we st...
research
10/18/2017

A recognition algorithm for simple-triangle graphs

A simple-triangle graph is the intersection graph of triangles that are ...
research
03/09/2022

Tailored vertex ordering for faster triangle listing in large graphs

Listing triangles is a fundamental graph problem with many applications,...
research
07/26/2021

TriPoll: Computing Surveys of Triangles in Massive-Scale Temporal Graphs with Metadata

Understanding the higher-order interactions within network data is a key...
research
08/19/2021

odeN: Simultaneous Approximation of Multiple Motif Counts in Large Temporal Networks

Counting the number of occurrences of small connected subgraphs, called ...
research
02/15/2023

Forbidden Patterns in Temporal Graphs Resulting from Encounters in a Corridor

In this paper, we study temporal graphs arising from mobility models whe...

Please sign up or login with your details

Forgot password? Click here to reset