On Plane Constrained BoundedDegree Spanners^{†}^{†}thanks: Research supported in part by the Natural Science and Engineering Research Council of Canada, Carleton University’s President’s 2010 Doctoral Fellowship, the Ontario Ministry of Research and Innovation, and the Danish Council for Independent Research, Natural Sciences, grant DFF132300247, and JST ERATO Grant Number JPMJER1305, Japan.
Abstract
Let be a finite set of points in the plane and a set of noncrossing line segments with endpoints in . The visibility graph of with respect to , denoted , has vertex set and an edge for each pair of vertices in for which no line segment of properly intersects . We show that the constrained halfgraph (which is identical to the constrained Delaunay graph whose empty visible region is an equilateral triangle) is a plane 2spanner of . We then show how to construct a plane 6spanner of with maximum degree , where is the maximum number of segments of incident to a vertex.
1 Introduction
A geometric graph is a graph whose vertices are points in the plane and whose edges are line segments between pairs of vertices. A graph is called plane if no two edges intersect properly. Every edge is weighted by the Euclidean distance between its endpoints. The distance between two vertices and in , denoted by or simply when is clear from the context, is defined as the sum of the weights of the edges along the shortest path between and in . A subgraph of is a spanner of (for ) if for each pair of vertices and , . The smallest value for which is a spanner is the spanning ratio or stretch factor of . The graph is referred to as the underlying graph of . The spanning properties of various geometric graphs have been studied extensively in the literature (see [5, 9] for a comprehensive overview of the topic). However, most of the research has focused on constructing spanners where the underlying graph is the complete Euclidean geometric graph. We study this problem in a more general setting with the introduction of line segment constraints.
Specifically, let be a set of points in the plane and let be a set of line segments with endpoints in , with no two line segments intersecting properly. The line segments of are called constraints. Two vertices and can see each other if and only if either the line segment does not properly intersect any constraint or is itself a constraint. If two vertices and can see each other, the line segment is a visibility edge. The visibility graph of with respect to a set of constraints , denoted , has as vertex set and all visibility edges as edge set. In other words, it is the complete graph on minus all edges that properly intersect one or more constraints in .
This setting has been studied extensively within the context of motion planning amid obstacles. Clarkson [7] was one of the first to study this problem and showed how to construct a linearsized spanner of . Subsequently, Das [8] showed how to construct a spanner of with constant spanning ratio and constant degree. Bose and Keil [4] showed that the Constrained Delaunay Triangulation is a 2.42spanner of . In this article, we show that the constrained halfgraph (which is identical to the constrained Delaunay graph whose empty visible region is an equilateral triangle) is a plane 2spanner of by generalizing the approach used by Bose et al. [3]. A key difficulty in proving the latter stems from the fact that the constrained Delaunay graph is not necessarily a triangulation (see Figure 1). We then generalize the elegant construction of Bonichon et al. [2] to show how to construct a plane 6spanner of with maximum degree , where and is the number of constraints incident to a vertex .
2 Preliminaries
We define a cone to be the region in the plane between two rays originating from a vertex referred to as the apex of the cone. We let six rays originate from each vertex, with angles to the positive axis being multiples of (see Figure 3). Each pair of consecutive rays defines a cone. For ease of exposition, we only consider point sets in general position: no two points define a line parallel to one of the rays that define the cones and no three points are collinear. These assumptions imply that we can consider the cones to be open. If a set of points is not in general position, one can easily find a suitable rotation of the point set to put it in general position.
Let be the sequence of cones in counterclockwise order starting from the positive axis. The cones , , and are called positive cones and , , and are called negative cones. By using addition and subtraction modulo 3 on the indices, positive cone has negative cone as clockwise next cone and negative cone as counterclockwise next cone. A similar statement holds for negative cones. We use and to denote cones and with apex . Note that for any two vertices and , if and only if .
Let vertex be an endpoint of a constraint and let the other endpoint lie in cone . The lines through all such constraints split into several parts. We call these parts subcones and denote the th subcone of by , numbered in counterclockwise order (see Figure 3). When a constraint splits a cone of into two subcones, we define to lie in both of these subcones. We call a subcone of a positive cone a positive subcone and a subcone of a negative cone a negative subcone. We consider a cone that is not split to be a single subcone.
We now introduce the constrained halfgraph, a generalized version of the halfgraph as described by Bonichon et al. [1]: for each positive subcone of each vertex , add an edge from to the closest vertex in that subcone that can see , where distance is measured along the bisector of the original cone (not the subcone) (see Figure 5). More formally, we add an edge between two vertices and if can see , , and for all vertices that can see , , where and denote the projection of and on the bisector of and denotes the length of the line segment between two vertices and . Note that our assumption of general position implies that each vertex adds at most one edge to the graph for each of its positive subcones.
Given a vertex in a positive cone of vertex , we define the canonical triangle to be the triangle defined by the borders of and the line through perpendicular to the bisector of (see Figure 5). Note that for each pair of vertices there exists a unique canonical triangle. We say that a region is empty if it does not contain any vertices.
3 Spanning Ratio of the Constrained HalfGraph
In this section we show that the constrained halfgraph is a plane 2spanner of the visibility graph . To do this, we first prove a property of visibility graphs. Recall that a region is empty if it does not contain any vertices.
Lemma 1
Let , , and be three arbitrary points in the plane such that and are visibility edges and is not the endpoint of a constraint intersecting the interior of triangle . Then there exists a convex chain of visibility edges from to in triangle , such that the polygon defined by , and the convex chain is empty and does not contain any constraints.
Proof. Let be the set of vertices of inside triangle . If is empty, no constraint can cross , since one of its endpoints would have to be inside , so our convex chain is simply . Otherwise, we build the convex hull of . Note that is part of the convex hull since lies inside to one side of the line through . When we remove this edge, we get a convex chain from to in triangle . By the definition of a convex hull, the polygon defined by , and the convex chain is empty.
Next, we show that two consecutive vertices and along the convex chain can see each other. Let be the intersection of and the line through and and let be the intersection of and the line through and (see Figure 6). Since is not the endpoint of a constraint intersecting the interior of triangle and, by construction, both and can see , any constraint crossing would need to have an endpoint inside . But the polygon defined by , and the convex chain is empty, so this is not possible. Therefore can see .
Finally, since the polygon defined by , and the convex chain is empty and consists of visibility edges, any constraint intersecting its interior needs to have as an endpoint, which is not allowed. Hence, the polygon does not contain any constraints.
Theorem 1
Let and be vertices, with in a positive cone of , such that is a visibility edge. Let be the midpoint of the side of opposing , and let be the unsigned angle between the lines and . There exists a path connecting and in the constrained halfgraph of length at most that lies inside .
Proof. We assume without loss of generality that . We prove the theorem by induction on the area of . Formally, we perform induction on the rank, when ordered by area, of the triangles for all pairs of vertices and that can see each other. Let denote the length of the shortest path from to in the constrained halfgraph that lies inside . Let and be the upper left and right corner of , and let and be the triangles and (see Figure 9). Our inductive hypothesis is the following:

If is empty, then .

If is empty, then .

If neither nor is empty, then .
We first note that this induction hypothesis implies the theorem: using the side of as the unit of length, we have that (see Figure 9).
Base case: Triangle has minimal area. Since the triangle is a smallest canonical triangle, is the closest vertex to in its positive subcone. Hence the edge is in the constrained halfgraph, and . From the triangle inequality, we have that , so the induction hypothesis holds.
Induction step: We assume that the induction hypothesis holds for all pairs of vertices that can see each other and have a canonical triangle whose area is smaller than the area of . If is an edge in the constrained halfgraph, the induction hypothesis follows by the same argument as in the base case. If there is no edge between and , let be the visible vertex closest to in the positive subcone containing , and let and be the upper left and right corner of (see Figure 9). By definition, , and by the triangle inequality, . We assume without loss of generality that lies to the left of , which means that is not empty.
Since and are visibility edges, by applying Lemma 1 to triangle , a convex chain of visibility edges connecting and exists (see Figure 9). Note that, since is the closest visible vertex to , every vertex along the convex chain lies above the horizontal line through .
When looking at two consecutive vertices and along the convex chain, there are three types of configurations: (i) , (ii) and lies to the right of or has the same coordinate as , (iii) and lies to the left of . Let and , the vertices and will be defined for each case. By convexity, the direction of is rotating counterclockwise for increasing . Thus, these configurations occur in the order Type (i), Type (ii), and Type (iii) along the convex chain from to . We bound as follows (see Figure 10):
Type (i): If , let and be the upper left and lower corner of . Triangle lies between the convex chain and , so it must be empty by Lemma 1. Since can see and has smaller area than , the induction hypothesis gives that is at most .
Type (ii): If , let and be the left and right corner of . Since can see and has smaller area than , the induction hypothesis applies. Whether and are empty or not, is at most . Since lies to the right of or has the same coordinate as , we know , so is at most .
Type (iii): If and lies to the left of , let and be the left and right corner of . Since can see and has smaller area than , we can apply the induction hypothesis. Thus, if is empty, is at most and if is not empty, is at most .
Recall that and are the upper left and right corner of and that is the triangle (see Figure 9). To complete the proof, we consider three cases: (a) , (b) and is empty, (c) and is not empty.
Case (a): If , the convex chain cannot contain any Type (iii) configurations: for Type (iii) configurations to occur, needs to lie to the left of . However, by construction, lies to the right of the line through and . Hence, since , lies to the right of . We can now bound as follows using the bounds on Type (i) and Type (ii) configurations outlined above (see Figure 11):
We see that the latter is equal to as required.
Case (b): If and is empty, the convex chain can contain Type (iii) configurations. However, since is empty and the area between the convex chain and is empty (by Lemma 1), all triangles are also empty. Hence using the induction hypothesis, is at most for all . Using these bounds on the lengths of the paths between the vertices along the convex chain, we can bound as in the previous case. Therefore, as required.
Case (c): If and is not empty, the convex chain can contain Type (iii) configurations. Since is not empty, the triangles need not be empty. Recall that lies in , hence neither nor are empty. Therefore, it suffices to prove that . Let be the first Type (iii) configuration along the convex chain (if it has any), let and be the upper left and right corner of , and let be the upper right corner of (see Figure 12). Note that since and lies to the left of , is smaller than .
Since the expression is increasing for , the maximum value is attained by inserting the extreme value . This leads to the following corollary.
Corollary 2
The constrained halfgraph is a 2spanner of the visibility graph.
Next, we prove that the constrained halfgraph is plane.
Lemma 2
Let , , , and be four distinct vertices such that the two canonical triangles and intersect. Then at least one of the corners of one canonical triangle is contained in the other canonical triangle.
Proof. If one triangle contains the other triangle, it contains all of its corners. Therefore we focus on the case where neither triangle contains the other.
By definition, the upper boundaries of and are parallel, the left boundaries of and are parallel, and the right boundaries of and are parallel. Because we assume that no two vertices define a line parallel to one of the rays that define the cones, we assume, without loss of generality, that the upper boundary of lies below the upper boundary of . The upper boundary of must lie above the lower corner of , since otherwise the triangles do not intersect. If the upper left (right) corner of lies to the right (left) of the right (left) boundary of , the triangles cannot intersect. Hence, either one of the upper corners of is contained in or the upper boundary of intersects both the left and right boundary of . In the latter case, the fact that the left boundaries of and are parallel and the right boundaries of and are parallel, implies that the lower corner of is contained in .
Lemma 3
The constrained halfgraph is plane.
Proof. We prove the lemma by contradiction. Assume that two edges and cross at a point . Since the two edges are contained in their canonical triangles, these triangles must intersect. By Lemma 2 we know that at least one of the corners of one triangle lies inside the other. We focus on the case where the upper right corner of lies inside . The other cases are analogous. Since and cross, this also means that either or must lie in .
Assume without loss of generality that and (see Figure 13). If , we look at triangle . Since both and can see , we get by Lemma 1 that either can see or contains a vertex. In both cases, can see a vertex in this subcone that is closer than , contradicting the existence of the edge .
If , there exists a constraint such that lies to one side of the line through and lies on the other side. Since this constraint cannot cross , lies inside and is therefore closer to than . Since by definition can see , this also contradicts the existence of .
4 Bounding the Maximum Degree
In this section, we show how to construct a bounded degree subgraph of the constrained halfgraph that is a 6spanner of the visibility graph. Given a vertex and one of its negative subcones, we define the canonical sequence of this subcone as the vertices in this subcone that are neighbors of in the constrained halfgraph, in counterclockwise order (see Figure 14). These vertices all have as their closest visible vertex in a positive subcone. The canonical path is defined by connecting consecutive vertices in the canonical sequence. This definition differs slightly from the one used by Bonichon et al. [2].
To construct , we start with a graph with vertex set and no edges. Then for each negative subcone of each vertex , we add the canonical path and an edge between and the closest vertex along this path, where distance is measured using the projections of the vertices onto the bisector of the cone containing the subcone. A given edge may be added by several vertices, but it appears only once in . This construction is similar to the construction of the unconstrained degree9 halfgraph described by Bonichon et al. [2]. We proceed to prove that is a spanning subgraph of the constrained halfgraph with spanning ratio 3.
Lemma 4
is a subgraph of the constrained halfgraph.
Proof. Given a vertex , we look at one of its negative subcones, say . The edges added to for this subcone can be divided into two types: edges of the canonical path, and the edge between and the closest vertex along the canonical path. Since every vertex along the canonical path is by definition connected to in the constrained halfgraph, it remains to show that the edges of the canonical path are part of the constrained halfgraph.
Let and be two consecutive vertices in the canonical path of , with before in counterclockwise order. By applying Lemma 1 on the visibility edges and , we get a convex chain of visibility edges, which together with and form a polygon empty of vertices and constraints.
Since is empty, is not the endpoint of a constraint lying between and . Hence, cannot be in cone , otherwise would be closer to than in the subcone of that contains . Similarly, cannot lie in cone . By convexity of the chain, this implies that no vertex on the chain can lie in cone of another vertex on the chain. Hence, since is empty, all vertices can see .
We first show that , i.e. that the chain is just the line . We prove this by contradiction, so assume that . Hence, there is at least one vertex with . As such a vertex is not part of the canonical path in , it must see a closest vertex different from in the subcone of that contains . As vertices on the chain cannot lie in of each other, cannot be a vertex on the chain. As is empty, must therefore lie strictly outside of , and must properly intersect either or . But this contradicts the planarity of the constrained halfgraph, as , , and would all be edges of this graph. Hence, and the chain is a single visibility edge .
It remains to show that is an edge of the constrained halfgraph. Assume without loss of generality that lies in (the case that lies in is similar). We need to show that is the closest visible vertex in subcone . We prove this by contradiction, so assume another vertex in is the closest. Vertex lies in , which is partitioned into a part inside , a part to the right of , and a part below (see Figure 15). If lies to the right of , we would have intersecting edges and , contradicting planarity of the constrained halfgraph. As is empty, must lie below (see Figure 15).
Applying Lemma 1 on the visibility edges and , we get a convex chain of visibility edges and an empty polygon . Vertex cannot lie in , as this would contradict that is the closest visible vertex to in . Hence, since and are empty, can see . Since and are two consecutive vertices in the canonical sequence of , is not part of this canonical sequence. So it must see a closest vertex different from in the subcone of that contains . Neither nor the convex chain from to lie in . As and are empty, must properly intersect either or , contradicting the planarity of the constrained halfgraph.
For future reference, we note that during the proof of Lemma 4 the following two properties were shown.
Corollary 3
Let , , and be three vertices such that and are neighbors along a canonical path of in . Vertex cannot lie in or .
Corollary 4
Let , , and be three vertices such that and are neighbors along a canonical path of in . Triangle is empty and does not contain any constraints.
Theorem 5
is a 3spanner of the constrained halfgraph.
Proof. We prove the theorem by showing that for every edge in the constrained halfgraph, where lies in a negative cone of , contains a spanning path between and of length at most . This path will consist of a part of the canonical path in the subcone of that contains plus the edge between and the closest canonical vertex in that subcone.
We assume without loss of generality that . Let be the vertex closest to on the canonical path in the subcone that contains and let be the vertices along the canonical path from to (see Figure 16). Let and denote the rays defining the left and right boundaries of for and let denote the ray defining the right boundary of (as seen from ). Let be the intersection of and , for , and let be the intersection of and . Let be the intersection of and the horizontal line through and let be the intersection of and . The length of the path between and in can now be bounded as follows:
Since lies in of each of the vertices along the canonical path, all project onto and all project onto , when projecting along lines parallel to the boundaries of instead of using orthogonal projections. By Corollary 3 no edge on the canonical path can lie in of one of its endpoints, hence the projections of onto do not overlap. For the same reason, the projections of onto do not overlap. Hence, we have that and .
Let be . Using some basic trigonometry, we get and . Thus the spanning ratio can be expressed as:
Since this is a nondecreasing function in for , its maximum value is obtained when , where the spanning ratio is 3.
Corollary 6
is a 6spanner of the visibility graph.
To bound the degrees of the vertices, we use a charging scheme that charges the edges of a vertex to its cones. Summing the charge for all cones of a vertex then bounds its degree.
Recalling that the edges of are generated by canonical paths, consider a canonical path in , created by a vertex . We use to indicate an arbitrary vertex along the canonical path, and we let be the closest vertex to along the canonical path. The edges of generated by this canonical path are charged to cones as follows:

The edge is charged to and to .

An edge of the canonical path that lies in is charged to .

An edge of the canonical path that lies in is charged to .

An edge of the canonical path that lies in is charged to .

An edge of the canonical path that lies in is charged to .
Essentially, the edge between and is charged to the cones that contain it and edges along the canonical path are charged to the adjacent cone that is closer to the cone of that contains . In other words, all charges are shifted one cone towards the positive cone containing (see Figure 17).
By Corollary 3, no edge on the canonical path can lie in or , so the charging scheme above is exhaustive. Note that each edge is charged to both of its endpoints and therefore the charge on a vertex is an upper bound on its degree (only an upper bound, since an edge can be generated and charged by several canonical paths).
Lemma 5
Let be a vertex that is incident to at least two constraints in the same positive cone . Let be a subcone between two constraints and let be the closest visible vertex in this subcone. Let be the subcone of that contains and (when is a constraint) intersects . Then is the only vertex on the canonical path of .
Proof.
Let and be the two constraints between which subcone lies. By applying Lemma 1 on these visibility edges, we get a convex chain which together with and form a polygon empty of vertices and constraints. Since is the closest vertex visible to inside , must be the vertex on this chain closest to . In particular, it is at least as close to as and . Since and are constraints and is empty, there can be no vertex other than in from which is visible. Hence, is the only vertex on the canonical path of .
Lemma 6
Each positive cone of a vertex has a charge of at most , where is the number of incident constraints in .
Proof. Let be a vertex such that is part of the canonical path of . We first show that if this canonical path charges , then must lie in . Assume lies in , . Since all charges of this canonical path are shifted one cone towards , a charge to would have to come from . However, by Corollary 3, no edge on the canonical path of a vertex in can lie in .
Next, we observe that there can be only one such vertex for each subcone of . This follows because is only part of canonical paths of vertices of which is an edge in the constrained halfgraph, and there is at most one edge for each positive subcone.
If is a single subcone and is not the closest vertex to on its canonical path, is charged for at most two edges along a single canonical path. Hence, its charge is at most 2. If is the closest vertex to , the negative cones adjacent to this positive cone cannot contain any vertices of the canonical path. If they did, these vertices would be closer to than is, as distance is measured using the projection onto the bisector of the cone of . Hence, if is the closest vertex to , the positive cone containing is charged 1. Thus, when the positive cone is a single subcone, the cone is charged 2 if it has an edge of the canonical path in each adjacent negative cone, and at most 1 otherwise.
Next, we look at the case where is not a single subcone. For each subcone, except the first and last, the canonical path of the vertex from that subcone consists only of , by Lemma 5. Hence, we get a charge of 1 per subcone and a charge of at most in total for all subcones except the first and last subcone. We complete the proof by showing that the vertices of the first and the last subcone can add a charge of at most 1 each.
Consider the first subcone . The argument for the last subcone is symmetric. If is the closest vertex to on its canonical path, the negative cones adjacent to this positive cone cannot contain any vertices of the canonical path, since these would be closer to than is. Hence, the vertex of this subcone adds a charge of 1. If is not the closest vertex to , we argue that is the end of the canonical path of the vertex of the subcone, implying that can add a charge of at most 1: Let be the other endpoint of the constraint that defines the subcone. Since is the closest visible vertex in this subcone of , it cannot lie further from than . If is , constraint splits and only one of these two parts intersects the first subcone of . Hence is the end of the canonical path of . If is not , lies closer to than . Any vertex before (in counterclockwise order) on the canonical path would have to lie in or , since by Corollary 3, cannot lie in or . Since must also lie in to be on this canonical path, vertex is not visible from due to the constraint . Hence, no such vertex can exist on the canonical path, implying that is the end of the canonical path.
Summing up all charges, each positive cone is charged at most if , and at most 2 otherwise. Hence, a positive cone is charged at most .
Corollary 7
If the th positive cone of a vertex has a charge of , then , i.e. it does not contain any constraints having as an endpoint in and is charged for two edges in the adjacent negative cones.
Lemma 7
Each negative cone of a vertex has a charge of at most , where is the number of incident constraints in .
Proof. A negative cone of a vertex is charged by the edge to the closest vertex in each of its subcones and it is charged by the two adjacent positive cones if edges of canonical paths lie in those cones (see Figure 18). We first show that vertices that do not lie in the positive subcones directly adjacent to cannot have an edge involving along their canonical paths. Let be a vertex that does not lie in a positive subcone directly adjacent to and let be the constraint closest to that defines the boundary of the subcone of that contains . For to have an edge along its canonical path that is charged to , it needs to lie further from than , since otherwise no vertex creating such an edge is visible to . However, this implies that would not connect to , thus it would not part of the canonical path of .
As can only be part of the canonical path of a single vertex in each of its positive subcones, we need to consider only the charges to from the canonical path created by the closest visible vertices in the two positive subcones directly adjacent to . Let these vertices be u and w.
Next, we show that every negative cone can be charged by at most one edge in total from its adjacent positive cones. Suppose that lies in a positive cone of and is part of the canonical path of . Then lies in a negative cone of , which means that lies in a positive cone of and cannot be part of a canonical path for . It remains to show that this negative cone of cannot be charged by an edge from a canonical path of a different vertex . Since forms a triangle in constrained halfgraph and this graph is planar, no edge of can cross any of the edges of . This implies that either and lie inside or and lie inside . However, by Corollary 4, triangles formed by a vertex and two vertices and that are neighbors along the canonical path of are empty. Therefore, and cannot lie inside and and cannot lie inside . Thus every negative cone charged by at most one edge in total from its adjacent positive cones.
Finally, we show that if one of or is present, the negative cone does not have an edge to the closest vertex in that cone and it contains no constraint that has as an endpoint. We first show that if one of or is present, the negative cone does not have an edge to the closest vertex in that cone. We assume without loss of generality that is present, , and . Since and are neighbors on the canonical path of , we know that the triangle is part of the constrained halfgraph and, by Corollary 4, this triangle is empty. Furthermore, since is an edge of the constrained halfgraph and, by Lemma 3, the constrained halfgraph is plane, cannot have an edge to the closest vertex beyond . Hence the negative cone does not have an edge to the closest vertex in that cone. By the same argument, the negative cone cannot contain a constraint that has as an endpoint.
It follows that if this negative cone contains no constraint that has as an endpoint, it is charged at most 1, by one of , , or the edge to the closest. Also, if this negative cone does contain constraints that have as an endpoint, it is not charged by edges in the adjacent positive cones and hence its charge is at most , one for the closest in each of its subcones.
Theorem 8
Every vertex in has degree at most .
Proof.
From Lemmas 6 and 7, each positive cone has charge at most and each negative cone has charge at most , where and are the number of constraints in the th positive and negative cone. Since a vertex has three positive and three negative cones and the and sum up to , this implies that the total degree of a vertex is at most .
5 Bounding the Maximum Degree Further
In this section, we show how to reduce the maximum degree further, resulting in a plane 6spanner of the visibility graph in which the degree of any node is bounded by .
By Lemmas 6 and 7 we see that if we can avoid the case where a positive cone gets a charge of , then every cone is charged at most , for a total charge of . By Corollary 7, this case only happens when a positive cone has and is charged for two edges in the adjacent negative cones. This situation is depicted in Figure 20, where , , and are all on the canonical path of . We construct by performing a transformation on for all positive cones in this situation.
We now describe the transformation. We assume without loss of generality that the positive cone in question is . We call a vertex the closest canonical vertex in a negative subcone of when, among the vertices of the canonical path of in that subcone, is closest to .
We first note that if is the closest canonical vertex in one of the at most two subcones of that contain it, the edge is charged to , since is an edge of the canonical path induced by , and it is also charged to cone , since it is the closest canonical vertex in one of its subcones. Since we need to charge it only once to account for the degree of , we can remove the charge to , reducing its charge by 1 as desired. Similarly, if is the closest canonical vertex in one of the at most two subcones of that contain it, it is charged to both and , so we can reduce the charge to by 1. Therefore, we only perform a transformation if neither nor is the closest canonical vertex in the subcones of that contain them.
In that case, the transformation proceeds as follows. First, we add an edge between and . Next, we look at the sequence of vertices between and the closest canonical vertex on the canonical path induced by . If this sequence includes , we remove . Otherwise we remove . Note that by Corollary 4, triangles and are empty and do not contain any constraints and therefore the edge does not intersect any constraints.
We assume without loss of generality that is removed. By removing and adding , we reduce the degree of at the cost of increasing the degree of . Hence, we need to find a way to balance the degree of . Since lies in and the edge is part of the constrained halfgraph, lies on a canonical path of in and, since is not the closest canonical vertex to on this canonical path, has a neighbor along this canonical path. We claim that is the last vertex along the canonical path of in