A Unified and Fine-Grained Approach for Light Spanners
AA Unified and Fine-Grained Approach for Light Spanners
Hung Le and Shay Solomon University of Massachusetts Amherst Tel Aviv University
Abstract
Seminal works on light spanners from recent years provide near-optimal tradeoffs between thestretch and lightness of spanners in general graphs [11], minor-free graphs [7] and doubling metrics [26,8]. In FOCS’19 the authors provided a “truly optimal” tradeoff (i.e., including the (cid:15) -dependency,where (cid:15) appears in both the stretch and lightness) for Euclidean low-dimensional spaces. Some ofthese papers employ inherently different techniques than others (e.g., the technique of Chechik andWulff-Nilsen [11] requires large stretch while others are naturally suitable to stretch 1 + (cid:15) ). Moreover,the runtime of these constructions is rather high.In this work we present a unified and fine-grained approach for light spanners. Besides the obvioustheoretical importance of unification, we demonstrate the power of our approach in obtaining (1)stronger lightness bounds, and (2) faster construction times. Our results include: • K r -minor-free graphs: – A truly optimal spanner. We provide a (1 + (cid:15) )-spanner with lightness ˜ O r,(cid:15) ( r(cid:15) + (cid:15) ), where˜ O r,(cid:15) suppresses polylog factors of 1 /(cid:15) and r , improving the lightness bound ˜ O r,(cid:15) ( r(cid:15) ) of Bor-radaile, Le and Wulff-Nilsen [7]. We complement our upper bound with a highly nontriviallower bound construction, for which any (1 + (cid:15) )-spanner must have lightness Ω( r(cid:15) + (cid:15) ). – A fast construction. Increasing the lightness bound by an additive term of O ( (cid:15) ) allows usto achieve a runtime of ˜ O r ( nrα ( nr, n )), where α ( x, y ) is the inverse Ackermann function.The previous state-of-the-art runtime is O ( n r ). • General graphs: – A truly optimal spanner— almost . We provide a (2 k − (cid:15) )-spanner (for any k ≥ , (cid:15) <
1) with lightness O ( g ( n,k ) (cid:15) ), where g ( n, k ) is the minimum sparsity of n -vertex graphswith girth 2 k + 1. (Recall that g ( n, k ) = O ( n /k ) and Erdos’ girth conjecture is that g ( n, k ) = Θ( n /k ).) The previous state-of-the-art lightness by Chechik and Wulff-Nilsen [11]is O ( n /k (cid:15)
3+ 1 k ). – A fast construction. A (2 k − (cid:15) )-spanner with lightness O (cid:15) ( n /k ) can be constructedin O (cid:15) ( mα ( m, n )) time; the lightness bound is optimal up to the (cid:15) -dependency and assumingErdos’ girth conjecture. In particular, when m = Ω ( n log ∗ n ) , the runtime is linear inm. The previous state-of-the-art runtime of such a spanner is super-quadratic in n [11, 1]. • Low dimensional Euclidean spaces: For any point set in R d and constant d ≥
3, we constructa Euclidean (1 + (cid:15) )-spanner with lightness ˜ O (cid:15) ( (cid:15) − ( d +1) / ) using Steiner points . Our result im-plies that Steiner points help in reducing the lightness of Euclidean ( + (cid:15) ) -spannersalmost quadratically for d ≥ . Previously, this fact was only known for point sets with smallspread [33]. • High dimensional Euclidean and normed spaces: We provide a construction of spanners thatimproves the previous state-of-the-art lightness and size [30, 24]. The sparsity of an n -vertex graph is the ratio of its size to n − The spread of a point set is the ratio of the maximum pairwise distance to the minimum pairwise distance. a r X i v : . [ c s . D S ] A ug Introduction
For a weighted graph G = ( V, E, w ) and a stretch parameter t ≥
1, a subgraph H = ( V, E (cid:48) ) of G is called a t -spanner if d H ( u, v ) ≤ t · d G ( u, v ), for every e = ( u, v ) ∈ E , where d G ( u, v ) and d H ( u, v ) are the distancesbetween u and v in G and H , respectively. Graph spanners were introduced in two seminal papers from1989 [37, 38] for unweighted graphs, where it is shown that for any n -vertex graph G = ( V, E ) and integer k ≥
1, there is an O ( k )-spanner with O ( n /k ) edges. Since then, graph spanners have been extensivelystudied, both for general weighted graphs and for restricted graph families, such as Euclidean spaces andminor-free graphs. In fact, spanners for Euclidean spaces— Euclidean spanners , were studied implicitlyalready in the pioneering SoCG’86 paper of Chew [12], who showed that any 2-dimensional Euclideanspace admits a spanner of O ( n ) edges and stretch √
10, and later improved the stretch to 2 [13].The results of [37, 38] for general graphs were strengthened in [2], where it was shown that for every n -vertex weighted graph G = ( V, E ) and integer k ≥
1, there is a greedy algorithm for constructinga (2 k − O ( n /k ) edges, which is optimal under Erdos’ girth conjecture. (We shallsometimes use a normalized notion of size, sparsity , which is the ratio of the size of the spanner to thesize of a spanning tree, namely n − O ( m )-time algorithm for constructing(2 k − O ( n k ) [29]. Therefore, not only is the stretch-sparsity tradeoff in generalgraphs optimal (up to Erdos’ girth conjecture), one can achieve it in optimal time.As with the sparsity parameter, its weighted variant—lightness—has been extremely well-studied;the lightness is the ratio of the weight of the spanner to ω ( M ST ( G )). Next, we survey the results onlight spanners for general graphs. Alth¨ofer et al. [2] showed that the lightness of the greedy spanner is O ( n/k ). Chandra et al. [10] improved this lightness bound to O ( k · n (1+ (cid:15) ) / ( k − · (1 /(cid:15) ) ), for any (cid:15) > k − · (1 + (cid:15) ), O ( n /k ) edgesand lightness O ( k · n /k · (1 /(cid:15) ) ). In a sequence of works from recent years [21, 11, 25], it was shown thatthe lightness of the greedy spanner is O ( n /k (1 /(cid:15) ) /k ) (this lightness bound is due to [11]; the fact thatthis bound holds for the greedy spanner is due to [25]). The best running time for the same lightnessbound in prior work is super-quadratic in n : O (cid:15) ( n /k + (cid:15) (cid:48) ) [1] for any fixed constant (cid:15) (cid:48) <
1. Here O (cid:15) ( . )hides a polynomial factor in (cid:15) .Despite this exciting line of work, the stretch-lightness tradeoff is not nearly as well-understood asthe stretch-sparsity tradeoff; furthermore, this gap in our understanding becomes more prominent whenconsidering the spanner construction time. The situation is similar also in restricted families of graphs.This statement is not to underestimate in any way the seminal works on light spanners from recent years—they provide near-optimal tradeoffs between the stretch and lightness of spanners in general graphs [11],minor-free graphs [7], and doubling metrics [26, 8]. This statement aims to call for attention to theimportant research agenda of narrowing this gap and ideally closing it. “Truly optimal” stretch-sparsityand stretch-lightness tradeoffs, i.e., including the (cid:15) -dependency (where (cid:15) appears in both the stretch andlightness bounds), were achieved recently for constant-dimensional Euclidean spaces by the authors [35].It should also be noted that some of these papers employ inherently different techniques than others, e.g.,the technique of [11] requires large stretch while others are naturally suitable to stretch 1 + (cid:15) ; moreover,the runtime of these constructions is rather high.The goal of achieving a thorough understanding of spanners is of practical importance, due to thewide applicability of spanners. Perhaps the most prominent applications of light spanners (and sparsespanners) are to efficient broadcast protocols in the message-passing model of distributed computing[3, 4], and to network synchronization and computing global functions [5, 38, 3, 4, 39]. There are manymore applications, such as to data gathering and dissemination tasks in overlay networks [9, 48, 18], forVLSI circuit design [15, 16, 17, 44], in wireless and sensor networks [49, 6, 45], for routing [50, 38, 41, 47],to compute almost shortest paths [14, 43, 20, 22, 23], and for computing distance oracles and labels[40, 46, 42]. 2 .1 Our Contribution In this work we present a unified and fine-grained approach for light spanners. Besides the obvioustheoretical importance of unification, we demonstrate the power of our approach in obtaining (1) strongerlightness bounds, and (2) faster construction times. Next, we elaborate on our contribution, and put itinto context with previous work. K r -minor-free graphs. Borradaile, Le, and Wulff-Nilsen [7] showed that K r -minor-free graphs have(1+ (cid:15) )-spanners with lightness ˜ O r,(cid:15) ( r(cid:15) ), where the notation ˜ O r,(cid:15) ( . ) hides polylog factors of r and (cid:15) . Indeed,they showed that the greedy spanner achieves the lightness bound. Our first result is an improvement inthe lightness dependency on (cid:15) . Theorem 1.1.
Any K r -minor-free graph admits a (1 + (cid:15) ) -spanner with lightness ˜ O r,(cid:15) ( r(cid:15) + (cid:15) ) for any (cid:15) < . The improvement in Theorem 1.1 follows from a unified and general framework that we develop inSection 1.2. Moreover, as we argue next, this improved lightness bound is tight.The quadratic dependency on (cid:15) in the lightness bound may seem artificial. Indeed, past worksprovided strong evidence that the dependency of lightness on 1 /(cid:15) should be linear : lightness (of (1 + (cid:15) )-spanners) in planar graphs is O ( (cid:15) ) by Alth¨ofer et al. [2], in bounded genus graphs is O ( g(cid:15) ) by Grigni [28],and in K r -minor-free graphs is ˜ O r ( r log n(cid:15) ) by Grigni and Sissokho [27]. (The log n factor in the lightnessbound of Grigni and Sissokho [27] was removed by Borradaile, Le and Wulff-Nilsen [7] at the cost of acubic dependency on 1 /(cid:15) .) Surprisingly perhaps, we show that the quadratic dependency on (cid:15) in thelightness bound is required. Theorem 1.2.
For any fixed r ≥ , there is a family of graphs excluding K r as a minor such that forany (cid:15) < and n ≥ r + ( (cid:15) ) Θ(1 /(cid:15) ) , there is an n -vertex graph G in this family for which any (1 + (cid:15) ) -spannermust have lightness Ω( r(cid:15) + (cid:15) ) . We remark that the exponential lower bound of n on 1 /(cid:15) in Theorem 1.2 is unavoidable since if n = poly(1 /(cid:15) ), Grigni and Sissokho’s result yields a lightness upper bound of ˜ O r ( r(cid:15) log( n )) = ˜ O r,(cid:15) ( r(cid:15) ) [27].Interestingly, our lower bound is realized by a geometric graph where the vertices correspond to pointsin R and the edge weights are the Euclidean distances between the points.Next, we design a near-linear time algorithm for constructing light spanners of K r -minor-free graphs.Prior to our work, the only known spanner construction with lightness independent of n was the greedyspanner, and the current fastest implementation of the greedy spanner requires quadratic time [2], evenin graphs with O ( n ) edges; more generally, the runtime of the greedy algorithm from [2] on a graph with m = O ( nr ) edges is O ( r · n ). Theorem 1.3.
For any K r -minor-free graph G and any (cid:15) < , there is a deterministic algorithm thatconstructs a (1 + (cid:15) ) -spanner of G with lightness ˜ O r,(cid:15) ( r √ log r(cid:15) + (cid:15) ) in O (cid:15) ( nr · α ( nr, n )) time, where α ( · , · ) is the inverse Ackermann function. General graphs.
Let g ( n, k ) be the minimum sparsity of graphs with girth 2 k + 1 and n vertices. It iswell known that g ( n, k ) = O ( n /k ) and Erd˝os’ girth conjecture is that g ( n, k ) = Θ( n /k ). Previous resultsestablish that the greedy algorithm [11, 25] achieves (2 k − (cid:15) )-spanners with lightness O ( n /k (cid:15)
3+ 1 k ), andthis bound is optimal up to the (cid:15) dependencies assuming Erdos’ girth conjecture. We show that: Theorem 1.4.
Given an edge-weighted graph G ( V, E ) and two parameters k ≥ , (cid:15) < , there is a (2 k − (cid:15) ) -spanner of G with lightness O ( g ( n,k ) (cid:15) ) . n and k in our spanner in Theorem 1.4 is optimal regardlessof Erdos’ girth conjecture. Furthermore, the spanner construction provided by Theorem 1.4 is the firstto achieve a linear dependency on 1 /(cid:15) even for constant k . The previous best known dependency on 1 /(cid:15) is at least quadratic [10, 19] or cubic [11].Furthermore, we can construct spanners with lightness O (cid:15) ( n /k ) in near-linear time: Theorem 1.5.
For any edge-weighted graph G ( V, E ) , a stretch parameter k ≥ and (cid:15) < , thereis a deterministic algorithm that constructs a (2 k − (cid:15) ) -spanner of G with lightness O (cid:15) ( n /k ) in O (cid:15) ( mα ( m, n )) time. Again, O (cid:15) ( . ) hides a polynomial factor of 1 /(cid:15) . We remark that α ( m, n ) = O (1) when m = Ω( n log ∗ n );in fact, α ( m, n ) = O (1) even when m = Ω( n log ∗ ( (cid:96) ) n ) for any constant c , where log ∗ ( (cid:96) ) ( . ) denotes theiterated log-star function with (cid:96) stars. Thus the running time in Thoerem 1.5 is linear in m in almost theentire regime of graph densities, i.e., except for very sparse graphs. The previous state-of-the-art runtimefor the same lightness bound is super-quadratic in n , namely O (cid:15) ( n /k + (cid:15) (cid:48) ), for any constant (cid:15) (cid:48) < k ≥ k ≥ Light Steiner Euclidean Spanners.
In FOCS’19 [35], the authors showed the existence of point sets P in R d , d = O (1), for which any (1+ (cid:15) )-spanner for P must have lightness Ω( (cid:15) − d ) when (cid:15) = Ω( n − / ( d − ).In the same paper [35], the authors showed that the lightness upper bound of the greedy spanner matchesthis lower bound up to a factor of log(1 /(cid:15) ): The greedy (1 + (cid:15) )-spanner of any point set P ∈ R d haslightness ˜ O ( (cid:15) − d ) [35]. An important open problem is whether one could use Steiner points to constructa (1 + (cid:15) )-spanner with o ( (cid:15) − d ) lightness.In [33], the authors made the first progress on this question by showing that for any point set P ∈ R d with spread ∆( P ), one can construct a Steiner (1 + (cid:15) )-spanner with lightness O ( log(∆( P )) (cid:15) ) when d = 2and with lightness ˜ O ( (cid:15) − ( d +1) / + (cid:15) − log(∆( P ))) when d ≥ P ) = poly ( (cid:15) ),the lightness bounds are ˜ O ( (cid:15) ) when d = 2 and ˜ O ( (cid:15) − ( d +1) / ) when d ≥
3. Thus, using Steiner points, onecan improve the lightness bounds almost quadratically when ∆( P ) is reasonably small . However, ∆( P )could be huge, and it could also depend on n . In this case, these lightness bounds become trivial. Usingour unified framework, we completely remove the dependency on ∆( P ) for d ≥ Theorem 1.6.
For any n -point set P ∈ R d and any d ≥ , d = O (1) , there is a Steiner (1 + (cid:15) ) -spannerfor P with lightness ˜ O ( (cid:15) − ( d +1) / ) that is constructible in polynomial time. High dimensional Euclidean metric spaces.
We also obtain new results for high dimensionalEuclidean spaces.
Theorem 1.7.
For any n -point set P in a Euclidean space and any given t > , there is an O ( t ) -spannerfor P with lightness O ( n t log n ) that is constructible in polynomial time. Note that there is no dependency on the dimension in the lightness bound of Theorem 1.7. Theprevious state-of-the-art lightness bound is O ( t n t log n ), due to Filtser and Neiman [24]. Specifically,when t = √ log n , the lightness of our spanner is O (log n ) while the lightness bound by Filtser andNeiman [24] is O (log / n ).We extend Theorem 1.7 to any (cid:96) p metric, for p ∈ (1 , Theorem 1.8.
For any n -point (cid:96) p metric ( X, d X ) with p ∈ (1 , and any t > , there is an O ( t ) -spannerfor ( X, d X ) with lightness O ( n log ttp log n ) . Theorem 1.8 improves the lightness bound O ( t p log p n log ttp log n ) obtained by Filtser and Neiman [24].4 .2 A Unified Approach The starting point of our unified framework is the notion of spanner oracles that was introduced byLe [34] for stretch t = 1 + (cid:15) . We consider spanner oracles with arbitrary stretch. Definition 1.9 (Spanner Oracle) . Let G be an edge-weighted graph and let t > be a stretch parameter.A t -spanner oracle for G , given a subset of vertices T ⊆ V ( G ) and a distance parameter L > , outputsa subgraph S such that for every pair of vertices x (cid:54) = y ∈ T with L/ ≤ d G ( x, y ) ≤ L : d G ( x, y ) ≤ d S ( x, y ) ≤ t · d G ( x, y ) (1) We denote a t -spanner oracle for G by O G,t , and its output by O G,t ( T, L ) given two parameters T ⊆ V ( G ) and L > . We note that the constant 8 in the distance lower bound L/ ≤ d G ( x, y ) in Definition 1.9 is somewhatarbitrary. Definition 1.10 (Sparsity) . Given a t -spanner oracle O G,t of a graph G , we define weak sparsity andstrong sparsity of O G,t , denoted by Ws O G,t and Ss O G,t respectively, as follows: Ws O G,t = sup T ⊆ V,L ∈ R + w ( O G,t ( T, L )) | T | L Ss O G,t = sup T ⊆ V,L ∈ R + | E ( O G,t ( T, L )) || T | (2)We observe that: Ws O G,t ≤ t · Ss O G,t (3)since every edge E ( O G,t ( T, L )) must have weight at most t · L ; otherwise, we can remove it from O G,t ( T, L )without affecting the stretch. Thus, when t is a constant, strong sparsity implies weak sparsity. However,this is not necessarily true when t is non-constant.Our first result is that for t ≥
2, one can obtain a t (1 + (cid:15) )-spanner whose lightness that dependslinearly on 1 /(cid:15) and the weak sparsity of the corresponding t -spanner oracle. Theorem 1.11.
Let G be an arbitrary edge-weighted graph with a t -spanner oracle O of weak sparsity Ws O G,t for t ≥ . Then there exists a t (1 + (cid:15) ) -spanner S for G with lightness: Lightness ( S ) def = w ( S ) w (MST( G )) = ˜ O (cid:18) Ws O G,t (cid:15) (cid:19) . (4)When t = 1 + (cid:15) , we obtain the following result Theorem 1.12.
Let G be an arbitrary edge-weighted graph with a (1 + (cid:15) ) -spanner oracle O of weaksparsity Ws O G, (cid:15) . Then there exists an (1 + O ( (cid:15) )) -spanner S for G with lightness: Lightness ( S ) def = w ( S ) w (MST( G )) = ˜ O (cid:18) Ws O G,t (cid:15) + 1 (cid:15) (cid:19) . (5)The bound in Theorem 1.12 improves over the lightness bound due to Le [34] by a (cid:15) factor. Thestretch of S in Theorem 1.12 is 1 + O ( (cid:15) ), but we can scale it down to (1 + (cid:15) ) while increasing the lightnessby a constant factor. 5e remark that the additive factor Ws O G,t (cid:15) is unavoidable: we showed in our previous work [35] thatthere exists a set of n points in R d such that any (1 + (cid:15) )-spanner for that point set must have lightnessΩ( (cid:15) − d ), while Le [34] showed that point sets in R d have (1+ (cid:15) )-spanner oracles with weak sparsity O ( (cid:15) − d ).Theorem 1.13, combined with the (1 + (cid:15) )-spanner oracle with weak sparsity O ( (cid:15) − d ) of Le [34], impliesa simple black-box proof for the fact that any point set in R d admits a (1 + (cid:15) )-spanner with lightness O ( (cid:15) − d ) for any d ≥
2. This provides a significant simplification for the proof from the previous work ofthe authors [35].The additive factor (cid:15) in the lightness bound of Theorem 1.12 is tight by the following theorem. Theorem 1.13.
There is a graph family G , such that any graph G ∈ G with n vertices has a (1+ (cid:15) ) -spanneroracle with weak sparsity O (1) and any (1 + (cid:15) ) -spanner must have lightness Ω( (cid:15) ) where n ≥ ( (cid:15) ) Θ( (cid:15) ) . Consequently, there is an inherent difference between the dependence on (cid:15) in the lightness of spannerswith stretch at least 2 and those with stretch (1 + (cid:15) ). Again, the exponential lower bound of n on (cid:15) inTheorem 1.13 is unavoidable, since it is possible to construct a (1 + (cid:15) )-spanner with lightness O (log n · Ws O G,t (cid:15) ) using standard techniques.To demonstrate that our framework is unified and applicable, we show that several graph familiesadmit sparse spanner oracles, and as a result also light spanners.
Theorem 1.14.
1. For any weighted graph G and any k ≥ , Ws O G, k − = O ( g ( n, k )) .2. For the complete weighted graph G corresponding to any Euclidean space (in any dimension) andfor any t ≥ , Ws O G,O ( t ) = O ( n t log n ) .3. For the complete weighted graph G corresponding to any finite (cid:96) p space for p ∈ (1 , and for any t ≥ , Ws O G,O ( t ) = O ( n log ttp log n ) . Theorem 1.4 follows directly from Theorem 1.11 and Item (1) of Theorem 1.14; Theorems 1.7 (respectively,Theorem 1.8) follows directly from Theorem 1.11 and Item (2) (resp., (3)) of Theorem 1.14 with (cid:15) = 1 /
2– indeed, any constant (cid:15) < t = 1 + (cid:15) but in a slightlydifferent way. If we work with the complete weighted graph G corresponding to a Euclidean point set P ∈ R d as in Theorem 1.14 and construct a light spanner from sparse spanner oracles for G , the resultingspanner is non-Steiner and hence we cannot hope to obtain the lightness bound of Theorem 1.6 due to alower bound of Ω( (cid:15) − d ) due to [35]. Our key insight here is to allow the oracle to include Steiner points,i.e., points in R d \ P . Formally, a (1 + (cid:15) )-spanner oracle, given a subset of points T ⊆ P and a distanceparameter L >
0, outputs a Euclidean graph S ( V S , E S ) with T ⊆ V S such that d S ( x, y ) ≤ (1 + (cid:15) ) || x, y || for any x (cid:54) = y , where || x, y || ∈ [ L/ , L ]. We denote the oracle by O R d , (cid:15) . We show that Euclidean spacesadmit sparse spanner oracles; our construction uses sparse Steiner (1 + (cid:15) )-spanners from our previouswork [35] as a black-box. Theorem 1.15. R d has a (1 + (cid:15) ) -spanner oracle with weak sparsity Ws O R d,t + (cid:15) = ˜ O (cid:15) ( (cid:15) − ( d − / ) . Theorem 1.12 remains true even when the output of the oracle is not a subgraph of G . However,the resulting spanner is not a subgraph of G as it may contain vertices not in G . For point sets in R d ,the resulting spanner is a Steiner spanner. That is, Theorem 1.6 follows directly from Theorems 1.12and 1.15. || x, y || is the Euclidean distance between two points x, y ∈ R d .
6e are unable to establish the lightness upper bound ˜ O r,(cid:15) ( r(cid:15) + (cid:15) ) of Theorem 1.1 by designing asparse spanner oracle for K r -minor graphs. In fact, this seems challenging even in planar graphs; indeed,since Theorem 1.12 remains true even when the output of the oracle is not a subgraph of G , if one couldconstruct a (1 + (cid:15) )-spanner oracle with sparsity Ws O G, (cid:15) = o ( (cid:15) ) in planar graphs, this would break thelongstanding lightness upper bound of O ( (cid:15) − ) for subset spanners in planar graphs by Klein [31]. Forthat reason we establish the lightness upper bound of Theorem 1.1 directly, by tailoring the proof ofTheorem 1.12 to K r -minor-free graphs. • In Section 2 we present the terminology and notation used in this paper. • In Section 3, we provide lower bound constructions. Specifically, the proofs of Theorem 1.2 and 1.13are provided therein. • In Section 4 we present fast algorithms to construct spanners for general graphs and minor-freegraphs. Specifically, the proofs of Theorems 1.5 and 1.3 are provided in Sections 4.3 and 4.4,respectively. • In Section 5 we present a unified approach to constructing light spanners. Specifically, Theo-rems 1.11, 1.12 and 1.1 are provided in Sections 5.1, 5.2 and 5.3, respectively. • In Section 6 we prove Theorems 1.15 and 1.14 by constructing sparse spanner oracles for severalgraph families.
Let G be a graph. We denote by V ( G ) and E ( G ) the vertex set and edge set of G , respectively. Sometimeswe write G ( V, E ) to clearly indicate the vertex set and edge set of G . We denote by w : E ( G ) → R + theweight function on the edge set. We use MST( G ) to denote a minimum spanning tree of G ; when thegraph is clear from context, we simply use MST as a shorthand for MST( G ).For a subgraph H of G , we use w ( H ) def = (cid:80) e ∈ E ( H ) w ( e ) to denote the total edge weight of H . Let d G ( p, q ) be the distance between two vertices p, q in G . The diameter of G is the length of the shortestpath of maximum length in G , and is denoted by Dm ( G ).Given a subset of vertices X ⊆ V ( G ), we denote by G [ X ] the subgraph of G induced by X : G [ X ] has V ( G [ X ]) = X and E ( G [ X ]) = { ( u, v ) ∈ E ( G ) |{ u, v } ⊆ X } . Let F ⊆ E ( G ) be a subset of edges of G . Wedenote by G [ F ] a subgraph of G where V ( G [ F ]) = V ( G ) and E ( G [ F ]) = F .Let S be a spanning subgraph of G ; weights of edges in S inherit from G . The stretch of S is thequantity max x (cid:54) = y ∈ V ( G ) d S ( x,y ) d G ( x,y ) . We say that S is a t -spanner of G if the stretch of S is at most t . Thereis a simple greedy algorithm, called path greedy , to find a t -spanner of a graph G : considering all pairsof vertices ( x, y ) in G in increasing weight order and adding to the spanner edge ( x, y ) whenever thedistance between x and y in the current spanner is at least t · w ( x, y ).We call a complete graph K r a minor of G if K r can be obtained from G by contracting edges, deletingedges and/or deleting vertices. A graph G is K r -minor-free, if it excludes K r as a minor for some fixed r . We sometimes omit prefix K r in K r -minor-free when the value of r is not important in the context.We also consider geometric graphs in our paper. Let P be a point set of n points in R d . We denoteby || p, q || the Euclidean distance between two points p, q ∈ R d . A geometric graph G for P is a graphwith V ( G ) = P and w ( u, v ) = || u, v || for every edge ( u, v ) ∈ V ( G ). Note that G may not be a completegraph. For geometric graphs, we use the term vertex and point interchangeably.7e use [ n ] and [0 , n ] to denote the sets { , , . . . , n } and { , , . . . , n } , respectively. In this section, we provide lower bounds on light (1+ (cid:15) ) spanners to prove Theorem 1.2 and Theorem 1.13.Interestingly, our lower bound construction draws a connection between geometry and graph spanners:we construct a fractal-like geometric graph of weight Ω( MST (cid:15) ) such that it has treewidth at most 4 andany (1 + (cid:15) )-spanner of the graph must take all the edges. Theorem 3.1.
For any n = Ω( (cid:15) Θ(1 /(cid:15) ) ) and (cid:15) < , there is an n -vertex graph G of treewidth at most such that any light (1 + (cid:15) ) -spanner of G must have lightness Ω( (cid:15) ) . Before proving Theorem 3.1, we show its implications in Theorem 1.2 and Theorem 1.13.
Proof: [Proof of Theorem 1.13] Le (Theorem 1.3 in [34]), building upon the work of Krauthgamer,Nguy˜ˆen and Zondier [32], showed that graphs with treewidth tw has a 1-spanner oracle with weak spar-sity O ( tw ). Since the treewidth of G in Theorem 3.1 is 4, it has a 1-spanner oracle with weak sparsity O (1); this implies Theorem 1.13. (cid:3) Proof: [Proof of Theorem 1.2] First, construct a complete graph H on r − r(cid:15) ) as follows: Let X ⊆ V ( H ) be a subset of r/ X = V ( H ) \ X . Weassign weight 2 (cid:15) to every edge with both endpoints in X or X , and weight 1 to every edge between X and X . Clearly MST( H ) = 1 + ( r − (cid:15) . We claim that any (1 + (cid:15) )-spanner S of H musttake every edge between X and X ; otherwise, if e = ( u, v ) is not taken where u ∈ X , v ∈ X , then d S ( u, v ) ≥ d H − e ( u, v ) = 1 + 2 (cid:15) > (1 + (cid:15) ) d G ( u, v ). Thus, w ( S ) ≥ | X || X | = Ω( r ). This implies w ( S ) = Ω( r(cid:15) ) w (MST( H )).Let H be an ( n − r + 1) vertex graph of treewidth 4 guaranteed by Theorem 3.1; H excludes K r asa minor for any r ≥
6. We scale edge weights of H appropriately so that. w (MST( H )) = w (MST( H )).Connect H and H by a single edge of weight 2 w (MST( H )) to form a graph G . Then G excludes K r as minor (for r ≥
5) and any (1 + (cid:15) )-spanner must have lightness at least Ω( r(cid:15) + (cid:15) ). (cid:3) We now focus on proving Theorem 3.1. The core gadget in our construction is depicted in Figure 1.Let C r be a circle on the plane centered at a point o of radius r . We use > ab to denote an arc of C r withtwo endpoints a and b . We say > ab has angle θ if ∠ aob = θ .We use | > ab | to denote the (arc) length of > ab,and || a, b || to denote the Euclidean length between a and b .By elementary geometry and Taylor’s expansion, one can verify that if > ab has angle θ , then: | > ab | = θr || a, b || = 2 r sin( θ/
2) = rθ (1 − θ /
24 + o ( θ )) || a, b || = 2 sin( θ/ θ | > ab | = (1 − θ /
24 + o ( θ )) | > ab | (6) Core Gadget
The construction starts with an arc ab of angle √ (cid:15) of a circle C r . W.o.l.g, we assumethat (cid:15) is an odd integer. Let k = ( (cid:15) + 1). Let { a ≡ x , x , . . . , x k ≡ b } be the set of points, called breakpoints , on the arc ab such that ∠ x i ox i +1 = (cid:15) / for any 1 ≤ i ≤ k − A graph is geometric if the vertex set is a set of point in R d and the weight of each edge is the distance between itsendpoints in R d . ε x o x k + x k x k x x k + x k (a) (b)(c) . x k x x k + x k B B B k - B k - Figure 1: The core gadgetLet H r be a graph with vertex set V ( H r ) = { x , . . . , x k } . We call x and x k terminals of H r . Foreach i ∈ [2 k − x i x i +1 of weight w ( x i x i +1 ) = || x i , x i +1 || to E ( H r ). We refer to edgesbetween x i x i +1 for i ∈ [2 k −
1] as short edges . For each i ∈ [ k ], we add an edge x i x i + k of weight || x i , x i + k || .We refer to these edges as long edges . Finally, we add edge || x , x k || of E ( H r ), that we refer to as the terminal edge of H r . We call H r a core gadget of scale r . See Figure 1(a) for a geometric visualization of H r and Figure 1(b) for an alternative drawing of H r .We observe that: Observation 3.2. H r has the following properties:1. For any edge e ∈ E ( H r ) , we have: w ( e ) = r sin( (cid:15) / / if e is a short edge r sin( k(cid:15) / / if e is a long edge r sin( √ (cid:15)/ if e is the terminal edge (7) w (MST( H r )) ≤ r √ (cid:15) .3. w ( H r ) ≥ r √ (cid:15) when (cid:15) (cid:28) . Proof:
We only verify (3); other properties can be seen by direct calculation. By Taylor’s expansion,each long edge of H r has weight w ( e ) = 2 sin( ( √ (cid:15) + (cid:15) / )) = r ( √ (cid:15) + o ( (cid:15) )) ≥ r √ (cid:15)/ when (cid:15) < . Since H r has k long edges, w ( H r ) ≥ kr √ (cid:15)/ ≥ r √ (cid:15) . We claim that H r has small treewidth. Claim 3.3. H r has treewidth at most . roof: We construct a tree decomposition of width 4 of H r . In fact, we can construct a path decompo-sition of width 3 for H r . Let B , . . . , B k − be set of vertices where B i − = { x i − , x i + k − , x i + k } and B i = { x i − , x i + k , x i } for each i ∈ [ k −
1] (see Figure 1(c)). We then add x and x k to every B i . Then, P = { B , . . . , B k − } is a path decomposition of H r of width 3. Remark:
It can be seen that H r has K as a minor, thus has treewidth at least 3. Showing that H r hastreewidth at least 4 needs more work. Lemma 3.4.
There is a constant c such that any (1 + (cid:15)/c ) -spanner of H r must have weight at least w (MST( H r ))6 (cid:15) . Proof:
Let e be a long edge of H r and G e = H r \ { e } . We claim that the shortest path between e ’sendpoints in G e must have length at least (1 + (cid:15)/c ) w ( e ) for some constant c . That implies any (1 + (cid:15)/c )-spanner of H r must include all long edges. The lemma then follows from Observation 3.2 since H r thereare at least 1 / (cid:15) long edges, and each has length at least w (MST( H r )) / (cid:15) (cid:28) e = x i x i + k . Let P e is a shortest path between x i and x i + k in G e . Suppose that w ( P e ) ≤ (1 + (cid:15)/c ) w ( e ). Since the terminal edge has length at least 3 / w ( e ), P e cannot contain theterminal edge. For the same reason, P e cannot contain two long edges. It remains to consider two cases:1. P e contains exactly one long edge. Then, it must be that P i = { x i , x i +1 , x i + k +1 , x i + k } or P i = { x i , x i − , x i + k − , x i + k } . In both case, w ( P i ) = w ( e ) + 4 r sin( (cid:15) / / ≥ w ( e )(1 + 2 sin( (cid:15) / / k(cid:15) / / ) ≥ (1 + 2 (cid:15) ) w ( e ).2. P e contains no long edge. Then, P e = { x i , x i +1 , . . . , x i + k } . Thus we have: w ( P e ) w ( e ) = 2 kr sin( (cid:15) / / r sin( k(cid:15) / / (cid:15)/
96 + o ( (cid:15) ) ≥ (cid:15)/ c = 100, we derive a contradiction. Proof of Theorem 3.1
The construction is recursive. Let H the core gadget of scale 1. Let s ( (cid:96) )be the length of short edges (long edges) of H . Let x , . . . , x k be break points of H . Let δ be the ratioof the length of a short edge to the length of the terminal edge. That is: δ = || x , x |||| x , x k || = sin( (cid:15) / / √ (cid:15)/
2) = (cid:15) + o ( (cid:15) ) (8)Let L = (cid:15) . We construct a set of graphs G , . . . , G L recursively; the output graph is G L . We refer to G i is the level- i graph. Level- graph G = H . We refer to breakpoints of H as breakpoints of G . Level- graph G obtained from G by: (1) making 2 k − H δ of scale δ , (2)for each i ∈ [2 k − H δ to G by identifying the terminal edge of H δ and the edgebetween two consecutive breakpoints x i x i +1 of G . We then refer to breakpoints of all H δ as breakpoints indices are mod 2 k . G Figure 2: Two-leveled construction.of G . (See Figure 2.) Note that by definition of δ , the length of the terminal edge of H δ is equal to || x i , x i +1 || . We say two adjacent breakpoints of G consecutive if they belong to the same copy of H δ in G and connected by one short edge of H δ . Level- j graph G j obtained from G j − by: (1) making (2 k − j copies of the core gadget H δ j − of scale δ j − , (2) for every two consecutive breakpoints of G j − , attach each copy of H δ j − to G j − by identifyingthe terminal edge of H δ j − and the edge between the two consecutive breakpoints. This completes theconstruction.We now study properties of G L . We first claim that: Claim 3.5. G L has treewidth at most . Proof:
Let T be the tree decomposition of G of width 5, as guaranteed by Claim 3.3. Note that forevery pair of consecutive breakpoints x i , x i +1 of G , there is a bag, say X i , of T contains both x i and x i +1 . Also, there is a bag of T containing both terminals of T .We extend the tree decomposition T to a tree decomposition T of G as follows. For each gadget H δ attached to G via consecutive breakpoints x i , x i +1 , we add a bag B = { x i , x i +1 } , connect B to X i of T and to the bag containing terminals of the tree decomposition of H δ . Observe that the resulting treedecomposition T has treewidth at most 4. The same construction can be applied recursively to constructa tree decomposition of G L of width at most 4. Claim 3.6. w (MST( G L )) = O (1) w (MST( H )) . Proof:
Let r ( (cid:15) ) be the ratio between MST( H ) and the length of the terminal edge of H . Note thatMST( H ) is a path of short edges between x and x k . By Observation 3.2, we have: r ( (cid:15) ) ≤ r √ (cid:15) r sin( √ (cid:15)/
2) = 1 + (cid:15)/
24 + o ( (cid:15) ) ≤ (cid:15) (9)when (cid:15) (cid:28)
1. When we attach copies of H δ to edges between two consecutive breakpoints of G , by re-routing each edge of MST( H ) through the path MST( H δ ) between H δ ’s terminals, we obtain a spanningtree of G of weight at most r ( (cid:15) ) w (MST( H )) ≤ (1 + (cid:15) ) w (MST( H )). By induction, we can show that: w (MST( G j )) ≤ (1 + (cid:15) ) w (MST( G j − )) ≤ (1 + (cid:15) ) j − w (MST( H )) (10)Thus, we have w (MST( G L )) ≤ (1 + (cid:15) ) L − w (MST( H )) = O (1) w (MST( H )).11et S be an (1 + (cid:15)/ G L ( c = 100 in Lemma 3.4). By Lemma 3.4, S includes everylong edge of all copies of H r for every scale r in the construction. Recall that || x , x k || is the terminaledge of G . Let L j be the set of long edges of all copies of H δ j − added at level j . Since MST( G ) || x ,x k || = r ( (cid:15) ),we have: w (MST( G ) = r ( (cid:15) ) r ( (cid:15) ) − (cid:0) w (MST( G )) − || x , x k || (cid:1) ≥ (cid:15) (cid:0) w (MST( G )) − || x , x k || (cid:1) (11)By Lemma 3.4, we have: w ( L ) ≥ (cid:15) w (MST( G )) ≥ (cid:15) ( w (MST( G )) − || x , x k || ) w ( L ) ≥ (cid:15) ( w (MST( G )) − MST( G )) . . .w ( L j ) ≥ (cid:15) ( w (MST( G j )) − w (MST( G j − ))) (12)Thus, we have: w ( S ) ≥ L (cid:88) j =1 w ( L j ) ≥ (cid:15) ( w (MST( G L )) − || x , x k || ) ≥ w (MST( G L ))4 (cid:15) (13)By setting (cid:15) ← (cid:15)/ n follows from thefact that G L has | V ( G L ) | = O ((2 k − L ) = O (( (cid:15) ) (cid:15) ) vertices. (cid:3) In this section, we design fast algorithms to construct spanners for general graphs (Theorem 1.5) andminor-free graphs (Theorem 1.3). The construction follows the same iterative clustering frameworkproposed by Chechik and Wulff-Nilsen [11] for general graphs with stretch t = (2 k − (cid:15) ), called CWconstruction. As CW construction [11] and the fast implementation of CW construction [1] are directly related to ourconstruction, we review their constructions here.
CW construction
First, CW propose a weight reduction technique to reduce to the case where theweight of every edge is in [1 , g k ] for some sufficiently big constant g and MST edges have weight exactly1 each. Then, they partition the edge weight into k intervals { [1 , g ] , . . . , [ g i , g i +1 ] , . . . , [ g k − , g k ] } ; edgesof weight in interval I i = [ g i , g i +1 ] are called level- i edges. Associated with each interval I i is a collectionof clusters C i , called level- i clusters, where each cluster C ∈ C i has diameter Θ( kg i ) and at least Θ( kg i )vertices.The clusters in C i induce a cluster graph K i where each vertex is a level- i cluster and an edge betweentwo clusters has weight in I i . ( K i is made simple by removing parallel edges.) Level-( i + 1) clusters areconstructed by grouping nodes of K i in two steps. In the first step, each high degree node , that has degree12t least some big constant ∆, and its neighbors are grouped into a level-( i + 1) clusters. Low degree nodes ,those of degree less than d , are grouped into level- i + 1 clusters greedily.For each low degree node at level- i , it needs to pay for up to ∆ level- i edges, called light edges , of totalweight at most ∆ · g i +1 = O ( g i +1 ) while it has at least Ω( kg i ) vertices; thus, each vertex must pay for O ( g i +1 kg i ) = O ( k ) weight. Since there are only k levels, the total weight come from light edges that eachvertex must pay for is O (1). That implies the total weight of light edges is O ( n ) = O (MST). (Recall thateach MST edge has weight 1.) This argument is the main reason why level- i clusters must have diameterΘ( kg i ).For each high degree node C i at level- i , by grouping C i and its neighbors into a level-( i +1) cluster C i +1 ,the total diameter reduced by (cid:80) C ∈ C i +1 Dm ( C ) − Dm ( C i +1 ) = Ω( | C i +1 | kg i − ) (Lemma 5.2 in [11]). ( | C i +1 | is the number of level- i clusters in C i +1 .) This diameter reduction means that at least Ω( | C i +1 | kg i − )vertices are not participating in lightness chargings of future levels, called leftover vertices . If each level- i cluster is only incident to at most n /k edges in K i , then the total weight of all the incident edges is n /k | C i +1 | g i +1 . Thus, we can charge this weight to all leftover vertices, and each is charged O ( n /k /k )weight, and hence total lightness is O ( n /k /k ). But there is no reason to expect that a level- i cluster isincident to only O ( n /k ) edges, even on average. One idea is to apply the greedy algorithm for constructing(2 k − (cid:15) )-spanners to the subgraph of K i induced by high degree nodes to reduce the average degreeto O ( n /k ), and add all the edges of the greedy spanner to the final spanner. However, the stretch oflevel- i edges is blown up to O ( k ) in the spanner as the diameter of each level- i clusters is Ω( k ) time theweight of the edge. CW resolve this issue by going back and constructing a (2 k − (cid:15) )-spanner atlevel i − log g ( k/(cid:15) ) for level- i edges since clusters at this level have diameter roughly O ( (cid:15) ) time the weightof level- i edges. This, however, yields a complicated argument since it is much harder to relate diameterreduction and the weight of the spanner for level- i edges using a spanner at level i − log g ( k/(cid:15) ). Fast implementation of CW construction by Alstrup et a. [1]
There are several constructionsin the work of Alstrup et al. [1] that offer different trade-offs between stretch, lightness and runningtime. The construction that is most relevant to our work is the implementation of CW construction .Their focus is on the graph with weight in the range [1 , g k ]. Most steps of the CW construction canbe implemented efficiently, except those where the greedy (2 k + 1)(1 + (cid:15) )-spanner is called. Their maininsight is that CW construction called the greedy algorithm on graphs with edges in range [ a, k(cid:15) a ] forsome a and hence, one can find a (2 k + 1)(1 + (cid:15) )-spanner on these graphs in O ( m + n log n ) time at thecost of an O (log k(cid:15) ) = O (cid:15) (log k ) in the lightness. Thus, it remains unclear whether one can implementCW construction in O ( m + n log n ) time without a factor O (cid:15) (log k ) in the lightness. In the CW construction, it is crucial that the diameter of level- i clusters are roughly Θ( k ) times theweight of level- i edges for the amortized argument to work in bounding the total weight of light edges(edges incident to low degree level- i clusters); specifically, if the diameter of i -level clusters exceeds theweight of level- i edges by a factor of x , then the lightness bound due to light edges incurred in each levelof the hierarchy is O ( n /k /x ), and since the number of levels is k , we need to take x = Θ( k ) to achievea lightness bound of O ( n /k ) for the light edges. This factor k overhead to the diameter causes anothersignificant hurdle: when handling edges incident to high degree level- i clusters, since the diameter oflevel- i clusters is too big, CW must go back to level i − log g ( k/(cid:15) ) to decide which level- i edges should beadded to the spanner. Clusters at level ( i − log g ( k/(cid:15) )) have diameter Θ( (cid:15)g i ) which is at most Θ( (cid:15) ) timethe weight of level- i edges. Other constructions either have near quadratic running time or stretch O ( k ) instead of (2 k − (cid:15) )
13n our construction, we follow a different variant of CW iterative clustering proposed by Borradaile,Le, and Wulff-Nilsen [7], called BLW technique. This technique was developed to analyze the lightness ofgreedy (1 + (cid:15) )-spanners of K r -minor-free graphs, and there are two important properties that BLW takeadvantage of in their settings. First, the greedy algorithm guarantees that for any edge ( u, v ) taken tothe spanner, say S , and any (simple) path P uv between u and v in S − ( u, v ), (1 + (cid:15) ) w ( u, v ) ≤ w ( P u,v );almost all fast constructions do not have this property. Second, the stretch is (1 + (cid:15) ) < k of diameter of level- i clusters as in CW construction. (If k is constant, CWconstruction can be made much simpler and in particular, we do not need to go back to level i − log g ( k/(cid:15) )to decide which level- i edges should be added to the spanner.)Our insight is that it is possible to use BLW to construct level- i clusters of diameter independent of k , even when k is not a constant. This is because BLW technique has a clever way to handle low degreelevel- i clusters by grouping them into level-( i +1) clusters in such a way that the total diameter is reducedby a constant fraction (depending on (cid:15) ). As a result, instead of taking the diameter of level- i clustersto be at least k times the weight of level- i edges, we set the diameter of level- i clusters to be roughly (cid:15) times the weight of level- i edges. Specifically, level- i clusters in our construction have diameter O ( (cid:15)L i )while level- i edges have weight in ( L i / (1 + (cid:15) ) , L i ]. (The exact value of L i is ¯ w(cid:15) i for some scaling factor¯ w .) Consequently, when dealing with high degree level- i clusters, it suffices to restrict the attention tothe subgraph H i induced by the high degree nodes of K i . Specifically, we find a (2 k − S i for H i and add all edges of S i to the final spanner. Our construction is hence not only simper but also canbe implemented faster. This is because all level- i edges have almost the same length (up to a (1 + (cid:15) )factor), and can be handled as an unweighted graph, by applying the linear time algorithm of Halperinand Zwick [29].There are some important details that we need to be careful in clustering low degree level- i clusters,as running time is not relevant in BLW’s work. (Recall that they provide an analysis of the greedyalgorithm.) In particular, in clustering level- i clusters, BLW searched for a cluster by starting from alevel- i edge and considering the structure of the endpoints with respect to a spanning forest containingthe edge’s endpoints. The search could be very costly as in the worst case, one needs to explore a largenumber of nodes. We instead restrict the search to a constant (depending on (cid:15) ) number of nodes closeto these endpoints and that makes our implementation efficient. As a result, the total running time ofour implementation is O ( m poly ( (cid:15) )) = O ( m ), assuming that (cid:15) is a (small) constant. The full details aredescribed in the following section. In this section, we devise a nearly linear time algorithm to construct light spanners for general graphswith stretch t = (2 k − (cid:15) ). First, we review several known constructions that we will use as blackboxes. Theorem 4.1 (Halprin-Zwick [29]) . Given an unweighted graph G with m edges, a (2 k − -spanner of G with O ( n k ) edges can be constructed deterministically in O ( m ) time. Denote by
UWSpanner ( G, k −
1) the (2 k − G ( V, E ) by Theorem 4.1.We assume that the minimum edge weight of G ( V, E ) is 1. Let ¯ w = w (MST) m . Let E (cid:48) be the set ofedges with weight in the range [1 , ¯ w/(cid:15) ]. It’s possible that ¯ w/(cid:15) <
1, and then this range is empty. Let S (cid:48) = E (cid:48) ∪ E (MST). Observe that: w ( S (cid:48) ) ≤ (1 + 1 (cid:15) ) w (MST) . (14)14hat is, we can add all the edges of S (cid:48) into E sp without inducing much weight. Let E (cid:48)(cid:48) = E ( G ) \ E ( S (cid:48) ).Observe that w ( e ) ∈ ( ¯ w/(cid:15), w (MST)] = ( ¯ w/(cid:15), m ¯ w ] for every e ∈ E (cid:48)(cid:48) . Subdividing
MST For each edge e ∈ MST of weight more than ¯ w , we subdivide e into (cid:100) w ( e )¯ w (cid:101) edgesof equal weight (of at most ¯ w each). The total number of edges of MST after the subdivision is O ( m ).We denote the new graph after this step by ˜ G = ( ˜ V, ˜ E ). Observe that E (cid:48)(cid:48) still is the set of all edges ofweight larger than ¯ w/(cid:15) of ˜ G .Let I = (cid:100) log /(cid:15) ( m ) (cid:101) . Let L i = δ ¯ w(cid:15) i where i ∈ [1 , (cid:100) log (cid:15) m (cid:101) ] and δ > E δ = { E , . . . , E I } where: E i = { e ∈ E (cid:48)(cid:48) | w ( e ) ∈ ( L i (1 + ε ) , L i ] } (15)Let E (cid:91)δ = (cid:83) i ∈ [1 ,I ] E i . The main goal of this section is to show that: Theorem 4.2.
Given any δ > , there is an O (cid:15) ( mα ( n )) time algorithm that finds a subset of edges E sp ⊆ G such that w ( E sp ) = O ( n /k (cid:15) + (cid:15) ) w (MST) and: d G [ E sp ] ( u, v ) ≤ (2 k − (cid:15) ) d G ( u, v ) (16) for any edge ( u, v ) ∈ E (cid:91)δ . We next argue that Theorem 4.2 implies Theorem 1.5.
Proof: [Proof of Theorem 1.5] Let J = (cid:100) log (cid:15) ( (cid:15) ) (cid:101) = O ( (cid:15) log (cid:15) ). For each j ∈ [1 , J ], let δ j = (1 + (cid:15) ) j .Observe that: E = ∪ Jj =1 E (cid:91)δ j (17)Let S = ∪ j ∈ [1 ,J ] E ( j ) sp where E ( j ) sp is a spanner for edges in E (cid:91)δ j . By Theorem 4.2, we can construct S in | J | · O (cid:15) ( m ) = O (cid:15) ( m ) time Also by Theorem 4.2, w ( S ) = O ( 1 (cid:15) log 1 (cid:15) ) O ( n /k (cid:15) + 1 (cid:15) ) w (MST) = ˜ O ( n /k (cid:15) + 1 (cid:15) ) w (MST) (18)Finally, by Equation 17 and Theorem 4.2, the stretch of every edge e ∈ E is at most (2 k − (cid:15) ),hence S ∪ S is a (2 k − (cid:15) )-spanner of G . (cid:3) In what follows we prove Theorem 4.2. Initially, E sp contains every edge of weight at most ¯ w/(cid:15) in˜ G , and in particular, it contains all MST edges. We refer to the edges in E i ∈ E δ as level- i edges . Ourconstruction crucially relies on a hierarchy of clusters . Definition 4.3 (Hierarchy of clusters) . A hierarchy of clusters , denoted by H = {C , C , . . . , C I } , satisfiesthe following properties: • Covering
Clusters in C i , called level- i clusters, are vertex-disjoint subgraphs of G [ E sp ] and parti-tion the vertex set of ˜ G for i ∈ [1 , I − . C is the set of singletons and C I contains a single subgraphspanning every vertex of ˜ G . • Refinement
For each cluster C ∈ C i where i ≥ , there is a subset of clusters B ⊆ C i − such that V ( C ) = ∪ B ∈B V ( B ) . • Diameter
Each cluster C ∈ C i has diameter at most gL i − , for a sufficiently large constant g tobe determined later.
15e stress that the diameter property imposes only an upper bound on the diameter of clusters—thediameter of level- i clusters could be asymptotically smaller than L i .Since L i − = εL i , the diameter of level- i clusters is O ( (cid:15) ) times the weight of level- i edges. Remark 4.4.
We stress that the new vertices, added as a result of subdividing the
MST edges, areregarded as vertices of ˜ G . Thus, the clusters in C i span not only the original vertex set V of the graphbut also the subdividing vertices. To obtain a fast construction, we will maintain for each cluster C ∈ C i a representative vertex r ( C ).The representative vertices are not vertices of G ; they can be viewed as “dummy” or Steiner verticesthat are used to facilitate selecting level- i edges to E sp . For each vertex v ∈ C , we designate r ( C ) as therepresentative of v , i.e., we set r ( v ) = r ( C ). Level- clusters Let L = δ ¯ w . We apply a simple greedy construction to break the MST into acollection L of subtrees of diameter at least L and at most 5 L as follows. (1) Repeatedly pick a vertex v in a component T of diameter at least 4 L , break a minimal subtree of radius at least L with center v from T , and add the minimal subtree to L . (2) For each remaining component T after step (1), theremust be an MST edge e connecting T and a subtree T (cid:48) ∈ L formed in step (1); we add T (cid:48) and e to T . Lemma 4.5.
Each subtree T ∈ L of MST has diameter at least L and at most L . Proof:
In step (1), each subtree T in L has radius at most L + ¯ w and hence diameter at most2( L + ¯ w ) ≤ L . In step (2), T is augmented by subtrees of diameter at most 4 L via MST edges in a star-like way. Thus, the augmentation in step (2) increases the diameter of T by at most 2(4 L + ¯ w ) ≤ L ;this implies the lemma. (cid:3) Each subtree in L after step (2) will be a level-1 cluster. This step can be straightforwardly imple-mented in O ( | E (MST) | ) = O ( m ) time. Level- ( i + 1) clusters Let K i = K i ( V i , E i ) be the graph where the vertex set V i is the set of repre-sentatives of level- i clusters and the edge set E i corresponding to a subset of level- i edges, constructedas follows. Initially, for each edge e = ( u, v ) ∈ E i , we add an edge between r ( u ) and r ( v ) of weight w ( e ). Then, we remove from E i edges whose endpoints have the same representative, thereby removingself-loops from K i . We then keep K i simple by removing all but one edge of minimum weight amongparallel edges. For each edge e ∈ E i , we denote the edge in E ( i, j ) that corresponds to e by source ( e ). Lemma 4.6. K i can be constructed in O ( α ( n )( | V ( K i ) | + | E i | )) time where α ( . ) is the inverse Ackermannfunction. Proof:
For each edge e = ( u, v ), we compute the representative r ( u ) , r ( v ). This can be done in O ( α ( m ))amortized time using Union-Find data structure. Thus, checking whether e ’s endpoints in the same level- i cluster by checking whether r ( u ) = r ( v ) takes O (1) time, and checking whether e = ( u, v ) is parallel to e (cid:48) = ( u (cid:48) , v (cid:48) ) by comparing the representatives of their endpoints also takes O (1) time. (cid:3) We refer to vertices of K i as nodes . For each node ν ∈ K i , we denote by source ( ν ) the level- i cluster C for which r ( C ) = ν .For each node ν , we denote by E i ( ν ) the set of edges incident to ν in K i and denote by deg i ( ν ) = |E i ( ν ) | the degree of ν in K i . We call a node ν of K i heavy if deg i ( ν ) ≥ g(cid:15) and light otherwise. Let V hv ( V li ) bethe set of heavy (light) nodes. Let V + hv = V hv ∪ N [ V hv ] and V − li = V i \ V + hv .In the first step, which has three smaller steps, we group all nodes in V + hv into level-( i + 1) clusters.16 Step 1A.
This step has two mini-steps. – (Step 1A(i). ) Let I ⊆ V hv be a maximal 2-hop independent set over the nodes of V hv , whichin particular guarantees that ν, µ ∈ I , N K i [ ν ] ∩ N K i [ µ ] = ∅ . For each node ν ∈ I , form alevel-( i + 1) cluster C i +1 from ν , ν ’s neighbors and incident edges, and add to E sp the edge set E i ( v ) . We then designate any node in C i +1 as its representative. – (Step 1A(ii). ) We iterate over the nodes of V hv \ I that are not grouped yet to any ( i + 1)-levelcluster. For each such node µ ∈ V hv \ I , there must be a neighbor µ (cid:48) that is already groupedto a cluster C (cid:48) i +1 ; if there are multiple such vertices, we pick one of them arbitrarily. We add µ and edge ( µ, µ (cid:48) ) to C (cid:48) i +1 , and add ( µ, µ (cid:48) ) to E sp . Observe that every heavy node is groupedat the end of this step. • Step 1B.
For each node ν in V + hv that is not grouped in Step 1, there must be at least one neighbor,say µ , of ν grouped in Step 1; if there are multiple such vertices, we pick one of them arbitrarily.We add µ and the edge ( ν, µ ) to the level-( i + 1) cluster containing ν . We then add edge ( ν, µ ) to E sp . • Step 1C.
Add to E sp the following edge set: (cid:16) ∪ ν ∈V + hv \V hv E i ( ν ) (cid:17) (cid:91) E ( UWSpanner ( K i [ V hv ] , k − UWSpanner on K i [ V hv ], we disregard the weights of edges in K i [ V hv ]. Remark 4.7.
We abuse notation by referring to subgraphs of K i formed above as level- ( i + 1) clusters.To be more precise, the sources of these subgraphs are level- ( i + 1) clusters. Lemma 4.8.
Level- ( i + 1) clusters in Step 1 are subgraphs of G [ E sp ] of diameter at most L i and haveat least g(cid:15) nodes. Furthermore, the implementation can be done in O ( |E i | ) time given K i . Proof:
Each level-( i + 1) cluster contains at least one heavy node and all of it neighbors since I is a2-hop independent set, and thus each such cluster has at least g(cid:15) nodes.Observe that each level-( i + 1) cluster has hop-diameter at most 6. Recall that each level- i clusterhas diameter at most gL i − = g(cid:15)L i by diameter property. Thus the diameter of each level-( i + 1) clusteris at most 7 g(cid:15)L i + 6 L i ≤ L i , assuming that (cid:15) < g .For the construction time, first note that a maximal 2-hop independent set can be constructed via agreedy linear time algorithm, hence Step 1A can be constructed in O ( |E i | ) time. Steps 1B and 2 can beimplemented within this time in the obvious way. In Step 3, we apply the UWSpanner algorithm, whoseruntime is linear by Theorem 4.1, hence here too we get a runtime of O ( |E i | ). Summarizing, the totalruntime is O ( |E i | ). (cid:3) Let F be a forest with vertex set V − li and edges are MST edges; note that the vertices V − li of F arethe nodes that remain unclustered after Step 1. There could be more than one MST edge connecting twolevel- i clusters; in this case, we keep only one (arbitrary) edge in F . Note that MST edges have weightat most ¯ w and that the subdividing vertices (those subdividing the original MST edges) are included inlevel- i clusters (see Remark 4.4). For the following claim, we can implement this step in O ( mα ( m, n ))time over all levels; this is because once an edge is thrown away at some level i (either as a self-loop or To be precise, we add to E sp the sources of edges in E i ( v ). The hop-diameter of a graph is the maximum hop-distance over all pairs of vertices, where the hop-distance between apair of vertices is the minimum (hop-)length between them.
17 parallel edge), it will not be considered in subsequent levels. Inductively we can thus show that thenumber of considered edges at level i due to this step is the size of V − li corresponding to the previouslevel, and so the overall runtime (up to the α ( m, n )) factor due to Union-Find) is linear in the sum of V − li over all levels, which is a geometric sum, yielding a total runtime of O ( mα ( m, n )). Lemma 4.9. F can be constructed in O ( mα ( m, n )) time. Proof:
Initially, F contains the nodes of K i that remain unclustered after the first three steps. We thenexamine each MST edge e = ( u, v ). We need to check whether r ( u ) (cid:54) = r ( v ) and r ( u ) , r ( v ) ∈ V ( F ), andif so, we add edge ( r ( u ) , r ( v )) to E [ F ]. Using the Union-Find data structure, this can be implementedwithin O ( m · α ( m, n ) = O ( m · α ( m, n )) time overall. The resulting graph F may contain parallel edges.Thus, for each component of F , we compute a spanning tree and remove edges that do not belong to it;the time required for this step is O ( | E ( F ) | ) = O ( m ). Thus, the total runtime of constructing the forest F is O ( mα ( m, n )). (cid:3) We assign each node ν of F a weight w ( ν ) = Dm ( source ( ν )) equal to the diameter of the corre-sponding level- i cluster. We define the augmented weight of a path of F to be the total vertex andedge weight. We define the augmented diameter of a (sub)tree T of F , denoted by Adm ( T ), to be themaximum augmented weight of a path in T . Augmented radius and augmented distance are definedanalogously. A tree T ∈ F is said to be long if Adm ( T ) ≥ L i and short otherwise. We say that a nodeof a long tree T is T -branching if its degree in T is at least 3. (For brevity, we shall omit the prefix T in “ T -branching” whenever this does not lead to confusion.) • Step 2.
Pick a long tree T of F that has at least one T -branching node, say ν . We traverse T starting at ν and truncate the traversal at nodes whose augmented distance from ν is at least L i ,which will be the leaves of the subtree. As a result, the augmented radius (with respect to thecenter ν ) of the subtree induced by the visited (non-truncated) nodes is at least L i and at most L i + ¯ w . We then form a level-( i + 1) cluster from the subtree induced by the visited nodes, removethe subtree from T , and repeat this step until it no longer applies. We add to E sp all the edges of E i incident to (light) nodes of level-( i + 1) clusters formed in this step. Lemma 4.10.
Level- ( i + 1) clusters in Step 2 have diameter at least L i and at most L i when (cid:15) (cid:28) g .Furthermore, Step 2 can be implemented in O ( | V ( F ) | ) time given F . Proof:
By construction, each level-( i + 1) cluster C in Step 2 is a tree of radius at least L i and at most L i + g(cid:15)L i + ¯ w , hence L i ≤ Dm ( C ) ≤ L i + g(cid:15)L i + ¯ w ) ≤ L i since ¯ w < L i and (cid:15) < g .We next show that Step 2 can be implemented efficiently. We maintain a list B of branching nodes of F ; all branching nodes can be found in O ( | V ( F ) | ) time. Initially, nodes in B are unmarked . We thenrepeatedly apply the following three steps:1. Pick a node ν ∈ B ; if ν is marked or no longer is a branching node, remove ν from B and repeatuntil we find a branching, unmarked node. Let T be the tree containing ν .2. We traverse T starting from ν until the augmented radius of the subtree induced by visited nodes,denoted by T ν , is at least L i . It is possible that all nodes of the tree T containing ν are visitedbefore the radius gets to be L i , in which case we have T ν = T .3. Mark every node of T ν , remove T v from F , and repeat these three steps.18learly, maintaining the list B throughout this process can be carried out in O ( | V ( F ) | ) time. Otherthan that, each iteration of these three steps can be implemented in time linear in the number of nodesvisited during that iteration plus the number of edges in F incident to those nodes; note also that once anode is visited, it will no longer be considered in subsequent iterations. It follows that the total runningtime is O ( | V ( F ) | ). (cid:3) Let F be F after Step 2. By the description of Step 2, we have: Observation 4.11.
Every heavy tree of augmented diameter at least L i of F is a (simple) path. We call the paths of augmented diameter at least 6 L i long paths . For each long path P ∈ F , we colortheir nodes red or blue. If a node has distance at most L i or hop distance at most g(cid:15) − P , then we color it red; otherwise, we color it blue. Observe that each red nodebelongs to the suffix or prefix of P ; the other nodes are colored blue.For each blue node ν of P , we assign a subpath I ( ν ) of P , called the interval of ν , which contains allthe nodes within augmented distance (in P ) at most L i and hop distance at most g(cid:15) from ν . By definition,we have: Claim 4.12.
For any blue node ν , |I ( ν ) | ≤ g(cid:15) + 1 and Adm ( I ( ν )) ≤ L i . Furthermore, if |I ( ν ) | < g(cid:15) , Adm ( I ( ν )) ≥ (2 − (3 g + 2) (cid:15) ) L i Proof:
The upper bounds on the number of nodes in I ( ν ) and augmented diameter follow directly fromthe construction. Thus, we focus solely on lower bounding Adm ( I ( ν )) when |I ( ν ) | < g(cid:15) . Let P be thepath containing I ( ν ). Let µ be an endpoint of I ( ν ). Let µ (cid:48) be the neighbor of µ in P \ I ( ν ); µ (cid:48) existssince ν is a blue node. Observe that Adm ( P [ ν, µ (cid:48) ]) ≥ L i since |I ( ν ) | < g(cid:15) . Thus, we have: Adm ( P [ ν, µ ]) ≥ L i − ¯ w − Dm ( µ (cid:48) ) ≥ (1 − ( g + 1) (cid:15) ) L i since ¯ w ≤ εL i and Dm ( µ (cid:48) ) ≤ g(cid:15)L i by the diameter property. Thus, Adm ( I ( ν )) ≥ − ( g + 1) (cid:15) ) L i − Dm ( ν ) ≥ (2 − (3 g + 2) (cid:15) ) L i , as desired. (cid:3) We define the following two sets of edges with both blue endpoints: B far = { ( ν, µ ) ∈ E i \ E sp | color ( ν ) = color ( µ ) = blue and I ( ν ) ∩ I ( µ ) = ∅}B close = { ( ν, µ ) ∈ E i \ E sp | color ( ν ) = color ( µ ) = blue and I ( ν ) ∩ I ( µ ) (cid:54) = ∅} (20)We remark that the endpoints of edges in B far may belong to different paths. • Step 3.
Pick an edge ( ν, µ ) ∈ B far and form a level-( i + 1) cluster C i +1 = { ( ν, µ ) ∪ I ( ν ) ∪ I ( µ ) } .We add to E sp all edges in E i incident to nodes in I ( ν ) ∪ I ( µ ). We then remove all nodes in I ν ∪ I µ from the path or two paths containing ν and µ , update the color of nodes in the new paths, theedge sets B far and B close , and repeat this step until it no longer applies. Lemma 4.13.
Level- ( i + 1) clusters in Step 3 are subgraphs of G [ E sp ] , of diameter at most L i when (cid:15) (cid:28) g . Furthermore, Step 5 can be implemented in O (( | V ( F ) | + |E i | ) (cid:15) − ) time. roof: Since I ( v ) has agumented diameter at most 2 L i by Claim 4.12, the total diameter of a level-( i +1)cluster is at most L i + 2 · L i = 5 L i .Observe that for each path P , coloring all nodes of P can be done in O ( |P| ) time. Since the intervalassociated with each blue node has O ( (cid:15) ) nodes, listing intervals for all blue nodes can also be done in O ( |P| (cid:15) ). For each edge ( ν, µ ) ∈ E i , we can check whether both endpoints are blue in O (1) time and I ( ν ) ∩ I ( µ ) in O ( (cid:15) − ) time. Thus, constructing B far and B close can be done in O ( |E i | (cid:15) − ) time.For each edge ( ν, µ ) ∈ B far picked in Step 5, forming C i +1 = { ( ν, µ ) ∪ I ( ν ) ∪ I ( µ ) } takes O (1) time.When removing any such interval I ν from a path P , we may create two new sub-paths P , P , and thenneed to recolor nodes, specifically, some blue nodes in the prefix and/or suffix of P , P are colored red;importantly, a node’s color may only change from blue to red, but it may not change in the other di-rection. Since the total number of nodes to be recolored as a result of removing such an interval I ν isat most g(cid:15) = O ( (cid:15) ), the total recoloring running time is O ( | V ( F ) | (cid:15) − ). To bound the time required forupdating the edge sets B far and B close throughout this process, we note that edges are never added to B close and B far . Specifically, when a node ν is colored from blue to red, we remove incident edges of ν from B close and B far ; this can be done in O ( (cid:15) ) time per node ν since it has at most g(cid:15) = O ( (cid:15) ) incidentedges. Once a node is added to C i +1 , it will never be considered again. Thus, the total running timerequired for implementing Step 3 is O ( | V ( F ) | (cid:15) − ). (cid:3) Let F be F after Step 3. • Step 4.
Let E li be set of edges incident to (light) nodes of F . We add to E sp every edge in E li \ B close . Let T be a tree of F ; observe that there must be an MST edge connecting T to a nodeclustered in a previous step (see Remark 4.4). – (Step 4A) If T has augmented diameter at most 6 L i , let e be an MST edge connecting T anda node in a level-( i + 1) cluster C . We add both e and T to C . – (Step 4B) Otherwise, the augmented diameter of T is at least 6 L i and hence, it must be a pathby Observation 4.11. In this case, we greedily break T into subpaths of augmented diameterat least L i and at most 2 L i . If the prefix of T is connected to a node in a level-( i + 1) cluster C via an MST edge e , then we add that prefix and e to C ; the same goes for the suffix. Eachof the remaining subpaths becomes an independent level-( i + 1) cluster.This completes our construction. Lemma 4.14.
Level- ( i + 1) satisfies all three properties in Definition 4.3 with g = 27 . Proof:
Inductively, we assume that level- i clusters are subgraphs of G [ E sp ]. Let C be a level-( i + 1)cluster. By examining each step of the construction, we observe that when C is formed, every edge of E i in C is added to E sp . Thus, C is a subgraph of G [ E sp ]; this implies the covering property. The refinementproperty also follows directly from the construction.We now show diameter property. If C is formed in Step 4B and becomes an independent ( i +1)-level cluster, then Dm ( C ) ≤ L i . Otherwise, excluding any augmentations to C due to Step 6,Lemmas 4.8, 4.10, and 4.13 yield Dm ( C ) ≤ L i . At Step 6, we augment C with trees of diameter atmost 6 L i (Step 4A) and/or with suffix or prefix subpaths of diameter at most 2 L i (Step 4B). A crucialobservation is that any augmented tree or subpath is connected by an MST edge to a node that wasclustered to C at a previous step (Steps 1-3), hence all the augmented trees and subpaths are added to C in a star-like way via MST edges. If we denote the resulting level-( i + 1)-cluster by C (cid:48) , then we have Dm ( C (cid:48) ) ≤ Dm ( C ) + 2 ¯ w + 2 · L i ≤ Dm ( C ) + 14 L i ≤ L i ,
20s desired. (cid:3)
We observe that |V i | ≤ |V i − | / i + 1 cluster contains at least two nodes. This implies (cid:80) Ii =1 |V i | = O ( | V | ) = O ( m ) and hence: O ( I (cid:88) i =1 |V i | + I (cid:88) i =1 | E i | ) = O ( m ) (21)Clearly Step 6 can be implemented in time O ( | V ( F ) | + |E i | ) = O ( |V i | + | E i | ). Lemmas 4.6, 4.8, 4.10,and 4.13, the total running time to construct K i and to implement Steps 1-4 is O (( |V i | + | E i | ) (cid:15) − ). Thetime to construct F i over all levels is O ( mα ( m, n )). Thus the total running time is O ( mα ( m, n ) (cid:15) − )). In this section we prove the stretch bound. It suffices to prove it for edges in E i \ E sp .Let e = ( u, v ) be an edge in E i \ E sp , let e be an edge of K i corresponding to e and let ν and µ be e ’sendpoints in K i . Claim 4.15.
If every edge in E i has stretch t ≥ in G [ E sp ] , then every edge in E i has stretch at most t (1 + O ( (cid:15) )) . Proof:
Let consider an edge e ∈ E i \ E i such that e (cid:54)∈ E i (otherwise, e has stretch t ). Then, eitherboth endpoints of e are in the same level- i cluster or there is another edge e (cid:48) with w ( e (cid:48) ) ≤ w ( e ) parallelto e (i.e., connecting the same two nodes in K i ). In the former case, there is a path of weight at most g(cid:15)L i < L i when (cid:15) < g . In the latter case, since e (cid:48) has stretch t , it follows that the shortest path betweenthe endpoints of e (cid:48) is of weight at most t · w ( e (cid:48) ) ≤ tL i in G [ E sp ]. By adding the shortest paths betweenthe endpoints of e to the respective endpoints of e (cid:48) in ν and µ , we obtain a path of weight at most:˜ L i + 2 g(cid:15)L i ≤ t (1 + 2 g(cid:15) ) L i ≤ t (1 + 2 g(cid:15) )(1 + (cid:15) ) w ( e ) = t (1 + O ( (cid:15) )) w ( e ) , (22)as desired. (cid:3) By Claim 4.15, it remains to consider the case that e belongs to E i . Since edge e does not belong to E sp , either the two endpoints of e are heavy or e ∈ B close ; we analyze each case separately.If e ∈ B close , then I ( ν ) ∩ I ( µ ) (cid:54) = ∅ , hence there is a path P of F of weight at most 2 L i between e ’sendpoint. Since e = ( u, v ) belongs to E i , it follows that there is a path of weight at most 2 L i between u and v in E sp . Thus, for any k ≥
2, we have d G [ E sp ] ( u, v ) ≤ L i ≤ (cid:15) ) w ( e ) < (2 k − (cid:15) ) w ( e ) . (23)Otherwise, ν and µ are two different heavy nodes, and then the construction in Step 3 provides a path P with at most (2 k −
1) edges between ν and µ in K i , where all the corresponding sources are added to E sp . Since every edge of E i has weight in ( L i / (1 + (cid:15) ) , L i ], each edge e (cid:48) ∈ P has weight at most (1 + (cid:15) ) w ( e ).Since e = ( u, v ) belongs to E i , it follows that there is a path between u and v in E sp of weight at most:(2 k − (cid:15) ) w ( e ) + (2 k − g(cid:15)L i ≤ (2 k − (cid:15) ) w ( e ) + (2 k − g(cid:15) (1 + (cid:15) ) w ( e ) ≤ (2 k −
1) (1 + (2 g + 1) (cid:15) ) w ( e ) (24)21ummarizing, we have shown that if e = ( u, v ) belongs to E i , there is a path between u and v in E sp of weight at most (2 k −
1) (1 + (2 g + 1) (cid:15) ) w ( e ) = (2 k − O ( (cid:15) )) w ( e ). By Claim 4.15, the stretch ofany edge in E i is (2 k − O ( (cid:15) )). By setting (cid:15) (cid:48) = (cid:15)/c where c is the constant behinds the big-O,we obtain a spanner E sp with stretch at most (2 k − (cid:15) (cid:48) ); in other words, we achieve a stretch of(2 k − (cid:15) ) by increasing the lightness and running time by a constant factor. We will bound the lightness of the spanner using the credit argument introduced by Boradaile, Le andWulff-Nilsen [7]. There are two main diffences in our argument. In [7], BLW used minor-freeness toargue that each node in V hv is responsible for paying the weight of O ( r √ log r ) level- i edges of the greedyspanner; here we use Theorem 4.1 to argue that each node V hv must pay for O ( n k ) level- i edges. Second,we do not take any edge in B close to our spanner and this is because 2 k − > k ≥ B close to (1 + (cid:15) )-spanner in BLW’ssetting. Hence, our overall argument is somewhat simpler.The charging argument starts by allocating each MST (subdivided) edge (of weight at most ¯ w ) c ( (cid:15) ) ¯ w credits, for some constant c ( (cid:15) ) to be determined later. The total amount of allocated credits is: c ( (cid:15) ) ¯ wO ( m ) = w (MST) m c ( (cid:15) ) O ( m ) = O ( c ( (cid:15) ) w (MST)) . (25)The charging argument will transfer some credits allocated to MST edges to level- i clusters, startingfrom level 1. Level- i clusters, after being allocated a sufficient amount of credits from level-( i −
1) clusters(or directly from MST edges in case i = 1), will spend those credits in two different ways : Part of thecredit is used to pay for the level- i spanner edges and the remaining part is transferred to level-( i + 1)clusters. Level-( i + 1) clusters spend the credit by following the same principle, and inductively, once weget to level I , every spanner edge in E sp has been paid for. That is, the total weight of edges in E sp doesnot exceed the total amount of credits that we allocated to MST edges, namely O ( c ( (cid:15) ) w (MST)), hence thefinal lightness will be O ( c ( (cid:15) )). In what follows we carry out this charging argument for c ( (cid:15) ) = Θ( n /k (cid:15) + (cid:15) ).We will maintain the following invariant for each i : Credit Invariant
Each level- i cluster C has at least c ( (cid:15) ) max( Dm ( C ) , L i − ) credits.Recall that the diameter property implies that the diameter of any level- i cluster is upper boundedby gL i − , but its diameter may be much smaller asymptotically than L i − . Since we do not impose alower bound on the diameter of clusters, in the Credit Invariant we lower bound the credit of C ∈ C i bothin terms of the diameter of the cluster and in terms of L i − .For the basis of the induction, we show how to allocate credits to clusters in C in a manner satisfyingthe Credit invariant. Let C be any cluster of C . Recall that C is a subtree of MST. We allocate to C credits of all MST edges in its diameter path D , which is a simple path (there may be more than one) in C realizing the diameter of C . The total amount of credits allocated to C is at least (cid:88) e ∈ D c ( (cid:15) ) ¯ w ≥ (cid:88) e ∈ D c ( (cid:15) ) w ( e ) ≥ c ( (cid:15) ) w ( D ) = c ( (cid:15) ) Dm ( C ) Lm. 4.5 = c ( (cid:15) ) max( Dm ( C ) , L ) . For the induction step, we assume that level- i clusters satisfy the Credit Invariant and prove thatlevel-( i + 1) clusters satisfy it as well. Let C be an arbitrary level-( i + 1) cluster. We shall allocate creditsto C carefully, depending on the exact step and manner in which C has been formed. Note that whenwe say that C is formed in a specific step, for example, Step 1, we mean that C includes the part formedin Step 1 and the possible augmentation in Step 4A.22 C is formed in Step 1. By Lemma 4.8, C contains at least g(cid:15) nodes (i.e., level- i clusters). Wetake half the amount of credits of each level- i cluster in C and allocate them to C ; by the inductionhypothesis, the total amount of credits allocated to C in this way is at least2 g(cid:15) c ( (cid:15) ) L i − / ≥ gc ( (cid:15) ) L i ≥ c ( (cid:15) ) max( Dm ( C ) , L i ) , where the last inequality holds by the diameter property of level-( i + 1) clusters, In this way wehave allocated enough credits to satisfy the Credits invariant, but now we need to account for thelevel- i spanner edges incident on nodes of C . At this stage each level- i cluster, say ν , has at least c ( (cid:15) ) L i − /
2) = c ( (cid:15) ) (cid:15)L i / ν ∈ V hv , it must pay for O ( n k ) level- i edges (of length L i each) added to E sp in Step 3. The leftover credit of ν is sufficient when c ( (cid:15) ) = Ω( n /k (cid:15) ). Any othernode ν of C has low degree, and hence at most g(cid:15) level- i edges incident on it for which it needsto pay; the leftover credit of ν is sufficient when c ( (cid:15) ) = Ω( g(cid:15) ). Recalling that c ( (cid:15) ) = Θ( n /k (cid:15) + (cid:15) )completes the induction step in this case. Remark 4.16.
The argument above can be applied more generally, in any case where C has at least g(cid:15) level- i clusters, regardless of the exact step and manner in which C is formed. We henceforthassume that C consists of less than g(cid:15) level- i clusters. • C is formed in Step 2. By construction, C is a subtree of F . Let D be a diameter path of C ;by Lemma 4.10, Dm ( C ) ≥ L i . The total amount of credits of level- i clusters and MST edges in D is (cid:88) ν ∈ D c ( (cid:15) ) Dm ( ν ) + (cid:88) e ∈ D c ( (cid:15) ) ¯ w ≥ c ( (cid:15) ) Dm ( D ) = c ( (cid:15) ) Dm ( C ) = c ( (cid:15) ) max( Dm ( C ) , L i ) (26)Thus, by allocating the credits of D to C , we maintain the Credit Invariant for C .Since C contains a branching node ν , there must be at least one neighbor of ν , denoted by µ , whichdoes not belong to D . By Remark 4.16, C has less than g(cid:15) level- i clusters. By equally redistributingthe credits allocated to µ to all level- i clusters in C , each will get at least ( c ( (cid:15) ) L i − ) (cid:15) g = c ( (cid:15) ) (cid:15) L i g creditsas leftover. Each level- i cluster then uses its leftover credits to pay for its incident level- i edgesadded to E sp ; recalling that any cluster of C is a low degree node, there are at most g(cid:15) level- i edgesincident to it. Thus, the amount of leftover credits is sufficient when c ( (cid:15) ) = Ω( g (cid:15) ), which is indeedthe case. Remark 4.17.
Equation 26 also implies that for any subpath P of F , the total credit of level- i clusters and MST edges in P is at least c ( (cid:15) ) Adm ( P ) . • C is formed in Step 3. Let D be a diameter path of C . There are two subcases: – Case 1: D does not contain the edge ( ν, µ ) . See Figure 3(a). In this case, D ⊆ F . Thus, as inthe analysis given above for the case that C is formed in Step 2 (see Equation (26)), the creditsof level- i clusters and MST edges in D are sufficient to maintain the Credit Invariant for C .Furthermore, I ( ν ) ∩ D = ∅ or I ( µ ) ∩ D = ∅ . Focusing on I ( ν ) (wlog), if this interval contains g/(cid:15) i -level clusters, then it has at least g(cid:15)c ( (cid:15) ) L i − = gL i credits. Otherwise, by Claim 4.12, I ( ν ) has at least c ( (cid:15) )(2 − (3 g + 2) (cid:15) ) L i ≥ c ( (cid:15) ) L i credits assuming that (cid:15) ≤ g +2 . In any case,we have at least L i credits as leftover. – Case 2: D contains the edge ( ν, µ ) . See Figure 3(b). In this case at least two sub-intervals offour intervals {I ( ν ) \ ν, I ( µ ) \ µ } are disjoint from D . By the same argument as in Case 1, at23 a) (b) e D 𝜈𝜇 e D 𝜈𝜇 Figure 3: Illustration for the argument in Step 3. D is the diameter path and enclosed trees are agumentedto a Step 3 cluster in Step 4A. (a) D does not contain e . (b) (a) D contains e .least c ( (cid:15) )(2 − (3 g + 2) (cid:15) ) L i ≥ L i credits are leftover. By assigning c ( (cid:15) ) L i credits to edge ( ν, µ ),we conclude that credits of level- i clusters and MST edges in D are sufficient to maintain theCredit Invariant for C . Thus, at least c ( (cid:15) )(1 − (3 g + 2) (cid:15) ) L i ≥ c ( (cid:15) ) L i / (cid:15) < g +2) .In both cases, at least c ( (cid:15) ) L i / i cluster in C . Since there are less than g(cid:15) level- i clusters in C , each gets at least c ( (cid:15) ) (cid:15)L i g credits, which suffice to pay for at most g(cid:15) incident level- i edges when c ( (cid:15) ) = Ω( g (cid:15) ).In summary, we have proved the following: Observation 4.18. if C is formed in Steps 1-3, each level- i cluster in C has at least Ω( c ( (cid:15) ) (cid:15) L i ) leftovercredits. Remark 4.19.
We may assume that each level- i cluster in a cluster originated in Steps 1-3 has at least Ω( c ( (cid:15) ) (cid:15) L i ) leftover credits after it pays for spanner edges considered in three cases above. This is because,if a level- i cluster has x , say, leftover credits, we could use x/ credits to pay for these spanner edges –the asymptotic value of c ( (cid:15) ) will not be changed – and retain the remaining x/ credits. This credit willbe used to pay for incident edges of clusters in Step 4 in the argument below. C formed in Step 4. Some of the clusters formed in Step 4 may be augmented to level-( i + 1) clustersthat were formed in Steps 1-3. We first consider the special case where no cluster is formed in Steps 1-3. Claim 4.20.
If no cluster is formed in Steps 1-3, then F = F , and this forest consists of a single (long)path P , and V ( P ) = V ( K i ) . Moreover, every edge e ∈ E sp ∩ E i must be incident to a level- i cluster in P ∪ P , where P and P are the prefix and suffix subpaths of P . Consequently, the leftover credits ofclusters formed in Step 4 can pay for all level- i edges in E sp , up to O ( (cid:15) ) unpaid edges; the total weightof all unpaid edges over all levels is O ( (cid:15) w (MST)) . Proof:
We shall assume that no cluster is formed in Steps 1-3.Since no cluster is formed in Step 1, V ( F ) = V ( K i ). Since no cluster is formed in Step 2, there is nobranching vertex in F , thus F = F and it is a single (long) path P . Since no cluster is formed in Step3, B far = ∅ and F = F is the path P , where V ( P ) = V ( K i ).Since B far = ∅ and edges in B close are not added to E sp , any edge e ∈ E sp ∩ E i must be incident toa red node. The augmented distance from any red node to at least one endpoint of P is at most L i bydefinition, and hence any red node belongs to P ∪ P .24et j ∈ { , } . If | V ( P j ) | ≥ g(cid:15) , then the leftover credits of level- i clusters in P j can pay for its incidentlevel- i edges in E sp (see Remark 4.16). Otherwise, since each level- i cluster in this case is a low degreenode, it is incident to at most g(cid:15) edges of E i , each of which has at least one endpoint in P ∪ P . Itfollows that the total number of unpaid edges is at most g(cid:15) · g(cid:15) −
1) = O ( (cid:15) ). Since level- i edges haveweight at most L i , the total weight of all unpaid edges over all levels is: O (cid:18) (cid:15) (cid:19) I (cid:88) i =0 L i = O (cid:18) (cid:15) (cid:19) L I I (cid:88) i =0 (cid:15) i = O (cid:18) (cid:15) (cid:19) w (MST)) . (cid:3) Having proved Claim 4.20, we henceforth assume that there is at least one cluster formed in Steps1-3. We call level-( i + 1) clusters formed from prefix or suffix of long paths affix clusters .Consider a cluster X formed in Step 4, and as above denote by P and P the prefix and suffixsubpaths of P .There are several cases and sub-cases to consider.Suppose first that X is a subpath of a long path P in F , where L i ≤ Adm ( X ) ≤ L i . As in theanalysis given above for the cases that C is formed in earlier steps (see in particular Equation (26)), thecredits of level- i and MST edges in X suffice to maintain the Credit Invariant for X . We argue that thelevel- i edges incident to X can be paid for by other clusters.If X is an affix cluster, w.l.o.g. X = P , let P be the other affix. Claim 4.21. P must be added to a cluster formed in Steps 1-3 in Step 4B. Proof:
By Observation 4.11, every tree T (in Step 4B) is a simple path, and so is P . Moreover it doesnot have any branching node (otherwise we would take care of it at Step 2). As observed in Step 4, theremust be an MST edge connecting P to a node clustered in a previous step. Consequently, P must beconnected by an MST edge to a cluster that was formed in Steps 1-3, except when there is no clusterformed in Steps 1-3; this case is already handled by Claim 4.20. If any such MST edge were to toucha non-affix cluster of P , P could not be a simple path (and would have at least one branching node),which is a contradiction to Observation 4.11. It follows that either the prefix or the suffix clusters areconnected by an MST edge to a node clustered in a previous step, and therefore at least one of the affixclusters must be added to a cluster formed in Steps 1-3. (cid:3) By Claim 4.21, P is added to a cluster formed in Steps 1-3. By the diameter property, the diameterof each level- i cluster is at most gL i − and each MST edge has weight at most L i − , hence |V ( P ) | ≥ Adm ( P )2 gL i − ≥ L i gL i − = Ω (cid:18) (cid:15) (cid:19) (27)Recall that we only use half of the leftover credits of each level- i cluster in P to pay for its incidentlevel- i edges (see Remark 4.19).Thus, by Observation 4.18, the amount of remaining leftover credits of V ( P ) is at least:Ω (cid:18) (cid:15) (cid:19) · Ω (cid:0) c ( (cid:15) ) (cid:15) L i (cid:1) = Ω ( c ( (cid:15) ) (cid:15)L i ) (28)We use this amount of credits to pay for edges incident to X ; there are at most ( g(cid:15) ) = O ( (cid:15) ) suchedges. Thus, it is sufficient when c ( (cid:15) ) = Ω( (cid:15) ).It remains to consider the case when X is not an affix cluster. In this case, we claim that every edgeincident to a level- i cluster in X is already paid for.25 laim 4.22. If X is a non-affix cluster, then for every edge e ∈ E sp ∩ E i incident to a level- i cluster in X , e is either incident to an affix cluster or a cluster formed in Steps 1-3. Proof:
Suppose that e is not incident to a cluster formed in Steps 1-3. Then e must be incidentto a level- i cluster in a long path P of F . Since e (cid:54)∈ B close , at least one of the endpoints, say ν , of e must have red color, i.e., ν ∈ P ∪ P , where P and P are the prefix and suffix of P . The claim follows. (cid:3) In all cases, by choosing c ( (cid:15) ) = Θ( n /k (cid:15) + (cid:15) ), we can pay for all edges in E sp . This implies lightnessbound in Theorem 4.2. In this section, we prove Theorem 1.3. We use the same set up in the previous section. The followingtheorem is analogous to Theorem 4.2.
Theorem 4.23.
Given any δ > , there is an O (cid:15) ( nα ( n )) time algorithm that finds a subset of edges E sp ⊆ G such that w ( E sp ) = O r ( r(cid:15) + (cid:15) ) w (MST) and: d G [ E sp ] ( u, v ) ≤ (2 k − (cid:15) ) d G ( u, v ) (29) for any edge ( u, v ) ∈ E (cid:91)δ . By applying Theorem 4.23 for O ( (cid:15) log (cid:15) ) different values of δ , we obtain Theorem 1.3; see the argumentin the previous section.In proving Theorem 4.23, we use the same set up in the previous section until the construction oflevel-( i + 1) clusters That is, Lemma 4.5 holds. Level- ( i + 1) clusters The constructions in Step 1A and 1B are exactly the same. In Step 1C, we dothe following: • Step 1C.
Add to E sp every edge incident to nodes in V + hv .Recall that in Step 1C for general graphs, we applied the unweighted spanner construction with stretch2 k − K i [ V hv ]; this guarantees that on average, each node ν ∈ V hv is incident to O ( n k ) edges. As aresult, the overal stretch is (2 k − (cid:15) ). In minor-free graphs, we aim for stretch (1 + (cid:15) ) and hence,we may need to retain all edges of K i [ V hv ]. The key observation is that K i [ V hv ] is a minor of the originalgraph G and hence is K r -minor-free. This implies that on average, each node ν ∈ V hv is incident to ˜ O ( r )edges.Steps 2 and 3 are exactly the same again. However, in Step 4 of the fast construction for generalspanners, we do not take any edge of B close to E sp ; consequently, the stretch bound incurred by not takingsuch edges to the spanner is 2(1 + (cid:15) ), but this does not exceed the required bound of t = (2 k − (cid:15) )(see Equation 23). For minor-free graphs, however, we aim for stretch t = 1 + (cid:15) , hence we cannot simplyignore edges in B close . (Recall that for every edge ( ν, µ ) ∈ B close , I ν ∩ I µ (cid:54) = ∅ ; in this case, I ν and I µ aresubpaths of the same path P of F .) To guarantee a stretch of t = 1 + (cid:15) , we redefine the set far edges B (cid:48) far and the set of close edges B (cid:48) close as follows: B (cid:48) close = { ( ν, µ ) ∈ E i \ E sp | ( ν, µ ) ∈ B close and (1 + 6 g(cid:15) ) w ( ν, µ ) > Adm ( P [ ν, µ ]) }B (cid:48) far = { ( ν, µ ) ∈ E i \ E sp | ( ν, µ ) ∈ B far or ( ν, µ ) ∈ B close \ B (cid:48) close } (30)26 Step 3B.
Remove any edge e = ( ν, µ ) ∈ B close from B close such that (1 + 6 g(cid:15) ) w ( e ) > w ( P [ ν, µ ]).For any other edge e = ( ν, µ ) ∈ B close , we form a level-( i + 1) cluster C i +1 = ( ν, µ ) ∪ I ν ∪ I µ . Weadd to E sp all edges in E i incident to nodes in I ( ν ) ∪ I ( µ ). We then remove all nodes in I ν ∪ I µ from the path(s) containing ν and µ , update the color of nodes in the new paths, the edge set B close ,and repeat this step until it no longer applies.The last step, Step 4, is identical to the construction for general graphs. We note that Lemma 4.14 stillholds in this setting as new clusters in Step 3B has diameter at most 5 L i (the same proof in Lemma 4.13applies here). Lemma 4.24.
The total running time to find E sp is O (cid:15) ( nα ( n )) where α ( . ) is the inverse Ackermannfunction. Proof:
Step 1C can be straightforwardly implemented in O ( |E i | ) time. Thus, the running time of thefirst three steps is O ( |E i | ) (see Lemma 4.8). Step 2 is unchanged, so Lemma 4.10 remains valid. For Step3B, we note that P [ ν, µ ] ⊂ I ν ∪ I µ and hence | V ( P [ ν, µ ]) | ≤ |I ν | + |I µ | = O ( g(cid:15) ). Thus, for each edge( ν, mu ) ∈ B (cid:48) close , computing the weight of | V ( P [ ν, µ ]) | can be implemented in O ( g(cid:15) ) = O ( (cid:15) ) time. That is,Lemma 4.13 holds for Step 3B as well. Thus, the total running time is still O ( mα ( n ) (cid:15) − ) = O ( nα ( n ) (cid:15) − )(see Equation 21). (cid:3) We next show that the stretch of the spanner is in check.
Lemma 4.25.
The stretch of G [ E sp ] is O ( (cid:15) ) . Proof:
Let e be an edge in E i \ E sp and e is its corresponding edge in K i . By Claim 4.15, we only needto show that the stretch of e ∈ E i is at most (1 + O ( (cid:15) )). However, the only case when e ∈ E i \ E sp is whenit is removed from B close in Step 3B since (1+6 g(cid:15) ) w ( e ) > w ( P [ ν, µ ]). Hence, the stretch of e is 1+ O ( (cid:15) ). (cid:3) Lightness analysis
First, observe that:
Observation 4.26. K i [ V hv ] has ˜ O ( r ) |V hv | edges. Proof: K i [ V hv ] is a minor of G and hence, it excludes K r as a minor. Thus, the observation followsfrom the sparsity bound of K r -minor-free graphs [36]. (cid:3) We use the credit argument and guarantee the same Credit Invariant for all level- i clusters. We nowshow the invariant for level-( i + 1) clusters; let C be such a cluster. The arguments for Steps 2 and 4 areexactly the same and hence we do not repeat here; for Step 4, we need Observation 4.18 which can beseen in the following argument. • C is formed in Step 1 Since our construction is exactly the same in Steps 1A and 1B, bythe same argument, after maintaining Credit Invariant, each level- i cluster, say ν , has at least c ( (cid:15) ) L i − /
2) = c ( (cid:15) ) (cid:15)L i / ν ∈ V hv , it must pay for ˜ O ( r ) level- i edges (of length L i each) added to E sp in Step 1C. The leftover credit of ν is sufficient when c ( (cid:15) ) = ˜Ω( r(cid:15) ). • C is formed in Step 3B Let D be the diameter path of C . Recall that C contains only one level- i edge e = ( ν, µ ). Let P e = ( ν, e , µ ). Observe that: w ( P [ ν, µ ]) − w ( P e )) > s(cid:15) · w ( e ) − w ( ν ) − w ( µ ) > g(cid:15)(cid:96) i / − g(cid:15)(cid:96) i = g(cid:15)(cid:96) i (31)27e claim that if D contains both ν and µ , then it must contain e , since otherwise, D must contain P [ ν, µ ] and by replacing P [ ν, µ ] by P e we obtain a shorter path by Equation 31. Our goal is toargue that the credit of at least one level- i is leftover after C maintains Invariant 1. We considertwo cases: – Case 1 If D does not contain edge e , then (a) D ⊆ F and (b) |{ ν, µ } ∩ D | ≤
1. Property (a)implies that credits of level- i clusters and MST edges in D are sufficient to maintain Invariant1 for C . Property (b) implies that the credit of at least one level- i cluster in { ν, µ } is leftover. – Case 2 If D contains e , then we assign c ( (cid:15) ) w ( P e ) credits of P [ ν, µ ] to P e . Thus, credits oflevel- i clusters and MST edges in D are sufficient to maintain Credit Invariant for C . ByEquation 31, there are still c ( (cid:15) ) g(cid:15)(cid:96) i leftover credits which is at least the credit of at any level- i cluster.In both cases, at least c ( (cid:15) ) (cid:15)L i − credits are leftover that we can equally distribute to every level- i clusters in C ; each gets at least at least c ( (cid:15) ) (cid:15) L i g credits as leftover and hence Observation 4.18 follows.The leftover credit of each level- i cluster can pay for the incident level- i edges when c ( (cid:15) ) = Ω( g (cid:15) ).In all the cases, by choosing c ( (cid:15) ) = ˜Θ( r(cid:15) + (cid:15) ), we can pay for all edges in E sp ; this implies Theorem 4.23. In this section, we present a unified approach to constructing light spanners. Interestingly, there is aquantitative difference between stretch factors t ≥ (cid:15) for (cid:15) <
1. As a result, the arguments forthese stretch factors are also quite different from each other. t ≥ In this section, we prove Theorem 1.11. We start by giving high level ideas.
We first observe that the fast construction in Section 4.3 can be used to derive a weaker version ofTheorem 1.11 with worst dependency on (cid:15) : simply replace
UWSpanner ( K i [ V hv ] , k −
1) by O G,t ( T, L i and hence, Equation 19 by: (cid:16) ∪ ν ∈V + hv \V hv E i ( ν ) (cid:17) (cid:91) E ( O G ( T, L i , , t )) (32)It is not hard to see that the stretch of the spanner is at most t (1 + O ( (cid:15) )); by scaling (cid:15) (cid:48) = (cid:15)c for someconstant c , we get back stretch t (1 + (cid:15) (cid:48) ). However, the lightness would be much worst.˜ O ( Ws O G (cid:15) + 1 (cid:15) ) (33)Our goal to improve the lightness of (1 + (cid:15) ) t -spanners in to: O ( Ws O G (cid:15) ) ∀ t ≥ (cid:15) factor and shave a (cid:15) factor in the first term ofEquation 33. The idea is the following. 28n Step 1C of the efficient construction in Section 4.3, we use the linear time algorithm of Halperinand Zwick to construct a (2 k − i edge must have almost the same weight – the weights are in range( L i (cid:15) , L i ]– so that we can disregard the weights in the construction. If running time is not an issue, itsuffices to guarantee that level- i edges have weights in the range ( L i / , L i ]. Specifically, we can define: E δ = { E , . . . , E I } where E i = { e ∈ E (cid:48)(cid:48) | w ( e ) ∈ ( L i , L i ] } (35)This definition E δ reduces the number of possible values of δ from O ( (cid:15) log (cid:15) ) as in the proof of Theorem 1.5to O (log (cid:15) ). That is, we are able to shave the first O (log (cid:15) ) factor and bring the lightness down to˜ O ( Ws O G (cid:15) + (cid:15) ).Next we reduce the additive factor (cid:15) to (cid:15) . In the lightness analysis in Section 4.3, the factor (cid:15) is dueto Step 2: each Step 2 cluster C is only guaranteed to have the credit of one level- i cluster as leftover (thebranching node). By redistributing the credit of this node to all other nodes in C , each has O ( c ( (cid:15) ) (cid:15) L i )leftover credits which are equivalent to Θ( (cid:15) ) fraction of its original credit. To shave a (cid:15) factor in theadditive term, we need to group level- i clusters in a way that each node has Θ(1) fraction of its credits asleftover. To this end, we use a more involved tree clustering procedure in our prior work [35]: the mainidea is to carefully construct sub-trees of F in a way that at least the credit of a constant fraction oflevel- i clusters in each level-( i + 1) cluster is leftover. Thus, the additive term is improved from (cid:15) to (cid:15) .Now suppose that each level- i cluster ν has at least Θ(1) of its original credit as leftover; the preciseamount is Θ( (cid:15)c ( (cid:15) ) L i ). By definition of light nodes, ν could be incident to Θ( (cid:15) ) edges. That implies theleftover credit can only pay for all the incident edges when c ( (cid:15) ) = Ω( (cid:15) ). To shave the last (cid:15) factor, wehave two additional ideas. First, we show that for each level-( i + 1) cluster C , we can remove all but aconstant number (independent of (cid:15) ) of vertices with both endpoints in C (Step 5B); in this argument, wecrucially make use of the fact that t ≥
2. Second, we apply post-processing to guarantee that the totalnumber of level- i incident to nodes in C is O ( (cid:15) ) (Step 5A). The two observations imply that each level- i cluster needs to pay for at most O (1) edges on average . That is, we can choose c ( (cid:15) ) = Θ( (cid:15) ). The finallightness will thus be O ( Ws O G (cid:15) + (cid:15) ) = O ( Ws O G (cid:15) ). Recall that E δ is defined in Equation 35 and E (cid:91)δ = ∪ Ii =1 E i . The following theorem improves the lightnessbound in Theorem 4.2. Theorem 5.1.
Given any δ > , in polynomial time, one can find a subset of edges E sp ⊆ G such that w ( E sp ) = O ( Ws O G,t (cid:15) ) w (MST) and: d G [ E sp ] ( u, v ) ≤ t (1 + (cid:15) ) d G ( u, v ) (36) for any edge ( u, v ) ∈ E (cid:91)δ . We next argue that Theorem 5.1 implies Theorem 1.11.
Proof: [Proof of Theorem 1.11] Let J = (cid:100) log ( (cid:15) ) (cid:101) . For each j ∈ [1 , J ], let δ j = 2 j . Observe that: E = ∪ Jj =1 E (cid:91)δ j (37)Let S = ∪ j ∈ [1 ,J ] E ( j ) sp where E ( j ) sp is a spanner for edges in E (cid:91)δ j . By Theorem 5.1, we have w ( S ) = O (log 1 (cid:15) ) · O ( Ws O G,t (cid:15) ) w (MST) = ˜ O ( Ws O G,t (cid:15) ) w (MST) (38)29inally, by Theorem 5.1, the stretch of every edge e ∈ E is at most t (1 + (cid:15) ), hence S ∪ S is a t (1 + (cid:15) )-spanner of G . (cid:3) For the rest of this section, we focus on proving Theorem 5.1. We follow the same approach as inSection 4.3: construct a hierarchy of clusters (see Definition 4.3) and add edges to E sp during the clusterconstruction. The construction of level-1 clusters is exactly the same, and hence we do not repeat here.Instead, we focus directly on constructing level-( i + 1) clusters. Level- ( i + 1) clusters In Steps 1-4 below, we construct a set of candidate level-( i + 1) clusters. Asthe name suggests, some candidate clusters become independent level-( i + 1) clusters, and some will bemerged together to make a bigger level-( i + 1) cluster.Let ζ to be a small constant – ζ = works. Recall that K i ( V i , E i ) is the cluster graph. Heavynodes have degree in K i at least gζ(cid:15) and light nodes otherwise. (We have an additional factor ζ in thedenominator in the definition of heavy nodes in this section.) V hv ( V li ) is the set of heavy (light) nodes.Let V + hv = V hv ∪ N [ V hv ] and V − li = V i \ V + hv . For each node ν ∈ V ( K i ), the set of edges incident to ν isdenoted by E i ( v ). For a subset of nodes V ⊆ V ( K i ), we denoted by E i ( V ) = ∪ ν ∈V E i ( ν ) the subset of edgesincident to at least one node in V . • Step 1
We use the same construction in Steps 1A and 1B in Section 4.3.The goal of Step 1, we group all heavy nodes and their neighbors to candidate level-( i + 1) clusters.However, we delay adding edges to E sp , i.e, we do not have Step 1C here. This is because, if we add to E sp every edge incident to each (light) node ν ∈ V + hv \ V hv as in Step 1C, c ( (cid:15) ) needs to be Ω( (cid:15) ) since ν has at most c ( (cid:15) ) (cid:15)L i credits (assuming the Credit Invariant) while the total weight of edges incident to ν is O ( g(cid:15) ) L i . In fact, we need to be more careful in choosing edges to add to E sp : if there are so manyedges, Ω( ε ) say, incident to a level- i cluster, we will add to the set of nodes for which we construct asparse spanner oracle, and hence each node only need to pay for O ( Ws O ) L i weight. This reduces the lowerbound of c ( (cid:15) ) to O ( Ws O (cid:15) ).Let F be the forest of level- i clusters after Step 1 – nodes of F are unclustered light nodes of K i and edges of F are MST edges. We do not reuse Step 2 in the efficient construction as the resultingcluster only has the credit of one node as leftover; this causes the value of c ( (cid:15) ) must be at least Ω( (cid:15) ).Instead, we use a more sophisticated construction (Lemma 5.2 below) in [35] as a preprocessing so thatin following steps, we can guarantees that credits of at least Ω( (cid:15) ) level- i clusters are leftover. Lemma 5.2 (Section 6.3.2 in [35]) . Let T be a tree with vertex weight and edge weight. Let L, η, ζ be threeparameters where η (cid:28) ζ (cid:28) . Suppose that for any vertex v ∈ T and any edge e ∈ T , w ( e ) ≤ w ( v ) ≤ ηL .There is a polynomial time algorithm that finds a collection of vertex-disjoint subtrees U = { T , . . . , T k } of T such that:(1) Adm ( T i ) ≤ ζL for any ≤ i ≤ k .(2) B T ⊆ ∪ i ∈ [ k ] V ( T i ) where B T is the set of T -branching vertices of T .(3) Each T i contains a T i -branching vertex r i and three vertex disjoint paths P , P , P that have r i asthe same endpoint, such that Adm ( P ∪ P ) = Adm ( T i ) and Adm ( P \ { r i } ) = Ω( Adm ( T i )) .(4) Let T be obtained by contracting each subtree of C into a single node. Then each ˆ T -branching nodecorresponds to a sub-tree of augmented diameter at least ζL . Recall that augmented weight of a path is the total vertex weight and edge weight of the path. Wenote that the collection of subtrees U in Lemma 5.2 may not contain every vertex of T .30 Step 2
For every tree
T ∈ F of augmented diameter at least ζL i , we construct a collection ofsubtree U T = {T , . . . , T k } of T using Lemma 5.2 with η = g(cid:15) and ζ . For each subtree T j ∈ U T where j ∈ [1 , k ], if Adm ( T j ) ≥ ζL i , we make T j a candidate level-( i + 1) cluster.We choose the augmented diameter threshold ζL i , instead of L i as in the efficient construction, toprocess trees in F . As we will see later, having a small threshold help us in showing that there are onlya few level- i edges between nodes in the same level-( i + 1) cluster.By Item (2) of Lemma 5.2, we can show that every Step 2 cluster has credits of at least Ω( (cid:15) ) clustersas leftover. Again, each node of T j could be incident to Ω( g(cid:15) ) level- i edges. In such case, nodes in T j willbe added to X . We then can show that every level- i cluster grouped in Step 2 that is not added to X only need to pay for O (1) level- i edges on average.Let F be the forest obtained from F as follows. For each tree T ∈ F , let ¯ U T ⊆ U T be the set ofsubtrees that are unclustered in Step 2. Let ¯ U F = ∪ T ∈F ¯ U T . F is obtained from F by (1) removingevery clustered node in Step 2 from F and (2) contracting each subtree T (cid:48) ∈ ¯ U F into a single node,called a contracted node , with weight equal to the augmented diameter of T (cid:48) . Note that there might benodes of F that are not in any tree of ¯ U F ; we say such a node noncontracted . Claim 5.3.
Every tree in F of augmented diameter at least ζL i is a path. Proof:
Let T be a tree of F of augmented diameter at least ζL i . Suppose that T has a branchingnode, say ¯ ν . By Item (2) in Lemma 5.2, ¯ ν must be a contracted node. By Item (4) in Lemma 5.2, theaugmented diameter of the tree T ¯ ν corresponds to ¯ ν must be at least ζL i . However, by the construction ofStep 2, T ¯ ν will be clustered and hence removed in the construction of F ; this contradicts that ¯ ν is in F . (cid:3) To avoid confusion with nodes that are used to refer to level- i clusters, we called nodes in F supern-odes . Step 3 of our construction is applied to F . We call paths in F of augmented diameter at least ζL i long paths . For each long path P ∈ F , we color their supernodes red or blue: a supernode has distanceat most L i from at least one of the endpoints of P has blue color and otherwise, has red color . (It couldbe that every node in P has red color.)For each blue supernode ¯ ν of P , we assign a subpath I (¯ ν ) of P , called the interval of ¯ nu , whichcontains all the supernodes within augmented distance (in P ) at most L i from ¯ ν . By using the sameargument in Claim 4.12, we have: Claim 5.4.
For any blue supernode ¯ ν , (2 − (3 ζ + 2 (cid:15) )) L i ≤ Adm ( I (¯ ν )) ≤ L i . We define the following two sets of edges with both blue endpoints: B far = { (¯ ν, ¯ µ ) ∈ E i \ E sp | color (¯ ν ) = color (¯ µ ) = blue and I (¯ ν ) ∩ I (¯ µ ) = ∅}B close = { (¯ ν, ¯ µ ) ∈ E i \ E sp | color (¯ ν ) = color (¯ µ ) = blue and I (¯ ν ) ∩ I (¯ µ ) (cid:54) = ∅} (39) • Step 3.
Pick an edge (¯ ν, ¯ µ ) ∈ B far and form a candidate level-( i + 1) cluster A = { (¯ ν, ¯ µ ) ∪ I (¯ ν ) ∪I (¯ µ ) } . We then add (¯ ν, ¯ µ ) to E sp . Finally, we remove all supernodes in I (¯ ν ) ∪ I (¯ µ ) from the pathor two paths containing ν and µ ; update the color of supernodes in the new paths, the edge sets B far and B close ; and repeat this step until it no longer applies.Let F be F after Step 3. Step 4 below is similar to Step 4 in Section 4.3; the main difference is thediameter threshold in Step 4A, which is ζL i instead of 6 L i . In Section 4.3, a blue node must be in hop distance g(cid:15) from at least one of the endpoints of P ; this constraint is used toquickly color nodes. In this section, running time is not the main concern so we remove this constraint. Step 4.
Let T be a tree of F ; observe that there must be an MST edge connecting T to asupernode clustered in a previous step (see Remark 4.4). – (Step 4A) If T has augmented diameter at most ζL i , let e be an MST edge connecting T anda node in a level-( i + 1) cluster C . We add both e and T to C . – (Step 4B) Otherwise, the augmented diameter of T is at least ζL i and hence, it must be apath by Claim 5.3. In this case, we greedily break T into subpaths of augmented diameter atleast ζL i and at most 3 ζL i . If the prefix of T is connected to a node in a level-( i + 1) cluster C via an MST edge e , then we add that prefix and e to C ; the same goes for the suffix. Eachof the remaining subpaths becomes a candidate level-( i + 1) cluster.We still refer to a candidate cluster initially formed in Step j for some j ∈ [4] as a candidate Step j cluster even though it is augmented in Step 4A. Lemma 5.5.
Let C be a candidate level- ( i + 1) cluster. If C is initiated in Steps 1 or 3, Dm ( C ) ≤ L i .Otherwise, Dm ( C ) ≤ ζL i . Proof: If C is a Step 4B cluster, then clearly Dm ( C ) ≤ ζL i . Observe that the augmentation in Step 4Aincreases the diameter of each cluster by at most 2 ¯ w + 2 ζL i ≤ ζ + (cid:15) ) L i ≤ ζL i as (cid:15) < ζ . Thus, if C is initiated in Step 2, Dm ( C ) ≤ ζL i . If C is initiated Steps 1 or 3, by the same argument in Lemma 4.8and Lemma 4.13, Dm ( C ) ≤ L i + 4 ζL i ≤ L i . (cid:3) After Step 4, all level- i clusters are grouped into level-( i + 1) clusters. However, we have not doneyet. We can show that the amount of leftover credit, if any, of a level- i cluster is at least Ω( c ( (cid:15) ) L i ).Nevertheless, this is not sufficient for having c ( (cid:15) ) = Θ( Ws O (cid:15) ) since each (light) level- i cluster can beincident to up to Θ( (cid:15) ) level- i edges. It is important to note that some level- i clusters, such as those inStep 4B, do not have leftover credits since otherwise, we simply call the sparse spanner oracle on level- i clusters so that, on average, each level- i cluster only needs to pay for O ( Ws O L i ) weight. For those whodo not have leftover credits, their incident level- i edges must be paid for by other clusters.Our idea is the following: If a level-( i + 1) cluster C is incident to more than gζ(cid:15) level- i edges – alevel-( i + 1) cluster C is incident to an edge if at least one node in C is incident to the edge– we canmerge C with neighboring clusters so that the resulting cluster has more than gζ(cid:15) nodes (and the totaldiameter is still bounded by gL i for an appropriate choice of g ). We then can show that each node in thenew cluster has at least Ω( c ( (cid:15) ) L i − ) credits. ( The argument similar to the argument in Remark 4.16; theonly difference is the factor ζ in the denominator and this is due to a minor change in the credit invariantbelow.) If C is incident to less than gζ(cid:15) level- i edges, with additional effort, we can show that C has Ω( (cid:15) )nodes (see the argument for Equation 27), and hence the on average, each node in C only needs to payfor O (1) number of level- i edges as desired. In this argument, we implicitly assume that the number oflevel- i edges whose both endpoints are in C is O (1); such edges are said to be inside C . To this end, wewill argue that, except for Step 1 clusters, either there is no level- i edge inside C or we can discard allbut O (1) of them.Let C be a candidate level-( i + 1) cluster. We call C a heavy candidate cluster if it contains at least gζ(cid:15) level- i clusters – in particular, Step 1 clusters are heavy – or it is connected by level- i edges to at least gζ(cid:15) other candidate clusters; otherwise, we call C a light candidate cluster. Let K i be a simple clustergraph where V ( K i ) are candidate clusters and there is an edge between two vertices if there is at leastone level- i edge between two corresponding candidate clusters. Note that there could be more than oneedges between two candidate clusters but we only keep (arbitrary) of them in K i ; as a result, a heavy Recall hat each MST edge has weight at most (cid:15)L i ≤ ζL i and each supernode has weight at most ζL i . gζ(cid:15) incident edges in K i . We refer to vertices of K i as mega nodes .Let V hv be the set of heavy candidate clusters and V + hv = V hv ∪ N K i [ V hv ]. • Step 5.
Let X = ∅ . This step has three mini steps. – (Step 5A) We apply the same construction in Steps 1A and 1B in Section 4.3 to construct acollection of vertex-disjoint subtrees of K i , denoted by {T , . . . , T k } , where each tree T j hashop-diameter at most 6, and ∪ j ∈ [ k ] V ( T j ) = V + hv . For each tree T j with j ∈ [ k ], we do thefollowing: (i) make each tree T j a level-( i + 1) clusters, (ii) add level- i edges of T j to E sp and(iii) add level- i clusters in T j to X . – (Step 5B) For each light candidate cluster C ∈ V ( H i ) \ V + hv , we consider the set of level- i edgesincident to at least one vertex in C in an arbitrary linear order. For each edge e = ( u, v ) inthe order, if t · w ( e ) ≤ d G [ E sp ] ( u, v ) we add e to E sp . – (Step 5C) For each level- i cluster in X that is incident to at least one level- i edge, pick an(arbitrary) subdividing vertex. Let T be the set of picked vertices. We then update E sp : E sp ← E sp ∪ E ( O G,t ( T, L i )) (40)This completes our construction. Lemma 5.6.
Level- i + 1 clusters have diameter at most gL i for g = 125 L i . Proof:
Let C be a level-( i + 1) cluster. If C is formed in Step 5B, then Dm ( C ) ≤ L i by Lemma 5.5.Otherwise, C is formed by a tree T of hop diameter at most 6 in Step 5A; in this case, by Lemma 5.5, Dm ( C ) ≤ w + 7 · L i ≤ L i . (cid:3) Lightness analysis
We use the same set up in Section 4.3: each (subdivided) MST edge ¯ w is allocated c ( (cid:15) ) ¯ w credits so that the total allocated credit is O ( c ( (cid:15) )MST). We will use these credits to allocate toclusters and pay for spanner edges added to E sp . We will maintain the following (slightly different)invariant: Credit Invariant 2
Each level- i cluster C has at least c ( (cid:15) ) max( Dm ( C ) , ζL i − ) credits.The credit lower bound of each cluster in Credit Invariant 2 is ζL i − instead of L i − since clusters inStep 4B could have diameter at most ζL i − .Now we assume that level- i clusters satisfy the Credit Invariant and prove that level-( i + 1) clusterssatisfy it as well. (The base case is the same as the base case in the analysis in Section 4.3.) Let C be anarbitrary level-( i + 1) cluster. Claim 5.7. If C is formed in Step 5A, it contains at least gζ(cid:15) level- i clusters. Proof:
Let T be the subtree of K i that makes up C . By the construction in Steps 1A and 1B inSection 4.3, T contains a heavy candidate cluster, say ¯¯ nu , and all of its neighbors. If ¯¯ nu is formed in Step1, then it contains at least gζ(cid:15) level- i clusters and hence the same holds for C . Otherwise, by definition,¯ ν has at least gζ(cid:15) neighbors in K i . Thus, the claim holds. (cid:3)
33e now show that except Step 5B clusters that are initiated in Step 4B, other level-( i + 1) clusterscan maintain their credit invariant and their level- i clusters have O ( c ( (cid:15) ) L i − ) leftover credits each. Lemma 5.8.
Let C be a level- ( i + 1) cluster. If C is not initiated in Step 4B, then level- i clusters in C ,after maintaining Credit Invariant 2 for C , have Ω( c ( (cid:15) ) L i − ) leftover credits each. Proof:
We prove by case analysis. • C is formed in Step 5A. By Credit Invariant 2, each level- i cluster in C has at least c ( (cid:15) ) ζL i − credits. Thus, the total credit of half the number of level- i clusters in C , of value at least gζ(cid:15) c ( (cid:15) ) ζL i − ≥ gc ( (cid:15) ) L i ≥ c ( (cid:15) ) max( Dm ( C ) , ζL i − ), is sufficient to maintain Credint Invariant 2.We then redistribute the credit of the remaining half to all level- i clusters in C , each has at least c ( (cid:15) ) ζL i − / • C is a candidate cluster initiated in Step 2. Let
T ⊆ F be the part of C that is formed inStep 2; C is obtained from T by (possible) augmentation in Step 4A. By Item (2) of Lemma 5.2,there is a T -braching node ν and three paths P , P , P sharing ν as the same endpoints such that Adm ( P j \ { ν } ) = Ω( Adm ( T ))) = Ω( ζL i ) for j ∈ [3].For each tree T augmented in Step 4A, by uncontracting supernodes in T , we obtain a subtree of F of augmented diameter at most ζL i . Thus, C remains to be a subtree of F after the augmentationin Step 4A since each tree is augmented to T via MST edges. Let P ⊆ F be the diameter path of C ; credits of nodes and edges of P suffices to maintain Credit Invariant 2 of C (see Remark 4.17).Since ν is T -branching, there must exist j ∈ [3] such that P ∩ P i ⊆ { ν } . Thus, the credits of nodesand MST edges in P is leftover; the total leftover credit is at least c ( (cid:15) ) Adm ( P i \ { ν } ) = Ω( c ( (cid:15) ) ζL i )(see Remark 4.17). Since C is light, it has at most gζ(cid:15) level- i clusters. Thus, by redistributing theleftover credit to all level- i clusters in C , each gets at least Ω( c ( (cid:15) ) (cid:15)L i ) = Ω( c ( (cid:15) ) L i − ) credits asleftover. • C is a candidate cluster initiated in Step 3. The argument is exactly the same as the argument inSection 4.3.3. (cid:3)
We now can pay for edges add to E sp in Step 5C. Claim 5.9.
Level- i clusters in X can use half their leftover credits to pay for edges of O G ( T, L i , , t ) inEquation 40 when c ( (cid:15) ) = Ω( Ws O (cid:15) ) . Proof:
Recall that level- i clusters in X are in Step 5A clusters. By Lemma 5.8, each level- i cluster in X has at least Ω( c ( (cid:15) ) L i − ) leftover credits. By taking out half the leftover credit of clusters in X , thetotal credit taken is Ω( c ( (cid:15) ) ζL i − ) |X | ≥ Ω( c ( (cid:15) ) ζL i − ) | T | . Since the total weight of O G ( T, L i , , t ) is atmost O ( Ws O | T | L i ) by Definition 1.9, the taken credit is sufficient to pay when c ( (cid:15) ) = Ω( Ws O (cid:15) ). (cid:3) We now focus on light clusters; those formed in Step 5B. Let C be one of them. By Lemma 5.8, if C is not originated in Step 4B, level- i clusters in C has at least Ω( c ( (cid:15) ) L i − ) credits as leftover. (If C isformed in Step 4B, using the same argument in Section 4.3, we can show that level- i edges incident to C are paid for by other clusters.) By the construction in Step 1, each level- i cluster in C is incident to atmost O ( g(cid:15) ) level- i edges, and to pay for all of these edges, c ( (cid:15) ) needs to be Ω( (cid:15) ). Our key insight is thatin Step 5B, there are only O ( (cid:15) ) level- i edges incident to C added to E sp ; this implies that each level- i cluster in C only needs to pay for O (1) level- i edges on average. The following lemma formalizes thisintuition. 34 emma 5.10. Let C be a level- ( i + 1) cluster formed in Step 5B. Then, the number of level- i edges with both endpoints in C is O (1) and for any candidate cluster C (cid:48) (cid:54) = C , there are at most O (1) level- i edgesbetween C and C (cid:48) . Proof:
First, we observe that any candidate cluster adjacent to C in K i is light since every neighborof a heavy cluster is grouped in Step 5A. This implies that C is not formed in Step 1.We consider the following decomposition D C of C into small clusters : • If C is formed in Steps 2 or 4, then D C = { C } . • Otherwise, C must be formed in Step 3. By construction, it consists of two intervals I ¯ ν and I ¯ µ connected by a level- i edge (¯ ν, ¯ µ ), and a set of trees U = {T , T , . . . , T p } each of augmented diameterat most ζL i which are connected to nodes in I ¯ ν ∪ I ¯ µ via MST edges due to the augmentation inStep 4. We greedily partition each interval, say I ¯ ν , into node-disjoint, subintervals I of augmenteddiameter at most 3 ζL i and at least ζL i ; let {A , . . . , A q } be the set of all the subintervals. We thenextend each A j , j ∈ [ q ], to include all trees in U that are connected to nodes in A j by MST edges.We denote the extension of A j by A + j . We define D C = {A +1 , . . . , A + q } . Claim 5.11. D C has three following properties:1. |D C | = O (1)
2. For any small cluster X ∈ D C , Dm ( X ) ≤ ζL i when (cid:15) < ζ .3. There is at most one level- i edge in E sp connecting two different small clusters in D C if |D C | ≥ . Proof:
By Claim 5.4, I ν has augmented diameter at most 2 L i . This implies |D C | ≤ × L i ζL i = O (1) (41)By construction of A + j , Adm ( A + j ) ≤ Adm ( A j ) + 2 ¯ w + 2 ζL i ≤ ζL i + 2 (cid:15)L i ≤ ζL i .For the third item, assume that the greedy algorithm in Step 5B takes to E sp two edges ( u, v ) , ( u (cid:48) , v (cid:48) )between two small clusters A, A (cid:48) in D C where { u, u (cid:48) } ⊆ A, { v, v (cid:48) } ⊆ A (cid:48) . W.l.o.g, we assume that ( u (cid:48) , v (cid:48) )is considered before ( u, v ). Let P uv be a shortest path between u and v before ( u, v ) is added. Then bythe triangle inequality, w ( P ( uv )) ≤ w ( u (cid:48) , v (cid:48) ) + Dm ( A ) + Dm ( A (cid:48) ) ≤ w ( u (cid:48) , v (cid:48) ) + 14 ζL i w ( u (cid:48) , v (cid:48) ) ≤ w ( u, v ) + Dm ( A ) + Dm ( A (cid:48) ) ≤ w ( u, v ) + 14 ζL i (42)Thus w ( P uv ) ≤ w ( u, v ) + 28 ζL i w ( u,v ) ≥ L i / ≤ (1 + 56 ζ ) w ( u, v ) < tw ( u, v ) when ζ = and t ≥
2. Thus,edge ( u, v ) will not be taken by the greedy algorithm in Step 5B; this gives us a contradiction. (cid:3)
Items (1) and (3) in Claim 5.11 immediately implies Fact A. For Fact B, observe that for any two tinyclusters in D C and D C (cid:48) , the same proof of Item (3) in Claim 5.11, there is at most 1 level- i edge in E sp between them. Thus, by Item (1), there are at most O (1) level- i edges connecting C and C (cid:48) . (cid:3) A simple corollary of Lemma 5.10 is the following.
Corollary 5.12.
For any level- ( i + 1) cluster C formed in Step 5B, there are O ( (cid:15) ) level- i edges incidentto at least one vertex in C that are added to E sp in Step 5B. The candidate cluster may be merged to a level-( i + 1) cluster in Step 5A. roof: By construction, C is a light candidate cluster: it has at most g(cid:15) neighbors in K i . For eachneighbor C (cid:48) of C , by Lemma 5.10, there are O (1) level- i edges between C and C (cid:48) added E sp . Thus, thereare O ( (cid:15) ) level- i edges incident to exactly one vertex of C added to E sp . Also by Lemma 5.10, there areat most O (1) level- i edges in E sp with both endpoints in C ; this implies the corollary. (cid:3) We are now ready to show that clusters that have leftover credits can pay for its incident level- i edges.The following claim is stated for candidate level-( i +1) clusters that may or may not become a level-( i +1)cluster. Claim 5.13.
Let C be a candidate level- ( i + 1) cluster initiated in Steps 2 and 3. Then half the leftovercredit of C can pay for level- i edges incident to at least one vertex in C when c ( (cid:15) ) = Ω( (cid:15) ) . Proof:
By Lemma 5.8, each cluster in C has at least Ω( c ( (cid:15) ) L i − ) = Ω( ce(cid:15)L i ) leftover credits. Byconstruction, C contains a subtree of F of augmented diameter at least ζL i and since each MST edgehas weight at most (cid:15)L i and each level- i cluster has diameter at most g(cid:15)L i , C has at least Ω( (cid:15) ) level- i clusters. By Corollary 5.12, on average, each level- i cluster, say ν , only needs to pay for O (1) level- i edges incident to C ; the leftover credit of ν is sufficient to pay when c ( (cid:15) ) = Ω( (cid:15) ). (cid:3) By Claim 5.13, any level-( i + 1) cluster in Step 5B that is initiated in Steps 2 or 3 can pay for itsincident level- i edges using leftover credits.Before we consider Step 5B clusters initiated in Step 4B, we again deal with the special case whereno cluster is formed in Steps 1-3. Similar to Claim 4.20, we conclude that: (a) mathcalF consists of asingle (long) path P , (b) every edge e ∈ E sp ∩ E i must be incident to a supernode in P ∪ P , where P and P are the prefix and suffix subpaths of P . Hence, clusters formed in Step 4B can pay for all level- i edges in E sp , up to O ( (cid:15) ) unpaid level- i edges by Corollary 5.12. (This is in contrast to Claim 4.20 wherethe number of unpaid level- i edges is up to O ( (cid:15) ).) The total weight of all unpaid edges over all levels is O (cid:18) (cid:15) (cid:19) I (cid:88) i =0 L i = O (cid:18) (cid:15) (cid:19) L I I (cid:88) i =0 (cid:15) i = O (cid:18) (cid:15) (cid:19) w (MST)) . which we can pay separately without using level- i clusters’ credits.We now consider the case that a Step 5B cluster X is initiated in Step 4B. Then X is a subpathof augmented diameter at least ζL i and most 3 ζL i if a long path P in F . The credits of level- i andMST edges in X suffice to maintain Credit Invariant 2 for X using the same reasoning in Section 4.3; seeEquation (26. We consider two cases: • X is not an affix of P . There is no level- i edge with both endpoints in X since any such edgewould have length at most Dm ( X ) ≤ ζL i < L i / i edge has length at least L i / i edge incident to X also incident tocandidate clusters, which may or may not become independent level-( i + 1) clusters – the argumentis exactly the same as that of Claim 4.22. Thus, level- i edges incident to X have been already paidfor. • X is an affix of P . The same argument in Section 4.3.3 applies here: If X is an affix, say P of P ,the other affix, say P must be added to a cluster formed in Steps 1-3 in Step 4B. By Lemma 5.8,each level- i cluster in P has at least Ω( c ( (cid:15) ) (cid:15)L i ) leftover credits. Recall that we only use half ofthe leftover credits of each level- i cluster in P to pay for its incident level- i edges (see Claim 5.13.)Since P has augmented diameter at least ζL i , it contains at least Ω( (cid:15) ) level- i clusters. Thusamount of remaining leftover credits of V ( P ) is at least Ω( c ( (cid:15) ) L i ); this is sufficient to pay for O ( (cid:15) )level- i edges incident to X – by Corollary 5.12 – when c ( (cid:15) ) = Ω( (cid:15) ).36n all cases, by choosing c ( (cid:15) ) = Θ( Ws O (cid:15) ), we can pay for all edges in E sp . This implies lightness boundin Theorem 5.1.It remains to show the stretch guarantee in Theorem 5.1. Lemma 5.14.
The stretch of G [ E sp ] is t (1 + O ( (cid:15) )) . Proof:
To bound the stretch for the spanner, it suffices to bound the stretch for edges in E i \ E sp . Let e be an edge in E i \ E sp , let e be an edge of K i corresponding to e . By Claim 4.15, we only need toconsider the case that e belongs to E i .There are three cases: (1) e ∈ B close , (2) the two endpoints of e are clusters in X in Step 5C, or (3) e is not selected in Step 5B. By the same argument in Section 4.3.2, if e is in Case (1), the stretch of e is at most 2 ≤ t . For Case (3), the stretch of e is at most t by construction. It remains to consider Case(2).For each node ν ∈ X , let t ν be the vertex chosen to T . Let e = ( u, v ) and e = ( ν, µ ). By the triangleinequality, we have: d G ( t µ , t µ ) ≤ w ( e ) + 2 g(cid:15)L i ≤ (1 + 2 g(cid:15) ) L i ≤ L i d G ( t µ , t µ ) ≥ w ( e ) − g(cid:15)L i ≥ (1 − g(cid:15) ) L i ≥ L i / e is a shortest path between its endpoints; otherwise, we can remove all such edge e at the beginning of the algorithm in polynomial time.) By Definition 1.9, there is a path, say P , between t ν , t µ in O G,t ( T, L i ) with w ( P ) ≤ t · d G ( t µ , t µ ). This implies that: d G [ E sp ] ( u, v ) ≤ d source ( µ ) ( u, t µ ) + d O G ( T,(cid:96) i / ,t ) ( t µ , t ν ) + d source ( ν ) ( t ν , v ) ≤ g(cid:15)L i + td G ( t µ , t ν ) + g(cid:15)(cid:96) i ≤ g(cid:15)L i + t ( w ( e ) + 2 g(cid:15)(cid:96) i ) + g(cid:15)L i ≤ tw ( e ) + t g(cid:15)L i ≤ t (1 + 6 g(cid:15) ) w ( e ) . (44)Thus, the stretch of e in any case is t (1 + O ( (cid:15) )). (cid:3) (1 + (cid:15) ) We use the same set up as in the previous section. Specifically, we still define E δ as in Equation 35. Thefocus on this section is to prove the following theorem. Theorem 5.15.
Given any δ > , there is an O (cid:15) ( m ) time algorithm that finds a subset of edges E sp ⊆ G such that w ( E sp ) = O ( Ws O G (cid:15) + (cid:15) ) w (MST) and: d G [ E sp ] ( u, v ) ≤ (1 + (cid:15) ) d G ( u, v ) (45) for any edge ( u, v ) ∈ E (cid:91)δ . That is, we have an extra additive term + (cid:15) in the lightness. As we showed in Section 3, this addtivefactor is unavoidable. From the technical point of view, obtaining an optimal light spanner with stretch(1 + (cid:15) ) poses different challenges. There are two places that the argument in the previous section takesadvantage of the fact that the stretch t ≥
2: (a) in discarding the set of edges in B close (Equation 39) and(b) in showing that for each candidate level-( i + 1) cluster C , the number of level- i edges incident to atleast one vertex in C is O ( (cid:15) ) (see Lemma 5.10). 37hen t = (1 + (cid:15) ), we need to take edges in B close to the spanner as in Step 3B in Section 4.4. However,each level- i clusters in the level-( i + 1) clusters formed from edges in B close can only have Ω( c ( (cid:15) ) (cid:15)L i − )credits as leftover; this is in contrast to the case t ≥ c ( (cid:15) ) L i − ).Furthermore, it can be shown that the number of level- i edges incident to at least one vertex in a candidatecluster C (initiated in Step 3) is Ω( (cid:15) ). Indeed, even the number of edges with both endpoints in C canbe Ω( (cid:15) ) as opposed to O (1) in Lemma 5.10. Thus, in the worst case, the number of level- i edges itneeds to pay for is Ω( (cid:15) ) amounted to Ω( L i (cid:15) ) = Ω( L i − (cid:15) ). Hence, one must choose c ( (cid:15) ) = Ω( (cid:15) ) for theargument to work. Here, the clustering procedure in our prior work [35] provides a workaround: we formlevel-( i + 1) clusters in such a way that the number of level- i edges a cluster must pay for is proportionalto the amount of leftover credit it has. That is, if C must pay for t(cid:15) level- i edges, the clustering procedureguarantees that it has Ω( tc ( (cid:15) ) L i − ) = Ω( tc ( (cid:15) ) (cid:15)L i ) leftover credits. Thus, choosing c ( (cid:15) ) = Ω( (cid:15) ) suffices.For the rest of this section, we prove Theorem 5.15. Here we focus directly on constructing level-( i +1)clusters. Level- ( i + 1) clusters We reuse constant ζ and g here; ζ is sufficiently small ( ζ = ) and g issufficiently large ( g = 34). K i ( V i , E i ) is the graph of level- i clusters. If a node has degree in K i at least gζ(cid:15) , it is a heavy node ; otherwise, it is a light node . Recall V hv ( V li ) is the set of heavy (light) nodes. Let V + hv = V hv ∪ N [ V hv ] and V − li = V i \ V + hv . We keep track of a subset of level- i edges in E paid ; intuitivelyedges in E paid can be paid for by the endpoints that cause them to be added to E paid . Initially E paid = ∅ . • Step 1
We use the same construction in Step 1 in Section 4.3. Recall that this step has threesmaller steps 1A, 1B, and 1C. The goal of Steps 1A and 1B is to group nodes in V + hv into clusterswhere each has at least g(cid:15) nodes. In Step 1C, we add to E sp the following edge set: (cid:16) ∪ ν ∈V + hv \V hv E i ( ν ) (cid:17) (cid:91) E ( O G, (cid:15) ( T, L i )) (46)where T is the terminal set obtained by picking a (non-subdividing) vertex from each level- i clusterin V hv . We then add every level- i edge incident to a level- i cluster in V + hv \ V hv to E paid .Let F be the forest of level- i clusters after Step 1 – nodes of F are unclustered light nodes of K i and edges of F are MST edges.We use the same Steps 2 in Section 5.1 here. As we will exploit more structural properties of Step 2clusters in this section, we reproduce it here for completeness: • Step 2
For every tree
T ∈ F of augmented diameter at least ζL i , we construct a collection ofsubtree U T = {T , . . . , T r } of T using Lemma 5.2 with η = g(cid:15) and ζ . For each subtree T j ∈ U T where j ∈ [1 , k ], we add level- i edges incident to nodes in T j to E paid and E sp , and if Adm ( T j ) ≥ ζL i ,we turn T j into a level-( i + 1) cluster.We showed in Lemma 5.8 that for each tree T (cid:48) ∈ U T which is turned in to a level-( i + 1) cluster,each node in T (cid:48) has Ω( c ( (cid:15) ) L i − ) = Ω( c ( (cid:15) ) (cid:15)L i ) credits as leftover, and hence it can pay for (at most O ( (cid:15) ))incident level- i edges using leftover credit when c ( (cid:15) ) = Ω( (cid:15) ). However, even if T (cid:48) does not become alevel-( i + 1) cluster, we can still show that each node in T (cid:48) has Ω( c ( (cid:15) ) (cid:15)L i ) leftover credits by using thefollowing lemma Lemma 5.16 (Lemma 6.13 in [35]) . Let T (cid:48) be any tree in U T and D be any path of T (cid:48) . We can takeout c ( (cid:15) ) Adm ( D ) credits from edges and nodes of T (cid:48) in a way that each node has at least Ω( ζg ) fraction ofits credit left. Thus, the remaining credit of each node is sufficient to pay for its incident level- i spanneredges when c ( (cid:15) ) = Ω( (cid:15) ) . The lemma is in the full version of [35]. i + 1) cluster C contains asubtree T (cid:48) ∈ U T . Let D be the diameter path of C and D (cid:48) = D ∩ T (cid:48) . We will show later that D (cid:48) is asingle path. Then by taking exactly c ( (cid:15) ) Adm ( D (cid:48) ) credits from edges and nodes of T (cid:48) , we can maintainCredit Invariant 2 for C . By Lemma 5.16, each node in T (cid:48) still has sufficient leftover credits to pay forits incident level- i edges. Thus, we can add them to E paid .Let F be the forest obtained from F by contracting each subtree T (cid:48) ∈ U T in Step 2 into a single contracted supernode , and removing the contracted nodes that corresponds to Step 2 clusters. For conve-nience, we refer to nodes of F as supernodes , even though some of them are uncontracted, i.e, they arenodes of F . We say that a level- i e ∈ E i is incident to a contracted supernode ¯ ν if it is incident to atleast one node in ¯ ν . Indeed, since Adm (¯ ν ) ≤ ζL i < L i / e must be incident to exactly one node in ¯ ν . Observation 5.17.
Every level- i incident to contracted supernode is in E paid . In Step 3, we apply the construction to each long path
P ∈ F – a path is long if its augmenteddiameter is at least ζL i . As usual, we color supernodes in each long path by red or blue, and the sets ofedges B far and B close are defined in Equation 39. • Step 3.
This step has two smaller steps. – (Step 3A) Pick an edge (¯ ν, ¯ µ ) ∈ B far and form a level-( i +1) cluster C i +1 = { (¯ ν, ¯ µ ) ∪I (¯ ν ) ∪I (¯ µ ) } .We then add to E sp and E paid all edges in E i incident to supernodes in C i +1 . Finally, we removeall supernodes in I (¯ ν ) ∪ I (¯ µ ) from the path or two paths containing ν and µ ; update the colorof supernodes in the new paths, the edge sets B far and B close ; and repeat this step until it nolonger applies. – (Step 3B) We define a partial order (cid:22) e on edges of B close as follows. For two edges e = (¯ ν, ¯ µ )and e (cid:48) = (¯ ν (cid:48) , ¯ µ (cid:48) ), we say e (cid:22) e e (cid:48) if: (a) all endpoints of e and e (cid:48) belong to the same path, say P and (b) P [¯ ν, ¯ µ ] ⊆ P [¯ ν (cid:48) , ¯ µ (cid:48) ]. Let L (cid:22) e be an (arbitrary) linear extension of (cid:22) e .We sort edges in B close in increasing order of L (cid:22) e . Let e = ( u, v ) be an edge in that order.If (1 + 6 g(cid:15) ) w ( e ) < d G [ E sp ] ( u, v ) we add e to E sp (but not E paid ); otherwise, we ignore e andconsider the next edge.Let F be F after Step 3. Note that in this section, we need to take (some) edges in B close to E sp . However, instead of dealing with B close immediately after Step 3 (as we did in Section 4.4), we willproceed to Step 4. The main reason, as we pointed out above, is that we can only guarantee that eachlevel- i cluster in level-( i + 1) clusters formed by B close has Ω( c ( (cid:15) ) (cid:15)L i − ) leftover credits while the worstcase bound on the number of incident level- i edges is Ω( (cid:15) ) which causes c ( (cid:15) ) = Ω( (cid:15) ). To reduce thedependency of c ( (cid:15) ) on (cid:15) , we form level-( i + 1) clusters in such a way that the number of level- i edges acluster must pay for is proportional to the amount of leftover credit it has. In Step 4 below, we form tiny clusters which are the basis of the construction in Step 5. • Step 4.
Let T be a tree of F ; observe that there must be an MST edge connecting T to asupernode clustered in a previous step (see Remark 4.4). – (Step 4A) Adm ( T ) ≤ L i . Let e be an MST edge connecting T and a node in a level-( i + 1)cluster C . We add both e and T to C , and every level- i edge incident to supernodes of T to E sp and E paid . – (Step 4B) Adm ( T ) > L i . T must be a path (by Claim 5.3) and has augmented diameter atleast 8 L i . Let P , P be minimal prefix and suffix of T of diameter at least 2 L i . If P j , j ∈ [2],is connected to a node in a level-( i + 1) cluster C via an MST edge e , then we add P j and e to39 . Otherwise, we turn P j into a level-( i + 1) clusters. We then add every level- i edge incidentto supernodes of P j to E sp and E paid .Let P = T \{P ∪P } . We greedily partition P into subpaths, called tiny clusters , of augmenteddiameter at least ζL i and at most 3 ζL i . Let P be the path obtained from P by contractingeach tiny cluster into a single node. In Step 5 below, we group tiny clusters into level-( i + 1)clusters.Let F be the collection of paths of tiny clusters in Step 4C. We say that a level- i edge incident toa tiny cluster if it is incident to a supernode in the tiny cluster. Let E tiny be the subset of level- i edgesincident to tiny clusters added to E sp in Step 3B. For each tiny cluster ¯¯ ν , we denote by E tiny (¯¯ ν ) the setof edges in E tiny incident to ¯¯ ν . Let P ∈ F be the path containing ¯¯ ν . By construction, we have: Observation 5.18. P contains other endpoints of E tiny (¯¯ ν ) . We say that an edge e ∈ E tiny shadows a tiny cluster ¯¯ ν ∈ P if the subpath of P between e ’s endpointscontains ¯¯ ν . Let E stiny (¯¯ ν ) ⊆ E tiny be the set of edges shadowing ¯¯ ν . By definition, E tiny (¯¯ ν ) ⊆ E stiny (¯¯ ν ). • Step 5.
This step has two small steps: – (Step 5A) If E tiny (cid:54) = ∅ , let ¯¯ ν be a tiny cluster with maximum |E tiny (¯¯ ν ) | . Let P be the path in F containing ¯¯ ν . Let P ¯¯ ν be the minimal subpath of P that contains all endpoints of edges in E stiny (¯¯ ν ). We form a level-( i + 1) cluster C i +1 = P ¯¯ ν ∪ E tiny (¯¯ ν ). We then remove every edgeincident to tiny clusters in E stiny (¯¯ ν ) from E tiny and tiny clusters of P ¯¯ ν from F , and repeat thissteps until it no longer applies. – (Step 5B) We make each remaining tiny clusters in F a level-( i + 1) cluster.This completes our construction. Claim 5.19.
Level- i + 1 clusters have diameter at most gL i for g = 34 L i . Proof:
Let C be a level-( i + 1) cluster. We consider each case depending on when C is formed. If C is formed in Step 5B, then Dm ( C ) ≤ ζL i by construction. If C is formed in Step 4B. That is, C isa minimal affix of augmented diameter at least 2 L i . Since each supernode has diameter at most ζL i , Dm ( C ) ≤ L i + ¯ w + ζL i ≤ L i since ¯ w ≤ L i . If C is initiated in Steps 1-3 and (possibly) augmented inStep 4. Let C − be the part of C before the augmentation in Step 4. Then Dm ( C − ) ≤ L i by the sameargument in Lemma 5.5. Since we augment C by trees of augmented diameter at most 8 L i via MSTedges (of length at most L i ) in a star-like way, we have: Dm ( C ) ≤ Dm ( C − ) + 2 ¯ w + 16 L i ≤ L i It remains to consider the case where C is formed in Step 5A, then C is a subpath P ¯¯ ν ⊆ F . Foreach edge e ( ¯¯ α, ¯¯ β ) with both endpoints on P ¯¯ ν , we claim that: Adm ( P ¯¯ ν [ ¯¯ α, ¯¯ β ]) ≤ ζ ) L i (47)Let P ¯¯ ν be obtained from P ¯¯ ν by uncontracting tiny clusters; P ¯¯ ν is also a path. Let ¯ α and ¯ β be theendpoints of e on P ¯¯ ν in ¯¯ α and ¯¯ β , respectively. By definition of B close , two intervals I ( ¯ α ) and I ( ¯ β ) has I ( ¯ α ) ∩I ( ¯ β ) (cid:54) = ∅ . By definition, each interval, say I ( ¯ α ), includes all supernodes within augmented distance40 i from ¯ α . This implies P ¯¯ ν [ ¯ α, ¯ β ] ≤ L i ; thus Equation 47 holds. (Here an extra 2 ζL i is the upper boundon the sum of augmented diameters of ¯¯ α and ¯¯ β .)Let ¯ ν , ¯ µ be the two end tiny clusters of P ¯¯ ν . Let e = (¯¯ ν , ¯¯ ν ) and e (cid:48) = (¯¯ ν , ¯¯ ν ) be two edges shadowing¯¯ ν ; e and e (cid:48) exists by the minimality of P ¯¯ ν . Then: Adm ( P ¯¯ ν ) ≤ Adm ( P ¯¯ ν [¯¯ ν , ¯¯ ν ]) + Adm ( P ¯¯ ν [¯¯ µ , ¯¯ µ ]) Eq. 47 ≤ ζ ) L i < L i This is also the upper bound on the diameter of C . (cid:3) Lightness analysis
We maintain the same Credit Invariant 2 as in Section 5.1; we reproduce it herefor completeness.
Credit Invariant 2
Each level- i cluster C has at least c ( (cid:15) ) max( Dm ( C ) , ζL i − ) credits.Now we assume that level- i clusters satisfy the Credit Invariant and prove that level-( i + 1) clusterssatisfy it as well. We have the following lemma whose proof is almost the same. Lemma 5.20.
Let C be a level- ( i + 1) cluster. If C is initiated in Steps 1-3, then level- i clusters in C ,after maintaining Credit Invariant 2 for C , have Ω( c ( (cid:15) ) L i − ) leftover credits each. Consequently, lightnodes in C can pay for all of its incident level- i edges when ce = Ω( (cid:15) ) using half their leftover credits. Proof:
We first show that each level- i cluster in C has Ω( c ( (cid:15) ) L i − ) leftover credits. If C is initiated inStep 1, then C has at least gζ(cid:15) nodes (i.e, level- i clusters). Thus, by taking half the credit of each level- i cluster in C , we can maintain Credit Invariant 2; the remaining half is hence leftover. The proof for thecase when C is initiated in Steps 2 or 3 is exactly the same as the proof in Lemma 5.8.If ν ∈ C is a light node, by definition ν is incident to at most gζ(cid:15) = O ( (cid:15) ) level- i edges which amountto O ( L i (cid:15) ) total weight. Thus, half the leftover credit of ν is sufficient to pay when c ( (cid:15) ) = Ω( (cid:15) ). (cid:3) Claim 5.21.
Level- i clusters in V hv can use half their leftover credits to pay for edges of O G, (cid:15) ( T, L i ) in Equation 40 when c ( (cid:15) ) = Ω (cid:16) Ws O G, (cid:15) (cid:15) (cid:17) . Proof:
By Lemma 5.20, each heavy node has Ω( c ( (cid:15) ) L i − ) leftover credits. By taking out half theleftover credit of heavy nodes, the total credit taken is Ω( c ( (cid:15) ) L i − ) |V hv | ≥ Ω( c ( (cid:15) ) L i − ) | T | . Since thetotal weight of O G, (cid:15) ( T, L i ) is at most O ( Ws O G, (cid:15) | T | L i ). the taken credit is sufficient to pay when c ( (cid:15) ) = Ω (cid:16) Ws O G, (cid:15) (cid:15) (cid:17) . (cid:3) We assume that there is at least one level- i cluster formed in Steps 1-3. Otherwise, an argumentsimilar to that of Claim 4.20 implies that there are at most O ( (cid:15) ) unpaid level- i edges and hence thetotal weight of unpaid edges over all levels is O ( (cid:15) w (MST)). Claim 5.22.
Let P be a level- ( i + 1) cluster formed in Step 4B, which is an affix of a long path P . Thencredits of MST edges and nodes of P can maintain Credit Invariant 2. Furthermore, let P be anotheraffix of P , which is augmented to a cluster initiated in Steps 1-3 by construction. Then leftover creditsof clusters in P can pay for edges incident to nodes of P when c ( (cid:15) ) = Ω( (cid:15) ) . iny clusterscontracted e supernodeuncontracted supernode 𝜈 C i+1 Figure 4: A level-( i + 1) cluster C i +1 . Proof:
Recall that supernodes have two types: contracted supernodes, those are obtained by contractingsubtrees of F in Step 2, and uncontracted supernodes, those are nodes of F . Let T be the subtree of F obtained by uncontracting contracted supernodes. Clearly ζL i ≤ Adm ( P ) ≤ Adm ( T ). Let D be thediameter path of T . Then the credit of nodes and (MST) edges in D are sufficient to maintain CreditInvariant 2 for T (see Remark 4.17).We can assume that T has at most gζ(cid:15) ; otherwise, nodes in T can both maintain Credit Invariant 2and pay for all incident level- i edges. Thus, P has at most O ( (cid:15) ) incident edges.Let T be the subtree of F obtained by uncontracting contracted supernodes. Then Adm ( T ) ≥ Adm ( P ) = 8 L i . Hence, T must has at least L i g(cid:15)L i = Ω( (cid:15) ) nodes. By Lemma 5.20, the total leftovercredit of nodes in T is at least c ( (cid:15) ) L i ; this is sufficient to pay for O ( (cid:15) ) incident edges of P when c ( (cid:15) ) = Ω( (cid:15) ). (cid:3) Since in Step 5, we do not add any new to E sp . Thus, it remains to pay for edges in B close added to E sp in Step 3B. We show that leftover credits of nodes of level-( i + 1) clusters in Step 5A can pay forthese edges. Note that B close = E tiny . Furthermore, edges in E tiny that are incident to tiny clusters inStep 5B are also incident to tiny clusters in Step 4A, and hence paid by these clusters. Step 5A clusters
Let C i +1 = P ¯¯ ν ∪ E tiny (¯¯ ν ) be a level-( i + 1) cluster in Step 5B; C i +1 is a path ofat most O ( gζ ) = O (1) tiny clusters since Adm ( C i +1 ) ≤ gL i by Claim 5.19 while each tiny cluster hasdiameter at least ζL i (see Figure 4).Let E C i +1 be the set of unpaid edges in E tiny incident to tiny clusters in C i +1 . Since ¯¯( v ) incident tothe maximum number of edge E tiny among nodes in P ¯¯ ν , we have: Observation 5.23. | E C i +1 | = O ( |E tiny (¯¯ ν ) | ) . Let C i +1 be obtained from C i +1 by uncontracting tiny clusters. Note that C i +1 is a path of F . ByLemma 5.16, unpaid edges of E sp are incident to uncontracted nodes (see also Observation 5.17). Thatis, edges in E C i +1 are incident to uncontracted nodes. Let D be the diameter path of C i +1 .The main idea to pay for edges in E C i +1 is the following lemma proved in our previous work [35]. Lemma 5.24 (Lemma 6.31 in [35]) . Let ¯ ν be an uncontracted node of C i +1 that is incident to t edges in E C i +1 . If ν ∈ D , the credits of at least t nodes (i.e, level- i clusters) in C i +1 are leftover. e = (¯ ν, ¯ µ )and e (cid:48) = (¯ ν, ¯ µ (cid:48) ) both incident to ¯ ν such that e (cid:22) e e (cid:48) , then(1 + 6 g(cid:15) ) w ( e (cid:48) ) ≤ Adm ( P e (cid:48) ) (48)where P e (cid:48) is the path e ∪ C i +1 [¯ µ, ¯ µ (cid:48) ] between two endpoints of e (cid:48) (see Equation (26) in [35]). However,this is exactly the order that we consider in Step 3B, and Equation 48 holds. Hence, the same argumentin [35] applies here. Lemma 5.25.
Leftover credits of nodes in Step 5A clusters can pay for all edges in E tiny . Proof:
Suppose that |E tiny (¯¯ ν ) | = t(cid:15) for some t >
0. Let X be the set of uncontracted supernodes of ¯¯ ν that are incident to at least tζ g edges in E tiny . We claim that: |X | ≥ tζ g (49)since otherwise, the number of edges incident to ¯¯ ν , |E tiny (¯¯ ν ) | , is at most: |X | gζ(cid:15) + tζ g ( | C i +1 | − |X | ) (cid:124) (cid:123)(cid:122) (cid:125) ≤ gζ(cid:15) < t(cid:15) a contradiction. Thus, Equation 49 holds.If D ∩ X = ∅ , then the credit of at least Ω( t ) nodes as leftover by Equation 49. Otherwise, byLemma 5.24, the credit of tζ g = Ω( t ) as leftover since nodes in X are incident to at least tζ g edges in E tiny .Thus, the total amount of leftover credit is Ω( tc ( (cid:15) ) L i − ) = Ω( tc ( (cid:15) ) (cid:15)L i ), while, by Observation 5.23, E C i +1 has at most O ( |E tiny (¯¯ ν ) | ) = O ( t(cid:15) ) level- i edges. Thus, the leftover credit is sufficient to pay when c ( (cid:15) ) = Ω( (cid:15) ). (cid:3) Stretch analysis
To bound the stretch for the spanner, it suffices to bound the stretch for edges in E i \ E sp . Let e be an edge in E i \ E sp , let e be an edge of K i corresponding to e . By Claim 4.15, we onlyneed to consider the case that e belongs to E i .There are two cases: (1) e ∈ B close and (2) the two endpoints of e are clusters in V hv in Step 1C.By the same argument in Section 4.3.2, if e is in Case (1), the stretch of e is at most (1 + 9 g(cid:15) ) bythe construction in Step 3B. If e is in Case (2), the argument in Section 5.1 applies; the stretch is(1 + (cid:15) )(1 + 6 g(cid:15) ) = (1 + O ( (cid:15) )). In this section, we show how to simply adapt the construction in Section 5.2 to prove Theorem 1.1.
Proof: [Proof of Theorem 1.1] In the unified approach for stretch (1 + (cid:15) ) in Section 5.2, sparse spanneroracle is used in Step 1C (Equation 46) to argue that (a) for every edge e between two nodes in V hv ,the distance between e ’s endpoint is preserved in O G, (cid:15) ( T, L i ), and hence is preserved in G [ E sp ]; and(b) each node in V hv must pay for total weight O ( Ws O G, (cid:15) L i ) while its leftover credit is Ω( c ( (cid:15) ) L i − ) =Ω( c ( (cid:15) ) L i − ).In constructing light spanners for K r -minor-free graphs, we simply taking every edge of K i [ V hv ] to E sp . Since K i [ V hv ] is a minor of G , it is K r -minor-free. Thus, | E ( K i [ V hv ]) | = O ( r √ log r ) |V hv | . Thatis, each node in V hv must pay for total weight O ( r √ log rL i ) and its leftover credit is sufficient to paywhen c ( (cid:15) ) = Ω( r √ log r(cid:15) ). The rest of the argument remains unchanged, and hence the total lightness is˜ O r,(cid:15) ( r(cid:15) + (cid:15) ). (cid:3) Sparse Spanner Oracles
In this section, we prove Theorem 1.15 (Subsection 6.1) and Theorem 1.14 (Section 6.2 and 6.3). We saythat a pair of terminals is critical if their distance is in [ L/ , L ]. We will use the following result proven in the full version of our previous work [35]:
Theorem 6.1 (Theorem 1.3 [35]) . Given an n -point set P ∈ R d , there is a Steiner (1 + (cid:15) ) -spanner for P with ˜ O (cid:15) ( (cid:15) − ( d − / | P | ) edges. Let T ⊆ P be a subset of points given to the oracle and L be the distance parameter. By Theorem 6.1,we can construct a Steiner (1 + (cid:15) )-spanner S for T with | E ( S ) | ˜ O (cid:15) ( (cid:15) − ( d − / | T | ). We observe that: Observation 6.2.
Let x (cid:54) = y be two points in T such that || x, y || ≤ L , and Q be a shortest path between x and y in S . Then, for any edge e such that w ( e ) ≥ L , e (cid:54)∈ P when (cid:15) < . Proof:
Since S is a (1 + (cid:15) )-spanner, w ( P ) ≤ (1 + (cid:15) ) || x, y || ≤ (1 + (cid:15)L ) < L . (cid:3) Let O R d , (1+ (cid:15) ) ( T, L ) be the graph obtained from S by removing every edge e ∈ E ( S ) such that w ( e ) ≥ L . By Observation 6.2, O R d , (1+ (cid:15) ) ( T, L ) is an (1 + (cid:15) )-spanner for T . Since w ( O R d , (1+ (cid:15) ) ( T, L )) ≤ L | E ( O R d , (1+ (cid:15) ) ( T, L )) | ≤ L | E ( S ) | = ˜ O (cid:15) ( (cid:15) − ( d − / | T | L ) , it holds that Ws O R d, (cid:15) = ˜ O (cid:15) ( (cid:15) − ( d − / ). This completes the proof of Theorem 1.15. For a general graph G , let G T be the graph that has V ( G T ) = T and there is an edge between two verticesif they form a critical pair. We apply the greedy algorithm [2] to G T with t = 2 k − S T , (after replacing each artificial edge by the shortest path betweenits endpoints) as the output of the oracle O G,t . We now bound the weak sparsity of O G,t .Observe that S T has girth g = 2 k + 1 and hence has at most g ( | T | , k ) | T | edges by the definition ofthe function g ( . ). Thus, w ( S T ) ≤ g ( | T | , k ) | T | L ≤ g ( | T | , k ) | T | L . That implies: Ws O G = sup T ⊆ V,L ∈R + g ( | T | , k ) | T | L | T | L ≤ g ( n, k ) . This implies Item (1) of Theorem 1.14.
Let (
X, d X ) be a metric space and P be a partition of ( X, d X ) into clusters. We say that P is ∆ -bounded if Dm ( P ) ≤ ∆ for every P ∈ P . For each x ∈ X , we denote the cluster containing x in P by P ( x ). Thefollowing notion of ( t, ∆ , δ )-decomposition was introduced by Filtser and Neiman [24]. Definition 6.3 (( t, ∆ , η )-decomposition) . Given parameters t ≥ , ∆ < , η ∈ [0 , , a distribution D over partitions of ( X, d X ) is a ( t, ∆ , η ) -decomposition if:(a) Every partition P drawn from D is t · ∆ -bounded.(b) For every x (cid:54) = y ∈ X such that d X ( x, y ) ≤ ∆ , Pr P∼D [ P ( x ) = P ( y )] ≥ η X, d ) is ( t, η )-decomposable if it has a ( t, ∆ , η )-decomposition for any ∆ > Claim 6.4. If ( X, d X ) is ( t, η ) -decomposable, it has a O ( t ) -spanner oracle O X,O ( t ) with sparsity Ws O X,O ( t ) = O ( log | X | η ) . Furthermore, there is a polynomial time Monte Carlo algorithm constructing O X,O ( t ) with con-stant success probability. Proof:
Let T be a set of terminals given to the oracle O X,O ( t ) that we are going to construct. Let D bea ( t, L, η )-decomposition of ( X, d X ).Initially the spanner S has V ( S ) = T and E ( S ) = ∅ . We sample ρ = | T | η partitions from D , denotedby P , . . . , P ρ . For each i ∈ [ ρ ] and each cluster C ∈ P i , if | T ∩ C | ≥
2, we pick a terminal t ∈ C and addto S edges from t to all other terminals in C . We then return S as the output of the oracle.For each partition P i , the set of edges added to S forms a forest. That implies we add to S at most | T | − | E ( S ) | ≤ ( | T | − ρ = O ( ln | T || T | η ) and hence w ( S ) ≤ | E ( S ) | · L sinceeach edge has weight at most L . Thus, Ws O = O ( log | X | η ).It remains to show that with constant probability, d S ( x, y ) ≤ O ( t ) d X ( x, y ) for every x (cid:54) = y ∈ T suchthat L/ ≤ d X ( x, y ) ≤ L . Observe by construction that if x, y fall into the same cluster in any partition,there is a 2-hop path of length at most 2 tL = O ( t ) d X ( x, y ). Thus, we only need to bound the probabilitythat x and y are clustered together in some partition. Observe that the probability that there is nocluster containing both x and y in ρ partitions is at most:(1 − η ) ρ = (1 − η ) | T | η ≤ | T | Since there are at most | T | distinct pairs, by union bound, the desired probability is at least .Filtser and Neiman [24] showed that any n -point Euclidean metric is ( t, n − O ( t ) )-decomposable forany given t >
1; this implies Item (2) in Theorem 1.14. If (
X, d X ) is an (cid:96) p metric with p ∈ (1 , t, n − O ( log tt ) )-decoposable for any given t >
1; this implies Item (3) inTheorem 1.14.
Acknowledgement:
Hung Le is supported by a PIMS postdoctoral fellowship, an NSERC grant and astart up funding of University of Massachusetts at Amherst. Shay Solomon is partially supported by theIsrael Science Foundation grant No.1991/19 and by Len Blavatnik and the Blavatnik Family foundation.
References [1] S. Alstrup, S. Dahlgaard, A. Filtser, M. St¨ockel, and C. Wulff-Nilsen. Constructing light spannersdeterministically in near-linear time. In , pages 4:1–4:15, 2019.[2] I. Alth¨ofer, G. Das, D. Dobkin, D. Joseph, and J. Soares. On sparse spanners of weighted graphs.
Discrete Computational Geometry , 9(1):81–100, 1993.[3] B. Awerbuch, A. Baratz, and D. Peleg. Cost-sensitive analysis of communication protocols. In
Proc.of 9th PODC , pages 177–187, 1990.[4] B. Awerbuch, A. Baratz, and D. Peleg. Efficient broadcast and light-weight spanners.
TechnicalReport CS92-22, Weizmann Institute , October, 1992.455] Baruch Awerbuch. Communication-time trade-offs in network synchronization. In
Proc. of 4thPODC , pages 272–276, 1985.[6] Yehuda Ben-Shimol, Amit Dvir, and Michael Segal. SPLAST: a novel approach for multicastingin mobile wireless ad hoc networks. In
Proceedings of the IEEE 15th International Symposium onPersonal, Indoor and Mobile Radio Communications, PIMRC 2004, 5-8 September 2004, Barcelona,Spain , pages 1011–1015, 2004.[7] G. Borradaile, H. Le, and C. Wulff-Nilsen. Minor-free graphs have light spanners. In , FOCS ’17, pages 767–778, 2017.[8] G. Borradaile, H. Le, and C. Wulff-Nilsen. Greedy spanners are optimal in doubling metrics. In
Proceedings of the 30th Annual ACM-SIAM Symposium on Discrete Algorithms , SODA ‘19, pages2371–2379, 2019.[9] R. Braynard, D. Kostic, A. Rodriguez, J. Chase, and A. Vahdat. Opus: an overlay peer utilityservice. In
Prof. of 5th OPENARCH , 2002.[10] B. Chandra, G. Das, G. Narasimhan, and J. Soares. New sparseness results on graph spanners. In
Proceedings of the Eighth Annual Symposium on Computational Geometry , 1992.[11] S. Chechik and C. Wulff-Nilsen. Near-optimal light spanners. In
Proceedings of the 27th AnnualACM-SIAM Symposium on Discrete Algorithms , SODA’16, pages 883–892, 2016.[12] L. P. Chew. There is a planar graph almost as good as the complete graph. In
Proceedings of theSecond Annual Symposium on Computational Geometry , SCG ‘86, pages 169–177, 1986.[13] L. P. Chew. There are planar graphs almost as good as the complete graph.
Journal of Computerand System Sciences , 39(2):205 – 219, 1989.[14] E. Cohen. Fast algorithms for constructing t -spanners and paths with stretch t . SIAM Journal onComputing , 28(1):210–236, 1998.[15] J. Cong, A. B. Kahng, G. Robins, M. Sarrafzadeh, and C. K. Wong. Performance-driven globalrouting for cell based ics. In
Proc. of 9th ICCD , pages 170–173, 1991.[16] J. Cong, A. B. Kahng, G. Robins, M. Sarrafzadeh, and C. K. Wong. Provably good algorithms forperformance-driven global routing. In
Proc. of 5th ISCAS , pages 2240–2243, 1992.[17] J. Cong, A. B. Kahng, G. Robins, M. Sarrafzadeh, and C. K. Wong. Provably good performance-driven global routing.
IEEE Trans. on CAD of Integrated Circuits and Sys. , 11(6):739–752, 1992.[18] Amin Vahdat Dejan Kostic. Latency versus cost optimizations in hierarchical overlay networks.
Technical report, Duke University , (CS-2001-04), 2002.[19] M. Elkin and S. Solomon. Fast constructions of lightweight spanners for general graphs.
ACMTransactions on Algorithms , 12(3), 2016.[20] Michael Elkin. Computing almost shortest paths.
ACM Trans. Algorithms , 1(2):283–323, 2005.[21] Michael Elkin, Ofer Neiman, and Shay Solomon. Light spanners. In
Proc. of 41th ICALP , pages442–452, 2014. 4622] Michael Elkin and Jian Zhang. Efficient algorithms for constructing (1+epsilon, beta)-spanners inthe distributed and streaming models.
Distributed Computing , 18(5):375–385, 2006.[23] Joan Feigenbaum, Sampath Kannan, Andrew McGregor, Siddharth Suri, and Jian Zhang. Graphdistances in the streaming model: the value of space. In
Proc. of 16th SODA , pages 745–754, 2005.[24] Arnold Filtser and Ofer Neiman. Light spanners for high dimensional norms via stochastic decom-positions. In , pages 29:1–29:15, 2018.[25] Arnold Filtser and Shay Solomon. The greedy spanner is existentially optimal. In
Proceedings ofthe 2016 ACM Symposium on Principles of Distributed Computing , PODC ’16, pages 9–17, 2016. toappear in SICOMP 2020.[26] Lee-Ad Gottlieb. A light metric spanner. In
IEEE 56th Annual Symposium on Foundations ofComputer Science, FOCS 2015, Berkeley, CA, USA, 17-20 October, 2015 , pages 759–772, 2015.[27] M. Grigni and P. Sissokho. Light spanners and approximate TSP in weighted graphs with forbiddenminors. In
Proceedings of the 13th Annual ACM-SIAM Symposium on Discrete Algorithms , SODA’02, pages 852–857, 2002.[28] Michelangelo Grigni. Approximate TSP in graphs with forbidden minors. In
Automata, Languagesand Programming, 27th International Colloquium, ICALP 2000, Geneva, Switzerland, July 9-15,2000, Proceedings , pages 869–877, 2000.[29] S. Halperin and U. Zwick. Linear time deterministic algorithm for computing spanners for unweightedgraphs, 1996. Manuscript.[30] S. Har-Peled, P. Indyk, and A. Sidiropoulos. Euclidean spanners in high dimensions. In
Proceedingsof the 24th Annual ACM-SIAM Symposium on Discrete Algorithms , SODA ‘13, pages 804–809, 2013.[31] P. N. Klein. Subset spanner for planar graphs, with application to subset TSP. In
Proceedings ofthe 38th Annual ACM Symposium on Theory of Computing , STOC ’06, pages 749–756, 2006.[32] Robert Krauthgamer, Huy L. Nguyen, and Tamar Zondiner. Preserving terminal distances usingminors.
SIAM J. Discrete Math. , 28(1):127–141, 2014.[33] H. Le and S. Solomon. Light euclidean spanners with steiner points. In , 2020. Full version at https://arxiv.org/pdf/2007.11636.pdf .[34] Hung Le. A PTAS for subset TSP in minor-free graphs. In
Proceedings of the 2020 ACM-SIAMSymposium on Discrete Algorithms, SODA 2020, Salt Lake City, UT, USA, January 5-8, 2020 ,pages 2279–2298, 2020. Full version: arxiv:1804.01588.[35] Hung Le and Shay Solomon. Truly optimal euclidean spanners. In ,pages 1078–1100, 2019. Full version at https://arxiv.org/abs/1904.12042 .[36] W. Mader. Homomorphies¨atze f¨ur graphen.
Mathematische Annalen , 178(2):154–168, 1968.[37] D. Peleg and A. A. Sch¨affer. Graph spanners.
Journal of Graph Theory , 13(1):99–116, 1989.[38] D. Peleg and J. D. Ullman. An optimal synchronizer for the hypercube.
SIAM J. Comput. , 18(4):740–747, 1989. 4739] David Peleg.
Distributed Computing: A Locality-Sensitive Approach . SIAM, Philadelphia, PA, 2000.[40] David Peleg. Proximity-preserving labeling schemes.
Journal of Graph Theory , 33(3):167–176, 2000.[41] David Peleg and Eli Upfal. A trade-off between space and efficiency for routing tables.
J. ACM ,36(3):510–530, 1989.[42] Liam Roditty, Mikkel Thorup, and Uri Zwick. Deterministic constructions of approximate distanceoracles and spanners. In
Automata, Languages and Programming, 32nd International Colloquium,ICALP 2005, Lisbon, Portugal, July 11-15, 2005, Proceedings , pages 261–272, 2005.[43] Liam Roditty and Uri Zwick. On dynamic shortest paths problems.
Algorithmica , 61(2):389–401,2011.[44] F. Sibel Salman, Joseph Cheriyan, R. Ravi, and S. Subramanian. Approximating the single-sinklink-installation problem in network design.
SIAM Journal on Optimization , 11(3):595–610, 2001.[45] Hanan Shpungin and Michael Segal. Near-optimal multicriteria spanner constructions in wireless adhoc networks.
IEEE/ACM Trans. Netw. , 18(6):1963–1976, 2010.[46] Mikkel Thorup and Uri Zwick. Approximate distance oracles. In
Proc. of 33rd STOC , pages 183–192,2001.[47] Mikkel Thorup and Uri Zwick. Compact routing schemes. In
Proc. of 13th SPAA , pages 1–10, 2001.[48] J¨urgen Vogel, J¨org Widmer, Dirk Farin, Martin Mauve, and Wolfgang Effelsberg. Priority-baseddistribution trees for application-level multicast. In
Proceedings of the 2nd Workshop on Networkand System Support for Games, NETGAMES 2003, Redwood City, California, USA, May 22-23,2003 , pages 148–157, 2003.[49] Pascal von Rickenbach and Roger Wattenhofer. Gathering correlated data in sensor networks. In
Proceedings of the DIALM-POMC Joint Workshop on Foundations of Mobile Computing, Philadel-phia, PA, USA, October 1, 2004 , pages 60–66, 2004.[50] Bang Ye Wu, Kun-Mao Chao, and Chuan Yi Tang. Light graphs with small routing cost.