1 Introduction

The mathematical theory of combinatorial rigidity has a long history. For example, in the nineteenth century, Cauchy studied rigidity of polyhedra, and Maxwell studied rigidity of frameworks of graphs [3, 20]. Rigidity of frameworks of graphs has since been well-studied, in various contexts. Combinatorial rigidity theory is also concerned with geometric realizations of combinatorial structures other than graphs, for example geometric realizations of hypergraphs. A comprehensive review of results and topics in combinatorial rigidity theory, as well as relevant definitions and notation, can be found in a review article by Nixon, Schulze and Whiteley [21].

In the present article, we will focus on infinitesimal rigidity of rod configurations. Rod configurations are realizations of rank two incidence geometries as straight line segments (rods) in the Euclidean plane meeting in points (joints), where the line segments behave as rigid bodies that can rotate around the points at which they meet.

A panel and hinge framework consists of rigid connected regions of \((d-1)\)-dimensional linear subspaces (panels) meeting in pairs at \((d-2)\)-dimensional linear subspaces (hinges), while a body and hinge framework consists of rigid bodies (of arbitrary dimension) meeting in pairs at hinges. Because hyperplanes in the plane are lines, a planar panel and hinge framework is a planar rod configuration in which two rods can meet at each joint. In higher dimensions this correspondence fails, because a rod configuration consists of line segments while a panel and hinge framework consists of panels.

Tay and Whiteley independently characterized which rank two incidence geometries have realizations as infinitesimally rigid body and hinge frameworks [26, 30]. Furthermore, they jointly made the following conjecture, which is now a theorem [27]:

Theorem 1.1

(Molecular Theorem) A rank two incidence geometry \(S=(P,L,I)\) has a realization as an infinitesimally rigid body and hinge framework in \(\mathbb {R}^d\) if and only if S has a realization as an infinitesimally rigid panel and hinge framework in \(\mathbb {R}^d\).

The duals of panel and hinge frameworks in \(\mathbb {R}^3\) provide a model for the motions of molecules. Therefore the molecular conjecture has implications for the rigidity of molecules. We refer to Whiteley for further explanation of this connection [32].

In the language of the present article, Theorem 1.1 says that the infinitesimal rigidity of rod configurations that have two rods going through each point is equivalent to the infinitesimal rigidity of generic body and hinge frameworks realizing the same incidence geometry. Rod configurations with two rods meeting at each point are geometric realizations of rank two incidence geometries whose duals are graphs.

Whiteley proved the molecular conjecture for independent body and hinge frameworks in the plane [31], where independent means that there are no redundant distance constraints. Whiteley’s result also applies to independent body and joint frameworks, which may realize rank two incidence geometries that are not duals of graphs. However, since Whiteley’s version of the molecular conjecture only applies to rank two incidence geometries that have realizations as independent body and joint frameworks, it does not imply the planar case of the molecular conjecture.

Jackson and Jordán proved the molecular conjecture for body and hinge frameworks in the plane. They refer to such frameworks as body-and-pin frameworks [12]. Katoh and Tanigawa subsequently proved the molecular conjecture in arbitrary dimension [15].

There are several other results in the literature concerning rigidity, points and lines that are not directly related to the rigidity of rod configurations, and we review some of those results here. Jackson and Owen characterized the generic rigidity of planar frameworks consisting of points and lines in which distances between points and points, points and lines, and angles between lines can be fixed [13]. They study the problem by representing the points and lines as vertices in a graph. The distances and angles that are preserved are represented as edges. In our setting, the distance between points and the lines they lie on is zero, which is a non-generic situation to which the tools developed by Jackson and Owen developed cannot be directly applied.

Jackson and Jordán characterize the frameworks of graphs in the plane that remain rigid when three given points are placed on a line [11]. Determining which frameworks of graphs remain rigid when a set of points is placed on a line is different to the problem that we are interested in, so their result is not applicable in our situation. Jackson and Jordáns result was extended to an arbitrary number of points placed on a line by Eftekhari, Jackson, Nixon, Schulze, Tanigawa and Whiteley [7].

Raz studied the combinatorial rigidity of graphs by considering the intersections of lines in \(\mathbb {R}^3\) [23]. Raz provided a model for rigidity of frameworks of graphs in the plane in terms of the incidence geometry of points and lines in \(\mathbb {R}^3\). Her results concern rigidity of planar frameworks of graphs, not of rod configurations, and are therefore not directly relevant to our study.

In this article we provide a way of determining the infinitesimal rigidity of rod configurations. We do this by relating the infinitesimal rigidity of a sufficiently generic rod configuration realizing a rank two incidence geometry to the generic rigidity of a graph associated to the incidence geometry. We call this graph the cone graph of the incidence geometry. Whiteley conjectured that a version of the molecular conjecture holds for generically rigid body and joint frameworks, with no restriction on how many bodies a joint is incident to [24]. We prove a version of this conjecture, under the assumption that the hypergraph has a sufficiently generic realization as a rod configuration. This result is an extension of Whiteley’s version of the molecular conjecture to body and joint frameworks that are not necessarily independent. In the special case that the hypergraph has a realization as an independent body and joint framework, our result coincides with Whiteley’s version of the molecular conjecture. In the special case that the incidence geometry defining the body and joint framework is the dual of a graph, our result essentially coincides with the planar case of Theorem 1.1.

2 Preliminaries

2.1 Rigidity of Frameworks of Graphs

A (bar and joint) framework \(\rho \) of a graph \(G=(V,E)\) in \(\mathbb {R}^d\) is an assignment of a point \(\rho (v) \in \mathbb {R}^d\) to each vertex \(v \in V\).

A continuous motion of a framework of G in \(\mathbb {R}^d\) is a continuous motion of the points that preserves the distance between any two vertices u and v such that \((u,v) \in E\). The continuous Euclidean motions of \(\mathbb {R}^d\) are continuous motions of any framework. We will refer to these motions as the trivial motions of the framework. If the trivial motions are the only continuous motions of the framework, we say that the framework is (continuously) rigid, otherwise we say that it is (continuously) flexible.

An infinitesimal motion of a framework \(\rho \) of a graph G in \(\mathbb {R}^d\) is an assignment of a vector \(m(v) \in \mathbb {R}^d\) to each vertex \(v \in V\) such that \((\rho (v)-\rho (w))(m(v)-m(w))=0\) whenever \((v,w) \in E\). The linear part of a trivial motion gives a trivial infinitesimal motion. If the trivial infinitesimal motions are the only infinitesimal motions of the framework, then we say that the framework is infinitesimally rigid, otherwise we say that it is infinitesimally flexible. Furthermore, infinitesimal rigidity implies continuous rigidity [9].

We say that a framework of a graph G in \(\mathbb {R}^d\) is generic if the set of coordinates \(\{\rho (v)\}_{v \in V}\) is algebraically independent over \(\mathbb {Q}\). In general, continuous and infinitesimal rigidity depend on the framework but, by the following lemma, this is not the case for generic frameworks.

Lemma 2.1

[9, 18] Let \(G=(V,E)\) be a graph. If there is an infinitesimally rigid framework of G in \(\mathbb {R}^d\), then every generic framework of G in \(\mathbb {R}^d\) is rigid.

Furthermore, continuous rigidity and infinitesimal rigidity are equivalent for generic frameworks [1]. It therefore makes sense to say that a graph G is generically rigid in \(\mathbb {R}^d\) if every generic framework of G in \(\mathbb {R}^d\) is infinitesimally rigid or, equivalently, continuously rigid. Otherwise G is generically flexible in \(\mathbb {R}^d\).

A graph G is generically minimally rigid in \(\mathbb {R}^d\) if \(G=(V,E)\) is generically rigid in \(\mathbb {R}^d\), but for any edge \(e \in E\), the subgraph induced by \(E {\setminus } \{e\}\) is generically flexible in \(\mathbb {R}^d\). The following theorem gives a combinatorial characterization of generically minimally rigid graphs in the plane.

Theorem 2.2

(Geiringer-Laman [16, 22]) Let \(G=(V,E)\) be a graph. Then G is generically minimally rigid in \(\mathbb {R}^2\) if and only if

  • \(|E|=2|V|-3\), and

  • \(|E'| \le 2|V'|-3\) for all subsets \(E' \subseteq E\), where \(V'\) is the support of \(E'\).

We say that the set of edges E of a graph \(G=(V,E)\) is independent if \(|E'| \le 2|V'|-3\) for all subsets \(E' \subseteq E\), or, equivalently, if E is independent in the generic 2-dimensional rigidity matroid (see for example [10]). A set of edges that is not independent is dependent. We say that a graph is independent if its set of edges is independent.

We say that a subset of edges \(E' \subseteq E\) is maximally independent in E if \(E'\) is independent, but \(E' \cup \{e\}\) is dependent for any \(e \in E \setminus E'\). We say that the subgraph \(G'=(V',E')\) of \(G=(V,E)\) generated by a maximally independent subset \(E'\) of E is maximally independent in G. Note that an independent graph is a maximally independent subgraph of itself, and that a maximally independent subgraph of a generically rigid graph is generically minimally rigid.

A graph \(G=(V,E)\) is a rigidity circuit in the generic 2-dimensional rigidity matroid if its set of edges is minimally dependent in the generic 2-dimensional rigidity matroid, i.e. its set of edges is dependent, but \(E \setminus \{e\}\) is independent for all edges \(e \in E\). In this paper, we will only consider rigidity circuits in the generic 2-dimensional rigidity matroid, so for brevity we will refer to them as rigidity circuits. One example of a rigidity circuit is \(K_4\). It is an easy consequence of Theorem 2.2 that all rigidity circuits satisfy \(|E|=2|V|-2\), however not all graphs that satisfy \(|E|=2|V|-2\) are rigidity circuits. See Fig. 1 for an example.

Note that any dependent set of edges contains a minimally dependent set of edges, which generates a rigidity circuit. We refer to the book by Graver, Servatius and Servatius for further background on matroids and their use in combinatorial rigidity theory [10].

Fig. 1
figure 1

A graph with \(|V|=5\) and \(|E|= 2|V|-2=8\) which is not a rigidity circuit

2.2 Incidence Geometries, Rod and String Configurations

In the present paper, we are concerned with geometric realizations of rank two incidence geometries in \(\mathbb {R}^2\). Rank two incidence geometries are also known as hypergraphs. We will only consider incidence geometries of rank two, so we will not explicitly state the rank of the incidence geometry. We will also only consider connected incidence geometries. If the incidence geometry is not connected, then the realizations that we are interested in will always have two components that can move independently of each other, and therefore be flexible.

Let \(S=(P,L,I)\) be an incidence geometry, and suppose that \(\rho \) is an assignment of a line slope \(f_i\) to each element \(\ell _i \in L\). A linear realization of S with line slopes given by \(\rho \) is an assignment of a y-intercept \(h_i\) to each \(\ell _i \in L\), and point coordinates \((x_j,y_j)\) to each element \(p_j \in P\) such that if \((p_j,\ell _i) \in I\), then

$$\begin{aligned} f_ix_j + y_j + h_i =0. \end{aligned}$$
(1)

A linear realization is proper if distinct points are assigned distinct coordinates, and trivial if all points are assigned the same coordinates. Not all incidence geometries have proper linear realizations in \(\mathbb {R}^2\). For example, it is well-known that the Fano plane does not.

Given an incidence geometry \(S=(P,L,I)\) and a set of line slopes \(\rho \), we can solve the |I| equations of the form (1) for \(x_j\), \(y_j\) and \(h_i\), to determine a space of linear realizations of S with line slopes given by \(\rho \). Call this space the space of parallel redrawings of the linear realization \(\rho \). We call the coefficient matrix of the system of linear equations of the form (1) the concurrence geometry matrix, and denote it by \(M(S, \rho )\). The concurrence geometry matrix has dimensions \(|I| \times (|L| + 2|P|)\).

The 2-plane matroid is a matroid defined on the set of incidences of S in terms of independent sets: a set I of incidences is independent in the 2-plane matroid if and only if \(|J|\le |M|+2|Q|-2\) for any subset \(J \subseteq I\), where \(Q\times M\subseteq P\times L\) is the support of J. If the line slopes given by \(\rho \) are generic (algebraically independent), then the subsets of rows of \(M(S,\rho )\) are linearly independent if and only if they are independent in the 2-plane matroid. Similarly, assuming generic line slopes, the sets that are independent in the so-called d-plane matroid yield independent rows in the d-dimensional concurrence geometry matrix [31]. See also [24] for another characterization of independent sets in the d-plane matroids, based on the arboricity of the incidence graph of S.

Any linear realization in the plane can be translated in two independent directions, so the space of parallel redrawings of any linear realization has dimension at least two. If the linear realization is proper, dilations will act non-trivially on it, so any proper linear realization will have a 3-dimensional space of parallel redrawings, generated by two translations and a dilation. Therefore, if the rows of \(M(S, \rho )\) are independent for a proper linear realization \(\rho \), then any subset \(J \subseteq I\) with support \(Q \times M \subseteq P \times L\) must satisfy \(|J| \le |M| + 2|Q|-3\) [31]. See [25] for more about parallel redrawings and how they can be applied.

Let \(S=(P,L,I)\) be an incidence geometry. A subset \(I' \subseteq I\) is 2-sharp or sharply independent (in the plane), if

$$\begin{aligned} |J| \le |M|+2|Q|-3 \end{aligned}$$
(2)

for any subset \(J \subseteq I'\), where \(Q \times M \subseteq P \times L\) is the support of J. An incidence geometry has proper linear realizations with generic normals if and only if its set of incidences is sharply independent [31].

A rod configuration realizing an incidence geometry \(S=(P,L,I)\) is a linear realization of S where each line is considered to be an infinitesimally rigid body. Specifically, an infinitesimal motion of a rod configuration realizing an incidence geometry \(S=(P,L,I)\) in \(\mathbb {R}^2\) is an assignment of a vector \(v \in \mathbb {R}^2\) to each point \(p \in P\) so that restricted to each rod \(\ell \in L\), the vectors are linearizations of rotations or translations of the rod. We give an introduction to infinitesimal rigidity of rod configuration in another article [19].

Following Whiteley [29], we say that a string configuration realizing an incidence geometry \(S=(P,L,I)\) in \(\mathbb {R}^2\) is given by a framework in \(\mathbb {R}^2\) of a graph with vertex set \(V=P\) and such that for every line \(\ell \in L\) there is a tree on the vertices representing points incident to \(\ell \), so that the tree on the vertices representing points incident to \(\ell \) is collinear.

Note that a string configuration of S requires a line slope assigned to every line in L, and point coordinates for every point in P, i.e. a linear realization of S. We can therefore talk about properties of the underlying linear realization as properties of the string configuration. For instance, a string configuration is proper if its underlying linear realization is proper.

String configurations are frameworks of graphs, and as such they come with a notion of infinitesimal rigidity. The infinitesimal motions of a framework of a graph in the plane are in one-to-one correspondence with its parallel redrawings [5, 6, 30]. If a point p has coordinates \(\rho (p)\) in a string configuration, then a parallel redrawing will assign new coordinates \(\rho '(p)\) to p. Rotating the vectors \(\rho '(p)-\rho (p)\) by 90 degrees gives an infinitesimal motion of the string configuration. In the plane, this correspondence is one-to-one, but not in higher dimensions. Using this fact, Whiteley proved the following theorem:

Theorem 2.3

(Whiteley [31]) Let \(S=(P,L,I)\) be an incidence geometry. Then S has a realization as a minimally infinitesimally rigid string configuration in the plane if and only if

  • I is sharply independent, and

  • \(|I| = |L|+2|P|-3\).

In fact, if \(S=(P,L,I)\) is sharply independent and \(|I| = |L|+2|P|-3\), then any string configuration realizing S in \(\mathbb {R}^2\) with an underlying linear realization that maximizes the rank of the concurrence geometry matrix \(M(S, \rho )\) is infinitesimally rigid.

Remark 1

The choice of tree on the vertices representing the points incident to a line \(\ell \) does not affect the infinitesimal rigidity of the string configuration, since the infinititesimal motions of the string configuration are in one-to-one correspondence with its parallel redrawings, which depend only on the line slopes.

2.3 Body and Joint Frameworks and Their Rigidity Properties

Let \(S=(P,L,I)\) be an incidence geometry. Following Whiteley ([31]), we say that a body and joint framework realizing an incidence geometry S in \(\mathbb {R}^2\) is an assignment of a point in \(\mathbb {R}^2\) to every point in P. A body and joint framework realizing S in \(\mathbb {R}^2\) is infinitesimally rigid if each line can be replaced by a minimally infinitesimally rigid framework of a graph with vertex set including the points incident to the line and no points not incident to the line, so that the entire framework is infinitesimally rigid.

Similarly, a body and joint framework realizing S in \(\mathbb {R}^2\) is minimally infinitesimally rigid if it is possible to replace each line by a minimally infinitesimally rigid framework of a graph with vertex set including the points incident to the line, and no points not incident to the line, so that the entire framework is minimally infinitesimally rigid.

A body and joint framework realizing S in \(\mathbb {R}^2\) is independent if each line can be replaced by a minimally infinitesimally rigid graph with vertex set including the points incident to the line and no vertices representing points not incident to the line, so that the resulting graph is independent.

Whiteley proved the following result characterizing which incidence geometries have realizations as minimally infinitesimally rigid body and joint frameworks in \(\mathbb {R}^2\).

Theorem 2.4

(Whiteley [31]) Given an incidence geometry \(S=(P,L,I)\) the following are equivalent:

  1. 1.

    S has an independent (minimally infinitesimally rigid) body and joint realization in \(\mathbb {R}^2\),

  2. 2.

    S satisfies \(2|I| \le 3|L| + 2|P| -3\), (\(2|I| = 3|L| + 2|P| -3\)) and for every subset of bodies with the induced subgraph of attached joints \(2|I'| \le 3|L'|+2|P'|-3\) and

  3. 3.

    S has an independent (minimally infinitesimally rigid) body and joint realization in \(\mathbb {R}^2\) such that each body has all its joints collinear.

Theorem 1.1 in the special case that the incidence geometry has a realization as a minimally infinitesimally rigid body and hinge framework is the equivalence of statements 1 and 3 of Theorem 2.4. However, unlike Theorem 1.1, Theorem 2.4 also applies to incidence geometries in which more than two lines meet at a point.

Let \(S=(P,L,I)\) be an incidence geometry. A cone graph \(G^C(S)\) of S is a graph with a vertex for each point in P and a vertex for each point in L, and the set of edges in \(G^C(S)\) consists of edges from the vertex representing a line \(\ell \) to all vertices representing points incident to \(\ell \), and edges \(\{(p,q)\}_{(q,\ell ) \in I}\), where p is some chosen vertex incident to \(\ell \). We call the vertices that represent points in P point vertices, and the vertices representing lines in L cone vertices. We will refer to the subgraph of \(G^C(S)\) generated by a cone vertex representing a line \(\ell \) and the vertices representing the points \(\{p_1,..., p_k\}\) such that \((p_j, \ell ) \in I\) as the cone of \(\ell \).

Coning is a well-known technique for going from a framework of a graph in \(\mathbb {R}^d\) to a framework of a different graph in \(\mathbb {R}^{d+1}\) with the same rigidity properties [4, 28]. Coning the tree representing a line \(\ell \), considered as a framework of a graph in \(\mathbb {R}^1\), gives what we call the cone of \(\ell \), and the cone graph of an incidence geometry is the union of the cones of its lines.

Note that the induced subgraph on the points incident to the same line \(\ell \) is a star graph. We will refer to the vertex p as the inner vertex of the star graph. The cone of \(\ell \) depends on the choice of p, so in general there are many cone graphs of an incidence geometry S. See Fig. 2 for an example of a cone graph of an incidence geometry.

Fig. 2
figure 2

A rod configuration realizing an incidence geometry S and a cone graph \(G^C(S)\) of S

Given an incidence geometry \(S=(P,L,I)\), construct the cone incidence geometry \(S^C=(P^C,L^C,I^C)\) so that there is a point in \(P^C\) for each point in P and for each line in L, the lines in \(L^C\) are the subsets of points that are collinear in L, and for any line \(\ell \in L\) there is a line \((c_\ell , p)\) incident to the cone vertex \(c_\ell \) representing \(\ell \) and any point p incident to \(\ell \).

For any incidence geometry S, there is a unique cone incidence geometry \(S^C\). A string configuration realizing \(S^C\) in \(\mathbb {R}^2\) with the collinear tree on the point vertices representing points incident to a line \(\ell \) chosen to be a star graph is a framework of a cone graph of S in special position. See Fig. 3 for an example.

For every proper linear realization of S, there are several proper linear realizations of \(S^C\), and conversely, every linear realization of \(S^C\) gives rise to a linear realization of S. Furthermore, a rod configuration realizing S is infinitesimally rigid if and only if the underlying linear realization gives rise to linear realizations of \(S^C\) such that string configurations realizing \(S^C\) with those underlying linear realizations are infinitesimally rigid.

Fig. 3
figure 3

The cone graph \(G^C(S)\) from Fig. 2 and a string configuration realizing \(S^C\)

Whiteley proved the implication \(2 \Rightarrow 3\) of Theorem 2.4 by showing that if the incidence geometry satisfies the count given in 2, then the cone incidence geometry has a realization as a minimally infinitesimally rigid string configuration in \(\mathbb {R}^2\). Such a string configuration is a minimally infinitesimally rigid body and joint framework realizing the incidence geometry, with all joints incident to a body collinear.

3 Some Useful Lemmas

In this section, we will state and prove four lemmas that we will use to prove our main result. For simplicity of notation, we will in this section denote edge sets by \(E^*\) where \(*\) is some suitable decoration, and the vertex set generated by the edge set \(E^*\) by \(V^*\), e.g. the set \(V^i\) is the set of vertices generated by \(E^i\).

First, recall that there is not a unique cone graph of an incidence geometry, since there are several choices for the inner vertex for each line, and in general each choice yields a different graph. The choice of inner vertex, however, does not affect the generic rigidity properties, as we show in the following lemma.

Lemma 3.1

Let \(S=(P,L,I)\) be an incidence geometry. If one cone graph of S is generically rigid in \(\mathbb {R}^2\), then all cone graphs of S are generically rigid in \(\mathbb {R}^2\).

Proof

Suppose \(G^C(S)\) is a cone graph of S which is generically rigid in \(\mathbb {R}^2\), and \(G_1^C(S)\) is some other cone graph of S. If the cone graphs \(G^C(S)\) and \(G_1^C(S)\) are different, then the inner vertices of the star graph on the point vertices will be different for some line(s).

Take such a line \(\ell \). Suppose p is the inner vertex in \(G^C(S)\) of the star graph representing a line \(\ell \in L\), and \(p'\) is the inner vertex in \(G_1^C(S)\) of the star graph on representing the same line \(\ell \). Let \(p, p', p_1, p_2,...,p_k\) be the point vertices in the cone of \(\ell \). There are edges \((p,p_i)\), for \(1\le i \le k\), in \(G^C(S)\), and edges \((p',p_i)\), for \(1 \le i \le k\) in \(G_1^C(S)\). The edge \((p,p')\) is in both graphs.

Fig. 4
figure 4

It is possible to switch certain edges in a cone without making the cone graph generically flexible

Adding the edge \((p',p_1)\) to the edge set of \(G^C(S)\) creates a copy of \(K_4\) on the vertices p, \(p'\), \(p_1\) and c, where c is the cone vertex representing \(\ell \). See Fig. 4. \(K_4\) is a rigidity circuit, and as the edge \((p, p_1)\) is one of the edges in the copy of \(K_4\) that is created, we can subsequently remove the edge \((p,p_1)\) without the graph becoming generically flexible. In the same way we can replace all edges \((p, p_i)\) in the cone of \(\ell \) by edges \((p', p_i)\) while preserving rigidity, to obtain a generically rigid cone graph where \(p'\) is the inner vertex of the star subgraph on the point vertices in the cone of \(\ell \).

This process can be repeated for any line \(\ell \) such that the inner vertex of the cone of \(\ell \) in \(G_1^C(S)\) is different from the inner vertex of the cone of \(\ell \) in \(G^C(S)\), until we obtain \(G_1^C(S)\). Hence \(G_1^C(S)\) is also generically rigid in \(\mathbb {R}^2\). \(\square \)

We will need two lemmas concerning generically minimally rigid subgraphs of a graph \(G=(V,E)\) with vertex sets that intersect non-trivially. The first one, Lemma 3.2, concerns generically minimally rigid subgraphs of a graph with vertex sets that intersect in exactly one vertex. Figure 5 shows an example of two generically minimally rigid graphs, a triangle (dotted) and a generically minimally rigid graph on four vertices (dashed), that intersect in a single vertex. Clearly, the graph consisting of the dotted and dashed edges in Fig. 5 is generically flexible. However, adding the solid edge as in the figure would make the graph generically minimally rigid. Lemma 3.2 says that the situation illustrated by the graph in Fig. 5 is the only situation that can occur if two generically minimally rigid subgraphs of a graph G intersect in a point.

Fig. 5
figure 5

Two generically minimally rigid graphs that intersect in one vertex, and an added edge that makes the graph generically rigid

Lemma 3.2

Let \(G_1=(V_1,E_1)\) and \(G_2=(V_2,E_2)\) be subgraphs of a graph \(G=(V,E)\) such that \(G_1\) and \(G_2\) are generically minimally rigid in \(\mathbb {R}^2\), and \(V_1 \cap V_2=\{v\}\). Let \(E_3=E_1 \cup E_2\). Also, let \(e=(v_1, v_2)\) be an arbitrary edge with \(v_1 \in V_1 {\setminus } \{v\}\) and \(v_2 \in V_2 {\setminus } \{v\}\), and let \(E_4=E_3 \cup \{e\}\). Then

  1. 1.

    the graph \(G_3=(V_3, E_3)\) generated by \(E_3\) is generically flexible in \(\mathbb {R}^2\), and

  2. 2.

    the graph \(G_4=(V_4,E_4)\) generated by \(E_4\) is generically minimally rigid in \(\mathbb {R}^2\).

Proof

The first statement holds as the subgraphs \(G_1\) and \(G_2\) can be rotated independently around the vertex in the intersection of \(V_1\) and \(V_2\). The second statement follows from Theorem 2.2 by a simple counting argument. \(\square \)

Fig. 6
figure 6

Two generically minimally rigid graphs that intersect in an edge and two points

Figure 6 shows a triangle (dotted and solid edges) and a generically minimally rigid graph on four vertices (dashed and solid edges) sharing the solid edge and its two vertices. The graph in Fig. 6, which is the union of the triangle and the generically minimally rigid graph on four vertices, is generically minimally rigid.

In Lemma 3.3 we show that the union of two generically minimally rigid subgraphs of an independent graph that intersect in more than one vertex is always generically minimally rigid. Essentially the same statement appears without proof in an article by Fekete, Jordán and Whiteley [8].

Lemma 3.3

Let \(G_1=(V_1,E_1)\) and \(G_2=(V_2, E_2)\) be subgraphs of an independent graph \(G=(V,E)\) that are generically minimally rigid in \(\mathbb {R}^2\). Let \(E_3=E_1 \cup E_2\). If \(|V_1 \cap V_2| > 1\), then

  1. 1.

    \(|E_1 \cap E_2| \ge 1\) and

  2. 2.

    the graph \(G_3=(V_3, E_3)\) generated by \(E_3\) is generically minimally rigid.

Proof

1. Suppose \(|V_1 \cap V_2|=k \ge 2\), but \(|E_1 \cap E_2|=0\). Then \(|V_3| \le |V_1|+|V_2| - 2\), and \(|E_3|=|E_1| + |E_2| = 2|V_1|+2|V_2| - 6 = 2(|V_1|+|V_2|-2)-2 \ge 2|V_3|-2\). This contradicts \(G=(V,E)\) being independent.

2. The proof of the second statement follows from Theorem 2.2 and the fact that \(G_3\) is independent by a simple counting argument. \(\square \)

Fig. 7
figure 7

A generically minimally rigid subgraph of the cone graph \(G^C(S)\) from Fig. 2 that does not remain infinitesimally rigid when the relevant points are placed on a line

In Sect. 4, we will relate the rigidity properties of \(G^C(S)\) and certain string configurations realizing \(S^C\). In the following lemma, we construct a subgraph \(G'\) of \(G^C(S)\) and a subgeometry \(S'\) of \(S^C\) that will allow us to do this. The subgraph \(G'\) has the property that the frameworks of \(G'\) such that vertices corresponding to points incident to some common line in L are collinear, are infinitesimally rigid whenever \(G'\) is generically rigid. This will allow us to relate the rigidity properties of \(G^C(S)\) to the rigidity properties of string configurations realizing \(S^C\). In general it is not true that a generically minimally rigid subgraph of a generically rigid cone graph \(G^C(S)\) will remain rigid when points incident to a common line are placed on a line. See Fig. 7 for an example of such a subgraph. The arrow in Fig. 7 indicates the infinitesimal motion that appears when the points are placed on a line.

Let \(S=(P,L,I)\) be an incidence geometry, and let \(G'=(V',E')\) be a subgraph of a cone graph \(G^C(S)=(V^C,E^C)\) of S with \(V=V^C\). Define the subgeometry \(S'=(P',L',I')\) of \(S^C=(P^C,L^C,I^C)\) such that \(P'=V'\), \(L'\) consists of the subsets of \(P^C\) that are collinear in \(L^C\) and lie in a common star subgraph in \(G'\), and \(I'\) is defined by inclusion.

Lemma 3.4

Let \(S=(P,L,I)\) be an incidence geometry. Then there is a subgraph \(G'=(V',E')\) of a cone graph \(G^C(S)=(V^C,E^C)\) of S with \(V'=V^C\) such that

  1. 1.

    \(G'\) is maximally independent in \(G^C(S)\),

  2. 2.

    the subgeometry \(S'=(P',L',I')\) of \(S^C=(P^C,L^C,I^C)\), is sharply independent, and

  3. 3.

    \(S'=(P',L',I')\) satisfies \(|I'|=|L'|+2|P'|-3\) if \(G'\) satisfies \(|E'|=2|V'|-3\).

Proof

First, we will construct the subgraph \(G'\) and prove that it is maximally independent. Since S is connected by assumption, we can order the lines in \(L=\{\ell _1, \ell _2,...,\ell _n\}\) so that each line \(\ell _i\) has at least one point in common with the set of lines \(\{\ell _j\}_{j<i}\). We construct \(G'\) recursively, by constructing a maximally independent subgraph \(G_i\) of \(G^C(S_i)\), where \(S_i\) is the incidence geometry generated by \(L_i=\{\ell _j \}_{j \le i}\). The graph \(G'\) we are looking for is \(G_n\).

Let \(G_1=(V_1,E_1)\) be a cone of the line \(\ell _1\). Suppose that \(G_{i-1}\) is given, and has as its vertices the points belonging to the set of lines \(L_{i-1}\). By construction, we know that \(\ell _i\) has at least one point p in common with the lines in \(L_{i-1}\). The point p then corresponds to a vertex p in the graph \(G_{i-1}\). There may also be other points \(q_1\),\(q_2\),...,\(q_l\) incident to \(\ell _i\) that correspond to vertices in \(G_{i-1}\). Further, there may be points \(p_1\), \(p_2\),...,\(p_m\) incident to \(\ell _i\), but not to any of the lines in \(L_{i-1}\), that therefore do not correspond to vertices in \(G_{i-1}\).

To construct \(G_i=(V_i, E_i)\), we perform the following steps, in order:

  1. 1.

    add the cone vertex c corresponding to \(\ell _{i}\) and vertices corresponding to \(p_1,..., p_m\) to \(V_{i-1}\), i.e. let \(V_i=V_{i-1} \cup \{c, p_1,..., p_m\}\);

  2. 2.

    add the edge (cp) to \(E_{i-1}\), i.e. let \(E_i=E_{i-1} \cup \{(c,p)\}\);

  3. 3.

    if \(l \ge 1\), add the edge \((c, q_1)\) to \(E_i\);

  4. 4.

    add edges \((c,p_k)\) for \(1 \le k \le m\) to \(E_i\);

  5. 5.

    add edges \((p,p_k)\) for \(1 \le k \le m\) to \(E_i\);

  6. 6.

    add all edges \((c,q_k)\) that do not make \(E_i\) dependent;

  7. 7.

    add all edges \((p, q_k)\) such that \((c, q_k)\) was added in the previous step, and adding \((p,q_k)\) does not make \(E_i\) dependent.

Note that by construction \(V_n=V'=V^C\). Note also that the edge \((p, q_i)\) is not added to \(E_i\) in the final step unless the edge \((c,q_i)\) was added to \(E_i\) first.

To show that \(G'=G_n\) is maximally independent in \(G^C(S)\), we show by induction on the number of lines that each \(G_i\) is maximally independent in \(G^C(S_i)\). The first graph \(G_1\) is a cone over a star, which is generically minimally rigid, and therefore \(G_1\) is maximally independent in \(G^C(S_1)\).

Suppose that \(G_{i-1}\) is maximally independent in \(G^C(S_{i-1})\). Then we cannot add any more edges to the cones of the lines \(\ell _1,..., \ell _{i-1}\) while preserving independence. By construction, all edges \((c,p_k)\), \((p, p_k)\), and the edge (cp), are in \(G_i\). Adding the cone vertex and the edges (cp) and \((c,q_1)\) preserves independence since two edges and one vertex are added. For the same reason, adding the point \(p_k\) and the edges \((c,p_k)\) and \((p,p_k)\) preserves independence.

Also by construction, we cannot add any more edges \((c, q_k)\), or edges \((p,q_k)\) such that the edge \((c,q_k)\) is in \(E_i\) without the edge set becoming dependent.

The remaining edges are those edges \((p,q_k)\) such that the edge \((c,q_k)\) is not added in our construction. We claim that adding any such edge would make the set of edges \(E_i\) dependent.

Suppose for a contradiction that there is some edge \(e=(p,q_k)\) such that \(f=(c,q_k)\) is not in \(E_i\), but \(E_i \cup \{e\}\) is independent. If f is not in \(E_i\), then \(E_i \cup \{f\}\) is dependent. Hence, there is a rigidity circuit containing f generated by some subset of edges \(E^1 \subseteq E_i \cup \{f\}\). As \(E^1\) generates a rigidity circuit, \(|E^1|=2|V^1|-2\). Let \(E^2=E^1 {\setminus } \{f\} \cup \{e\}\). If \(E_i \cup \{e\}\) is independent, then so is \(E^2\), since \(E^2 \subseteq E_i \cup \{e\}\).

Every vertex in a rigidity circuit must have degree at least 3, since removing an edge incident to a vertex of degree 2 will always result in a generically flexible graph. Therefore c must be a vertex in the subgraph induced by \(E^1 \setminus \{f\}\). Also, \(E^1 {\setminus } \{f\} \subset E^2\), so \(c \in V^2\). By construction \(|E^1|= |E^2|\).

Case 1. If \(p \in V^1\), then \(|V^1|=|V^2|\), so \(|E^2|=|E^1|=2|V^1|-2 = 2|V^2|-2\), which contradicts the assumption that \(E^2\) is independent.

Case 2. Suppose on the other hand that \(p \notin V^1\). Some edge \((c, p_n)\) or \((c, q_j)\) must be in \(E^1\), and in \(E^2\), since c must have degree at least 3 in the rigidity circuit generated by \(E^1\). Suppose some edge \((c,p_n)\) is in \(E^1\) and \(E^2\).

We can add the edges \((p, p_n)\) and (cp) to the sets \(E^1\) and \(E^2\). We assumed that \(p \notin V^1\), so neither edge can have originally been in \(E^1\) and \(E^2\). Adding the edges \((p, p_n)\) and (cp), and the point p, preserves the equality \(|E^1|=2|V^1|-2\). Adding p, \((p, p_n)\), and (cp) also preserves independence of \(E^2\), since \(E^2 \cup \{(p, p_n), (c,p)\} \subseteq E_i\). Note that \(p \in V^2\), so no point is added to \(V^2\). Furthermore, now \(|V^1|=|V^2|\), so \(|E^2| = |E^1| = 2|V^1|-2= 2|V^2|-2\), which contradicts that \(E^2\) is independent.

Case 3. Suppose that \(p \notin V^1\), and that some edge \(e'=(c, q_j)\) is in \(E^1\) and \(E^2\).

Case 3.1. If \(e' \in E_i\), then we can proceed as in Case 2 to obtain a contradiction.

Case 3.2. Suppose on the other hand that \(e' \notin E_i\). In this case, we cannot guarantee that \(E^2 \cup \{e', (p,c)\}\) is independent, since \(E^2 \cup \{e', (p,c)\}\) is not a subset of \(E_i\). If \(e' \notin E_i\), then \(E_i \cup \{e'\}\) is dependent. Else \(e'\) would have been added to \(E_i\), since \((c, q_j) \in E^1 {\setminus } \{f\} \subseteq E_i\). Since \(E_i \cup \{e'\}\) is dependent, there is a rigidity circuit containing \(e'\) generated by some set of edges \(E^3 \subseteq E_i \cup \{e'\}\). Note that \(E^4 = E^1 {\setminus } \{f\}\) generates a generically minimally rigid subgraph of \(G_i\), with vertex set containing \(q_k\), \(q_j\) and c. Similarly, \(E^5= E^3 \setminus \{e'\}\) generates a generically minimally rigid subgraph of \(G_i\) with vertex set containing \(q_j\) and p. Furthermore, \(q_j \in V^4 \cap V^5\), so \(E_4\) and \(E_5\) generate two generically minimally rigid subgraphs of \(G_i\) with vertex sets that intersect in at least one vertex.

Case 3.2.1. If \(V^4\) and \(V^5\) intersect in more than one vertex, then we are in the situation of Lemma 3.3. In this case \(E^4 \cup E^5\) generates a generically minimally rigid graph that does not contain e, but that does contain the vertices p and \(q_k\). Adding e to this generically minimally rigid graph causes a dependency among the edges. As \(E^4 \cup E^5 \subseteq E_i\), \(E_4 \cup E_5 \cup \{e\}\) being dependent contradicts \(E_i \cup \{e\}\) being independent.

Case 3.2.2. Suppose that \(V^4\) and \(V^5\) intersect in exactly one vertex. Then we are in the situation of Lemma 3.2. Note that if (pc) were already in \(E^4 \cup E^5\), then \(p \in V^4\), if \((p,c) \in E^4\) or \(c \in V^5\), if \((p,c) \in E^5\). Since \(p \in V^5\) and \(c \in V^4\), it follows that one of p and c would belong to the intersection of \(V_4\) and \(V_5\). Since we already know that \(q_j \in V_4 \cap V_5\), \(V_4\) and \(V_5\) would intersect in more than one vertex, which we assumed was not the case. The edge (pc) therefore cannot be in \(E_4 \cup E_5\), so, by Lemma 3.2, we can add the edge (pc) to \(E^4 \cup E^5\) to obtain a generically minimally rigid graph that contains the vertices p and \(q_k\). Adding e to this generically minimally rigid graph causes a dependency among the edges, and since \(E^4 \cup E^5 \cup \{(p,c)\} \cup \{e\} \subseteq E_i \cup \{e\}\), this contradicts \(E_i \cup \{e\}\) being independent.

We can now conclude that \(e=(p, q_k)\) cannot be added to \(E_i\) without causing any dependencies, so each \(G_i\) is maximally independent in \(G^C(S_i)\). Therefore, by induction, \(G'=G_n\) is maximally independent in \(G^C(S_n)=G^C(S)\), and by construction \(V_n=V'=V^C\). This proves point 1 of the Lemma.

Next we want to prove that \(S'\) is sharply independent, meaning that inequality (2) holds for any subset \(J \subseteq I'\) and its support \(Q \times M \subseteq P \times L\).

We will first show that if \(J\subseteq I'\) with support \(Q \times M \subseteq P' \times L'\) is the set of incidences of an incidence geometry obtained from a subgraph of \(G'\) in the same manner \(S'\) is obtained from \(G'\), then \(|J| \le |M|+2|Q|-3\).

Indeed, let \(G''=(V'',E'')\) be a subgraph of \(G'\) and let \(I''\subseteq V''\times E''\) be the incidence relation of \(G''\) when regarded as an incidence geometry. Let \(Q= V''\), and let M consist of the subsets of points that are collinear in \(S^C\) and in a common star graph in \(G''\). Let J be defined by inclusion, i.e. if \(p \in Q\) and \(\ell \in M\), then \((p, \ell ) \in J\) if \(p \in \ell \). Note that a single edge is a star graph on two vertices.

A star graph representing a line \(\ell \) on \(k(\ell )\) points contributes \(k(\ell )-1\) edges to \(E''\). So for every line \(\ell \) on \(k(\ell ) \ge 2\) points in M, there are \(k(\ell )-2\) more edges in \(E''\) than there are lines in M.

Similarly, a line incident to \(k(\ell )\) points contributes \(k(\ell )\) incidences to J, while the \(k(\ell )-1\) edges in the star graph representing \(\ell \) contribute \(2k(\ell )-2\) incidences to \(I''\). So for every line on \(k(\ell ) \ge 2\) points there are \(k(\ell )-2\) more incidences in \(I''\) than there are in J.

Therefore, the following holds for the graph \(G''=(V'',E'')\) with incidence relation \(I''\subseteq V''\times E''\) and the incidence geometry (QMJ):

$$\begin{aligned} \begin{array}{lcl} |Q|&{}=&{}|V''|,\\ \\ |M|&{}=&{}|E''|-\Sigma _{\ell \in M } (k(\ell )-2), \text{ and }\\ \\ |J|&{}=&{}|I''|-\Sigma _{\ell \in M} (k(\ell )-2). \end{array} \end{aligned}$$

Each edge in \(E''\) contributes two incidences, so \(|I''|=2|E''|\). Also, \(|E''| \le 2|V''|-3=2|Q|-3\) since \(G''\) is a subgraph of an independent graph, and therefore independent. Therefore

$$\begin{aligned} \begin{array}{rcl} |J|&{}=&{}|I''|-\Sigma _{\ell \in M} (k(\ell )-2) = 2|E''|-\Sigma _{\ell \in M} (k(\ell )-2) = |M|+|E''|\\ \\ &{}\le &{} |M|+2|V''|-3=|M|+2|Q|-3. \end{array} \end{aligned}$$

We have shown that if (QMJ) can be constructed from a subgraph \(G''=(V'',E'')\) of \(G'\), then \(|J|\le |M|+2|Q|-3\). If \(|E''|=2|V''|-3\), then equality holds in the final inequality. In particular, the subgeometry constructed from \(E'\) is \(S'\). If we, as in point 3 of the Lemma, assume that \(|E'|=2|V'|-3\), then \(|I'| = |L'|+2|P'|-3\).

We now consider the case that \(J\subseteq I'\) with support \(Q\times M \subseteq P'\times L' \) is not the set of incidences of an incidence geometry obtained from a subgraph of \(G'\) in the same manner \(S'\) is obtained from \(G'\), and we will see that still \(|J| \le |M|+2|Q|-3\).

Suppose that for any incidence \((p, \ell ) \in J\) between a point p and a line \(\ell \) in M, there is at least one edge (pq) in the star graph in \(G'\) on vertices representing points incident to \(\ell \) such that the incidence \((q, \ell ) \in J\). Then the incidence structure obtained from the subgraph \(G''=(V'',E'')\) with \(V''=Q\) and edge set given by edges (pq) such that \((p,q) \in E'\) and the incidences \((p, \ell )\) and \((q, \ell )\) are in J is (QMJ).

Therefore, if J cannot be obtained from a subgraph of \(G'\) as described above, J must contain an incidence \((p,\ell )\) between \(p\in Q\subseteq P'\) and \(\ell \in M\subseteq L'\) such that if \(e=(p,q)\) is any edge incident with p in the star graph in \(G'\) on the vertices representing points incident to \(\ell \), then the incidence \((q,\ell )\not \in J\).

Step 1. Consider the lines \(\ell \) such that \(\ell \) is incident only to one element p of Q. We can remove all such lines from M. In this case, the removal of the incidence \((p,\ell )\) from J and the removal of \(\ell \) from M subtracts the same from both sides of the inequality, so these subtractions together preserve the inequality (2).

Step 2. Suppose that \(\ell \) is incident with some other points \(p_1,\dots ,p_t\) in Q, with \(t\ge 1\). Suppose also that \(q\not \in Q\). In this case \(\ell \) must be a line of the incidence geometry \(S'\), with at least three incident points. Adding the missing point q to Q and the incidence \((q,\ell )\) to J will add one to the left side and two to the right side of the inequality.

Let c be the cone vertex corresponding to \(\ell \).

Step 2.1. Suppose \(c\not \in Q\). Then we can assume that none of the lines incident to c in \(S'\) are in M (else they would have been removed in Step 1). By construction, it follows that if \((\ell , p_1) \in J \subseteq I'\), then the line \((p_1, c) \in L'\). Therefore, there are at least three lines incident to C in \(L'\) - namely (pc), \((p_1,c)\) and (qc). Add c to Q and three of the lines incident with c to M. This adds 5 to the right side of the inequality (2). The three lines have a total of 6 incidences in \(S'\). Add these incidences to J. This adds 6 to the left side of the inequality. These additions (together with the addition of q and \((q,\ell )\)) preserve the inequality (2).

Step 2.2. Suppose instead that \(c\in Q\). We can suppose that the line \(\ell '\) between c and q is not in M. If \(\ell '\) were in M, it would have been removed in Step 1, since q is assumed not to be in Q. We can now add the line \(\ell '\) to M and the two incidences \((c,\ell ')\) and \((p',\ell ')\) to J. This adds one to the right side and two to the left side of the inequality (2). Together with the addition of q and the incidence \((q, \ell )\), this preserves the inequality (2).

Step 3. Suppose \(\ell \) is incident to some other points \(p_1, \dots , p_t\) in Q and \(q \in Q\). Then we can add the incidence \((q, \ell )\) to J. This adds one incidence to J, so one to the left side of the inequality (2). Therefore, if the subgeometry resulting from adding \((q, \ell )\) to J satisfies the inequality (2), so does the original subgeometry (QMJ).

In Step 1 and Step 2, we add or remove incidences in such a way that the inequality (2) is preserved. In Step 3, we add incidences in such a way that if the inequality (2) holds for the resulting subsets, it also holds for the original subset. Furthermore, the subset of incidences resulting from performing Step 1, Step 2 and Step 3 can be obtained from a subgraph of \(G'\), and we have seen that the inequality (2) holds for such subsets. Therefore the inequality (2) holds for all subsets \(J \subseteq I'\), including those that cannot be obtained from subgraphs of \(G'\). Hence \(S'\) is sharply independent.

Recall that we also saw, when considering subsets of incidences obtained from subgraphs of \(G'\), that if \(|E'|=2|V'|-3\), then \(S'\) satisfies \(|I'|=|L'|+2|P|-3\). Also note that \(I'\) is obtained from a subgraph of \(G'\), namely \(G'\) itself, so there is nothing to show in order to prove point 3 when considering subsets of incidence geometries not obtained from subgraphs of \(G'\). We have therefore seen that point 3 of the Lemma holds.

In conclusion, we have shown that \(G'\) is maximally independent. We have also shown that \(S'\) is sharply independent, and if we assume that \(|E'| = 2|V'| - 3\), then \(|I'|=|L'| + 2|P| -3\). \(\square \)

4 Determining the Infinitesimal Rigidity of Rod Configurations

The main theorem of this paper, Theorem 4.1, relates the rigidity properties of a cone graph \(G^C(S)\) in \(\mathbb {R}^2\) to the rigidity properties of certain string configurations realizing the cone incidence geometry \(S^C\) in \(\mathbb {R}^2\). We can therefore determine the infinitesimal rigidity of rod configurations realizing S in \(\mathbb {R}^2\) by determining the generic rigidity of any cone graph of \(G^C(S)\), which can be done efficiently by the pebble game algorithm. We will discuss the computational aspects further in the next section.

In order to state our main theorem, we need a genericity condition on proper linear realizations of incidence geometries. Recall that a framework of a graph is called generic if the vertex coordinates are algebraically independent over \(\mathbb {Q}\). It is called regular if the rank of its rigidity matrix is maximal among all frameworks of the same graph. See for example the survey article by Nixon, Schulze and Whiteley [21]. Therefore, a regular framework has the same infinitesimal motions, and consequently the same rigidity properties, as a generic framework of the same graph. Restated in terms of independence, a framework of a graph is regular if the rows of its rigidity matrix (or, equivalently, its concurrence geometry matrix \(M(S,\rho )\)) has the property that all rows that could possibly be linearly independent, also are linearly independent.

When working with the concurrence geometry matrix it is natural to try to define genericity of a linear realization in terms of the line slopes; a proper linear realization would be called generic if and only if the line slopes were algebraically independent over the rationals. However, with this definition, only incidence geometries with sharply independent sets of incidences can have generic proper linear realizations. The incidence geometries with this property are indeed exactly the ones covered by Whiteley’s theorem (Theorem 2.3).

Note that while all graphs have generic linear realizations (frameworks), an incidence geometry may fail to have a proper linear realization. The Fano plane is an example of an incidence geometry that does not have any proper linear realizations.

The incidence geometry S in Fig. 2 is a sharply independent subgeometry of the Fano plane. By Theorem 2.3, and as can be seen in Fig. 2, it has proper linear realizations. Its cone incidence geometry \(S^C\) has 36 incidences, 11 points and 16 lines. It is independent in the 2-plane matroid, but not sharply independent, since the cone incidence geometry satisfies \(|I|=|L|+ 2|P|-2\). As the incidence geometries that have proper linear realizations with generic line slopes are exactly those whose incidences are sharply independent, there are no proper linear realizations \(S^C\) with generic line slopes. The proper linear realization of \(S^C\) in Fig. 3 can therefore not have generic line slopes. Furthermore, since the kernel of \(M(S^C,\rho )\) is at least 3-dimensional for any proper linear realization \(\rho \), we can conclude that some rows of \(M(S^C,\rho )\) must be dependent.

In general, if the incidences of an incidence geometry are not sharply independent then the rows of concurrence geometry matrix \(M(S,\rho )\) of a proper linear realizations will necessarily be linearly dependent. Because we do not want to restrict to incidence geometries with sharply independent sets of incidences, we define the notion of a regular proper linear realization of an incidence geometry: we say that a proper linear realization is regular if the rows of the concurrence geometry matrix \(M(S,\rho )\) corresponding to any sharply independent subset of the set of incidences I are linearly independent. This resembles the notion of a regular framework of a graph, in that all rows that could possibly be linearly independent, also are linearly independent. It can be checked that the linear realization of the cone incidence geometry \(S^C\) in Fig. 3 is regular.

Note that only proper linear realizations can be regular. This implies that the regular linear realizations are not necessarily the linear realizations that maximize the rank of \(M(S, \rho )\). If the incidences of an incidence geometry are sharply independent, then the regular proper realizations are exactly those such that \(M(S, \rho )\) has maximal rank. If the incidences are not sharply independent, then the linear realization that maximizes the rank of \(M(S, \rho )\) may not be proper, and therefore not regular.

We cannot rule out that an incidence geometry could have proper linear realizations, but no regular proper realizations, although we do not have any examples of this. In this case, the proper linear realization that maximizes the rank of \(M(S, \rho )\) would be non-regular.

Our Theorem 4.1 applies only to regular linear proper realizations, so it is limited in scope. However, supported by the discussion above we argue that the limitation is similar to the limitation in scope of results concerning regular frameworks of graphs. Note that any generic framework of a graph is also regular, so results concerning regular frameworks are valid also for generic frameworks. Geiringer-Laman’s Theorem (Theorem 2.2) gives a characterization of graphs that are infinitesimally rigid in generic position, but Geiringer-Laman’s theorem does not apply to the non-generic situation.

The main advantage of defining genericity of a framework of a graph in terms of the algebraic independence over the rationals of the vertex coordinates is that it is easy to check (at least in theory). It might be possible to define a stronger notion than regularity also for linear realizations of incidence geometries. A stronger notion might be easier to check. The difficulty is finding a notion of regularity that is easy to check, but not so strong that it cannot hold for proper linear realizations of general incidence geometries.

Theorem 4.1

Let \(S=(P,L,I)\) be an incidence geometry such that \(S^C\) has a realization as a regular proper string configuration in \(\mathbb {R}^2\). Then all cone graphs of S are generically rigid in \(\mathbb {R}^2\) if and only if every regular proper string configuration realizing \(S^C\) in \(\mathbb {R}^2\) is infinitesimally rigid.

Proof

Suppose first that every regular proper string configuration of \(S^C\) is infinitesimally rigid. We may choose the collinear trees representing the lines in the string configuration to be star graphs. If we do, we obtain a framework of some cone graph \(G^C(S)\) in non-generic position. Furthermore, this framework of \(G^C(S)\) in non-generic position is infinitesimally rigid, by assumption. Hence if every regular proper string configuration realizing \(S^C\) in \(\mathbb {R}^2\) is infinitesimally rigid, then \(G^C(S)\) has an infinitesimally rigid framework in \(\mathbb {R}^2\), which means that \(G^C(S)\) is generically rigid in \(\mathbb {R}^2\), by Lemma 2.1. So S has a cone graph which is generically rigid in \(\mathbb {R}^2\), which by Lemma 3.1 means that all cone graphs of S are generically rigid in \(\mathbb {R}^2\).

Conversely, suppose that all cone graphs of S are generically rigid in \(\mathbb {R}^2\). Then the maximally independent subgraph constructed in Lemma 3.4 is generically minimally rigid in \(\mathbb {R}^2\), as it is a maximally independent subgraph of graph which is generically rigid in \(\mathbb {R}^2\). So, by Lemma 3.4, the induced subgeometry \(S'\) is sharply independent and satisfies \(|I'| = |L'| + 2|P'| -3\). It follows that any regular proper realization of \(S'\) as a string configuration in \(\mathbb {R}^2\) is minimally infinitesimally rigid, by Theorem 2.3. Any regular proper realization of \(S^C\) as a string configuration in the plane induces a regular proper realization of \(S'\) as a string configuration in the plane, which must be infinitesimally rigid. This implies that the original string configuration realizing \(S^C\) was also infinitesimally rigid, since the string configuration realizing \(S'\) is a spanning minimally rigid subgraph of the original string configuration realizing \(S^C\). \(\square \)

Given a rod configuration of S in \(\mathbb {R}^2\), it is possible to find infinitely many proper string configurations realizing \(S^C\). If any such string configuration is regular, that string configuration is infinitesimally rigid if and only if S has a cone graph which is generically rigid in \(\mathbb {R}^2\), by Theorem 4.1. As the rod configuration realizing S is infinitesimally rigid if and only if the regular proper string configuration realizing \(S^C\) is infinitesimally rigid, and since it is easy to determine generic rigidity of graphs in the plane, this gives a way of determining the infinitesimal rigidity of rod configurations.

We also obtain the following corollary, which does not require that we know that \(S^C\) has a realization as a regular proper string configuration.

Corollary 4.2

Let \(S=(P,L,I)\) be an incidence geometry. If \(G^C(S)\) is generically flexible in \(\mathbb {R}^2\), then \(S^C\) does not have a realization as an infinitesimally rigid regular proper string configuration in \(\mathbb {R}^2\).

Proof

Suppose \(G^C(S)\) is generically flexible in \(\mathbb {R}^2\). If \(S^C\) has a realization as a regular proper string configuration in \(\mathbb {R}^2\), all its realizations as regular proper string configurations in \(\mathbb {R}^2\) are infinitesimally flexible by Theorem 4.1. If \(S^C\) does not have a realization as a regular proper string configuration in \(\mathbb {R}^2\), then in particular it does not have a realization as an infinitesimally rigid regular proper string configuration in \(\mathbb {R}^2\). \(\square \)

Frameworks of a cone graph of an incidence geometry S in the plane are body and joint frameworks realizing S, and similarly string configurations realizing \(S^C\) in the plane are body and joint frameworks realizing S such that all joints incident to a body are collinear. This is how Theorem 4.1 can be seen as a version of the molecular conjecture (Theorem 1.1) in the plane for general incidence geometries. The molecular conjecture and Theorem 2.3 concern incidence geometries that always have realizations as regular proper rod configurations. This is not the case for general incidence geometries, which is why we assume that there is a regular proper string configuration realizing \(S^C\) in the plane in Theorem 4.1.

5 Algorithmic Aspects

Berg and Jordán showed that finding a maximum size sharply independent subset of an incidence geometry is NP-hard [2]. Finding maximum size independent subgraphs, however, can be done in polynomial time. Jacobs and Hendrickson introduced an algorithm for determining the independence of edges in a graph known as the pebble game algorithm [14]. The pebble game algorithm determines the generic rigidity of the input graph in the plane. Therefore, by Theorem 4.1, we can determine the infinitesimal rigidity of regular proper rod configurations realizing an incidence geometry S by applying the pebble game algorithm to a cone graph of S. We begin this section by introducing the algorithm itself.

5.1 The Pebble Game Algorithm

The input of the pebble game algorithm is a graph \(G=(V,E)\) and an ordering of the edges. The output of the algorithm is a maximally independent subgraph of G. From the end state of the algorithm it is also possible to see whether the maximally independent subgraph satisfies \(|E|=2|V|-3\), and is generically minimally rigid by Theorem 2.2. As noted in [14], we may consider the edges in any order, although changing the order of the edges may affect which maximally independent subgraph is produced by the algorithm.

To initialize the algorithm, each vertex is given two pebbles.

Following the ordering of the edges, the algorithm checks whether there is a total of four pebbles at the endpoints of an edge e. If there is, then the edge is accepted. A pebble is then removed from one of the endpoints of e, and e is directed from that endpoint.

If there is not a total of four pebbles at the endpoints of e, then the algorithm searches directed paths starting at the endpoints of e. If a pebble is found, the direction of the edges in the path are reversed and the pebble is moved to the relevant endpoint of e. The edge is accepted if there is a total of four pebbles at the endpoints of e.

The algorithm stops when no more edges can be accepted, and the output of the algorithm is the set of accepted edges.

The accepted edges generate a maximally independent subgraph of G. The number of remaining pebbles tells us whether the graph is generically rigid or generically flexible. If there are (strictly) more than three remaining pebbles, then the input graph is generically flexible. If also all edges are accepted, then the input graph is independent, otherwise it is not.

If there are exactly three remaining pebbles, then the input graph is generically rigid. If also all edges are accepted, then the input graph is generically minimally rigid, otherwise it is generically rigid but not generically minimally rigid.

See [14] for more applications of the pebble game algorithm, and see also [17] for an extension of Jacobs’ and Hendrickson’s pebble game to other similar matroids.

5.2 Determining the Infinitesimal Rigidity of Rod Configurations Using the Pebble Game Algorithm

As a consequence of Theorem 4.1, we can determine if a regular proper rod configuration realizing an incidence geometry S is infinitesimally rigid by applying the pebble game algorithm with any ordering of the edges to any cone graph \(G^C(S)\). The output of the pebble game algorithm will be some maximally independent subgraph of \(G^C(S)\). By Theorem 4.1, any regular proper rod configuration realizing S is infinitesimally rigid if and only if the maximally independent subgraph is generically rigid, i.e. if there are exactly three remaining pebbles at the end state of the algorithm.

A rod configuration is minimally infinitesimally rigid if it is infinitesimally rigid and the removal of any rod, but no points, results in an infinitesimally flexible rod configuration. We explore the problem of determining when a rod configuration is minimally infinitesimally rigid further in another article [19]. By removing a rod and using the pebble game algorithm to decide whether the resulting rod configuration is infinitesimally rigid, we can check whether the rod can be removed without the rod configuration becoming infinitesimally flexible. In this way, we can check for each rod in the rod configuration whether it can be removed, and decide whether the rod configuration is minimally infinitesimally rigid.

We note also that the pebble game can be used to construct the specific maximally independent subgraph of a cone graph \(G^C(S)\) required in the proof of Lemma 3.4. Given an ordering of the lines, we can test independence of the edges in the cone of a line in the ordering specified in the proof of Lemma 3.4. We can do this for each line in the specified ordering. Running the pebble game algorithm on the cone graph with this ordering of the edges will give the maximally independent subgraph \(G'\) of \(G^C(S)\) constructed in Lemma 3.4.

5.3 Complexity

Determining whether an edge is independent of the previously accepted edges can be done in \(\mathcal {O}(v)\)-time, where v is the number of vertices in the input graph (Corollary 2.9, [14]). Hence the algorithm runs in \(\mathcal {O}(ve)\) time, where e is the number of edges in the input graph. If the input graph is a cone graph \(G^C(S)\) of an incidence geometry \(S=(P,L,I)\), then \(v= |P| + |L|\) is the number of vertices in \(G^C(S)\), and \(e=2|I|-|L|\) is the number of edges in \(G^C(S)\). Hence determining the rigidity of a regular proper rod configuration can be done in \(\mathcal {O}((|P|+|L|)(2|I|-|L|))\)-time.

The chosen ordering of the edges does not affect the complexity, so finding the maximally independent subgraph constructed in Lemma 3.4 can also be done in \(\mathcal {O}((|P|+|L|)(2|I|-|L|))\)-time.

In order to determine the minimal rigidity of a rod configuration in the way described above, we may need to run the pebble game algorithm |L| times, so determining the minimal rigidity of a rod configuration can be done in \(\mathcal {O}(|L|(|P|+|L|)(2|I|-|L|))\)-time.

6 Concluding Remarks

In this article, we reduced the problem of determining the infinitesimal rigidity of any regular, proper rod configuration in the plane to determining the generic rigidity of its cone graph in the plane. We prove the equivalence between infinitesimal rigidity of regular proper rod configurations and generic rigidity of cone graphs in Theorem 4.1, which can be seen as an extension of Theorem 2.3 to incidence geometries that do not necessarily have realizations as independent body and joint frameworks.

It is interesting to ask whether Theorem 4.1 can be formulated and proved in arbitrary dimension. It is worth noting that the molecular conjecture does indeed hold in any dimension. There are a few key details of our proof that cannot be immediately generalized to higher dimensions, specifically those that rely on Theorem 2.2 and Theorem 2.3.

The algorithm to determine whether a rod configuration is minimally infinitesimally rigid is based on the algorithm to determine whether a rod configuration is infinitesimally rigid, by in turn removing each rod and checking whether the resulting rod configuration is infinitesimally rigid. Because the algorithm to determine whether a rod configuration is infinitesimally rigid runs in polynomial time, so does the algorithm for determining whether a rod configuration is minimally infinitesimally rigid, but understanding minimal infinitesimal rigidity of rod configurations better could lead to even more efficient algorithms.