This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

11institutetext: University of Arizona, Tucson, United States
11email: [email protected]
22institutetext: University of Saskatchewan, Saskatoon, Canada
22email: [email protected]
33institutetext: Brock University, St. Catharines, Canada
33email: [email protected]

Subsetwise and Multi-Level Additive Spanners with Lightness Guarantees

Reyan Ahmed 11    Debajyoti Mondal 22    Rahnuma Islam Nishat 33
Abstract

An (α,β)(\alpha,\beta) spanner of an edge weighted graph G=(V,E)G=(V,E) is a subgraph HH of GG such that for every pair of vertices uu and vv, dH(u,v)αdG(u,v)+βWd_{H}(u,v)\leq\alpha\cdot d_{G}(u,v)+\beta W, where dG(u,v)d_{G}(u,v) is the shortest path length from uu to vv in GG; we consider two settings: in one setting W=WG(u,v),W=W_{G}(u,v), the maximum edge weight in a shortest path from uu to vv in GG, and in the other setting W=Wmax,W=W_{max}, the maximum edge weight of GG.If α>1\alpha>1 and β=0\beta=0, then HH is called a multiplicative α\alpha-spanner. If α=1\alpha=1, then HH is called an additive +βW\beta W spanner. While multiplicative spanners are very well studied in the literature, spanners that are both additive and lightweight have been introduced more recently [Ahmed et al., WG 2021]. Here the lightness is the ratio of the spanner weight to the weight of a minimum spanning tree of GG. In this paper, we examine the widely known subsetwise setting when the distance conditions need to hold only among the pairs of a given subset SS. We generalize the concept of lightness to subset-lightness using a Steiner tree and provide polynomial-time algorithms to compute subsetwise additive +ϵW(,)+\epsilon W(\cdot,\cdot) spanner and +(4+ϵ)W(,)+(4+\epsilon)W(\cdot,\cdot) spanner with Oϵ(|S|)O_{\epsilon}(|S|) and Oϵ(|VH|1/3|S|1/3)O_{\epsilon}(|V_{H}|^{1/3}|S|^{1/3}) subset-lightness, respectively, where ϵ\epsilon is an arbitrary positive constant. We next examine a multi-level version of spanners that often arises in network visualization and modeling the quality of service requirements in communication networks. The goal here is to compute a nested sequence of spanners with the minimum total edge weight. We provide an ee-approximation algorithm to compute multi-level spanners assuming that an oracle is given to compute single-level spanners, improving a previously known 4-approximation [Ahmed et al., IWOCA 2023].

1 Introduction

Given a graph GG, a spanner of GG is a subgraph that preserves lengths of shortest paths in GG up to some multiplicative or additive error [26, 25]. A subgraph H=(V,EE)H=(V,E^{\prime}\subseteq E) of GG is called a multiplicative α\alpha–spanner if the lengths of shortest paths in GG are preserved in HH up to a multiplicative factor of α\alpha, that is, dH(u,v)αdG(u,v)d_{H}(u,v)\leq\alpha\cdot d_{G}(u,v) for all u,vVu,v\in V, where dG(u,v)d_{G}(u,v) denotes the length of the shortest path from uu to vv in GG. For being an additive +β\beta spanner, HH must satisfy the inequality dH(u,v)dG(u,v)+βd_{H}(u,v)\leq d_{G}(u,v)+\beta.

Refer to caption
Figure 1: (a) A graph GG, where the subset SS is shown in squares. A subgraph corresponding to the pairwise shortest paths determined by SS is highlighted in blue. Here WG(a,b)=WG(a,d)=WG(b,d)=10W_{G}(a,b)=W_{G}(a,d)=W_{G}(b,d)=10 and WG(a,c)=WG(b,c)=WG(c,d)=20W_{G}(a,c)=W_{G}(b,c)=W_{G}(c,d)=20. (b) A +2W(,)+2W(\cdot,\cdot)-spanner (in bold) of lightness 50/60=0.83=0.83 considering a spanning tree of the blue subgraph as the Steiner tree. (c) Illustration for a multi-level spanner.

Multiplicative spanners were introduced by Peleg and Schäffer [26] in 1989. Since then a rich body of research has attempted to find sparse and lightweight spanners on unweighted graphs. Such spanners find applications in computing graph summaries, building distributed computing models, and designing communication networks [7, 3]. Finding a multiplicative α\alpha–spanner with mm or fewer edges is NP–hard [26]. It is also NP–hard to find a clog|V|c\log|V|-approximate solution where c<1c<1, even for bipartite graphs [23]. However, every nn-vertex graph admits a multiplicative (2k1)(2k-1)-spanner with O(n1+1/k)O(n^{1+1/k}) edges and O(n/k)O(n/k) lightness [6], which has been improved in subsequent research [19, 18, 14, 11, 24].

A multiplicative factor allows for larger distances in a spanner, especially for pairs that have larger graph distances. Therefore, an additive spanner is sometimes more desirable even with the cost of having a larger number of edges. For unweighted graphs, there exist additive +2,+4+2,+4 and +6+6 spanners with O(n3/2)O(n^{3/2}) [5, 22], O~(n7/5)\tilde{O}(n^{7/5}) [13] and O(n4/3)O(n^{4/3}) edges [9, 22], respectively, whereas any additive +no(1)+n^{o(1)} spanners requires Ω(n4/3ϵ)\Omega(n^{4/3-\epsilon}) edges [1]. Here O~()\tilde{O}() hides polylogarithmic factors. These results have been extended to weighted graphs with the additive factors +βWG(,)+\beta W_{G}(\cdot,\cdot), where WG(,)W_{G}(\cdot,\cdot) represents the maximum weight on a shortest path between uu and vv in GG, i.e., dH(u,v)dG(u,v)+βWG(u,v)d_{H}(u,v)\leq d_{G}(u,v)+\beta W_{G}(u,v). We use W(u,v)W(u,v) instead of WG(u,v)W_{G}(u,v) if the graph GG is clear from context. Specifically, there exist additive +2W(,),+4W(,)+2W(\cdot,\cdot),+4W(\cdot,\cdot) and +(6+ϵ)W(,)+(6+\epsilon)W(\cdot,\cdot) spanners of size O(n3/2)O(n^{3/2}) [16], O~(n7/5)\tilde{O}(n^{7/5}) [3] and Oϵ(n4/3)O_{\epsilon}(n^{4/3}) [17], respectively, where Oϵ()O_{\epsilon}() hides poly(1/ϵ)poly(1/\epsilon) factors. Researchers have also attempted to guarantee a good lightness bound for such spanners, where the lightness is the ratio of the spanner weight to the weight of a minimum spanning tree of GG. So far, non-trivial lightness guarantees have been obtained only for (all-pairs) additive +ϵW(,)+\epsilon W(\cdot,\cdot) and +(4+ϵ)W(,)+(4+\epsilon)W(\cdot,\cdot) spanners, where the lightness bounds are Oϵ(n)O_{\epsilon}(n) and Oϵ(n2/3)O_{\epsilon}(n^{2/3}), respectively [2].

Real-life graphs can be very large, which motivates computing a subgraph that approximately preserves the shortest path distances among a subset of important vertices. Subsetwise spanner (also known as terminal spanners [15, 8]) is another commonly studied version, where in addition to GG, the input consists of a vertex subset SS of GG, known as terminals. The goal is to compute an additive or multiplicative spanner that guarantees that for every u,vSu,v\in S, dH(u,v)d_{H}(u,v) is within an additive or multiplicative factor of dG(u,v)d_{G}(u,v). Computing a subsetwise spanner comes with additional challenges, e.g., consider computing a minimum spanning tree vs. a minimum Steiner tree for an analogy. There exist additive +2+2 and additive +(2+ϵ)W(,)+(2+\epsilon)W(\cdot,\cdot) subsetwise spanners with size O(n|S|)O(n\sqrt{|S|}) and Oϵ(n|S|)O_{\epsilon}(n\sqrt{|S|}), respectively [3], however they do not come with any non-trivial lightness guarantees. The algorithms that construct such spanners often follow a greedy construction framework, i.e., they construct an initial graph and then examine the pairs in sorted nondecreasing order of the maximum weight, i.e., W(,)W(\cdot,\cdot). For each pair (u,v)(u,v), if it still fails to satisfy the distance condition of an additive spanner, then all the edges on the corresponding shortest path are added to the spanner.

In this paper, we focus on computing subsetwise additive spanners that are also light with respect to a Steiner tree TT. To this end, we define subset-lightness. Specifically, let PS×SP\subseteq S\times S be the pairs that do not satisfy the spanner condition in a minimum Steiner tree RR with terminal set SS. Let TT be a minimum Steiner tree with terminal set (SS)(S\cup S^{*}), where SS^{*} is the set of vertices on the shortest paths of the pairs in PP. Then, the subset-lightness is the ratio of the spanner weight to the weight of the minimum Steiner tree TT. Although it may initially appear that RR could be a simpler choice over TT when defining lightness for subsetwise spanners, RR may be a very loose lower bound. For example, consider a 2n2n-vertex complete graph GG with vertex set SS and let A,BA,B be a partition of SS into equal-size subsets. Assume that the weight of each edge that is crossing the partition is 22 and the weight of each remaining edge is (2+δ)(2+\delta), where δ>0\delta>0. A minimum spanning tree MM of GG is a star graph with weight O(n)O(n). Let GG^{\prime} be a graph obtained by subdividing each edge of GG once and distributing the weight of the edge equally among the two new edges. It is straightforward to verify that MM determines a minimum Steiner tree RR in GG^{\prime} with terminal set SS. Consider a pair a,ba,b, where aAa\in A, bBb\in B and the edge (a,b)(a,b) does not belong to RR. Then the weight of the shortest path a,,ba,\ldots,b in RR is 4+δ>44+\delta>4 and thus does not satisfy the distance condition for a +2+2 spanner. There are Ω(n2)\Omega(n^{2}) pairs with one element in AA and the other in BB, and any +2 spanner must take all these shortest paths. Therefore, the ratio of a +2 spanner over the weight of RR would be very large, i.e., Ω(|S|)\Omega(|S|), whereas TT (i.e., a minimum Steiner tree with terminals (SS)(S\cup S^{*})) is a better lower bound and gives a constant ratio. Therefore, we use TT to define subset-lightness.

The definition of subset-lightness naturally extends to the general case, i.e., when |S|=n|S|=n, where a minimum Steiner tree coincides with a minimum spanning tree. However, the techniques used to compute all-pairs additive spanners do not generalize to subsetwise additive spanners [2]. Therefore, a natural question is whether we can compute subsetwise spanners with non-trivial guarantees on subset-lightness, and in this paper, we answer this question affirmatively.

Our contribution. Let ϵ>0\epsilon>0 be a positive number, GG be a weighted graph and SS be a subset of vertices in GG. We show the following (also see Table 1).

  1. 1.

    GG has a subsetwise +ϵW(,)+\epsilon W(\cdot,\cdot) spanner with Oϵ(|S|)O_{\epsilon}(|S|) subset-lightness (Theorem 2.1) and the spanner can be constructed deterministically.

  2. 2.

    GG has a subsetwise +(4+ϵ)W(,)+(4+\epsilon)W(\cdot,\cdot) spanner with Oϵ(|VH|1/3|S|1/3)O_{\epsilon}(|V_{H}|^{1/3}|S|^{1/3}) subset-lightness (Theorem 2.2) and the spanner can be constructed deterministically.

  3. 3.

    GG has a subsetwise +(4+ϵ)Wmax+(4+\epsilon)W_{\max} spanner with O~ϵ(|S||VH|/|VH|)\tilde{O}_{\epsilon}(|S|\sqrt{|V^{\prime}_{H}|/|V_{H}|}) subset-lightness, where WmaxW_{\max} is the maximum edge weight of the graph; VHV_{H} and VHV^{\prime}_{H} are the sets of vertices of the Steiner trees connecting SS and a randomly sampled subset of SS, respectively (Theorem 2.3).

Table 1: Results on lightweight additive spanners.
All-pairs Additive Spanners Subsetwise Additive Spanners
Unweighted Weighted Weighted
+β\beta Lightness Ref +β\beta Lightness Ref Subset-Lightness Ref
0 O(n)O(n) [21] +ϵW(,)\epsilon W(\cdot,\cdot) Oϵ(n)O_{\epsilon}(n) [2] Oϵ(|S|)O_{\epsilon}(|S|) Th 2.1
+2 O(n1/2)O(n^{1/2}) [5, 22] - - - - -
+4 O(n2/5)O(n^{2/5}) [13] +(4+ϵ)W(,)\epsilon)W(\cdot,\cdot) Oϵ(n2/3)O_{\epsilon}(n^{2/3}) [2] Oϵ(|VH|1/3|S|1/3)O_{\epsilon}(|V_{H}|^{1/3}|S|^{1/3}), O~ϵ(|S||VH|/|VH|)\tilde{O}_{\epsilon}(|S|\sqrt{|V^{\prime}_{H}|/|V_{H}|}) Th 2.22.3
+6 O(n1/3)O(n^{1/3}) [9, 22] - - - - -

Notice that the results of Theorem 2.1 and Theorem 2.2 exactly match the bounds provided for all-pairs spanners [2] if we set S=VS=V. Hence, our results are not only answering stronger questions, but they are also directly comparable with the existing results. The main challenge to generalizing the all-pairs results to subsetwise results is that the former compares against the minimum spanning tree. A counting argument that is often used in additive spanner constructions is based on the number of improvements, i.e., the number of improvements that may occur for all pairs of vertices is no more than an upper bound. Here, an improvement means that the difference in the shortest path between the pair before and after adding a set of edges is non-zero. However, this idea does not work in the subsetwise setting if we only compute a Steiner tree that spans SS. A key contribution of our work is that we address this problem by computing Steiner trees that not only span SS but also the vertices in the shortest paths of some vertex pairs from SS.

We next consider computing multi-level (multiplicative/additive) spanner, where the goal is to compute a hierarchy of (multiplicative/additive) spanners that minimizes the total number of edges or the total edge weight of all the spanners. Specifically, the input consists of a graph and some subsets S1,S2,,SkS_{1},S_{2},\ldots,S_{k} of its vertices where S1S2SkS_{1}\subseteq S_{2}\subseteq\ldots\subseteq S_{k}. The goal is to find a hierarchy of spanners such that the spanner at the iith level connects SiS_{i} and for i>2i>2, the spanner SiS_{i} includes the edges of the spanners S1,,Si1S_{1},\ldots,S_{i-1}. Multi-level spanners can model real-world scenarios where different levels of importance are assigned to different sets of vertices. Examples of such scenarios include modeling the quality of service requirements for the nodes in communication networks [12], or visualizing a graph on a map when the details are revealed as the users zoom in [20]. There exists a 4-approximation algorithm for this problem [4], and we give an improved ee-approximation (Theorem 3.1).

The rest of the paper is organized as follows. Section 2 discusses the results on lightweight additive spanners. Section 3 presents the ee-approximation algorithm for multilevel spanners. Finally, Section 4 concludes the paper with directions for future research.

2 Lightweight Additive Subsetwise Spanner

In this section, we give our results on additive and lightweight spanners. All the spanners that we construct rely on the following preliminary setup.

2.1 Preliminary Setup

Let G=(V,E)G=(V,E) be a weighted graph and let SVS\subseteq V be a set of given vertices. Fix a shortest path for each pair of vertices in SS. First, we compute a constant-factor approximation of the Steiner tree RR with SS as the set of terminals. Next, we identify the vertex pairs from SS for which the computed Steiner tree does not provide a path that satisfies the spanner condition. We then compute SS^{\prime} by taking the union of SS and the vertices from the shortest paths of those vertex pairs. To compute a lightweight subsetwise spanner of SS, we compute RR and TT, which are constant-factor approximations for the Steiner trees with terminal sets SS and SS^{\prime}, respectively. Note that an approximate Steiner tree can be computed in polynomial time [10]. We then construct a Steiner tree H=(VH,EH)H=(V_{H},E_{H}) in GG with the set SS^{\prime} as terminals by taking the union of RR and TT and discarding unnecessary edges from TT. The reason for keeping the edges of RR is that later in our algorithm will use the vertices of SS^{\prime}, which we determined using RR. Since SSS\subseteq S^{\prime}, we have weight(R)<weight(T)weight(R)<weight(T), and hence weight(H)2×weight(T)weight(H)\leq 2\times weight(T). Therefore, we can compare asymptotic subset-lightness with respect to weight(H)weight(H) instead of weight(T)weight(T). We will focus our attention on a weight-scaled version of GG and a subdivision of HH, which is described below.

After computing HH, we multiply all edge weights of GG by |VH|/weight(H)|V_{H}|/weight(H) to obtain a new weighted graph Gs=(Vs,Es)G_{s}=(V_{s},E_{s}). Let HsH_{s} be the scaled Steiner tree obtained from HH. We now observe some properties of GsG_{s} that will be useful for the spanner construction. Although the Steiner tree has not been used previously for constructing lightweight spanners, such scaled graph has previously been used in [2] for constructing lightweight spanners. The following lemma shows this weight scaling preserves some distance relations.

Lemma 1

Let G=(V,E)G^{\prime}=(V^{\prime},E^{\prime}) be a subgraph of GG and let Gs=(Vs,Es)G^{\prime}_{s}=(V^{\prime}_{s},E^{\prime}_{s}) be a subgraph of GsG_{s} such that VsV^{\prime}_{s} and VV^{\prime} (similarly, EsE^{\prime}_{s} and EE^{\prime}) correspond to the same set of vertices (edges) in GG. Then dG(u,v)αdG(u,v)+βWG(u,v)d_{G^{\prime}}(u,v)\leq\alpha d_{G}(u,v)+\beta W_{G}(u,v) if and only if dGs(u,v)αdGs(u,v)+βWGs(u,v)d_{G^{\prime}_{s}}(u,v)\leq\alpha d_{G_{s}}(u,v)+\beta W_{G_{s}}(u,v), where α,β1\alpha,\beta\geq 1.

Proof

One can multiply |VH|/weight(H)|V_{H}|/weight(H) to both sides of the inequality dG(u,v)αdG(u,v)+βWG(u,v)d_{G^{\prime}}(u,v)\leq\alpha d_{G}(u,v)+\beta W_{G}(u,v) to obtain dGs(u,v)αdGs(u,v)+βWGs(u,v)d_{G^{\prime}_{s}}(u,v)\leq\alpha d_{G_{s}}(u,v)+\beta W_{G_{s}}(u,v).

The following lemma shows that we can safely remove the edges of weight larger than |VH||V_{H}| from GsG_{s}.

Lemma 2

Removal of the edges with weight larger than |VH||V_{H}| from GsG_{s} does not increase the shortest path length for any pair of vertices of SS.

Proof

Assume for a contradiction that ee is an edge with weight larger than |VH||V_{H}| and removal of ee increases the shortest path length of u,vSu,v\in S. It now suffices to show that ee cannot be an edge on the shortest path between uu and vv. Note that the Steiner tree HsH_{s} spans uu and vv. Therefore, the length of the shortest path between uu and vv in GsG_{s} is at most the total edge weight of the scaled Steiner tree, i.e., weight(H)weight(H) multiplied by |VH|/weight(H)|V_{H}|/weight(H), which is equal to |VH||V_{H}| and hence the shortest path cannot contain ee.

We now construct a tree H=(VH,EH)H^{\prime}=(V_{H^{\prime}},E_{H^{\prime}}) by subdividing the scaled Steiner tree HsH_{s}, which will help extend techniques for spanner construction to guarantee subset-lightness (Figure 2). Specifically, we subdivide each edge of HsH_{s} using a minimum number of subdivision vertices such that all edge weights in HH^{\prime} become less than or equal to one unit.

Refer to caption
Figure 2: Illustration for (a) Steiner tree HH, (b) scaled Steiner tree HsH_{s}, and (c) subdivided Steiner tree HH^{\prime}, where the Squares represent vertices of SS and solid circles represent subdivision vertices.
Lemma 3

Let nHn_{H^{\prime}} be the number of subdivision vertices in HH^{\prime}. Then nHweight(H)n_{H^{\prime}}\leq weight(H^{\prime}). and |VH|2|VH||V_{H^{\prime}}|\leq 2|V_{H}|.

Proof

It suffices to subdivide each edge (u,v)(u,v) with weightHs(u,v)1\lceil weight_{H_{s}}(u,v)\rceil-1 vertices. The sum over all edges is bounded by weight(Hs)=weight(H)weight(H_{s}){=}weight(H). Since weight(Hs)|VH|weight({H_{s}})\leq|V_{H}|, we have |VH|=|VH|+nH|VH|+weight(Hs)2|VH||V_{H^{\prime}}|=|V_{H}|+n_{H^{\prime}}\leq|V_{H}|+weight(H_{s})\leq 2|V_{H^{\prime}}|.

2.2 A +ϵW(,)+\epsilon W(\cdot,\cdot)-spanner

Overview of the Construction. We construct the spanner incrementally by maintaining a current graph. We first take a set of Steiner tree edges (with SS^{\prime} as terminals) into the current graph and then examine each pair (u,v)(u,v) from SS in increasing order of W(u,v)W(u,v). If the shortest path distance between u,vu,v in the current graph is more than what it requires for a +ϵW(,)+\epsilon W(\cdot,\cdot)-spanner, then we add all the edges on the shortest path between uu and vv in GsG_{s} that are currently missing. During this step, we show that some pairs of vertices get ‘set-off’, i.e., their shortest path distances in the current graph become comparable to that of GsG_{s}, and the number of such pairs is comparable to the total weight of the edges that have been added in this step. The final bound on the subset-lightness of the spanner comes by relating the total weight added to the total number of vertex pairs that were set off during the whole construction. A similar technique has previously been used to compute lightweight spanner for the whole graph, and using minimum spanning tree [2]. We extend that technique for subsetwise spanner using the Steiner tree.

Construction Details. For each vertex vSv\in S^{\prime}, let eve_{v} be the minimum weight edge incident to vv in GsG_{s}. Let H0=(VH0,EH0)H_{0}=(V_{H_{0}},E_{H_{0}}) be a graph where SVH0S^{\prime}\subseteq V_{H_{0}} and EH0E_{H_{0}} is obtained by choosing from all such edges the ones with a weight of less than one unit.

Lemma 4

Let PP be a shortest path in GsG_{s} between a pair of vertices u,vSu,v\in S. Let e=(w,r)e=(w,r) be an edge of PP that does not belong to H0H_{0} such that weight(e)<1weight(e)<1. Then there exists a vertex qq in H0H_{0} such that dH0(w,q)weight(e)d_{H_{0}}(w,q)\leq weight(e).

Proof

Since wSw\in S^{\prime}, by construction, H0H_{0} contains an edge e=(w,q)e^{\prime}=(w,q) incident to ww such that weight(e)<weight(e)<1weight(e^{\prime})<weight(e)<1.

Lemma 5

The number of vertices of H0H_{0}, |VH0|2|S||V_{H_{0}}|\leq 2|S^{\prime}| and weight(H0)|S||VH|weight(H_{0})\leq|S^{\prime}|\leq|V_{H}|.

Proof

Since HH is a Steiner tree on terminal set SS^{\prime}, |S||VH||S^{\prime}|\leq|V_{H}|. Since for each vertex uSu\in S^{\prime}, we add at most one edge with weight less than one in H0H_{0}, |VH0|2|S||V_{H_{0}}|\leq 2|S^{\prime}| and weight(H0)|S|weight(H_{0})\leq|S^{\prime}|.

Let H1H_{1} be the graph obtained by adding all edges of H0H_{0} and HH^{\prime}. The following claim shows that any edge in the shortest path in GsG_{s} if does not exist in H1H_{1}, then the end vertices of that edge has a close neighborhood (the set of neighbor vertices that has distance no more than the weight of the missing edge) in H1H_{1}.

Lemma 6

Let PP be a shortest path in GsG_{s} between a pair of vertices u,vSu,v\in S. Let e=(w,r)e=(w,r) be an edge of PP that does not belong to H1H_{1}. Then there exists a set of vertices VrVH1V_{r}\subseteq V_{H_{1}} such that |Vr|=Ω(weight(e))|V_{r}|=\Omega(weight(e)) and for each vertex qVr,dH1(w,q)weight(e)q\in V_{r},d_{H_{1}}(w,q)\leq weight(e).

Proof

Note that wSw\in S^{\prime} and hence a vertex of HH^{\prime}. If weight(e)<1weight(e)<1, then the claim follows form Lemma 4 if we choose Vr={q}V_{r}=\{q\} where qq is the neighbor of ww added in H0H_{0}. Assume now that weight(e)1weight(e)\geq 1. By Lemma 2, weight(e)|VH|weight(Hs)weight(e)\leq|V_{H}|\leq weight(H_{s}) and HH^{\prime} is obtained by subdividing the edges of HsH_{s} such that the weight of each edge of HH^{\prime} becomes at most one. Since H1H_{1} contains all edges of HH^{\prime}, we can set VrV_{r} to be the set of vertices that has a distance less than or equal to weight(e)weight(e) in H1H_{1}. Since the weight of edges of HH^{\prime} is at most 1, |Vr|=Ω(weight(e))|V_{r}|=\Omega(weight(e)).

We are now ready to describe the algorithm. We create a graph Gs=(Vs,Es)G^{\prime}_{s}=(V^{\prime}_{s},E^{\prime}_{s}) by removing the edges EHsE_{H_{s}} from GsG_{s} and adding the edges of HH^{\prime}. The algorithm sorts the pairs of vertices in SS based on their increasing order of maximum edge weight in the shortest path on GsG^{\prime}_{s}. Then it checks whether the distance condition is unsatisfied for pairs of vertices in this sorted order, and if so then adds the missing edges on the corresponding shortest path. Specifically, let HiH_{i} (initially, H1H_{1}, which consists of all the edges of H0H_{0} and HH^{\prime}) be the current subgraph of GsG^{\prime}_{s}. Then if the distance condition is unsatisfied, then the algorithm constructs Hi+1H_{i+1} by adding the missing edges of the shortest path to HiH_{i}. Once all the unsatisfied pairs are processed, the spanner condition is satisfied for all pairs of vertices in SS. Although we used GsG^{\prime}_{s} to check the spanner condition, where some edges may be subdivided, the subdivision does not change the shortest path length, and hence the final spanner corresponds to a valid +ϵW(,)+\epsilon W(\cdot,\cdot) spanner.

Refer to caption
Figure 3: Illustration for the set up for (a) Lemma 7 and (b) Lemma 10. The missing edges are shown in dotted lines.
Lemma 7

Let HiH_{i} be a subgraph of GsG^{\prime}_{s} and let PP be the shortest path between uu and vv in GsG^{\prime}_{s}. Let Hi+1H_{i+1} be the graph obtained from HiH_{i} by adding the vertices and edges of PP that were missing in HiH_{i}. Let pp be a vertex in PP and qq be a vertex in HiH_{i} such that the distance dHi(p,q)ϵ1WGs(u,v)d_{H_{i}}(p,q)\leq\epsilon_{1}W_{G^{\prime}_{s}}(u,v) where ϵ1>0\epsilon_{1}>0 (see e.g., Figure 3(a)). If dHi(u,v)>dGs(u,v)+ϵWGs(u,v)d_{H_{i}}(u,v)>d_{G^{\prime}_{s}}(u,v)+\epsilon W_{G^{\prime}_{s}}(u,v), where ϵ=2ϵ1+ϵ2\epsilon=2\epsilon_{1}+\epsilon_{2}, where ϵ2>0\epsilon_{2}>0, then the following hold.

  1. 1.

    dHi+1(u,q)dGs(u,q)+2ϵ1WGs(u,v)d_{H_{i+1}}(u,q)\leq d_{G^{\prime}_{s}}(u,q)+2\epsilon_{1}W_{G^{\prime}_{s}}(u,v) and dHi+1(v,q)dGs(v,q)+2ϵ1WGs(u,v)d_{H_{i+1}}(v,q)\leq d_{G^{\prime}_{s}}(v,q)+2\epsilon_{1}W_{G^{\prime}_{s}}(u,v)

  2. 2.

    Either dHi(u,q)dHi+1(u,q)>ϵ22WGs(u,v)d_{H_{i}}(u,q)-d_{H_{i+1}}(u,q)>\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v) or dHi(v,q)dHi+1(v,q)>ϵ22WGs(u,v)d_{H_{i}}(v,q)-d_{H_{i+1}}(v,q)>\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v).

Proof

Using triangle inequality, we have the following:

dHi+1(u,q)\displaystyle d_{H_{i+1}}(u,q) dHi+1(u,p)+dHi+1(p,q)\displaystyle\leq d_{H_{i+1}}(u,p)+d_{H_{i+1}}(p,q)
dHi+1(u,p)+ϵ1WGs(u,v)\displaystyle\leq d_{H_{i+1}}(u,p)+\epsilon_{1}W_{G^{\prime}_{s}}(u,v)
=dGs(u,p)+ϵ1WGs(u,v)\displaystyle=d_{G^{\prime}_{s}}(u,p)+\epsilon_{1}W_{G^{\prime}_{s}}(u,v)
dGs(u,q)+dGs(q,p)+ϵ1WGs(u,v)\displaystyle\leq d_{G^{\prime}_{s}}(u,q)+d_{G^{\prime}_{s}}(q,p)+\epsilon_{1}W_{G^{\prime}_{s}}(u,v)
dGs(u,q)+dHi+1(q,p)+ϵ1WGs(u,v)\displaystyle\leq d_{G^{\prime}_{s}}(u,q)+d_{H_{i+1}}(q,p)+\epsilon_{1}W_{G^{\prime}_{s}}(u,v)
dGs(u,q)+ϵ1WGs(u,v)+ϵ1WGs(u,v)\displaystyle\leq d_{G^{\prime}_{s}}(u,q)+\epsilon_{1}W_{G^{\prime}_{s}}(u,v)+\epsilon_{1}W_{G^{\prime}_{s}}(u,v)
=dGs(u,q)+2ϵ1WGs(u,v)\displaystyle=d_{G^{\prime}_{s}}(u,q)+2\epsilon_{1}W_{G^{\prime}_{s}}(u,v)

Similarly, we can show that dHi+1(v,q)dGs(v,q)+2ϵ1WGs(u,v)d_{H_{i+1}}(v,q)\leq d_{G^{\prime}_{s}}(v,q)+2\epsilon_{1}W_{G^{\prime}_{s}}(u,v). If dHi(u,q)dHi+1(u,q)ϵ22WGs(u,v)d_{H_{i}}(u,q)-d_{H_{i+1}}(u,q)\leq\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v) and dHi(v,q)dHi+1(v,q)ϵ22WGs(u,v)d_{H_{i}}(v,q)-d_{H_{i+1}}(v,q)\leq\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v), then

dHi(u,v)\displaystyle d_{H_{i}}(u,v) dHi(u,q)+dHi(q,v)\displaystyle\leq d_{H_{i}}(u,q)+d_{H_{i}}(q,v)
dHi+1(u,q)+ϵ22WGs(u,v)+dHi+1(q,v)+ϵ22WGs(u,v)\displaystyle\leq d_{H_{i+1}}(u,q)+\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v)+d_{H_{i+1}}(q,v)+\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v)
=dHi+1(u,q)+dHi+1(q,v)+ϵ2WGs(u,v)\displaystyle=d_{H_{i+1}}(u,q)+d_{H_{i+1}}(q,v)+\epsilon_{2}W_{G^{\prime}_{s}}(u,v)
dHi+1(u,p)+dHi+1(p,q)+dHi+1(q,p)+dHi+1(p,v)+ϵ2WGs(u,v)\displaystyle\leq d_{H_{i+1}}(u,p)+d_{H_{i+1}}(p,q)+d_{H_{i+1}}(q,p)+d_{H_{i+1}}(p,v)+\epsilon_{2}W_{G^{\prime}_{s}}(u,v)
=dHi+1(u,p)+dHi+1(p,v)+dHi+1(p,q)+dHi+1(q,p)+ϵ2WGs(u,v)\displaystyle=d_{H_{i+1}}(u,p)+d_{H_{i+1}}(p,v)+d_{H_{i+1}}(p,q)+d_{H_{i+1}}(q,p)+\epsilon_{2}W_{G^{\prime}_{s}}(u,v)
=dHi+1(u,p)+dHi+1(p,v)+2dHi+1(p,q)+ϵ2WGs(u,v)\displaystyle=d_{H_{i+1}}(u,p)+d_{H_{i+1}}(p,v)+2d_{H_{i+1}}(p,q)+\epsilon_{2}W_{G^{\prime}_{s}}(u,v)
dHi+1(u,p)+dHi+1(p,v)+2ϵ1WGs(u,v)+ϵ2WGs(u,v)\displaystyle\leq d_{H_{i+1}}(u,p)+d_{H_{i+1}}(p,v)+2\epsilon_{1}W_{G^{\prime}_{s}}(u,v)+\epsilon_{2}W_{G^{\prime}_{s}}(u,v)
=dHi+1(u,p)+dHi+1(p,v)+(2ϵ1+ϵ2)WGs(u,v)\displaystyle=d_{H_{i+1}}(u,p)+d_{H_{i+1}}(p,v)+(2\epsilon_{1}+\epsilon_{2})W_{G^{\prime}_{s}}(u,v)
=dGs(u,p)+dGs(p,v)+(2ϵ1+ϵ2)WGs(u,v)\displaystyle=d_{G^{\prime}_{s}}(u,p)+d_{G^{\prime}_{s}}(p,v)+(2\epsilon_{1}+\epsilon_{2})W_{G^{\prime}_{s}}(u,v)
=dGs(u,v)+(2ϵ1+ϵ2)WGs(u,v)\displaystyle=d_{G^{\prime}_{s}}(u,v)+(2\epsilon_{1}+\epsilon_{2})W_{G^{\prime}_{s}}(u,v)

However, we assumed dHi(u,v)>dGs(u,v)+(2ϵ1+ϵ2)WGs(u,v)d_{H_{i}}(u,v)>d_{G^{\prime}_{s}}(u,v)+(2\epsilon_{1}+\epsilon_{2})W_{G^{\prime}_{s}}(u,v). Hence either dHi(u,q)dHi+1(u,q)>ϵ22WGs(u,v)d_{H_{i}}(u,q)-d_{H_{i+1}}(u,q)>\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v) or dHi(v,q)dHi+1(v,q)>ϵ22WGs(u,v)d_{H_{i}}(v,q)-d_{H_{i+1}}(v,q)>\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v).

By Lemma 7, at each step, the shortest path distances from uu and vv to a set of vertices (e.g., vertex qq in the lemma) in the current graph become comparable with their shortest path distances in GsG^{\prime}_{s}. Such pairs are referred to as getting set-off. Furthermore, the shortest path distances in the current graph get smaller for some pair of vertices, e.g., (u,q)(u,q) or (v,q)(v,q). We say either the pair (u,q)(u,q) or (v,q)(v,q) gets an improvement. We now show that a pair can only get O(ϵ1/ϵ2)O(\epsilon_{1}/\epsilon_{2}) improvements after its set-off.

Lemma 8

The total number of improvements of a pair of vertices after set-off is O(ϵ1/ϵ2)O(\epsilon_{1}/\epsilon_{2}).

Proof

After the set-off of a particular pair (u,q)(u,q), the shortest path distance between u,qu,q in the current graph is at most 2ϵ1WGs(u,v)2\epsilon_{1}W_{G^{\prime}_{s}}(u,v) away from their shortest path distance in GsG^{\prime}_{s}. Now each improvement decreases the shortest path distance of u,qu,q in the current graph by at least ϵ22WGs(w,x)\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(w,x) for some w,xSw,x\in S. Since the algorithm iterates in the increasing order of maximum edge weight on the shortest path in GsG^{\prime}_{s}, the maximum number of improvements is O(ϵ1/ϵ2)O(\epsilon_{1}/\epsilon_{2}).

Let \mathcal{H} be the spanner constructed above. We are now ready to bound its subset-lightness.

Theorem 2.1

The subset-lightness of the spanner \mathcal{H} is Oϵ(|S|)O_{\epsilon}(|S|).

Proof

The weight of H0H_{0} is less than or equal to |S||VH||S^{\prime}|\leq|V_{H}|. Hence the weight of H1H_{1} is O(|VH|)O(|V_{H}|). In the next iterations, the algorithm adds missing edges of the shortest paths if the distance condition is unsatisfied. According to Lemma 6, for each missing edge added (on the shortest path PP) there is a neighborhood of size equal to the weight of the missing edge. Let us assume that the total weight of the missing edges is ZZ. We claim a neighborhood of size Ω(Z)\Omega(Z). For the sake of contradiction let us assume that the neighborhood has size o(Z)o(Z). But then we have a shorter path than the shortest path PP, a contradiction.

According to Lemma 7, each vertex in this Ω(Z)\Omega(Z)-size neighborhood gets set-off or improvement. Hence the total edge weight added in the remaining iterations is equal to the total number of set-offs and improvements of vertex pairs from S×(VHVH0)S\times(V_{H}\cup V_{H_{0}}). Since |VH0|2|S|=O(|VH|)|V_{H_{0}}|\leq 2|S^{\prime}|=O(|V_{H}|), the number such vertex pairs is O(|S||VH|)O(|S||V_{H}|). Each of these pairs gets at most one set-off and O(ϵ1/ϵ2)O(\epsilon_{1}/\epsilon_{2}) improvements after set-off. Hence the total count is O(|S||VH|+|S||VH|ϵ1/ϵ2)O(|S||V_{H}|+|S||V_{H}|\epsilon_{1}/\epsilon_{2}). Assuming ϵ1\epsilon_{1} and ϵ2\epsilon_{2} are constants, the total spanner weight is Oϵ(|S||VH|)O_{\epsilon}(|S||V_{H}|), where ϵ=ϵ1/ϵ2\epsilon=\epsilon_{1}/\epsilon_{2}.

Note that the subset-lightness bound in Theorem 2.1 is tight because for a complete graph GG with edges of unit weight and SS equal to the vertex set, any +ϵW(,)+\epsilon W(\cdot,\cdot) spanner, where ϵ(0,1]\epsilon\in(0,1], gets Ω(n2)\Omega(n^{2}) edges and thus a subset-lightness of Ω(|S|)\Omega(|S|).

2.3 A +(4+ϵ)W(,)+(4+\epsilon)W(\cdot,\cdot)-spanner

Some initial steps of our +(4+ϵ)W(,)+(4+\epsilon)W(\cdot,\cdot)-spanner construction are the same as our +ϵW(,)+\epsilon W(\cdot,\cdot)-spanner construction, i.e., we construct the graphs HH, HsH_{s}, HH^{\prime}, and GsG^{\prime}_{s}. The construction of H0H_{0} differs from that in the +ϵW(,)+\epsilon W(\cdot,\cdot)-spanner construction; in the +ϵW(,)+\epsilon W(\cdot,\cdot)-spanner construction, the vertex set of H0H_{0} is SS^{\prime} and we add at most one edge incident to each vertex in SS^{\prime}. In our +(4+ϵ)W(,)+(4+\epsilon)W(\cdot,\cdot)-spanner, to construct H0H_{0}, we sort all the neighbors of uu in VHV_{H} according to the increasing order of edge weights for each vertex uSu\in S. We add edges to H0H_{0} until the total weight of edges added adjacent to uu is no more than dd (where dd is a parameter we will optimize later). We then construct H1H_{1} by adding the edges of H0H_{0} and HsH_{s}.

Lemma 9

Let PP be a shortest path in GsG_{s} between a pair of vertices u,vSu,v\in S. Let e=(w,r)e=(w,r) be an edge of PP that does not belong to H1H_{1}. Then there exists a set of vertices VrVH1V_{r}\subseteq V_{H_{1}} such that |Vr|=Ω(d)|V_{r}|=\Omega(\sqrt{d}) and for each vertex qVr,dH1(w,q)weight(e)q\in V_{r},d_{H_{1}}(w,q)\leq weight(e).

Proof

If the weight of ee is no more than d\sqrt{d}, then since ee is a missing edge we added at least d\sqrt{d} neighbors of ww in H0H_{0}. Let VrV_{r} be those neighbors and then VrV_{r} satisfies the desired property. Assume now that weight(e)dweight(e)\geq\sqrt{d}. By Lemma 2, weight(e)|VH|weight(Hs)weight(e)\leq|V_{H}|\leq weight(H_{s}) and HH^{\prime} is obtained by subdividing the edges of HsH_{s} such that the weight of each edge of HH^{\prime} becomes at most one. Since H1H_{1} contains all edges of HH^{\prime}, we can set VrV_{r} to be the set of vertices that has a distance less than or equal to weight(e)weight(e) in H1H_{1}. Since the weight of edges of HH^{\prime} is at most 1, |Vr|=Ω(d)|V_{r}|=\Omega(\sqrt{d}).

We then iteratively consider the shortest paths between pairs of vertices of SS and for the pairs that do not satisfy the distance condition, we add edges (that are missing on the shortest path) to the current graph HiH_{i}. However, since we allow for a larger distance bound for +(4+ϵ)W(,)+(4+\epsilon)W(\cdot,\cdot)-spanners, our goal is to show that a larger number of pairs of vertices of GsG^{\prime}_{s} gets set off at each iteration. The following lemma would help achieve this goal.

Lemma 10

Let HiH_{i} be a subgraph of GsG^{\prime}_{s} and let PP be the shortest path between uu and vv in GsG^{\prime}_{s}. Let Hi+1H_{i+1} be the graph obtained from HiH_{i} by adding the vertices and edges of PP that were missing in HiH_{i}. Let pp be a vertex in PP and qq be a vertex such that the distance dHi(p,q)ϵ1WGs(u,v)d_{H_{i}}(p,q)\leq\epsilon_{1}W_{G^{\prime}_{s}}(u,v) where ϵ1>0\epsilon_{1}>0. Let rr and ss be two vertices such that dHi(u,r)WGs(u,v)d_{H_{i}}(u,r)\leq W_{G^{\prime}_{s}}(u,v) and dHi(v,s)WGs(u,v)d_{H_{i}}(v,s)\leq W_{G^{\prime}_{s}}(u,v), respectively (see e.g., Figure 3(b)). If dHi(u,v)>dGs(u,v)+(4+ϵ)WGs(u,v)d_{H_{i}}(u,v)>d_{G^{\prime}_{s}}(u,v)+(4+\epsilon)W_{G^{\prime}_{s}}(u,v), where ϵ=2ϵ1+ϵ2\epsilon=2\epsilon_{1}+\epsilon_{2} and ϵ2>0\epsilon_{2}>0, then the following hold.

  1. 1.

    dHi+1(r,q)dGs(r,q)+(2+2ϵ1)WGs(u,v)d_{H_{i+1}}(r,q)\leq d_{G^{\prime}_{s}}(r,q)+(2+2\epsilon_{1})W_{G^{\prime}_{s}}(u,v) and dHi+1(s,q)dGs(s,q)+(2+2ϵ1)WGs(u,v)d_{H_{i+1}}(s,q)\leq d_{G^{\prime}_{s}}(s,q)+(2+2\epsilon_{1})W_{G^{\prime}_{s}}(u,v).

  2. 2.

    Either dHi(r,q)dHi+1(r,q)>ϵ22WGs(u,v)d_{H_{i}}(r,q)-d_{H_{i+1}}(r,q)>\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v) or dHi(s,q)dHi+1(s,q)>ϵ22d_{H_{i}}(s,q)-d_{H_{i+1}}(s,q)>\frac{\epsilon_{2}}{2} WGs(u,v)W_{G^{\prime}_{s}}(u,v).

Proof

Using triangle inequality, we can show the following:

dHi+1(r,q)\displaystyle d_{H_{i+1}}(r,q) dHi+1(r,u)+dHi+1(u,p)+dHi+1(p,q)\displaystyle\leq d_{H_{i+1}}(r,u)+d_{H_{i+1}}(u,p)+d_{H_{i+1}}(p,q)
WGs(u,v)+dHi+1(u,p)+ϵ1WGs(u,v)\displaystyle\leq W_{G^{\prime}_{s}}(u,v)+d_{H_{i+1}}(u,p)+\epsilon_{1}W_{G^{\prime}_{s}}(u,v)
=dGs(u,p)+(1+ϵ1)WGs(u,v)\displaystyle=d_{G^{\prime}_{s}}(u,p)+(1+\epsilon_{1})W_{G^{\prime}_{s}}(u,v)
dGs(u,r)+dGs(r,q)+dGs(q,p)+(1+ϵ1)WGs(u,v)\displaystyle\leq d_{G^{\prime}_{s}}(u,r)+d_{G^{\prime}_{s}}(r,q)+d_{G^{\prime}_{s}}(q,p)+(1+\epsilon_{1})W_{G^{\prime}_{s}}(u,v)
WGs(u,v)+dGs(r,q)+dHi+1(q,p)+(1+ϵ1)WGs(u,v)\displaystyle\leq W_{G^{\prime}_{s}}(u,v)+d_{G^{\prime}_{s}}(r,q)+d_{H_{i+1}}(q,p)+(1+\epsilon_{1})W_{G^{\prime}_{s}}(u,v)
WGs(u,v)+dGs(r,q)+ϵ1WGs(u,v)+(1+ϵ1)WGs(u,v)\displaystyle\leq W_{G^{\prime}_{s}}(u,v)+d_{G^{\prime}_{s}}(r,q)+\epsilon_{1}W_{G^{\prime}_{s}}(u,v)+(1+\epsilon_{1})W_{G^{\prime}_{s}}(u,v)
=dGs(r,q)+(2+2ϵ1)WGs(u,v)\displaystyle=d_{G^{\prime}_{s}}(r,q)+(2+2\epsilon_{1})W_{G^{\prime}_{s}}(u,v)

Similarly, we can show that dHi+1(s,q)dGs(s,q)+(2+2ϵ1)WGs(u,v)d_{H_{i+1}}(s,q)\leq d_{G^{\prime}_{s}}(s,q)+(2+2\epsilon_{1})W_{G^{\prime}_{s}}(u,v). If dHi(r,q)dHi+1(r,q)ϵ22WGs(u,v)d_{H_{i}}(r,q)-d_{H_{i+1}}(r,q)\leq\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v) and dHi(s,q)dHi+1(s,q)ϵ22WGs(u,v)d_{H_{i}}(s,q)-d_{H_{i+1}}(s,q)\leq\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v), then

dHi(u,v)\displaystyle d_{H_{i}}(u,v) dHi(u,r)+dHi(r,q)+dHi(q,s)+dHi(s,v)\displaystyle\leq d_{H_{i}}(u,r)+d_{H_{i}}(r,q)+d_{H_{i}}(q,s)+d_{H_{i}}(s,v)
WGs(u,v)+dHi+1(r,q)+ϵ22WGs(u,v)+dHi+1(q,s)+ϵ22WGs(u,v)+WGs(u,v)\displaystyle\leq W_{G^{\prime}_{s}}(u,v)+d_{H_{i+1}}(r,q)+\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v)+d_{H_{i+1}}(q,s)+\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v)+W_{G^{\prime}_{s}}(u,v)
=dHi+1(r,q)+dHi+1(q,s)+(2+ϵ2)WGs(u,v)\displaystyle=d_{H_{i+1}}(r,q)+d_{H_{i+1}}(q,s)+(2+\epsilon_{2})W_{G^{\prime}_{s}}(u,v)
dHi+1(r,u)+dHi+1(u,p)+dHi+1(p,q)+dHi+1(q,p)+dHi+1(p,v)\displaystyle\leq d_{H_{i+1}}(r,u)+d_{H_{i+1}}(u,p)+d_{H_{i+1}}(p,q)+d_{H_{i+1}}(q,p)+d_{H_{i+1}}(p,v)
+dHi+1(v,s)+(2+ϵ2)WGs(u,v)\displaystyle+d_{H_{i+1}}(v,s)+(2+\epsilon_{2})W_{G^{\prime}_{s}}(u,v)
=dHi+1(r,u)+dHi+1(u,p)+dHi+1(p,v)+dHi+1(v,s)+dHi+1(p,q)\displaystyle=d_{H_{i+1}}(r,u)+d_{H_{i+1}}(u,p)+d_{H_{i+1}}(p,v)+d_{H_{i+1}}(v,s)+d_{H_{i+1}}(p,q)
+dHi+1(q,p)+(2+ϵ2)WGs(u,v)\displaystyle+d_{H_{i+1}}(q,p)+(2+\epsilon_{2})W_{G^{\prime}_{s}}(u,v)
=dHi+1(r,u)+dHi+1(u,p)+dHi+1(p,v)+dHi+1(v,s)+2dHi+1(p,q)+(2+ϵ2)WGs(u,v)\displaystyle=d_{H_{i+1}}(r,u)+d_{H_{i+1}}(u,p)+d_{H_{i+1}}(p,v)+d_{H_{i+1}}(v,s)+2d_{H_{i+1}}(p,q)+(2+\epsilon_{2})W_{G^{\prime}_{s}}(u,v)
WGs(u,v)+dHi+1(u,p)+dHi+1(p,v)+WGs(u,v)+2ϵ1WGs(u,v)+(2+ϵ2)WGs(u,v)\displaystyle\leq W_{G^{\prime}_{s}}(u,v)+d_{H_{i+1}}(u,p)+d_{H_{i+1}}(p,v)+W_{G^{\prime}_{s}}(u,v)+2\epsilon_{1}W_{G^{\prime}_{s}}(u,v)+(2+\epsilon_{2})W_{G^{\prime}_{s}}(u,v)
=dHi+1(u,p)+dHi+1(p,v)+(4+2ϵ1+ϵ2)WGs(u,v)\displaystyle=d_{H_{i+1}}(u,p)+d_{H_{i+1}}(p,v)+(4+2\epsilon_{1}+\epsilon_{2})W_{G^{\prime}_{s}}(u,v)
=dGs(u,p)+dGs(p,v)+(4+2ϵ1+ϵ2)WGs(u,v)\displaystyle=d_{G^{\prime}_{s}}(u,p)+d_{G^{\prime}_{s}}(p,v)+(4+2\epsilon_{1}+\epsilon_{2})W_{G^{\prime}_{s}}(u,v)
=dGs(u,v)+(4+ϵ)WGs(u,v)\displaystyle=d_{G^{\prime}_{s}}(u,v)+(4+\epsilon)W_{G^{\prime}_{s}}(u,v)

However, we assumed dHi(u,v)>dGs(u,v)+(4+ϵ)WGs(u,v)d_{H_{i}}(u,v)>d_{G^{\prime}_{s}}(u,v)+(4+\epsilon)W_{G^{\prime}_{s}}(u,v). Hence either dHi(r,q)dHi+1(r,q)>ϵ22WGs(u,v)d_{H_{i}}(r,q)-d_{H_{i+1}}(r,q)>\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v) or dHi(s,q)dHi+1(s,q)>ϵ22WGs(u,v)d_{H_{i}}(s,q)-d_{H_{i+1}}(s,q)>\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v).

After computing H1H_{1} and GsG^{\prime}_{s}, our algorithm sorts the pairs of vertices in SS based on their increasing order of maximum edge weight in the shortest path on GsG^{\prime}_{s}; If multiple pairs have the same maximum edge weight, then the algorithm selects the pair with the smaller shortest path length. Then it checks whether the spanner condition is unsatisfied for pairs of vertices according to the sorted order. Let HiH_{i} be the current subgraph of GsG^{\prime}_{s}. If the condition is unsatisfied, then the algorithm computes Hi+1H_{i+1} by adding the missing edges at HiH_{i} of the shortest path of the unsatisfied pair at GsG^{\prime}_{s}. Once all the unsatisfied pairs are considered, we have a valid spanner. By Lemma 10, at each iteration, the shortest path distances from close neighbors of uu and vv to a set of other vertices become comparable with the shortest path distance of GsG^{\prime}_{s}, where u,vSu,v\in S are the vertices being considered in that iteration. In other words, for each vertex pairs (r,q)(r,q) and (s,q)(s,q) satisfying the conditions of the lemma, dHi+1(r,q)dGs(r,q)+(2+2ϵ1)WGs(u,v)d_{H_{i+1}}(r,q)\leq d_{G^{\prime}_{s}}(r,q)+(2+2\epsilon_{1})W_{G^{\prime}_{s}}(u,v) and dHi+1(s,q)dGs(s,q)+(2+2ϵ1)WGs(u,v)d_{H_{i+1}}(s,q)\leq d_{G^{\prime}_{s}}(s,q)+(2+2\epsilon_{1})W_{G^{\prime}_{s}}(u,v). We say that the pairs (r,q)(r,q) and (s,q)(s,q) get set-off when the shortest paths of the pairs become comparable with respect to the shortest path in GsG^{\prime}_{s} for the first time. Also, according to the lemma, the shortest paths get smaller either for (r,q)(r,q) or for (s,q)(s,q): dHi(r,q)dHi+1(r,q)>ϵ22WGs(u,v)d_{H_{i}}(r,q)-d_{H_{i+1}}(r,q)>\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v) or dHi(s,q)dHi+1(s,q)>ϵ22WGs(u,v)d_{H_{i}}(s,q)-d_{H_{i+1}}(s,q)>\frac{\epsilon_{2}}{2}W_{G^{\prime}_{s}}(u,v). We say either the pair (r,q)(r,q) or (s,q)(s,q) gets an improvement. Similar to Lemma 8, we can show the total number of improvements of a pair after set-off is O(ϵ1/ϵ2)O(\epsilon_{1}/\epsilon_{2}).

Theorem 2.2

The subset-lightness of the spanner is Oϵ(|VH|1/3|S|1/3)O_{\epsilon}(|V_{H}|^{1/3}|S|^{1/3}).

Proof

By the construction of H1H_{1}, weight(H1)=O(|VH|+|S|d)weight(H_{1})=O(|V_{H}|+|S|d). In the next iterations, the algorithm adds missing edges of the shortest paths if the distance condition is unsatisfied. According to Lemma 6, for each missing edge added, there is a neighborhood of size equal to the weight of the missing edge. According to Lemma 10, each vertex pair formed from these neighborhoods and the neighborhoods of the endpoints of the shortest path get set-off or improvements. Let the missing edges of the shortest path between u,vSu,v\in S be added when we construct Hi+1H_{i+1} from HiH_{i}. Let (u,u)(u,u^{\prime}) and (v,v)(v^{\prime},v) be the shortest path edges. Notice that, neither (u,u)(u,u^{\prime}) nor (v,v)(v,v^{\prime}) are present in HiH_{i}, otherwise the algorithm would not select the pair u,vu,v (and we would select the pair u,vu^{\prime},v^{\prime} since their shortest path is shorter). According to Lemma 9, there are Ω(d)\Omega(\sqrt{d}) vertices that form a pair with the neighborhood of size equal to weight of missing edges ziz_{i} in the shortest path such that each of these pairs are either get set-off or improvements. Hence there are at least dZ\sqrt{d}Z improvements where Z=iziZ=\sum_{i}z_{i} is the total weights added in the iterations of the algorithms after constructing H1H_{1}. On the other hand, the size of the set of vertex pairs that can get set-off or improvements is O(|VH|2)O(|V_{H}|^{2}). Each of these pairs gets at most one set-off and O(ϵ1/ϵ2)O(\epsilon_{1}/\epsilon_{2}) improvements after set-off. If we set up ϵ=ϵ1/ϵ2\epsilon=\epsilon_{1}/\epsilon_{2}, then Z=Oϵ(|VH|2/d)Z=O_{\epsilon}(|V_{H}|^{2}/\sqrt{d}). Hence the total weight of the spanner is Oϵ(|VH|2/d+|S|d)O_{\epsilon}(|V_{H}|^{2}/\sqrt{d}+|S|d). If we set d=|VH|4/3/(|S|)2/3d=|V_{H}|^{4/3}/(|S|)^{2/3}, then the total weight of the spanner is Oϵ(|VH|4/3|S|1/3)O_{\epsilon}(|V_{H}|^{4/3}|S|^{1/3}). Hence, the subset-lightness of this spanner is Oϵ(|VH|1/3|S|1/3)O_{\epsilon}(|V_{H}|^{1/3}|S|^{1/3}).

2.4 A Sampling-based +(4+ϵ)Wmax+(4+\epsilon)W_{\max}-spanner

The initial steps of this algorithm are similar to the previous algorithm. We first compute the Steiner tree HH, scaled graph GsG_{s}, subdivided tree HH^{\prime}, initial graph H0H_{0}, add HH^{\prime} to H0H_{0} to achieve H1H_{1}, subdivide Steiner tree edges in the input graph to achieve GsG^{\prime}_{s}. We now consider each pair of vertices u,vSu,v\in S. Let PP be the shortest path between u,vu,v in GsG^{\prime}_{s}. Let xx be the total weight of missing edges in H1H_{1} considering the edges of PP. If x<x<\ell, we then add all the missing edges where \ell is a parameter we will set later. The total weight added in this step is no more than |S|2|S|^{2}\ell.

To handle vertex pairs with xx\geq\ell, we consider the subpath in H1H_{1} at the beginning of PP that has missing edges of weight \ell. We refer to that subpath as the prefix and similarly, we define the suffix. We then uniformly sample clnn|VH|/c\ln n|V_{H}|/\ell vertices from VHV_{H} where cc is a small constant. We also add the missing edges of prefixes and suffixes. If the prefix and suffix overlap, we then add all the missing edges of the shortest path; otherwise, both prefix and suffix have a neighborhood of size \ell. Now the probability that the sampled vertices will not hit the neighborhood of suffix and prefix is equal to (1/|VH|)clnn|VH|/1/nc(1-\ell/|V_{H}|)^{c\ln n|V_{H}|/\ell}\leq 1/n^{c}. Hence with a high probability, the sampled vertices will hit the neighborhood of the suffix and prefix.

We then compute a +ϵW(,)+\epsilon W(\cdot,\cdot)-spanner on the sampled vertices and add the spanner edges in H1H_{1}. We can show that we will achieve a valid +(4+ϵ)Wmax+(4+\epsilon)W_{\max}-spanner with high probability. Consider a vertex pair u,vSu,v\in S for which we haven’t added all the missing edges. Let p,qp,q be two vertices in the prefix and suffix of PP respectively, such that sampled vertices hit their neighborhood. Let rr and ss be the corresponding neighbor vertices of pp and qq respectively. Then

dH1(u,v)\displaystyle d_{H_{1}}(u,v) dH1(u,p)+dHi(p,r)+dHi(r,s)+dHi(s,q)+dH1(q,v)\displaystyle\leq d_{H_{1}}(u,p)+d_{H_{i}}(p,r)+d_{H_{i}}(r,s)+d_{H_{i}}(s,q)+d_{H_{1}}(q,v)
dG(u,p)+Wmax+dG(r,s)+ϵWmax+Wmax+dG(q,v)\displaystyle\leq d_{G}(u,p)+W_{\max}+d_{G}(r,s)+\epsilon W_{\max}+W_{\max}+d_{G}(q,v)
=dG(u,p)+dG(r,s)+dG(q,v)+(2+ϵ)Wmax\displaystyle=d_{G}(u,p)+d_{G}(r,s)+d_{G}(q,v)+(2+\epsilon)W_{\max}
dG(u,p)+dG(r,p)+dG(p,q)+dG(q,s)+dG(q,v)+(2+ϵ)Wmax\displaystyle\leq d_{G}(u,p)+d_{G}(r,p)+d_{G}(p,q)+d_{G}(q,s)+d_{G}(q,v)+(2+\epsilon)W_{\max}
dG(u,p)+Wmax+dG(p,q)+Wmax+dG(q,v)+(2+ϵ)Wmax\displaystyle\leq d_{G}(u,p)+W_{\max}+d_{G}(p,q)+W_{\max}+d_{G}(q,v)+(2+\epsilon)W_{\max}
=dG(u,p)+dG(p,q)+dG(q,v)+(4+ϵ)Wmax\displaystyle=d_{G}(u,p)+d_{G}(p,q)+d_{G}(q,v)+(4+\epsilon)W_{\max}
=dG(u,v)+(4+ϵ)Wmax\displaystyle=d_{G}(u,v)+(4+\epsilon)W_{\max}

The weight of +ϵW(,)+\epsilon W(\cdot,\cdot)-spanner on clnn|VH|/c\ln n|V_{H}|/\ell sampled vertices can be computed using Theorem 2.1. Let VHV^{\prime}_{H} be the Steiner tree spanning the shortest path vertices of the sampled vertices. Then the weight of the +ϵW(,)+\epsilon W(\cdot,\cdot)-spanner is clnn|VH||VH|/c\ln n|V_{H}||V^{\prime}_{H}|/\ell. Hence the total edge weight of H1H_{1} is O(|S|2+clnn|VH||VH|/)O(|S|^{2}\ell+c\ln n|V_{H}||V^{\prime}_{H}|/\ell). If we set =clnn|VH||VH|/|S|\ell=\sqrt{c\ln n|V_{H}||V^{\prime}_{H}|}/|S|, then weight(H1)weight(H_{1}) is O(|S|clnn|VH||VH|)O(|S|\sqrt{c\ln n|V_{H}||V^{\prime}_{H}|}). Hence the subset-lightness of the spanner is O~ϵ(|S||VH|/|VH|)\tilde{O}_{\epsilon}(|S|\sqrt{|V^{\prime}_{H}|/|V_{H}|}). Notice that we can not assume that |VH||V^{\prime}_{H}| is arbitrarily small since it depends on \ell. We can run a binary search on (0,|VH|](0,|V_{H}|] and select an \ell that is approximately clnn|VH||VH|/|S|\sqrt{c\ln n|V_{H}||V^{\prime}_{H}|}/|S|. If we don’t find such an \ell we can compute a +ϵW(,)+\epsilon W(\cdot,\cdot)-spanner on SS.

Theorem 2.3

The subset-lightness of the spanner is O~ϵ(|S||VH|/|VH|)\tilde{O}_{\epsilon}(|S|\sqrt{|V^{\prime}_{H}|/|V_{H}|}).

3 Multi-Level Spanners

In this section, we study a generalization of the subsetwise spanner problem. We now have a hierarchy of \ell vertex subsets SS1S1S_{\ell}\subseteq S_{\ell-1}\subseteq\cdots\subseteq S_{1} where S1VS_{1}\subseteq V. For each level ii, we compute a (multiplicative or additive) subsetwise spanner Gi=(Vi,Ei)G_{i}=(V_{i},E_{i}) where the edge sets of these spanners are also nested, e.g., EE1E1E_{\ell}\subseteq E_{\ell-1}\subseteq\cdots\subseteq E_{1}. This problem is called the multi-level spanner problem. We provide an ee-approximation algorithm for the multi-level spanner problem which is better than the existing 44-approximation [4].

The existing 44-approximation is achieved by first generating a rounding-up instance where each subset is rounded up to a level that is the nearest power of 2, e.g., 20,21,2^{0},2^{1},\cdots. Then a spanner is computed independently for each rounded-up level and merged together to achieve a spanner for the edge level. The merging step provides a feasible solution that is a 22-approximation of the rounded-up instance. On the other hand, the rounding-up step can increase the cost by at most two times the input instance. Overall, the algorithm is thus a 44-approximation.

We generalize this algorithm by introducing two parameters, pp and qq. Instead of starting from level 202^{0}, we start from level pqp^{q}; and instead of considering the levels 20,21,2^{0},2^{1},\cdots, we consider the levels pq,pq+1,p^{q},p^{q+1},\cdots for rounding up. Our algorithm is randomized, and we show the expected cost of the output with respect to qq. We then select the best value of pp to achieve the desired approximation ratio of the algorithm.

Our approach has two main steps: the first step rounds up the level of all terminals to a level equal to pq+ip^{q+i} where p>1p>1, q(0,1]q\in(0,1], and ii is a nonnegative integer; the second step computes a solution independently for each rounded-up level and merges all solutions from the highest level to the lowest level. We show that the first step can make the solution at most p1lnp\frac{p-1}{\ln p} times worse than the optimal solution, and the second step can make the solution at most 111/p\frac{1}{1-1/p} times worse than the optimal solution. By optimizing pp, we achieve an ee-approximation algorithm. We provide the pseudocode of the algorithm below, here \ell is the largest integer such that pq+kp^{q+\ell}\leq k.

Algorithm 1 Algorithm kk-level Approximation(G=(V,E)G=(V,E))
// Round up the levels
for each terminal vVv\in V do
     Round up the level of vv to the nearest power of the form pq+i{p^{q+i}}
end for
// Independently compute the solutions
Let Spq,Spq+1,Spq+2,,Spq+S_{p^{q}},S_{p^{q+1}},S_{p^{q+2}},\cdots,S_{p^{q+\ell}} be the rounded-up terminal subsets
for each subset Spq+iS_{p^{q+i}} do
     Compute a 11-level solution on Spq+iS_{p^{q+i}}
end for
// Merge the independent solutions
for j{pq+,pq+1,,pq}j\in\{p^{q+\ell},p^{q+\ell-1},\cdots,p^{q}\} do
     Merge the solution of SjS_{j} to the solutions of lower levels
end for

The cost of the multi-level solution may increase due to rounding up and the merging steps. The following results provide the costs of these steps.

Lemma 11

The expected rounding cost is p1lnpweight(OPT)\frac{p-1}{\ln p}\text{weight}(\textnormal{OPT}).

Proof

Assume that the highest level of a particular edge is equal to ps+ip^{s+i} before rounding. Since s(0,1]s\in(0,1], after rounding we will face one of two cases; case 1: sqs\leq q, the highest level of the edge becomes pq+ip^{q+i} and case 2: s>qs>q, the highest level of the edge becomes pq+i+1p^{q+i+1}. Since the lowest level is pqp^{q} and q(0,1]q\in(0,1], the expected ratio to rounding cost and optimal cost is: s1pqs𝑑q+0spqs+1𝑑q=p1lnp\int_{s}^{1}p^{q-s}dq+\int_{0}^{s}p^{q-s+1}dq=\frac{p-1}{\ln p}.

We now establish an upper bound for the merging step. We show that this upper bound depends only on pp, regardless of the value of qq.

Lemma 12

If we compute independent solutions of a rounded-up instance and merge them, then the cost of the solution is no more than 111/pweight(OPT)\frac{1}{1-1/p}\ \text{weight}(\textnormal{OPT}).

Proof

Assume that k=pq+ik=p^{q+i}. Let the rounded-up terminal subsets be Spq+i,Spq+i1,S_{p^{q+i}},S_{p^{q+i-1}}, ,Spq\cdots,S_{p^{q}}. Suppose we have computed the independent solution and merged them in lower levels. Note that in the worst case the cost of approximation algorithm is pq+iweight(ALGpq+i)+pq+i1weight(ALGpq+i1)++pqweight(ALGpq)=s=0ipq+sweight(ALGpq+s)p^{q+i}weight(\textnormal{ALG}_{p^{q+i}})+p^{q+i-1}weight(\textnormal{ALG}_{p^{q+i-1}})+\cdots+p^{q}weight(\textnormal{ALG}_{p^{q}})=\sum_{s=0}^{i}p^{q+s}weight(\textnormal{ALG}_{p^{q+s}}), and cost of the optimal algorithm is weight(OPTpq+i)+weight(OPTpq+i1)++weight(OPT1)=s=1pq+iweight(OPTs)weight(\textnormal{OPT}_{p^{q+i}})+weight(\textnormal{OPT}_{p^{q+i}-1})+\cdots+weight(\textnormal{OPT}_{1})=\sum_{s=1}^{p^{q+i}}weight(\textnormal{OPT}_{s}). We show that s=0ipq+sweight(ALGpq+s)111/ps=1pq+iweight(OPTs)\sum_{s=0}^{i}p^{q+s}weight(\textnormal{ALG}_{p^{q+s}})\leq\frac{1}{1-1/p}\sum_{s=1}^{p^{q+i}}weight(\textnormal{OPT}_{s}). We provide a proof by induction on ii.

If i=0i=0, then we have just one terminal subset SpqS_{p^{q}}. The approximation algorithm computes a spanner for SpqS_{p^{q}} and there is nothing to merge. Since the approximation algorithm uses an optimal algorithm to compute independent solutions, weight(ALGpq\textnormal{ALG}_{p^{q}}) \leq weight(OPTpq\textnormal{OPT}_{p^{q}}) 111/p\leq\frac{1}{1-1/p} weight(OPTpq\textnormal{OPT}_{p^{q}}) since p>1p>1.

We now assume that the claim is true for i=j1i=j-1 which is the induction hypothesis. Hence s=0j1pq+sweight(ALGpq+s)111/ps=1pq+j1weight(OPTs)\sum_{s=0}^{j-1}p^{q+s}weight(\textnormal{ALG}_{p^{q+s}})\leq\frac{1}{1-1/p}\ \sum_{s=1}^{p^{q+j-1}}weight(\textnormal{OPT}_{s}). We now show that the claim is also true for i=ji=j. In other words, we show that s=0jpq+sweight(ALGpq+s)111/ps=1pq+jweight(OPTs)\sum_{s=0}^{j}p^{q+s}weight(\textnormal{ALG}_{p^{q+s}})\leq\frac{1}{1-1/p}\ \sum_{s=1}^{p^{q+j}}weight(\textnormal{OPT}_{s}), using the facts that an independent optimal solution has a cost lower than or equal to any other solution, and that the input is a rounded up instance.

Let k=pq+ik=p^{q+i}. Let the rounded-up terminal subsets be Spq+i,Spq+i1,,SpqS_{p^{q+i}},S_{p^{q+i-1}},\cdots,S_{p^{q}}. Suppose we have computed the independent solution and merged them in lower levels. We actually prove a stronger claim, and use that to prove the lemma. Note that in the worst case the cost of approximation algorithm is pq+iweight(ALGpq+i)+pq+i1weight(ALGpq+i1)++pqweight(ALGpq)=s=0ipq+sweight(ALGpq+s)p^{q+i}weight(\textnormal{ALG}_{p^{q+i}})+p^{q+i-1}weight(\textnormal{ALG}_{p^{q+i-1}})+\cdots+p^{q}weight(\textnormal{ALG}_{p^{q}})=\sum_{s=0}^{i}p^{q+s}weight(\textnormal{ALG}_{p^{q+s}}). And the cost of the optimal algorithm is weight(OPTpq+i)+weight(OPTpq+i1)++weight(OPT1)=s=1pq+iweight(OPTs)weight(\textnormal{OPT}_{p^{q+i}})+weight(\textnormal{OPT}_{p^{q+i}-1})+\cdots+weight(\textnormal{OPT}_{1})=\sum_{s=1}^{p^{q+i}}weight(\textnormal{OPT}_{s}). We show that s=0ipq+sweight(ALGpq+s)111/ps=1pq+iweight(OPTs)\sum_{s=0}^{i}p^{q+s}weight(\textnormal{ALG}_{p^{q+s}})\leq\frac{1}{1-1/p}\sum_{s=1}^{p^{q+i}}weight(\textnormal{OPT}_{s}). We provide a proof by induction on ii.

Base step: If i=0i=0, then we have just one terminal subset SpqS_{p^{q}}. The approximation algorithm computes a spanner for SpqS_{p^{q}} and there is nothing to merge. Since the approximation algorithm uses an optimal algorithm to compute independent solutions, weight(ALGpq\textnormal{ALG}_{p^{q}}) \leq weight(OPTpq\textnormal{OPT}_{p^{q}}) 111/p\leq\frac{1}{1-1/p} weight(OPTpq\textnormal{OPT}_{p^{q}}) since p>1p>1.

Inductive step: We assume that the claim is true for i=j1i=j-1 which is the induction hypothesis. Hence s=0j1pq+sweight(ALGpq+s)111/ps=1pq+j1weight(OPTs)\sum_{s=0}^{j-1}p^{q+s}weight(\textnormal{ALG}_{p^{q+s}})\leq\frac{1}{1-1/p}\ \sum_{s=1}^{p^{q+j-1}}weight(\textnormal{OPT}_{s}). We now show that the claim is also true for i=ji=j. In other words, we have to show that s=0jpq+sweight(ALGpq+s)111/ps=1pq+sweight(OPTs)\sum_{s=0}^{j}p^{q+s}weight(\textnormal{ALG}_{p^{q+s}})\leq\frac{1}{1-1/p}\ \sum_{s=1}^{p^{q+s}}weight(\textnormal{OPT}_{s}). We know,

s=0jpq+s\displaystyle\sum_{s=0}^{j}p^{q+s} weight(ALGpq+s)\displaystyle weight(\textnormal{ALG}_{p^{q+s}})
=pq+jweight(ALGpq+j)+s=0j1pq+sweight(ALGpq+s)\displaystyle=p^{q+j}weight(\textnormal{ALG}_{p^{q+j}})+\sum_{s=0}^{j-1}p^{q+s}weight(\textnormal{ALG}_{p^{q+s}})
pq+jweight(OPTpq+j)+s=0j1pq+sweight(ALGpq+s)\displaystyle\leq p^{q+j}weight(\textnormal{OPT}_{p^{q+j}})+\sum_{s=0}^{j-1}p^{q+s}weight(\textnormal{ALG}_{p^{q+s}})
=pq+jpq+jpq+j1×(pq+jpq+j1)weight(OPTpq+j)+s=0j1pq+sweight(ALGpq+s)\displaystyle=\frac{p^{q+j}}{p^{q+j}-p^{q+j-1}}\times(p^{q+j}-p^{q+j-1})weight(\textnormal{OPT}_{p^{q+j}})+\sum_{s=0}^{j-1}p^{q+s}weight(\textnormal{ALG}_{p^{q+s}})
=pq+jpq+jpq+j1s=pq+j1pq+jweight(OPTs)+s=0j1pq+sweight(ALGpq+s)\displaystyle=\frac{p^{q+j}}{p^{q+j}-p^{q+j-1}}\sum_{s=p^{q+j-1}}^{p^{q+j}}weight(\textnormal{OPT}_{s})+\sum_{s=0}^{j-1}p^{q+s}weight(\textnormal{ALG}_{p^{q+s}})
111/ps=pq+j1pq+jweight(OPTs)+111/ps=1pq+j1weight(OPTs)\displaystyle\leq\frac{1}{1-1/p}\sum_{s=p^{q+j-1}}^{p^{q+j}}weight(\textnormal{OPT}_{s})+\frac{1}{1-1/p}\sum_{s=1}^{p^{q+j-1}}weight(\textnormal{OPT}_{s})
=111/ps=1pq+jweight(OPTs)\displaystyle=\frac{1}{1-1/p}\ \sum_{s=1}^{p^{q+j}}weight(\textnormal{OPT}_{s})

Here, the second equality is just a simplification. The third inequality uses the fact that an independent optimal solution has a cost lower than or equal to any other solution. The fourth equality is a simplification, the fifth inequality uses the fact that the input is a rounded up instance. The sixth inequality uses the induction hypothesis.

Lemma 11 and Lemma 12 show that Algorithm kk-level approximation provides a multi-level spanner with cost no more than p1lnp111/pweight(OPT)=plnpweight(OPT)\frac{p-1}{\ln p}\frac{1}{1-1/p}weight(OPT)=\frac{p}{\ln p}weight(OPT). The minimum value of plnp\frac{p}{\ln p} is ee when we put p=ep=e.

Theorem 3.1

Algorithm kk-level approximation computes a kk-level spanner with expected weight at most eweight(OPT)e\cdot weight(OPT).

4 Conclusion

We designed subsetwise +ϵW(,)+\epsilon W(\cdot,\cdot) and +(4+ϵ)W(,)+(4+\epsilon)W(\cdot,\cdot) spanners with Oϵ(|S|)O_{\epsilon}(|S|) and Oϵ(|VH|1/3|S|1/3)O_{\epsilon}(|V_{H}|^{1/3}|S|^{1/3}) subset-lightness guarantees, respectively. Both spanners can be constructed deterministically. Using a sampling technique we provided the construction for a subsetwise +(4+ϵ)Wmax+(4+\epsilon)W_{\max} spanner. We also gave an ee-approximation algorithms for computing multi-level spanners. It would be interesting if the subset-lightness bound of our subsetwise spanners can be reduced to sublinear bounds, even for some specific graph classes.

References

  • [1] Amir Abboud and Greg Bodwin. The 4/3 additive spanner exponent is tight, 2015.
  • [2] Reyan Ahmed, Greg Bodwin, Keaton Hamm, Stephen Kobourov, and Richard Spence. On additive spanners in weighted graphs with local error. In 47th International Workshop on Graph-Theoretic Concepts in Computer Science (WG), pages 361–373. Springer, 2021.
  • [3] 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.
  • [4] Reyan Ahmed, Keaton Hamm, Stephen Kobourov, Mohammad Javad Latifi Jebelli, Faryad Darabi Sahneh, and Richard Spence. Multi-priority graph sparsification. In International Workshop on Combinatorial Algorithms, pages 1–12. Springer, 2023.
  • [5] Donald Aingworth, Chandra Chekuri, Piotr Indyk, and Rajeev Motwani. Fast estimation of diameter and shortest paths (without matrix multiplication). SIAM Journal on Computing, 28:1167–1181, 1999.
  • [6] Ingo Althöfer, Gautam Das, David Dobkin, and Deborah Joseph. Generating sparse spanners for weighted graphs. In Scandinavian Workshop on Algorithm Theory (SWAT), pages 26–37, Berlin, Heidelberg, 1990. Springer Berlin Heidelberg.
  • [7] Baruch Awerbuch. Complexity of network synchronization. Journal of the ACM (JACM), 32(4):804–823, 1985.
  • [8] Yair Bartal, Arnold Filtser, and Ofer Neiman. On notions of distortion and an almost minimum spanning tree with constant average distortion. Journal of Computer and System Sciences, 105:116–129, 2019.
  • [9] Surender Baswana, Telikepalli Kavitha, Kurt Mehlhorn, and Seth Pettie. Additive spanners and (α\alpha, β\beta)-spanners. ACM Transactions on Algorithms (TALG), 7(1):5, 2010.
  • [10] Jaroslaw Byrka, Fabrizio Grandoni, Thomas Rothvoß, and Laura Sanità. Steiner tree approximation via iterative randomized rounding. J. ACM, 60(1):6:1–6:33, 2013.
  • [11] Barun Chandra, Gautam Das, Giri Narasimhan, and José Soares. New sparseness results on graph spanners. In Proceedings of the eighth annual symposium on Computational geometry, pages 192–201. ACM, 1992.
  • [12] M. Charikar, J. Naor, and B. Schieber. Resource optimization in QoS multicast routing of real-time multimedia. IEEE/ACM Transactions on Networking, 12(2):340–348, April 2004.
  • [13] Shiri Chechik. New additive spanners. In Proceedings of the Twenty-Fourth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), pages 498–512. Society for Industrial and Applied Mathematics, 2013.
  • [14] Shiri Chechik and Christian Wulff-Nilsen. Near-optimal light spanners. ACM Transactions on Algorithms (TALG), 14(3):1–15, 2018.
  • [15] Michael Elkin, Arnold Filtser, and Ofer Neiman. Terminal embeddings. Theoretical Computer Science, 697:1–36, 2017.
  • [16] Michael Elkin, Yuval Gitlitz, and Ofer Neiman. Almost shortest paths and PRAM distance oracles in weighted graphs. arXiv preprint arXiv:1907.11422, 2019.
  • [17] Michael Elkin, Yuval Gitlitz, and Ofer Neiman. Improved weighted additive spanners. Distributed Computing, 36(3):385–394, 2023.
  • [18] Michael Elkin, Ofer Neiman, and Shay Solomon. Light spanners. In International Colloquium on Automata, Languages, and Programming, pages 442–452. Springer, 2014.
  • [19] Arnold Filtser and Shay Solomon. The greedy spanner is existentially optimal. SIAM Journal on Computing, 49(2):429–447, 2020.
  • [20] Kathryn Gray, Mingwei Li, Reyan Ahmed, Md Khaledur Rahman, Ariful Azad, Stephen Kobourov, and Katy Börner. A scalable method for readable tree layouts. IEEE Transactions on Visualization and Computer Graphics, 2023.
  • [21] Samir Khuller, Balaji Raghavachari, and Neal Young. Balancing minimum spanning trees and shortest-path trees. Algorithmica, 14(4):305–321, 1995.
  • [22] Mathias Bæk Tejs Knudsen. Additive spanners: A simple construction. In Scandinavian Workshop on Algorithm Theory (SWAT), pages 277–281. Springer, 2014.
  • [23] G. Kortsarz. On the hardness of approximating spanners. Algorithmica, 30(3):432–450, Jan 2001.
  • [24] Hung Le and Shay Solomon. A unified framework for light spanners. In Proceedings of the 55th Annual ACM Symposium on Theory of Computing, pages 295–308, 2023.
  • [25] Arthur L Liestman and Thomas C Shermer. Additive graph spanners. Networks, 23(4):343–363, 1993.
  • [26] David Peleg and Alejandro A Schäffer. Graph spanners. Journal of graph theory, 13(1):99–116, 1989.