Star-Based Separators for Intersection Graphs of -Colored Pseudo-Segments
Abstract
The Planar Separator Theorem, which states that any planar graph has a separator consisting of nodes whose removal partitions into components of size at most , is a widely used tool to obtain fast algorithms on planar graphs. Intersection graphs of disks, which generalize planar graphs, do not admit such separators. It has recently been shown that disk graphs do admit so-called clique-based separators that consist of cliques. This result has been generalized to intersection graphs of various other types of disk-like objects. Unfortunately, segment intersection graphs do not admit small clique-based separators, because they can contain arbitrarily large bicliques. This is true even in the simple case of axis-aligned segments.
In this paper we therefore introduce biclique-based separators (and, in particular, star-based separators), which are separators consisting of a small number of bicliques (or stars). We prove that any -oriented set of segments in the plane, where is a constant, admits a star-based separator consisting of stars. In fact, our result is more general, as it applies to any set of pseudo-segments that is partitioned into subsets such that the pseudo-segments in the same subset are pairwise disjoint. We extend our result to intersection graphs of -oriented polygons. These results immediately lead to an almost-exact distance oracle for such intersection graphs, which has storage and query time, and that can report the hop-distance between any two query nodes in the intersection graph with an additive error of at most 2. This is the first distance oracle for such types of intersection graphs that has subquadratic storage and sublinear query time and that only has an additive error.
Keywords and phrases:
Computational geometry, intersection graphs, biclique-based separators, distance oraclesCopyright and License:
2012 ACM Subject Classification:
Theory of computation Design and analysis of algorithmsFunding:
MdB and BJ are supported by the Dutch Research Council (NWO) through Gravitation-grant NETWORKS-024.002.003.Editors:
Ho-Lin Chen, Wing-Kai Hon, and Meng-Tsung TsaiSeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
Background.
The celebrated Planar Separator Theorem by Lipton and Tarjan [24] states that any planar graph admits a balanced separator of size . More precisely, for any planar graph with nodes there exists a set of size whose removal partitions into components of at most nodes each. This fundamental tool has been used to develop efficient algorithms for many classic problems on planar graphs.
Geometric intersection graphs – graphs whose nodes correspond to objects in the plane and that have an edge between two nodes iff the corresponding objects intersect – are a generalization of planar graphs that have received widespread attention in computational geometry, graph theory, and parametrized complexity. (For an overview of work in the latter area, we refer the reader to the survey by Xue and Zehavi [28].) Unfortunately, geometric intersection graphs do not admit balanced separators of sublinear size, because they can contain arbitrarily large cliques. This led De Berg et al. [11] to introduce so-called clique-based separators: balanced separators that consist of a small number of disjoint (but potentially large) cliques instead of a small number of nodes. They proved that any disk graph – and more generally, any intersection graph of convex fat objects in the plane – admits a clique-based separator of size . Here the size of a clique-based separator is the number of cliques it consists of. They also showed how to use such clique-based separators to obtain sub-exponential algorithms for various classic graph problems, including Independent Set, Dominating Set, and Feedback Vertex Set. Recently, De Berg et al. [12] showed that intersection graphs of pseudo-disks, and intersection graphs of geodesic disks inside a simple polygon, admit balanced separators consisting of cliques, and Aronov et al. [3] proved that intersection graphs of geodesic disks in any well-behaved metric in the plane admit balanced separators consisting of cliques.
One may wonder if all geometric intersection graphs have sublinear clique-based separators. Unfortunately the answer is no, even for intersection graphs of horizontal and vertical line segments. The problem is that such graphs can contain arbitrarily large bicliques, and does not admit a sublinear clique-based separator. We therefore introduce biclique-based separators, which are separators consisting of bicliques, and we show that any set of horizontal and vertical segments admits a balanced separator consisting of a small number of bicliques. In fact, our result is stronger (as it uses star graphs in the separator, and not just any biclique) and it applies to a much wider class of intersection graphs, as discussed next.
Our contribution.
Let be an undirected graph with nodes. A collection of (not necessarily induced) disjoint subgraphs from is called a balanced111In the sequel we will often omit the adjective balanced and simply speak of separators. biclique-based separator for if it has the following properties:
-
Each subgraph is a biclique.
-
The removal from of all subgraphs and their incident edges partitions into connected components with at most nodes each.
The size of a biclique-based separator is the number of bicliques it is comprised of. If each biclique is a star, then we call a star-based separator. Note that the subgraphs in a biclique-based separator (or: in a star-based separator) need not be induced subgraphs of . This is necessary to be able to handle large cliques. To avoid confusion between our new separators that are comprised of bicliques and the traditional separators that are comprised of individual nodes, we will refer to the latter as node-based separators.
We denote the intersection graph induced by a set of objects in the plane by . Thus, the nodes in are in one-to-one correspondence with the objects in and there is an edge between two objects iff intersects . In Section 2 we prove that a star-based separator of size exists for the intersection graph of any set of axis-parallel segments. (The bound on the size of the separator is tight in the worst case.) In fact, we will prove that a star-based separator of size exists for any set of pseudo-segments222A set of curves in the plane is a set of pseudo-segments if any two curves in are either disjoint or intersect in a single point that is a proper crossing (and not a tangency). that is partitioned into subsets such that the pseudo-segments from each are disjoint from each other. In other words, each is an independent set in . We call such a set a -colored set of pseudo-segments, and we call its color classes; see Figure 1(left). Note that a set of axis-parallel segments such that no two segments of the same orientation overlap, is a -colored set of pseudo-segments. More generally, a -oriented set of line segments such that no two segments from the same orientation intersect, is a -colored set of pseudo-segments. Intersection graphs of -oriented segments are often referred to as -dir graphs, and when segments of the same orientation are not allowed to intersect, they are referred to as pure -dir graphs [20, 21]. We show that a star-based separator of size for a -dir graph can be computed in time, if the segments which induce this graph are given.
In Section 3 we extend our result to the case where is a set of constant-complexity -oriented simple polygons, that is, a set of polygons without holes such that the set of edges of all polygons is a -oriented set. Note that two polygons can intersect without having their boundaries intersect, namely when one polygon is completely contained in the other polygon – this is the main difficulty we need to handle when extending our results to polygons. Finally, in Section 3 we also present a straightforward greedy algorithm that computes a star-based separator of size for any string graph.
Application to distance oracles.
A distance oracle for a (potentially weighted) graph is a data structure that can quickly report the distance between two query nodes . Such queries can trivially be answered in time if we store the distance between any two nodes in a distance table, but this requires storage. The challenge is to design distance oracles that use subquadratic storage. Unfortunately, this is not possible in general: any distance oracle must use bits of storage in the worst case, irrespective of the query time [27]. This is even true for distance oracles that approximate distances to within a factor strictly less than . Thus, work on distance oracles concentrated on special graph classes and, in particular, on planar graphs. More than two decades of research culminated in an exact distance oracle for weighted planar graphs that uses storage and has query time [9]. For the unweighted case – in other words, if we are interested in the hop-distance – there is a -approximate distance oracle with query time and storage [22]. See the survey by Sommer [26] and the paper by Charalampopoulos et al. [9] for overviews of the existing distance oracles for various graph classes.
For geometric intersection graphs, only few results are known. Gao and Zhang [15], and Chan and Skrepetos [6], provide -approximate distance oracles with storage and query time for weighted unit-disk graphs. No exact distance oracles that use subquadratic storage and have sublinear query time are known, even for unweighted unit-disk graphs. Very recently, Chang, Gao, and Le [8] presented an almost exact distance-oracle for unit-disk graphs (and, more generally, for intersection graphs of similarly sized, convex, fat pseudodisks) that uses storage and that can report the distance between two query nodes, up to an additive error333In the most recent arxiv version [7] the error has been reduced to 1. of 2, in time. Another recent result is by Aronov, De Berg, and Theocharous [3], who presented an almost exact distance oracle that uses clique-based separators. For intersection graphs of geodesic disks in the plane, their oracle uses storage, has query time, and can report the hop-distance between two query points up to an additive error of . For Euclidean disks, the storage and preprocessing would be and , respectively. As we explain later, their approach also works with biclique-based separators; the only difference is that the additive error increases from to . Thus, we obtain an almost exact distance oracle for intersection graphs of -colored pseudo-segments with storage and query time. This is, to the best of our knowledge, the first almost exact distance oracle for intersection graphs of non-disk-like objects.
2 A star-based separator for -colored pseudo-segments
Let be a -colored set of pseudo-segments, as defined above. To simplify the terminology, from now on we simply refer to the pseudo-segments in as segments. We assume that the segments in are in general position and, in particular, that no three segments meet in a common point and that no endpoint of one segment lies on another segment. This assumption is without loss of generality, as it can always be ensured by perturbing the segments slightly.
The construction.
Recall that a contact graph is the intersection graph of a set of interior-disjoint objects. Contact graphs of curves are known to be planar if no four objects meet in a common point [19, Lemma 2.1]. Our strategy to construct a star-based separator for consists of the following steps, illustrated in Figure 1 and explained in more detail later.
- Step 1.
-
We partition each segment in into fragments. Some fragments will be active, while others will be inactive. This partition will be such that active segments do not cross each other, although they may touch.
- Step 2.
-
Let be the contact graph on the active segments. We construct a separator on , using a suitable weighting scheme on the nodes of . Because is planar, constructing the separator can be done using the Planar Separator Theorem.
- Step 3.
-
We use to construct our star-based separator for . For a fragment , let denote the segment containing . Intuitively, we want to put a star into for each fragment in the separator , namely, the star consisting of the segment as well as all other segments intersecting . For technical reasons, however, we actually have to put a slightly larger collection of stars into .
To make this strategy work, we need to control the size of the contact graph . More precisely, to obtain a star-based separator of size , the size of needs to be . Thus we cannot, for example, cut each segment into fragments at its intersection points with all other segments and make all the resulting fragments active. On the other hand, if we ignore certain parts of the segments by making them inactive, we miss certain intersections and we run the risk that our final set of stars is no longer a valid separator. Next, we describe how to overcome these problems by carefully creating the active fragments.
Step 1: Creating the active fragments.
To construct the active fragments that form the nodes in our contact graph , we will go over the subsets one by one. We denote the active and inactive fragments created for a subset by and , respectively. For , we define , and we define similarly.
Handling the first subset is easy: we simply define . In other words, each segment in becomes a single fragment, and all these fragments are active.
Now consider a subset with . Each segment is partitioned into one or more fragments by cutting it at every intersection point of with an active fragment . Let be the set of fragments thus created. There are two types of fragments in : fragments that contain an endpoint of the segment contributing – there are at least one and at most two of these fragments per segment – and fragments that do not contain such an endpoint. We call fragments of the former type end fragments and fragments of the latter type internal fragments. Note that an internal fragment has its endpoints on two distinct active fragments . We then say that connects and .
Now that we have defined , we need to decide which fragments in become active. To avoid making too many fragments active, we will partition into equivalence classes, and we will activate only one fragment from each equivalence class. To define the equivalence classes we first define, for two internal fragments that connect the same pair of fragments , a region , as follows; see Figure 2(i) for an illustration.
First, suppose that the segments and do not touch each other, as in the left part of Figure 2(i). Thus, is a single, unbounded region with two holes, namely and . The fragment connects these two holes, and so is still a single unbounded region, but now with one hole. Removing from this region splits it into two regions, one bounded and one unbounded. We define to be the bounded region. Now suppose that and touch each other, say at an endpoint of . We slightly shrink at the point where it touches , and then define as above. Note that in this case may consist of one or two bounded regions, if we undo the shrinking process; see the middle and right part in Figure 2(i). We can now define the equivalence classes.
Definition 1.
Let and be two fragments in . We say that and are equivalent, denoted by , if or the following two conditions hold.
-
(i)
The fragments and are internal and connect the same pair of fragments .
-
(ii)
The region enclosed by the fragments does not contain an endpoint of any segment in .
The following lemma shows that is indeed an equivalence relation.
Lemma 2.
The relation defined in Definition 2 is an equivalence relation.
Proof.
It is clear that is reflexive and symmetric. It remains to show that if and , then . Let be the fragments connected by . We can assume that and do not touch; otherwise, as before, we can shrink one of the fragments so that the arguments below still apply. It is instructive to view and as being slightly inflated so that they become closed curves and no longer have two “sides”. We then see that, from a topological point of view, the situation is always as in Figure 2(ii): two of the fragments, and , are incident to the unbounded face, while the third fragment is not. Thus, if we define and we define and similarly, then . This implies that, no matter which of the three fragments is , we always have . Since and do not contain endpoints of segments in if and , neither does . Thus, .
We now partition into equivalence classes according to the relation defined above. For each equivalence class, we make an arbitrary fragment from that class active and put it into ; the other fragments from that equivalence class are made inactive and put into . Note that end fragments are always active, since they do not connect a pair of fragments from and thus cannot be equivalent to any other fragment.
Step 2: Creating the contact graph and its separator .
Let be the set of active fragments created in Step 1, and let be the inactive fragments. We define to be the contact graph of . More precisely, for two fragments we put the edge in iff and are in contact – that is, – and they do not belong444Since we do not put an edge between fragments belonging to the same segment, even if these fragments touch, is formally speaking not a contact graph, but we permit ourselves this abuse of terminology. to the same segment in ; see Figure 1. Because of our general position assumption, no three fragments from different segments meet in a point, and therefore is planar [19, Lemma 2.1]. From now on, with a slight abuse of notation, we will not make a distinction between the nodes in and the corresponding fragments in .
We now wish to create a separator for . In Step 3 we will use to create a separator for . To ensure that will be balanced, we will put weights on the nodes in and use a weighted version of the Planar Separator Theorem, as described next.
For each segment , we designate one of its end fragments – recall that end fragments are always active – as its representative fragment. We give all representative fragments a weight of , and all other fragments a weight of . Note that the total weight of the fragments in is . We apply the weighted separator theorem given below to . This gives us a separator , and parts such that there are no edges between and .
Lemma 3 (Theorem 4 in [24]).
Let be a non-negatively weighted planar graph containing nodes whose weights sum up to at most . The node set can be partitioned into a separator , and sets and such that , no edge connects and , and the total weight of the nodes in , as well as the total weight of the nodes in , is at most .
Step 3: Creating the star-based separator for .
Using the separator created in Step 2, we now create our star-based separator for the intersection graph . We do this by putting one or three stars into for each fragment , as follows. For a segment , define to be the subgraph of consisting of and all its incident edges. Thus, the nodes in are the segment itself plus the segments that intersect .
-
If is an end fragment then we put into .
-
If is an internal fragment then let be the pair of active fragments connected by . We put , , and into .
Note that multiple copies of the same star can be added to . We remove these duplicates to ensure that all star graphs in have unique centers. It can still be the case that several stars in contain the same node. To make the stars pairwise disjoint, we therefore remove non-center nodes until every node appears in at most one star in .
The analysis.
We now show that the construction described above yields a balanced separator of the required size. This requires proving two things: the separation property, namely that the removal of partitions into components of size at most , and the size property, namely that consists of stars.
Proving the separation property.
To prove the separation property, it suffices to show that can be partitioned555Formally, we should have written instead of , since is a set of stars and not a set of nodes, but we prefer the simpler (though technically incorrect) notation. into subsets and such that and , and such that no segment in intersects any segment in .
We define the sets and as follows. For each segment not contained in a star in we look at its representative fragment . Note that must be contained in either or , since would imply that is contained in a star in . If then we add to , else we add to . The value can be at most the total weight of fragments in , and a similar statement holds for . Hence, the next observation follows from the fact that is a balanced separator.
Observation 4.
and .
The more challenging part is to show that no segment in intersects any segment in . We will need the following lemma. Recall that the segment set is partitioned into color classes , which we handled one by one to create the set of active fragments.
Lemma 5.
Let and let be an active fragment. Suppose one of the following conditions holds:
-
(i)
and intersects ,
-
(ii)
, or
-
(iii)
is equivalent to an inactive fragment such that .
Then if , and if .
Proof.
We prove the lemma under the assumption that ; the proof for is analogous. Let be the representative fragment of . Because , we have . We will define sets that contain the active fragments for which conditions (i), (ii), and (iii) hold, respectively, and then argue that the lemma holds for each of the three sets.
Let be the other end fragment of , and let be the ordered set of fragments from that we cross as we trace from to ; see Figure 3. It is possible that does not exist, in this case is empty.
Note that every pair is connected by an active or inactive fragment of , which we denote by . We now define as follows.
-
contains the fragments that are active plus the end fragments and (if it exists) . Thus, simply contains all active fragments of .
-
contains, for each inactive fragment , the unique equivalent active fragment .
It is easily checked that the sets indeed contain exactly those fragments for which conditions (i), (ii), and (iii) hold, respectively. We will now prove that all fragments in are in . To this end, observe that the fragments in correspond to nodes in that form a path starting at and ending at , as illustrated in Figure 3. Recall that . Now assume for a contradiction that there is a fragment that is in . Because there are no edges between and , this means there must be a fragment on the subpath of from to that is an element of the separator . If then , which contradicts that . Otherwise and connects two fragments . Since , this implies that is a star in . Because , this again contradicts that .
We can now prove that does not contain edges between nodes in and nodes in .
Lemma 6.
No segment intersects any segment .
Proof.
Assume for a contradiction that and intersect. Let and be the fragments containing the intersection point. We distinguish three cases.
-
Both and are active. Then and satisfy condition (ii) of Lemma 2, and so and . Because and are active and intersect, is an edge in . But then would not be a proper separator, and we reach a contradiction.
-
Both and are inactive. Let and , and assume without loss of generality that . Because and intersect and segments from the same color class are disjoint, we cannot have . Hence, . Because is inactive, it must be an internal fragment that connects some fragments . Thus, satisfy condition (i) of Lemma 2, with playing the role of , which implies that . Let be the active fragment that is equivalent to . Then satisfies condition (iii) from Lemma 2 and so . The fragments enclose some region . The segment intersects so it is partly contained in ; see Figure 4 for an illustration of the possibilities for entering .
Figure 4: Left: The segment has an endpoint in . Middle: The segment intersects twice. Right: The segment intersects . All of these cases lead to a contradiction. It cannot have an endpoint in , because and are equivalent. Segment cannot intersect twice, because is a collection of pseudo-segments. It follows that must intersect , or . Now observe that , and are all fragments in . This implies that the fragment that intersects satisfies condition (i) from Lemma 2, with playing the role of . But then the intersected fragment would be in , contradicting that and are disjoint.
-
One of the fragments is active and one is inactive. Assume wlog that is inactive and is active. Let and . Because and intersect, we have . If then the arguments from the previous case can be used to obtain a contradiction – indeed, these arguments did not use that is inactive. If then . Also note that intersects . But then satisfies condition (i) from Lemma 2, with playing the role of . It follows that , which contradicts that and are disjoint.
We have reached a contradiction in each case, thus proving the lemma.
Proving the size property.
Because we add at most three stars to per fragment in , it suffices to bound the size of to prove the size property. From Lemma 2 it follows that . The next lemma bounds .
Lemma 7.
, where is the number of color classes in .
Proof.
We first bound , the number of active fragments created for the segments in , in terms of the number of active fragments created for .
Claim. For we have .
Proof.
The set contains at most end fragments. The internal fragments in connect two fragments from . We denote the set of these internal fragments by . Now consider the multi-graph defined as follows.
-
For each fragment in , we add a node to .
-
For each fragment in , we add an edge to between the fragments from that it connects.
-
For each endpoint of a segment in we add a singleton node to . (Observe that the endpoints of segments in lie on an end fragment in , which is already a node in .)
Now consider the obvious drawing of , where the nodes are drawn as fragments of or as points, and the edges are drawn as fragment in . Recall that two active fragments can touch, but they never cross. By continuously shrinking the fragments in and deforming the fragments of appropriately, we can therefore create a plane drawing of . That is, we can create a drawing of in which the nodes are points and the edges are pairwise disjoint curves connecting their endpoints. See Figure 5 for an example of this deformation. For reasons that will become clear shortly, we augment with one additional singleton node , which we place in the unbounded face of .
The graph is a multi-graph because can contain multiple fragments connecting the same pair of fragments . Let be two such fragments. The reason that we added both and to is that and were not equivalent. Hence, the region contains an endpoint belonging to some segment . The deformation process that turns each node the drawing of into a point can be done in such a way that this property is maintained. Thus, after the deformation we have a plane drawing of in which for any two edges that connect the same pair of nodes, there is a node inside the deformed region . Because of the additional node , we are also guaranteed to have at least one node outside this region. A plane multi-graph with this property is called a thin graph. It is known [1, Lemma 5] that the standard inequality that holds for planar graphs (with at least three vertices) also holds for thin graphs. Hence, .
Note that and for all . Hence, the claim above gives us the recurrence with . This gives . Plugging in gives , which proves the lemma.
Since , the number of color classes, is a constant, we obtain the following corollary.
Corollary 8.
The separator contains star graphs.
So far we have considered input sets where the segments are unweighted. To create a separator for -oriented polygons, which we will do in the next section, we need a separator for weighted segments. Fortunately it is straightforward to adapt the construction described above to the weighted setting – we only need to change the weighting scheme we used in Step 2 of the construction. More precisely, instead of assigning a weight to the representative fragment of a segment , we assign to the representative.
Remark.
It is well known that grid graphs do not admit node-based separators of size . Because nodes in grid graphs have constant degree, bicliques in grid graphs have constant size. Hence, grid graphs do not admit biclique-based separators of size . Grid graphs are bipartite and planar, which implies that they are pure-2-dir graphs [18]. We conclude that even pure-2-dir graphs do not admit biclique based separators of size .
Computation time.
If we assume that the appropriate elementary operations on the pseudo-segments – computing the intersection point of two pseudo-segments, for instance, or determining if a point lies inside some region – can be performed in time, that then a brute-force implementation of the algorithm presented above runs in polynomial time. More interestingly, for -oriented line segments, the algorithm can be implemented to run in time, as shown in the full version of this paper. We obtain the following theorem.
Theorem 9.
Let be a -colored set of non-negatively weighted pseudo-segments, where is a fixed constant, whose total weight is at most . Then the intersection graph has a star-based separator of size such that can be partitioned into subsets of weight at most with no edges between them. The bound on the size of the separator is tight, even for axis-parallel segments. In the special case where is a set of -oriented line segments, the separator and parts can be computed in time.
Application to distance oracles.
Arikati et al. [2] presented a simple distance oracle for planar graphs, using node-based separators. Aronov, De Berg, and Theocharous [3] observed that the approach can be adapted to work with clique-based separators, as follows. Let be the graph for which we want to construct a distance oracle.
-
Construct a clique-based separator for , and let be the two parts of the partition given by . For each node and each clique , store the distance , where denotes the hop-distance from to in .
-
Recursively construct distance oracles for the subgraphs induced by the parts and .
Now suppose we want to answer a distance query with nodes . Let . If and do not lie in the same part – that is, we do not have or – then we report . Otherwise, and lie in the same part of the partition, say . Then we report the minimum of and the distance we obtain by querying the recursively constructed oracle for .
This distance oracle uses storage, where is the size of the separator, and it has query time, assuming for some constant . The reported distance is either the exact distance , or it is . The additive error of is because we do not know if and can reach the same node of some clique with paths of length and , respectively – we may have to use an edge inside to connect these paths. We observe that the same approach can be used in combination with star-based (or biclique-based) separators. The only difference is that we now get an additive error of at most , because we may need two additional edges inside a star (or biclique) in the separator. We obtain the following result.
Corollary 10.
Let be a -colored set of pseudo-segments, where is a fixed constant. There is an almost-exact distance oracle for that uses storage and can report the hop-distance between any two nodes , up to an additive error of , in time.
3 Extension to -oriented polygons and string graphs
-Oriented polygons.
Let be a collection of -oriented simple polygons, each with a constant number of edges, where is a fixed constant. The idea is to create a weighted collection of segments to which we can apply Theorem 9, and then use the resulting separator to construct a separator for . The set is created as follows.
-
First, we add each side of every polygon to . For each polygon , we pick an arbitrary side as its representative side, which we give weight ; other sides of are given weight .
-
Second, to handle the containment of polygons within other polygons, we add so-called containment segments to . These segments will always have weight . Let be an orientation that is not used by any segment in . For each polygon let be the set of polygons that fully contain . Take a point , and let be a ray emanating from and with orientation . For each , let be the point where leaves for the first time. Define to be the last such point . We now add as a containment segment to . Note that the containment segment intersects the boundaries of all polygons in . Moreover, is completely contained in . Figure 6 shows examples of containment segments.
Clearly, we can partition into color classes based on the orientation of the segments. We let contain the segments of orientation , which will be important later. The total weight of the segments is , so we can apply Theorem 9. Let be the resulting separator for , and let and be the two parts of weight at most into which splits . We construct a separator and parts for as follows.
For each star in we consider its center . If is a side of a polygon then we add to , where is the subgraph of consisting of and its incident edges. If is a containment segment that we generated for polygon , then let be the polygon enclosing such that . We add to . As before, we remove duplicate stars and we remove polygons from stars to ensure that each polygon is in at most one star. To create the parts , we consider the representative sides of the polygons that are not in a star in . If the representative side is in , then we put in part ; otherwise we put in part .
The analysis.
Proving the size property, namely that , is easy. Indeed, we put sides and one containment segment per polygon into . Hence, and thus . It remains to prove the separation property.
Since the total weight of and of are both at most and each representative side has weight , it follows that and . Next, we prove that there are no edges from to in . We need the following lemma.
Lemma 11.
Consider a polygon . If (resp. ), then all sides of are in (resp. ).
Proof.
First consider the case . Suppose for a contradiction that not all sides of are in . Hence, has a side or a side . We claim that in the latter case must also have a side . To see this, consider the representative side of . Note that since we put into . Also note that there is a path in connecting to – the nodes on this path correspond to the sides of that we encounter as we traverse from to in, say, clockwise order. Since and , one of the nodes on this path must be in and be a side of . This establishes our claim.
It remains to prove that if has a side in , then . If is the center of a star in , then by construction is the center of a star in . If is a non-center node in some we distinguish two cases. If is a side of some polygon , then intersects and contains . Consequently, is a non-center node in , thus . If is a containment segment where lies on some polygon , then intersects because is fully contained in . Because it follows that , and thus . We have reached a contradiction in all cases. We conclude that all sides of are in .
Now consider the case . We can follow the proof for the case if the representative side of is in . This must indeed be the case: we cannot have because then we would have put into , and cannot be a node in a star in because then would have been in a star in , as has been shown above. Hence, the lemma is also true if .
We can now prove that there are no edges from to in .
Lemma 12.
No polygon intersects any polygon .
Proof.
Suppose for a contradiction that and intersect. We distinguish two cases.
-
The boundaries of and intersect. Let and be the sides of and that intersect. Because we have by Lemma 3. Similarly, we have . But this contradicts that is a separator for with parts .
-
The boundaries of and do not intersect. Assume wlog that . Consider the containment segment . By construction of the containment segments, polygon has a side that intersects . Recall that the containment segments were put into the set that was handled first by the algorithm from the previous section. Hence, there will be a fragment that is identical to . Let be such that . Then satisfies condition (i) of Lemma 2, with playing the role of . Since is a side of , we have by Lemma 3. Thus, Lemma 2 implies that .
Putting everything together, we obtain the following theorem. The runtime guarantee for computing the separator is proven in the full version.
Theorem 13.
Let be a set of constant-complexity -oriented polygons in the plane. Then the intersection graph has a star-based separator of size , which can be computed in time. Moreover, there is an almost exact distance oracle for that uses storage and that can report the hop-distance between any two nodes , up to an additive error of , in time.
Remark.
The theorem above is stated for constant-complexity -oriented polygons. However, it also holds in a more geneal setting, namely for a collection of polygons with edges in total. We can then find a separator of size and parts such that the number of polygons in and is at most . Alternatively, we can guarantee that the total number of edges of the polygons in (and similarly for ) is at most . Finally, the theorem also works in a weighted setting.
String graphs.
A string graph is the intersection graph of a set of curves in the plane [14] – no conditions are put on the curves and, in particular, any two curves in can intersect arbitrarily many times. (But note that there is still at most one edge between the corresponding nodes in .) It is known that for any set of connected regions in the plane, there is a set of strings such that and are isomorphic [23]. Thus, string graphs are the most general type of intersection graphs of connected regions in the plane.
Matoušek [25] proved that any string graph with nodes and edges has a (node-based) separator of size .666A paper by Lee [23] claims that a separator of size exists for string graphs, but Bonnet et al. [29] note that there is an error in this paper. It is not yet known if the proof can be repaired. Using this result we can obtain a star-based separator of sublinear size for a string graph using the following simple two-stage process.
-
Stage 1: As long as there is a node of degree at least , remove from and add it to the separator. This puts at most stars into the separator.
-
Stage 2: Construct a node-based separator on the remaining string graph, using Matoušeks method [25] and put these nodes as singletons into the separator. Since the maximum degree after Stage 1 is , the remaining graph has edges. Hence, in Stage 2 we put stars into the separator.
By using the star-based separator exactly as in Section 2, this yields the following.
Proposition 14.
Let be a set of strings in the plane. Then the string graph has a star-based separator of size . Moreover, there is an almost exact distance oracle for that uses storage and that can report the hop-distance between any two nodes , up to an additive error of , in time.
Recall that the distance oracle of Aronov, De Berg and Theocharous [12] for geodesic disks in the plane has storage and query time. Thus the distance oracle in Proposition 3 is more general (as it can handle any string graph), has better storage, and better query time. The only downside is that the additive error in our distance oracle is at most 2, while for their oracle it is at most 1.
Remark.
One may wonder if any graph, and not just any string graph, admits a sublinear star-based separator, but this is not the case. For example, 3-regular expanders do not admit sublinear node-based separators [13] and working with star-based separators instead of node-based separators does not help in constant-degree graphs.
4 Concluding remarks
Motivated by the fact that intersection graphs of non-fat objects may not admit sublinear node-based or clique-based separators, we introduced a biclique-based and star-based separators. We proved that the intersection graph of any -colored set of pseudo-segments has a star-based separator of size , and extended the result to -oriented polygons. We also presented a straightforward algorithm to compute a star-based separator of size for any string graph. These results lead to almost exact distance oracles with subquadratic storage and sublinear query times. To the best of our knowledge, such distance oracles did not yet exist – not even for intersection graphs of axis-parallel line segments.
Our work raises several questions. Can we improve the size of star-based separators for string graphs from to ? If not, can we perhaps do so for -colored sets of strings, or for arbitrary sets of line segments? It is also interesting to explore other applications of biclique-based separators, besides distance oracles, and to see if the bounds we obtained for distance oracles can be improved. While clique-based separators have been used to design subexponential algorithms for problems such as -Coloring [12] and Dominating Set [11], it is unlikely that our biclique-based separator will yield new results for these problems. This is due to existing conditional lower bound (under ETH) for -Coloring and Dominating Set on -dir and segment intersection graphs, respectively [5]. Instead, problems whose main difficulty lies in finding (hop-)distances – computing the diameter in subquadratic time [8] is an example – would be interesting to consider.
Recent work on the (weighted) Independent Set problem on restricted graph classes has exploited properties that can be interpreted through the lens of star-based separators [16, §1.4]. It is known that for every constant , the family of graphs that does not contain an induced path of length admits balanced separators that consist of the neighborhoods of vertices (cf. [17, Thm. 1.2]). Hence, such graphs have star-based separators of constant size. This property has been used to develop quasi-polynomial-time approximation schemes for weighted Independent Set on -free graphs [10, 17], as well as exact subexponential-time algorithms for unweighted Independent Set on -free graphs [4]. Can our star-based separators of size also be used to obtain new algorithms for restricted input families?
References
- [1] Jochen Alber, Michael R. Fellows, and Rolf Niedermeier. Polynomial-time data reduction for dominating set. J. ACM, 51(3):363–384, 2004. doi:10.1145/990308.990309.
- [2] Srinivasa Rao Arikati, Danny Z. Chen, L. Paul Chew, Gautam Das, Michiel H. M. Smid, and Christos D. Zaroliagis. Planar spanners and approximate shortest path queries among obstacles in the plane. In Proc. 4th Annual European Symposium on Algorithms (ESA 1996), pages 514–528, 1996. doi:10.1007/3-540-61680-2_79.
- [3] Boris Aronov, Mark de Berg, and Leonidas Theocharous. A clique-based separator for intersection graphs of geodesic disks in . In Proc. 40th International Symposium on Computational Geometry (SoCG), pages 9:1–9:15, 2024. doi:10.4230/LIPIcs.SoCG.2024.9.
- [4] Gábor Bacsó, Daniel Lokshtanov, Dániel Marx, Marcin Pilipczuk, Zsolt Tuza, and Erik Jan van Leeuwen. Subexponential-time algorithms for maximum independent set in -free and broom-free graphs. Algorithmica, 81(2):421–438, 2019. doi:10.1007/S00453-018-0479-5.
- [5] Édouard Bonnet and Pawel Rzazewski. Optimality program in segment and string graphs. Algorithmica, 81(7):3047–3073, 2019. doi:10.1007/s00453-019-00568-7.
- [6] Timothy M. Chan and Dimitrios Skrepetos. Approximate shortest paths and distance oracles in weighted unit-disk graphs. J. Comput. Geom., 10(2):3–20, 2019. doi:10.20382/JOCG.V10I2A2.
- [7] Hsien-Chih Chang, Jie Gao, and Hung Le. Computing diameter+1 in truly subquadratic time for unit-disk graphs. CoRR, abs/2401.12881, 2024. doi:10.48550/arXiv.2401.12881.
- [8] Hsien-Chih Chang, Jie Gao, and Hung Le. Computing diameter+2 in truly-subquadratic time for unit-disk graphs. In Proc. 40th International Symposium on Computational Geometry (SoCG), pages 38:1–38:14, 2024. doi:10.4230/LIPICS.SoCG.2024.38.
- [9] Panagiotis Charalampopoulos, Pawel Gawrychowski, Yaowei Long, Shay Mozes, Seth Pettie, Oren Weimann, and Christian Wulff-Nilsen. Almost optimal exact distance oracles for planar graphs. J. ACM, 70(2):12:1–12:50, 2023. doi:10.1145/3580474.
- [10] Maria Chudnovsky, Marcin Pilipczuk, Michal Pilipczuk, and Stéphan Thomassé. Quasi-polynomial time approximation schemes for the maximum weight independent set problem in H-free graphs. In Proc. 31st ACM-SIAM Symposium on Discrete Algorithms (SODA 2020), pages 2260–2278, 2020. doi:10.1137/1.9781611975994.139.
- [11] Mark de Berg, Hans L. Bodlaender, Sándor Kisfaludi-Bak, Dániel Marx, and Tom C. van der Zanden. A framework for Exponential-Time-Hypothesis-tight algorithms and lower bounds in geometric intersection graphs. SIAM J. Comput., 49:1291–1331, 2020. doi:10.1137/20M1320870.
- [12] Mark de Berg, Sándor Kisfaludi-Bak, Morteza Monemizadeh, and Leonidas Theocharous. Clique-based separators for geometric intersection graphs. Algorithmica, 85(6):1652–1678, 2023. doi:10.1007/S00453-022-01041-8.
- [13] Zdeněk Dvořák and Sergey Norin. Strongly sublinear separators and polynomial expansion. SIAM J. Discrete Math., 30(2):1095–1101, 2016. doi:10.1137/15M1017569.
- [14] Gideon Ehrlich, Shimon Even, and Robert Endre Tarjan. Intersection graphs of curves in the plane. J. Comb. Theory B, 21(1):8–20, 1976. doi:10.1016/0095-8956(76)90022-8.
- [15] Jie Gao and Li Zhang. Well-separated pair decomposition for the unit-disk graph metric and its applications. SIAM J. Comput., 35(1):151–169, 2005. doi:10.1137/S0097539703436357.
- [16] Peter Gartland. Quasi-Polynomial Time Techniques for Independent Set and Beyond in Hereditary Graph Classes. PhD thesis, University of California, Santa Barbara, USA, 2023. URL: https://www.escholarship.org/uc/item/0kk6d2jv.
- [17] Peter Gartland, Daniel Lokshtanov, Tomás Masarík, Marcin Pilipczuk, Michal Pilipczuk, and Pawel Rzazewski. Maximum weight independent set in graphs with no long claws in quasi-polynomial time. In Proc. 56th ACM Symposium on Theory of Computing (STOC 2024), pages 683–691, 2024. doi:10.1145/3618260.3649791.
- [18] I.Ben-Arroyo Hartman, Ilan Newman, and Ran Ziv. On grid intersection graphs. Discrete Mathematics, 87(1):41–52, 1991. doi:10.1016/0012-365X(91)90069-E.
- [19] Petr Hliněný. The maximal clique and colourability of curve contact graphs. Discrete Applied Mathematics, 81(1):59–68, 1998. doi:10.1016/S0166-218X(97)00075-9.
- [20] Jan Kratochvíl. A special planar satisfiability problem and a consequence of its NP-completeness. Discrete Applied Mathematics, 52(3):233–252, 1994. doi:10.1016/0166-218X(94)90143-0.
- [21] Jan Kratochvíl and Jaroslav Nešetřil. Independent set and clique problems in intersection-defined classes of graphs. Commentationes Mathematicae Universitatis Carolinae, 031(1):85–93, 1990. URL: http://eudml.org/doc/17810.
- [22] Hung Le and Christian Wulff-Nilsen. Optimal approximate distance oracle for planar graphs. In Proc. 62nd IEEE Symposium on Foundations of Computer Science (FOCS 2021), pages 363–374. IEEE, 2021. doi:10.1109/FOCS52979.2021.00044.
- [23] James R. Lee. Separators in region intersection graphs. In Proc. 8th Innovations in Theoretical Computer Science Conference (ITCS 2017), pages 1:1–1:8, 2017. doi:10.4230/LIPIcs.ITCS.2017.1.
- [24] Richard J. Lipton and Robert Endre Tarjan. A separator theorem for planar graphs. SIAM Journal on Applied Mathematics, 36(2):177–189, 1979. doi:10.1137/0136016.
- [25] Jirí Matoušek. Near-optimal separators in string graphs. Comb. Probab. Comput., 23(1):135–139, 2014. doi:10.1017/S0963548313000400.
- [26] Christian Sommer. Shortest-path queries in static networks. ACM Comput. Surv., 46(4):45:1–45:31, 2014. doi:10.1145/2530531.
- [27] Mikkel Thorup and Uri Zwick. Approximate distance oracles. J. ACM, 52(1):1–24, 2005. doi:10.1145/1044731.1044732.
- [28] Jie Xue and Meirav Zehavi. Parameterized algorithms on geometric intersection graphs. Computer Science Review, 58:100796, 2025. doi:10.1016/j.cosrev.2025.100796.
- [29] Édouard Bonnet, Jędrzej Hodor, Tuukka Korhonen, and Tomáš Masařík. Treewidth is polynomial in maximum degree on weakly sparse graphs excluding a planar induced minor. CoRR, 2024. arXiv:2312.07962.
