A Dynamic Data Structure for Representing Timed Transitive Closures on Disk
Temporal graphs represent interactions between entities over time. These interactions may be direct, a contact between two vertices at some time instant, or indirect, through sequences of contacts called journeys. Deciding whether an entity can reach another through a journey is useful for various applications in complex networks. In this paper, we present a disk-based data structure that maintains temporal reachability information under the addition of new contacts in a non-chronological order. It represents the timed transitive closure (TTC) by a set of expanded R-tuples of the form (u, v, t^-, t^+), which encodes the existence of journeys from vertex u to vertex v with departure at time t^- and arrival at time t^+. Let n be the number of vertices and τ be the number of timestamps in the lifetime of the temporal graph. Our data structure explicitly maintains this information in linear arrays using O(n^2τ) space so that sequential accesses on disk are prioritized. Furthermore, it adds a new unsorted contact (u, v, t) accessing O(n^2τ/B) sequential pages in the worst-case, where B is the of pages on disk; it answers whether there is of a journey from a vertex u to a vertex v within a time interval [t_1, t_2] accessing a single page; it answers whether all vertices can reach each other in [t_1, t_2]; and it reconstructs a valid journey that validates the reachability from a vertex u to a vertex v within [t_1, t_1] accessing O(nτ/B) pages. Our experiments show that our novel data structure are better that the best known approach for the majority of cases using synthetic and real world datasets.
READ FULL TEXT