Spanner Enumeration for Temporal Graphs
Abstract
A spanner of a temporal graph is a subset of edges that preserves connectivity over time between vertices. A minimal spanner is one in which no additional edges can be removed without breaking this connectivity. Our focus is on enumerating minimal spanners for a given temporal graph. We explore several variations of this problem based on the type of connectivity that must be maintained, ranging from one-to-all connectivity to one-to-all-to-one, many-to-all, and finally all-to-all connectivity. We establish that these problems become progressively harder: (i) We present a polynomial-delay enumeration algorithm for one-to-all connectivity; (ii) We prove Dual-hardness for both one-to-all-to-one and many-to-all connectivity, even in the restricted case of two-to-all; (iii) Finally, for all-to-all connectivity, we show that enumeration cannot be performed in output-polynomial time unless .
Keywords and phrases:
temporal graphs, temporal spanners, one-to-all connectivity, all-to-all connectivity enumeration, NP-completeness, Dual-hardness, binary partition tree, flashlight search, polynomial delayFunding:
Kazuhiro Kurita: JSPS Kakenhi Grant Numbers JP21K17812, JP23K24806, and JP25K21273, and JST ACT-X Grant Number JPMJAX2105.Copyright and License:
![[Uncaptioned image]](x1.png)
2012 ACM Subject Classification:
Mathematics of computing Graph enumeration ; Theory of computation Sparsification and spanners ; Mathematics of computing Graph algorithms ; Theory of computation Problems, reductions and completeness ; Networks Network dynamicsAcknowledgements:
We would like to thank Lapo Cioni for the joining in the verification of constructions and proofs during coffee breaks.Editors:
Kitty Meeks and Christian ScheidelerSeries and Publisher:

1 Introduction
Spanning trees provide an efficient way to maintain connectivity within a network. They are minimal in the sense that removing any edge would break connectivity, and they are also minimum in terms of edge count. Efficient computation of a spanning tree is possible using greedy algorithms such as Prim’s, Kruskal’s, and Dijkstra’s algorithms (see [33, 30, 20]).
A more general structure is a spanner, a subgraph that preserves connectivity while enforcing specific bounds on distance distortion, such as multiplicative or additive stretch factors. Unlike spanning trees, spanners are not necessarily trees. For a recent survey on graph spanners, see [1].
Temporal Spanners.
In a seminal paper, Kempe, Kleinberg, and Kumar [24] introduced the study of spanning substructures in temporal graphs, networks that evolve over time. In such graphs, connectivity is established through temporal paths, which are paths where edge labels are strictly increasing. Unlike traditional spanning trees, these substructures do not necessarily form a tree and have been termed temporal spanners by the research community.
A minimal spanner is one in which no further edges can be removed without breaking connectivity. For simplicity, all spanners discussed in this paper are assumed to be minimal unless stated otherwise.
Building on prior research in graph spanners, as well as insights from broadcasting and gossip theory (see survey [23]), numerous studies have since explored temporal spanners. This includes results on (in)approximability [2], counterexamples or existence of sparse spanners [3, 16, 18], adding stretch, blackout-resilience, or underlying structure [6, 5, 14], to sharp thresholds in temporal Erdös–Rényi random graphs [17].
In this paper, we formalise a temporal graph as a graph with an edge time function , associating to each edge of a non-empty set of discrete times (see Section 2 for full definitions). We consider the following types of connectivity for spanners:
Definition 1.
Given a temporal graph , is an spanner of if it is a minimal set111No proper subset satisfies the same property such that in 222In Section 2, we define temporal graph to be temporal graph restricted to the edge set .:
- if one2all:
-
given , reaches for all ;
- if one2all2one:
-
given , reaches and reaches for all ;
- if many2all:
-
Given , reaches for all , and all ;
- if all2all:
-
reaches and reaches for all .
Most related work on temporal spanners focuses on all2all spanners. However, studies also exist on temporal structures with different types of connectivity, though they are not explicitly termed “spanners”. For example, the paths resulting from the algorithms in [35] and the temporal branchings in [11] both correspond to specific cases of one2all spanners. There are also temporal spanners which are defined as subsets of time edges or labels (and so minimality is defined on time edges as well) instead of on edges. Some other works, such as [16, 17], consider the special case of so-called “simple” temporal graphs, where each edge only has one assigned time, and thus the distinction disappears. We do not consider such spanners in this paper.
Problem Definition.
In this paper we study the problem of enumerating, i.e. listing exactly once, all the temporal spanners in Definition 1 for a given temporal graph in input. In the field of enumeration algorithms, significant research has focused on efficiently enumerating structures maintaining connectivity in static graphs, as discussed later. However, no prior work has tackled the following enumeration problem, where refers to one2all, one2all2one, many2all, and all2all.
Problem 1 (Enumeration).
Given temporal graph and connectivity , enumerate all spanners of .
With the aim of obtaining our results on the enumeration problems, we also study the following corresponding extension problems.
Problem 2 (Extension Problem).
Given temporal graph , connectivity , and edge set , decide whether there is that is a spanner of .333For , we assume that or all are contained in .
Problem 3 (Connected Extension Problem).
Given temporal graph , connectivity , and edge set s.t. is connected, decide whether there is that is a spanner of .3
Indeed, being able to solve efficiently the (Connected) Extension Problem implies being able to solve efficiently the corresponding enumeration problem [32].
Some background on Enumeration Algorithms.
In order to classify the complexity of enumeration problems, the classes we will use in this paper are the standard ones: output-polynomial time, where all output can be enumerated in time polynomial in the input and the output size; incremental polynomial time, where, for all , the th output can be produced in polynomial time in the input size and in the number ; and polynomial delay, where the delay between two consecutive outputs is polynomial in the input size. Additionally, a famous unresolved problem in the enumeration field is whether Hypergraph Dualization, or Dual for short, which asks for finding all minimal hitting sets for a given hypergraph [4], can be solved in output-polynomial time for general hypergraphs. This problem has received considerable attention in the literature, since it is known to be polynomially or quasi-polynomially equivalent with many problems in various areas [22]. When we reduce a problem from Dual, we say the problem is Dual-hard, meaning that if our problem could be solved in output-polynomial time, then Dual would also admit an algorithm running in output-polynomial time. See [34, 21] for a survey on these topics.
Enumeration problems related to connectivity for graphs are widely studied and considered important. One example of enumerating minimal subgraphs that satisfy a connectivity constraint is the minimal Steiner tree enumeration. For a restricted input, a polynomial-delay enumeration algorithm has been developed, using a polynomial-time algorithm for a corresponding extension problem as a subroutine [27]. Furthermore, similar algorithms are known to work for several variants, such as minimal directed Steiner trees, minimal terminal Steiner tree, and minimal Steiner forests [27, 29]. Besides edge connectivity, enumeration problems concerning vertex connectivity have also been studied. The problem of enumerating minimal spanning -vertex-connected spanning subgraphs is known to be solvable in incremental polynomial time for fixed [8]. Additionally, it is known that vertex connectivity can make an enumeration problem significantly harder. For instance, while the minimal vertex cover enumeration is known to be solvable with polynomial delay, the problem of enumerating minimal connected vertex covers, which imposes a connectivity constraint, is known to be Dual-hard [28]. Complexity of enumeration problems related to connectivity also extends to intractable problems. For example, it is known that enumerating minimal edge sets that ensure reachability between two specified vertices in a directed graph cannot be solved in output-polynomial time unless [25]. Moreover, instead of enumerating minimal sets that satisfy connectivity, enumerating minimal sets that destroy connectivity has also been addressed. In particular, it has been shown that enumerating minimal vertex sets that disconnect a graph and minimal edge sets that break the strong connectivity of a directed graph cannot be solved in output-polynomial time unless [7, 10].
Our Contribution.
In this paper, we establish the results summarized in Table 1. Notably, we observe that the Extension Problem for all definitions of temporal spanners is -complete.444Both Extension Problem and Connected Extension Problem are in , as we can verify in polynomial time whether a set of edges contains and is a temporal spanner, by checking reachability, and then checking minimality by removing one edge at a time and again checking reachability. As a consequence, we cannot directly apply the standard flashlight method [32], which is commonly used to design output-polynomial enumeration algorithms. The flashlight method systematically explores the entire solution space by partitioning it into subsets that include or exclude a given edge, proceeding recursively only after verifying whether a partial solution can be extended into a full solution. However, since the Extension Problem is intractable, this verification cannot be performed in polynomial time unless .
On the other hand, if we enforce connectivity in the partial solution, the problem reduces to the Connected Extension Problem. We prove that in the case of one2all spanners, this problem can be solved in polynomial time, allowing us to design a polynomial-delay flashlight method for enumeration. This parallels the case of Steiner subgraphs in static graphs [19], where the Extension Problem is -complete, but the Connected Extension Problem is sometimes tractable, enabling an output-polynomial enumeration algorithm in these cases.
For all other definitions of temporal spanners, however, the Connected Extension Problem remains -complete.555Note that the hardness of Extension Problem is a consequence of the hardness of Connected Extension Problem as it is a restriction. This is not coincidental: we show that the enumeration of one2all and one2all2one spanners is Dual-hard. Consequently, achieving an output-polynomial time algorithm for these enumeration problems would imply an output-polynomial time for Dual, which is still an open problem since several years [4, 22]. It is important to note that hardness results for both Connected Extension Problem and Enumeration for many2all are tight with respect to the number of sources, as they hold for two sources.
Finally, for all2all spanners, we prove that no output-polynomial enumeration algorithm is possible unless . In this case, the latter result also implies the hardness of Connected Extension Problem and Extension Problem, as solving them in polynomial time would allow us to design an output-polynomial enumeration algorithm for Enumeration.
Structure of the paper.
The organization is as follows: first, in Section 2, we present our models and notation used throughout the rest of the paper; then, in Section 3, we start by studying one2all spanners and obtain our tractability results; in Section 4 and Section 5, the connectivity considered is slightly modified (to one2all2one and many2all resp.) and we observe a sudden shift as the corresponding extension problems are proven to become hard and we prove the enumeration problems to be Dual-hard; next, we consider all2all spanners in Section 6 for which we obtain that the corresponding enumeration problem cannot be solved in output-polynomial time unless . We conclude in Section 7 and discuss interesting directions for future work.
Due to the soft page limit, results marked with a have the corresponding proofs in the Appendix. For some of these, a proof sketch is present in the main part of the paper as well.
|
|
|
|
||||||
one2all |
|
|
|
||||||
one2all2one | (-c ) |
|
|
||||||
many2all | (-c ) |
|
|
||||||
all2all | (-c ) | (-c ) |
|
2 Preliminaries
We denote a temporal graph as a pair with the underlying graph of , and the time function of . Graph is undirected and simple, and composed of a vertex set and an edge set , and associated to each edge is a set of times (or labels) . As a slight abuse of notation, we simply use and as the vertex and edge set when the corresponding temporal graph is clear from the context. Also, we usually drop the set notation for the times on an edge, especially in figures and when the edge only has one label. The size of a temporal graph is polynomial in , , and , the latter being denoted as the lifetime of the temporal graph. We use to denote the temporal graph restricted to the edge set , and for some integer denotes the subgraph of such that , i.e. it represents the temporal graph at the specific time .
In temporal graphs, paths and connectivity occur over time. This means that a path in the underlying graph is a valid temporal path in temporal graph if and only if the corresponding times on the edges are strictly increasing666Depending on the context, non-decreasing times can be of interest as well, and these two cases, commonly referred to as strict and non-strict, are both studied in temporal graph theory.. Formally, for a temporal path of length , we have that is a path in , and . When a temporal path exists from a vertex to a vertex , we say can reach , and is reachable from . Note that even though we work in undirected graphs, the temporal aspect of paths implies that if can reach , then does not necessarily reach . We define an edge in a temporal graph to be necessary when without it, is not connected anymore (for one of our notions of connectivity), i.e. if is connected for , edge is necessary if is not connected. When useful, we can specify which reachability the edge is necessary for. For example, if it is necessary for some vertex to reach some vertex , then it implies that all temporal paths in from to contain , and that in no temporal path exists from to . Note that, in a spanner, all edges are necessary because otherwise they could be removed and the spanner wouldn’t be minimal. We will use this notion of necessity of edges in our proofs to force edges to be part of all spanners of constructed temporal graphs.
An algorithm we will use and adapt for our tractability results in this paper is the following search algorithm in temporal graphs. Instead of prioritizing closest or furthest vertices (as in Breadth First Search or BFS, and Depth First Search or DFS resp.), this algorithm prioritizes earliest times to extend the search. One of the first papers to introduce, analyze, and use it is [35], and since then it is used throughout works on connectivity in temporal graphs, as it allows for computing (earliest) arrival times, as well as the corresponding underlying paths, from a vertex to all other vertices. We refer to it in this paper as Time First Search or TFS and propose the pseudo code in Algorithm 1 in the appendix. TFS runs in time. For one of our results, we alter the initialization of TFS, starting with different arrival times , and with a non-empty selected edge set .
The reductions we present in this paper are from the Satisfiability Problem (or ) and from Hypergraph Dualization (or Dual). The former is a decision problem that has as input a CNF logic formula of variables and clauses and asks if the formula evaluates to true for some configuration of the variables. The latter is an enumeration problem with the input being a hypergraph on vertices and hyperedges, and the task being to enumerate all minimal transversals (or hitting sets) of the hypergraph, i.e. all minimal subsets such that for all , the intersection is non-empty.
The goal of an enumeration problem is to output the set of solutions . In the binary partition approach, we divide this problem into two subproblems. The goal of one subproblem is to output , while the goal of the other subproblem is to output , where and are disjoint and 777In some cases, the problem may be divided into two or more subproblems.. The partition procedure can be regarded as a rooted tree, and thus we call this tree structure the binary partition tree (or partition tree).
To design an efficient binary partition algorithm, a key problem is to design a dividing procedure such that both and are non-empty. This is where designing and solving a corresponding extension problem is helpful, as it allows to predict whether some solution exists in or , abandoning fruitless partition tree branches early which can improve the running time significantly. This is often referred to as the flashlight approach.
3 one2all spanners
one2all spanners have the following specific structure which we use in this section and whose proof is provided in the appendix for space constraints.
Proposition 2.
A one2all-spanner is a tree.
This section presents a binary partition approach to enumerate one2all spanners by systematically including or excluding each edge. In order to obtain a polynomial bound on the delay, we explore the corresponding extension problems. We first establish that the general Extension Problem, which could be used by the binary partition algorithm to discover whether the edges included in the partial solution can be completed in a solution, is intractable (Theorem 3). Since the general extension problem is -complete, we explore another extension problem where the edges of the binary partition are not included in an arbitrary order, but in an order such that they induce a connected graph including . In this case, we obtain tractability for the extension problem (Lemma 4). The latter result serves as the foundation for our enumeration algorithm
Theorem 3.
one2all Extension Problem is -complete, even if the lifetime .
Proof (Sketch).
To prove -completeness, we reduce from SAT. Let us first describe the transformation of a instance into a spanner extension instance. We prove that a positive instance corresponds to a positive instance in the spanner extension instance (), and vice versa () in the complete proof in the appendix.
For the following transformation, refer to Figure 1 as well. Let the instance have variables and clauses . Start by constructing an (initially) empty temporal graph and add vertices for each possible literal, so and for all . Now, for each clause , create vertex and connect this vertex with an edge to each vertex corresponding to a literal of . Add label to these edges as well. Then, add vertex and add edges for each possible literal . Assign label 1 to these edges. Finally, for each , add edge with label , and let these edges be the set of edges that have to be in a spanner solution. The transformation is now complete.
We note that, by construction, at least one of edges and has to be in a solution for vertices and to be reachable from . In fact, exactly one of the two must be in a solution because if both are then a cycle in the underlying graph would be created along with forced edge , which would contradict Proposition 2. The intuition behind our reduction is that the choice between edges and encodes the choice of setting variable to true or false respectively. Note also that it is necessary for the reachability of each to select at least one pair of edges and . The correctness is provided in the full proof in the appendix.
Lemma 4.
one2all Connected Extension Problem is solvable in time .
Proof.
We start by running TFS on to obtain the earliest arrival times from to each vertex . Afterwards, we run TFS on temporal graph , but change the initialization part of the algorithm (see Algorithm 1 in the Appendix). Initialize the earliest arrival times as for every vertex of , and initialize the selected edge set as . This makes it so that these arrival times are never updated throughout TFS, as only arrival times that are get updated. Also, , the resulting one2all spanner (if one exists) uses . TFS takes time , and thus so does the described algorithm.
As discussed before, we obtain our enumeration algorithm based on binary partition. This algorithm has polynomial delay thanks to the flashlight method using Lemma 4. For the sake of space, the proof of the following result is provided in the appendix.
Theorem 5.
one2all Enumeration can be solved with delay.
4 one2all2one spanners
In this section, we explore the enumeration of spanners that not only allow a vertex to reach all other vertices, as in the previous section, but also ensure that all vertices can reach . These are called one2all2one spanners. Importantly, we do not require the temporal path from any vertex to to occur after the temporal path from to arrives.
We lose the underlying tree structure of one2all spanners in Proposition 2, as it can easily be observed in the following temporal graph: take the cycle graph on four vertices , , , and and time the edges , , , , with , 2, 3, and 4 resp. The only one2all2one spanner is the temporal graph itself, which is not a tree.
Another difference is that even if the edge set for the extension problem is connected, then the problem remains intractable as opposed to becoming tractable as was the case for one2all spanners.
Theorem 6.
one2all2one Connected Extension Problem is -complete, even if the lifetime is constant.
Proof (Sketch).
For proving -hardness, consider the same transformation as in Theorem 3, from (see again Figure 1). Then, for each vertex where is some literal or clause, add vertices and and edges , , and , with times 3, 4, 5 resp. Add to edge set (which already contains edges for all variables ) these newly created edges. Note that is connected. The transformation is now complete.
Since all edges , , and are in , and they allow vertices to reach , and they do not allow to reach vertices (nor aid in the reachability between these vertices that could indirectly help to reach them), essentially what remains to decide in this reduction is how to connect to the other vertices. This is exactly the problem in Theorem 3, and we use the exact same structure for this (ignoring the new edges we added as we just argued they are not useful for the reachability of ). Hence we conclude that the result from the reduction in Theorem 3, being -hardness, transfers for one2all2one Connected Extension Problem.
Theorem 7.
one2all2one Enumeration is Dual-hard, even if the lifetime is constant.
Proof (Sketch).
We reduce Hypergraph Dualization, or Dual, to our problem. Let us first describe the transformation of a Dual instance into a one2all2one spanner enumeration instance. Then, it is possible to prove that each minimal transversal in the Dual instance corresponds to a one2all2one spanner in the one2all2one spanner enumeration instance, and vice versa. This is proven in the appendix for space constraints.
For the following transformation, refer to Figure 2 as well. Let the Dual instance be composed of vertices and hyperedges . Start by constructing an initially empty temporal graph and add vertex for each vertex , and vertex for each hyperedge . For all , if , then create a vertex in and edges and with times and resp. Add vertex to . For each , add vertices , , and , and edges , with times 1 and 2 resp. as well as edges , , and with times , 2, and resp. Finally, add vertex and edges with time 2 for all , and edge with time 3. The transformation is now complete.
By construction, we obtain that all edges except for edges are necessary, i.e. that they are part of any one2all2one spanner of w.r.t. source vertex . Indeed, we have that: (i) Each edge is necessary for to reach vertex ; (ii) Each edge is necessary for vertex to reach ; (iii) And likewise for each edge and each edge ; (iv) Each edge is necessary for to reach vertex ; (v) Each edge is necessary for vertex to reach ; (vi) Each edge is necessary for vertex to reach ; (vii) And finally, edge is necessary for to reach .
Let denote the temporal graph composed of these edges, i.e. , for all (in Figure 2, this corresponds to the illustrated temporal graph without the dashed edges). We have that in , all vertices can be reached by as well as reach , except for vertices , as these can only reach but not be reached by . Note that adding some edge to will allow to reach exactly vertices such that . We thus observe that any spanner of is composed of with some minimal selection of edges . Correctness is provided in the complete proof in the appendix.
5 many2all spanners
This section explores another natural variant of a spanner, where instead of having only a single source vertex that has to visit all vertices, we consider multiple such source vertices in many2all spanners, each needing to visit all vertices.
For the sake of space, the proofs of the following results are provided in the appendix as they are similar to the ones in Section 4. The challenge here is to obtain tight reductions in terms of sources, as for only one source we know that Connected Extension Problem is polynomial and Enumeration admits a polynomial delay algorithm.
Theorem 8.
many2all Connected Extension Problem is -complete, even if the lifetime is constant and the number of source vertices is 2.
Theorem 9.
many2all Enumeration is Dual-hard, even if the lifetime is constant, and the number of source vertices is 2.
6 all2all spanners
This section is concerned with all2all spanners, which is where all vertices play the role of source, i.e. all vertices need to reach each other. We present a reduction inspired by the one used in [25] to prove that their problem of enumerating disjunctions and conjunctions of paths cannot be done in output-polynomial time unless .
We introduce the following auxiliary problem, used only in this section. Let Another all2all Spanner be the decision problem defined as: given a temporal graph and a set of all2all spanners , does there exist another all2all spanner of which is not in ? We first prove this problem to be -complete, through a technical reduction. Afterwards, we use this result to show that if an output-polynomial time algorithm exists for all2all Enumeration, it would imply that a polynomial time algorithm exists for Another all2all Spanner.
Construction of the temporal graph.
To prove -completeness for Another all2all Spanner, we reduce from . Let us first present how to construct temporal graph for the Another all2all Spanner instance from a given instance , and analyze the specific structure it admits in Lemma 10.
For the following transformation, refer to Figure 3 as well. Let the instance be CNF formula on variables and clauses . Start by creating the (initially empty) temporal graph and add vertices for each possible variable, so for all . Now, for each clause , create vertices and . Add vertex and vertex as well. Now add edges from to all vertices with times , and add edges from to all vertices with times . Create vertex and connect it to all vertices with times , to all vertices with times , and to all vertices with times . (The transformation now corresponds to the black edges in Figure 3(a) and Figure 3(b). We will now add the other vertices, and the orange and red edges.) For all ordered pairs such that , create vertex and connect it to vertex with time 2, and to with time 4. For all pairs of vertices , if , connect them with an edge with times ; and if and (i.e. ) connect them with an edge with times . We will use to refer to the temporal subgraph of containing only the edges created until now. (The construction at this point now corresponds to Figure 3(b).) We finish the construction of by adding the following final edges. For all , if literal , connect to with an edge, and if , connect to . Assign time 4 to these edges. Connect vertex with an edge of time 3 to each vertex . Similarly, connect vertex with an edge of time 5 to each vertex . This concludes the construction of the temporal graph . Let be the temporal graph without , i.e. the temporal graph containing only the final edges added (or the temporal graph corresponding to Figure 3(c)).
Lemma 10.
Temporal graph has the following structural properties:
-
Reachability: In , all vertices can reach each other, while in , all vertices can reach each other except for vertices which do not reach corresponding vertices , for all ;
-
Necessity: In and in , all edges of are necessary for some vertex pair reachability;
-
Spanner: Any spanner of must be composed of and some minimal edge set of , and adding to edges and , for any , results in a spanner.
For the following result, note that Another all2all Spanner is in because one can verify a solution spanner in polynomial time, by checking if it is contained in , checking reachability, and then checking minimality by removing one edge at a time and again checking reachability.
Lemma 11.
Another all2all Spanner is -complete, even if .
Proof.
As mentioned before, to prove -hardness, we reduce to our problem. Let the polynomial transformation of a instance into a Another all2all Spanner instance be as described beforehand to obtain temporal graph , and let contain all the spanners described in the spanner property of Lemma 10, so for each , add to spanner composed of with added edges and . Note that now . The transformation is now complete. We finish by proving that a positive instance implies a positive Another all2all Spanner instance (), and vice versa ().
Another all2all Spanner:
Suppose a solution assignment for the instance. We construct a spanner such that as follows. By the spanner property in Lemma 10, must contain all edges of . For each clause , some literal must be true in . Consider one of these literals. If it is a positive variable, so , then add to edges and (unless already in ). These edges are now necessary for to reach . After doing this for all clauses, we claim is indeed a spanner: all edges in are necessary, so is minimal, and all vertices can reach each other (all vertices could already reach each other before going over the clauses, except for to , which can reach through the added edges afterwards). We note that since by construction no spanner in uses any edge or , for any .
Another all2all Spanner:
Suppose a solution all2all spanner for the Another all2all Spanner instance. Again by the spanner property of Lemma 10, we know it must contain all edges from . Also, it cannot contain both edges and for some , because that would mean is a subgraph of , and thus is not minimal (if a proper subgraph) or already in (if equal to ). Thus, must have at most one of the edges and for all . We construct a solution for in the following manner: for all , if , assign to be false, and if , then assign to be true. If neither edge is in , then assign an arbitrary value, say true. We now claim this assignment evaluates to true. It should be clear that no is assigned both true and false. For each clause , there must be some path from to , which must pass either through some edge or through some edge . In the first case, the other edge of the temporal path is which by construction implies , and since , is assigned false, and so clause evaluates to true. Similarly, in the second case, the other edge of the temporal path is which by construction implies , and since , is assigned true, and so clause evaluates to true.
Now, to obtain the main result of this section, we use the following folklore reasoning from the area of enumeration algorithms [31, 12, 26, 10, 9]. Suppose by contradiction that all2all Spanner Enumeration can be done in output-polynomial time, say through algorithm running in time at most , for an input temporal graph , with the number of solutions, and some constant . Now, consider an instance of Another all2all Spanner, composed of temporal graph and a set of spanners such that . Run algorithm on for steps. Since , we run for polynomial time. Now, if the algorithm terminates and enumerated only the spanners from , then that implies the Another all2all Spanner instance is negative. Otherwise, if the algorithm does not terminate in this time or has enumerated a spanner not in , it implies that the instance is positive. Thus, Another all2all Spanner could be solved in polynomial time, which, unless , is our contradiction because Lemma 11 proves it is -complete.
Theorem 12.
all2all Enumeration cannot be done in output-polynomial time unless .
7 Conclusion
In this paper, we have studied enumeration of minimal spanners in temporal graphs. We considered multiple variants, as well as on different kinds of connectivity: single source to all vertices; single source to all vertices and vice versa; multiple sources to all vertices; and all to all connectivity. We obtained multiple results for corresponding extension problems and enumeration problems, which were presented in Table 1.
In future works, it may be interesting to consider other variants of connectivity. In [15] (and more recently updated in [13]), multiple forms of connectivity for temporal graphs are presented in a hierarchy, some of which correspond to the ones studied in this paper, such as corresponding to all2all connectivity. Another interesting direction could be to consider time-edge spanners which, as discussed in the introduction, are not subsets of edges but subsets of time-edges, i.e. one is allowed to remove redundant times from edges. We believe our results do not directly adapt for this setting, e.g. some of our reductions crucially abuse the fact that when an edge is necessary concerning some time on it, we can then use the other times to create temporal paths which are useful for the reduction.
References
- [1] Reyan Ahmed, Greg Bodwin, Faryad Darabi Sahneh, Keaton Hamm, Mohammad Javad Latifi Jebelli, Stephen Kobourov, and Richard Spence. Graph spanners: A tutorial review. Computer Science Review, 37:100253, 2020. doi:10.1016/J.COSREV.2020.100253.
- [2] Eleni C Akrida, Leszek Gąsieniec, George B Mertzios, and Paul G Spirakis. The complexity of optimal design of temporally connected graphs. Theory of Computing Systems, 61(3), 2017. doi:10.1007/S00224-017-9757-X.
- [3] Kyriakos Axiotis and Dimitris Fotakis. On the size and the approximability of minimum temporally connected subgraphs. In 43rd International Colloquium on Automata, Languages, and Programming (ICALP 2016). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2016.
- [4] Claude Berge. Hypergraphs: combinatorics of finite sets, volume 45. Elsevier, 1984.
- [5] Davide Bilò, Gianlorenzo D’Angelo, Luciano Gualà, Stefano Leucci, and Mirko Rossi. Sparse temporal spanners with low stretch. In 30th Annual European Symposium on Algorithms (ESA 2022). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2022.
- [6] Davide Bilò, Gianlorenzo D’Angelo, Luciano Gualà, Stefano Leucci, and Mirko Rossi. Blackout-tolerant temporal spanners. Journal of Computer and System Sciences, 141:103495, 2024. doi:10.1016/J.JCSS.2023.103495.
- [7] E. Boros, K. Elbassioni, V. Gurvich, and L. Khachiyan. Enumerating minimal dicuts and strongly connected subgraphs and related geometric problems. In Daniel Bienstock and George Nemhauser, editors, Integer Programming and Combinatorial Optimization, pages 152–162, Berlin, Heidelberg, 2004. Springer Berlin Heidelberg.
- [8] Endre Boros, Konrad Borys, Khaled Elbassioni, Vladimir Gurvich, Kazuhisa Makino, and Gabor Rudolf. Generating minimal k-vertex connected spanning subgraphs. In Guohui Lin, editor, Computing and Combinatorics, pages 222–231, Berlin, Heidelberg, 2007. Springer Berlin Heidelberg.
- [9] Endre Boros and Kazuhisa Makino. Generating minimal redundant and maximal irredundant subhypergraphs. Discret. Appl. Math., 358:217–229, 2024. doi:10.1016/J.DAM.2024.07.006.
- [10] Caroline Brosse, Oscar Defrain, Kazuhiro Kurita, Vincent Limouzy, Takeaki Uno, and Kunihiro Wasa. On the hardness of inclusion-wise minimal separators enumeration. Inf. Process. Lett., 185:106469, 2024. doi:10.1016/J.IPL.2023.106469.
- [11] Daniela Bubboloni, Costanza Catalano, Andrea Marino, and Ana Silva. On computing optimal temporal branchings and spanning subgraphs. J. Comput. Syst. Sci., 148:103596, 2025. doi:10.1016/J.JCSS.2024.103596.
- [12] Fritz Bökler, Matthias Ehrgott, Christopher Morris, and Petra Mutzel. Output-sensitive complexity of multiobjective combinatorial optimization. Journal of Multi-Criteria Decision Analysis, 24(1-2):25–36, 2017. doi:10.1002/mcda.1603.
- [13] Arnaud Casteigts. Finding structure in dynamic networks. CoRR, abs/1807.07801, 75p, 2018. URL: http://arxiv.org/abs/1807.07801.
- [14] Arnaud Casteigts and Timothée Corsini. In search of the lost tree: Hardness and relaxation of spanning trees in temporal graphs. In International Colloquium on Structural Information and Communication Complexity, pages 138–155. Springer, 2024. doi:10.1007/978-3-031-60603-8_8.
- [15] Arnaud Casteigts, Paola Flocchini, Walter Quattrociocchi, and Nicola Santoro. Time-varying graphs and dynamic networks. International Journal of Parallel, Emergent and Distributed Systems, 27(5):387–408, 2012. doi:10.1080/17445760.2012.668546.
- [16] Arnaud Casteigts, Joseph G Peters, and Jason Schoeters. Temporal cliques admit sparse spanners. Journal of Computer and System Sciences, 121:1–17, 2021. doi:10.1016/J.JCSS.2021.04.004.
- [17] Arnaud Casteigts, Michael Raskin, Malte Renken, and Viktor Zamaraev. Sharp thresholds in random simple temporal graphs. SIAM Journal on Computing, 53(2):346–388, 2024. doi:10.1137/22M1511916.
- [18] Esteban Christiann, Eric Sanlaville, and Jason Schoeters. On inefficiently connecting temporal networks. In 3rd Symposium on Algorithmic Foundations of Dynamic Networks (SAND 2024). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2024.
- [19] Alessio Conte, Roberto Grossi, Mamadou Moustapha Kanté, Andrea Marino, Takeaki Uno, and Kunihiro Wasa. Listing induced steiner subgraphs as a compact way to discover steiner trees in graphs. In Peter Rossmanith, Pinar Heggernes, and Joost-Pieter Katoen, editors, 44th International Symposium on Mathematical Foundations of Computer Science, MFCS 2019, August 26-30, 2019, Aachen, Germany, volume 138 of LIPIcs, pages 73:1–73:14. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2019. doi:10.4230/LIPICS.MFCS.2019.73.
- [20] Edsger W Dijkstra. A note on two problems in connexion with graphs. In Edsger Wybe Dijkstra: his life, work, and legacy, pages 287–290. 2022. doi:10.1145/3544585.3544600.
- [21] Thomas Eiter, Kazuhisa Makino, and Georg Gottlob. Computational aspects of monotone dualization: A brief survey. Discrete Applied Mathematics, 156(11):2035–2049, 2008. In Memory of Leonid Khachiyan (1952 - 2005 ). doi:10.1016/j.dam.2007.04.017.
- [22] Khaled Elbassioni, Imran Rauf, and Saurabh Ray. A global parallel algorithm for enumerating minimal transversals of geometric hypergraphs. Theoretical Computer Science, 767:26–33, 2019. doi:10.1016/J.TCS.2018.09.027.
- [23] Hovhannes Harutyunyan, Arthur Liestman, Joseph Peters, and Dana Richards. Broadcasting and Gossiping. In Ping Zhang, editor, Handbook of Graph Theory, Second Edition, volume 20134658, pages 1477–1494. Chapman and Hall/CRC, December 2013. Series Title: Discrete Mathematics and Its Applications. doi:10.1201/b16132-87.
- [24] David Kempe, Jon Kleinberg, and Amit Kumar. Connectivity and inference problems for temporal networks. In Proceedings of the thirty-second annual ACM symposium on Theory of computing, pages 504–513, 2000. doi:10.1145/335305.335364.
- [25] Leonid Khachiyan, Endre Boros, Khaled Elbassioni, Vladimir Gurvich, and Kazuhisa Makino. Enumerating disjunctions and conjunctions of paths and cuts in reliability theory. Discrete Applied Mathematics, 155(2):137–149, 2007. 29th Symposium on Mathematical Foundations of Computer Science MFCS 2004. doi:10.1016/j.dam.2006.04.032.
- [26] Leonid Khachiyan, Endre Boros, Khaled M. Elbassioni, and Vladimir Gurvich. On enumerating minimal dicuts and strongly connected subgraphs. Algorithmica, 50(1):159–172, 2008. doi:10.1007/S00453-007-9074-X.
- [27] Benny Kimelfeld and Yehoshua Sagiv. Efficiently enumerating results of keyword search over data graphs. Inf. Syst., 33(4-5):335–359, 2008. doi:10.1016/J.IS.2008.01.002.
- [28] Yasuaki Kobayashi, Kazuhiro Kurita, Yasuko Matsui, and Hirotaka Ono. Enumerating minimal vertex covers and dominating sets with capacity and/or connectivity constraints. In Adele Anna Rescigno and Ugo Vaccaro, editors, Combinatorial Algorithms - 35th International Workshop, IWOCA 2024, Ischia, Italy, July 1-3, 2024, Proceedings, volume 14764 of Lecture Notes in Computer Science, pages 232–246. Springer, 2024. doi:10.1007/978-3-031-63021-7_18.
- [29] Yasuaki Kobayashi, Kazuhiro Kurita, and Kunihiro Wasa. Linear-delay enumeration for minimal steiner problems. In Leonid Libkin and Pablo Barceló, editors, PODS ’22: International Conference on Management of Data, Philadelphia, PA, USA, June 12 - 17, 2022, pages 301–313. ACM, 2022. doi:10.1145/3517804.3524148.
- [30] Joseph B Kruskal. On the shortest spanning subtree of a graph and the traveling salesman problem. Proceedings of the American Mathematical society, 7(1):48–50, 1956.
- [31] E. L. Lawler, J. K. Lenstra, and A. H. G. Rinnooy Kan. Generating all maximal independent sets: Np-hardness and polynomial-time algorithms. SIAM Journal on Computing, 9(3):558–565, 1980. doi:10.1137/0209042.
- [32] Arnaud Mary and Yann Strozecki. Efficient enumeration of solutions produced by closure operations. Discret. Math. Theor. Comput. Sci., 21(3), 2019. doi:10.23638/DMTCS-21-3-22.
- [33] Robert Clay Prim. Shortest connection networks and some generalizations. The Bell System Technical Journal, 36(6):1389–1401, 1957.
- [34] Yann Strozecki. Enumeration complexity. Bull. EATCS, 129, 2019. URL: http://bulletin.eatcs.org/index.php/beatcs/article/view/596/605.
- [35] B Bui Xuan, Afonso Ferreira, and Aubin Jarry. Computing shortest, fastest, and foremost journeys in dynamic networks. International Journal of Foundations of Computer Science, 14(02):267–285, 2003. doi:10.1142/S0129054103001728.
Appendix A Omitted Proofs
A.1 Proof of Proposition 2
See 2
Proof.
Suppose by contradiction that a one2all-spanner exists which is not a tree. We show that is not minimal by computing a one2all-spanner in which is a tree. Apply TFS in , and consider the output edge set to be . We claim that is a one2all spanner, i.e. it allows for to reach all vertices, and it is minimal. Indeed, since can reach all vertices in , it can also do so through , as TFS added the earliest possible edges from to the other vertices to . Moreover, in the condition of an edge being added to implies that at all times is a tree, so is indeed minimal because removing any edge would break connectivity.
A.2 Proof of Theorem 3
See 3
Proof.
To prove -completeness, we reduce from SAT. Let us first describe the transformation of a instance into a spanner extension instance. We prove that a positive instance corresponds to a positive instance in the spanner extension instance (), and vice versa () in the complete proof in the appendix.
For the following transformation, refer to Figure 1 as well. Let the instance have variables and clauses . Start by constructing an (initially) empty temporal graph and add vertices for each possible literal, so and for all . Now, for each clause , create vertex and connect this vertex with an edge to each vertex corresponding to a literal of . Add label to these edges as well. Then, add vertex and add edges for each possible literal . Assign label 1 to these edges. Finally, for each , add edge with label , and let these edges be the set of edges that have to be in a spanner solution. The transformation is now complete.
We note that, by construction, at least one of edges and has to be in a solution for vertices and to be reachable from . In fact, exactly one of the two must be in a solution because if both are then a cycle in the underlying graph would be created along with forced edge , which would contradict Proposition 2. The intuition behind our reduction is that the choice between edges and encodes the choice of setting variable to true or false respectively. Note also that it is necessary for the reachability of each to select at least one pair of edges and .
one2all Spanner Extension:
Suppose a solution for the instance. We construct solution for the spanner extension instance by selecting edge if is set to true in , and otherwise, and this for all . Furthermore, since is a solution for the instance, each clause must have some literal that is assigned a true value. Find such a literal for each clause , denote it , and select edge to be included in . Note that must be selected as well.
We now claim that is a spanner. Indeed, all vertices for any literal are reachable from since either edge is selected (through which it is directly reachable) or edge is selected (in which case it is reachable through vertex ). The clause vertices are all reachable as well since some edge is selected, and since corresponding edge is selected too, it implies can reach through . is minimal by the minimality observations in the previous paragraph.
one2all Spanner Extension:
Suppose a solution one2all spanner for the spanner extension problem. We construct solution for the instance as follows. By the minimality observations, either or is selected in for each variable . If , then set to true, otherwise set it to false in .
We now claim that is a valid solution for the instance. By construction, all variables are assigned to be either true or false. Moreover, since is a spanner, for each clause vertex there must be some pair of edges and , meaning literal is assigned true and so all clauses evaluate to true.
A.3 Proof of Theorem 5
See 5
Proof.
Our binary partition constructs each spanner incrementally by including (or excluding) an edge, one at a time. Start by considering the partial spanner containing only vertex . Let this state be the root node of our binary partition tree. Then, while an edge exists that can be added to such that the resulting spanner would remain connected, add two nodes to the binary partition tree connected to the current state node, one representing the inclusion of to , and the other representing the exclusion by removal from . For the former we apply the algorithm from Lemma 4 for the one2all connected spanner extension instance with . If the instance is positive, include in to , and repeat the for loop on this state node of the binary partition tree. If the instance is negative, then backtrack in the partition tree. For the latter, check if all vertices are still reachable from in (using TFS for example). If all vertices are still reachable, remove from and repeat the for loop at this state node in the partition tree. If not, then backtrack up the tree. After adding edges, is a spanner, and we return it and backtrack.
This enumerates all one2all spanners, since any such a spanner can be formed by adding edges while staying connected, and removing edges from the graph. Since each spanner corresponds to some leaf node of the tree, which has a depth of , and progressing from one node to another node one layer down takes time (independently from including or excluding the edge), we obtain that the delay is bounded by .
A.4 Proof of Theorem 7
See 7
Proof.
We reduce Hypergraph Dualization, or Dual, to our problem. Let us first describe the transformation of a Dual instance into a one2all2one spanner enumeration instance. Then, we prove that each minimal transversal in the Dual instance corresponds to a one2all2one spanner in the one2all2one spanner enumeration instance (), and vice versa ().
For the following transformation, refer to Figure 2 as well. Let the Dual instance be composed of vertices and hyperedges . Start by constructing an initially empty temporal graph and add vertex for each vertex , and vertex for each hyperedge . For all , if , then create a vertex in and edges and with times and resp. Add vertex to . For each , add vertices , , and , and edges , with times 1 and 2 resp. as well as edges , , and with times , 2, and resp. Finally, add vertex and edges with time 2 for all , and edge with time 3. The transformation is now complete.
By construction, we obtain that all edges except for edges are necessary, i.e. that they are part of any one2all2one spanner of w.r.t. source vertex . Indeed, we have that:
-
Each edge is necessary for to reach vertex ;
-
Each edge is necessary for vertex to reach ;
-
And likewise for each edge and each edge ;
-
Each edge is necessary for to reach vertex ;
-
Each edge is necessary for vertex to reach ;
-
Each edge is necessary for vertex to reach ;
-
And finally, edge is necessary for to reach .
Let denote the temporal graph composed of these edges, i.e. , for all (in Figure 2, this corresponds to the illustrated temporal graph without the dashed edges). We have that in , all vertices can be reached by as well as reach , except for vertices , as these can only reach but not be reached by . Note that adding some edge to will allow to reach exactly vertices such that . We thus observe that any spanner of is composed of with some minimal selection of edges .
minimal transversal one2all2one spanner:
Given a minimal transversal of the Dual instance, we can construct the following one2all2one spanner . Consider to be initialized as by the above observation, and then add, for each , edge to . Since is a minimal transversal for the Dual instance, we have that for every hyperedge , there exists some that hits it. In the same manner, we have that by adding the corresponding edges to , we obtain a one2all2one spanner such that for every vertex , there exists some added edge that allows to reach . is minimal because no edge from can be removed, and no edge can be removed either since otherwise wouldn’t be minimal.
minimal transversal one2all2one spanner:
Consider a one2all2one spanner in the transformed instance. It must be composed of with some edges . We construct a minimal transversal for the Dual instance by selecting each vertex such that .
Indeed, this must correspond to a transversal since by construction, edges allow for to reach exactly vertices such that . is a minimal transversal since, by contradiction, if some selected could be removed and the result is still a transversal, then the corresponding edge in could be removed as well, which is a contradiction because is minimal.
A.5 Proof of Theorem 8
See 8
Proof.
To prove -hardness, consider the same transformation as in Theorem 3, from (see again Figure 1). Let be the first source vertex, renamed to . Let a second source vertex be added to the temporal graph, and connect it to with an edge of time 3. Further connect to all other vertices for all literals and clauses , with an edge which is then subdivided into edges and with times 2 and 3 resp. Add to edge set (which already contains edges for all variables ) all these newly created edges. Note that is connected. The transformation is now complete.
Since edge is in which allows the two source vertices to reach each other, and since all edges , are in , and they allow source vertex to reach all vertices , and these edges do not allow to reach vertices (nor aid in the reachability between vertices that could indirectly help to reach them), essentially what remains to decide in this reduction is how to connect from to the other vertices. This is exactly the problem in Theorem 3, and we use the exact same structure for this (ignoring the new edges we added which we just argued are not useful for this). Hence we conclude that the result, being the -completeness, from Theorem 3 transfers for our problem here.
A.6 Proof of Theorem 9
See 9
Proof.
We reduce Hypergraph Dualization, or Dual, to our problem. Let us first describe the transformation of a Dual instance into a many2all spanner enumeration instance. Then, we prove that each minimal transversal in the Dual instance corresponds to a many2all spanner in the many2all spanner enumeration instance (), and vice versa ().
For the following transformation, refer to Figure 4 as well. Let the Dual instance be composed of vertices and hyperedges . Start by constructing an initially empty temporal graph and add vertex for each vertex , and vertex for each hyperedge . For all , if , then create a vertex in and edges and with times and resp. Add vertex to . For each , add vertices , and , and edges , , and with times 1, , and resp. Finally, add vertex , edge with time 4, edges and with time 2 for all and . The transformation is now complete.
By construction, we obtain that all edges except for edges are necessary, i.e. that they are part of any many2all spanner of w.r.t. source vertices and . Indeed, we have that:
-
Each edge is necessary for to reach vertex ;
-
Each edge is necessary for to reach vertex ;
-
Each edge is necessary for to reach vertex ;
-
Each edge is necessary for to reach vertex ;
-
Each edge is necessary for to reach vertex ;
-
Each edge is necessary for to reach vertex ;
-
Each edge is necessary for to reach vertex ;
-
And finally, edge is necessary for to reach .
Let denote the temporal graph composed of these edges, i.e. , for all (in Figure 4, this corresponds to the illustrated temporal graph without the dashed edges). We have that in , all vertices can be reached by as well as by , except for vertices , as these can only be reached by but not by . Note that adding some edge to will allow to reach exactly vertices such that . We thus observe that any spanner of is composed of with some minimal selection of edges .
minimal transversal many2all spanner:
Given a minimal transversal of the Dual instance, we can construct the following many2all spanner . Consider to be initialized as by the above observation, and then add, for each , edge to . Since is a minimal transversal for the Dual instance, we have that for every hyperedge , there exists some that hits it. In the same manner, we have that by adding the corresponding edges to , we obtain a many2all spanner such that for every vertex , there exists some added edge that allows to reach . is minimal because no edge from can be removed, and no edge can be removed either since otherwise wouldn’t be minimal.
minimal transversal many2all spanner:
Consider a many2all spanner in the transformed instance. It must be composed of with some edges . We construct a minimal transversal for the Dual instance by selecting each vertex such that .
Indeed, this must correspond to a transversal since by construction, edges allow for to reach exactly vertices such that . is a minimal transversal since, by contradiction, if some selected could be removed and the result is still a transversal, then the corresponding edge in could be removed as well, which is a contradiction because is minimal.
A.7 Proof of Lemma 10
See 10
Proof.
Reachability: Let us first study reachability of vertices in . All vertices can trivially reach all their neighbors, so we consider the non-adjacent vertices only and give the corresponding temporal paths (which always use the earliest times possible):
-
Vertex :
,
,
; -
Any vertex :
,
,
,
,
,
; -
Any vertex :
,
,
,
,
; -
Vertex :
,
,
,
; -
Any vertex :
,
,
; -
Vertex :
,
,
; -
Any vertex :
,
,
,
,
,
.
This shows that all vertices can reach all others in with the exception of vertex not being able to reach the corresponding vertex , for all . Note that adding edges from can only improve reachability, and adding all edges from results in all vertices reaching all vertices in , because now temporal path , for any , exists.
Necessity: Next, let us show that all edges of are necessary in , and in , for the reachability of some pair of vertices. Let us list all these edges and the pairs they are necessary for (in both temporal graphs):
-
Any edge : necessary for to reach ;
-
Any edge : necessary for to reach ;
-
Any edge : necessary for to reach ;
-
Any edge : necessary for to reach ;
-
Any edge : necessary for to reach ;
-
Any edge : necessary for to reach ;
-
Any edge : necessary for to reach ;
-
Any edge : necessary for to reach ;
Spanner: By the necessity property, all edges of must be part of any spanner of . By the reachability property, these ensure reachability between almost all vertices. They are however insufficient for any to reach the corresponding . Some edges from are thus required for this in a spanner. Moreover, just adding the two edges and for some is sufficient, as now temporal path exists for all , and this is a minimal spanner because none of these two edges can be removed without breaking these temporal paths.