# Linear-Size Universal Point Sets for One-Bend Drawings

## 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 [9] 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. [4] and Schnyder [15] 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 [14] and \(n^2/4-\varTheta (n)\) by Bannister et al. [1].

In a *polyline* embedding of a graph \(G=(V,E)\), the edges are represented by pairwise noncrossing polygonal paths. Everett et al. [8] 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. [7], the bend points require a set of size \(\varTheta (n^3)\) when implementing the embedding method in [8]. By refining this method, Dujmović et al. [7] 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 [7] 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\).

*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. [2] recently showed that at most \(n-4\) biarcs suffice.

*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. [8] 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. [7] 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 [11] showed (based on earlier work by Dolev et al. [6]) 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 [5] proved that an \(O(n^{1.48})\) size integer grid is *n*-universal for *outerplanar* graphs. Frati [10] 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

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**

### **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 (*h*, *j*) and \((h',j')\) are disjoint, then the two paths cannot cross. Assume now that (*h*, *j*) and \((h',j')\) intersect. We distinguish two cases:

**Case 1: intervals** (*h*, *j*) **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**(

*h*,

*j*)

**and**\((h',j')\)

**cross.**Without loss of generality, assume \(h\le h' \le j\le j'\). The constraints on the six indices imply

*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. [2] 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 \)

**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 [15]. 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. [2]). 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**

*x*-coordinates follows. The

*y*-coordinates are integers ranging from 1 to \(3n-10\).\(\square \)

## Notes

### Acknowledgements

Research by Tóth was supported in part by the NSF awards CCF-1422311 and CCF-1423615. Research by Löffler was supported in part by the NWO grant 639.021.123.

## References

- 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)MathSciNetCrossRefzbMATHGoogle Scholar - 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.Chrobak, M., Kant, G.: Convex grid drawings of 3-connected planar graphs. Internat. J. Comput. Geom. Appl.
**7**, 211–223 (1997)MathSciNetCrossRefGoogle Scholar - 4.de Fraysseix, H., Pach, J., Pollack, R.: How to draw a planar graph on a grid. Combinatorica
**10**(1), 41–51 (1990)MathSciNetCrossRefzbMATHGoogle Scholar - 5.Di Battista, G., Frati, F.: Small area drawings of outerplanar graphs. Algorithmica
**54**(1), 25–53 (2009)MathSciNetCrossRefzbMATHGoogle Scholar - 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.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)CrossRefzbMATHGoogle Scholar - 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)MathSciNetCrossRefzbMATHGoogle Scholar - 9.Fáry, I.: On straight lines representation of plane graphs. Acta Scientiarum Mathematicarum (Szeged)
**11**, 229–233 (1948)zbMATHGoogle Scholar - 10.Frati, F.: Lower bounds on the area requirements of series-parallel graphs. Discrete Math. Theoret. Comput. Sci.
**12**(5), 139–174 (2010)MathSciNetzbMATHGoogle Scholar - 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) CrossRefGoogle Scholar
- 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)CrossRefzbMATHGoogle Scholar - 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.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)MathSciNetCrossRefzbMATHGoogle Scholar - 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