Given a set of points on the Euclidean plane, a -spanner on can be defined as a graph on the set of vertices which satisfies the following inequality for any pair of the points,
where is the length of the shortest path between and using the edges in , and is the Euclidean distance of and . We call Equation 1.1 the bounded stretch property. Because of this inequality, -spanners provide a -approximation for the pairwise distances between the set of points in . The parameter is called the stretch factor of the spanner and determines how accurate the approximate distances are; spanners having smaller parameters are more accurate.
Finding light-weight geometric spanners has been a topic of interest in many areas of computer science, including communication networks and distributed computing. These subgraphs have few edges and are easy to construct, leading them to appear in a wide range of applications since they were introduced. [DBLP:conf/compgeom/Chew86, keil1988approximating, peleg1989graph]. Spanners can be defined in any metric space, but usually they are located in a geometric space, where a heavy or undesirable network is given and finding a sparse and light-weight spanner and working with it instead of the actual network makes the computation easier and faster. In wireless ad hoc networks -spanners are used to guarantee some primary characteristics of the network, including connectivity and sparsity, and also to bound the routing length of the network by some factor of the distance [alzoubi2003geometric, li2001power, wang2006localized, wang2002geometric, wang2003distributed, li2002distributed, xing2004greedy]. They have also been used for finding compact routing tables for communication networks [abraham2011approximate, cowen2001compact, brady2006compact, peleg1989optimal, peleg1989trade]. In distributed computing spanners provide communication-efficiency and time-efficiency through the sparsity and the bounded stretch property [baswana2010additive, elkin20041e, awerbuch1991cost, awerbuch1998near, elkin2006efficient]. There has also been extensive use of geometric spanners in road networks taking advantage of these properties [eppstein1999spanning, abam2009region, chechik2010fault]. In robotics, geometric spanners helped motion planners to design near-optimal plans on a sparse and light subgraph of the actual network [dobson2014sparse, marble2013asymptotically, das1997visibility]. There are also many other applications including computing almost shortest paths [elkin2005computing, cohen1998fast, roditty2004dynamic, feigenbaum2005graph], VLSI circuit design [cong1991performance, cong1992provably, cong1992provablyalg], and overlay networks [braynard2002opus, wang2005network, jia2003local].
Through the evolution of geometric spanners, various types of them have been designed for different use-cases. Well-separated pair decompositions, -graphs, and greedy spanners are among the most well-known types of geometric spanners. The greedy spanner was first introduced by Althöfer [althofer1990generating, althofer1993sparse] and Bern, generalizing a pruning strategy used by Das and Joseph [das1989triangulations] on a triangulation of the planar graph [eppstein1999spanning].
A greedy spanner can be constructed by running the greedy spanner algorithm (Algorithm 1) on a set of points on the Euclidean plane. This short procedure greedily checks for the closest pair of points that do not satisfy the bounded stretch inequality, and adds the corresponding edge, until there are no more edges to add. The resulting graph is therefore a -spanner.
The algorithm runs in , where is the number of points [bose2010computing]. Bose et al. [bose2010computing] improved the running time of Algorithm 1 to a near-quadratic time using a bounded version of Dijkstra’s algorithm. Narasimhan et al. proposed an approximate algorithm for the greedy spanner that reached a running time of using approximate shortest path queries [das1997fast, gudmundsson2002fast, narasimhan2007geometric].
Despite the simplicity of Algorithm 1, Farshi et al. [farshi2005experimental] observed that in practice, greedy spanners are surprisingly good in terms of the number of edges, weight, maximum vertex degree, and also the number of edge crossings. Filster and Solomon [filtser2016greedy] proved that greedy spanners have size and lightness that is optimal to within a constant factor for worst-case instances. They also achieved a near-optimality result for greedy spanners in spaces of bounded doubling dimension. Borradaile et al. [borradaile2019greedy] recently proved optimality for doubling metrics, generalizing a result of Narasimhan and Smid [narasimhan2007geometric], and resolving an open question posed by Gottlieb [gottlieb2015light].
1.1. Our Contribution
In this paper, we study the number of edge crossings of the greedy spanner for the points on the Euclidean plane. We specifically address the observation of Farshi et al. [farshi2005experimental] on the number of edge crossings and we prove some fundamental results on the crossing graph of the greedy spanner, a graph that has a node for each edge of the spanner with two nodes connected if the corresponding edges cross (Definition 3). Particularly, we split the problem of edge crossing into three major cases: 1. intersections with sufficiently large edges 2. intersections with almost same length edges 3. intersections with smaller edges, and we claim that
Claim 1. In the first two cases there is a constant upper bound depending only on , the the stretch factor of the spanner.
Claim 2. In the last case there exists an arrangement of points in which there are more than a bounded number of intersections with smaller edges.
There is a linear bound for the number of intersections that follows from the constant bound on the first two cases, justifying the observation of Farshi et al. [farshi2005experimental]. On the other hand, we prove, again based on the constant bound given for the first two cases, that the crossing graph of the greedy spanner has a constant-degeneracy, meaning that every subgraph of the crossing graph has a vertex with at most a constant number of edges (Theorem 4).
This, together with a result of Eppstein and Gupta [eppstein2017crossing] that works for every graph whose crossing graph has a constant degeneracy, implies that the greedy spanner has separators of size and polynomial expansion. Also, based on the same result, a separator hierarchy for the greedy spanner can be constructed from its planarization in linear time (Theorem 5).
Sublinear separators and separator hierarchies have been widely used in algorithm design [goodrich1995planar, dvorak2016strongly, eppstein2009linear, eppstein2008studying, klein2013structured], especially for computational geometry problems [frieze1992separator, arikati1996planar, kirkpatrick1983optimal] and approximation algorithms for NP-hard problems. They have also been used to speed up some of the existing exact algorithms, e.g. single-source shortest path, which in turn may lead to further improvements in the running time of the existing algorithms that use them as a subroutine.
As we mentioned earlier, -spanners can be defined in any metric space. For a given graph , a -spanner is defined in the following way,
Definition 1 (-spanner).
Given a metric graph , i.e. weighted graph with distances as weights, a -spanner is a spanning subgraph of such that for any pair of vertices ,
where is the length of the shortest path in between and .
Then the greedy spanner on a given set of points can be defined in the following way,
Definition 2 (greedy spanner).
Given a set of points in any metric space, a greedy spanner on is a -spanner that is an output of Algorithm 1.
Here we restrict the problem to geometric graphs and we take advantage of inequalities that hold in geometric space.
We consider the natural embedding that the greedy spanner inherits from its vertices. Edges are drawn as straight segments between the two points corresponding to the two endpoints of the edge. We say two edges of the spanner cross or intersect if their corresponding segments intersect at some interior point. The crossing graph of a given embedding can be defined in this way,
Definition 3 (crossing graph).
Given a graph and its Euclidean embedding, the crossing graph is a graph whose vertices are the edges of the original graph and for each two vertices there is an edge between them if and only if they intersect each other in the embedding given for .
In section 2 we consider intersections between an arbitrary edge of a greedy spanner and sufficiently larger edges, and we show a constant bound on the number of intersections per edge. In section 3 we again prove a constant bound for the number of intersections between a spanner edge and other edges of almost the same length. Finally, in section 4 we introduce an example in which the number of intersections with smaller edges can be more than any constant bound, completing our analysis. In section 5 we introduce some new results and improvements based on the constant bound we provided earlier.
2. Intersections with longer edges
In this section, we prove an upper bound on the number of intersections of an edge with sufficiently larger edges. We will specifically show that the number of intersections, in this case, has a constant bound that only depends on . Later in section 3 we prove a constant bound also exists for the intersections with the edges that have almost the same length of the intersecting edge. Hence we prove our first claim.
In this setting, we consider an arbitrary edge of the spanner, and we are interested in counting the number of intersections that may have with sufficiently larger edges, i.e. edges that intersect at some interior point with for some constant which we will specify later.
First, we only consider a set of almost-parallel spanner segments that cross , where we define the term almost-parallel as follows, and we put a bound on the number of these segments. Then we generalize the bound to hold for all large spanner segments that cross .
Definition 4 (almost-parallel).
We say a pair of arbitrary segments and in the plane are almost-parallel or -parallel if the angle between them is at most . We say a set of segments are almost-parallel if every pair of segments chosen from the set are almost-parallel.
For any set of almost-parallel segments, we define a baseline to measure the angles and distances with respect to that line.
Definition 5 (baseline).
Given a set of almost-parallel (or -parallel) segments in the plane, denoted by , the baseline of the set of segments is the segment with the smallest slope.
We use the uniqueness of the segment chosen in Definition 5 and we emphasize that any other definition works if it determines a unique segment for any almost-parallel set of segments.
Most of the proofs here use a lemma that we call the short-cutting lemma, which is simple but very useful in greedy spanners. The lemma states that a -spanner edge cannot be shortcut by some other edges of the spanner by a factor of . Formally,
Lemma 1 (short-cutting).
An edge of a greedy -spanner cannot be shortcut by some other spanner edges by a factor of , i.e. there is no constant and points that are all spanner edges distinct from , and
Suppose on the contrary that such points exist. If is larger than all other segments , then it should be added the last by the greedy algorithm, so when is being added all s are already included in the spanner, and
By the definition should not be added to the graph because there is a path in the spanner with length at most , which contradicts the assumption.
So assume that is not larger than all s. Denote the largest among s by . Then by the assumption
which shows that can be shortcut by some smaller segments by a factor of , which is impossible according to what we proved earlier in this lemma. ∎
If some of the segments are not included in the spanner, the same argument still works but a factor appears before the term in the summation. So
Corollary 1 (Extended short-cutting).
Given a greedy -spanner and an edge of , there cannot be a constant and points such that
Assume to the contrary that such points exist. For any non-spanner segment there exists a path from to that has length at most . So by replacing each non-spanner segment by its own path in the shortcut path the length of the resulting path would be
which shows that the new path is also a shortcut for by a factor of . But the new path only consists of the spanner segments, which is impossible by Lemma 1 and leads to a contradiction. ∎
In section 2.1, we define a total ordering on a set of almost-parallel segments that cross a spanner segment . Once we have sorted these segments based on the ordering, in section 2.2 we prove the distance between the endpoints of two consecutive segments is at least a constant fraction of the length of the smaller segment. Putting together these two parts, in section 2.3 we prove there cannot be more than a constant number of segments in the sequence.
2.1. A total ordering on almost-parallel intersecting segments
In this section, we define an ordering on a set of almost-parallel segments of the -spanner. The ordering is based on the order of the projections of the endpoints of the segments on the baseline corresponding to the segments. We first define the ordering and then we use Lemma 2 and Lemma 3 to prove that it is a total ordering when the set of almost-parallel segments are all crossing a given segment of the spanner.
Consider a set of almost-parallel spanner segments that cross some spanner segment. One can define an ordering on this set of almost-parallel segments, which we call the endpoint-ordering, based on how their endpoints are ordered along the direction they are aligned to. We formulate the definition in the following way,
Definition 6 (endpoint-ordering).
Let be a set of almost-parallel segments. Also let be the baseline of , . Define the endpoint-ordering between two segments and by projecting the endpoints to the baseline and comparing the order of the projected points along an arbitrary direction of the baseline ,
if the projections are ordered as or .
if they are ordered as or . (Figure 1)
We claim that the endpoint-ordering is a total ordering on the set of almost-parallel segments. This basically means that after projecting two almost-parallel segments on the baseline, none of the resulting projections would lie completely inside the other one. Other cases correspond to a valid endpoint-ordering.
In order to prove this, first, we prove a simpler case when the two segments intersect with each other. This assumption will help to significantly simplify the proof. Later we use this lemma to show the original claim is also true.
Let and be two intersecting segments from a set of -parallel spanner segments. Also assume that where is the stretch factor of the spanner. Then and are endpoint-ordered, i.e. the projection of one of the segments on the baseline of the set cannot be included in the projection of the other one.
We prove the lemma by contradiction. Without loss of generality suppose that the projections of and on some baseline are both between the projections of and (on the baseline). We show that can be shortcut by by a factor of , i.e.
Let , and be the corresponding projections of , and on , respectively (Figure 2). Also let , and be the angle between and the baseline, according to the figure. By the assumption is between and , so . Let also be the point on s.t. and . Then by sine law,
but we have,
as . Also,
which is equivalent to
which is what we are looking for. ∎
Lemma 2 assumes that segments intersect at some interior point. In order to prove the totality of the ordering, we also need to prove the claim when the segments do not intersect each other. Instead, in this case, both segments intersect some spanner edge. We use Lemma 2 to prove this in the Lemma 3.
Let and be two segments chosen from a set of -parallel spanner segments that cross a spanner edge . Also assume that , and , where is the spanner parameter. Then and are endpoint-ordered.
Again, the proof goes by contradiction. Without loss of generality suppose that the projections of and on some baseline are both between the projections of and (on the baseline). We use Lemma 2 show that can be shortcut by by a factor of , i.e.
The idea is to move by a small amount with respect to its length, so that the new segment intersects , and then use Lemma 2. We also keep track of the changes in both sides of the inequality during this movement to show the inequality holds for original points.
Let the segments and intersect at and , respectively. One can move
by vectorin order to intersect . Let the new segment be . But the projections of and on the baseline may not be between and anymore. In order to preserve this, we can extend on one side by to get a new segment . Extending by this amount is enough to preserve the betweenness. For example, in Figure Figure 3), we moved by to get . Now intersects (at ), but the projection of on the baseline is not between the projections of and anymore. So we extend from by to get . Now the projection of on the baseline is between the projections of and . Before the movement the projections of and are both between the projections of and , so after movement at most one of the projections of or can be outside of the projections of and . So extending on one side will be sufficient.
By the triangle inequality after this movement and each will decrease by at most . So,
Also length of will increase by at most , so
which is the result. ∎
Given an arbitrary edge of a -spanner, for a set of almost-parallel spanner edges that intersect , the endpoint-ordering we defined in Definition 6 is a total ordering.
Totality requires reflexivity, anti-symmetry, transitivity, and comparability. Reflexivity and transitivity are trivial because of the projection. Anti-symmetry and comparability follow directly from Lemma 3. ∎
Now that we have ordered the set of almost-parallel spanner segments, we can prove a lower bound on the distance of two ordered segments. Later we prove a bound on the number of these segments based on the resulting distance lower bound.
2.2. Lower bounding the distance of endpoints of two crossing segments
In section 2.1 we restricted the problem to a set of almost-parallel spanner segments that intersect another spanner segment, and we defined an ordering on these segments. The next step is to find a lower bound on the distance of two almost-parallel segments that intersect some spanner segment . The idea is to show that both endpoints of two ordered segments cannot be arbitrarily close, and hence there cannot be more than a constant number of them in a sequence.
More specifically, we show in Proposition 2 that the corresponding endpoints of two almost-parallel spanner segments that both cross the same spanner segment should have a distance of at least a constant fraction of the length of the smaller segment, otherwise the longer segment could be shortcut by the smaller one, which is indeed a contradiction.
We first propose a geometric inequality in Lemma 4 that helps to prove the proposition. Then we complete the proof of the proposition at the end of this section.
Let and be two segments in the plane with angle . Then
By swapping and , it turns out that the case where is stronger than . So without loss of generality, let and by symmetry . Let be the rotation of around by , so that and are parallel, and (Figure 4).
Let be the point on the ray where . As a result and will be on different sides of . By the triangle inequality,
Now we state and prove Proposition 2. As we mentioned earlier, the idea is to show one of the segments can be shortcut by the other one if one of the matching endpoints is very close. In the simplest case when the segments are two opposite sides of a rectangle, it is easy to see that a distance of on both sides is required to prevent short-cutting. In the general case, when the segments are placed arbitrarily, Proposition 2 holds.
Let and be two -parallel spanner segments. The matching endpoints of these two segments cannot be closer than a constant fraction of the length of the smaller segment. More specifically,
Without loss of generality let . Suppose, on the contrary, that . Then,
So can be shortcut by within a factor of which contradicts the extended short-cutting lemma for the edge and the path . ∎
So far, in Proposition 2 we proposed an ordering on the set of almost-parallel spanner segments that cross a given edge and we proved each of these segments has a significant distance from the other ones. In the next section we put together these results and we find a constant upper bound on the number of these segments.
2.3. Putting together
Based on the ordering proposed in section 2.1, and the lower bound we proved in section 2.2, we can show that the following constant upper bound on the number of intersections with sufficiently large edges holds.
If we look at one of the endpoints of the endpoint-ordered sequence of almost-parallel spanner segments, and we project them on the baseline, the distance of every two consecutive projected points cannot be smaller than a constant fraction of the length of the smaller segment, i.e. for all values of . Summing up these inequalities leads to a bound on , the number of segments.
The number of sufficiently large -parallel segments that intersect a given edge of a -spanner is limited by
By sufficiently large we specifically mean larger than .
Let s be the segments larger than that intersect at some angle in . Let be the shortest edge among s. Because of the total ordering, at least half of the segments are larger than with respect to the ordering , or at least half of them are smaller than with respect to . Without loss of generality, assume that half of the segments are larger than with respect to , and they are indexed by . Also let s and s be the projections of s and s on the base line . By Proposition 2, for all , is farther than by a constant fraction of , so
which is not possible, because lies inside and so which contradicts the last inequality above. ∎
3. Intersections with almost same length edges
In the previous section, we proved a bound on the number of intersections with relatively larger edges. Here we prove a constant bound on the number of intersections with edges that are nearly the same length as the length of the intersecting edge. Later in section 4 we consider intersections with relatively smaller edges, which completes our analysis for this problem.
For same-length intersections Lemma 3 does not hold anymore, hence the endpoint-ordering is not necessarily a total ordering in this case. Since totality is a key requirement for the rest of the proof the same proof will not work anymore. But Proposition 2 still holds as it has no assumption on the ordering of the segments.
Our idea is to partition the neighborhood of into a square network, such that no two spanner segments can have both endpoints in the same squares (Figure 5). If this happens, then by Proposition 2 one of the segments should be shortcut by the other one, leading to a contradiction because both segments are already included in the spanner.
We first prove a simpler version of Proposition 2 that does not include in the inequality, as we are not using the almost-parallel assumption and the value of can be large enough to make the inequality in Proposition 2 trivial. We will use this modified version to prove our calim.
Given a greedy spanner with parameter and two spanner segments and ,
Suppose on the contrary that
Also, without loss of generality assume that . Then,
which contradicts the extended short-cutting lemma for the edge and the path . ∎
The number of spanner segments that cross a segment of a -spanner and that have length within is limited by
where is the spanner parameter.
Partition the area around with squares of edge length with edges parallel or perpendicular to . The area that an endpoint of a crossing segment can lie in is a rectangle of size by (Figure 5). The total number of squares in this area would be
But for each crossing segment the pair of squares that contain the two endpoints of the segment is unique. Otherwise two segments, e.g. and , will have both endpoints at the same pair, which means
which cannot happen due to Lemma 5. So the total number of pairs, and hence the total number of crossing segments, would be
In Proposition 3 both and can be chosen arbitrarily, and the bound is a strictly increasing function of and a strictly decreasing function of . The bound tends to infinity when is large enough, and also when is small enough. So it basically does not prove any constant bound for the cases that edges are very small or very large. But for the edges of almost the same length, it gives a constant upper bound.
Given a spanner segment in the Euclidean plane and a positive constant , the number of edges of length at least of the spanner that intersect is .
In section 2 we proved the number of intersections with sufficiently large edges is bounded by a constant and now we completed the proof for all larger edges. In the following section, we show that the same argument does not work for intersections with arbitrarily smaller edges, and we provide an example that shows there can be an arbitrarily large number of intersections with smaller edges.
4. Intersections with smaller edges
We proved earlier that the number of intersections with not very small segments is bounded by a constant. Now it is natural to ask if the same argument is true for smaller segments. i.e. is the number of intersections with smaller edges bounded by a constant depending on . In this section we will show the bound we found for larger edges does not work in this case. In fact, we propose an arrangement of points in the plane that has an arbitrary large number of intersections between a large edge and a set of smaller edges.
The reason that we are able to find such arrangement and it does not contradict with what we proved is that the main observation we had so far is not useful anymore; i.e. two small segments can be within a small distance to each other while they are not relatively close with respect to their lengths. So there may be many small segments, more than any constant bound, between two endpoints of a larger edge, and they may lead to an unbounded number of intersections.
4.1. Introducing Zig-Zags
The building block of the example we propose here is an arrangement of points which form a zig-zag shape, as in Figure 6. After running the greedy spanner algorithm on a horizontal zig-zag like this, denoted by , if is not stretched too much along the vertical axis, the first set of edges that will be added to the graph by the greedy algorithm are actually the zig-zag edges that are drawn in Figure 6. Then, depending on the shape of the zig-zag and parameter , other edges may or may not be added in the future iterations. More specifically, we will show that this only depends on a parameter we call the stretch-factor of the zig-zag.
Definition 7 (zig-zag).
Let be a sequence of points on the Euclidean plane. We say forms a Zig-Zag if there exist two perpendicular vectors and that
The direction of the vector is called the direction of the zigzag and the ratio is called the stretch factor of the zig-zag, and is denoted by . (Figure 6)
Hence a zig-zag which is more stretched toward the vector will have a larger stretch-factor, and a zig-zag which is more stretched along the vector will have a smaller stretch-factor.
Lemma 6 (zig-zag spanner).
Consider a zig-zag with more than two vertices () in which the consecutive pairs are connected to each other (). For any , the zig-zag forms a -spanner if and only if .
For , the length of the path between and is
while the Euclidean distance between and is
The zig-zag forms a -spanner if and only if for all . Assume that , this inequality turns into
which is equivalent to . So this is a necessary condition. It can also be shown that it is a sufficient condition too. Because assuming , in a similar way,
The left side of the inequality is and the right side is no more than because it is missing the term , so . ∎
4.2. Introducing the arrangement
Now we introduce the arrangement. Consider two horizontal zig-zags on the top and on the bottom which are connected together using a middle zig-zag (Figure 7). is colored by green, is colored by blue, and is colored by red. So there are four rows of points and three zig-zags , , and , which connect these points together. and share the second row, while and share the third row. The first row is only included in , and the last row is only included in . For now, suppose that there are enough points in each row. Later we will see that if the number of points is larger than a specific amount, then a large edge appears at some point in the greedy alogrithm, intersecting many edges in between.
All of the zig-zags , , and can have arbitrary stretch-factors as we can move the rows up or down to adjust the stretch-factor of each zig-zag independently. So assume that and , for some small positive which will be specified later. In other words, and are the most stretched zig-zags that form a -spanner and is a slightly more stretched zig-zag, which is not a -spanner by itself anymore.
With this choice of stretch-factors, it is not hard to see, by the Pythagorean theorem, that the length of the zig-zag path between two points on , say and , is exactly . And the length of the path between two points on is also the same expression. But in a similar way, the length of the zig-zag path between two points on would be slightly more, .
4.3. Simulating the greedy algorithm on the arrangement
The greedy spanner algorithm will first add the zig-zag edges in , , and , as they are the closest pairs of vertices. According to the chosen stretch-factors, no edges will be added to and in the future. For example, the horizontal dashed blue zig-zag in Figure 8 will not be added as the endpoints of these segments both belong to or , which are -spanners by themselves. So any potential edge must be between and .
The next set of edges that will be added by the algorithm are the vertical edges between rows 1 and 3, and 2 and 4 (red segments in Figure 8). These are the closest pairs across and which are not connected, so they will be included first.
The edges between rows 1 and 4 which connect the points in consecutive columns (dashed blue segments in Figure 9) may also be added in the next iteration, depending on how small the value of is, but we will see that they do not affect the length of the shortest paths between pairs of points in and that much.
4.4. Sufficiency of small edges for close pairs
Now we claim that the edges we found until now are the only local, i.e. small, edges between these points, and the next edge that is going to be added by the greedy algorithm, would be a large one which intersects many of the zig-zag edges in . The greedy algorithm may stop here and do not add any edges, but we will prove later that this is not possible. We are not going to address this issue in this section.
Intuitively, one can use edges in and , and only one edge in to build a path from any point in to any point in (see Figure 10). Again, intuitively, zig-zags are defined in a way that the length of this path is more than by a small constant. But when and are not far away is much less than and hence the length of the path is no more than . On the other hand, when and are far away, is closer than any constant to (because here is bounded), hence the length of the path becomes more than and a long edge appears.
In order to prove this formally, as stated above, any potential edge must be between and . So let and be two arbitrary points in the top and the bottom zig-zags, respectively. Also assume that is the -th point in (), and is the -th point in (), counting from left (Figure 10).
We assume that no edges other than the ones we stated above have been added so far, and we compute the length of a path we propose between and that uses these edges and we show that it is less than if is not very large. In this way, we prove that the next edge which is going to be added would be a large one.
Without loss of generality, assume that . Consider a path that uses zig-zag edges of and and only one of the edges in to reach from to . Denote this path by . Such a path is drawn by a red dashed line for two sample points in Figure 10. Clearly, we do not use any edge twice and we only use zig-zag edges in , , or .
We will show that , the length of the red path, is not more than when is not very large. By the definition, uses edges of and , and one edge in , so
where is the edge length in (and ), and is the edge length in . On the other side, the distance along the -axis between and is , where is defined in Definition 7. The distance along the -axis between and is at least the height of the zig-zag , which is by the definition . This distance can be strictly more than when is in the first row or is in the last row. So,
We used in the first equality. Now by putting , when ,