For a graph with edges , we consider the set of all its realizations in the plane, such that the lengths of the edges coincide with some prescribed edge labeling . Edges and vertices are allowed to overlap in such a realization. For example, suppose that is the complete graph on four vertices minus one edge. Figure 1 shows all possible realizations of up to rotations and translations, for a particular given edge labeling.
We say that a property holds for a general edge labeling if it holds for all edge labelings belonging to the complement of a proper algebraic subset of the set of all edge labelings. In this paper we address the following problem:
For a given graph, determine the number of realizations, up to rotations and translations, for a general edge labeling.
The realizations of a graph can be considered as structures in the plane, which are comprised of rods connected by rotational joints. If a graph with an edge labeling admits infinitely (finitely) many realizations up to rotations and translations, then the corresponding planar structure is flexible (rigid), see Figure 2.
The study of rigid structures, also called frameworks, was originally motivated by mechanics and architecture, and goes back as early as the 19th century to the works of James Clerk Maxwell, August Ritter, Karl Culmann, Luigi Cremona, August Föppl, and Lebrecht Henneberg. Nowadays, there is still a considerable interest in rigidity theory [GSS93, Con93] due to various applications in natural science and engineering; for an exemplary overview, see the conference proceedings “Rigidity Theory and Applications” [TD02]. Let us just highlight three application areas that are covered there: In materials science the rigidity of crystals, non-crystalline solids, glasses, silicates, etc. is studied; among the numerous publications in this area we can mention [BS13, JH97]. In biotechnology one is interested in possible conformations of proteins and cyclic molecules [JRKT01], in particular to the enumeration of such conformations [LML14, EM99]. In robotics, one aims at computing the configurations of mechanisms, such as 6R chains or Stewart-Gough platforms. For the former, the 16 solutions of the inverse kinematic problem have been found by using very elegant arguments from algebraic geometry [Sel05, Section 11.5.1]. For the latter, the 40 complex assembly modes have been determined by algebraic geometry [RV95] or by computer algebra [FL95]; Dietmaier [Die98] showed that there is also an assignment of the parameters such that all solutions are real. Recently, connections between rigidity theory and incidence problems have been established [Raz17].
Pollaczek-Geiringer’s and Laman’s characterization
A graph is called generically rigid (or isostatic) if a general edge labeling yields a rigid realization. No edge in a generically rigid graph can be removed without losing rigidity. This is why such graphs are also called minimally rigid in the literature. Note that the graph in Figure 1(c) is not generically rigid, while the one in Figure 1(b) is. Hilda Pollaczek-Geiringer [Pol27] characterized this property in terms of the number of edges and vertices of the graph and its subgraphs. The same characterization can be found in a paper of Gerard Laman [Lam70] more than 40 years later. Unfortunately, the results of Pollaczek-Geiringer have been unnoticed until recently. Nowadays, these objects are known as Laman graphs; since this terminology is well-known, we stick to it in this paper.
State of the art
All realizations of a Laman graph with an edge labeling can be recovered as the solution set of a system of algebraic equations, where the edge labels can be seen as parameters. Here, we are interested in the number of complex solutions of such a system, up to an equivalence relation coming from direct planar isometries; this number is the same for any general choice of parameters, so we call it the Laman number of the graph. For some graphs up to vertices, this number has been computed using random values for the parameters [JO12] — this means that it is very likely, but not absolutely certain, that these computations give the true numbers. Upper and lower bounds on the maximal Laman number for graphs with up to vertices were found by analyzing the Newton polytopes of the equations and their mixed volumes [ETV09] using techniques from [ST10]. It has been proven [BS04] that the Laman number of a Laman graph with vertices is at most .
Our main result is a combinatorial algorithm that computes the number of complex realizations of any given Laman graph. This is much more efficient than just solving the corresponding nonlinear system of equations.
We found it convenient to see systems of equations related to Laman graphs as special cases of a slightly more general type of systems, determined by bigraphs. Roughly stated, a bigraph is a pair of graphs whose edges are in bijection. Every graph can be turned into a bigraph by duplication and it is possible to extend the notion of Laman number also to bigraphs. The majority of these newly introduced systems do not have geometric significance: they are merely introduced to have a suitable structure to set up a recursive strategy. Our main result (Theorem 4.7) is a recursive formula expressing the Laman number of a bigraph in terms of Laman numbers of smaller bigraphs. Using this formula we succeeded in computing the exact Laman numbers of graphs with up to vertices — a task that was absolutely out of reach with the previously known methods.
The idea for proving the recursive formula is inspired by tropical geometry (see [MS15] or [Stu02, Chapter 9]): we consider the system of equations over the field of Puiseux series, and the inspection of the valuations of the possible solutions allows us to endow every bigraph with some combinatorial data that prescribes how the recursion should proceed. This gives, therefore, a recursive formula for the right hand side of Corollary 3.6.16 in [MS15] in our particular case. Notice that the Laman number of a graph can be understood as the base degree (as defined at the end of Section of [Ros14]) of the algebraic matroid associated to the variety parametrized by the square distances of the pairs of points prescribed by the edges of the Laman graph.
Structure of the paper
Section 1 contains the statement of the problem and a proof of the equivalence of generic rigidity and Laman’s condition in our setting. This section is meant for a general mathematical audience and requires almost no prerequisite. Section 2 analyzes the system of equations defined by a bigraph, and Section 3 provides a general formulation for a recursive formula for the number of solutions of the system. Here, we employ some standard techniques in algebraic geometry, so the reader should be acquainted with the basic concepts in this area. In Section 4, we specialize the general result provided at the end of Section 3 and we give a recursive formula for the Laman number. It leads to an algorithm that is employed in Section 5 to derive some new results on the number of realizations of Laman graphs. These last two sections are again meant for a general audience, and they require only the knowledge of the objects and the results in Sections 3 and 2, but not of the proof techniques used there. For a condensed and streamlined version of this paper, we refer to the extended abstract [CGG17].
We thank Jan Peter Schäfermeyer for making us aware of the work by Hilda Pollaczek-Geiringer. We are grateful for the careful proofreading of the two anonymous referees, and for their encouraging and constructive suggestions. We also thank Bill Jackson for his careful reading resulting in an improvement of some technical aspects.
1. Laman graphs
In this section, by a graph we mean a finite, connected, undirected graph without self-loops or multiple edges. We write to denote a graph with set of vertices and set of edges . An (unoriented) edge between vertices and is denoted by .
A labeling of a graph is a function ; the pair is called a labeled graph. A realization of is a function . We say that a realization is compatible with a labeling if for each edge the Euclidean distance between its endpoints agrees with its label:
A labeled graph is realizable if and only if there is a realization compatible with .
We say that two realizations and of a graph are equivalent if and only if there exists a direct Euclidean isometry of such that ; a direct Euclidean isometry is an affine-linear map that preserves distance and orientation in .
A labeled graph is called rigid if it satisfies the following properties:
there are only finitely many realizations compatible with , up to equivalence.
Our main interest is to count the number of realizations of generically rigid graphs, namely graphs for which almost all realizable labelings induce rigidity. Unfortunately, in the real setting, this number is not well-defined, since it may depend on the actual labeling and not only on the graph. In order to define a number that depends only on the graph, we switch to the complex setting. By this we mean that we allow complex labelings and complex realizations . In this case, the compatibility condition Equation 1 becomes
where . Moreover, we consider “direct complex isometries”, namely maps
is an orthogonal matrix with determinant. Here, the word “isometries” is an abuse of language, since in this case is not an inner product. Notice that if we are given a labeling for a graph and two realizations of into that are not equivalent under real direct isometries, then they are also not equivalent under complex isometries. This means that counting the number of non-equivalent realizations in delivers an upper bound for the number of non-equivalent realizations in .
Given a graph , the set of possible labelings
forms a vector space, that we denote by. In this way we are able to address the components of a vector in by edges , namely by writing . Since is a vector space, it is meaningful to speak about properties holding for a general labeling: a property holds for a general labeling if the set
is contained in a proper algebraic subset of , i.e. a subset strictly contained in and defined by polynomial equations.
A graph is called generically realizable if for a general labeling the labeled graph is realizable. A graph is called generically rigid if for a general labeling the labeled graph is rigid.
If a graph is generically realizable, then every subgraph of is generically realizable. Every general labeling for can be extended to a general labeling for . Since by hypothesis has a compatible realization, the subgraph admits such a realization as well.
A Laman graph is a graph such that , and for every subgraph it holds .
We are going to see (Theorem 1.8) that Laman graphs are exactly the generically rigid ones. Many different characterizations of this property have appeared in the literature, for example by construction steps [Hen03] (see Theorem 1.8), or in terms of spanning trees after doubling one edge [LY82] or after adding an edge [Rec84], or in terms of three trees such that each vertex of the graph is covered by two trees [Cra06]. These characterizations can be used for decision algorithms on the minimal rigidity of a given graph [Ber05, JH97, DK09, GHT10].
For any graph , there is a natural map from the set of its realizations to the set of its labelings:
Each fiber of , i.e. a preimage of a single point , is invariant under the group of direct complex isometries. We define a subspace as follows: choose two distinguished vertices and with , and consider the linear subspace defined by the equations and . In this way, the subspace intersects every orbit of the action of isometries on a fiber of in exactly two points: in fact, the equations do not allow any further translation or rotation; however, for any labeling and for every realization in compatible with there exists another realization, obtained by multiplying the first one by , which is equivalent, but gives a different point in . The restriction of to gives the map
The following statement follows from the construction of ; notice that the choice of and has no influence on the result. Recall that a map between algebraic sets is called dominant if is contained in an algebraic proper subset of .
A graph is generically rigid if and only if is dominant and a general fiber of is finite. This is equivalent to saying that is dominant and .
It is enough to notice that if is dominant, then the dimension of the general fiber is . ∎
We state Laman’s theorem characterizing generically rigid graphs. A proof, which closely follows Laman’s original argument in his paper [Lam70], can be found in Appendix A. For our purposes, we need a result that implies the existence of only a finite number of complex realizations, while the original statement deals with the real setting and proves that a given realization does not admit infinitesimal deformations.
Given a Laman graph, we are interested in the number of its realizations in that are compatible with a general labeling, up to equivalence. As we have already pointed out, the degree of the map (namely, the cardinality of a fiber over a general point ) is twice the number of realizations of compatible with a general labeling, up to equivalence. Lemma 1.7 and Theorem 1.8 imply that the map is dominant and its degree is finite.
We now construct a map whose degree is exactly the number of equivalence classes. For this purpose, we employ a different way than in to get rid of complex “translations” and “rotations”: first, for the translations, we take a quotient of vector spaces, which can be interpreted as setting as for , or alternatively as moving the barycenter of a realization to the origin; second, we use projective coordinates to address the rotations. More precisely, in order to study the system of equations
which defines a realization of a Laman graph, we can regard the vectors and as elements of the space . In this way, we are allowed to add arbitrary constants to all components or to all components without changing the representative in the quotient; hence these vectors are invariant under translations. Moreover, if one performs the change of variables
then the previous system of equations becomes
and the action of a complex rotation turns into the multiplication of the -coordinates by a scalar in , and of the -coordinates by its inverse. Thus, by considering and as coordinates in two different projective spaces, the points we obtain are invariant under complex rotations. In order to employ these two strategies, we define
and the map
where denotes the point in determined by a vector in . Notice that the map is well-defined, because the quantities depend, up to scalars, only on the points , and not on the particular choice of representatives (and similarly for ). Note that may not be defined everywhere, which is conveyed by the notation .
For any Laman graph the equality holds.
Recall that the degree is computed by counting the number of preimages of a general point in the codomain. Let therefore be a general labeling and let be the edge used to define , so in particular we can suppose . We show that there is a 2:1 map from to , where is the point defined by the values of as projective coordinates. The map is defined according to the change of variables Equation 2:
In other words, we just take the coordinates of the embedded vertices as projective coordinates and make a complex coordinate transformation, namely one that diagonalizes the linear part of the isometries. The map is well-defined, since the quantities and are never all zero because of the definition of the map . For of the form and such that and , we choose coordinates such that , , and . This is possible because we can add a constant vector to any of or without changing the point in . When , every point in is of the form , where and (recall the definition of the map ). By definition of , we have that for all :
for some constants . Thus, for , we get the equation , which in turn implies that every point in determines a realization of the form
that must be compatible with . By construction, the constant must satisfy , since . There are exactly two such numbers , and this proves the statement. ∎
The number of realizations of a Laman graph, compatible with a general labeling and counted up to equivalence, is equal to the degree of the map .
2. Bigraphs and their equations
In this section we introduce the main concept of the paper, the one of bigraph. Bigraphs are pairs of graphs whose edges are in bijection. Every graph determines a bigraph by simply duplicating it and considering the natural bijection between the edges. It is possible to associate to any bigraph a rational map as we did with the map in Equation 3. The reason for this duplication is that, in order to set up a recursive formula for the degree of , we want to be able to handle independently the two factors and that appear in its specification. To do this, we have to allow disconnected graphs with multiple edges.
Notice that if we allow graphs with multiedges, then we have to give away the possibility to encode an edge via an unordered pair of vertices. Instead, we consider the sets and of vertices and edges, respectively, to be arbitrary sets, related by a function , where denotes the power set, assigning to each edge its corresponding vertices. The image of an element via can be either a set of cardinality two, when connects two distinct vertices, or a singleton, when is a self-loop. This way of encoding graphs allows to use the same set for the edges of two graphs; this realizes formally the idea of prescribing a bijection between the edges of two graphs.
A bigraph is a pair of finite undirected graphs — allowing several components, multiple edges and self-loops — where and . We denote by and the two maps assigning to each edge its vertices. The set is called the set of biedges. For technical reasons, we need to order the vertices of edges in or ; therefore, we assume that there is a total order given on the sets of vertices and . An example of a bigraph is provided in Figure 5.
Notice that a single graph can be turned into a bigraph by considering the pair , and by taking the set of biedges to be ; the total order is obtained by fixing any total order on and duplicating it. Next, we extend a weakened version of the Laman condition to bigraphs.
For a graph we define the dimension of as
Since a Laman graph is connected by assumption, the condition can be rewritten as .
Let be a bigraph with biedges , then we say that is pseudo-Laman if
It follows from Remark 2.3 that for a Laman graph the bigraph is pseudo-Laman.
We introduce two operations that can be performed on a graph, starting from a subset of its edges: the subtraction of edges and the quotient by edges. We are going to use these constructions several times in our paper: subtraction is first used at the end of this section, while the quotient operation is mainly utilized starting from Section 3.
Let be a graph, and let . We define two new graphs, denoted and , as follows. An example for the operations is provided in Figure 4.
Let be the subgraph of determined by . We define to be the graph obtained as follows. Its vertices are the equivalence classes of the vertices of modulo the relation dictating that two vertices and are equivalent if there exists a path in connecting them. Its edges are determined by edges in , more precisely an edge in such that defines an edge in the quotient connecting the equivalence classes of and if and only is not an edge of .
Let be the set of vertices of that are endpoints of some edge in . Define .
Let be a bigraph, where and . We set
and are the standard coordinates of and similarly for .
Let be a bigraph, where and . Define
where , , and , , with and as in Definition 2.1. Here and in the rest of the paper, if is a self-loop say in , then the corresponding polynomial in the definition of is considered to be . As in Section 1, the square brackets denote points in or determined by vectors in or . As for the map , the map is well-defined because the quantities and depend only, up to scalars, on points in and , and not on the chosen representatives. We call the map the rational map associated to .
In Definition 2.7 we impose and in the equations defining the map . The reason for this is that we want , when is of the form , to coincide with defined at the end of Section 1. If we do not specify the order in which the vertices appear in the expressions and , we could end up with a map for which one component is of the form , and not as we would expect. As in Section 1, we are mainly interested in the degree of the rational map associated to a bigraph.
Let be a bigraph. If is dominant, we define the Laman number of , , as , which can hence be either a positive number, or . Otherwise we set to zero.
Notice that if is pseudo-Laman and , then .
If a bigraph has a self-loop or it is particularly simple, then its Laman number is zero or one, as shown by the following proposition.
Let be a bigraph.
If or has a self-loop, then .
If both and consist of a single edge that joins two vertices, then .
If or has a self-loop, a direct inspection of the map shows that the defining polynomial corresponding to the self-loop is zero, hence cannot be dominant. If both and consist of a single edge that joins two vertices, then the map reduces to the map , which has degree . ∎
By simply unraveling the definitions, we see that the number of realizations of a Laman graph, up to equivalence, can be expressed as a Laman number.
Let be a Laman graph, then the Laman number of the bigraph — where biedges are the edges of — is equal to the number of different realizations compatible with a general labeling of , up to direct complex isometries.
Due to Proposition 2.11, the problem we want to address in this work is a special instance of the problem of computing the Laman number of a bigraph. Notice, however, that the Laman number of an arbitrary bigraph does not have an immediate geometric interpretation.
Let be a bigraph with biedges such that and fix a biedge . Since is a rational dominant map between varieties over , there is a Zariski open subset such that the preimage of any point under consists of distinct points. In particular, we can suppose that is of the form with and a general point of .
In the following we find it useful to work in an affine setting: this is why in Definition 2.14 we introduce the sets . We are going to use the language of affine schemes, mainly to be able to manipulate the equations freely without being concerned about the reducedness of the ideal they generate. The reader not acquainted with scheme theory can harmlessly think about classical affine varieties, and indeed we are going to prove that the ideals we are concerned with are reduced. We first need to set some notation.
Let be a bigraph, where and . Define
Notice that the elements of and
are ordered pairs (and this is conveyed also by the different notation used). In particular, from the definition we see that if, then also , and similarly for . Moreover, we require the two elements in each pair to be different, and this is crucial in view of Definition 3.6.
Let be a bigraph with biedges without self-loops. Fix a biedge . For a general point in , we define as the subscheme of defined by
where we take and as coordinates and where
Here and in the following, when we write for a cycle in we mean the expression (and similarly for cycles in ). Notice that in cycles we allow repetitions of edges. In particular, if , one can always consider the cycle , which implies the relation . We drop the dependence of on and in the notation, since in the following it is clear from the context.
Consider the bigraph with set of biedges as in Figure 5, that consists of two copies of the only Laman graph with vertices. Fix the biedge to be the one associated to the two edges connecting and . If is a general point, then the scheme is defined by the following equations:
Note that we did not include redundant equations coming from cycles such as .
In the following lemma we show that the sets can be used to compute the degree of .
Let be a bigraph with biedges without self-loops. Fix a biedge . Let be given by and for all . Then the schemes and are isomorphic. In particular, consists of distinct points.
Write with and with . We define a morphism from to by sending a point
to the point whose -coordinate is , where , for all , and whose -coordinate is , where , for all .
We define a morphism from to as follows. For every component of , fix a rooted spanning tree and denote its root by ; similarly for . We send a point to the point such that if a vertex belongs to the connected component , then , where is the unique path in from to , and similarly for the vertices . A direct computation shows that both maps are well-defined, and are each other’s inverse. From this the statement follows. ∎
We conclude the section by proving a few results about the Laman number of a special kind of bigraph, that are used in Section 4 to obtain the final algorithm.
Let be a graph and let be an edge of . We say that is a bridge if removing increases the number of connected components of .
Let be a pseudo-Laman bigraph with biedges without self-loops and fix . If is a bridge in both and , then .
Suppose for a contradiction . Consider the equations defining . Since is a bridge in both and , the variables and , where and , do not appear in any of the equations defined by cycles in or in except for the equations and . Hence, the system of equations
defines an affine scheme isomorphic to . One notices, however, that if is a point in , then for every also the point is in . This implies that has infinite cardinality, which contradicts the pseudo-Laman assumption on . ∎
Let be a pseudo-Laman bigraph with biedges without self-loops and fix . If is a bridge in , but not in , then
Consider another biedge and use it to define the scheme . Its equations are:
Now consider the bigraph . Notice that we can still use to define the scheme . Its equations are: