The Tree Stabbing Number is not Monotone

by   Wolfgang Mulzer, et al.

Let P ⊆ℝ^2 be a set of points and T be a spanning tree of P. The stabbing number of T is the maximum number of intersections any line in the plane determines with the edges of T. The tree stabbing number of P is the minimum stabbing number of any spanning tree of P. We prove that the tree stabbing number is not a monotone parameter, i.e., there exist point sets P ⊊ P' such that P > P', answering a question by Eppstein <cit.>.



There are no comments yet.


page 1

page 2

page 3

page 4


Drawing a Rooted Tree as a Rooted y-Monotone Minimum Spanning Tree

Given a rooted point set P, the rooted y-Monotone Minimum Spanning Tree ...

Minimum Spanning Tree Cycle Intersection Problem

Consider a connected graph G and let T be a spanning tree of G. Every ed...

Imposing edges in Minimum Spanning Tree

We are interested in the consequences of imposing edges in T a minimum s...

Grouping and Recognition of Dot Patterns with Straight Offset Polygons

When the boundary of a familiar object is shown by a series of isolated ...

Covering Tree-Based Phylogenetic Networks

Tree-based phylogenetic networks, which may be roughly defined as leaf-l...

Uniform 2D-Monotone Minimum Spanning Graphs

A geometric graph G is xy-monotone if each pair of vertices of G is conn...

Angle-Monotone Graphs: Construction and Local Routing

A geometric graph in the plane is angle-monotone of width γ if every pai...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

Let be a set of points in general position, i.e., no three points lie on a common line. A geometric graph is a graph equipped with a drawing where edges are realized as straight-line segments. The stabbing number of is the maximum number of proper intersections that any line in the plane determines with the edges of . Let be a graph class (e.g., trees, paths, triangulations, perfect matchings etc.). The -stabbing number of is the minimum stabbing number of any geometric graph belonging to (as a function of ).

Stabbing numbers are a classic topic in computational geometry and received a lot of attention both from an algorithmic as well as from a combinatorial perspective. We mainly focus on the stabbing number of spanning trees (see, e.g., [10] for more information), which has numerous applications. For instance, Welzl [9] used spanning trees with low stabbing number to efficiently answer triangle range searching queries, Agarwal [1] used them in the context of ray shooting (also see [3, 2] for more examples). Furthermore, Fekete, Lübbecke and Meijer [5] proved -hardness of stabbing numbers for several graph classes, namely for spanning trees, triangulations and matchings, though for paths this question remains open.

It is natural to ask whether stabbing numbers are monotone, i.e., does it hold for any pointset that the -stabbing number of is not smaller than the -stabbing number of any proper subset . Recently, Eppstein [4] gave a detailed analysis of several parameters that are monotone and depend only on the point set’s order type. Clearly, stabbing numbers depend only on the order type. Eppstein observed that the path stabbing number is monotone [4, Observation 17.4] and asked whether this is also the case for the tree stabbing number [4, Open Problem 17.5]. We prove that neither the tree stabbing number (Corollary 3) nor the triangulation stabbing number (Corollary 4) nor the matching stabbing number (Corollary 5) are monotone. A more detailed analysis can also be found in the second author’s Master thesis [8]. Each of the following sections is dedicated to one graph class.

2 Path Stabbing Number

For completeness we repeat the main argument that the path stabbing number, denoted by path-stab(), is monotone, which can be found in [4, Observation 17.4] for example.

Let be a geometric graph. The following two operations do not increase the stabbing number of :

  1. Removing a vertex of degree 1.

  2. Replacing a vertex of degree 2 with the segment connecting its two neighbours .


Clearly, the first operation cannot increase the stabbing number, since it does not add any new segments.

For the second part, let be the geometric graph obtained from by performing operation 2 and let be an arbitrary line. If has strictly less than Stabbing-Number intersections in , it has at most Stabbing-Number intersections in , since we added only one segment. Otherwise, if has Stabbing-Number intersections in , it clearly does not pass through any vertex of and if intersects the newly inserted segment it must have also intersected either or . ∎

path-stab() is monotone.

3 Tree Stabbing Number

We construct point sets of size and such that tree-stab() > tree-stab(). The point we want to remove, must, of course, have degree at least 3 in any spanning tree of minimum stabbing of , since otherwise the arguments of Lemma 2 apply.

Our construction, which is depicted in Figure 1 (a), is as follows. Start with a unit circle around the origin and place 3 evenly distributed points on this circle (in counterclockwise order). Next, add an ?arm? consisting of 2 points () at each of the (outside the circle) such that the points form a convex chain for (which are all three oriented the same way). These arms need to be flat enough, i.e., the line supporting the segment must intersect the interior of the segment (indices are taken modulo 3), but also curved enough, i.e., the line supporting the segment must have the remaining 8 points on the same side. In particular, there are lines intersecting the segments , and also on the one hand and on the other hand (the red lines in Figure 1 (a)). If there is no danger of confusion, we might omit that indices are taken modulo 3 (as in the previous sentence).

Figure 1: Illustration of a set of (a) 9 points and (b) n points such that removing the point increases the tree stabbing number.

Define the two point sets (which are both in general position) to be

It holds that and .


This result was obtained by a computer-aided brute-force search (the source code is available on github [7]). In order to compute the stabbing number of a given geometric graph spanning some point set, it is enough to consider a representative set of lines. For any line that partitions the point set into two non-empty subsets, there is a line in the representative set inducing the same partitioning. For an -point set in general position, the size of a representative set is (see appendix, Lemma A). Hence, we have and . The sets and were also obtained by computer assistance. Any pair of points induces four distinct representative lines, computing these and removing duplicates yields and (as in [6] for example).

Now, it is enough to compute – for all possible spanning trees on – their intersections with the lines in , yielding tree-stab() = 4.

On the other hand, for the spanning tree depicted in Figure 1 has stabbing number 3 (again by computing all intersections with lines in ) implying tree-stab(). ∎

Next, we generalize this construction to arbitrarily large point sets. We simply replace one of the (say ) by a convex chain consisting of points (see Figure 1 (b)). Denote the convex chains , and by , and .

Our goal will be to remove all but two points of to get back to our 9-point setting. Of course, it is crucial to keep the relative position of the points as it is in the 9-point set. Thus, place the points such that:

  1. forms a convex chain.

  2. close enough to , so that the order type of the resulting point set is the same no matter which of the points in we remove. In particular, no line through any two points not belonging to may separate these points.

  3. for any two segments formed by any triple of points in (consecutively along the convex chain) there is a line intersecting these two segments and also . To achieve this, needs to be sufficiently flat and needs to be pushed further away.

Note that Lemma 3 has been verified to still hold after the modification of pushing further out. Before proving that this construction fulfills the desired properties, we need one more preliminary lemma (see Figure 2).

Let be a forest with connected components and . Mark three of the vertices as special (call them ) and iteratively remove/replace vertices of degree 1 and 2 (as in Lemma 2) until no non-special vertex of degree remains. Then the resulting graph is a forest and consists of the three special vertices and at most one non-special vertex.

Figure 2: Illustration of Lemma 3. Special vertices are depicted as squares. Other vertices of degree 1 or 2 are successively removed.

Let be the graph that was obtained from by repeatedly performing the two operations of Lemma 3 and let denote its number of vertices (including the three special). Clearly is a forest, since both operations decrease the number of vertices and the number of edges by exactly 1 and cannot create cycles.

Furthermore, all non-special vertices have degree at least three. Then – using the handshaking lemma and the fact that the forest has edges, where denotes the number of connected components in – we obtain:


Observe that holds, since all connected components not containing a special vertex are completely removed, which follows inductively from the fact that any tree has a leaf. Therefore, it suffices to consider the following three cases:

Case 1:

. This implies , and hence (using Equation 1):

Case 2:

. This implies , and hence (using Equation 1):

Case 3:

. This implies , and hence (using Equation 1):

The inequality in case 1 is only satisfied for and in case 2 and 3 only for .

Now, we are prepared to prove our main lemma.

For any integer , there exist (planar) point sets of size and such that tree-stab() tree-stab().


Let and define and as above (Figure 1 (b)), replacing by :

On the one hand, it is straightforward to see that the spanning tree depicted in Figure 1 (b) has stabbing number 3 (see Figure 3 for an illustration) and hence tree-stab() .

On the other hand, we show tree-stab() next. Assume for the sake of contradiction that there is a spanning tree of with stabbing number at most 3. Our goal will be to carefully remove points from such that the stabbing number of cannot increase until there are only 9 points left in exactly the same relative position as in Lemma 3. Clearly, this would be a contradiction.

Figure 3: There is no line that intersects more than 3 segments in this spanning tree.

Consider the set of edges of with at least one endpoint among the points in . There are at most 3 edges having only one endpoint in (we call them bridges). If there would be more than 3 bridges, there is a line that intersects at least 4 line segments, namely a line that separates from the rest. Because of the same reason, not all three bridges can go to the same other component ( or ).

There are at most 3 points in that are incident to a bridge and if they are distinct, one of them needs to be , otherwise the line separating from the rest of has 4 intersections. Pick three vertices in such that and any point incident to a bridge is among them and mark them as special.

Next, we apply Lemma 3 to the subforest induced by :

Case 1:

No non-special vertex in survives the removal process.

Then 9 points with the same order type as in Lemma 3 and a spanning tree with stabbing number 3 remain, which is a contradiction to Lemma 3.

Case 2:

One non-special vertex in survives the removal process.

Then is incident to all special vertices . If is the last vertex along , there is obviously a line having more than three intersections. Otherwise, by construction, there is a line that separates from and at the same time from the rest of the point set (see Figure 4). In particular, has only and on one side and all other points on the other. cannot be adjacent to , since is not incident to a bridge and therefore contributes another intersection to . This is a contradiction to the assumption that was a spanning tree of stabbing number 3. ∎

Figure 4: Illustration of Case 2. If a non-special vertex survives the removal process, the red line has too many intersections.

tree-stab() is not monotone.

4 Triangulation Stabbing Number

Figure 5: Two symmetric chains in (a) might have a larger triangulation stabbing number compared to the same point set with additional points inbetween (b).

We denote the triangulation stabbing number by tri-stab(). Proving non-monotonicity of tri-stab() is much simpler, only exploiting the additional structure enforced by triangulations. Consider two symmetric convex chains and (sufficiently flat) each consisting of points and facing each other as depicted in Figure 5 (a). These points constitute the point set . consists of the same points and two more (slightly perturbed) points added on the line segment connecting the two middle points of and (as in Figure 5 (b)). Then the following holds:

tri-stab(P) and tri-stab(P’) .


Any triangulation of must have segments connecting a point from with a point from (the green area in Figure 5 (a)). Hence,

On the other hand, the triangulation of depicted in Figure 5 (b) has stabbing number , which can be seen as follows. The two green areas contain segments each and are constructed in such a way that any line may intersect at most segments from both green areas. For this, the two points and need to be sufficiently far from . Figure 6 illustrates the area that contains all lines which intersect line segments of ?upper? () and ?lower? () half of the convex chain in the green region.

Figure 6: Any line that simultaneously intersects a segment connected to the ?upper? half of the convex chain and a segment connected to the ?lower? half of (both in the green region) must be fully contained in the shaded area and hence, cannot intersect any green segment of (and also the other way around).

Since and are convex, it is clear that may accumulate more intersections in the blue areas. The white area contains only a constant number of segments, in total has at most intersections. Hence,

tri-stab() is not monotone.

5 Matching Stabbing Number

First note that the point sets in the case of matchings have to be of even size and all matchings are perfect.

Take points in convex position and one point inside such that any segment is intersected by some . Next, double all points within a small enough -radius (preserving general position) and for a point name the partner point (see Figure 7).

Define the point sets and to be:

It holds that mat-stab() and mat-stab() .


Clearly, the perfect matching that assigns an edge to all partner points has stabbing number 2 and hence mat-stab() .

On the other hand, we show mat-stab() , which can be seen as follows. Let be a perfect matching in and consider the point (or ) that is connected to . Also consider the points and such that and intersect. At least one of the points and is present in .

Case 1:

If and are both part of , there is a line intersecting the three segments , and .

Case 2:

If and are both not part of , then one of the four lines depicted in Figure 7 (b) has three intersections.

Case 3:

If exactly one of the edges or is part of , then one of the two lines depicted in Figure 7 (c) has three intersections.

The matching stabbing number, mat-stab(), is not monotone.

Figure 7: A point set with matching stabbing number 2 in (a) and removing and results in a point set with larger matching stabbing number, illustrated in (b) and (c).

6 Conclusion

Our proof of Lemma 3 relies on computer assistance and of course it would be interesting to turn this into a pen-and-paper proof.

Furthermore, it is easy to generalize stabbing numbers to the context of range spaces , where is a set and a set of subsets of , called ranges. A spanning path then corresponds to a permutation of and a set is stabbed by a range if there are such that and . It is straightforward to prove Corollary 2 in this context, but we don’t know how to apply this for other graph classes.


Appendix A Appendix

For any set of points in general position, a set of representative lines contains exactly lines.


Let be the set of realizable partitions of . Two subsets form a realizable partition of if and , i.e., there is a line separating the convex hulls.

Define the function

, which takes an ordered pair of points from

as input and returns a realizable partition of as follows. For an ordered pair consider the directed line through the two points (directed from to ). Let

and define .

Since is in general position, forms a realizable partition (the line rotated infinitesimally in counterclockwise order separates and ). Also note that the line must be tangent to and and both convex hulls are contained on different sides of .

We will show that for any realizable partition there exist exactly two pairs and which are mapped to this partition. Since there are ordered pairs on , this proves the lemma.

(a) Rotation process to find a tuple that is mapped to the given partition.
(b) Result of both rotations (clockwise and counterclockwise).
Figure 8: Illustration of Lemma A. The red and green sets form a realizable partition.

Let be a realizable partition. Two pairs of points that are mapped to this partition can be found as follows. Consider a line separating and and shift towards until it hits a vertex. Next, rotate (once in clockwise and once in counterclockwise order) until it hits a vertex of the other set. Note that if we a hit a vertex of the same set, we just continue to rotate around this one (see Figure 8 (a)). This way we get exactly two distinct pairs of points (because of general position) that are mapped to the partition if ordered accordingly (see Figure 8 (b)).

On the other hand, there is no other line tangent to and simultaneously and having both sets entirely contained on different sides. ∎