Improved Purely AdditiveFault-Tolerant SpannersThis work was partially supported by the Research Grant PRIN 2010 “ARS TechnoMedia", funded by the Italian Ministry of Education, University, and Research, and by the ERC Starting Grant “New Approaches to Network Design".

Improved Purely Additive
Fault-Tolerant Spannersthanks: This work was partially supported by the Research Grant PRIN 2010 “ARS TechnoMedia", funded by the Italian Ministry of Education, University, and Research, and by the ERC Starting Grant “New Approaches to Network Design".

Davide Bilò Dipartimento di Scienze Umanistiche e Sociali, Università di Sassari, Italy    Fabrizio Grandoni IDSIA, University of Lugano, Switzerland    Luciano Gualà Dipartimento di Ingegneria dell’Impresa, Università di Roma “Tor Vergata", Italy   
Stefano Leucci
DISIM, Università degli Studi dell’Aquila, Italy
   Guido Proietti DISIM, Università degli Studi dell’Aquila, Italy Istituto di Analisi dei Sistemi ed Informatica, CNR, Roma, Italy
E-mail: davide.bilo@uniss.it; fabrizio@idsia.ch; guala@mat.uniroma2.it; stefano.leucci@univaq.it; guido.proietti@univaq.it
Abstract

Let be an unweighted -node undirected graph. A -additive spanner of is a spanning subgraph of such that distances in are stretched at most by an additive term w.r.t. the corresponding distances in . A natural research goal related with spanners is that of designing sparse spanners with low stretch.

In this paper, we focus on fault-tolerant additive spanners, namely additive spanners which are able to preserve their additive stretch even when one edge fails. We are able to improve all known such spanners, in terms of either sparsity or stretch. In particular, we consider the sparsest known spanners with stretch , , and , and reduce the stretch to , , and , respectively (while keeping the same sparsity).

Our results are based on two different constructions. On one hand, we show how to augment (by adding a small number of edges) a fault-tolerant additive sourcewise spanner (that approximately preserves distances only from a given set of source nodes) into one such spanner that preserves all pairwise distances. On the other hand, we show how to augment some known fault-tolerant additive spanners, based on clustering techniques. This way we decrease the additive stretch without any asymptotic increase in their size. We also obtain improved fault-tolerant additive spanners for the case of one vertex failure, and for the case of edge failures.

1 Introduction

We are given an unweighted, undirected -node graph . Let denote the shortest path distance between nodes and in . A spanner of is a spanning subgraph such that for all , , where is the so-called stretch or distortion function of the spanner. In particular, when , for constants , the spanner is named an (,) spanner. If , the spanner is called (purely) additive or also -additive. If , the spanner is called -multiplicative.

Finding sparse (i.e., with a small number of edges) spanners is a key task in many network applications, since they allow for a small-size infrastructure onto which an efficient (in terms of paths’ length) point-to-point communication can be performed. Due to this important feature, spanners were the subject of an intensive research effort, aiming at designing increasingly sparser spanners with lower stretch.

However, as any sparse structure, a spanner is very sensitive to possible failures of components (i.e., edges or nodes), which may drastically affect its performances, or even disconnect it! Thus, to deal with this drawback, a more robust concept of fault-tolerant spanner is naturally conceivable, in which the distortion must be guaranteed even after a subset of components of fails.

More formally, for a subset of edges (resp., vertices) of , let be the graph obtained by removing from the edges (resp., vertices and incident edges) in . When , we will simply write . Then, an -edge fault-tolerant (-EFT) spanner with distortion , is a subgraph of such that, for every set of at most failed edges, we have111Note that in this definition we allow to become infinite (if the removal of disconnects from ). In that case we assume the inequality to be trivially satisfied.

We define similarly an -vertex fault-tolerant (-VFT) spanner. For , we simply call the spanner edge/vertex fault-tolerant (EFT/VFT).

Chechik et al. [10] show how to construct a -multiplicative -EFT spanner of size , for any integer . Their approach also works for weighted graphs and for vertex-failures, returning a -multiplicative -VFT spanner of size .222The notation hides poly-logarithmic factors in . This latter result has been finally improved through a randomized construction in [14], where the expected size was reduced to . For a comparison, the sparsest known -multiplicative standard (non fault-tolerant) spanners have size [2], and this is believed to be asymptotically tight due to the girth conjecture of Erdős [15].

Additive fault-tolerant spanners can be constructed with the following approach by Braunshvig et al [8]. Let be an -multiplicative -EFT spanner, and be a -additive standard spanner. Then is a -additive -EFT spanner. One can exploit this approach to construct concrete EFT spanners as follows. We know how to construct -additive spanners of size [4], randomized spanners that, w.h.p., have size and additive distortion [9], and -additive spanners of size [1]. By setting and choosing properly, this leads to EFT spanners of size with additive distortion , size with additive distortion (w.h.p.), and size with additive distortion . Finally, using a different approach, Parter [17] recently presented 2- and 6-additive EFT/VFT spanners of size and , respectively.

1.1 Our Results.

In this paper, we focus on additive EFT spanners, and we improve all the known such spanners in terms of sparsity or stretch (see Table 1.1). We also present some better results for additive VFT and -EFT spanners.

{tabu}

|c|c|c|c|  State of the art   & Our results  
Size & & Size &
& [17] &&
& [17] &&
* & * [8, 9] & * & *
& [8, 4] & &

In more detail, our improved EFT spanners exploit the following two novel approaches. Our first technique (see Section 2), assumes that we are given an additive sourcewise fault-tolerant spanner , i.e., a fault-tolerant spanner that guarantees low distortion only for the distances from a given set of source nodes. We show that, by carefully choosing and by augmenting with a conveniently selected small subset of edges, it is possible to construct a fault-tolerant spanner (approximately preserving all pairwise distances) with a moderate increase of the stretch. This, combined with the sourcewise EFT spanners in [7, 18], leads to the first two results in the table. In particular, we reduce the additive stretch of the best-known spanner of size from [17] to (actually, we also save a polylogarithmic factor in the size here). For the case of stretch , we slightly decrease the size from [17] to . This technique also applies to VFT spanners. In particular, we achieve a -additive VFT spanner of size rather than [17], and a -additive VFT spanner of size , improving on the -additive VFT spanner of size in [17].

Our second technique (see Section 3) relies on some properties of known additive spanners. We observe that some known additive spanners are based on clustering techniques that construct a small-enough number of clusters. Furthermore, the worst-case stretch of these spanners is achieved only in some specific cases. We exploit these facts to augment the spanner based on the already mentioned construction of [8] with a small number of inter and intra-cluster edges. This allows us to reduce the additive stretch without any asymptotic increase in the number of edges.

Finally, for the case of multiple edge failures, we are able to prove that the construction in [8] has in fact an additive stretch of only (rather than ).

Theorem 1.1
Let be a -additive spanner of , and let be an -multiplicative -EFT spanner of . The graph is a -additive -EFT spanner of . In the special case , the additive stretch is at most .
We see this as an interesting result since, to the best of our knowledge, the construction of [8] is the only known approach for building additive spanners withstanding more than a single edge fault. At a high-level, in [8] the shortest path in between two vertices is decomposed into (roughly ) subpaths called blocks. The authors then show that it is possible to build a bypass (i.e., a fault-free path) in between the endpoints of each block such that the additive error incurred by using this path is at most . Actually, in addition to those intra-block bypasses, the spanner contains some inter-block shortcuts, that are exploited in order to prove a better distortion. The proof of this result is given in the appendix.

1.2 Related Work

A notion closely relate to fault-tolerant spanners is the one of Distance Sensitivity Oracles (DSO). The goal here is to compute, with a low preprocessing time, a compact data structure which is able to quickly answer distance queries following some component failures (possibly in an approximate way). For recent achievements on DSO, we refer the reader to [6, 11, 5, 16].

Another setting which is very close in spirit to fault-tolerant spanners is the recent work on fault-tolerant approximate shortest-path trees, both for unweighted [19] and for weighted [5, 7] graphs. In [3] it was introduced the resembling concept of resilient spanners, i.e., spanners that approximately preserve the relative increase of distances due to an edge failure.

There was also some research (see for example [12, 13]) on spanners approximately preserving the distance from a given set of nodes (sourcewise spanners), among a given set of nodes (subsetwise spanners), or between given pairs of nodes (pairwise spanners). In this framework a spanner is called a preserver if distances are preserved (in other words, the stretch function is the identity function). In particular, in one of our constructions we exploit a fault-tolerant version of a sourcewise preserver.

1.3 Notation

Given an unweighted, undirected graph , let us denote by a shortest path) between and in . When the graph is clear from the context we might omit the subscript. Given a simple path in and two vertices , we define to be the subpath of connecting and . Moreover, we denote by the length of , i.e., the number of its edges. When dealing with one or multiple failed edges, we say that a path is fault-free if it does not contain any of such edges. Finally, if two paths and are such that the last vertex of coincides with the first vertex of , we will denote by the path obtained by concatenating with .

2 Augmenting Sourcewise Fault-Tolerant Spanners

We next describe a general procedure (see Algorithm 1) to derive purely additive fault-tolerant spanners from sourcewise spanners of the same type.

The main idea of the algorithm is to select a small subset of source vertices of , which we call red. These vertices are used to build a fault-tolerant sourcewise spanner of the graph. The remaining vertices are either black or white. The former ones are always adjacent to a source, even in the event of edge/vertex failures. Finally, edges incident to white vertices are added to the sought spanner, as their overall number is provably small.

During the execution of the algorithm, we let denote the current color of vertex . We define to be the set of neighbors of which are colored white, and we let . We will also assign a non-negative counter to each vertex. Initially all these counters will be positive, and then they will only be decremented. A vertex is colored black only when reaches , and once a white vertex is colored either black or red it will never be recolored white again. Therefore, we have that implies .

1 ; ; while  do
         /* Add a new source */
2       foreach  do
3             if  then
4                  
return
Algorithm 1 Algorithm for computing a fault-tolerant additive spanner of from a -additive -EFT/VFT sourcewise spanner. The parameter affects the size of the returned spanner and it will be suitably chosen.

We first bound the size of the spanner .

Lemma 1

Algorithm 1 computes a spanner of size , where is the size of the spanner for .

Proof

The edges added to by line 1 are at most , since each time an edge is added to the counter is decremented, and at most counter decrements can occur.

To bound the edges added to by line 1, observe that all the edges in which are incident to a red vertex, have already been added to by line 1, hence we only consider vertices which are either white or black. Let be such a vertex and notice that, before line 1 is executed, we must have , as otherwise would have been selected as a source and colored red. This immediately implies that line 1 causes the addition of at most edges to .

It remains to bound the size of . It is sufficient to show that at the end of the algorithm. Each time a source is selected, has at least white neighbors in , hence the quantity decreases by at least . The claim follows by noticing that at the beginning of the algorithm and, when the algorithm terminates, it must be non-negative.

Figure 1: A case of the proof of Theorem 2.1. Bold edges are in . The black vertex is adjacent to at least vertices in .

We next bound the distortion of .

Theorem 2.1

Algorithm 1 computes a -additive -EFT/VFT spanner.

Proof

Consider two vertices and a set of at most failed edges/vertices of , we will show that . We assume, w.l.o.g., that and are connected in , as otherwise the claim trivially holds.

If all the vertices in are white, then all their incident edges have been added to (see line 1 of Algorithm 1), hence .

Otherwise, let be the closest vertex to such that . Notice that, by the choice of , contains all the edges of . If then:

where we used the fact that .

Finally, if then , hence has at least red neighbors in (see Figure 1). As a consequence, there is at least one red vertex such that (and hence ), therefore:

Let be a set of sources. In [18] it is shown that a sourcewise EFT/VFT preserver (i.e, a EFT/VFT sourcewise spanner) of having size can be built in polynomial time. Combining this preserver and Algorithm 1 with , we obtain the following:

Corollary 1

There exists a polynomial time algorithm to compute a -additive EFT/VFT spanner of size .

Furthermore, we can exploit the following result in [7].333Actually, the result in [7] is claimed for the single source case only, but it immediately extends to multiple sources.

Lemma 2 ([7])

Given an -spanner and a subset of vertices, it is possible to compute in polynomial time a subset of edges , so that is an EFT sourcewise spanner w.r.t. . The same result holds for VFT spanners, with of size .

Combining the above result with the -additive spanner of size in [1], we obtain -additive EFT and VFT sourcewise spanners of size and , respectively. By using these spanners in Algorithm 1, with and respectively, we obtain the following result.

Corollary 2

There exists a polynomial time algorithm to compute a -additive EFT spanner of size , and a -additive VFT spanner of size .

3 Augmenting Clustering-Based Additive Spanners

Most additive spanners in the literature are based on a clustering technique. A subset of the vertices of the graph is partitioned into clusters, each containing a special center vertex along with some of its neighbors. The distances between these clusters is then reduced by adding a suitable set of edges to the spanner. This technique is used, for example, in [4, 9]. We now describe a general technique which can be used to augment such spanners in order to obtain a fault-tolerant additive spanner.

More formally, a clustering of is a partition of a subset of . We call each element a cluster. We say that a vertex is clustered if it belongs to a cluster, and unclustered otherwise. Each cluster is associated with a vertex which is the center of . For each clustered vertex , we denote by the center of the cluster containing .

We say that a -additive spanner is clustering-based if there exists a clustering of such that: (i) contains all the edges incident to unclustered vertices, (ii) contains all the edges between every clustered vertex and , and (iii) the following property holds:

Property 1

For every such that is a clustered vertex, there exists a path in such that one of the following conditions holds:

  1. ;

  2. and either (i) , or (ii) the last edge of is .

  3. , , and the last edge of is .

Our algorithm works as follows (see Algorithm 2). We add to our spanner a -additive clustering-based spanner , and a -multiplicative EFT spanner . Note that so far our construction is the same as in [8], with the extra constraint that is clustering-based. We then augment by adding a carefully chosen subset of inter and intra-cluster edges.

1 ; EFT spanner; clustering-based spanner foreach  do
2       foreach  do
3             if  then
4                   .
5foreach   do
6       if  and are vertex-disjoint then
7             .
8      else if  then
9             .
10      else
               /* contains at most one edge */
11            
return
Algorithm 2 Algorithm for computing a fault-tolerant additive spanner from multiplicative and clustering-based additive spanners. Here denotes the clustering of while is the set of the edges in with one endpoint in and the other in .

Let be the clustering of . It is easy to see that contains at most edges and hence . We now prove an useful lemma which is then used to upper-bound the distortion of the spanner .

Figure 2: Decomposition of so that all shortest paths from to (resp. from to ) in are fault-free. Bold lines denote shortest paths in .
Lemma 3

Let be a spanning subgraph of , let be a failed edge and be two vertices satisfying . There exist two consecutive vertices in , with , such that every shortest path in between and (resp. and ) is fault-free.

Proof

First of all, notice that belongs to every shortest path between and in , therefore let . Consider the vertices of from to , let be the last vertex such that there exists a shortest path between and in that contains ( can possibly coincide with ), and call the vertex following in (see Figure 2). By the choice of , we have that no shortest path between and in can contain . Moreover, must traverse in the same direction as , i.e., . This is true since otherwise we would have and hence would be a fault-free shortest path between and in , a contradiction.

It remains to show that no shortest path between and in can contain . Suppose this is not the case, then:

which is again a contradiction.

We are now ready to prove the main theorem of this section.

Theorem 3.1

Algorithm 2 computes a -additive EFT-spanner.

Proof

Choose any two vertices and a failed edge . Suppose that are connected in , and that every shortest path between and in contains (as otherwise the claim trivially holds). We partition by finding as shown by Lemma 3.

Figure 3: Cases considered in the proof of Theorem 3.1 to build a fault-free path between and with small additive distortion. Bold lines represent shortest paths/edges in . Solid lines represent paths/edges in while the dashed edge does not belong to and cannot coincide with .

The edge is in and hence cannot coincide with . Moreover, we suppose , as otherwise we would immediately have:

This means that both and must be clustered. Let (resp. ) be the (unique) cluster that contains (resp. ).444Notice that and may coincide.

Let and . Clearly . If then we are done as:

Next we assume that . This means that either (i) and are both equal to , or (ii) exactly one of them is while the other equals . Assume w.l.o.g. that . This implies that , hence is a shortest path between and in , and by Lemma 3, it is fault-free.

In the rest of the proof we separately consider the cases and . In the former case, since , we know that, during the execution of the loop in line 2 of Algorithm 2, an edge such that has been added to (see Figure 3 (a)). Since the paths and are edge-disjoint, at least one of them is fault free, hence: . Thus, by 3 of Property 1:

We now consider the remaining case, namely . We have that , therefore during the execution of the loop in line 2 of Algoritm 2, two distinct edges so that and must have been added to (see Figure 3 (b)).

Notice that and might coincide, but this would imply that and hence . This, in turn, implies the existence of two edge-disjoint paths of length between and in , namely and . As at least one of them must be fault-free. Therefore:

On the other hand, if , we consider the two paths and .555Some consecutive vertices of (resp. ) might actually coincide. In this case, we ignore all but the first of such vertices and define (resp. ) accordingly. Notice that and can share at most a single edge, namely (when ), and that this edge cannot coincide with as it belongs to which is a fault-free shortest path between and in . This implies that at least one of and is fault-free and hence . If then, since , either 2 or 3 of Property 1 must hold, so we know that is fault-free and has a length of at most . We have:

Finally, when , we have:

This concludes the proof.

This result can immediately be applied to the -additive spanner of size in [4], which is clustering-based and uses clusters. Using the -multiplicative EFT spanner of size from [10], we obtain:

Corollary 3

There exists a polynomial time algorithm to compute a -additive EFT spanner of size .

We can similarly exploit the clustering-based spanner of [9] which provides, w.h.p., an additive stretch of and a size of by using clusters.

Corollary 4

There exists a polynomial time randomized algorithm that computes w.h.p. a -additive EFT spanner of of size .

References

  • [1] Donald Aingworth, Chandra Chekuri, Piotr Indyk, and Rajeev Motwani. Fast estimation of diameter and shortest paths (without matrix multiplication). SIAM J. Comput., 28(4):1167–1181, 1999.
  • [2] Ingo Althöfer, Gautam Das, David P. Dobkin, Deborah Joseph, and José Soares. On sparse spanners of weighted graphs. Discrete & Computational Geometry, 9:81–100, 1993.
  • [3] Giorgio Ausiello, Paolo Giulio Franciosa, Giuseppe Francesco Italiano, and Andrea Ribichini. On resilient graph spanners. In ESA, pages 85–96, 2013.
  • [4] Surender Baswana, Telikepalli Kavitha, Kurt Mehlhorn, and Seth Pettie. Additive spanners and (alpha, beta)-spanners. ACM Transactions on Algorithms, 7(1):5, 2010.
  • [5] Surender Baswana and Neelesh Khanna. Approximate shortest paths avoiding a failed vertex: Near optimal data structures for undirected unweighted graphs. Algorithmica, 66(1):18–50, 2013.
  • [6] Aaron Bernstein and David R. Karger. A nearly optimal oracle for avoiding failed vertices and edges. In STOC, pages 101–110, 2009.
  • [7] Davide Bilò, Luciano Gualà, Stefano Leucci, and Guido Proietti. Fault-tolerant approximate shortest-path trees. In ESA, pages 137–148, 2014.
  • [8] Gilad Braunschvig, Shiri Chechik, and David Peleg. Fault tolerant additive spanners. In WG, pages 206–214, 2012.
  • [9] Shiri Chechik. New additive spanners. In SODA, pages 498–512, 2013.
  • [10] Shiri Chechik, Michael Langberg, David Peleg, and Liam Roditty. Fault-tolerant spanners for general graphs. In STOC, pages 435–444, 2009.
  • [11] Shiri Chechik, Michael Langberg, David Peleg, and Liam Roditty. f-sensitivity distance oracles and routing schemes. In ESA, pages 84–96, 2010.
  • [12] Don Coppersmith and Michael Elkin. Sparse sourcewise and pairwise distance preservers. SIAM J. Discrete Math., 20(2):463–501, 2006.
  • [13] Marek Cygan, Fabrizio Grandoni, and Telikepalli Kavitha. On pairwise spanners. In STACS, pages 209–220, 2013.
  • [14] Michael Dinitz and Robert Krauthgamer. Fault-tolerant spanners: better and simpler. In PODC, pages 169–178, 2011.
  • [15] Paul Erdős. Extremal problems in graph theory. In Theory of Graphs and its Applications, pages 29–36, 1964.
  • [16] Fabrizio Grandoni and Virginia Vassilevska Williams. Improved distance sensitivity oracles via fast single-source replacement paths. In FOCS, pages 748–757, 2012.
  • [17] Merav Parter. Vertex fault tolerant additive spanners. In DISC, pages 167–181, 2014.
  • [18] Merav Parter and David Peleg. Sparse fault-tolerant BFS trees. In ESA, pages 779–790, 2013.
  • [19] Merav Parter and David Peleg. Fault tolerant approximate BFS structures. In SODA, pages 1073–1092, 2014.

Appendix A Purely-Additive Fault Tolerant Spanners for Faults

As mentioned earlier, the authors of [8] construct an additive -EFT spanner by merging a -additive spanner with an -multiplicative -EFT spanner . They show that the additive distortion of their spanner is (at most) . We show that indeed their spanner has a lower distortion .

Choose any two (distinct) vertices which are connected in , and consider the path . Given two distinct vertices we say that either , , or if , , or , respectively. Moreover, for each pair of vertices we define their class to be the first failed edge that is encountered by traversing from to . We consider as a directed edge so that if then and . If the path is fault-free then we let .

Now, following [8], we partition into a sequence of consecutive edge-disjoint subpaths of which we call blocks. Each block is associated to five special vertices, namely , , , and . In particular starts with and ends with . When is clear from the context we might omit the superscript.

The first block of is defined as follows: suppose that and let and be the first (i.e., the smallest) vertex of such that . Then, let be the last pair of vertices of (in lexicographic order) such that (notice that might coincide with ). We define to be the vertex following in . The block is the subpath of starting in and ending in . Notice that (i) , (ii) , and (iii) might not contain and/or . The next block is defined in a similar manner, on the remaining portion of the path , namely . We continue this recursive procedure until a block such that is found, when this happens we set , , and , hence completing the partition. Notice that might be the only block of the decomposition if , and that might also be a path of length (which contains the sole vertex ). Moreover, notice that if and are two consecutive blocks, then .

For the sake of convenience, we extend the definition of to blocks in the following way: . Moreover, given two blocks , we say that if .

It is shown in [8] that, for each block, there exists a bypass of small additive distortion between its endpoints.

Lemma 4 ([8])

For each block , we have .

Let us prove a few technical lemmas.

Lemma 5

For each block , and for each couple of vertices such that , we have .

Proof

It follows immediately from how is partitioned into blocks.

Lemma 6

For each block such that we have: .

Proof

From the fact that , we know that . Therefore:

Figure 4: Paths of low additive distortions between successive blocks. The class is . Bold curves represent fault-free shortest paths in .

We now prove two useful lemmas that show the existence of fault-tolerant paths of low additive distortion between distinct blocks:

Lemma 7

For each block such that (i) , and (ii) there exists a block satisfying , we have: .

Proof

Let . We first prove that