HAL Id: hal-00941622
https://hal.inria.fr/hal-00941622v2
Submitted on 14 Feb 2014
HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or
L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires
Graphs
Klaus Wehmuth, Artur Ziviani, Eric Fleury
To cite this version:
Klaus Wehmuth, Artur Ziviani, Eric Fleury. A Unifying Model for Representing Time-Varying Graphs.
[Research Report] RR-8466, INRIA. 2014, pp.38. �hal-00941622v2�
0249-6399ISRNINRIA/RR--8466--FR+ENG
RESEARCH REPORT N° 8466
January 2014
Representing
Time-Varying Graphs
Klaus Wehmuth, Artur Ziviani, Éric Fleury
RESEARCH CENTRE GRENOBLE – RHÔNE-ALPES Inovallée
Klaus Wehmuth
∗, Artur Ziviani
∗, Éric Fleury
†Project-Team DANTE
Research Report n° 8466 — January 2014 — 39 pages
Abstract: We propose a novel model for representing finite discrete Time-Varying Graphs (TVGs). We show how key concepts, such as degree, path, and connectivity, are han- dled in our model. We also analyze the data structures built following our proposed model and demonstrate that, for most practical cases, the asymptotic memory complexity of our model is restricted to the cardinality of the set of edges. Moreover, we prove that if the TVG nodes can be considered as independent entities at each time instant, the analyzed TVG is isomorphic to a directed static graph. This is an important theoretical result since this allows the use of the isomorphic directed graph as a tool to analyze both the properties of a TVG and the behavior of dynamic processes over a TVG. We also show that our unifying model can represent several previous (classes of) models for dynamic networks found in the recent literature, which in gen- eral are unable to represent each other. In contrast to previous models, our proposal is also able to intrinsically model cyclic (i.e. periodic) behavior in dynamic networks. These representation capabilities attest the expressive power of our proposed unifying model for TVGs.
Key-words: dynamic networks, temporal networks, graphs, dynamic graphs, complex networks
∗National Laboratory for Scientific Computing (LNCC) – Av. Getúlio Vargas, 333 – 25651-075 - Petrópolis, RJ - Brazi
† LIP – UMR CNRS 5668 – Ecole Normale Supérieure de Lyon (ENS de Lyon) / INRIA – 46, allée d’Italie 69364 – Lyon Cedex 07, France
les graphes dynamiques (i.e., des graphes susceptibles d’évoluer au cours du temps). Nous montrons qu elles définitionsclefs comme le degré, la notion de chemin, de connectivité sont prise en compte par ce modèle. Une analyse de la complexité des structures de données nécessaire à la représentation de ce modèle montre que la complexité asymptotique est en O(m) (cardinalité du nombre d’arêtes du graphe dynamique). Si les sommets d’un TVG peuvent être considérés comme des entités indépendantes à chaque instant, alors on démontre que le graphe TVG est isomorphe à un graphe orienté static. Notre modèle permet de représenter et de prendre en compte les différentes propositions existantes qui n’étaient pas en mesure de se représenter les unes les autres.
Mots-clés : réseaux dynamiques, réseaux temporels, graphes, graphes dynamique, réseaux
complexes
1 Introduction
Graph theory has been used for the analysis of several networked systems, being at the core of the new field of Network Science. Much of the utility of the graph abstraction resides in the fact that it can represent relations between a set of objects as well as their connectivity properties, which derive from edge transitivity in a straightforward way without the need of further assumptions that are not explicit in the graph abstraction itself. In this context, there is a lot of studies focusing on investigating the behavior of dynamic processes, such as random walks or information diffusion, over complex networks [PSV01, KKT03, BBV08, IFM09].
More recently, there is an increasing interest in investigating not only the process dynamics on networks, but also the dynamics of networks, i.e. when the network structure (nodes and edges) may vary over time [GDM09, FNR
+12, HS13]. This, however, brings a difficulty since the original graph abstraction was not originally created considering time relations between nodes.
As a consequence, the need to extend the basic graph abstraction in order to include time relations between nodes arose, leading to many models for Time-Varying Graphs (TVGs) [BXFJ03, Fer04, Hol05, Kos09, TMML09, HS12, CFQS12, KA12].
As recent models appear extending the basic graph concept to include time relations (Section 4 discusses related work), they are nonetheless not general enough to satisfy the needs of different networked systems and also in many cases rely on assumptions that are not explicitly part of the model. For instance, in models based on snapshots (i.e., a series of static graphs), such as those in [BXFJ03, Fer04], it is implicitly assumed that a node in a given snapshot is connected to ’itself’ in the next snapshot, making it possible to extend the transitivity of edges over time.
This assumption, however, is not made explicit in the snapshot model. Therefore, when analysed without this implicit assumption, a snapshot model is a sequence of disconnected graphs and therefore no connectivity is possible between different time instants. The need to handle this assumption, which is not explicitly part of the model, brings difficulties since the structure of the model by itself is no longer sufficient to properly represent its behavior, making the understanding, usage, and analysis of such models more complex.
In this paper, we propose a new unifying model for representing finite discrete TVGs. Our pro- posed model is sufficiently general to capture the needs of distinct dynamic networks [AHFVZ12, SVZ12, HS12, GaVSZ13], whereas not requiring any further assumption that is not explicitly contained in the model itself. Further, our model aims at preserving the strictly discrete nature of the basic graph abstraction, while also allowing to properly represent time relations between nodes. Moreover, we prove that if the TVG nodes can be considered as independent entities at each time instant, the analyzed TVG is isomorphic to a directed static graph. This is an important theoretical result because this allows the use of the isomorphic directed graph as a tool to analyze both the properties of a TVG and the behavior of dynamic processes over a TVG.
We also demonstrate that, for most practical cases, the asymptotic memory complexity of our TVG model is determined by the cardinality of the set of edges. Furthermore, we also show the unifying properties of our proposed model for representing TVGs by describing how it represents several previous (classes of) models for dynamic networks found in the recent literature, which in general are unable to represent each other. In contrast to previous models, our proposal is able to intrinsically model cyclic (i.e. periodic) behavior in dynamic networks. These representation features attest the expressive power of our proposed unifying model for TVGs.
This paper proceeds as follows. Section 2 introduces our proposed unifying model for repre-
senting TVGs and its main properties. Section 3 discusses data structures to properly represent
TVGs using our model. In Section 4, we show how our unifying model can be used to represent
previous models for dynamic networks while these models in general are unable to represent each
other. Finally, we conclude in Section 5.
2 Proposed model for representing TVGs and its main prop- erties
Time-varying graphs (TVGs) are graphs in which nodes, or edges may vary in time. In this section, we formally define our proposed model for representing TVGs and present its main properties as well. To that end, we use the same notation adopted by [BJG08] for directed graphs.
2.1 Proposed model for representing TVGs
Our proposed model represents a TVG as an object H = (V, E, T ), where V is the set of nodes, T is the finite set of time instants for which the TVG is defined, and E ⊆ V × T × V × T is the set of edges. As a matter of notation, we denote V (H) as the set of all nodes in H , E(H ) the set of all edges in H , and T(H ) the set of all time instants in H . We also define n(H) = | V (H ) | the number of nodes in H , m(H ) = | E(H ) | the number of edges in H , and τ(H ) = | T (H ) | the number of time instants in which H is defined.
A dynamic edge e in a TVG H is defined as an ordered quadruple e = (u, t
a, v, t
b), where u, v ∈ V (H) are the origin and destination nodes (u possibly equal to v) while t
a, t
b∈ T (H ) are the origin and destination time instants, respectively (t
apossibly equal to t
b). Therefore, the dynamic edge e = (u, t
a, v, t
b) should be understood as a connection from node u at time t
ato node v at time t
b. As hinted by its temporal nature, a dynamic edge is a directed edge.
If one needs to represent an undirected edge in the TVG, both (u, t
a, v, t
b) and its reciprocal (v, t
b, u, t
a) should be present in E(H ). As a matter of notation, in the remaining of the paper, a TVG will be represented by a upper case letter, usually H or K, a node will be represented by a lower case letter, usually u, v, r or s, a time instant will be represented as t
a, where the index a denotes its position in time, and a dynamic edge will be represented as the ordered quadruple (u, t
a, v, t
b) (or in a shorter form by the letter e).
We define four canonical projections, each projection mapping a dynamic edge into each one of its components:
π
1: E(H) → V (H) (u, t
a, v, t
b) 7→ u,
π
2: E(H) → T (H) (u, t
a, v, t
b) 7→ t
a,
π
3: E(H) → V (H) (u, t
a, v, t
b) 7→ v,
π
4: E(H) → T (H) (u, t
a, v, t
b) 7→ t
b.
One may decide to classify an edge e = (u, t
a, v, t
b) into four classes depending on its temporal characteristic:
1. Spatial edges connect two nodes at the same time instant, e is in the form of e = (u, t
a, v, t
a),
where u 6 = v;
2. Temporal edges connect the same node at two distinct time instants, e is in the form of e = (u, t
a, u, t
b), where t
a6 = t
b;
3. Mixed edges connect distinct nodes in distinct time instants, e is in the form of e = (u, t
a, v, t
b), where u 6 = v and t
a6 = t
b;
4. Spatial-temporal self-loop edges connect the same node at the same time instant, e is in the form of, e = (u, t
a, u, t
a).
We define a temporal node as an ordered pair (u, t
a), where u ∈ V (H ) is a node and t
a∈ T (H) is a time instant. A temporal node is the representation of a given node at a given time instant.
The set of temporal nodes in a TVG H is given by V (H ) × T (H ), the cartesian product of the set of nodes and the set of time instants. We denote V T (H) = V (H) × T (H) as the set of all temporal nodes on TVG H . As a matter of notation, a temporal node is represented by the ordered pair that defines it, e.g. (u, t
a), or as u
tafor a short notation. We use the canonical projections π
1(u
t) and π
2(u
t) to extract the node and time instant that compose the temporal node. We also use the notation (u, · ) to denote a node u at any time instant, which is indeed equivalent to stating that node u ∈ V .
The definition of a TVG H is as general as possible and does not impose any order on the time set T (H). One may want to stick to the classical time notion and impose a total order on T (H ). Within such a context where T (H) has a linear order, both mixed or temporal dynamic edges e = (u, t
a, v, t
b) can also be classified as progressive or regressive depending on the order of their temporal components. Dynamic edges that are originated at an earlier time instant and destined to a later time instant are progressive (t
a< t
b), whereas dynamic edges originated at a later time instant and destined to an earlier time instant are regressive (t
a> t
b).
Regressive edges are particularly useful for creating cyclic TVGs, which in turn can be applied to model networks with a cyclic periodic behavior. A simple example of this is a wireless DTN (Delay/Disruption-Tolerant Network) [Fal03] with n nodes, out of which n − 1 nodes are fixed and mutually disconnected, while the remaining node is a mobile one that behaves on a cyclic pattern connecting to a single fixed node at each time instant. A similar scheme can be used to model Wireless Sensor Networks (WSNs) with a mobile sink [CKN08, VVZF10] that regularly visits the sensor nodes to gather the most recent monitored information.
A sub-TVG J of the TVG H is defined in a straightforward way: J = (V, E, T ), V (J) ⊆ V (H ), E(J ) ⊆ E(H), T (J ) ⊆ T(H ), such that for all e ∈ E(J ), π
1(e), π
3(e) ∈ V (J ) and π
2(e), π
4(e) ∈ T(J ).
2.2 TVG isomorphism
We define the TVG isomorphism as an extension of the concept of the graph isomorphism.
Two TVGs H and K are isomorphic if there is a pair of bijective functions f and g, where f : V (H ) → V (K) and g : T (H ) → T (K), such that a dynamic edge (u, t
a, v, t
b) ∈ E(H) if and only if the dynamic edge (f (u), g(t
a), f (v), g(t
b)) ∈ E(K).
Since the TVG isomorphism is an equivalence relation, the set of all TVGs isomorphic to
a given TVG H form an equivalence class in the set of all TVGs. This equivalence relation
partitions the set of all TVGs. Further, since the functions f and g are bijections, it follows
that if two TVGs H and K are isomorphic, they necessarily have the same number of nodes
and the same number of time instants, i.e. | V (H) | = | V (K) | and | T (H ) | = | T (K) | . From
the requirement that a dynamic edge (u, t
a, v, t
b) exists in H if and only if the dynamic edge
(f (u), g(t
a), f(v), g(t
b)) exists in K, it can be seen that two isomorphic TVGs also have the same
number of dynamic edges, i.e. | E(H ) | = | E(K) | .
The TVG isomorphism is not a time order preserving isomorphism. A time order preserving isomorphism can be obtained by further requiring the sets T (H ) and T (K) to have a linear order and the function g to be an order isomorphism, which is an order preserving bijection whose inverse is also order preserving. Hence, for any t
a, t
b∈ T (H ) we have that t
a< t
bif and only if g(t
a) < g(t
b). Note that since g is a bijection, it follows that t
a= t
bif and only if g(t
a) = g(t
b).
2.3 Isomorphism between TVGs and directed graphs
In this section, we show that there is an isomorphism between TVGs and directed graphs. We also discuss the circumstances under which this isomorphism holds and the properties it preserves.
Theorem 2.1 For every TVG H with n nodes and τ time instants, where n > 1 and τ > 1, there is a directed graph G with n × τ nodes which is isomorphic to H. This directed graph G is unique up to a graph isomorphism.
Proof 2.1 We show that for any given TVG H with n nodes and τ time instants, there is a unique (up to a graph isomorphism) directed graph G with n × τ nodes for which there is a bijective function f : V T (H ) → V (G), such that any dynamic edge (u, t
a, v, t
b) ∈ E(H ) if and only if the edge (f ((u, t
a)), f ((v, t
b))) ∈ E(G).
• Existence of G:
Given an arbitrary TVG H with n nodes and τ time instants, we construct a directed graph G that satisfies the isomorphism conditions. We start with a graph G with n × τ nodes and no edges (E(G) = ∅). Note that the number of nodes in G equals the number of elements in the set V T (H) = V (H) × T (H), i.e. | V (G) | = | V T (H ) | = n × τ . We then take an arbitrary bijective function f : V T (H ) → V (G). Since by construction the sets V T (H ) and V (G) have the same number of elements, such bijection exists. Finally, for every dynamic edge (u, t
a, v, t
b) ∈ E(H ), we add an edge (f ((u, t
a)), f ((v, t
b))) to E(G). Since f is injective, it follows that if (a, t
b) 6 = (c, t
d), then f((a, t
b)) 6 = f ((c, t
d)). Therefore each distinct dynamic edge (u, t
a, v, t
b) is mapped to a distinct edge (f ((u, t
a)), f((v, t
b))). As the only edges in E(G) are the ones mapped from dynamic edges in E(H), it follows that (u, t
a, v, t
b) ∈ E(H) if and only if (f((u, t
a)), f ((v, t
b))) ∈ E(G), as required. Note that by this property we have that the number of dynamic edges in H is the same as the number of edges in G, i.e. | E(H ) | = | E(G) | . This gives us a directed graph G and a bijective function f that satisfy the isomorphism requirements. Therefore, we have shown that the required graph G exists.
• Uniqueness of G:
Let’s assume that in addition to the TVG H , the directed graph G, and the bijective function f described above, we also have another directed graph J with n × τ nodes and a bijective function j : V T(H ) → V (J), such that any dynamic edge (u, t
a, v, t
b) ∈ E(H ) if and only if the dynamic edge (j((u, t
a)), j((v, t
b))) ∈ E(J ). Since both f and j are bijective functions, it follows that the composite function (j ◦ f
−1) : V (G) → V (J) is also a bijection. Further, from the definitions of f and j, it follows that the nodes w, z ∈ V (G) are adjacent in G if and only if the nodes (j ◦ f
−1)(w), (j ◦ f
−1)(z) ∈ V (J ) are adjacent in J. To observe this, note that if the edge (w, z) ∈ E(G), then the dynamic edge
1(f
−1(w), f
−1(z)) ∈ E(H) and, as a consequence, the edge (j(f
−1(w)), j(f
−1(z))) ∈ E(J ). The converse follows from the
1This is in fact a slight abuse of notation, since(f−1(w)and(f−1(z)are ordered pairs. The formally correct notation is(π1(f−1(w)), π2(f−1(w)), π1(f−1(z)), π2(f−1(z))).
same argument applied to an edge in E(J ). Therefore, G and J are isomorphic directed graphs, and thus G is unique up to a graph isomorphism.
Given the existence and uniqueness of the directed graph G, the existence of the function f , and since H is an arbitrary TVG with n nodes and τ time instants, we conclude that the theorem holds.
Note that once a bijective function f is determined, all the permutations of f are also bi- jective functions from V T (H) to V (G). Of course, as shown in the second part of the proof of Theorem 2.1, all the graphs generated by these permutations are isomorphic to each other as well.
An intuitive interpretation of this isomorphism is that the temporal information contained on the dynamic edges and by extent in the set T(H ) can be injected into the node set of a directed graph which can be constructed in a way to preserve the edge structure of the TVG, i.e. the relations between nodes and time instants present in the TVG.
Since this isomorphism preserves the edge structure of the TVG, the isomorphic directed graph can be used as a tool to analyze properties of the TVG. However, it should be noted that this isomorphism can not preserve all properties of the TVG (since it is not an identity) and, therefore, care should be taken on its use, to make sure that the properties preserved are sufficient to justify the results obtained. For example, a walk on the TVG corresponds to a walk on the temporal node representation of the TVG (see Section 2.8).
Corollary 2.1 Given a TVG H and a directed graph G isomorphic to H , there is a bijective function from E(H) to E(G), built upon the isomorphism characterizing the bijection f , and which takes each dynamic edge in H to its corresponding edge in G.
Proof 2.2 Let H be a TVG and G a directed graph isomorphic to H. Since H and G are isomorphic, a dynamic edge (u, t
a, v, t
b) belongs to E(H ) if and only if a corresponding edge (f ((u, t
a)), f ((v, t
b))) belongs to E(G), and the function f is a bijection from V T(H ) to V (J ).
Consider the following function
h : E(H ) → E(G)
(u, t
a, v, t
b) 7→ (f (u, t
a), f(v, t
b)).
First, note that h is indeed a function, since it has a properly defined domain E(H ), codomain E(G), and association rule (u, t
a, v, t
b) 7→ ((u, t
a), (v, t
b)). Further, note that this association rule is valid since for each e ∈ E(H) there is an element e
s∈ E(G) such that e
s= h(e). This is true because since H and G are isomorphic, it follows that if e = (u, t
a, v, t
b) ∈ E(H) then e
s= (f (u, t
a), f(v, t
b)) ∈ E(G). Furthermore, note that h is defined in terms of the bijection f used to construct the isomorphism between H and G and also that h associates each dynamic edge of H with the edge in G corresponding to it in accordance with the isomorphism between H and G.
We now show that the function h is injective. Let e
1, e
2∈ E(H ). Without loss of gener- ality, we can consider that e
1= (u, t
a, v, t
b) and e
2= (r, t
c, s, t
d). We intend to show that if h(e
1) = h(e
2) then e
1= e
2. If h(e
1) = h(e
2), then (f (u, t
a), f (v, t
b)) = (f (r, t
c), f (s, t
d)), so that f (u, t
a) = f (r, t
c) and f (v, t
b) = f (s, t
d). Since f is bijective, it follows that u = r, t
a= t
c, v = s and t
b= t
d. Therefore, e
1= e
2and so h is injective.
Further, we show that h is surjective. Let e
s∈ G be any edge in the directed graph G.
Without loss of generality, we can assume that e
s= (w, z), where w, z ∈ V (G) are nodes of
the directed graph G. Since G is isomorphic to H , it follows that there is a dynamic edge
e = (u, t
a, v, t
b) ∈ E(H ), such that w = f ((u, t
a)) and z = f ((v, t
b)). Then, by the definition of h, it follows that e
s= (w, z) = h(e) = (f (u, t
a), f(v, t
b)). Therefore, for any given edge e
s∈ E(G), there is a dynamic edge e ∈ E(H ) such that e
s= h(e), and so h is a surjective function.
Since the function h associates each dynamic edge e ∈ E(H) with its isomorphic corresponding edge e
s∈ G, and h is both injective and surjective, the corollary holds.
2.3.1 Order preserving isomorphism
From the TVG definition used in this work, we have that the set T (H) containing the time instants at which the TVG is defined is not required to be an ordered set. As a consequence, the isomorphism defined in Theorem 2.1 does not necessarily preserves time ordering. If, however, a time order preserving isomorphism is required, it can be obtained by imposing additional requirements to the involved sets and functions as explained next.
First, we need the sets T (H) and V T (H) to be totally ordered sets, such that for all t
a, t
b∈ T (H ) and all u, v ∈ V (H ), t
a< t
bif and only if (u, t
a) < (v, t
b). Since this can not be done directly, we define an equivalence relation in V T(H ), partitioning it into equivalence classes and then create an order on these equivalence classes. To achieve this, we define an equivalence relation ∼ , such that (u, t
a) ∼ (v, t
b) if and only if t
a= t
b. The equivalence relation ∼ partitions the set V T (H) into τ equivalence classes, such that two elements of V T (H) are on the same equivalence class if and only if they have the same temporal component. Let T(H) be the set of equivalence classes generated by ∼ on V T (H) and Γ
ta∈ T(H ) the equivalence class of ordered pairs (u, t
x), where t
x= t
a. By construction, each equivalence class Γ ∈ T(H) has the same number of elements, | Γ | = | V (H ) | = n, equal to the number of nodes in the TVG H. The set T(H) can be totally ordered in the way desired.
Second, we define a partition on the set V (G) that has τ equivalence classes and each equiv- alence class contains | V (H) | elements. This is possible since | V (G) | = | V T (H) | . Let T (G) be the set of equivalence classes in this partition. Note that |T (G) | = |T (H) | . We then define a total order over T (G). This establishes an equivalence relation on V (G), which we denote by ≈ . Finally, we define a bijection f : V T (H) → V (G), which not only satisfies the condition for isomorphism (i.e., (u, t
a, v, t
b) ∈ E(H) if and only if (f ((u, t
a)), f((v, t
b))) ∈ E(G)), but also is consistent with the partitions in V T (H ) and V (G) as well as preserves the order of these partitions. Formally, the condition of being consistent with the partitions on V T (H) and V (G) can be written as: for all t
a, t
b∈ T (H ) and all u, v ∈ V (H ), (u, t
a) ∼ (v, t
b) if and only if f ((u, t
a)) ≈ f ((v, t
b)). The order preservation condition can be written as: for all t
a, t
b∈ T (H ) and all u, v ∈ V (H), (u, t
a) < (v, t
b) if and only if f ((u, t
a)) < f ((v, t
b)).
It remains to be shown that such an order preserving isomorphism in fact exists. We do this by example, showing that the natural isomorphism defined next in Section 2.3.2 is in fact an order preserving isomorphism.
2.3.2 Natural isomorphism
A special case can be constructed, which characterizes a natural isomorphism (i.e. a natural choice of isomorphism), by making the directed graph G such that its node set V (G) is equal to the set V T(H ) and using the identity function I : V T (H ) → V (G) as the bijective function to characterize the isomorphism.
Note that, in this case, the edges added to the graph G by the process described in Theo-
rem 2.1 are such that for every dynamic edge (u, t
a, v, t
b) ∈ E(H ) an edge ((u, t
a), (v, t
b)) ∈ E(G)
exists in the directed graph G.
To see that the natural isomorphism is also an order preserving isomorphism, note that in this case V T (H) = V (G) such that both sets can be partitioned in the same way and both partitions can be ordered in the same way. By doing this, the identity function naturally is consistent with the partitions and preserves order as required in Section 2.3.1.
2.3.3 Generalized isomorphism
At this point, an interesting supposition is the existence of an isomorphism between the set of all TVGs with finite nodes and time instants to the set of all directed graphs with finite nodes. This supposition is equivalent to state that there is a bijective function from the set of all TVGs to the set of all directed graphs, such that each TVG is associated to a unique graph that preserves the edge topology of the TVG and also that, in the same manner, each graph is associated to a unique TVG, always up to a graph and TVG isomorphism.
This supposition, however, is false. It is possible to associate each TVG with a unique graph that preserves its edge structure, but it is not possible to associate each graph with a unique TVG. This means that there is a function like the one proposed by the initial supposition, but this function is rather surjective and not injective. Therefore, no generalized isomorphism is possible.
To note why this is indeed the case, note that a given directed graph with p nodes can be associated to TVGs with different dimensions, depending on the prime decomposition of p.
Consider for instance a directed graph with p = 21, i.e., a directed graph with 21 nodes. This directed graph could be associated with a TVG with 7 nodes and 3 time instants, but also to a TVG with 3 nodes and 7 time instants. Still, there are the two trivial cases of a TVG with 1 node and 21 time instants or a TVG with 21 nodes and 1 time instant—in this case, the directed graph itself. In particular, if p is a prime number, only these two trivial cases are possible.
2.4 TVG representation by temporal nodes
In this section, we show that it is possible to create a representation of any given TVG using temporal nodes. This is equivalent to the natural isomorphism between TVGs and directed networks, presented in Section 2.3.2.
From the definition of temporal nodes, we have that given a TVG H, a temporal node is defined as (u, t
a) ∈ V T (H) = V (H ) × T (H). Therefore, if V T (H) is considered as the node set of a directed graph, it follows that an edge on this graph is an element of the set V T(H ) × V T (H), which is an ordered pair of temporal nodes. For instance, an edge between the temporal nodes (u, t
a) and (v, t
b) is represented as the ordered pair ((u, t
a), (v, t
b)) of temporal nodes.
In this environment, given a TVG H, it is straightforward to create a directed graph G = (V T (H), ET (H )), where V T(H ) is the temporal nodes set, and ET(H ) is obtained from the set E(H ) of dynamic edges of the TVG H , such that for all u, v ∈ V (H ) and all t
a, t
b∈ T (H), the edge ((u, t
a), (v, t
b)) ∈ ET (H ) if and only if the dynamic edge (u, t
a, v, t
b) ∈ E(H ). Another way for obtaining the set ET (H ) is by using the bijective function h defined in Corollary 2.1.
Note that since in this environment the function f used to define the isomorphism between H and G is the identity function I : V T (H ) → V T (H ), we have that the function h related to the isomorphism between E(H ) and ET (H ) (see Corollary 2.1) is written as
h : E(H ) → ET (H )
(u, t
a, v, t
b) 7→ ((u, t
a), (v, t
b)),
where ET (H ) ⊆ V T (H ) × V T(H ).
To see that the graph G = (V T (H), ET (H )) is indeed the graph obtained by the natural isomorphism discussed in Section 2.3.2, note that since V T (H ) = V (H ) × T (H ), we have the identity function I : V T (H ) → V T (H ), and that by the definition of the temporal node repre- sentation, for all u, v ∈ V (H) and all t
a, t
b∈ T (H), the edge ((u, t
a), (v, t
b)) ∈ ET (H) if and only if the dynamic edge (u, t
a, v, t
b) ∈ E(H ).
For any given TVG H = (V, E, T ), we can now define the function g : (V (H ), E(H ), T (H)) → (V T (H ), ET (H ))
H 7→ (I(V (H ), T (H)), h(E(H))), such that g(H ) is the temporal node representation of the TVG H.
The main idea behind the temporal node representation is that if the nodes of a TVG are considered as distinct objects at each time instants, then the TVG can be seen as a simple directed graph. This, however, should not be misunderstood as a statement that a TVG and a directed graph are one and the same object. It is important to remember that in order to make this representation possible, the assumption that each node is a distinct object at each time instant has to be made. We show that some of the properties of the TVG are in fact preserved in this graph representation, which can make the analysis of the TVG easier. Therefore, this representation comes with a caveat, indicating that proper care should be taken to apply this representation only in the cases in which the properties under study are preserved under the temporal node representation of the TVG.
Figure 1(a) shows an illustrative TVG on its native form and Figure 1(b) shows the same illustrative TVG in the form of the temporal node representation. Note that the temporal node representation has six (2 × 3) temporal nodes and same number of edges as the TVG in its native representation. Further, the edges in the TVG and in the graph only differ in their represen- tation. In the native representation of the illustrative TVG, the dynamic edges are represented as an ordered quadruple, whereas in the temporal node representation the corresponding edge is represented as a pair of temporal nodes. Additionally, Figure 1(b) also shows the temporal nodes grouped in a way consistent with the equivalence relation ∼ defined in Section 2.3.1, which groups elements with the same temporal coordinate in equivalence classes. From Figure 1(b), it can also be seen how the temporal node representation preserves the temporal order of the original TVG.
0 1
(0,t
0, 0,t
1)
(1,t
0, 1,t
1)
(1,t
1, 0,t
1) (0,t
1, 1,t
1) (0,t
1, 0,t
2)
(1,t
1, 1,t
2)
(a) Native representation of an illustrative TVG
(0,t
1)
(1,t
1)
(0,t
2)
(1,t
2) (0,t
0)
(1,t
0)
((0,t0), (0,t1))
((1,t0), (1,t1))
((1,t1), (0,t1)) ((0,t1), (1,t1)) ((0,t1), (0,t2))
((1,t1), (1,t2))
(b) Temporal node representation of an illustrative TVG
Figure 1: Native and temporal node representations of an illustrative TVG.
2.5 Aggregated directed graph
The aggregated graph associated to a TVG is a directed graph created by projecting all dynamic edges onto a single graph. In order to obtain the aggregated graph of a TVG, we first define the projection
π : V × T × V × T → V × V (u, t
a, v, t
b) 7→ (u, v),
that takes a dynamic edge to an edge by simply dropping the time coordinates of the dynamic edge.
Using this projection, we can now define the function Agg : (V, E, T ) → (V, V × V )
H 7→ (I(V (H)), π(E(H )),
where I is the identity function in V (H). It follows from this definition that for a given TVG H , Agg(H ) is a directed graph such that if (u, t
a, v, t
b) ∈ E(H), then (u, v) ∈ E(Agg(H )). In this transformation, spatial and mixed edges are mapped to an edge on the aggregated graph, while temporal edges are contracted into a single node. In this way, temporal edges are ignored, which is consistent with the definition that the aggregated graph is a simple directed graph.
Although the concept of aggregated graph is often found in the TVG literature, it should be noted that for a given TVG H, the nodes of the graph Agg(H ) in general do not have the same degree of the nodes on H . It should also be noted that the existence of a path connecting two nodes u and v in Agg(H ) does not imply the existence of a path connecting nodes u and v on the TVG H (a path in a TVG is formally defined in Section 2.8.3).
In general, the aggregated graph of a TVG is not isomorphic or in any way equivalent to the temporal node representation of the TVG. To see that this is the case, it suffices to note that for a given TVG H, the temporal node representation of H has | V (H ) | × | T (H ) | nodes, while Agg(H ) has | V (H) | nodes.
2.6 Degree
Since dynamic edges are naturally directed, we adopt the same notation as in directed graphs of the indegree of a node u denoted as deg
−(u) and the outdegree of a node u denoted as deg
+(u).
In addition, we distinguish between node degree and temporal node degree.
In order to properly define the node degree of a TVG, we use the canonical projections defined in Section 2.1. We then define the node outdegree and indegree as
deg
+(u) = |{ e ∈ E(H ) | π
1(e) = u }| , deg
−(u) = |{ e ∈ E(H ) | π
3(e) = u }| ,
where deg
+(u) is the number of dynamic edges originating at node u and deg
−(u) is the number of dynamic edges destined to the node u.
The temporal node degree considers the degree of a node at each time instant. This follows directly from the definition of temporal node:
deg
+((u, t)) = |{ e ∈ E(H ) | π
1(e) = u, π
2(e) = t }| ,
deg
−((u, t)) = |{ e ∈ E(H ) | π
3(e) = u, π
4(e) = t }| .
That is, deg
+((u, t)) is the number of dynamic edges originated at a node u at the time instant t, while deg
−((u, t)) is the number of dynamic edges destined to node u at time instant t. It follows from these definitions that for any given TVG H , the outdegree of a node u is given by
deg
+(u) = X
t∈T(H)
deg
+((u, t)),
and its indegree is given by
deg
−(u) = X
t∈T(H)
deg
−((u, t)).
Further, we have that
| E(H ) | = X
u∈V(H)
deg
+(u) = X
u∈V(H)
X
t∈T(H)
deg
+((u, t)),
and
| E(H ) | = X
u∈V(H)
deg
−(u) = X
u∈V(H)
X
t∈T(H)