Keywords

1 Introduction

A point set S in the Euclidean plane is called n-universal for a family \(\mathcal{G}\) of planar n-vertex graphs if every graph G from \(\mathcal{G}\) admits a plane straight-line embedding such that the vertices are drawn as points from S. A point set, which is n-universal for the family of all planar graphs, is simply called n-universal. We denote by \(f_p(n)\) the size of a minimal n-universal set (for planar graphs), and by \(f_s(n)\) the size of a minimal n-universal set for stacked triangulations, where stacked triangulations (a.k.a. planar 3-trees) are defined as follows:

Definition 1

(Stacked Triangulations). Starting from a triangle, one may obtain any stacked triangulation by repeatedly inserting a new vertex inside a face (including the outer face) of the current triangulation and making it adjacent to all the three vertices contained in the face.

An example of a stacked triangulation is shown in Fig. 1.

Fig. 1.
figure 1

A (labeled) stacked triangulation on 11 vertices in which every face is incident to a degree-3-vertex.

De Fraysseix, Pach, and Pollack [15] showed that every planar n-vertex graph admits a straight-line embedding on a \((2n-4) \times (n-2)\) grid – even if the combinatorial embedding (including the choice of the outer face) is prescribed. Moreover, the graphs are only embedded on a triangular subset of the grid. Hence, \(f_p(n) \le n^2-O(n)\). This bound was further improved to the currently best known bound \(f_p(n) \le \frac{n^2}{4}-O(n)\) [7] (see also [8, 28]). Also various subclasses of planar graphs have been studied intensively: Any stacked triangulation on n vertices (with a fixed outer face) can be drawn on a particular set of \(f_s(n) \le O(n^{3/2} \log n)\) points [19]. For outerplanar graphs, it is known that any set of n points in general position is n-universal [13, 24]. For 2-outerplanar graphs and for simply nested graphs an upper bound of \(O(n \log n)\) is known [5].

Concerning the lower bound on \(f_p(n)\) and \(f_s(n)\), respectively, the obvious relation \(n \le f_s(n) \le f_p(n)\) holds for any \(n \in {\mathbb N}\). The first non-trivial lower bound on the size of n-universal sets was also given by de Fraysseix, Pach, and Pollack [15], who showed a lower bound of \(f_p(n) \ge n+(1-o(1))\sqrt{n}\). Chrobak and Karloff [14] further improved the lower bound to \((1.098-o(1))n\), and the multiplicative constant was later on improved to 1.235 by Kurowski [22]. In fact, Kurowski’s lower bound even applies to \(f_s(n)\).

Cardinal, Hoffmann, and Kusters [12] showed that n-universal sets of size n exist for every \(n \le 10\), whereas for \(n \ge 15\) no such set exists – not even for stacked triangulations. Hence \(f_p(n) = f_s(n) = n\) for \(n \le 10 \) and \(f_p(n) \ge f_s(n) > n\) for \(n \ge 15\). Moreover, they found a collection of 7,393 planar graphs on \(n=35\) vertices which cannot be simultaneously drawn straight-line on a common set of 35 points. We call such a collection of graphs a conflict collection. This was a first big step towards an answer to the question by Brass and others [9]:

Question 1

([9]). Is there a conflict collection of size 2?

2 Outline

Our first result is the following theorem, which further improves the lower bound on \(f_s(n)\). We present its proof in Sect. 3.

Theorem 1

It holds that \(f_s(n) \ge (\alpha -o(1))n\), where \(\alpha =1.293\ldots \) is the unique real-valued solution of the equation \({\alpha ^\alpha } \cdot {(\alpha -1)^{1-\alpha }}=2\).

In Sect. 4 we present our second result, which is another step towards a (negative) answer of Question 1 and strengthens the results from [12]. Its proof is based on exhaustive computer search.

Theorem 2

(Computer-assisted). There is a conflict collection consisting of 49 stacked triangulations on 11 vertices. Furthermore, there is no conflict collection consisting of 36 triangulations on 11 vertices.

Corollary 1

There is no 11-universal set of size 11 – even for stacked triangulations. Hence, \(f_p(11) \ge f_s(11) \ge 12\).

Last but not least, since all known proofs for lower bounds make use of separating triangles, we also started the investigation of 4-connected triangulations. In Sect. 5 we present some n-universal sets of size n for 4-connected planar graphs for all \(n \le 17\).

3 Proof of Theorem 1

To prove the theorem, we use a refined counting argument based on a construction of a set of labeled stacked triangulations that was already introduced in [12]. There it was used to disprove the existence of n-universal sets of \(n \ge 15\) points for the family of stacked triangulations.

Definition 2

(Labeled Stacked Triangulations, cf. [12, Sect. 3]). For every integer \(n \ge 4\), we define the family \(\mathcal {T}_n\) of labeled stacked triangulations on the set of vertices \(V_n:=\{v_1,...,v_n\}\) inductively as follows:

  • \(\mathcal {T}_4\) consists only of the complete graph \(K_4\) with labels \(v_1,\ldots ,v_4\).

  • If T is a labeled graph in \(\mathcal {T}_{n-1}\) with \(n \ge 5\), and \(v_iv_jv_k\) defines a face of T, then the graph obtained from T by stacking the new vertex \(v_n\) to \(v_iv_jv_k\) (i.e., connecting it to \(v_i\), \(v_j\), and \(v_k\)) is a member of \(\mathcal {T}_n\).

It is important to notice that, when speaking of \(\mathcal {T}_n\), we distinguish between elements if they are distinct as labeled graphs, even if their underlying graphs are isomorphic. The essential ingredient we will need from [12] is the following.

Lemma 1

(cf. [12, Lemmas 1 and 2])

  1. (i)

    For any \(n \ge 4\), the family \(\mathcal {T}_n\) contains exactly \(2^{n-4}(n-3)!\) labeled stacked triangulations.

  2. (ii)

    Let \(P_n=\{p_1,\ldots ,p_n\}\) be a set of \(n \ge 4\) labeled points in the plane. Then for any bijection \(\pi :V_n \rightarrow P_n\), there is at most one \(T \in \mathcal {T}_n\) such that the embedding of T, which maps each vertex \(v_i\) to point \(\pi (v_i)\), defines a straight-line-embedding of T.

Figure 1 illustrates the idea of item (ii) of Lemma 1.

We need the following simple consequence of the above:

Corollary 2

Let \(P=\{p_1,\ldots ,p_m\}\) be a set of \(m \ge n \ge 4\) labeled points in the plane. Then for any injection \(\pi :V_n \rightarrow P\), there is at most one \(T \in \mathcal {T}_n\) such that the embedding of T, which maps each vertex \(v_i\) to point \(\pi (v_i)\), defines a straight-line-embedding of T.

Proof

Let \(T_1,T_2 \in \mathcal {T}_n\) be two stacked triangulations such that \(\pi \) describes a plane straight-line embedding of both. Since \(\pi \) is an injection, this means that \(\pi \) defines a straight-line embedding of both \(T_1,T_2\) on the sub-point set \(Q:=\pi (V_n)\) of P of size n. Applying Lemma 1(ii) to the bijection \(\pi :V_n \rightarrow Q\) and \(T_1,T_2\), we deduce \(T_1=T_2\). This proves the claim.    \(\square \)

We are now ready to prove Theorem 1.

Proof

(Proof of Theorem 1). Let \(n \ge 4\) be arbitrary and \(m:=f_s(n) \ge n\). There exists an n-universal point set \(P=\{p_1,\ldots ,p_m\}\) for all stacked triangulations, hence for every \(T \in \mathcal {T}_n\) there exists a straight-line embedding of T on P, with (injective) vertex-mapping \(\pi :V_n \rightarrow P\). By Corollary 2, we know that no two stacked triangulations from \(\mathcal {T}_n\) (each of which has the same vertex set) yield the same injection \(\pi \). Consequently, by Lemma 1(i), we have

$$ 2^{n-4}(n-3)!=|\mathcal {T}_n| \le \frac{m!}{(m-n)!}, $$

which means

$$ \frac{1}{16n(n-1)(n-2)}2^n \le \left( {\begin{array}{c}m\\ n\end{array}}\right) =\left( {\begin{array}{c}f_s(n)\\ n\end{array}}\right) . $$

Let \(\beta (n):=\frac{f_s(n)}{n}\). Using the fact that (Stirling-approximation)

$$ \left( {\begin{array}{c}f_s(n)\\ n\end{array}}\right) \sim \underbrace{\sqrt{\frac{f_s(n)}{2\pi n(f_s(n)-n)}}}_{\le 1}\frac{f_s(n)^{f_s(n)}}{n^n(f_s(n)-n)^{f_s(n)-n}} \le \left( \frac{\beta (n)^{\beta (n)}}{(\beta (n)-1)^{\beta (n)-1}}\right) ^n, $$

we deduce (taking logarithms) that:

$$ (1-o(1))n \le \log _2 \left( \frac{\beta (n)^{\beta (n)}}{(\beta (n)-1)^{\beta (n)-1}}\right) n \Longleftrightarrow 2-o(1) \le \frac{\beta (n)^{\beta (n)}}{(\beta (n)-1)^{\beta (n)-1}}. $$

Consequently, \(\beta (n) \ge (1-o(1))\alpha \), where \(\alpha \) is the unique solution to \( \frac{\alpha ^\alpha }{(\alpha -1)^{\alpha -1}}=2\). This proves \(f_s(n)=n\cdot \beta (n) \ge (1-o(1))\alpha n\), which is the claim.    \(\square \)

4 Proof of Theorem 2 and Corollary 1

In the following, we outline the strategy which we have used to find a conflict collection of 49 stacked 11-vertex triangulations. We refer the reader who is mainly interested in verifying our computational results directly to Sect. 4.5.

One fundamental observation is the following: if an n-universal point set has collinear points, then by perturbation one can obtain another n-universal point set in general position, i.e., with no collinear points. Hence, in the following we only consider point sets in general position. Also it is not hard too see that, if two point sets are combinatorially equivalent, i.e., there is a bijection such that the corresponding triples of points induce the same orientations, then both sets allow precisely the same straight-line drawings. Hence, in the following we further restrict our considerations to (non-degenerated) order types, i.e., the set of equivalence classes of point sets (in general position).

4.1 Enumeration of Order Types

The database of all order types of up to \(n=11\) points was developed by Aurenhammer, Aichholzer, and Krasser [3, 4] (see also Krasser’s dissertation [21]). The file for all order types of up to \(n=10\) points (each represented by a point set) is available online, while the file for \(n=11\) requires almost 100 GB of storage and is available on demand [2]. Their algorithm starts with an abstract order type on \(k-1\) points (which only encodes the triple orientations of a point set), computes its dual pseudoline arrangement, and inserts a k-th pseudoline in all possible ways. Due to geometrical constraints, there are in fact abstract order types enumerated which do not have a realization as a point set. However, since every order type is in fact also an abstract order type, it is sufficient for our purposes to test all abstract order types – independent from realizability.

For means of redundancy and to provide a fully checkable and autonomous proof, we have implemented an alternative algorithm to enumerate all abstract order types based on the following idea: Given a set of points \(s_1,\ldots ,s_n\) with \(s_i=(x_i,y_i)\) sorted left to rightFootnote 1, and let

$$ \chi _{ijk} := {{\,\mathrm{sgn}\,}}\det \begin{pmatrix} 1 &{} 1 &{} 1 \\ x_i&{} x_j&{} x_k\\ y_i&{} y_j&{} y_k \end{pmatrix} \in \{-1,0,+1\} $$

denote the induced triple orientations, then the signotope axioms assert that, for every 4-tuple \(s_i,s_j,s_k,s_l\) with \(i<j<k<l\), the sequence

$$ \chi _{ijk},\ \chi _{ijl},\ \chi _{ikl},\ \chi _{jkl} $$

(index-triples in lexicographic order) changes its sign at most once. For more information on the signotope axioms we refer to Felsner and Weil [18] (see also [6]).

Given an abstract order type on \(k-1\) points, we insert a k-th point in all possible ways, such that the signotope axioms are preserved. With our C++ implementation, we managed to verify the numbers of abstract order types from [3, 4, 21]. In fact, the enumeration of all 2,343,203,071 abstract order types of up to \(n=11\) points (cf. OEIS/A6247) can be done within about 20 CPU hours.

4.2 Enumeration of Planar Graphs

To enumerate all non-isomorphic maximal planar graphs on 11 vertices (i.e, triangulations), we have used the plantri graph generator (version 4.5) [10]. It is worth to note that also the nauty graph generator [23] can be used for the enumeration because the number of all (not necessarily planar) graphs on 11 vertices is not too large and the database can be filtered for planar graphs in reasonable time – negligible compared to the CPU time which we have used for later computations. For various computations on graphs, such as filtering stacked triangulations or to produce graphs for this paper, we have used SageMath [29]Footnote 2.

4.3 Deciding Universality Using a SAT Solver

For a given point set S and a planar graph \(G=(V,E)\) we model a propositional formula in conjunctive normal form (CNF) which has a solution if and only if G can be embedded on S – in fact, the variables encode a straight-line drawing.Footnote 3

To model the CNF, we have used the variables \(M_{vp}\) to describe whether vertex v is mapped to point p, and the variables \(A_{pq}\) to describe whether the straight-line segment pq between the two points p and q is “active” in a drawing.

It is not hard to use a CNF to assert that such a vertex-to-point mapping is bijective. Also it is easy to assert that, if two adjacent vertices u and v are mapped to points p and q, then the straight-line segment pq is active. For each pair of crossing straight-line segments pq and rs (dependent on the order type of the point set) at least one of the two segments is not allowed to be active.

Implementation Detail: We have implemented a C++ routine which, given a point set and a graph as input, creates an instance of the above described model and then uses the solver MiniSat 2.2.0 [16] to decide whether the graph admits a straight-line embedding.

4.4 Finding Conflict Collections – A Quantitive Approach

Before we actually tested whether a set of 11 points is 11-universal or not, we discovered a few necessary criteria for the point set, which can be checked much more efficiently. These considerations allowed a significant reduction of the total computation times.

Phase 1: There are various properties that a universal point set has to fulfill:

Property 1: The planar graph depicted in Fig. 2 asserts an 11-universal set S – if one exists – to have a certain structure. If the embedding is as on the left of Fig. 2, then one of the two degree 3 vertices is drawn as extremal point of S, i.e., lies on the boundary of the convex hull \({{\,\mathrm{conv}\,}}(S)\) of S. After the removal of this particular point, the remaining 10 points have 4 convex layers of sizes 3, 3, 3, and 1, respectively. If the embedding is as on the right of Fig. 2, then either one or two points of the blue triangle are drawn as extremal points of S (recall the triangular convex hull of S). And again, the points inside the blue triangle and outside the blue triangle have convex layers of sizes 3, 3, 1, and 3, 1, respectively.

Fig. 2.
figure 2

The two embeddings of a graph, which forces the point set to have a certain structure. Each of the vertices of the blue triangle connects to one of the vertices of the two copies of \(K_4\).

Property 2: There exist a stacked triangulations on 11 points in which every face is incident to a degree-3-vertex; see for example Fig. 1. Independent from the embedding of this graph, there is a degree-3-vertex on the outer face, and hence all inner points lie inside a triangle spanned by an interior point and two extremal points. In particular, such a point set must have a triangular convex hull.

Altogether, only 262,386,428 of the 2,343,203,071 abstract order types on 11 points fulfill Properties 1 and 2. (The computation time was about 10 CPU hours.)

Phase 2: For each of the 262,386,428 abstract order types on 11 points which fulfill the conditions above, we have tested the embeddability of all maximal planar graphs on n vertices separately using a SAT-solver based approach. In fact, as soon as one graph was not embeddable, the remaining graphs needed not to be checked. To speed up the computations we have used a priority queue: a graph which does not admit an embedding gets increased priority for other point sets to be tested first.

To keep the conflict collection as small as possible, we first filtered out all point sets which do not allow a simultaneous embedding of all planar graphs on 11 vertices with maximum degree 10. Only 287,871 of the 262,386,428 abstract order types remained (about 100 CPU days). It is worth to note that there are 82 maximal planar graphs on 11 vertices with maximum degree 10 (cf. OEIS/A207), and that each of these graphs is a stacked triangulation.

At this point one can check with only a few CPU hours that the remaining 287,871 abstract order types are not 11-universal. Moreover, since some stacked triangulations on 11 vertices (e.g., \(G_{12}\) in [25]) contain the graph from Fig. 2 as a subgraph, the statement even applies to stacked triangulations. Consequently, the family of all 434 stacked triangulations on 11 vertices (cf. OEIS/A27610) is a conflict collection, and Corollary 1 follows directly.

Phase 3: To find a smaller conflict collection, we tested for each of the 434 stacked triangulations and each of the 287,871 remaining abstract order types, whether an embedding is possible (additional 35 CPU days). We used this binary information to formulate an integer program searching for a minimal set of triangulations without simultaneous embedding. Using the Gurobi solver (version 8.0.0) [20], we managed to find a collection \(\mathcal{G}\) of 27 stacked triangulations which cannot be embedded simultaneously; see [25].

Since we asserted in Phases 1 and 2 that

  1. (1)

    the graph in Fig. 2,

  2. (2)

    a triangulation where every face is incident to a vertex of degree 3, and

  3. (3)

    all 82 triangulations with maximum degree 10.

occur in the conflict collection, this yields a conflict collection of size \(111=1+1+82+27\). In fact, since this subset of 27 stacked triangulations contains triangulations fulfilling properties (1) and (2) (see, e.g., graphs \(G_{12}\) und \(G_{10}\) in [25]), we indeed have a conflict collection of size 109.

We have also ran the computations for the collection of all 1,249 triangulations (cf. OEIS/A109), and the Gurobi solver showed that any conflict collection of (arbitrary) 11-vertex triangulations has size at least 26.

Phase 4: Recall that a minimal conflict collection not necessarily needs to fulfill the properties (1)–(3). Hence we again repeat the strategy from Phase 2, except that we test for the embeddability of the 27 stacked triangulations from the collection \(\mathcal{G}\) obtained in Phase 3 instead of the 82 maximal planar graphs on 11 vertices with maximum degree 10.

After another 230 days of CPU time, our program had filtered out 2,194 of the 262,386,428 abstract order types (obtained in Phase 1) which allow a simultaneous embedding of the 27 stacked triangulations from \(\mathcal{G}\).

Phase 5: As the reader might already guess, we proceed as in Phase 3: we tested for each of the 434 stacked triangulations and each of the 2,194 order types from Phase 4, whether an embedding is possible (only 2 CPU days). Using the Gurobi solver, we managed to find a collection \(\mathcal{H}\) of 22 stacked triangulations, which cannot be simultaneously embedded on those order types; see [25].

Together with the 27 stacked triangulations from \(\mathcal{G}\) we obtain a conflict collection of size 49, and the first part of Theorem 2 follows.

Phase 6: To further improve the lower bound, we have repeated our computations for the union of the two sets of point sets obtained in Phase 3 and Phase 5, respectively. Using Gurobi, we obtained that

  • any conflict collection of stacked triangulations must have size at least 40, and

  • any conflict collection of (arbitrary) triangulations must have size at least 37.

For means of redundancy, we have verified all obtained lower bounds also using CPLEX (version 12.8.0.0) [1], which performed similar to Gurobi.

This completes the proof of the second part of Theorem 2.

4.5 How to Verify Our Results?

To verify the computational results which are essential for the proof of the first part of Theorem 2, one can enumerate all order types on 11 points and test the conflict collection of 49 triangulations (data/triangulations/n11_conflicting49.txt). Starting with the unique order type on 3 points ( ), it takes about 1 CPU day to enumerate all order types on 11 points. By falsifying simultaneous embeddability of the 49 graphs (about 200 CPU days, but can be run parallelized), the first part of Theorem 2 is then verified.

For the second part of the Theorem 2, one can filter the order types, which allow a simultaneous embedding of the triangulations from Phase 2 and 4, and then – using CPLEX or Gurobi – compute the minimum size of a conflicting collection among all 11-vertex triangulations and 11-vertex stacked triangulations, respectively. To save some computation time, we provide the filtered list in and . The list of all (stacked) triangulations is provided in and .

A more detailed description is provided in the full version [27]. The source codes of our programs and relevant data are available on the companion website [25].

5 Universal Sets for 4-Connected Graphs

For \(n\le 10\), examples of n-universal sets of n points for planar n-vertex graphs were already given in [12]. To provide n-universal sets for 4-connected planar graphs for \(n=11,\ldots ,17\), we slightly adapted our framework. Again, we enumerated 4-connected planar triangulations using the plantri graph generator, and using our C++ implementation, tested for universality. Our idea to find the proposed point sets for \(n = 11,\ldots ,17\) was to start with an \((n-1)\)-universal set of \(n-1\) points and insert an n-th point in all possible ways (cf. Sect. 4.1). The abstract order types obtained in this way – if they turned out to be universal – were then realized as point sets using our framework pyotlibFootnote 4. The obtained sets are given in Listing 1.1.

figure f

It is also worth to note that the numbers of 4-connected triangulations for \(n=11,\ldots ,20\) are 25; 87; 313; 1,357; 6,244; 30,926; 158,428; 836,749; 4,504,607; 24,649,284 (cf. OEIS/A7021). Hence, even if a universal point set is known, it is getting more and more time consuming to verify n-universality as n gets larger (at least using our SAT solver approach).

6 Discussion

In Sect. 3, we provided an improved lower bound for \(f_p(n)\) and \(f_s(n)\). However, the best known general upper bounds remain far from linear.

In Sect. 4, we have applied the ideas from Phases 2 and 3 twice (cf. Phases 4 and 5) to reduce the size of a conflict collection. One could further proceed with this strategy to find even smaller conflict collections (if such exist). Also one could simply test whether all elements from the conflict collection are indeed necessary, or whether certain elements can be removed. Note that, to compute a minimal conflict collection for \(n=11\), one could theoretically check which graphs admit an embedding on which point set and then find a minimal set cover as described in Phase 3 (Sect. 4). In practice, however, formulating such a minimal set cover instance (as integer program) is not reasonable because testing the embeddability of every graph in every point set would be an extremely time consuming task. (Recall that we used a priority queue to speed up our computation, so only a few pairs were actually tested. Also recall that, to generate the set cover instances, we only looked at a comparably small number of order types.) And even if such an instance was formulated, due to its size, the IP/set cover might not be solvable optimally in reasonable time.

Besides the computations for \(n=11\) points, we also adapted our program to find all n-universal order types on n points for every \(n \le 10\), and hence could verify the results from [12, Table 1]. To be precise, we found 5,956 9-universal abstract order types on \(n=9\) points, whereas only 5,955 are realizable as point sets. It is worth to note that there is exactly one non-realizable abstract order type on 9 points in the projective plane, which is dual to the simple non-Pappus arrangement, and that all abstract order types on \(n \le 8\) points are realizable. Besides the already known 2,072 realizable order types on 10 points, no further non-realizable 10-universal abstract order types were found. For more details on realizability see for example [21] or [17].

Unfortunately, we do not have an argument for subsets or supersets of n-universal point sets, and thus the question for \(n=12,13,14\) remains open. However, based on computational evidence (see also [12, Table 1]), we strongly conjecture that no n-universal set of n points exists for \(n \ge 11\). It is also worth to note that 11-universal sets of 12 points exist (cf. Listing 1.2).

figure g

As mentioned in the introduction of this paper, various graph classes have been studied for this problem. Even though our contribution on 4-connected planar graphs in Sect. 5 is rather small, it gives some evidence that comparably less points are needed to embed 4-connected planar graphs. In fact, we would not be surprised if n-universal sets of n points exist for 4-connected planar graphs.