Lower bounds on the number of realizations of rigid graphs

Computing the number of realizations of a minimally rigid graph is a notoriously difficult problem. Towards this goal, for graphs that are minimally rigid in the plane, we take advantage of a recently published algorithm, which is the fastest available method, although its complexity is still exponential. Combining computational results with the theory of constructing new rigid graphs by gluing, we give a new lower bound on the maximal possible number of (complex) realizations for graphs with a given number of vertices. We extend these ideas to rigid graphs in three dimensions and we derive similar lower bounds, by exploiting data from extensive Gr\"obner basis computations.


Introduction
The theory of rigid graphs forms a fascinating research area in the intersection of graph theory, computational (algebraic) geometry, and algorithms. Besides being a very interesting mathematical subject, rigid graphs and the underlying theory of Euclidean distance geometry have a huge number of applications ranging from robotics [12,25,26] and bioinformatics [7,16,18,19,20] to sensor network localization [27] and architecture [10]. Upper and lower bounds on the number of realizations (embeddings) of rigid graphs are of great importance as they quantify the difficulty of the problem(s) at hand that we are interested in.
We first give some definitions, to set the context of our study. Let G be a graph and provide to Ê d the Euclidean metric; in this way we obtain the Euclidean d-dimensional space. By specifying the coordinates of the vertices of G in Ê d we obtain a realization, or embedding, of G in Ê d . If there is no continuous deformation of the graph that preserves the edge lengths, then the embedding is called rigid. A graph G is said to be generically rigid in Ê d if and only if all of its generic realizations are rigid. In the case of Ê 2 these graphs are also known as Laman graphs.
Given a generically rigid graph in Ê d , together with generic edge lengths, we can embed it in the Euclidean d-space in a finite number of ways, modulo rigid motions (translations and rotations). It is of great interest to provide tight bounds for the number of embeddings of such graphs, modulo rigid motions, for any d. Our results provide lower bounds for d = 2 and d = 3.

Previous work
The first bounds on the number of realizations of rigid graphs, using degree bounds from algebraic geometry, are due to Borcea and Streinu [1]. They rely on the theory of distance matrices and on bounds

Our contribution
We present lower bounds on the maximal number of planar, resp. spatial, embeddings (up to rigid motions) of minimally rigid graphs with a prescribed number of vertices. However, we relax the condition that the embeddings take place in Ê d . Instead, we compute the number of complex Euclidean embeddings, that is embeddings in d . In this complex setting, even the edge lengths may be assumed to be complex numbers. Clearly, the number of complex embeddings is an upper bound on the number of real embeddings.
Using the novel algorithm developed in [4] we compute the exact number of planar embeddings for graphs with a relatively small number of vertices. In contrast, the number of spatial embeddings is computed probabilistically by means of Gröbner bases. Then we introduce techniques to "glue" an arbitrary number of such small graphs in order to produce graphs with a high number of vertices (and edges) that preserve rigidity. The gluing process (see Sections 2.1 and 3.1) allows us to derive the number of embeddings of the final graph from the number of embeddings of its components, and in this way we derive a lower bound for the number of embeddings in 2 (Theorem 5) and in 3 (Theorem 7). We emphasize that the gluing techniques are quite general and can be extended to arbitrary dimensions. Moreover, to identify those small graphs that realize the maximum number of embeddings and that can be the building blocks for the gluing process, we perform extensive experiments. We use the state-ofthe-art computer algebra tools to count the number of embeddings as the maximum number of complex solutions of polynomial systems.
If we were able to compute the number of embeddings of the small graphs in Ê d , for example by using the approach proposed in [6], then we could transfer our lower bounds on the complex embeddings to the number of real embeddings, by applying the very same gluing process; see also [15] for gluing processes using the caterpillar graph. There it is also hinted that the numbers of real and complex embeddings do not match in general. It is a very interesting problem to quantify this gap. On the one hand, one can construct infinite families of graphs for which the ratio between real and complex embeddings tends to zero. On the other hand, there are graphs, see [6] for a nontrivial example, where edge lengths can be found such that there exist as many real embeddings as complex ones.

Organization of the paper
The paper is structured as follows: First (Section 2) we present the construction of the lower bounds for the planar case, and in Section 3 we present the lower bounds for the spatial case. In Section 2.1 we describe three constructions (gluing processes) for producing infinite families of rigid graphs. Then, in Section 2.2, we discuss several strategies to identify expedient graphs that are suitable for these constructions. They lead to new lower bounds, which is discussed in Section 2.3.
Throughout the paper we represent a graph by the integer obtained by flattening the upper triangular part of its adjacency matrix and interpreting this binary sequence as an integer. For further details we refer to Appendix 4. There we also collect the encodings of all graphs mentioned throughout the paper.

Dimension 2
We begin our study with the case of planar embeddings. For this purpose, we recall the definitions of some fundamental notions. The goal in this section is to derive lower bounds for the quantity M 2 (n), introduced in Definition 2 below.
Definition 2. For a Laman graph G = (V, E) we define Lam 2 (G), called the Laman number of G, to be the number of (complex) planar embeddings that a generic labeling λ : E → (the "edge lengths" of G) admits. Moreover, we define M 2 (n) to be the largest Laman number that is achieved among all Laman graphs with n vertices.
In [14] Laman graphs are characterized to be constructible from a single edge by a sequence of two types of steps (see Figure 1). We call them Henneberg steps of type 1 and type 2 respectively. The steps of type 2 can be further classified according to additional occurring edges.   It is well known that a Henneberg step of type 1 always increases the Laman number by a factor of 2. So far it is not known by which factor a Henneberg step of type 2 might increase the Laman number. As mentioned in [15] there are Henneberg steps of type 2 which do increase the Laman number by a factor of less than 2. Vertex splitting is another construction preserving rigidity (see Figure 2). In [15] it is shown that vertex splitting increases the Laman number by a factor of at least two. Henneberg steps of type 2a and 2b are special cases of vertex splitting. Hence, only type 2c can yield a factor of less than two. Table 1 shows some increases of Laman numbers, given a certain Laman graph G and constructing a new one G ′ by a single Henneberg step.

Constructions
We discuss different constructions of infinite families of Laman graphs (G n ) n∈AE with G n having n vertices. We do this in a way such that we know precisely the Laman number for each member of the family. This directly leads to a lower bound on M 2 (n). The ideas of these constructions are described in [1]; they were used to get lower bounds by connecting several three-prism graphs at a common basis.
Here, we generalize them in order to connect any Laman graphs at an arbitrary Laman base. We present three such constructions.

Caterpillar construction
The "caterpillar construction" [1] works as follows: place k copies of a Laman graph G = (V, E) in a row and connect every two neighboring ones by means of a shared edge (see Figure 3). Alternatively, one can let all k graphs share the same edge. In any case, the resulting assembly has 2 + k(|V | − 2) vertices and its Laman number is Lam 2 (G) k , since each of the k copies of G can achieve all its Lam 2 (G) different embeddings, independently of what happens with the other copies. Hence, among all Laman graphs with n = 2 + k(|V | − 2) vertices there exists one with Lam 2 (G) k embeddings. If the number of vertices n is not of the form 2 + k(|V | − 2) then we can use the previous caterpillar graph with ⌊(n − 2)/(|V | − 2)⌋ copies of G and perform some Henneberg steps of type 1; as we mentioned earlier, each of these steps doubles the Laman number. Summarizing, for any Laman graph G, we obtain the following lower bound from the caterpillar construction: Figure 3: Caterpillar construction with 4 copies of the three-prism graph.

Fan construction
The second construction we employ is called "fan construction": take a Laman graph G = (V, E) that contains a triangle (i.e., a 3-cycle), and glue k copies of G along that triangle (see Figure 4). Once we fix one of the two possible embeddings of that triangle, each copy of G admits Lam 2 (G)/2 embeddings. The remaining Lam 2 (G)/2 embeddings are obtained by mirroring, i.e., by using the second embedding of the common triangle. Similarly as before, the assembled fan is a Laman graph with 3 + k(|V | − 3) vertices that admits 2 · (Lam 2 (G)/2) k embeddings. Hence, we get the following lower bound: While the caterpillar construction can be done with any Laman graph, this is not the case with the fan. For example, the Laman graph with 12 vertices displayed in Figure 6 has no 3-cycle and therefore cannot be used for the fan construction (see also Table 4).

Generalized fan construction
As a third construction, we propose a generalization of the fan construction: instead of a triangle, we may use any Laman subgraph H = (W, F ) of G for gluing. Using k copies of G, we end up with a fan consisting of |W | + k(|V | − |W |) vertices and Laman number at least Here we assume that the embeddings of G are divided into L(H) equivalence classes of equal size, by considering two embeddings of G as equivalent if the induced embeddings of H are equal (up to rotations and translations). If this assumption was violated, the resulting lower bound would be even better; thus we can safely state the following bound: Note that the previously described fan construction is a special instance of the generalized fan, by taking as the subgraph H a triangle with Lam 2 (H) = 2. Similarly, also the caterpillar construction can be seen as a special case, by taking for H a graph with 2 vertices and Laman number 1. To indicate the subgraph of a generalized fan construction we also write H-fan. Using our encoding for graphs the usual fan would be denoted by 7-fan. The fan fixing the 4-vertex Laman graph is then denoted by 31-fan. Table 5 shows these bases.

Rigid graphs with many embeddings
In order to get good lower bounds, we need particular Laman graphs that have a large number of embeddings. For this purpose we have computed the Laman numbers of all Laman graphs with up to n = 12 vertices. We did so using the algorithm of [4] (see [2] for an implementation and [3] for a streamlined extended abstract). For each 3 n 12 we have identified the (unique) Laman graph with the highest number of embeddings. We present these numbers in Table 2 and the corresponding graphs for 6 n 12 appear in Figure 6.  Table 2: Minimal and maximal Laman number among all n-vertex Laman graphs; the minimum is 2 n−2 and it is achieved, for example, on Laman graphs that are constructible by using only Henneberg steps of type 1. The row labeled with "lower" contains the bounds from [9].  Table 2, encodings see Table 8).
There are 44 176 717 Laman graphs with 12 vertices, and therefore it was a major undertaking to compute the Laman numbers of all of them; it took 56 processor days to complete this task. Hence it is unrealistic to do the same for all Laman graphs with 13 or more vertices. In order to proceed further, we developed some heuristics to construct graphs with very high Laman numbers, albeit not necessarily the highest one. The properties that we formulate for the families T (n) and S(n) below are inspired by inspecting the few known graphs that achieve the maximal Laman number M 2 (n) (see Figure 6 and Table 2). More precisely, we consider the set T (n) of Laman graphs with n vertices that satisfy the following additional properties.

Definition 3. We say that a Laman graph
• G is a planar graph, that is it can be embedded in the plane without crossings of edges.
• Each vertex of G has degree 3 or 4; in this case the Laman condition (Definition 1) implies that there are exactly 6 vertices of degree 3 and |V | − 6 vertices of degree 4.
• There are precisely two 3-cycles, and the number of 4 cycles is |V | − 3. Note that we count only nontrivial cycles all of whose edges are distinct. Moreover, the 3-cycles are disjoint, that is they do not share an edge. By Euler's formula the number of faces (including the outer, unlimited one) is given by 2 − |V | + |E| = |V | − 1, and hence each of the cycles is the boundary of a face.
These properties are quite selective: for example, the set T (12) contains only 18 (out of 44 million!) Laman graphs, and the set T (18) has the manageable cardinality 188. For n 11 we have that max G∈T (n) Lam 2 (G) = M 2 (n). In contrast, the 12-vertex graph with the highest Laman number is not in T (12), since it is not planar and does not have any 3-cycles. Nevertheless, it satisfies the condition on the vertex degrees. Furthermore, the graph with the highest Laman number in T (12) is the graph with the second highest Laman number with 12 vertices. Hence, it is also the graph with the highest Laman number which does contain a 3-cycle. For 13 n 18 we have constructed all Laman graphs T (n) and among them identified the one with the highest Laman number. We summarize the results in Table 3; the corresponding graphs are displayed in Figure 6.  Table 3: With M T (n) we denote the maximal Laman number of the graphs in T (n). In the row below we give the highest Laman numbers that we have found so far by looking at graphs in S(n) (exhaustive for n 15 but incomplete for n > 15).
We have seen that for 12 vertices the maximal graph in T (12) is not the one with the highest Laman number. The same holds true for 13 n 18, which can be seen by looking at a different family of graphs: We observed that the graphs which are known to be maximal according to their Laman number are Hamiltonian, i.e., they contain a path that visits each vertex exactly once (Hamiltonian path). Hence, we focus on Hamiltonian graphs. The problem is that they cover still around 2/3 of all Laman graphs (at least for small n). Therefore, we considered other properties of the known graphs with maximal Laman number. One of these properties is the symmetry of a certain embedding.

Definition 4. We say that a Laman graph G = (V, E) is an element of S(n) iff
• G is Hamiltonian, i.e. it contains a Hamiltonian cycle H.
• There exists a circular embedding, i.e. an embedding ρ such that ρ(v) lies on the same circle for all v ∈ V , and H is embedded on a regular n-gon.   Table 3 (encodings see Table 9).
One can see that the maximal Laman graphs up to 12 vertices fulfill these symmetry properties ( Figure 8). Note that these are the same graphs that are displayed in Figure 6.
We computed the Laman numbers of all graphs in S(n) up to n = 15. Unfortunately, for larger n the set S(n) still contains too many graphs. For n = 15 there are already 85058 such graphs. Performing the computations on a subset of S(n) yields the graphs shown in Figure 9.  Table 3) found so far (encodings see Table 10).

Lower bounds
We now use these results to derive new and better lower bounds than the previously known ones. We apply the caterpillar construction to the Laman graphs with the maximal number of embeddings for 6 n 12, and for 13 n 18 we use the graphs found by exploring the set S(n) (see Figure 9 and Table 3). The fan construction is applied to the maximal Laman graphs for 6 n 11 only, since it is not applicable to the maximal graph with 12 vertices (Figure 6). Hence, for the remaining cases, 12 n 18, the fan construction is applied to the maximal graph in T (n). In Table 4 the results obtained by these graphs are written in a separate column. The results in the next column are obtained by randomly found graphs which contain a triangle and have a higher Laman number than the one in T (n).
For 7 n 11 we also tried the generalized fan construction: among all Laman graphs whose vertex degrees are at least 3-we can exclude Laman graphs that have vertices of degree 2 since they can be derived from a smaller graph by Henneberg steps of type 1, thereby only doubling the embedding number-we selected all graphs that have the 4-vertex Laman graph as a subgraph. Then we computed their Laman numbers in order to find the maximum that can be achieved among those graphs. Until 12 vertices the lower bounds, according to (3), are not as good as those obtained by the standard fan construction. For higher n, randomly found graphs show improvements over the fan construction for the graphs we have found. Note that since the graphs are found only randomly this does not show any results on whether the factors are indeed better.  Table 4: Growth rates (rounded) of the lower bounds. For n 12 these values are proven to be the best achievable ones; for n > 12 the values are just the best we found by experiments, hence it is possible that there are better ones. The drawings of the graphs corresponding to the last three columns are given in Figure 5. The encodings for the graphs can be found at: caterpillar (Table 8), fan T (n) ( Table 9), fan (Table 11), 31-fan (Table 12), 254-fan (Table 13), 7916-fan (Table 15) growth rate The light colors indicate values that were not found by exhaustive search and which therefore could possibly be improved.
From Table 4 we can see the bound 2.28943 n obtained in [1], 2.30033 n from [6], and 2.41159 n from [15], as well as the current improvements obtained in this paper. By instantiating Formula (2) with the last Laman graph in Figure 7, which has 18 vertices and Laman number 1953816, we obtain the following theorem.

Theorem 5. The maximal Laman number M 2 (n) satisfies
This means M 2 (n) grows at least as 15 √ 976908 n , which is approximately 2.50798 n . In other words 15 √ 976908 n ∈ O(M 2 (n)).

Dimension 3
A generalization of the counting condition to three dimensions would suggest that a graph G = (V, E) needs to fulfill |E| = 3|V | − 6, and |E ′ | 3|V ′ | − 6 for every subgraph G ′ = (V ′ , E ′ ) of G in order to be rigid. Unlike the two-dimensional case, this definition is necessary but not sufficient for generic minimal rigidity. An example of a graph which is not minimally rigid in dimension 3 can already be found in [21]. We are interested in lower bounds on M 3 (n), which is the three-dimensional analog of M 2 (n).

Definition 6.
Let G = (V, E) be a graph. We call G a Geiringer graph 1 , if there exists only a finite number of (complex) spatial embeddings in 3 , given a generic labeling λ : E → of the edges of G.
For a Geiringer graph G, we define Lam 3 (G), called the 3D-Laman number of G, to be this finite number of (complex) embeddings. Moreover, we define M 3 (n) to be the largest 3D-Laman number that is achieved among all Geiringer graphs with n vertices.
In [24] Geiringer graphs are shown to be constructible from a triangle graph by a sequence of three types of steps (see Figure 12). Steps of type 1 and type 2 preserve rigidity (see [24]). The steps of type 3 can be further classified according to whether the two chosen edges have a common vertex or not. Note that every Geiringer graph can be constructed using such steps [24,Prop. 4.1,4.4,4.5], but not every construction by these steps is indeed minimally rigid, i.e. rigidity is not necessarily preserved by steps of type 3. Indeed type 3v does not even preserve the vertex-edge-count for subgraphs (see Figure 13). However, there are certain subclasses of type 3 steps for which rigidity is preserved (see for instance [24,13,5]).   In the following we construct Geiringer graphs by the above mentioned moves, removing those which turn out to be non-rigid. By this procedure we get all Geiringer graphs with up to 10 vertices. The computation of the number of realizations is done by Gröbner bases: The coordinates of the vertices are obtained as the solutions of a system of (quadratic) polynomial equations. Instead of keeping the edge lengths generic (by introducing a symbolic parameter for each edge), we insert random numbers (integers) for the edge lengths. Otherwise the computation would not be feasible at all. Moreover, for further speed-up, we compute the Gröbner basis only modulo a sufficiently large prime number p so that the occurrence of large rational numbers is avoided. In other words, the Gröbner basis computation takes place over the finite field p . In order to get high confidence into the results, we did each computation at least three times, with different random choices of the parameters. If we get the same result three times, we can be rather sure to have the correct number. However, we want to make the reader aware of the fact, that it is a probabilistic method. Although we have a strong evidence for the computed 3D-Laman numbers, they are not rigorously proven to be correct.
Still, computing the 3D-Laman numbers for all Geiringer graphs of 10 vertices was a major undertaking. By applying the Henneberg steps depicted in Figure 12 in all possible ways, we obtained 747065 graphs that potentially had the property of being minimally rigid (our Gröbner basis computations suggested that 612884 of them indeed have this property). In our implementation, we do some preprocessing on the graphs in order to create polynomial systems with as few variables as possible: for example, we remove vertices of valency 3 (i.e., revert Henneberg steps of type 1), and compensate by multiplying the final Laman number by 2 for each removed vertex. Another optimization consists in identifying the largest tetrahedral subgraph, i.e., the largest subgraph that can be constructed by Henneberg steps of type 1, starting from a triangle. This subgraph is considered when fixing some vertices of the graph, in order to deal with rotations and translations. Then we call the fast FGb [11] implementation of Gröbner bases in Maple, for determining the number of solutions of the constructed polynomial system. Executing this program once for all 747065 graphs took about 162 days of CPU time, using Xeon E5-2630v3 Haswell 2,4Ghz CPUs. However, the computations were run in parallel so that the result was obtained after a few days. This means that in average it took about 19s to determine the 3D-Laman number of a graph with 10 vertices, but the timings vary a lot: graphs which can be constructed by Henneberg steps of type 1 require almost no time, due to our preprocessing, while the Gröbner basis computation for some graphs takes several hours (up to 16 hours).
It is easy to see that a Henneberg step of type 1 always increases the 3D-Laman number by a factor of 2. So far it is not known by which factor a Henneberg step of type 2 or type 3 might increase the 3D-Laman number. Table 5 summarizes some increases of 3D-Laman numbers, given a certain Geiringer graph G and constructing a new one G ′ by a single Henneberg step.

Constructions
We consider again caterpillar and fan constructions. For the caterpillar we now need to glue two graphs by a common triangle. Similarly, we need a tetrahedron for the fan construction. For the generalized fan construction we use the unique Geiringer graph with 5 vertices. For sake of completeness, we display the general formula for obtaining a lower bound on M 3 (n) with the generalized 3D-fan construction; the formula is completely analogous to (3):

Lower Bounds for M 3 (n)
In order to get good lower bounds, we need particular Geiringer graphs that have a large number of embeddings. We computed the 3D-Laman numbers of all Geiringer graphs with up to n = 10 vertices. For each n we have identified the (unique) Geiringer graph with the highest number of embeddings. These numbers are given in Table 6. The corresponding graphs for 6 n 10 are shown in Figure 14.  Table 6: Minimal and maximal 3D-Laman number among all n-vertex Geiringer graphs; the row labeled with "min" contains the lowest 3D-Laman number which is found by computation. The row labeled with "upper" contains the bounds from [1]. Figure 14: Geiringer graphs with 6 n 10 vertices; for each n the (unique) graph with maximal number of embeddings is depicted. The corresponding 3D-Laman numbers M 3 (n) are given in Table 6 (encodings see Table 16).
In [9] lower and upper bounds for the 1-skeleta of simplicial polyhedra are computed. They also use an extension of Henneberg steps to the three-dimensional case. However, they form just a subset of the Henneberg steps presented here. From Table 7 we can see the bound of 2.51984 n obtained in [9] and the improvements obtained in this paper. By instantiating Formula (4) with the last Laman graph in Figure 14, which has 10 vertices and 3D-Laman number 2560, we obtain the following theorem.    From our data we observe that (for n 12) there is always a unique graph G n,max on n vertices that achieves the maximal Laman number among all graphs with n vertices.

Conjecture 2. For each n
2 there is a unique Laman graph G n,max with n vertices and with the property Lam 2 (G n,max ) = M 2 (n). Similarly for M 3 (n).
Also the relation of Henneberg steps to the increase of the number of realizations is subject of further research: Open Problem 3. Find lower and upper bounds for the factor Lam(G ′ )/Lam(G) where G ′ is constructed from a Laman graph G by a Henneberg step. By what we showed, the lower bound is smaller than or equal to 12/7 in 2D and 1/4 in 3D. The upper bound is bigger than or equal to 301/32 in 2D and 68/3 in 3D.
In dimension 2 we expect every Henneberg step to increase the Laman number by at least a factor of two. As mentioned above, this is still open for steps of type 2c. In dimension 3 this does definitely not hold any more, since the first line in Table 5 gives a counterexample. It would be interesting to know whether there is a lower bound on the Laman number in 3D.
Another direction of research is the study of real realizations, i.e., by considering labelings λ whose values are in Ê and embeddings into Ê d . In the 2D case, it is known that the ratio between the number of real and complex realizations can be arbitrarily close to 0, by exhibiting a particular graph (of 8 vertices and Laman number 90), which provably cannot have as many real realizations as complex ones [15], and by gluing this graph arbitrarily often together.
Open Problem 5. Let R 2 (G) be the maximal (finite) number of different real realizations in Ê 2 of a Laman graph G = (V, E), that can be achieved for some real labeling λ : E → Ê. Clearly, for a Laman graph G that is constructible by using only Henneberg steps of type 1, we have R 2 (G) = Lam 2 (G). But what can we say about the sequence ϕ n n 2 of quotients ϕ n := R 2 (G n,max ) M 2 (n) , i.e., we are asking about the gap between real and complex realizations for graphs with maximal Laman number. From [6] we know that ϕ n = 1 for n 7, but does ϕ n = 1 hold for all n? Probably not. Do we have lim n→∞ ϕ n = 0, or does this limit approach a nonzero constant? Does the limit exist at all? Similar questions can be posed for the three-dimensional case, where much less is known. A first step into this direction would be to answer the following question: Open Problem 6. Find a Geiringer graph that cannot have as many real realizations as complex realizations.