# The number of realizations of a Laman graph

Laman graphs model planar frameworks that are rigid for a general choice of distances between the vertices. There are finitely many ways, up to isometries, to realize a Laman graph in the plane. Such realizations can be seen as solutions of systems of quadratic equations prescribing the distances between pairs of points. Using ideas from algebraic and tropical geometry, we provide a recursive formula for the number of complex solutions of such systems.

## Authors

• 3 publications
• 6 publications
• 7 publications
• 10 publications
• 6 publications
• 10 publications
• ### Computing the number of realizations of a Laman graph

Laman graphs model planar frameworks which are rigid for a general choic...
07/12/2017 ∙ by Jose Capco, et al. ∙ 0

• ### Distinct distances in the complex plane

We prove that if P is a set of n points in ℂ^2, then either the points i...
06/16/2020 ∙ by Adam Sheffer, et al. ∙ 0

• ### Near-Optimal Distance Emulator for Planar Graphs

Given a graph G and a set of terminals T, a distance emulator of G is an...
07/04/2018 ∙ by Hsien-Chih Chang, et al. ∙ 0

• ### Canonical form of modular hyperbolas with an application to integer factorization

For a composite n and an odd c with c not dividing n, the number of solu...
01/23/2020 ∙ by Juan Di Mauro, et al. ∙ 0

• ### Computing the inverse geodesic length in planar graphs and graphs of bounded treewidth

The inverse geodesic length of a graph G is the sum of the inverse of th...
08/04/2019 ∙ by Sergio Cabello, et al. ∙ 0

• ### Shapes from Echoes: Uniqueness from Point-to-Plane Distance Matrices

We study the problem of localizing a configuration of points and planes ...
02/19/2019 ∙ by Miranda Kreković, et al. ∙ 0

• ### Tracking network dynamics: a survey of distances and similarity metrics

From longitudinal biomedical studies to social networks, graphs have eme...
01/22/2018 ∙ by Claire Donnat, et al. ∙ 0

##### This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

## Introduction

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.

### Historical notes

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 contribution

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].

### Acknowledgments

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 .

###### Definition 1.1.

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:

 (1) λ(e)=∥∥ρ(u)−ρ(v)∥∥2,where e={u,v}.

A labeled graph is realizable if and only if there is a realization compatible with .

###### Definition 1.2.

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 .

###### Definition 1.3.

A labeled graph is called rigid if it satisfies the following properties:

• is realizable;

• 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

 λ(e)=⟨ρ(u)−ρ(v),ρ(u)−ρ(v)⟩,e={u,v},

where . Moreover, we consider “direct complex isometries”, namely maps

where

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 .

###### Terminology.

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

 {λ∈CE:P(λ) does not hold% }

is contained in a proper algebraic subset of , i.e. a subset strictly contained in  and defined by polynomial equations.

###### Definition 1.4.

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.

###### Remark 1.5.

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.

###### Definition 1.6.

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:

 rG:C2|V|⟶CE,(xv,yv)v∈V⟼((xu−xv)2+(yu−yv)2){u,v}∈E.

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

 hG:C2|V|−3⟶CE.

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 .

###### Lemma 1.7.

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 .

###### Proof.

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.

###### Theorem 1.8.

Let be a graph. Then the following three conditions are equivalent:

1. is a Laman graph;

2. is generically rigid;

3. can be constructed by iterating the two Henneberg rules (see Figures 2(b) and 2(a)), starting from the graph that consists of two vertices connected by an edge.

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

 (xu−xv)2+(yu−yv)2=λuvfor all {u,v}∈E,

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

 (2) (xv)v∈V,(yv)v∈V⟼(x′v:=xv+iyv)v∈V,(y′v:=xv−iyv)v∈V,

then the previous system of equations becomes

 (x′u−x′v)(y′u−y′v)=λuvfor all {u,v}∈E

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

 P|V|−2C:=P(CV/⟨(1,…,1)⟩)=P(CV/⟨(xv)v∈V:xu=xw for all u,w∈V⟩)

and the map

 (3) fG:P|V|−2C×P|V|−2C⇢P|E|−1C[(xv)v∈V],[(yv)v∈V]⟼((xu−xv)(yu−yv)){u,v}∈E,

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 .

###### Lemma 1.9.

For any Laman graph  the equality holds.

###### Proof.

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:

 η:h−1G(λ)⟶f−1G(λ),(xv)v∈V,(yv)v∈V⟼[(xv+iyv)v∈V],[(xv−iyv)v∈V].

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 :

 {xv+iyv=cˆxv,xv−iyv=dˆyv,hence{xv=(cˆxv+dˆyv)/2,yv=(cˆxv−dˆyv)/2i,

for some constants . Thus, for , we get the equation , which in turn implies that every point in  determines a realization of the form

 ρ:V⟶C2,v⟼(cˆxv+ˆyv2,cˆxv−ˆyv2i),

that must be compatible with . By construction, the constant  must satisfy , since . There are exactly two such numbers , and this proves the statement. ∎

###### Corollary 1.10.

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.

###### Definition 2.1.

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.

###### Definition 2.2.

For a graph we define the dimension of  as

 dim(G):=|V|−|{connected components of G}|.
###### Remark 2.3.

Since a Laman graph is connected by assumption, the condition can be rewritten as .

###### Definition 2.4.

Let be a bigraph with biedges , then we say that is pseudo-Laman if

 dim(G)+dim(H)=|E|+1.

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.

###### Definition 2.5.

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 .

Via Definitions 2.7 and 2.6 we associate to each bigraph  a rational map , as we did in Section 1 for graphs.

###### Definition 2.6.

Let be a bigraph, where and . We set

 Pdim(G)−1C :=P(CV/LG), Pdim(H)−1C :=P(CW/LH),

where

 LG :=⟨(xv)v∈V:xu=xt if and only if u and tare in the same connected component of G⟩, LH :=⟨(yw)w∈W:yu=yt if and only if u and tare in the same connected component of H⟩,

and are the standard coordinates of  and similarly for .

###### Definition 2.7.

Let be a bigraph, where and . Define

 fB:Pdim(G)−1C×Pdim(H)−1C⇢P|E|−1C[(xv)v∈V],[(yw)w∈W]⟼((xu−xv)(yt−yw))e∈E,

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.

###### Definition 2.8.

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.

###### Remark 2.9.

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.

###### Proposition 2.10.

Let be a bigraph.

• If or has a self-loop, then .

• If both and consist of a single edge that joins two vertices, then .

###### Proof.

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.

###### Proposition 2.11.

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.

###### Remark 2.12.

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.

###### Definition 2.13.

Let be a bigraph, where and . Define

 P :={(u,v)∈V2:{u,v}∈τG(E),u≠v}, Q :={(t,w)∈W2:{t,w}∈τH(E),t≠w}.

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.

###### Definition 2.14.

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

 ⎧⎪ ⎪ ⎪⎨⎪ ⎪ ⎪⎩x¯u¯v=y¯t¯w=1,¯u≺¯v, ¯t≺¯w,xuvytw=λe,for all e∈E∖{¯e},u≺v,t≺w,∑Cxuv=0,for all cycles C in G,∑Dytw=0,for all cycles D in H,

where we take and as coordinates and where

 {¯u,¯v} =τG(¯e), {u,v} =τG(e), {¯t,¯w} =τH(¯e), {t,w} =τH(e).

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.

###### Example 2.15.

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:

 x23=y23=1,

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 .

###### Lemma 2.16.

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.

###### Proof.

Write with and with . We define a morphism from  to  by sending a point

 ([(xv)v∈V],[(yw)w∈W])∈f−1B(p)

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.

###### Definition 2.17.

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 .

###### Lemma 2.18.

Let be a pseudo-Laman bigraph with biedges  without self-loops and fix . If is a bridge in both and , then .

###### Proof.

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

 ⎧⎪⎨⎪⎩xuvytw=λe,for all e∈E∖{¯e},u≺v,t≺w,∑Cxuv=0,for all cycles C in G\{¯e},∑Dytw=0,for all cycles D in H\{¯e}

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 . ∎

###### Lemma 2.19.

Let be a pseudo-Laman bigraph with biedges  without self-loops and fix . If is a bridge in , but not in , then

 Lam(B)=Lam((G∖{¯e},H∖{¯e})).
###### Proof.

Consider another biedge  and use it to define the scheme . Its equations are:

 ZBC:⎧⎪ ⎪ ⎪⎨⎪ ⎪ ⎪⎩x~u~v=y~t~w=1,~u≺~v, ~t≺~w,xuvytw=λe,for all e∈E∖{~e},u≺v,t≺w,∑Cxuv=0,for all cycles C in G,∑Dytw=0,for all cycles D in H.

Now consider the bigraph . Notice that we can still use  to define the scheme . Its equations are:

 Z˜BC:⎧⎪ ⎪ ⎪ ⎪⎨⎪ ⎪ ⎪ ⎪⎩x~u~v=y~t~w=1,~u≺~v, ~t≺~w,xuvytw=λe,for all e∈E∖{¯e,~e},u≺v,t≺