Linear-Size Universal Point Sets for One-Bend Drawings

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9411)

Abstract

For every integer $$n\ge 4$$, we construct a planar point set $$S_n$$ of size $$6n-10$$ such that every n-vertex planar graph G admits a plane embedding in which the vertices are mapped to points in $$S_n$$, and every edge is either a line segment or a polyline with one bend, where the bend point is also in $$S_n$$.

1 Introduction

An embedding of a graph $$G=(V,E)$$ into the Euclidean plane $$\mathbb {R}^2$$ maps the vertices in V into distinct points in $$\mathbb {R}^2$$, and the edges in E into interior-disjoint arcs between corresponding vertices. In a straight-line embedding, the edges in E are mapped to line segments, and so the embedding of the edges is determined by that of the vertices. It is well known  that every planar graph admits a plane straight-line embedding. Finding a compact representation for the straight-line embeddings of planar graphs is a central question in graph drawing.

A point set $$P \in \mathbb {R}^2$$ is called n-universal if every planar graph $$G=(V,E)$$ with n vertices admits a plane straight-line embedding such that all vertices are mapped to points in P. The quest for finding small n-universal point sets started in the 1990s. De Fraysseix et al.  and Schnyder  independently showed that there are n-universal sets of size $$O(n^2)$$. In fact, an $$(n-1)\times (n-1)$$ section of the integer lattice is n-universal [3, 15] for every $$n\ge 3$$. The current best lower and upper bounds on the minimum size of an n-universal point set are $$(1.235-o(1))n$$ by Kurowski  and $$n^2/4-\varTheta (n)$$ by Bannister et al. .

In a polyline embedding of a graph $$G=(V,E)$$, the edges are represented by pairwise noncrossing polygonal paths. Everett et al.  showed that there is a set $$S_n$$ of n points in the plane, for every $$n\in \mathbb {N}$$, such that every n-vertex planar graph has a polyline embedding in which all vertices are mapped into $$S_n$$ and every edge is a polyline with at most one bend. However, as noted by Dujmović et al. , the bend points require a set of size $$\varTheta (n^3)$$ when implementing the embedding method in . By refining this method, Dujmović et al.  constructed a point set $$S_n'$$ of size $$O(n^2/\log n)$$ for all $$n\in \mathbb {N}$$ such that every n-vertex planar graph has a polyline embedding with at most one bend per edge in which all vertices and all bend points along the edges are mapped to $$S_n'$$. They also show  that if two (resp., three) bends per edge are allowed, a point set of size $$O(n\log n)$$ (resp., O(n)) can accommodate all vertices and bend points in a polyline embedding of every planar graph with n vertices. The main result of this paper is the following.

Theorem 1

For every integer $$n\ge 4$$, there exist a set $$S_n$$ of $$6n-10$$ points in the plane such that every planar graph with n vertices admits a polyline embedding with one bend per edge such that all vertices and bend points are mapped into $$S_n$$.

Both Everett et al.  and Dujmović et al.  rely on a topological book embedding on 2 pages. Di Giacomo et al. [12, 13] proved that every planar graph admits an embedding in the plane such that the vertices are distinct points on the x-axis, and every edge either (i) lies in a closed halfplane above or below the x-axis, or (ii) crosses the x-axis precisely once such that the crossing is on the straight-line segment between the two endpoints so that the half-edge between the left endpoint and the crossing lies below the x-axis and the other half-edge lies above the x-axis; see Fig. 1(left). The edges that lie in a closed halfplane above or below the x-axis are called arcs, and the edges that cross the x-axis biarcs. Cardinal et al.  recently showed that at most $$n-4$$ biarcs suffice. Fig. 1. A biarc diagram $$D_1$$. Each arc above the x-axis is deformed into a biarc in $$D_2$$.

Proof Technique. If the x-axis is replaced by a convex arc $$\gamma$$, then every edge and half-edge on the convex side of $$\gamma$$ can be embedded as a straight-line segment, and every edge and half-edge on the concave side can be embedded as a polyline with one bend. As a first approach, an edge that crossed the x-axis precisely once requires two bend points: one on the concave side of $$\gamma$$ and one on the curve $$\gamma$$. Everett et al.  carefully arranged n points on a convex curve $$\gamma$$ such that the bend points on $$\gamma$$ could be eliminated for the embedding of any n-vertex planar graph. Dujmović et al.  refined the construction to ensure that the bend points can be chosen from a set of $$\varTheta (n^2/\log n)$$ points on the concave side of $$\gamma$$. We build on the same ideas, but use only $$\varTheta (n)$$ carefully arranged bend points on the concave side of $$\gamma$$.

Fractional Variants. We introduce a new concept here. We say that a point set P is $$(n,\varrho )$$-bend universal, for $$n\in \mathbb {N}$$ and $$0\le \varrho \le 1$$, if every planar graph $$G=(V,E)$$ with n vertices admits a polyline embedding with one bend per edge such that the vertices are mapped into P and at least $$\varrho |E|$$ edges are mapped to straight-line segments. There are two variants: the bend points are either required to be in P as well, or they can be chosen freely. In the first case, the problem is equivalent to subdividing at most $$(1-\varrho )|E|$$ edges to obtain a straight-line embedding. Our proof technique of Theorem 1 can also ensure that at least $$\varrho =\frac{1}{3}$$ fraction of the edges are mapped to straight-line segments, and we obtain the following.

Theorem 2

For every $$n\ge 4$$, there exists an $$(n,\frac{1}{3})$$-bend universal set of $$10n-8$$ points in the plane.

Related Previous Work. The quadratic upper bound for universal point sets is the best possible if the point set is restricted to sections of the integer lattice: Frati and Patrignani  showed (based on earlier work by Dolev et al. ) that if a rectangular section of the integer lattice is n-universal, then it must contain at least $$n^2/9+\varOmega (n)$$ points.

Grid drawings have been studied intensively due to their versatile applications. It is known that sections of the integer lattice with $$o(n^2)$$ points are n-universal for certain classes of graphs. For example, Di Battista and Frati  proved that an $$O(n^{1.48})$$ size integer grid is n-universal for outerplanar graphs. Frati  showed that 2-trees on n vertices require a grid of size at least $$\varOmega (n2^{\sqrt{\log n}})$$.

2 Construction of a Point Set

For every $$k\in \mathbb {N}$$, we define a point set $$T_k$$ together with a partition $$T_k=A_k\cup B_k$$, where $$|A_k|=|B_k|=k$$. We label the points by $$A_k=\{a_1,\ldots , a_k\}$$ and $$B_k=\{b_1,\ldots , b_k\}$$. Their coordinates are defined by:
\begin{aligned} x(a_i)= & {} -x(b_i)=(1+\sqrt{2})^{k-i}\\ y(a_i)= & {} y(b_i)=i \end{aligned}
Observe that the points $$a_i$$, $$a_{i+1}$$, and $$b_{i+2}$$ (and symmetrically $$b_i$$, $$b_{i+1}$$, and $$a_{i+2}$$) are equidistant and collinear. Figure 2 illustrates the construction. Fig. 2. Illustration of $$T_7$$. The figure is scaled horizontally to better fit on this page.

From this construction, we perturb $$T_k$$ to a new point set $$\tilde{T}_k$$ to satisfy the following essential property:

Property 1

For every three indices $$h < i < j$$, the segment $$a_hb_j$$ passes to the left of $$a_i$$, and the segment $$b_ha_j$$ passes to the right of $$b_i$$.

Clearly, this property may be satisfied by an arbitrarily small perturbation of $$T_k$$.

Lemma 1

The polygonal chain $$\alpha =(a_1,\ldots ,a_k)$$ is on the convex hull of $$A_k$$ in counter-clockwise order.

Proof

Property 1 ensures that
$$0>\mathrm{slope}(a_1a_2)>\mathrm{slope}(a_2a_3)>\ldots >\mathrm{slope}(a_{k-1}a_k),$$
consequently $$\alpha =(a_1,\ldots ,a_k)$$ is on the convex hull of $$A_k$$ in clockwise order. $$\square$$

Lemma 2

Consider six indices h, i, j, $$h'$$, $$i'$$, and $$j'$$, where $$1\le h<i\le j\le k$$, $$1\le h'<i'\le j'\le k$$, $$i\not \in \{h',i',j'\}$$, and $$i'\not \in \{h,i, j\}$$. If the segments $$a_ha_i$$ and $$a_{h'}a_{i'}$$ do not cross and the segments $$a_ia_j$$ and $$a_{i'}a_{j'}$$ do not cross, then the polygonal paths $$(a_h,b_i,a_j)$$ and $$(a_{h'},b_{i'},a_{j'})$$ do not cross.

Proof

Since the polygonal chain $$\alpha =(a_1,\ldots ,a_k)$$ is in convex position by Lemma 1, the noncrossing conditions exclude the “interleaving” orders $$h<h'<i<i'$$, $$h'<h<i'<i$$, $$i<i'<j<j'$$, and $$i'<i<j'<j$$. By Property 1, the segment $$a_hb_i$$ passes left of $$a_{h+1},\ldots ,a_{i-1}$$ for all $$0\le h<i$$. Since the x-coordinates of $$a_i,\ldots , a_k$$ are larger than that of $$b_i$$, the segment $$b_ia_j$$ passes left of $$a_i,\ldots ,a_{j-1}$$ for all $$i<j\le k$$.

By construction, the polygonal paths $$(a_h,b_i,a_j)$$ and $$(a_h',b_i',a_j')$$ are y-monotone. Consequently, if the open intervals (hj) and $$(h',j')$$ are disjoint, then the two paths cannot cross. Assume now that (hj) and $$(h',j')$$ intersect. We distinguish two cases:

Case 1: intervals (hj) and $$(h',j')$$ are nested. Without loss of generality, assume $$(h',j')\subset (h,j)$$. The noncrossing conditions imply that we have either $$(h',j')\subset (h,i)$$ or $$(h',j')\subset (i,j)$$. If $$(h',j')\subset (h,i)$$, then the entire path $$(a_{h'},b_{i'},a_{j'})$$ lies left of segment $$a_ha_{i-1}$$, hence left of $$a_hb_i$$. If $$(h',j')\subset (i,j)$$, then the entire path $$(a_{h'},b_{i'},a_{j'})$$ lies right of segment $$b_ia_j$$ by Property 1.

Case 2: intervals (hj) and $$(h',j')$$ cross. Without loss of generality, assume $$h\le h' \le j\le j'$$. The constraints on the six indices imply
\begin{aligned} 1\le h\le h'<i'< i<j\le j'\le k. \end{aligned}
Since both $$(a_h,b_i,a_j)$$ and $$(a_{h'},b_{i'},a_{j'})$$ are y-monotone, the only possible intersection is between $$a_hb_i$$ and $$b_{i'}a_{j'}$$. However, $$i'<i$$ implies $$x(b_{i'})<x(b_i)$$, and Property 1 implies that $$b_{i'}a_{j'}$$ passes left of $$a_h$$. Consequently, $$(a_h,b_i,a_j)$$ and $$(a_{h'},b_{i'},a_{j'})$$ do not cross, as claimed. $$\square$$

3 Embedding Algorithm

Let $$G=(V,E)$$ be a triangulation on n vertices, where $$n\ge 4$$. Construct a topological book embedding $$D_1$$ on 2 pages of Cardinal et al.  with at most $$n-4$$ biarcs in O(n) time. Assume, without loss of generality, that at most half of the arcs lie above the x-axis (rotate by 180$$^\circ$$ otherwise).

Modify the embedding $$D_1$$ and deform each edge lying above the x-axis into a biarc; refer to Fig. 1 (right). Specifically, for each vertex $$v\in V$$, let $$E_v\subseteq E$$ denote the set of edges vw such that v is the left endpoint of vw and vw is an arc lying above the x-axis in the embedding $$D_1$$. Apply a homeomorphism in a small neighborhood of v such that all edges in $$E_v$$ dip below the x-axis, and become biarcs. Let $$D_2$$ be the resulting topological book embedding of G. Note that it has at most $$(n-4)+[(3n-6)-(n-4)]/2=2n-5$$ biarcs, and at least $$(3n-6)-(2n-5)=n-1$$ arcs.

Consider the set of all vertices and edge-crossings along the x-axis, and denote them by $$p_1,\ldots , p_m$$, where $$m\le n+(2n-5)=3n-5$$. We define a new embedding $$D_3$$ into the point set $$\tilde{T}_{3n-5}$$ such that the vertices are mapped into $$\tilde{A}_{3n-5}$$ and the bend points into $$\tilde{B}_{3n-5}$$. For every vertex $$v\in V$$, if $$D_2$$ maps v to point $$p_i$$, then let $$D_3$$ map it to point $$a_i$$. For every edge $$uv\in E$$, if uv is a biarc that crosses the x-axis at $$p_i$$ in $$D_2$$, then embed uv as a polyline with one bend at $$b_i$$; otherwise uv is an arc below the x-axis in $$D_2$$, and we embed uv as a straight-line segment. Figure 3 shows the resulting embedding for a small example graph.

Proof of Theorem 1. We set $$S_n = \tilde{T}_{3n-5}$$, which contains $$6n-10$$ points. By Lemma 2, the above embedding algorithm is correct, that is, no two edges cross each other, as required. $$\square$$ Fig. 3. An example of an embedding produced by our algorithm.

Proof of Theorem 2. Let $$G=(V,E)$$ be a planar graph on $$n\ge 4$$ vertices, and let $$G'$$ be a triangulation of G. Recall that every triangulation admits a Schnyder decomposition into three trees of equal size . Let R be a Schnyder tree of $$G'$$ that contains at least |E| / 3 edges from E. Using the embedding algorithm of Di Giacomo et al. [12, 13], we obtain a topological book embedding of $$G'$$ on 2 pages such that all edges of R are mapped to arcs below the x-axis (cf. ). This embedding consists of at least $$n-2$$ arcs and at most $$4n-4$$ biarcs. Similarly to the proof of Theorem 1, we can embed $$G'$$ on $$\tilde{A}_{5n-4}$$ such that all edges in R are mapped to straight-line segments, and the remaining edges each have one bend in $$\tilde{B}_{5n-4}$$. $$\square$$

We conclude with an observation on the size requirement of our construction.

Lemma 3

$$S_n$$ fits on a $$O((1+\sqrt{2})^{3n})$$ by O(n) integer grid.

Proof

We defined $$\tilde{T}_k$$ to be an arbitrarily small perturbation of $$T_k$$. Alternatively, we can ensure all coordinates are integer by setting $$x(b_k)=1$$ and iteratively setting $$x(b_i) = \lceil (1+\sqrt{2})x(b_{i+1})\rceil$$. We observe that the resulting coordinates are upper-bounded by the recurrence $$\xi (b_k)=1$$; $$\xi (b_i) = 1+(1+\sqrt{2})\xi (b_{i+1})$$, which solves to
$$\xi (b_i)=\sum _{j=i}^k(1+\sqrt{2})^j=\frac{1}{2}\sqrt{2}(1+\sqrt{2})^{k-i}-\frac{1}{2}\sqrt{2} \in O((1+\sqrt{2})^{k-i}).$$
Choosing $$k=3n-10$$ and $$i=1$$, the bound on the x-coordinates follows. The y-coordinates are integers ranging from 1 to $$3n-10$$.$$\square$$

References

1. 1.
Bannister, M.J., Cheng, Z., Devanny, W.E., Eppstein, D.: Superpatterns and universal point sets. J. Graph Algorithms Appl. 18(2), 177–209 (2014)
2. 2.
Cardinal, J., Hoffmann, M., Kusters, V., Tóth, C.D., Wettstein, M.: Arc diagrams, flip distances, and Hamiltonian triangulations. In: Mayr, E.W., Ollinger, N. (eds.) Proceedings of 32nd STACS. LiPIcs, vol. 30, pp. 197–210. Leibniz-Zentrum für Informatik, Dagstuhl (2015)Google Scholar
3. 3.
Chrobak, M., Kant, G.: Convex grid drawings of 3-connected planar graphs. Internat. J. Comput. Geom. Appl. 7, 211–223 (1997)
4. 4.
de Fraysseix, H., Pach, J., Pollack, R.: How to draw a planar graph on a grid. Combinatorica 10(1), 41–51 (1990)
5. 5.
Di Battista, G., Frati, F.: Small area drawings of outerplanar graphs. Algorithmica 54(1), 25–53 (2009)
6. 6.
Dolev, D., Leighton, F.T., Trickey, H.: Planar embedding of planar graphs. In: Preparata, F. (ed.) Advances in Computing Research, vol. 2, pp. 147–161. JAI Press Inc., London (1984)Google Scholar
7. 7.
Dujmović, V., Evans, W., Lazard, S., Lenhart, W., Liotta, G., Rappaport, D., Wismath, S.: On point-sets that support planar graphs. Comput. Geom. Theory Appl. 46(1), 29–50 (2013)
8. 8.
Everett, H., Lazard, S., Liotta, G., Wismath, S.: Universal sets of $$n$$ points for one-bend drawings of planar graphs with $$n$$ vertices. Discrete Comput. Geom. 43(2), 272–288 (2010)
9. 9.
Fáry, I.: On straight lines representation of plane graphs. Acta Scientiarum Mathematicarum (Szeged) 11, 229–233 (1948)
10. 10.
Frati, F.: Lower bounds on the area requirements of series-parallel graphs. Discrete Math. Theoret. Comput. Sci. 12(5), 139–174 (2010)
11. 11.
Frati, F., Patrignani, M.: A note on minimum-area straight-line drawings of planar graphs. In: Hong, S.-H., Nishizeki, T., Quan, W. (eds.) GD 2007. LNCS, vol. 4875, pp. 339–344. Springer, Heidelberg (2008)
12. 12.
Di Giacomo, E., Didimo, W., Liotta, G., Wismath, S.K.: Curve-constrained drawings of planar graphs. Comput. Geom. Theory Appl. 30(1), 1–23 (2005)
13. 13.
Di Giacomo, E., Didimo, W., Liotta, G.: Spine and radial drawings. In: Tamassia, R. (ed.) Handbook of Graph Drawing and Visualization, Chap. 8, pp. 247–284. CRC Press, Boca Raton (2013)Google Scholar
14. 14.
Kurowski, M.: A 1.235 lower bound on the number of points needed to draw all $$n$$-vertex planar graphs. Inf. Process. Lett. 92, 95–98 (2004)
15. 15.
Schnyder, W.: Embedding planar graphs in the grid. In: Proceedings of the 1st Symposium on Discrete Algorithms, pp. 138–147. ACM Press, New York, NY (1990)Google Scholar 