1 Introduction

A finite simple graph embedded into Euclidean space \({\mathbb {R}}^d\) with vertices interpreted as universal joints and edges as stiff bars is known as a bar-joint framework. We are interested in establishing from the combinatorics of the graph when it is possible to deform such frameworks. A framework is rigid if there is no edge-length preserving continuous motion of the vertices which changes the distance between a pair of unconnected joints [2, 7, 36]. Deciding the rigidity of a framework is typically an NP-hard problem [1]. One way around this is to restrict attention to generic frameworks; that is, frameworks whose vertex coordinates form an algebraically independent set over \({\mathbb {Q}}\). A fundamental result in rigidity theory is Laman’s theorem which gives a combinatorial characterisation of generic rigid frameworks in Euclidean 2-space [13]. Finding combinatorial characterisations of generic rigid bar-joint frameworks in dimensions 3 and higher remains a key open problem in discrete geometry (see [36], for example). However, very recently, Laman-type characterisations have been established for generic rigid bar-joint frameworks in 3D whose joints are constrained to concentric spheres or cylinders or to surfaces which have a one-dimensional space of tangential motions (e.g., the torus or surfaces of revolution) [1719] (see also Theorem 3).

Over the last decade, a number of papers have studied when symmetry causes frameworks on a graph to become infinitesimally flexible, or stressed, and when it has no impact. These questions not only lead to many interesting and appealing mathematical results (see [10, 15, 16, 21, 27, 30, 32, 34], for example) but they also have a number of important practical applications in biochemistry and engineering, since many natural structures such as molecules and proteins, as well as many human-built structures such as linkages and other mechanical machines, exhibit non-trivial symmetries (see [6, 28, 36], for example).

Of particular interest are symmetry-induced infinitesimal motions which are fully symmetric (in the sense that the velocity vectors are invariant under all symmetries of the framework), because for symmetry-generic configurations (i.e., configurations which are as generic as possible subject to the given symmetry constraints), the existence of a fully-symmetric infinitesimal motion guarantees the existence of a finite (i.e., continuous) motion which preserves the symmetry of the framework throughout the path [11, 26]. A symmetric framework which has no non-trivial fully symmetric motion is said to be symmetry-forced rigid [10, 15, 16, 32].

To detect fully symmetric infinitesimal motions in a symmetric framework, a symmetric analog of the rigidity matrix, called the orbit rigidity matrix, has recently been constructed in [30]. The orbit rigidity matrix of a framework with symmetry group S has one row for each edge orbit, and one set of columns for each vertex orbit under the group action of S, and its entries can explicitly be derived in a very simple and transparent fashion (see [30] for details). The key properties of the orbit rigidity matrix are that its kernel is isomorphic to the space of S-symmetric infinitesimal motions of the framework, and its co-kernel is isomorphic to the space of S-symmetric self-stresses of the framework. Using the orbit rigidity matrix, combinatorial characterisations of symmetry-forced rigid symmetry-generic frameworks have recently been established for a number of symmetry groups in the plane (under the assumption that the symmetry group acts freely on the framework joints) [10, 15, 16].

In this paper, we extend these concepts and some of these combinatorial results to symmetric frameworks in 3D whose joints are constrained to surfaces. The type of a surface (see Definition 2) is the dimension of the space of tangential isometries. The combinatorial descriptions, with or without symmetry, depend on this type.

In Sect. 5, we first establish an orbit rigidity matrix for such frameworks. We then adopt the methods recently described in [10] and use this new matrix to derive necessary conditions for symmetric frameworks on surfaces to be symmetry-forced rigid for any point group which is compatible with the given surface.

Furthermore, in Sects. 6, 7, 8 and 9 we use the orbit-surface rigidity matrix to derive combinatorial characterisations of symmetry-forced rigid frameworks which are embedded generically with inversive or certain improper-rotational (where an improper rotation is a rotation followed by a reflection in a plane perpendicular to the rotation axis) or dihedral symmetry on the sphere, with rotational, reflective or inversive symmetry on the cylinder or with rotational, reflective, inversive or certain improper-rotational symmetry on the cone. We prove the sufficiency of these combinatorial counts by first showing that a short list of Henneberg-type inductive operations is sufficient to recursively generate all of the appropriate classes of group-labeled quotient graphs (Sect. 7). Then we adapt results from [18, 19, 35] to show that each of these operations preserves the maximality of the rank of the orbit-surface rigidity matrix (Sect. 8). A summary of the results is given in Sect. 6. (See also the tables in Sect. 10.)

We finish by providing a number of conjectures for some other groups and surfaces (Sect. 10). In particular, we briefly discuss an alternative twofold rotational symmetry on the cylinder: half turn symmetry with axis perpendicular to the cylinder. This situation induces a symmetry-preserving motion in a framework that counts to be minimally rigid without symmetry! For this case and some others we conjecture that the necessary counts we derived here are sufficient.

2 Frameworks on surfaces

In [18, 19] frameworks supported on surfaces were considered. In particular, attention was paid to classical surfaces such as spheres, cylinders and cones. Formally, let \({\mathcal {M}}\) be a 2-dimensional irreducible algebraic variety embedded in \({\mathbb {R}}^3\). We expect that with minor modifications our theorems and arguments can almost certainly be extended to certain reducible varieties. However these varieties must have the special property (parallel planes, concentric cylinders, etc.) that the dimension of the space of tangential isometries of \({\mathcal {M}}\) is the same as in each irreducible component.

A framework on a surface \({\mathcal {M}}\subseteq {\mathbb {R}}^3\) is a pair (Gp), where G is a finite simple graph and \(p:V(G)\rightarrow {\mathcal {M}}\) is a map such that \(p(i)\ne p(j)\) for all \(\{i,j\}\in E(G)\). We also say that (Gp) is a realisation of the underlying graph G in \({\mathbb {R}}^3\) which is supported on \({\mathcal {M}}\). For \(i\in V(G)\), we say that p(i) is the joint of (Gp) corresponding to i, and for \(e=\{i,j\}\in E(G)\), we say that the line segment between p(i) and p(j) is the bar of (Gp) corresponding to e. For simplicity, we denote p(i) by \(p_i\) for \(i\in V(G)\).

An infinitesimal motion of a framework (Gp) on a surface \({\mathcal {M}}\) is a sequence u of velocity vectors \(u_1, \ldots , u_{|V(G)|}\), considered as acting at the framework joints, which are tangential to the surface and satisfy the infinitesimal flex requirement in \({\mathbb {R}}^3\), \((u_i-u_j)\cdot (p_i-p_j) = 0\), for each edge \(\{i,j\}\). It is elementary to show that u is an infinitesimal motion if and only if u lies in the nullspace (kernel) of the rigidity matrix \(R_{\mathcal {M}}(G,p)\) given in the following definition. The submatrix of \(R_{{\mathcal {M}}}(G,p)\) given by the first |E(G)| rows provides the usual rigidity matrix, \(R_3(G,p)\) say, for the unrestricted framework (Gp) (see [36], for example). The tangentiality condition corresponds to u lying in the nullspace of the matrix formed by the last |V(G)| rows.

Definition 1

The rigidity matrix \(R_{\mathcal {M}}(G,p)\) of (Gp) on \({\mathcal {M}}\) is an \(|E(G)|+|V(G)|\) by 3|V(G)| matrix of the form

$$\begin{aligned} \begin{bmatrix} R_3(G,p)\\ {\mathcal {N}}(p) \end{bmatrix}. \end{aligned}$$

Consecutive triples of columns in \(R_{\mathcal {M}}(G,p)\) correspond to framework joints. \(R_3(G,p)\) is the usual rigidity matrix of (Gp), that is, the first |E(G)| rows of \(R_{\mathcal {M}}(G,p)\) correspond to the bars of (Gp) and the entries in row \(e=\{i,j\}\) are zero except possibly in the column triples for \(p_i\) and \(p_j\), where the entries are the coordinates of \(p_i-p_j\) and \(p_j-p_i\) respectively. The final |V(G)| rows of \(R_{\mathcal {M}}(G,p)\) (i.e. the rows of \({\mathcal {N}}(p)\)) correspond to the joints of (Gp) and the entries in the row for vertex i are zero except in the columns for i where the entries are the coordinates of a normal vector \(N(p_i)\) to \({\mathcal {M}}\) at \(p_i\).

An infinitesimal motion of a framework (Gp) on \({\mathcal {M}}\) is called trivial if it lies in the kernel of \(R_{\mathcal {M}}(K_n,p)\), where \(K_n\) is the complete graph on the vertex set of G. If every infinitesimal motion of (Gp) is trivial, then (Gp) is called infinitesimally rigid. Otherwise (Gp) is called infinitesimally flexible.

Let \({\mathbb {Q}}(p)\) denote the field extension of \({\mathbb {Q}}\) formed by adjoining the coordinates of p. A framework (Gp) on \({\mathcal {M}}\) is said to be generic for \({\mathcal {M}}\) if \(\mathrm {td}\,[{\mathbb {Q}}(p):{\mathbb {Q}}]=2|V(G)|\). This implies, [8, Corollary 3.2], that any rational polynomial h(x) in 3|V(G)| variables that satisfies \(h(p)=0\) satisfies \(h(q)=0\) for all points \(q \in {\mathcal {M}}^{3|V(G)|}\).

A framework (Gp) supported on \({\mathcal {M}}\) is called regular if \({\text {rank}}R_{\mathcal {M}}(G,p)= max \{{\text {rank}} R_{\mathcal {M}}(G,q): q \in {\mathcal {M}}^{|V(G)|}\}\). If a framework on \({\mathcal {M}}\) is generic, then it is clearly also regular. Moreover, if some realisation of a graph G on \({\mathcal {M}}\) is infinitesimally rigid, then the same is true for every regular (and hence every generic) realisation of G on \({\mathcal {M}}\).

Theorem 1

([19]) A regular framework (Gp) on an algebraic surface \({\mathcal {M}}\) is infinitesimally rigid if and only if it is continuously rigid on \({\mathcal {M}}\).

Note that the complete graphs \(K_2\) and \(K_3\) provide curiosities when \({\mathcal {M}}\) is a cylinder in that they are continuously rigid but have non-trivial vectors in their nullspaces which are not tangential isometries. For graphs with \(|V(G)|\ge 6-k\) on a surface of type k (see Definition 2) such worries disappear and both possible definitions of infinitesimal rigidity are equivalent.

Definition 2

A surface \({\mathcal {M}}\) is said to be of type k if \(\dim \ker R_{{\mathcal {M}}}(K_n,p)\ge k\) for all complete graph frameworks \((K_n,p)\) on \({\mathcal {M}}\) and k is the largest such number.

In other words k is the dimension of the group \(\varGamma \) of Euclidean isometries supported by \({\mathcal {M}}\).

A framework on a surface \({\mathcal {M}}\) is called isostatic if it is minimally infinitesimally rigid, that is, if it is infinitesimally rigid and the removal of any bar results in an infinitesimally flexible framework. The following three results concerning generic isostatic frameworks on surfaces were recently established in [18, 19].

Theorem 2

Let (Gp) be an isostatic generic framework on the algebraic surface \({\mathcal {M}}\) of type \(k, 0\le k\le 3\), with G not equal to \(K_1, K_2, K_3\) or \(K_4\). Then \(|E(G)|=2|V(G)|-k\) and for every subgraph H of G with at least one edge, \(|E(H)|\le 2|V(H)|-k\).

Lemma 1

Let (Gp) be a regular framework on a surface \({\mathcal {M}}\) of type k. Then (Gp) is isostatic on \({\mathcal {M}}\) if and only if

  1. 1.

    \({\text {rank}}R_{{\mathcal {M}}}(G,p) = 3|V(G)|-k\) and

  2. 2.

    \( 2|V(G)|-|E(G)| =k.\)

A graph G is called (2, k)-sparse if for every subgraph H of G, with at least one edge, we have \(|E(H)|\le 2|V(H)|-k\). A (2, k)-sparse graph satisfying \(|E(G)|= 2|V(G)|-k\) is called (2, k)-tight.

Theorem 3

Let G be a simple graph, let \({\mathcal {M}}\) be an irreducible algebraic surface in \({\mathbb {R}}^3\) of type \(k\in \{1,2\}\) and let (Gp) be a generic framework on \({\mathcal {M}}\). Then (Gp) is isostatic on \({\mathcal {M}}\) if and only if G is \(K_1, K_2, K_3, K_4\) or is (2, k)-tight.

We remark that for type \(k=3\), it was shown in [23, 31] that Laman’s theorem [13] applies to the sphere. It is an open problem to characterise generic isostatic frameworks on surfaces of type \(k=0\). In particular, the natural analogue of Theorem 3 is known to be false. The graph formed from \(K_5\) by adding a degree 2 vertex gives an example of a (2, 0)-tight simple graph that is flexible on any such surface. Due to this complication, we will consider symmetric analogues of Laman’s theorem for surfaces of type \(k>0\) only in this paper.

We finish this section by defining a stress for a framework on \({\mathcal {M}}\). Stresses and stress matrices have been used to some effect in a variety of aspects of rigidity theory (e.g. [4, 5, 35]). Very recently the analogous properties of stresses for frameworks on surfaces have been developed [9]. We record the definition here as it will be useful for us in what follows.

Definition 3

A (self)-stress for (Gp) on \({\mathcal {M}}\) is a pair \((\omega ,\lambda )\) such that \((\omega ,\lambda ) \in coker R_{{\mathcal {M}}}(G,p)\), that is, a vector \((\omega , \lambda )\in {\mathbb {R}}^{|E(G)|+|V(G)|}\) such that \((\omega ,\lambda )^T R_{\mathcal {M}}(G,p)=0\).

Equivalently, \(\omega \) is a stress if for all \(1\le i \le |V(G)|\)

$$\begin{aligned} \sum _{\{i,j\}\in E(G)} \omega _{ij}(p_i-p_j) + \lambda _i N(p_i)=0. \end{aligned}$$

3 Symmetric graphs

In this section we review some basic properties of symmetric graphs. In particular, we introduce the notion of a ‘gain graph’ which is a useful tool to describe the underlying combinatorics of symmetric frameworks (see also [10, 22, 29], for example).

3.1 Quotient gain graphs

Given a group S, an S -gain graph is a pair \((H,\psi )\), where H is a directed multi-graph (which may contain \(|S|-1\) loops at each vertex and up to |S| multiple edges between any pair of vertices) and \(\psi :E(H)\rightarrow S\) is a map which assigns an element of S to each edge of H. The map \(\psi \) is also called the gain function of \((H,\psi )\) (see Fig. 1b, d) for examples of \({\mathcal {C}}_2\)-gain graphs). A gain graph is a directed graph, but its orientation is only used as a reference orientation, and may be changed, provided that we also modify \(\psi \) so that if an edge has gain x in one orientation, then it has gain \(x^{-1}\) in the other direction. Note that if S is a group of order 2, then the orientation is irrelevant. For simplicity, we omit the labels of edges with identity gain in the figures.

Fig. 1
figure 1

\({\mathcal {C}}_2\)-symmetric graphs (a, c) and their quotient gain graphs (b, d), where \({\mathcal {C}}_2\) denotes half-turn symmetry

Let G be a finite simple graph. An automorphism of G is a permutation \(\pi \) of the vertex set V(G) of G such that \(\{i,j\}\in E(G)\) if and only if \(\{\pi (i),\pi (j)\}\in E(G)\). The set of all automorphisms of G forms a group, called the automorphism group \(\text {Aut}(G)\) of G. An action of a group S on G is a group homomorphism \(\theta :S\rightarrow \text {Aut}(G)\). If \(\theta (x)(i)\ne i\) for all \(i\in V(G)\) and all non-trivial elements x of the group S, then the action \(\theta \) is called free. If S acts on G by \(\theta \), then we say that the graph G is S -symmetric (with respect to \(\theta \)). Throughout this paper, we only consider free actions, and we will omit to specify the action \(\theta \) if it is clear from the context. In that case, we write x v instead of \(\theta (x)(v)\).

For an S-symmetric graph G, the quotient graph G / S is the multi-graph which has the set V(G) / S of vertex orbits as its vertex set and the set E(G) / S of edge orbits as its edge set. Note that an edge orbit may be represented by a loop in G / S.

While several distinct graphs may have the same quotient graph, a gain labeling makes the relation one-to-one, up to equivalence for the gain function (see Sect. 3.2), provided that the underlying action is free. To see this, choose an arbitrary representative vertex i for each vertex orbit, so that each vertex orbit has the form \(Si=\{x i| x\in S\}\). If the action is free, an edge orbit connecting Si and Sj can be written as \(\{\{x i, x x' j\}| x\in S\}\) for a unique \(x'\) in S. We then orient the edge orbit from Si to Sj in G / S and assign it the gain \(x'\). This gives the quotient S -gain graph \((G/ S, \psi )\).

Conversely, let \((H,\psi )\) be an S-gain graph. For \(x\in S\) and \(i\in V(H)\), we denote the pair (xi) by x i. The covering graph (or lifted graph) of \((H,\psi )\) is the simple graph with vertex set \(S\times V(H)=\{x i| x\in S, i\in V(H)\}\) and edge set \(\{\{x i, x\psi (e) j\}| x\in S, e=(i,j)\in V(H)\}\). Clearly, S acts freely on the covering graph with the action \(\theta \) defined by \(\theta (x): i\mapsto x i\) for \(x\in S\) under which the quotient comes back to \((H,\psi )\).

The map \(c:G\rightarrow H\) defined by \(c(x i)=i\) and \(c(\{x i, x \psi (e) j\})=(i,j)\) is called a covering map. The fiber \(c^{-1}(i)\) of a vertex \(i\in V(H)\) and the fiber \(c^{-1}(e)\) of an edge \(e\in E(H)\) coincide with a vertex orbit and edge orbit of G, respectively.

3.2 Balanced gain graphs and the switching operation

Let \((H,\psi )\) be an S-gain graph, and let \(W=e_1, e_2, \ldots , e_k, e_1\) be a closed walk in \((H,\psi )\), where \(e_i\in E(H)\) for all i. We define the gain of W as \(\psi (W)=\psi (e_1)\cdot \psi (e_2) \cdots \psi (e_k)\) if each edge is oriented in the forward direction, and if an edge \(e_i\) is directed backwards, then we replace \(\psi (e_i)\) by \(\psi (e_i)^{-1}\) in the product. (If S is an additive group, then we replace the product by the sum.) Note that for abelian groups, the gain of a closed walk is independent of the choice of the starting vertex. However, this is of course not the case for non-abelian groups.

For \(v\in (H,\psi )\), we denote by \({\mathcal {W}}(H,v)\) the set of closed walks starting at v. Similarly, if \(F\subseteq E(H)\) and \(v\in V(H)\), then \({\mathcal {W}}(F,v)\) denotes the set of closed walks starting at v and using only edges of F, where \({\mathcal {W}}(F,v)=\emptyset \) if v is not incident to an edge of F.

For \(F\subseteq E(H)\), the subgroup induced by F relative to v is defined as \(\langle F\rangle _{\psi ,v}=\{\psi (W)|\, W\in {\mathcal {W}}(F,v)\}\). We will sometimes omit the subscript \(\psi \) of \(\langle F\rangle _{\psi ,v}\) if it is clear from the context.

For any connected \(F\subseteq E(H)\), we say that F is balanced if \(\langle F\rangle _v=\{\text {id}\}\) for some \(v\in V(F)\), and unbalanced otherwise. By [10, Proposition 2.1], this property is invariant under the choice of the base vertex \(v\in V(F)\), and F is unbalanced if and only if F contains an unbalanced cycle. So we may extend this notion to any (possibly disconnected) \(F\subseteq E(H)\), and call F unbalanced if F contains an unbalanced cycle.

If S is of order 2, then we will think of S as the group \({\mathbb {Z}}_2=\{0,1\}\) with addition as the group operation. So a subgraph of a \({\mathbb {Z}}_2\)-gain graph \((H,\psi )\) will be unbalanced if and only if it contains a cycle with gain 1. Note that a \({\mathbb {Z}}_2\)-gain graph is commonly known as a signed graph in the literature [37, 38]. Let v be a vertex in an S-gain graph \((H,\psi )\). To switch v with \(x\in S\) means to change the gain function \(\psi \) on E(H) as follows:

$$\begin{aligned} \psi '(e)=\left\{ \begin{array}{ll} x\cdot \psi (e)\cdot x^{-1} &{} \quad \text { if } e \text { is a loop incident with } v;\\ x\cdot \psi (e) &{} \quad \text { if } e \text { is a non-loop incident from } v;\\ \psi (e) \cdot x^{-1}&{} \quad \text { if } e \text { is a non-loop incident to } v;\\ \psi (e) &{} \quad \text { otherwise.} \end{array}\right. \end{aligned}$$

In particular, if we switch a vertex v in a \({\mathbb {Z}}_2\)-gain graph \((H,\psi )\) with 0, then the gain function \(\psi \) remains unchanged, and if we switch v with 1, then the gain of every non-loop edge that is incident with v changes its gain from 0 to 1 or vice versa, and the gains of all other edges remain the same.

We say that a gain function \(\psi '\) is equivalent to another gain function \(\psi \) on the same edge set if \(\psi '\) can be obtained from \(\psi \) by a sequence of switching operations.

In the following, we summarise some key properties of the switching operation. Detailed proofs of these results for an arbitrary discrete symmetry group S can be found in [10]. For the special case of signed graphs, these theorems were first proved by Zaslavsky in the 1980s [38].

Proposition 1

([10, Prop. 2.2]) Switching a vertex of an S-gain graph \((H,\psi )\) does not alter the balance of \((H,\psi )\).

Proposition 2

([10, Prop. 2.3 and Lemma 2.4]) An S-gain graph \((H,\psi )\) is balanced if and only if the vertices in V(H) can be switched so that every edge in the resulting S-gain graph \((H,\psi ')\) has the identity element of S as its gain.

Lemma 2

([10, Lemma 2.5]) Let \((G,\psi )\) be an S-gain graph, and let \(U\subseteq V(G)\) and \(W\subseteq V(G)\) be subsets of V(G). Further, let H be the signed subgraph of \((G,\psi )\) induced by U, and let K be the signed subgraph of \((G,\psi )\) induced by W, and suppose that H, K and \(H\cap K\) is connected. If H and K are balanced, then \(H\cup K\) is also balanced.

4 Symmetric frameworks on surfaces

Let \({\mathcal {M}}\subseteq {\mathbb {R}}^3\) be a surface, let G be a finite simple graph, and let \(p:V(G)\rightarrow {\mathcal {M}}\). A symmetry operation of the framework (Gp) on \({\mathcal {M}}\) is an isometry x of \({\mathbb {R}}^3\) which maps \({\mathcal {M}}\) onto itself (i.e., x is a symmetry of \({\mathcal {M}}\)) such that for some \(\alpha _x\in \text {Aut}(G)\), we have

$$\begin{aligned} x(p_i)=p_{\alpha _x(i)}\quad \text {for all } i\in V(G). \end{aligned}$$

The set of all symmetry operations of a framework (Gp) on \({\mathcal {M}}\) forms a group under composition, called the point group of (Gp). Clearly, we may assume w.l.o.g. that the point group of a framework is always a symmetry group, i.e., a subgroup of the orthogonal group \(O({\mathbb {R}}^{d})\).

We use the Schoenflies notation for the symmetry operations and symmetry groups considered in this paper, as this is one of the standard notations in the literature about symmetric structures (see [3, 6, 11, 12, 26, 29], for example). In particular, \({\mathcal {C}}_s\) is a group of order 2 generated by a single reflection s, and \({\mathcal {C}}_m\), \(m\ge 1\), is a cyclic group generated by a rotation \(C_m\) about an axis through the origin by an angle of \(\frac{2\pi }{m}\). (See also Sect. 6.)

Given a surface \({\mathcal {M}}\), a symmetry group S and a graph G, we let \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S)}\) denote the set of all realisations of G on \({\mathcal {M}}\) whose point group is either equal to S or contains S as a subgroup [24, 25]. In other words, the set \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S)}\) consists of all realisations (Gp) of G in \({\mathbb {R}}^{3}\) which are supported on \({\mathcal {M}}\) and for which there exists an action \(\theta :S\rightarrow \text {Aut}(G)\) so that

$$\begin{aligned} x\big (p(i)\big )=p(\theta (x)(i))\quad \text { for all } i\in V(G)\quad \mathrm{and~all }\quad x\in S. \end{aligned}$$
(4.1)

A framework \((G,p)\in {\mathscr {R}}^{{\mathcal {M}}}_{(G,S)}\) satisfying the equations in (4.1) for the map \(\theta :S\rightarrow \text {Aut}(G)\) is said to be of type \(\theta \), and the set of all realisations in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S)}\) which are of type \(\theta \) is denoted by \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\) (see again [24, 25]; Fig. 2). It is shown in [25] that if p is injective, then (Gp) is of a unique type \(\theta \) and \(\theta \) is necessarily also a homomorphism (see Fig. 3 for an example).

Fig. 2
figure 2

Realisations of the cycle graph \(C_{4}\) in \({\mathscr {R}}^{{\mathcal {M}}}_{(C_4,{\mathcal {C}}_s)}\) of different types, where \({\mathcal {M}}\) is the Euclidean plane and \({\mathcal {C}}_s=\{id,s\}\) is the reflection group. The framework in (a) is of type \(\theta _{a}\), where \(\theta _{a}: {\mathcal {C}}_{s} \rightarrow \text {Aut}(C_4)\) is the homomorphism defined by \(\theta _{a}(s)= (1 \, 4)(2 \, 3)\), and the framework in (b) is of type \(\theta _{b}\), where \(\theta _{b}: {\mathcal {C}}_{s} \rightarrow \text {Aut}(C_4)\) is the homomorphism defined by \(\theta _{b}(s)= (1 \, 3)(2\, 4)\)

Let S be an abstract group, and G be an S-symmetric graph with respect to a free action \(\theta :S\rightarrow \text {Aut}(G)\). Suppose also that S acts on \({\mathbb {R}}^d\) via a homomorphism \(\tau :S\rightarrow O({\mathbb {R}}^d)\). Then we say that a framework (Gp) on a surface \({\mathcal {M}}\) is S-symmetric (with respect to \(\theta \) and \(\tau \)) if \((G,p)\in {\mathscr {R}}^{{\mathcal {M}}}_{(G,\tau (S),\theta )}\), that is, if

$$\begin{aligned} \tau (x) (p(i))=p(\theta (x) i) \qquad \text {for all } x\in S\quad \mathrm{and~all}\quad i\in V(G). \end{aligned}$$
Fig. 3
figure 3

Realisations of the cube graph \(Q_3\) in \({\mathscr {R}}^{{\mathcal {M}}}_{(Q_3,S)}\) where \({\mathcal {M}}\) is a cylinder and S is (a) \({\mathcal {C}}_s\) with mirror orthogonal to the axis of the cylinder and (b) \({\mathcal {C}}_4\) with the 4-fold rotation around the axis of the cylinder. The grey joints are at the ‘back’ of the cylinder

For simplicity, we will assume throughout this paper that a framework \((G,p)\in {\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\) has no joint that is ‘fixed’ by a non-trivial symmetry operation in S (i.e., (Gp) has no joint \(p_i\) with \(x(p_i)=p_i\) for some \(x\in S\), \(x\ne id\)). In particular, this will simplify the construction of the orbit-surface rigidity matrix in the next section, since in this case this matrix has a set of 3 columns for each orbit of vertices under the action \(\theta \).

Let \({\mathbb {Q}}_S\) denote the field extension of \({\mathbb {Q}}\) formed by adjoining the entries of all the matrices in S to \({\mathbb {Q}}\). We say that a framework (Gp) in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\) is S-generic if \(\mathrm {td}\,[{\mathbb {Q}}_S(p):{\mathbb {Q}}_S]=2|V(G_0)|.\) This implies that the only polynomial equations in 3|V(G)| variables that evaluate to zero at p are those that define S or \({\mathcal {M}}\). This is the natural extension of the definitions of generic seen in the literature [8, 10, 19].

4.1 Symmetry-forced rigidity and the orbit-surface rigidity matrix

Given an S-symmetric framework (Gp) on a surface \({\mathcal {M}}\), we are interested in non-trivial motions of (Gp) on \({\mathcal {M}}\) which preserve the symmetry group S of (Gp) throughout the path. Infinitesimal motions corresponding to such symmetry-preserving continuous motions are ‘S-symmetric infinitesimal motions’ (see also [10, 29, 30]):

An infinitesimal motion u of a framework (Gp) in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\) is S -symmetric if

$$\begin{aligned} x\big (u_i\big )=u_{\theta (x)(i)}\quad \mathrm{for~all}~i\in V(G)\quad \mathrm{and~all}\quad x\in S, \end{aligned}$$

i.e., if u is unchanged under all symmetry operations in S (Fig. 4). Note that all the velocity vectors \(u_i\), considered as acting at the framework joints, are of course tangential to the surface \({\mathcal {M}}\).

We say that \((G,p)\in {\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\) is S -symmetric infinitesimally rigid if every S-symmetric infinitesimal motion is trivial. Note that the dimension of the space of trivial S-symmetric infinitesimal motions, denoted by \(k_S\), can easily be read off from the character table for S (see [3], for example).

Recall that the type k of a surface \({\mathcal {M}}\) is the dimension of the group of isometries of \({\mathbb {R}}^3\) acting tangentially to \({\mathcal {M}}\). Analogously, we call the dimension of the space of trivial S-symmetric infinitesimal motions, \(k_S\), the symmetric type of \({\mathcal {M}}\).

A self-stress \((\omega ,\lambda )\in {\mathbb {R}}^{|E(G)|+|V(G)|}\) of (Gp) is S -symmetric if \(\omega _e=\omega _f\) whenever e and f belong to the same edge orbit \(S e=\{x e|\,x\in S\}\) of G, and \(\lambda _i=\lambda _j\) whenever i and j belong to the same vertex orbit \(S i=\{x i|\,x\in S\}\) of G.

Fig. 4
figure 4

Infinitesimal motions of frameworks in the Euclidean plane: a a \({\mathcal {C}}_2\)-symmetric non-trivial infinitesimal motion; b a \({\mathcal {C}}_s\)-symmetric trivial infinitesimal motion; c a non-trivial infinitesimal motion which is not \({\mathcal {C}}_s\)-symmetric

In Euclidean space, a key tool to study symmetric infinitesimal motions is the orbit rigidity matrix. This matrix is defined as follows (see also [30]):

Definition 4

Let (Gp) be an S-symmetric framework (with respect to \(\theta \) and \(\tau \)) in Euclidean 3-space which has no joint that is ‘fixed’ by a non-trivial symmetry operation in S. Further, let \((G_0,\psi )\) be the quotient S-gain graph of (Gp). For each edge \(e\in E(G_0)\), the orbit rigidity matrix O(GpS) of (Gp) has the following corresponding (\(3|V(G_0)|\)-dimensional) row vector.

  1. Case 1

    Suppose \(e=(i,j)\), where \(i\ne j\). Then the corresponding row in O(GpS) is:

  2. Case 2

    Suppose \(e=(i,i)\) is a loop in \((G_0,\psi )\). Then \(\psi (e)\ne id\) and the corresponding row in O(GpS) is:

Using the above definition of the orbit rigidity matrix for frameworks in Euclidean 3-space, we can easily set up the orbit-surface rigidity matrix as follows.

Definition 5

Let (Gp) be a framework in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\). The orbit-surface rigidity matrix \(O_{{\mathcal {M}}}(G,p,S)\) of (Gp) is the \((|E(G_0)|+|V(G_0)|)\times 3|V(G_0)|\) block matrix

$$\begin{aligned} \begin{bmatrix} O(G,p,S)\\ {\mathcal {N}}_0(p_0) \end{bmatrix} \end{aligned}$$

where O(GpS) is the standard orbit rigidity matrix for the framework and symmetry group considered in \({\mathbb {R}}^3\) (see Definition 4) and \({\mathcal {N}}_0(p_0)\) represents the block-diagonalised matrix of surface normals to the framework joints corresponding to the vertices of \(G_0\).

A framework \((G,p)\in {\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\) is S -regular if \(O_{\mathcal {M}}(G,p,S)\) has maximal rank among all realisations in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\). Note that if a framework on \({\mathcal {M}}\) is S-generic, then it is clearly also S-regular, and if some S-symmetric realisation of a graph G is S-symmetric infinitesimally rigid, then the same is true for every S-regular realisation of G.

An S-gain graph \((G_0,\psi )\) is S -independent if \(O_{{\mathcal {M}}}(G,p,S)\) has linearly independent rows and S -dependent otherwise. Clearly, if (Gp) is S -isostatic (i.e., minimally S-symmetric infinitesimally rigid) then \((G_0,\psi )\) is S-independent. The following lemma is an easy exercise.

Lemma 3

Let \({\mathcal {M}}\) be a surface with symmetric type \(k_S\) with respect to a symmetry group S. Let \(N_{\mathcal {M}}(G,p,S)\) be the nullspace of \(O_{{\mathcal {M}}}(G,p,S)\). Then \(\dim N_{\mathcal {M}}(G,p,S)\ge k_S\).

The following result summarises the key properties of the orbit-surface rigidity matrix:

Theorem 4

Let (Gp) be a framework in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\). Then the solutions to \(O_{{\mathcal {M}}}(G,p,S)u = 0\) are isomorphic to the space of S-symmetric infinitesimal motions of (Gp). Moreover, the solutions to \((\omega ,\lambda )^TO_{{\mathcal {M}}}(G,p,S) = 0\) are isomorphic to the space of S-symmetric self-stresses of (Gp).

Proof

This follows immediately from the corresponding result for the orbit rigidity matrix in Euclidean 3-space [30, Theorem 6.1 and Theorem 8.3].

For example, it was shown in [30, Theorem 6.1] that a vector u lies in the kernel of the orbit rigidity matrix O(GpS) if and only if u is the restriction of an S-symmetric infinitesimal motion of (Gp) to the joints corresponding to the vertices of the quotient S-gain graph of G. Therefore, a vector u lies in the kernel of the orbit-surface rigidity matrix \(O_{{\mathcal {M}}}(G,p,S)\) if and only if u is in the kernel of O(GpS) and the velocity vectors of u are tangential to the surface \({\mathcal {M}}\). Moreover this holds if and only if u is the restriction of an S-symmetric infinitesimal motion of (Gp) on \({\mathcal {M}}\) to the joints corresponding to the vertices of the quotient S-gain graph of G.

Similarly, the proof of [30, Theorem 8.3] can easily be adapted to show that the solutions to \((\omega ,\lambda )^TO_{{\mathcal {M}}}(G,p,S) = 0\) are isomorphic to the space of S-symmetric self-stresses of (Gp). \(\square \)

An S-symmetric framework (Gp) is S -symmetric rigid if every S-symmetric continuous motion is a rigid motion of \({\mathcal {M}}\).

It is an easy extension of [2] (see also [19, 26]) to show that for S-regular realisations, a symmetric infinitesimal motion implies a continuous symmetry preserving motion. Thus we have the following.

Theorem 5

Let (Gp) be an S-regular framework in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\). Then (Gp) is S-symmetric infinitesimally rigid on \({\mathcal {M}}\) if and only if (Gp) is S-symmetric rigid on \({\mathcal {M}}\).

5 Necessary conditions for symmetry-forced rigidity

We now establish analogues of Maxwell’s theorem, showing combinatorial counts that must be satisfied by any S-regular S-isostatic framework in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\). We need the following definition (see also [10, 29]).

Definition 6

Let \((H,\psi )\) be an S-gain graph and let \(k, \ell , m\) be nonnegative integers with \(m\le \ell \). Then \((H,\psi )\) is called \((k,\ell ,m)\) -gain-sparse if

  • \(|F|\le k|V(F)|-\ell \) for any nonempty balanced \(F\subseteq E(H)\);

  • \(|F|\le k|V(F)|-m\) for any nonempty \(F\subseteq E(H)\).

A \((k,\ell ,m)\)-gain-sparse graph \((H,\psi )\) satisfying \(|F|= k|V(F)|-m\) is called \((k,\ell ,m)\) -gain-tight. Similarly, an edge set E is called \((k,\ell ,m)\)-gain-sparse (\((k,\ell ,m)\)-gain-tight) if it induces a \((k,\ell ,m)\)-gain-sparse (\((k,\ell ,m)\)-gain-tight) graph.

We first establish a necessary condition for a framework in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\) to be S-isostatic.

Theorem 6

Let \({\mathcal {M}}\) be an irreducible algebraic surface of type k. Let S be a symmetry group of \({\mathbb {R}}^3\) acting on \({\mathcal {M}}\) such that under S, \({\mathcal {M}}\) has type \(k_S\). Let (Gp) be an S-isostatic framework in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\). Then \((G_0,\psi )\) is \((2,k,k_S)\)-gain-tight.

Proof

First observe that if there exists an unbalanced subgraph \((H,\psi )\) of \((G_0,\psi )\) with \(|E(H)|>2|V(H)|-k_S\), then Lemma 3 implies that there is a row dependence in the orbit-surface matrix for that subgraph. Similarly, we must have \(|E(G_0)|=2|V(G_0)|-k_S\). So it remains to check that if \(F\subseteq E(G_0)\) is balanced, then \(|F|\le 2|V(F)|-k\).

Claim

Switching a vertex does not change the rank of the orbit-surface matrix.

Proof

Let v be the vertex we will switch with gain \(\alpha \), let \(e=(u,v)\) be an edge, oriented into v, with gain \(\psi (e)\) and let \(f=(v,v)\) be a loop on v with gain \(\psi (f)\). Define \(p_i'=p_i\) for all \(v\in V(G_0)- v\) and \(p'_{v}=\tau (\alpha ) p_{v}\), and let \(\psi '\) be the gain function obtained from \(\psi \) by switching v with \(\alpha \).

To prove the claim it suffices to show that the submatrix corresponding to the rows for ef and the row for v has the same rank in \(O_{\mathcal {M}}(G,p',S)\) and in \(O_{\mathcal {M}}(G,p,S)\).

In \(O_{\mathcal {M}}(G,p',S)\) we have

figure a

Since \(\psi '(e)=\psi (e)\alpha ^{-1}\) and \(\psi '(f)=\alpha \psi (f)\alpha ^{-1}\) this is

figure b

which simplifies (after scaling the third row if necessary) to

figure c

since \(N_0(\tau (\alpha )(p_v))\) is equal to a scalar multiple of \(\tau (\alpha )(N_0(p_v)) \). To see this, recall that \(N_0(p_v)\) is a normal vector to \({\mathcal {M}}\) at the point \(p_v\). Since \(\tau (\alpha )\) is an isometry of \({\mathbb {R}}^3\), and \(\tau (\alpha )\) maps \({\mathcal {M}}\) onto itself, it maps the tangent plane to \({\mathcal {M}}\) at \(p_v\) to the tangent plane to \(\tau (\alpha )({\mathcal {M}})={\mathcal {M}}\) at \(\tau (\alpha )(p_v)\). Thus, \(\tau (\alpha )(N_0(p_v))\) is again a normal vector to \({\mathcal {M}}\) (with a possibly different magnitude), namely at the point \(\tau (\alpha )(p_v)\).

By applying column operations to the triple for \(p_v\) we turn this matrix into the submatrix of \(O_{\mathcal {M}}(G,p,S)\) and hence the ranks are indeed the same. \(\square \)

Now suppose there exists a balanced edge set \(F\subseteq E(G_0)\) with \(|F|> 2|V(F)|-k\). Then, by the above Claim, we may switch the vertices of the graph induced by F so that every edge gain in this subgraph is the identity element of S. The submatrix of \(O_{{\mathcal {M}}}(G,p,S)\) consisting of all those rows which correspond to the edges and vertices of the subgraph induced by F is a standard surface rigidity matrix. Since \(|F|> 2|V(F)|-k\), it follows from Lemma 1 that this matrix has a row dependence, a contradiction. \(\square \)

We remark that the sparsity condition for unbalanced subgraphs is simpler than the reader may have anticipated. For most non-cyclic groups we can derive stronger necessary conditions by taking greater care to deal with the different possible subgroups \(\langle F\rangle _{\psi ,v}\) induced by F (recall Sect. 3.2).

For example, if \({\mathcal {M}}\) is the unit sphere and S is a dihedral group \({\mathcal {D}}_m\), then it is possible that for some subset of edges F of the \({\mathcal {D}}_m\)-gain graph, the group \(\langle F\rangle _v\) is neither trivial nor the entire group \({\mathcal {D}}_m\), but the cyclic subgroup \({\mathcal {C}}_m\) of \({\mathcal {D}}_m\). In that case, we need to adjust the number \(k_{{\mathcal {D}}_m}=0\) to \(k_{\langle F\rangle _v}=1\) in the sparsity count for F, where \(k_{\langle F\rangle _v}\) is the dimension of the space of isometries of \({\mathbb {R}}^3\) which act tangentially on the unit sphere and are symmetric with respect to the group \(\langle F\rangle _v={\mathcal {C}}_m\). With this in mind, the following is proved similarly to Theorem 6 (see, also, [10, Lemma 5.2]).

Theorem 7

Let \({\mathcal {M}}\) be an irreducible algebraic surface of type k. Let S be a non-cyclic symmetry group of \({\mathbb {R}}^3\) acting on \({\mathcal {M}}\) such that \({\mathcal {M}}\) has type \(k_{S}\) under S. Let (Gp) be an S-isostatic framework in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\). Then \((G_0,\psi )\) satisfies

  1. 1.

    \(|E(G_0)|=2|V(G_0)|-k_{S}\),

  2. 2.

    \(|F|\le 2|V(F)|-k_{\langle F\rangle _v}\) for all \(F\subseteq E(G_0)\) and all \(v\in V(F)\).

6 Combinatorial characterisations of generic rigidity

In the rest of this paper we will consider the more substantial problem of proving these counts are sufficient to guarantee that a symmetric framework supported on a surface is symmetry-forced isostatic. We will focus on three classical surfaces in 3-space, namely the sphere, the cylinder and the cone. That is

  • the unit sphere \({\mathcal {S}}\) centered at the origin, defined by the equation \(x^2+y^2+z^2=1\);

  • the unit cylinder \({\mathcal {Y}}=S^1 \times {\mathbb {R}}\) about the z-axis, defined by the equation \(x^2+y^2=1\);

  • the unit cone \({\mathcal {C}}\) about the z-axis, defined by the equation \(x^2+y^2=z^2\).

In the Schoenflies notation, the relevant symmetry groups which are compatible with each of these surfaces are \({\mathcal {C}}_s\), \({\mathcal {C}}_m\), \({\mathcal {C}}_i\), \({\mathcal {C}}_{mv}\), \({\mathcal {C}}_{mh}\), \({\mathcal {D}}_{m}\), \({\mathcal {D}}_{mh}\), \({\mathcal {D}}_{md}\) and \(S_{2m}\). As defined in Sect. 4, \({\mathcal {C}}_s\) is generated by a single reflection s, and \({\mathcal {C}}_m\), \(m\ge 1\), is a group generated by an m-fold rotation \(C_m\). \({\mathcal {C}}_i\) is the group generated by an inversion, \({\mathcal {C}}_{mv}\) is a dihedral group that is generated by a rotation \(C_m\) and a reflection whose reflectional plane contains the rotational axis of \(C_m\), and \({\mathcal {C}}_{mh}\) is generated by a rotation \(C_m\) and the reflection whose reflectional plane is perpendicular to the axis of \(C_m\). Further, \({\mathcal {D}}_{m}\) denotes a symmetry group that is generated by a rotation \(C_m\) and another 2-fold rotation \(C_2\) whose rotational axis is perpendicular to the one of \(C_m\). \({\mathcal {D}}_{mh}\) and \({\mathcal {D}}_{md}\) are generated by the generators \(C_m\) and \(C_2\) of a group \({\mathcal {D}}_{m}\) and by a reflection s. In the case of \({\mathcal {D}}_{mh}\), the mirror of s is the plane that is perpendicular to the \(C_m\) axis and contains the origin (and hence contains the rotational axis of \(C_2\)), whereas in the case of \({\mathcal {D}}_{md}\), the mirror of s is a plane that contains the \(C_m\) axis and forms an angle of \(\frac{\pi }{m}\) with the \(C_2\) axis. Finally, \(S_{2m}\) is a symmetry group which is generated by a 2m-fold improper rotation (i.e., a rotation by \(\frac{\pi }{m}\) followed by a reflection in the plane which is perpendicular to the rotational axis).

6.1 The sphere

Although it has not previously been stated, by combining results of [10, 31], the following theorem is immediate.

Theorem 8

(Rotation, reflection or dihedral symmetry on the sphere) Let S be the group \({\mathcal {C}}_m\) representing m-fold rotational symmetry or the group \({\mathcal {C}}_s\) representing reflectional symmetry about a plane through the origin. Let (Gp) be an S-generic framework in \({\mathscr {R}}^{{\mathcal {S}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\). Then (Gp) is S-isostatic if and only if \((G_0,\psi )\) is (2, 3, 1)-gain-tight.

Moreover, if S is a dihedral group \({\mathcal {C}}_{mv}\), where m is odd, then (Gp) is S-isostatic if and only if \(G_0\) is ‘maximum \({\mathcal {D}}\)-tight’ (as defined in [10, Def. 7.1]), i.e., if \(G_0\) satisfies conditions 1 and 2 in Theorem 7.

Proof

Let S be one of the groups listed above. We may think of an S-symmetric framework (Gp) supported on the unit sphere as the ‘coned framework’ \((G*0,p^*)\), where \((G*0,p^*)\) is the framework obtained from (Gp) by adding a new joint \(p_0\) at the origin (i.e., the centre of the sphere) which is linked to every joint of (Gp) by a bar. We may now invert vertex orbits (under the symmetry group S of \((G*0,p^*)\)) so that we obtain a framework on the upper half-sphere, and then project (gnomonically) the resulting framework from the origin to the plane \(z=1\). Note that this yields a framework (Gq) in the plane which also has symmetry S. Moreover, as shown in [30], the S-symmetric infinitesimal rigidity properties of \((G*0,p^*)\) and (Gq) are the same. Therefore, the result follows directly from [10, Theorems 6.3 and 8.2] and [31, Theorems 3.7 and 6.2]. \(\square \)

We note that in the cases of rotation and reflection symmetry groups, the proof techniques we employ below can easily be adapted to give direct inductive proofs of these results (see also [29]). We leave the details to the reader. We also point out that for these non-dihedral groups, we could also prove the theorem using [15, Theorems 3 and 4].

Note that for dihedral groups of the form \({\mathcal {C}}_{mv}\), where m is even, there does not exist a combinatorial characterisation of symmetry-generic symmetry-forced rigid frameworks in the plane. For example, it was shown in [10] that Bottema’s mechanism (a realisation of the complete bipartite graph \(K_{4,4}\) with \({\mathcal {C}}_{2v}\) symmetry in the plane) is falsely predicted to be \({\mathcal {C}}_{2v}\)-symmetric infinitesimally rigid by the sparsity counts for the orbit rigidity matrix. Thus, the corresponding results for the sphere also remain open.

In general, for any point group S of a framework on the sphere, except for the groups \({\mathcal {C}}_m\), \({\mathcal {C}}_s\), \({\mathcal {C}}_i\), \({\mathcal {C}}_{mh}\) and \({\mathcal {S}}_{2m}\) there are no tangential isometries (i.e., no rotations) which are S-symmetric. Thus, for those groups, we need to cope with the (2, 3, 0)-gain-sparsity count to establish characterisations for symmetry-forced rigidity on the sphere. This is a significant obstacle, as it was recently observed that this gain-sparsity count is in general not matroidal [10].

For the group \({\mathcal {C}}_i\), we will prove the following theorem in the subsequent sections.

Theorem 9

(Inversion symmetry on the sphere) Let S be the group \({\mathcal {C}}_i\) representing inversion symmetry. Let (Gp) be an S-generic framework in \({\mathscr {R}}^{{\mathcal {S}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\). Then (Gp) is S-isostatic if and only if \((G_0,\psi )\) is (2, 3, 3)-gain-tight.

Note that the covering graph of a (2, 3, 3)-gain-tight graph is not (2, 3)-tight. For example, for the group \({\mathcal {C}}_i\), a triangle whose edges all have trivial gains lifts to the disjoint union of two triangles. By Theorem 9, a \({\mathcal {C}}_i\)-generic realisation of this graph on the sphere is \({\mathcal {C}}_i\)-isostatic.

For the groups \({\mathcal {C}}_{mh}\), where m is odd, and \(S_{2m}\), where m is even, we will prove the following theorem in the subsequent sections.

Theorem 10

(Improper rotational symmetry on the sphere) Let S be the group \({\mathcal {C}}_{mh}\), where m is odd, or \(S_{2m}\), where m is even. Let (Gp) be an S-generic framework in \({\mathscr {R}}^{{\mathcal {S}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\). Then (Gp) is S-isostatic if and only if \((G_0,\psi )\) is (2, 3, 1)-gain-tight.

Table 1 Summary of counts for the various symmetry groups on the sphere \({\mathcal {S}}\)

For the remaining groups \({\mathcal {C}}_{mh}\), where m is even, and \({\mathcal {S}}_{2m}\), where m is odd, we will provide the corresponding conjectures in Sect. 10. (See also Table 1.) Note that these groups contain the group \({\mathcal {C}}_i\) as a subgroup (whereas \({\mathcal {C}}_{mh}\), where m is odd, and \({\mathcal {S}}_{2m}\), where m is even, do not). Thus, we need to consider gain-sparsity counts which depend on the groups \(\langle F\rangle _v\) induced by edge subsets F of the gain graph \(G_0\), since there is only a 1-dimensional space of rotations which is symmetric with respect to the subgroups \({\mathcal {C}}_{s}\), \({\mathcal {C}}_{m}\), \({\mathcal {C}}_{m'h}\), or \({\mathcal {S}}_{2m'}\), but there is a 3-dimensional space of rotations which is symmetric with respect to the inversion subgroup \({\mathcal {C}}_i\).

6.2 The cylinder

We now consider the case of the surface being a cylinder. Note that the cylinder has point group symmetry \({\mathcal {D}}_{\infty h}\), and hence the possible point groups of frameworks on the cylinder are \({\mathcal {C}}_s\), \({\mathcal {C}}_m\) (with the rotational axis being the axis of the cylinder for \(m>2\)), \({\mathcal {C}}_i\), \({\mathcal {C}}_{mv}\), \({\mathcal {C}}_{mh}\), \({\mathcal {D}}_{m}\), \({\mathcal {D}}_{mh}\), \({\mathcal {D}}_{md}\) and \(S_{2m}\).

We will prove the following two main theorems for the cylinder in the subsequent sections.

Theorem 11

(Rotation symmetry on the cylinder) Let S be the symmetry group \({\mathcal {C}}_m\) representing m-fold rotational symmetry around the z-axis. Let (Gp) be an S-generic framework in \({\mathscr {R}}^{{\mathcal {Y}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\). Then (Gp) is S-isostatic if and only if \((G_0,\psi )\) is (2, 2, 2)-gain-tight.

Theorem 12

(Reflection or inversion symmetry on the cylinder) Let S be the group \({\mathcal {C}}_s\) (where the mirror plane of the reflection either contains the z-axis or is equal to the plane \(z=0\)) or the inversion group \({\mathcal {C}}_i\). Let (Gp) be an S-generic framework in \({\mathscr {R}}^{{\mathcal {Y}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\). Then (Gp) is S-isostatic if and only if \(G_0\) is (2, 2, 1)-gain-tight.

We will discuss the remaining groups and provide some conjectures in Sect. 10. (See Table 2.)

Table 2 Summary of counts for the various symmetry groups on the cylinder \({\mathcal {Y}}\)

6.3 The cone

Note that the cone defined by the polynomial \(x^2+y^2=z^2\) has the same point group symmetry \({\mathcal {D}}_{\infty h}\) as the cylinder, and hence the possible point groups of frameworks on the cone are the same as the ones for the cylinder.

We will prove the following main theorem for the cone in the subsequent sections.

Theorem 13

(Reflection, rotation, inversion or improper rotational symmetry on the cone) Let S be the group \({\mathcal {C}}_m\) representing m-fold rotation around the z-axis, or the group \({\mathcal {C}}_s\) (where the mirror plane of the reflection is perpendicular to the z-axis), or the inversion group \({\mathcal {C}}_i\), or the group \({\mathcal {C}}_{mh}\), or the improper rotational group \(S_{2m}\). Let (Gp) be an S-generic framework in \({\mathscr {R}}^{{\mathcal {C}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\). Then (Gp) is S-isostatic if and only if \((G_0,\psi )\) is (2, 1, 1)-gain-tight.

Table 3 Summary of counts for the various symmetry groups on the cone \({\mathcal {C}}\)

Again we will return to the remaining groups in Sect. 10. (See Table 3.)

6.4 A note on (2, 2, 1)-gain-tight graphs

We finish this section by observing a corollary to Theorem 12 which points out that for certain types of graphs, groups and surfaces, generic rigidity (without symmetry) is equivalent to symmetry-generic symmetry-forced rigidity. We will need the following result.

Proposition 3

Let S be the group \({\mathbb {Z}}_2=\{0,1\}\), and let G be a simple S-symmetric graph, where the action \(\theta :S\rightarrow \mathrm {Aut}(G)\) is free on both V(G) and E(G). Then G is (2, 2)-tight if and only if its quotient S-gain graph \(G_0\) is (2, 2, 1)-gain-tight.

Proof

Suppose first that G is (2, 2)-tight, and \(G_0\) is not (2, 2, 1)-gain-tight. If \(|E(G_0)|\ne 2|V(G_0)|-1\), then \(|E(G)|\ne 2|V(G)|-2\), a contradiction. If \(|F|> 2|V(F)|-1\) for some \(F\subseteq E(G_0)\), then \(|c^{-1}(F)|>2|c^{-1}(V(F))|-2\), where \(c:G\rightarrow G_0\) is the covering map. This is a again a contradiction to G being (2, 2)-tight. Similarly, if \(|F|> 2|V(F)|-2\) for some balanced \(F\subseteq E(G_0)\), then, by Proposition 2, we may switch the vertices in V(F) so that each edge of F has trivial gain. But then E(G) contains a copy of F as a subset, which again violates the (2, 2)-tightness of G.

Conversely, suppose that \(G_0\) is (2, 2, 1)-gain-tight, but G is not (2, 2)-tight. Clearly, if \(|E(G)|\ne 2|V(G)|-2\), then \(|E(G_0)|\ne 2|V(G_0)|-1\), a contradiction. Thus, there exists a subgraph H of G with \(|E(H)|> 2|V(H)|-2\). Note that H is not S-symmetric, for otherwise c(H) violates the (2, 2, 1)-gain-sparsity count. Clearly, we may choose H so that it has a minimal number of vertices, and we may then remove edges if necessary so that \(|E(H)|= 2|V(H)|-1\). Let \(H'\) be the symmetric copy of H, i.e., \(H'\) has the vertex set \(\{\theta (1)(v) |\,v\in V(H)\}\) and edge set \(\{\theta (1)(e) |\,e\in E(H)\}\). By symmetry, we have \(|E(H')|= 2|V(H')|-1\).

Claim

If \(V(H\cap H')=\emptyset \), then \(c(H\cup H')\) is balanced.

Proof

Suppose \(V(H \cap H')=\emptyset \) and \(c(H\cup H')\) is unbalanced. Then there exists an unbalanced cycle C in \(c(H\cup H')\) and we may switch the vertices of C so that all edges of C have gain 0, except for a single edge, say (vw). Then in \(H\cup H'\) we have the edges \(\{v, \theta (1)(w)\}\) and \(\{\theta (1)(v),w\}\), as well as paths from v to w and from \(\theta (1)(v)\) to \(\theta (1)(w)\). If \(\{v, \theta (1)(w)\}\) and \(\{\theta (1)(v),w\}\) are both in E(H), then they are also both in \(E(H')\), a contradiction. Analogously, we obtain a contradiction if \(\{v, \theta (1)(w)\},\{\theta (1)(v),w\}\in E(H')\).

Thus, w.l.o.g. we may assume that \(\{v, \theta (1)(w)\}\in E(H)\setminus E(H')\) and \(\{\theta (1)(v),w\}\in E(H')\setminus E(H)\). Consider a path \(v, v_1, v_2, \ldots , v_k, w\) from v to w in \(H\cup H'\). Clearly, \(\{v,v_1\}\in E(H)\setminus E(H')\) for otherwise \(v\in V(H\cap H')\). Continuing in this fashion, we deduce that \(\{v_k,w\}\in E(H)\setminus E(H')\). Thus, \(w\in V(H)\). However, w is also a vertex of \(H'\) since \(\{\theta (1)(v),w\}\in E(H')\setminus E(H)\). This contradicts \(V(H \cap H')=\emptyset \), and the proof of the claim is complete. \(\square \)

Now, suppose first that \(V(H\cap H')=\emptyset \). Then we have \(|E(H \cup H')|= 2|V(H)|-1 +2|V(H' )|-1= 2|V(H \cup H')|-2\), and hence \(|c(E(H\cup H'))|=2|c(V(H\cup H'))|-1\). Thus, \(c(H\cup H')\) violates the (2, 2, 1)-gain-sparsity count since \(c(H\cup H')\) is balanced (by the claim).

So it remains to consider the case \(V(H\cap H')\ne \emptyset \). Since H is not S-symmetric, we have \(H\ne H'\). Thus, by the minimality of H, we have \(|E(H\cap H')|\le 2|V(H\cap H')|-2\). It follows that \(|E(H \cup H')|\ge 2|V(H)|-1 +2|V(H' )|-1- (2|V(H\cap H')|-2)= 2|V(H \cup H')|\). Thus, \(|c(E(H\cup H'))|\ge 2|c(V(H\cup H'))|\), and hence \(c(H\cup H')\) violates the (2, 2, 1)-gain-sparsity count. \(\square \)

Thus, by combining Theorem 3 with Theorem 12, it follows that for a graph G, satisfying the conditions of Proposition 3, a generic realisation of G on the cylinder \({\mathcal {Y}}\) is isostatic if and only if an S-generic realisation of G on \({\mathcal {Y}}\) is S-isostatic, where \(S={\mathcal {C}}_s\) or \({\mathcal {C}}_i\) (see also Conjecture 5).

7 Inductive constructions

To prove Theorems 913 we will make use of a celebrated proof technique in rigidity theory: an inductive proof using Henneberg-type graph constructions [10, 18, 20, 22, 29, 36]. This comes in two steps. First we prove a characterisation of \((2,k,k_S)\)-gain-tight graphs, for the relevant choices of k and \(k_S\), showing that all such graphs can be generated from the smallest such graph, or graphs, by simple operations. Then we apply these operations to frameworks and show that they preserve the dimension of the nullspace of the orbit-surface rigidity matrix.

7.1 Admissible operations

Let \((H,\psi )\) be an S-gain graph with a simple covering graph. The Henneberg 1 move is the addition of a new vertex v and two edges \(e_1\) and \(e_2\) to H such that the new edges are incident with v and are not both loops at v. The three possible ways this can be done are illustrated in Fig. 5. (Note that we require the covering graph to remain simple, and hence some possibilities may not be available for a given group S.) If \(e_1\) and \(e_2\) are not loops and not parallel edges, then their labels can be arbitrary. This move is called H1a and is depicted in Fig. 5a. If they are non-loops, but parallel edges, then the labels are assigned so that \(\psi (e_1)\ne \psi (e_2)\), assuming that \(e_1\) and \(e_2\) are directed to v. This move is called H1b and is depicted in Fig. 5b. Finally, if one of the edges, say \(e_1\), is a loop at v, then we set \(\psi (e_1)\ne id\). This move is called H1c and is depicted in Fig. 5c.

Fig. 5
figure 5

H1a, H1b and H1c moves. Directions and gain labels of the edges are omitted in the figure

The Henneberg 2 move deletes an edge of \((H,\psi )\) and adds a new vertex and three new edges to \((H,\psi )\). First, one chooses an edge e of H (which will be deleted) and a vertex z of H which may be an end-vertex of e. Then one subdivides e, with a new vertex v and new edges \(e_1\) and \(e_2\), such that the tail of \(e_1\) is the tail of e and the tail of \(e_2\) is the head of e. The gains of the new edges are assigned so that \(\psi (e_1)\cdot \psi (e_2)^{-1}=\psi (e)\). Finally, we add a third new edge, \(e_3\), to H. This edge is oriented from z to v and its gain is such that every 2-cycle \(e_i e_j\), if it exists, is unbalanced. There are four possible ways this can be done, as illustrated in Fig. 6. (Since the covering graph must again remain simple, some possibilities may not be available for a given group S.)

Suppose first that the edge e is not a loop. If none of the edges \(e_i\) is a loop or a parallel edge, then the move is called H2a (see Fig. 6a). If none of the edges \(e_i\) is a loop, but exactly two of the edges are parallel edges (i.e., z is an end-vertex of e), then the move is called H2b (see Fig. 6b). If the edge e is a loop, then the moves corresponding to H2a and H2b are called H2c and H2d, respectively (see Fig. 6c, d).

Fig. 6
figure 6

H2a, H2b, H2c and H2d moves. Directions and gain labels of the edges are omitted in the figure

For a \((2,k,k_S)\)-gain-tight S-gain graph \((H,\psi )\), an inverse Henneberg 1 or 2 move on \(v\in V(G_0)\) is admissible if the resulting S-gain graph \(H'\) is \((2,k,k_S)\)-gain-tight and the covering graph of \(H'\) is simple.

A vertex-to- \(K_4\) operation on an S-gain graph \((H,\psi )\) removes a vertex v (of arbitrary degree) and all the edges incident with v, and adds in a copy of \(K_4\) with only trivial gains (see also Fig. 7). Without loss of generality we may assume that all edges incident with v are directed to v, i.e., are of the form (xv) for some \(x\in V(H)\). Each removed edge (xv) is replaced by an edge (xy) for some y in the new \(K_4\), where the gain is preserved, that is, \(\psi ((x,v))=\psi ((x,y))\).

For a \((2,k,k_S)\)-gain-tight S-gain graph \((H,\psi )\), the inverse move, a \(K_4\) -contraction on a copy of \(K_4\) with only trivial gains is admissible if the resulting graph \(H'\) is \((2,k,k_S)\)-gain-tight and the covering graph is simple. Note that we only apply the \(K_4\)-contraction when there are no additional edges induced by the vertices of the \(K_4\).

Fig. 7
figure 7

The vertex-to-\(K_4\) operation (in this case expanding a degree 4 vertex which is not incident to any loop). Directions and gain labels of the edges are omitted

In the following, an edge \(e=(x,v)\) with gain \(\psi (e)\) in \((H,\psi )\) will be denoted by \((x,v)_{\psi (e)}\). A vertex-to-4-cycle operation on an S-gain graph \((H,\psi )\) removes a vertex v and all the edges incident with v, adds in two new vertices \(v_1,v_2\), and chooses two neighbours ab of v (w.l.o.g. with edges \((a,v)_\alpha \) and \((b,v)_\beta \)) and creates a 4-cycle \(a,v_1,b,v_2\) with edges \((a,v_1)_\alpha , (a,v_2)_\alpha , (b,v_1)_\beta , (b,v_2)_\beta \) (see also Fig. 8). Each of the removed edges (xv), \(x\ne a,b\), is replaced by an edge \((x,v_i)\) for some \(i=1,2\), where the gain is preserved, that is, \(\psi ((x,v))=\psi ((x,v_i))\). If the deleted vertex v is incident to a loop (vv) in H (this may be the case if H is \((2,k,k_S)\)-gain tight for \(k_S=1\), for example), then this loop is replaced by a loop \((v_i,v_i)\) (with the same gain) for some \(i=1,2\).

The inverse operation, a 4-cycle contraction, on a \((2,k,k_S)\)-gain-tight S-gain graph is admissible if the resulting graph \(H'\) is \((2,k,k_S)\)-gain-tight and the covering graph of \(H'\) is simple. It will suffice for our purposes to contract only 4-cycles in which each edge has trivial gain. Thus, we may restrict to \(\alpha \) and \(\beta \) above both equaling the identity, so it is easy to see that if H is \((2,k,k_S)\)-gain-tight, then applying a vertex-to-4-cycle operation to H results in a \((2,k,k_S)\)-gain-tight graph.

Fig. 8
figure 8

The vertex-to-4-cycle operation. Directions and gain labels of the edges are omitted

An edge joining operation takes two (2, k, 1)-gain-tight S-gain graphs \(H_0,H_1\) and creates the graph \(H_0 \oplus H_1\) which has vertex set the disjoint union of \(V(H_0)\) and \(V(H_1)\) and edge set \(E(H_0)\cup E(H_1) \cup \{(a,b)\}\) where \(a\in V(H_0)\) and \(b\in V(H_1)\) is an edge with arbitrary gain. It is clear that \(H_0 \oplus H_1\) is (2, k, 1)-gain-tight if and only if \(H_0\) and \(H_1\) are (2, k, 1)-gain-tight.

Note that in the covering graph, each of the above operations is a graph operation that preserves the underlying symmetry. Some of them can be recognised as performing standard—non-symmetric—Henneberg operations [27, 36] simultaneously.

7.2 Recursive characterisations

We now derive inductive constructions for (2, ii)-gain-tight graphs, where \(i=1,2,3\), and for (2, 2, 1)-gain-tight graphs. Inductive constructions of (2, 3, 1)-gain tight graphs were established in [10, Theorem 4.4] (using Henneberg 1 and Henneberg 2 moves only). Note that as the balanced and unbalanced subgraph conditions are the same for (2, ii)-gain-tight graphs, \(i=1,2,3\), we do not need to worry about preserving cycles with non-trivial gain in the first three theorems.

For a vertex v of a directed multi-graph \(G_0\), we will denote the set of vertices which are adjacent to v (in the underlying undirected multi-graph) by N(v). Each of the vertices in N(v) is called a neighbour of v in \(G_0\).

In the following 4 theorems it is easy to establish that the operations under consideration preserve \((2,\ell ,m)\)-gain-sparsity. We concentrate on the converse where in all 4 cases it is clear that the minimum degree is 2 or 3.

Theorem 14

Let S be a group, G be a simple graph and \((G_0,\psi )\) be its quotient S-gain graph. Then \((G_0,\psi )\) is (2, 3, 3)-gain-tight if and only if \((G_0,\psi )\) can be constructed sequentially from \(K_2\) by H1a and H2a operations.

Proof

Note that if \(G_0\) is (2, 3, 3)-gain-tight, then it cannot contain any loop or multiple edges. It is easy to see that if there exists a vertex \(v\in V(G_0)\) of degree 2, then the removal of v yields another (2, 3, 3)-gain-tight graph. Thus, we may assume that \(G_0\) has no vertex of degree 2. Since \(G_0\) is (2, 3, 3)-gain-tight, every vertex of degree 3 must have three distinct neighbors. But now, standard arguments can be used to show that an inverse H2a operation (performed on one of the degree 3 vertices and one pair of its neighbors) preserves (2, 3, 3)-gain-tightness [13, 27]. \(\square \)

The next two theorems are reminiscent of [18, Theorems 3.1 and 1.2]. The new difficulty being the existence of loops and multiple edges with certain gains. We will need the following lemma.

Lemma 4

Let \(G_0\) be a (2, ii)-gain-tight gain graph whose covering graph is simple, for \(i=1,2\), with a degree 3 vertex v with \(N(v)=\{a,b,c\}\). Then either v is contained in a copy of \(K_4\) whose gain labelling is equivalent to the trivial gain labelling or there is an inverse H2a move on v that results in a (2, ii)-gain-tight gain graph \(G_0'\) whose covering graph is simple.

Proof

Let \(\alpha ,\beta ,\gamma \) be the gains on (va), (vb), (vc) respectively. If the edges \((a,b),(a,c),(b,c)\) are all present with gains \(\beta -\alpha ,\gamma -\alpha \) and \(\gamma -\beta \) respectively, then any inverse H2a move will give a gain graph whose covering graph is not simple. In this case, though, the \(K_4\) defined by these vertices and edges is balanced so Propositions 1 and 2 show the labelling is equivalent to the trivial gain labelling.

Thus we may suppose that not all 3 of these edges (with the specified gains) are present. Now we can forget the gains and argue exactly as in [17, Lemma 3.1]. That is, by pure counting arguments, we deduce that, if \((a,b)_{\beta -\alpha }\) is not present then either there is an inverse H2a move adding \((a,b)_{\beta -\alpha }\) or another of the edges, say \((a,c)_{\gamma -\alpha }\), is not present and either we can add that edge or the third edge \((b,c)_{\gamma -\beta }\) is not present and we can add at least one of the edges. \(\square \)

Theorem 15

Let S be a group, G be a simple graph and \((G_0,\psi )\) be its quotient S-gain graph. Then \((G_0,\psi )\) is (2, 2, 2)-gain-tight if and only if \((G_0,\psi )\) can be constructed sequentially from \(K_1\) by H1a, H1b, H2a, H2b, vertex-to-\(K_4\) and vertex-to-4-cycle operations.

Proof

Note that if \(G_0\) is (2, 2, 2)-gain-tight, then it cannot contain any loop. If there is no inverse H1a or H1b move then \(G_0\) has minimum degree 3. It is elementary to show that a degree 3 vertex with exactly two neighbours can always be reduced using an inverse H2b move. So we may suppose that every degree 3 vertex v has 3 distinct neighbours. By Lemma 4, we may assume that v is contained in a \(K_4\) whose gain labelling is equivalent to the trivial gain labelling. The vertices of this \(K_4\) can induce no additional edges since \(G_0\) is (2, 2, 2)-gain-tight. Denote this copy of \(K_4\) as K. K is admissible for a \(K_4\)-to-vertex contraction unless there is a vertex \(x \notin K\) and edges (xa), (xb) for \(a,b\in K\) with equal gains. Since the final vertex \(c\in K\) is not adjacent to x, simple counting [18] shows there is a 4-cycle contraction merging v and x which results in a (2, 2, 2)-gain-tight graph contrary to our assumption. \(\square \)

Theorem 16

Let S be a group, G be a simple graph, and \((G_0,\psi )\) be its quotient S-gain graph. Then \((G_0,\psi )\) is (2, 1, 1)-gain-tight if and only if \((G_0,\psi )\) can be constructed sequentially from either a single vertex with an unbalanced loop, \(K_4+e\) (with trivial gains on the \(K_4\) and a non-trivial gain on e) or \(K_5-e\) (with trivial gain on every edge) by H1a, H1b, H1c, H2a, H2b, H2c, H2d, vertex-to-\(K_4\), vertex-to-4-cycle and edge joining operations.

In the proof we use the terminology 2G to refer to the graph with vertex set V(G) and 2 copies of each edge in E(G). Of course we will be referring to gain graphs, so some appropriate gain assignment is assumed. It will also be convenient to define \(f(G):=2|V(G)|-|E(G)|\).

Proof

Note that \(G_0\) may contain loops. If there is no inverse H1a, H1b or H1c move then the minimum degree in \(G_0\) is 3 and any such vertex has no self-loop. If there is no inverse H2d move then any such vertex v has at least two neighbours.

Suppose \(N(v)=\{a,b\}\) and there are two edges from a to v. If there is at most one edge between a and b then any \(H_0 \subset G_0\) containing a and b has \(f(H_0)\ge 2\). Since the two edges from a to v have different gains (since G is simple) it is easy to see that we can choose a gain for a new edge ab that makes \(H_0+ ab\) unbalanced. Thus we may assume v is contained in a copy of \(2K_3-e\). However, now there is an inverse H2c move.

Therefore, we may suppose that v has 3 distinct neighbours. By Lemma 4, we may assume that v is contained in a \(K_4\) whose gain labelling is equivalent to the trivial gain labelling. Denote this copy as K and suppose, for now, that the vertices of K induce no additional edges.

K admits an admissible \(K_4\)-to-vertex contraction unless there is a vertex \(x \notin K\) and edges (xa), (xb) for \(a,b\in K\) with equal gains. By switching, we may assume that the edges of K and the edges (xa), (xb) have all trivial gain. In such case there is a 4-cycle contraction merging v and x which results in a (2, 1, 1)-gain-tight graph unless for the final vertex \(c\in K\) the edge \((x,c)\in E(G_0)\) with \(\psi ((x,c))=id\). (Note that if \(\psi ((x,c))=id\), then \(\psi ((x,c))=\psi ((v,c))=id\) so that a 4-cycle-contraction would not result in a simple covering graph.)

Now, the graph induced by vabc and x is a copy of \(K_5-e\). Repeat the whole process for every degree 3 vertex. This gives us copies of \(K_5-e\) or, if the vertices of K did induce additional edges, copies of \(K_4+e\) (with non-zero gain on e).

We now argue as in [17, Lemma 4.10]. Let \(Y=\{Y_1,\ldots ,Y_n\}\) be the subgraphs which are copies of \(K_5- e\) or \(K_4+e\). They are necessarily vertex disjoint since \(f(Y_i\cup Y_j)=2-f(Y_i\cap Y_j)\) and every proper subgraph X of \(K_5- e\) or \(K_4+e\) has \(f(X) \ge 2\). Let \(V_0\) and \(E_0\) be the sets of vertices and edges of \(G_0\) which are in none of the \(Y_i\). Then

$$\begin{aligned} f(G_0)=\sum _{i=1}^nf(Y_i)+2|V_0|-|E_0| \end{aligned}$$

so \(|E_0|=2|V_0|+n-1.\) Each vertex in \(V_0\) is incident to at least 4 edges. If every \(Y_i\) is incident to at least 2 edges in \(E_0\), then there are at least \(4|V_0|+2n\) edge/vertex incidences in \(E_0\). This implies \(|E_0|\ge 2|V_0|+n\), a contradiction. Thus, either there is a copy \(Y_i\) with no incidences, which would imply \(G_0=Y_i=K_5-e\) or \(G_0=Y_i=K_4+e\), since \(G_0\) is connected, or there is a copy with one incidence, i.e., \(G_0\) contains a bridge and there is an edge separation move on this bridge contrary to our assumption. \(\square \)

For the following we have to be more careful to preserve the gain-sparsity of subgraphs.

Theorem 17

Let S be a group of order 2, G be a simple graph and \((G_0,\psi )\) be its quotient S-gain graph. Then \((G_0,\psi )\) is (2, 2, 1)-gain-tight if and only if \((G_0,\psi )\) can be constructed sequentially from a single vertex with an unbalanced loop or from \(K_4+e\) (where the \(K_4\) has trivial gains and e has a non-trivial gain) by H1a, H1b, H1c, H2a, H2b, H2c, vertex-to-\(K_4\), vertex-to-4-cycle and edge joining operations.

Proof

We will think of S as the group \({\mathbb {Z}}_2=\{0,1\}\) with addition as the group operation. If there is no inverse H1a, H1b or H1c move then the minimum degree in G is 3 and any such vertex has no self-loop. Since S has order 2, any such vertex v has at least two neighbours.

First, suppose \(N(v)=\{a,b\}\). Suppose that v is not contained in a copy of \(2K_3-e\). It suffices to check the case when a and b are not joined by an edge in \(G_0\). If there is no admissible H2b move, then it is straightforward to deduce that there are distinct subgraphs \(H_1,H_2\) of \(G_0-v\) with \(a,b\in V(H_i)\), \(f(H_i)=2\) for \(i=1,2\) and all paths in \(H_i\) from a to b have gain \(\alpha _i\) where \(\alpha _1\ne \alpha _2\). (The gain of a path in a gain graph is defined analogously to the gain of a closed walk (recall Sect. 3.2).) Then \(H_1\cap H_2\) is connected since \(f(H_1\cap H_2)=2\), which implies that all paths from a to b in \(H_1\cap H_2\) have 2 distinct gains, a contradiction. Thus, there is a choice of gain for the edge (ab) so that the corresponding inverse H2b move is admissible. Thus v is contained in a copy of \(2K_3-e\) (with appropriate gains). However, now there is an inverse H2c move.

Now let \(N(v)=\{a,b,c\}\).

Claim

v is contained in a copy of \(K_4\) in which every edge has gain 0 (after appropriate gain switching).

Proof

We will show that if v is not contained in a copy of \(K_4\) with gain 0 on every edge, then there is an admissible H2a move.

Let \(\alpha _{av}, \alpha _{bv}, \alpha _{cv}\) be the gains on the edges (av), (bv), (cv). Suppose first that \((a,b)_{\alpha _{av}-\alpha _{bv}}\) and \( (b,c)_{\alpha _{bv}-\alpha _{cv}} \notin E(G_0)\) (the edges (ab) and (bc) with other gains, or the edge (ac) with any gain may or may not be in \(E(G_0)\)). See Fig. 9. If there is no admissible H2a move, then there must exist balanced subgraphs \(H_{ab}\) of \(G_0-v\) such that \(a,b \in V(H_{ab})\) and \(f(H_{ab})=2\) and \(H_{bc}\) such that \(b,c \in V(H_{bc})\) and \(f(H_{bc})=2\). If \(c \in V(H_{ab})\) then let \(H=H_{ab}\) and adding v and its 3 incident edges to H gives a graph \(H^*\) with \(f(H^*)=1\). Similarly if \(a \in V(H_{bc})\) then we can let \(H=H_{bc}\). If \(c\notin V(H_{ab})\) and \(a\notin V(H_{bc})\) then we still must have \(f(H_{ab} \cup H_{bc})=2\). Thus we can let \(H=H_{ab}\cup H_{bc}\) and adding v and its 3 incident edges to H gives a graph \(H^*\) with \(f(H^*)=1\). \(H_{ab}\cap H_{bc}\) is connected, so Lemma 2 implies H is balanced.

Since H is balanced we may apply gain switches to make every edge have identity gain. Now, consider the three edges vavb and vc. If they all have 0 gains, then \(H^*\) is balanced, contrary to the fact that \(f(H^*)=1\). If they all have gain 1, then we can switch v using Proposition 1 and again \(H^*\) is balanced, a contradiction.

Fig. 9
figure 9

The first two cases in the proof of the claim. Directions and labels omitted

By switching v now, we may assume w.l.o.g. that va has gain 1 and vb and vc have gain 0. Since \(H_{ab}\) is connected, there is a path P (with gain 0 on each edge) from a to b. Now, P together with va and vb is an unbalanced cycle. Thus, if we do an inverse H2a move (adding the edge ab with gain 1), then \(H_{ab} \cup ab\) is unbalanced with the correct count so the move was valid.

Now suppose that \((a,b)_{\alpha _{av}-\alpha _{bv}} \notin E(G_0)\) but \( (a,c)_{\alpha _{av}-\alpha _{cv}}\) and \((b,c)_{\alpha _{bv}-\alpha _{cv}} \in E(G_0)\). By Proposition 1, we may then assume that the gains of (va), (vb), (vc), (ac), (bc) are all 0. See Fig. 9. If \(H_{ab}\) is a subgraph of \(G_0-v\) containing ab but not c, then \(f(H_{ab})\ge 2\). We are done unless equality holds and \(H_{ab}\) is balanced. Now consider paths from a to b in \(H_{ab}\). If all such paths have 0 gain then all cycles in \(H_{ab}\cup v \cup c\) (along with the relevant edges) have gain 0, but \(f(H_{ab}\cup v \cup c)=1\). Thus, there must be a path from a to b with gain 1 and adding (ab) with gain 0 during the inverse H2a move gives an unbalanced subgraph, as required.

Finally, suppose \((a,b)_{\alpha _{av}-\alpha _{bv}}, (a,c)_{\alpha _{av}-\alpha _{cv}}\) and \((b,c)_{\alpha _{bv}-\alpha _{cv}} \in E(G_0)\). By Proposition 1, we may switch vertices to make a copy of \(K_4\) with gain 0 on each edge. \(\square \)

Let K denote the copy of \(K_4\) containing v. As in the previous proof, we suppose first that v belongs to a \(K_4\) whose vertices induce no additional edge. Since we cannot apply a \(K_4\)-contraction, there are vertices \(a,b \in K\) and a vertex \(x \notin K\) such that \((a,x)_{\alpha },(b,x)_{\alpha } \in E(G_0)\). To see this, note that any unbalanced subgraph containing K is still unbalanced as a subgraph of the contracted graph. Now let c be the final vertex in K.

Claim

\((c,x) \in E(G_0)\).

Proof

Suppose \((c,x) \notin E(G_0)\). By applying Proposition 1 to x (if necessary) we may assume that the 4-cycle C induced by vabx has label 0 on each edge. Apply 4-cycle contraction to C merging v and x. It is routine, as in the previous proofs, to check that the counts hold for unbalanced subgraphs. The sparsity conditions for balanced subgraphs hold since every edge of C (and K) has gain 0. \(\square \)

We have shown that the subgraph induced by K and x is (2, 1)-tight. When the vertices of K induce an additional edge we have a \(K_4+e\). Finally, we may show, exactly as in the proof of the previous theorem, that \(G_0\) contains a bridge. Note that this time the copies of \(K_5-e\) must have edges with non-zero gain since \(G_0\) is (2, 2, 1)-gain-tight so the case when \(G_0=Y_i=K_5-e\) cannot happen (an inverse H2a move would have been possible by the first claim). \(\square \)

We will briefly discuss extensions to (klm)-gain-tight graphs for other triples in the final section.

8 Operations on frameworks supported on surfaces

We now consider the geometric question of how these inductive operations behave as operations on frameworks rather than on graphs. We pursue this by a combination of limiting arguments and matrix techniques using the orbit-surface rigidity matrix and making extensive use of results in [18, 19, 35].

8.1 Henneberg moves

Our first lemma is simple linear algebra.

Lemma 5

Let \({\mathcal {M}}\in \{{\mathcal {S}},{\mathcal {Y}},{\mathcal {C}}\}\) and let S be any possible point group. Let (Gp) be an S-regular S-isostatic framework in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\). Let \((G_0',\psi ')\) be formed from \((G_0,\psi )\) by a Henneberg 1 move and let \(G'\) be the corresponding covering graph. Then any S-regular realisation of \(G'\) is S-isostatic.

Proof

Let \((G',p')\) be an S-regular realisation of \(G'\). Then simply note that by the block structure of \(O_{\mathcal {M}}(G',p',S)\) and the regularity of \((G',p')\), we have

$$\begin{aligned} {\text {rank}}O_{\mathcal {M}}(G',p',S)= {\text {rank}}O_{\mathcal {M}}(G,p,S)+3. \end{aligned}$$

\(\square \)

Our second lemma is more involved but by utilising the proof technique of [18, Lemma 4.2] we can still argue for any group and surface simultaneously.

Lemma 6

Let \({\mathcal {M}}\in \{{\mathcal {S}},{\mathcal {Y}},{\mathcal {C}}\}\) and let S be any possible point group. Let (Gp) be an S-generic S-isostatic framework in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\). Let \((G_0',\psi ')\) be formed from \((G_0,\psi )\) by a Henneberg 2 move and let \(G'\) be the corresponding covering graph. Then any S-generic realisation of \(G'\) is S-isostatic.

Proof

Let \(S=\{x_1=id,x_2,\ldots , x_{|S|}\}\). For an edge \(e_0=(1,2)\) (with gain \(\alpha \in S\)) in \(G_0\) we apply the argument in [18, Lemma 4.2] simultaneously to each edge in the edge orbit \(c^{-1}(e_0)\), where \(c:G\rightarrow G_0\) is the covering map. (Note that if \(e_0\) is a loop, then the proof follows analogously.) Suppose \(V(G_0')=V(G_0)\cup \{0\}\) and let \(p'=(p_{x_1(0)}, p_{x_2(0)},\ldots , p_{x_{|S|}(0)},p)\), where \((G',p')\) is S-generic. Suppose that \((G',p')\) is not S-symmetric infinitesimally rigid. Then it follows that every specialised framework in \({\mathscr {R}}^{{\mathcal {M}}}_{(G',S,\theta )}\) is S-symmetric infinitesimally flexible. Let \(x_i(a)\) and \(x_i(b)\) be orthogonal tangent vectors at \(p_{x_i\circ \alpha (2)}\) where \(x_i(b)\) is orthogonal to \(p_{x_i\circ \alpha (2)}-p_{x_i(1)}\). Consider a sequence of specialisations \((G', p^k)\) in which only the joints \(p_{x_1(0)},\ldots , p_{x_{|S|}(0)}\) are specialised to the joints \(p_{x_1(0)}^k,\ldots , p_{x_{|S|}(0)}^k\), respectively, and for each \(i=1,\ldots , |S|\), \(p_{x_i(0)}^k\) tends to \(p_{x_i\circ \alpha (2)}\) in the direction \(x_i(a)\). See Fig. 10. More precisely, the normalised vector \((p_{x_i\circ \alpha (2)}-p_{x_i(0)}^k)/\Vert p_{x_i\circ \alpha (2)}-p_{x_i(0)}^k\Vert \) converges to \(x_i(a)\), as \(k\rightarrow \infty \).

Fig. 10
figure 10

An illustration of the specialisation in the case \(S={\mathcal {C}}_3\)

Each of the S-symmetric frameworks \((G', p^k)\) has a unit norm non-trivial S-symmetric infinitesimal motion \(u^k\) which is orthogonal to the space of S-symmetric trivial infinitesimal motions of its framework, \((G',p^k)\). By the Bolzano–Weierstrass theorem there is a subsequence of the sequence \(u^k\) which converges to a vector, \(u^\infty \) say, of unit norm. Discarding framework points and relabeling we may assume this holds for the original sequence. The S-symmetric limit motion of the degenerate S-symmetric framework \((G',p^\infty )\) is denoted by \(u^\infty =(u_{x_1(0)}^\infty , u_{x_2(0)}^\infty ,\ldots , u_{x_{|S|}(0)}^\infty ,u)\). Also, we have \(p^\infty =(p_{x_1\circ \alpha (2)}, p_{x_2\circ \alpha (2)},\ldots , p_{x_{|S|}\circ \alpha (2)},p)\).

We claim that the velocities \(u_{x_i(1)}, u_{x_i\circ \alpha (2)}\) give an S-symmetric infinitesimal motion of the framework on \({\mathcal {M}}\) consisting of the bars joining \(p_{x_i(1)}\) and \(p_{x_i\circ \alpha (2)}\), \(i=1,\ldots , |S|\). To see this note that in view of the well-behaved convergence of \(p_{x_i(0)}^k\) to \(p_{x_i\circ \alpha (2)}\) (in the \(x_i(a)\) direction) it follows that the velocities \(u_{x_i\circ \alpha (2)}\) and \(u_{x_i(0)}^\infty \) have the same component in the \(x_i(a)\) direction, and so \((u_{x_i\circ \alpha (2)} -u_{x_i(0)}^\infty )\cdot x_i(a)=0\). Since \(u_{x_i\circ \alpha (2)} -u_{x_i(0)}^\infty \) is tangential to \({\mathcal {M}}\) it follows from the choice of \(x_i(a)\) that \(u_{x_i\circ \alpha (2)} -u_{x_i(0)}^\infty \) is orthogonal to \(p_{x_i\circ \alpha (2)}-p_{x_i(1)}\). On the other hand \(u_{x_i(1)}-u_{x_i(0)}^\infty \) is orthogonal to \(p_{x_i\circ \alpha (2)}-p_{x_i(1)}\) and so taking differences \(u_{x_i\circ \alpha (2)} -u_{x_i(1)}\) is orthogonal to \(p_{x_2\circ \alpha (2)}-p_{x_i(1)}\), as desired.

It now follows, by the symmetry-forced rigidity of (Gp) and (hence) the symmetry-forced rigidity of the degenerate framework \((G',p^\infty )\), that the restriction motion \(u^\infty _\mathrm{res}=u\), and hence \(u^\infty \) itself, is a trivial S-symmetric infinitesimal motion. This is a contradiction since the motion has unit norm and is orthogonal to the space of trivial S-symmetric infinitesimal motions. \(\square \)

8.2 Vertex surgery moves

We now consider the vertex-to-\(K_4\) move. For rotational symmetry on the cylinder we present a direct matrix argument.

Lemma 7

Let S be \({\mathcal {C}}_m\) with the z-axis as the rotational axis. Let (Gp) be an S-generic S-isostatic framework in \({\mathscr {R}}^{{\mathcal {Y}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\) and let \((G_0',\psi ')\) be formed from \((G_0,\psi )\) by a vertex-to-\(K_4\) move. Then any S-generic realisation of the covering graph \(G'\) of \((G_0',\psi ')\) is S-isostatic.

Proof

The proof is similar to [19, Lemma 5.2] with \(K_4\) replacing H. Let n = \(|V(G_0')|\). Let \(v_*\) be a fixed vertex of \(K_4\). Let \((G',p')\) be S-generic. Consider the orbit-surface rigidity matrix \(O_{{\mathcal {Y}}}(G',p',S)\) with column triples in the order of \(v_1, v_2 ,v_{3}, v_*, v_{5}, \ldots , v_n\) where \(v_1, v_2,v_3 ,v_4=v_*\) are the vertices of \(K_4\). Order the rows of \(O_{{\mathcal {Y}}}(G',p',S)\) in the order of the edges \(e_1, \ldots ,e_6\) for \(K_4\) followed by the n rows of the block diagonal matrix whose diagonal entries are the respective normal vectors to \({\mathcal {Y}}\) at \(p'_1,\ldots , p'_n\), followed by the remaining rows for the edges of \(E(G_0')\setminus E(K_4)\). Note that the submatrix formed by the first 10 rows is the 1 by 2 block matrix

$$\begin{aligned} \begin{bmatrix} O_{{\mathcal {Y}}}(c^{-1}(K_4),p',S)&\quad 0 \end{bmatrix}, \end{aligned}$$

where \(c:G'\rightarrow G_0'\) is the covering map. Suppose, by way of contradiction, that \(G_0'\) is not S-isostatic. Then, there is a vector u in the kernel of \(O_{{\mathcal {Y}}}(G',p',S)\) which corresponds to an S-symmetric non-trivial infinitesimal motion.

Claim

W.l.o.g. we may assume that \(u_{K_4}=0\).

Proof

We will identify an S-symmetric infinitesimal motion of a framework (Gp) with its restriction to the vertices of the quotient S-gain graph \(G_0\) of G.

By adding to u some trivial S-symmetric infinitesimal motion, we may assume that \(u_4=0\). Write \(u=(u_{K_4}, u_{G_0'\setminus K_4})\) where \(u_{K_4} = (u_1^x,u_1^y, u_1^z, \ldots ,u_4^x,u_4^y, u_4^z)\). The matrix \(O_{{\mathcal {Y}}}(G',p',S)\) has the block form

$$\begin{aligned} O_{{\mathcal {Y}}}(G',p',S)= \begin{bmatrix} O_{{\mathcal {Y}}}(c^{-1}(K_4),p',S)&\quad 0\\ X_1&\quad X_2 \end{bmatrix} \end{aligned}$$

where \(X =[X_1\, X_2]\) is the matrix formed by the last \(|E(G')|- 6+n-4\) rows. Since \(K_4\) is S-isostatic on \({\mathcal {Y}}\) and \(O_{{\mathcal {Y}}}(c^{-1}(K_4),p',S)u_{K_4}=0\) it follows that \(u_{K_4}\) is an S-symmetric trivial infinitesimal motion. But \(u_4=0\) and so \(u_{K_4} =0\). \(\square \)

Consider now the framework vector \(\tilde{p}=(p_4,p_4,p_4,p_4,p_{5},\ldots ,p_n)\) in which the first 4 framework joints are specialised to \(p_4\) and let \(p_*=(p_4,p_{5},\ldots ,p_n)\) be the restricted vector with associated S-generic framework \((G,p_*)\). By the hypotheses, this framework is S-symmetric infinitesimally rigid.

Note that the matrix \(X_2=X_2(p')\) is square. Moreover, it has the vector \(u_{G'\setminus K_4}\) in the kernel, and \(u_{G'\setminus K_4}\) is clearly non-zero (since u is non-zero and \(u_{K_4}=0\) by the claim above).

Thus the determinant as a polynomial in the coordinates of the \(p_i'\) vanishes identically because of genericity. It follows that \(\det X_2(\tilde{p})\) vanishes identically and that there is a nonzero vector, \(w_{G_0'\setminus K_4}\) say, in the kernel. But now we obtain the contradiction

$$\begin{aligned} \begin{bmatrix} O_{{\mathcal {Y}}}(G,p_*,S) \end{bmatrix} \begin{bmatrix} \mathbf {0} \\ w_{G_0'\setminus K_4} \end{bmatrix}= \begin{bmatrix} a&\quad \mathbf {0}\\ *&\quad X_2(\tilde{p}) \end{bmatrix} \begin{bmatrix} \mathbf {0}\\ w_{G_0'\setminus K_4} \end{bmatrix}=\mathbf {0}, \end{aligned}$$

where \(a=(0,1,0)\). \(\square \)

For combinations of surfaces and symmetry groups with \(k_S=1\) the above argument breaks down. Instead we adapt a limiting argument from [18, Section 5.2].

Let \({\mathcal {M}}\in \{{\mathcal {Y}},{\mathcal {C}}\}\) and let S be chosen so that \(k_S=1\). Take the complete graph on four vertices with identity gain on each edge as an S-gain graph and denote the covering graph by H. For \(j=1,2,\ldots ,|S|\) and \(i=1,2,3,4\), let \(p_{x_j(i)}\) be the joints for some S-symmetric realisation of H. Further, let \(p|_j=(p_{x_j(1)},p_{x_j(2)},p_{x_j(3)}, p_{x_{j}(4)})\) for \(j=1,\ldots , |S|\), and let \((H,p)=(H,(p|_1,p|_2,\ldots , p|_{|S|}))\). Since \(k<3\), \({\mathcal {M}}\) has distinct principal curvatures \(\kappa _{s_j},\kappa _{t_j}\) with associated orthonormal vectors \(\hat{s}_j,\hat{t}_j\) in the tangent plane at \(p_{x_j(1)}\) for \(j=1,\ldots ,|S|\). Recall that, in a neighbourhood U of \(p_{x_j(1)}\) on \({\mathcal {M}}\), we can use Taylor’s theorem to express points on \({\mathcal {M}}\) as a function of \(s_j\) and \(t_j\):

$$\begin{aligned} f_j(s_j,t_j)=p_{x_j(1)}+(s_j\hat{s}_j+t_j\hat{t}_j)+\frac{1}{2}(\kappa _{s_j}s_j^2+\kappa _{t_j}t_j^2)\hat{n}_j+r(s_j,t_j) \end{aligned}$$

where \(\hat{n}_j\) is the unit normal at \(p_{x_j(1)}\), the vectors \(\hat{s}_j,\hat{t}_j,\hat{n}_j\) form a right-handed orthonormal triple and \(r(s_j,t_j)\) denotes the higher-order terms. Let \(p_{x_j(i)}=f_j(s_{x_j(i)},t_{x_j(i)})\), so \(p_{x_j(2)},p_{x_j(3)},p_{x_j(4)}\in U\), and let \(p_{x_j(i)}^{\epsilon _k}=f_j(\epsilon _ks_{x_j(i)},\epsilon _kt_{x_j(i)})\) for \(i=2,3,4\). We say that a sequence of frameworks \((H,p^{j,\epsilon _k})\) with

$$\begin{aligned} p^{j,\epsilon _k}=(p|_1, \ldots , p|_{j-1}, p_{x_j(1)},p_{x_j(2)}^{\epsilon _k},p_{x_j(3)}^{\epsilon _k}, p_{x_j(4)}^{\epsilon _k}, p|_{j+1},\ldots , p|_{|S|}) \end{aligned}$$

where \(\epsilon _k\rightarrow 0\) as \(k\rightarrow \infty \) is a well-behaved \(K_4\) contraction if the local coordinates \(s_{x_j(2)},t_{x_j(2)},s_{x_j(3)}, t_{x_j(3)}, s_{x_j(4)},t_{x_j(4)}\) satisfy

$$\begin{aligned} det \begin{pmatrix}s_{x_j(2)}&{}t_{x_j(2)}&{}s_{x_j(2)}t_{x_j(2)}\\ s_{x_j(3)} &{} t_{x_j(3)} &{} s_{x_j(3)}t_{x_j(3)}\\ s_{x_j(4)} &{} t_{x_j(4)} &{} s_{x_j(4)}t_{x_j(4)} \end{pmatrix} \ne 0. \end{aligned}$$

Note that, by symmetry, \((H,p^{j,\epsilon _k})\) is a well-behaved \(K_4\) contraction for some \(j\in \{1,\ldots |S|\}\) if and only if it is for all \(j=1,\ldots ,|S|\).

Lemma 8

Let \({\mathcal {M}}\in \{{\mathcal {Y}},{\mathcal {C}}\}\) and let S be chosen so that \(k_S=1\). Take the complete graph on four vertices with identity gain on each edge as an S-gain graph and denote the covering graph by H. Let \(p_{x_j(i)}\), for \(j=1,2,\ldots ,|S|\) and for \(i=1,2,3,4\), be the joints for some S-symmetric realisation of H. Let

$$\begin{aligned} p^{\epsilon _k}= & {} \left( p_{x_1(1)},p_{x_1(2)}^{\epsilon _k},p_{x_1(3)}^{\epsilon _k}, p_{x_{|1|}(4)}^{\epsilon _k},p_{x_2(1)},p_{x_2(2)}^{\epsilon _k},p_{x_2(3)}^{\epsilon _k}, p_{x_2(4)}^{\epsilon _k}, \ldots , \right. \\&\left. p_{x_{|S|}(1)},p_{x_{|S|}(2)}^{\epsilon _k},p_{x_{|S|}(3)}^{\epsilon _k}, p_{x_{|S|}(4)}^{\epsilon _k}\right) , \end{aligned}$$

and let \((H,p^{\epsilon _k})\), for \(k=1,2,\ldots \), be a well-behaved contraction of S-symmetric frameworks on \({\mathcal {M}}\). Further, let \(u^k, k=1,2,\ldots \), be an associated sequence of S-symmetric infinitesimal motions which forms a convergent sequence in \({\mathbb {R}}^{12|S|}\). Then the limit vector has the form

$$\begin{aligned}&\left( w_{{x_1}(1)},w_{x_1(1)},w_{x_1(1)},w_{x_1(1)},w_{x_2(1)},w_{x_2(1)},w_{x_2(1)},w_{x_2(1)},\ldots , \right. \\&\quad \left. w_{x_{|S|}(1)},w_{x_{|S|}(1)},w_{x_{|S|}(1)},w_{x_{|S|}(1)}\right) . \end{aligned}$$

Proof

Denote the copies of \(K_4\) in H as \(K^1, \ldots , K^{|S|}\), and let \((K^j, p|_j)\) be the corresponding realisations induced by (Hp). Let \(u=u^1\) and denote the S-symmetric infinitesimal motion

$$\begin{aligned} u=\left( u_{{x_1}(1)},u_{x_1(2)},u_{x_1(3)},u_{x_1(4)},\ldots , u_{x_{|S|}(1)},u_{x_{|S|}(2)},u_{x_{|S|}(3)},u_{x_{|S|}(4)}\right) . \end{aligned}$$

By focusing on the restricted motion \(u|_{K^j}\) and the subsequence \(u^k|_{K^j}\), associated with \((K^j, p|_j)\), we can follow the proof of [18, Lemma 5.4] with only trivial modifications, to establish that the well-behaved contraction sequence \((H, p^{\epsilon _k})\) takes the infinitesimal motions \(u^k|_{K^j}\) to \((w_{x_j(1)},w_{x_j(1)},w_{x_j(1)}, w_{x_j(1)})\). Since that Lemma was stated for surfaces of type \(k=1\) and our lemma includes the cylinder, with symmetry groups of type \(k_S=1\), we include the details in the appendix. Since \(u|_{K^{\ell }}\) is the image of \(u|_{K^j}\) under some \(x_t\in S\), we may simultaneously use the argument from the appendix to see that \(u^k|_{K^\ell }\) is taken to \((w_{x_\ell (1)},w_{x_\ell (1)},w_{x_\ell (1)},w_{x_\ell (1)})\) for each \(\ell \), where \(w_{x_\ell (1)}\) is the image of \(w_{x_j(1)}\) under \(x_t\in S\). The contracted framework is again an S-symmetric framework on \({\mathcal {M}}\) and the limit vector of the sequence of S-symmetric infinitesimal motions has the required form. \(\square \)

Lemma 9

Let \(G_0'\rightarrow G_0\) be a vertex-to-\(K_4\) move applied to an S-gain graph \(G_0'\) with the new \(K_4\) having all identity gains and \(V(G_0)=\{v_1,v_2,\ldots ,v_n\}\) where \(v_1,v_2,v_3,v_4\) are the vertices of the new \(K_4\). Let \(G'\) and G be the covering graphs corresponding to \(G_0'\) and \(G_0\), and let \((G',p')\) and (Gp) be the corresponding S-generic frameworks on \({\mathcal {M}}\) with \({\mathcal {M}}\in \{{\mathcal {Y}},{\mathcal {C}}\}\) and S chosen so that \({\mathcal {M}}\) has symmetric type \(k_S=1\). Suppose that \((G',p')\) is S-isostatic. Then (Gp) is also S-isostatic.

Proof

Let \(p_i=p(v_i)\) for \(i=1,2,3,4\) and let \(p_{x_j(i)}\) for \(j=1,2,\ldots ,|S|\) be the joints of (Gp) corresponding to the orbit of \(p_i\) (and so for each j, \(v_{x_j(i)}\) is the corresponding vertex of G). Suppose that (Gp) is not S-isostatic. Since \((G',p')\) is S-isostatic, \(G_0'\) is \((2,k,k_S)\)-gain-tight so \(G_0\) is also \((2,k,k_S)\)-gain-tight. It follows that (Gp) is S-dependent with a non-trivial S-symmetric infinitesimal motion. Let \(p^{\epsilon _k}\) be a sequence of S-generic framework vectors for (Gp) with \(p_{x_j(i)}^{\epsilon _k}\rightarrow p_{x_j(1)}\), as \(k\rightarrow \infty \), for \(i=2,3,4\) and for \(1\le j \le |S|\), where the \(K_4\) contraction is well-behaved (for all \(j=1,\ldots , |S|\)). Since \((G,p^{\epsilon _k})\) is S-generic and \({\mathcal {M}}\) has symmetric type \(k_S=1\), there is exactly 1 trivial S-symmetric infinitesimal motion of \((G,p^{\epsilon _k})\) for each k. Moreover, since (Gp) is S-dependent there is a non-trivial S-symmetric infinitesimal motion of \((G,p^{\epsilon _k})\) for each k.

Hence, for all k, there exists an S-symmetric infinitesimal motion \(u^k=(u_{x_{1}(1)}^k,\ldots ,u_n^k)\) of \((G,p^{\epsilon _k})\) such that \(u^k\) is in the tangent space of \(p^{\epsilon _k}\), \(u^k\) has norm 1 and \(u^k\) is orthogonal to the trivial S-symmetric infinitesimal motion. By passing to a subsequence, if required, \(u^k\) converges to an S-symmetric infinitesimal motion w of the limit framework (Gq) as \(k\rightarrow \infty \). It now follows from Lemma 8 that w has the form

$$\begin{aligned}&(w_{x_1(1)},w_{x_1(1)},w_{x_1(1)},w_{x_1(1)},w_{x_2(1)},w_{x_2(1)},w_{x_2(1)},w_{x_2(1)},\ldots , \\&\quad w_{x_{|S|}(1)},w_{x_{|S|}(1)},w_{x_{|S|}(1)},w_{x_{|S|}(1)},u_r,\ldots ,u_n). \end{aligned}$$

Moreover, w is in the tangent space of q, w has norm 1 and w is orthogonal to the trivial S-symmetric infinitesimal motion. This implies that the S-generic framework \((G',q')\) (where \(q'\) arises from q by restricting V(G) to \(V(G')\)) has an S-symmetric infinitesimal motion

$$\begin{aligned} u^-=(w_{x_{1}(1)},w_{x_{2}(1)},\ldots ,w_{x_{|S|}(1)},u_r,\ldots ,u_n) \end{aligned}$$

which is orthogonal to the unique trivial S-symmetric infinitesimal motion of \((G',q')\), contradicting the hypothesis that \((G',p')\) was S-isostatic. \(\square \)

Lemma 10

Let \({\mathcal {M}}\in \{{\mathcal {Y}},{\mathcal {C}}\}\) and

  • if \({\mathcal {M}}={\mathcal {Y}}\) let S be \({\mathcal {C}}_m\) (with the z-axis as the rotational axis), \({\mathcal {C}}_s\) (with mirror orthogonal to the z-axis or a plane containing the z-axis) or \(C_i\) and

  • if \({\mathcal {M}}={\mathcal {C}}\) let S be \({\mathcal {C}}_m\) (with the z-axis as the rotational axis), \({\mathcal {C}}_s\) (with mirror orthogonal to the z-axis), \({\mathcal {C}}_i\), \({\mathcal {C}}_{mh}\) (with the z-axis as the rotational axis) or \({\mathcal {S}}_{2m}\) (with the z-axis as the rotational axis).

Let (Gp) be an S-generic S-isostatic framework in \({\mathscr {R}}^{{\mathcal {M}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\) and let \((G_0',\psi ')\) be formed from \((G_0,\psi )\) by a vertex-to-4-cycle move. Then any S-generic realisation of the covering graph \(G'\) of \((G_0',\psi ')\) is S-isostatic.

The proof is similar to [35, Proposition 1] with minor modifications due to the different definition of a stress in the surface context (recall Definition 3) and to using the orbit-surface rigidity matrix rather than the rigidity matrix of a 3-frame.

Proof

Choose a vertex \(v_1\) of \(G_0\) to be split and suppose \(v_2,v_3,\ldots ,v_k\) are the neighbors of \(v_1\). Without loss of generality, we may assume that all edges joining \(v_1\) and \(v_i\), \(i=1,\ldots , k\), are directed away from \(v_1\) and that the edge \((v_1,v_i)\) has gain \(\alpha _i\). (If the edge \((v_1,v_i)\) appears \(l>1\) times, then we denote the corresponding edge gains by \(\alpha _i=\alpha _{i1}, \ldots ,\alpha _{il}\), for a fixed numbering of the edges; in this case, the gains \(\alpha _{i1},\ldots , \alpha _{il}\) are of course all distinct.) Let \(G_0^*\) be the S-gain graph obtained from \(G_0\) by adding a new vertex \(v_0\) and two edges \((v_0,v_2)\) and \((v_0,v_3)\) with respective gains \(\alpha _2\) and \(\alpha _3\). The covering graph of \(G_0^*\) is denoted by \(G^*\). Further, we let \((G^*,p^*)\) be the framework obtained from (Gp) by setting \(p^*(v_0)=p(v_1)\) and \(p^*(v_i)=p(v_i)\) for all other vertices \(v_i\), \(i\ne 0\), of \(G^*\).

Consider the S-gain graph \(G_0'\) which is obtained from \(G_0^*\) by swapping some number of edges \((v_1,v_j)\) for \(j\in \{4,5,\ldots \}\) to edges \((v_0,v_j)\) (keeping the same gains). (If there are multiple edges joining \(v_1\) with \(v_2\) and \(v_3\), then we may also swap edges of the form \((v_1,v_2)\) and \((v_1,v_3)\) to edges \((v_0,v_2)\) and \((v_0,v_3)\), provided that their gains are not equal to \(\alpha _{2}\) or \(\alpha _{3}\).) Let \(G'\) be the covering graph of \(G_0'\).

Let \((\omega ,\lambda )\) be an S-symmetric self-stress on \((G',p^*)\). In the following, we will identify an S-symmetric self-stress of a framework with its restriction to the edges and vertices of the corresponding quotient S-gain graph. Let \(\omega _{ij}=\omega (\{v_i,\alpha _j(v_j)\})\) for \(i=0,1\) and \(j=2,3\), and let \(\lambda _i=\lambda (v_i)\). Then note that if we set \(\tilde{\omega }_{12}=\omega _{02}+\omega _{12}\), \(\tilde{\omega }_{13}=\omega _{03}+\omega _{13}\), \(\tilde{\lambda }_1=\lambda _0+\lambda _1\), and \(\tilde{\omega }(e)=\omega (e)\) for all other edges e and \(\tilde{\lambda }_i=\lambda _i\) for all other vertices \(v_i\), then \((\tilde{\omega }, \tilde{\lambda })\) is an S-symmetric self-stress of (Gp). Thus, since (Gp) is S-isostatic, we must have \(\tilde{\omega }_{1j}=0\) for each j and \(\tilde{\lambda }_i=0\) for each i.

It follows that around \(p_1\) we have \(\omega _{12}(p_1-p_{\alpha _2(2)})+\omega _{13}(p_1-p_{\alpha _3(3)})+\lambda _1 s_1=0\). Since (Gp) is S-generic, and \(p_1-p_{\alpha _2(2)}\), \(p_1-p_{\alpha _3(3)}\) and the normal \(s_1\) to \({\mathcal {M}}\) at \(p_1\) are not coplanar, we have \(\omega _{12}=\omega _{13}=\lambda _1=0\). Similarly, we deduce that \(\omega _{02}=\omega _{03}=\lambda _0=0\). Thus, the rows of \(O_{{\mathcal {M}}}(G',p^*,S)\) are linearly independent. Now we perturb \((G',p^*)\) within a neighbourhood \(B(p^*,\epsilon ) \cap {\mathcal {M}}\), for sufficiently small \(\epsilon \) to find an S-generic position \((G',p')\) which is guaranteed to be S-isostatic since \((G',p^*)\) is. \(\square \)

Lemma 11

Let \({\mathcal {M}}\in \{{\mathcal {Y}},{\mathcal {C}}\}\) and

  • if \({\mathcal {M}}={\mathcal {Y}}\) let S be \({\mathcal {C}}_m\) (with the z-axis as the rotational axis), \({\mathcal {C}}_s\) (with mirror orthogonal to the z-axis or a plane containing the z-axis) or \(C_i\) and

  • if \({\mathcal {M}}={\mathcal {C}}\) let S be \({\mathcal {C}}_m\) (with the z-axis as the rotational axis), \({\mathcal {C}}_s\) (with mirror orthogonal to the z-axis), \({\mathcal {C}}_i\), \({\mathcal {C}}_{mh}\) (with the z-axis as the rotational axis) or \({\mathcal {S}}_{2m}\) (with the z-axis as the rotational axis).

Let \((G^1,p^1)\) and \((G^2,p^2)\) be two S-generic S-isostatic frameworks in \({\mathscr {R}}^{{\mathcal {Y}}}_{(G,S,\theta )}\) with quotient S-gain graphs \((G^1_0,\psi ^1)\) and \((G^2_0,\psi ^2)\). Then an S-generic framework \((G^1\oplus G^2, p)\) corresponding to the edge join of \(G^1_0\) and \(G^2_0\) with joining edge given arbitrary gain is S-isostatic on \({\mathcal {M}}\).

Proof

The orbit-surface matrices \(O_{{\mathcal {M}}}(G^1,p^1,S)\) and \(O_{{\mathcal {M}}}(G^2,p^2,S)\) have maximal rank. Hence the block matrix

$$\begin{aligned} \begin{bmatrix} O_{{\mathcal {M}}}(G^1,p^1,S)&\quad \mathbf {0}\\ \mathbf {0}&\quad O_{{\mathcal {M}}}(G^2,p^2,S) \end{bmatrix} \end{aligned}$$

has a 2-dimensional nullspace. The final joining edge, S-generically, eliminates the additional S-symmetric infinitesimal motion. \(\square \)

Note that the final lemma clearly fails for settings where there are more or less than one isometry.

9 Laman type theorems

We have now put together enough results to prove our main theorems. For convenience let us say that, for an S-gain graph \(G_0\), \(V(G_0)=\{1,\ldots , n\}\) and \(p_i=(x_i,y_i,z_i)\) for each i.

Proof of Theorem 9

Theorem 6 proves the necessity.

For the sufficiency we use induction and Theorem 14. Let the edge of \(K_2\) be \(e=(1,2)\) with gain \(\alpha \in {\mathcal {C}}_i\), and let \(p_{\alpha (i)}=(x_i',y_i',z_i')\), \(i=1,2\). Then note that \(O_{{\mathcal {S}}}(K_2,p,{\mathcal {C}}_i)\) is the \(3\times 6\) matrix

$$\begin{aligned} \begin{bmatrix} x_1-x_2'&\quad y_1-y_2'&\quad z_1-z_2'&\quad x_2-x_1'&\quad y_2-y_1'&z_2-z_1' \\ x_1&\quad y_1&\quad z_1&\quad 0&\quad 0&\quad 0\\ 0&\quad 0&\quad 0&\quad x_2&\quad y_2&\quad z_2 \end{bmatrix} \end{aligned}$$

which is easily checked to have rank 3. Theorem 14 gives us a short list of operations that generate all (2, 3, 3)-gain-tight graphs. For the inductive step suppose (Gp) is \({\mathcal {C}}_i\)-isostatic and suppose \(G'\) is formed from G by any one of these operations. Then Lemmas 5 and 6 confirm that any \({\mathcal {C}}_i\)-generic realisation of \(G'\) is \({\mathcal {C}}_i\)-isostatic. \(\square \)

Proof of Theorem 10

Theorem 6 proves the necessity.

For the sufficiency we use induction and [10, Theorem 4.4]. Let \(S\in \{{\mathcal {C}}_{mh},S_{2m}\}\) and let \(K_1^*\) denote a loop at vertex 1 with non-trivial gain \(\alpha \) (in particular, note that the gain \(\alpha \) cannot be an inversion). Further, let \(p_{\alpha (1)}=(x_1',y_1',z_1')\) and \(p_{\alpha ^{-1}(1)}=(x_1'',y_1'',z_1'')\) Then note that \(O_{{\mathcal {S}}}(K_1^*,p,S)\) is the \(2\times 3\) matrix

$$\begin{aligned} \begin{bmatrix} 2x_1-x_1'-x_1''&\quad 2y_1-y_1'-y_1''&\quad 2z_1-z_1'-z_1''\\ x_1&\quad y_1&\quad z_1 \end{bmatrix} \end{aligned}$$

which is easily checked to have rank 2 in each case. [10, Theorem 4.4] gives us a short list of operations that generate all (2, 3, 1)-gain-tight graphs. For the inductive step suppose (Gp) is S-isostatic and suppose \(G'\) is formed from G by any one of these operations. Then Lemmas 5 and 6 confirm that any S-generic realisation of \(G'\) is S-isostatic. \(\square \)

Proof of Theorem 11

Theorem 6 proves the necessity.

For the sufficiency we use induction and Theorem 15. First note that \(O_{{\mathcal {Y}}}(K_1,p,{\mathcal {C}}_m)\), where \(K_1\) is the vertex 1, is the \(1\times 3\) matrix

$$\begin{aligned} \begin{bmatrix} x_1&\quad y_1&\quad 0 \end{bmatrix} \end{aligned}$$

with rank 1. Theorem 15 gives us a short list of operations that generate all (2, 2, 2)-gain-tight graphs. For the inductive step suppose (Gp) is \({\mathcal {C}}_m\)-isostatic and suppose \(G'\) is formed from G by any one of these operations. Then Lemmas 5, 6, 7 and 10 confirm that any \({\mathcal {C}}_m\)-generic realisation of \(G'\) is \({\mathcal {C}}_m\)-isostatic. \(\square \)

Proof of Theorem 12

Theorem 6 proves the necessity.

For the sufficiency we use induction and Theorem 17. Let \(S\in \{{\mathcal {C}}_s,C_i\}\) and \(K_1^*\) denote a loop at vertex 1 with non-trivial gain \(\alpha \). Further, let \(p_{\alpha (1)}=(x_1',y_1',z_1')\). Clearly, \(p_{\alpha (1)}=p_{\alpha ^{-1}(1)}\), since S is a group of order 2. Note that \(O_{{\mathcal {Y}}}(K_1^*,p,S)\) is the \(2\times 3\) matrix

$$\begin{aligned} \begin{bmatrix} 2(x_1-x_1')&\quad 2(y_1-y_1')&\quad 2(z_1-z_1') \\ x_1&\quad y_1&\quad 0 \end{bmatrix} \end{aligned}$$

which has rank 2 in each case. Also \(O_{{\mathcal {Y}}}(K_4+e,p,S)\) is a \(11\times 12\) matrix which can easily be checked to have rank 11 for each choice of S.Footnote 1 Theorem 17 gives us a short list of operations that generate all (2, 2, 1)-gain-tight graphs. For the inductive step suppose (Gp) is S-isostatic and suppose \(G'\) is formed from G by any one of these operations. Then Lemmas 5, 6, 9, 10 and 11 confirm that any S-generic realisation of \(G'\) is S-isostatic. \(\square \)

Proof of Theorem 13

Theorem 6 proves the necessity.

For the sufficiency we use induction and Theorem 16. Let \(S\in \{{\mathcal {C}}_m,{\mathcal {C}}_s, {\mathcal {C}}_i,{\mathcal {C}}_{mh},S_{2m}\}\) and \(K_1^*\) denote a loop at vertex 1 with non-trivial gain \(\alpha \). Further, let \(p_{\alpha (1)}=(x_1',y_1',z_1')\) and \(p_{\alpha ^{-1}(1)}=(x_1'',y_1'',z_1'')\). Note that \(O_{{\mathcal {C}}}(K_1^*,p,S)\) is a \(2\times 3\) matrix

$$\begin{aligned} \begin{bmatrix} 2x_1-x_1'-x_1''&\quad 2y_1-y_1'-y_1''&\quad 2z_1-z_1'-z_1'' \\ x_1&\quad y_1&\quad -z_1 \end{bmatrix} \end{aligned}$$

which has rank 2 for each choice of S. Also \(O_{{\mathcal {C}}}(K_4+f,p,S)\) is a \(11 \times 12\) matrix and \(O_{{\mathcal {C}}}(K_5-e,p,S)\) is a \(14\times 15\) matrix which can easily be checked to have rank 11 and 14 for each respective choice of S.Footnote 2

Theorem 16 gives us a short list of operations that generate all (2, 1, 1)-gain-tight graphs. For the inductive step suppose (Gp) is S-isostatic and suppose \(G'\) is formed from G by any one of these operations. Then Lemmas 5, 6, 9, 10 and 11 confirm that any S-generic realisation of \(G'\) is S-isostatic. \(\square \)

10 Further work

We finish by outlining a number of avenues of further developments. We start with a slight diversion into matroid theory.

10.1 Matroids and inductive constructions

Let \({\mathcal {I}}_{k,\ell ,m}\) be the family of \((k,\ell ,m)\)-gain-sparse edge sets in \((H,\psi )\). Then, as noted in [10, 29], \({\mathcal {I}}_{k,\ell ,m}\) forms the family of independent sets of a matroid on E(H) for certain \((k,\ell , m)\). Let \(M(k,\ell ,m):=(E(H),{\mathcal {I}}_{k,\ell ,m})\) whether or not the triple \(k,\ell ,m\) induces a matroid. Using 3 basic matroids as ‘building blocks’ we can use standard matroid techniques to see that \(M(k,\ell ,m)\) is a matroid for a large range of triples \(k,l,m \in {\mathbb {N}}\).

First note that when \(\ell =m\), \((k,\ell ,m)\)-gain-sparsity is exactly \((k,\ell )\)-sparsity (on a multi-graph) and \(M(k,\ell )\) is known to be a matroid for all \(0\le \ell <2k\) [36]. We also assume in this paper that \(m \le \ell \).

Our 3 basic matroids are the frame matroid M(1, 1, 0) [37], the cycle matroid M(1, 1, 1) and the bicircular matroid M(1, 0, 0). Then the previous sentence tells us that each possible option for \(M(1,\ell ,m)\) is a matroid. For \(k>1\), using matroid union and Dilworth truncation we know the following:

  1. 1.

    \(M(k,k+t,m+t)\) is a matroid for \(0\le t <k\) and \(m\le k\) (take m copies of the cycle matroid and \(k-m\) copies of the frame matroid and then apply t Dilworth truncations),

  2. 2.

    \(M(k,k-m+n+t,n+t)\) with \(0 \le n \le m \le k\) and \(n+t<k+m\) is a matroid (take n copies of the cycle matroid, \(m-n\) copies of the bicircular matroid and \(k-m\) copies of the frame matroid and then apply t Dilworth truncations).

By the above remarks we know that: M(2, 3, 3) is a matroid (see also Theorem 9); M(2, 3, 2) is a matroid (this count does not appear in symmetry-forced rigidity analyses of frameworks in the plane or on surfaces, as the surface must be a sphere and there does not exist a symmetry group with two fully symmetric rotations. However it does occur for periodic frameworks [22] or in ‘anti-symmetric’ rigidity analyses (see Sect. 10.7)); M(2, 3, 1) is a matroid (see also Theorem 8); M(2, 3, 0) is not a matroid in general [29]; M(2, 2, 2) is a matroid (see also Theorem 11); M(2, 2, 1) is a matroid (see also Theorem 12); M(2, 2, 0) is a matroid (see also Conjecture 2 below); M(2, 1, 1) is a matroid (see also Theorem 13); M(2, 1, 0) is a matroid (see also Conjecture 4 below); M(2, 0, 0) is a matroid (this count appears for frameworks on surfaces of type \(k=0\) which we do not consider in this paper (recall Sect. 2)).

For \(k\ge 3\) these observations still give us a lot of information; however they do not tell us anything about the case when \(\ell - m >k\). We do not know if M(2, 3, 0) is typical or atypical for such triples.

Returning to the subject of the paper, we note that combining the results of Sect. 7 with [10, Theorem 4.4] and [22, Theorem 4.7] gives inductive constructions for \((2,\ell ,m)\)-gain-tight graphs (sometimes only for particular groups) for all \(1\le m\le \ell <4\). However, the case when \(m=0\) is completely open. One indication of the potential difficulty to overcome here is that the minimum vertex degree in the graph may be 4. The analogue of the Henneberg moves for degree 4 vertices are known as X and V-replacement [7, 10, 20, 33]. V-replacement is known to not preserve \((2,\ell )\)-sparsity. X-replacement has been used to some effect in [10] so it is plausible that it could be used for the cases in question here. However, while X-replacement (as an operation on frameworks) is easy to understand in the plane (the generic argument is based on the simple fact that, generically, two lines intersect (see also [10])), the question whether the corresponding operation in 3-dimensions preserves generic rigidity is still open [7, 20] (two generic lines in 3D need not intersect!). This difficulty also arises for X-replacements on frameworks supported on surfaces since two lines will typically not intersect in a point on the surface. However, the X-replacement operation on frameworks supported on surfaces may still be more accessible than the X-replacement operation in the general 3-dimensional case.

10.2 The sphere

As indicated in Sect. 6, it seems difficult to establish characterisations for symmetry-forced rigidity on the sphere for groups other than \({\mathcal {C}}_m\), \({\mathcal {C}}_s\), \({\mathcal {C}}_i\), \({\mathcal {C}}_{mh}\) and \({\mathcal {S}}_{2m}\), as there are no tangential isometries (i.e., rotations) which are symmetric with respect to these groups.

An exception are the groups \({\mathcal {C}}_{mv}\), where m is odd, as for these groups, we may combine results in [10, 31] to obtain a characterisation for symmetry-forced rigidity on the sphere even though there are no rotations which are symmetric with respect to \({\mathcal {C}}_{mv}\). Theorems 8, 9 and 10 provide characterisations for the groups \({\mathcal {C}}_m\), \({\mathcal {C}}_s\), \({\mathcal {C}}_i\), \({\mathcal {C}}_{mv}\) (with m odd), \({\mathcal {C}}_{mh}\) (with m odd) and \({\mathcal {S}}_{2m}\) (with m even). The obstacles for \({\mathcal {C}}_{mv}\), where m is even, were described in Sect. 6 (see also [10]). This leaves the groups \({\mathcal {C}}_{mh}\), where m is even, and \({\mathcal {S}}_{2m}\), where m is odd.

Definition 7

Let \((H,\psi )\) be a \({\mathcal {C}}_{mh}\)-gain graph, where m is even, or a \({\mathcal {S}}_{2m}\)-gain graph, where m is odd. Then \((H,\psi )\) is called \((2,3,1)^i\) -gain-sparse if

  • \(|F|\le 2|V(F)|-3\) for any nonempty \(F\subseteq E(H)\) and \(v\in V(F)\) with \(\langle F \rangle _v ={\mathcal {C}}_1\) or \(\langle F \rangle _v ={\mathcal {C}}_i\);

  • \(|F|\le 2|V(F)|-1\) otherwise.

A \((2,3,1)^i\)-gain-sparse graph \((H,\psi )\) satisfying \(|F|= 2|V(F)|-1\) is called \((2,3,1)^i\) -gain-tight.

Conjecture 1

Let S be the group \({\mathcal {C}}_{mh}\), where m is even, or the group \({\mathcal {S}}_{2m}\), where m is odd. Let (Gp) be an S-generic realisation on \({\mathcal {S}}\) and let \((G_0,\psi )\) be the quotient S-gain graph of G. Then (Gp) is S-isostatic if and only if \((G_0,\psi )\) is \((2,3,1)^i\)-gain-tight.

10.3 The cylinder

For the cylinder, we offer the following conjectures.

Conjecture 2

Let S be the cyclic group \({\mathcal {C}}_2\) representing 2-fold rotation around an axis which is orthogonal to the z-axis. Let (Gp) be an S-generic realisation on \({\mathcal {Y}}\) and let \((G_0,\psi )\) be the quotient S-gain graph of G. Then (Gp) is S-isostatic if and only if \((G_0,\psi )\) is (2, 2, 0)-gain-tight.

This conjecture is of particular interest because it implies that there is a symmetry-preserving motion in a framework that counts to be generically minimally rigid without symmetry. We illustrate such a motion in the following example.

Example 1

Let \(G_0\) be the gain graph consisting of a 0-gain \(K_4\) on vertices abcd, together with an additional edge (cd) with gain 1. Then, with symmetry group \({\mathcal {C}}_2\) as defined in Conjecture 2, the covering graph G of \(G_0\) consists of two vertex disjoint copies of \(K_4\) joined by two edges. Theorem 3 implies that generic realisations of G (without symmetry) are rigid on the cylinder \({\mathcal {Y}}\). However, the quotient \({\mathcal {C}}_2\)-gain graph \(G_0\) of G satisfies \(|E(G_0)|=7<8=2|V(G_0)|-0\). Thus, embedded \({\mathcal {C}}_2\)-generically on \({\mathcal {Y}}\), as in Fig. 11, Theorem 6 implies the existence of a non-trivial continuous motion on \({\mathcal {Y}}\).

Fig. 11
figure 11

A \({\mathcal {C}}_2\)-symmetric framework (Gp) on the cylinder \({\mathcal {Y}}\) which has a non-trivial symmetry-preserving motion, but whose underlying graph G is generically isostatic on \({\mathcal {Y}}\) (without symmetry). The grey joints are at the ‘back’ of the cylinder

Definition 8

Let \((H,\psi )\) be a \({\mathcal {C}}_{mh}\)-gain graph, a \({\mathcal {C}}_{mv}\)-gain graph or a \({\mathcal {S}}_{2m}\)-gain graph. Then \((H,\psi )\) is called \((2,2,1)^r\) -gain-sparse if

  • \(|F|\le 2|V(F)|-2\) for any nonempty \(F\subseteq E(H)\) and \(v\in V(F)\) with \(\langle F \rangle _v ={\mathcal {C}}_1\) or \(\langle F \rangle _v ={\mathcal {C}}_{m'}\), \(m'\le m\);

  • \(|F|\le 2|V(F)|-1\) otherwise.

A \((2,2,1)^r\)-gain-sparse graph \((H,\psi )\) satisfying \(|F|= 2|V(F)|-1\) is called \((2,2,1)^r\) -gain-tight.

Conjecture 3

Let S be the group \({\mathcal {C}}_{mh}\), \({\mathcal {C}}_{mv}\) or \({\mathcal {S}}_{2m}\), where the rotational axis is the cylinder axis. Let (Gp) be an S-generic framework in \({\mathscr {R}}^{{\mathcal {Y}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\). Then (Gp) is S-isostatic if and only if \((G_0,\psi )\) is \((2,2,1)^r\)-gain tight.

We remark that \((2,2,1)^r\)-gain-tight graphs are a special class of (2, 2, 1)-gain-tight graphs.

For the groups \({\mathcal {D}}_m\), \({\mathcal {D}}_{mh}\) and \({\mathcal {D}}_{md}\) it is plausible that the necessary conditions given in Theorem 7 are also sufficient, but difficult to prove due to the (2, 2, 0)-gain-sparsity count (recall Sect. 10.1). Moreover, the remarks in Sect. 6.1 give a warning that unexpected behaviour may arise, and hence we do not provide explicit conjectures for these groups.

10.4 The cone

For the cone, note that there is no symmetry group which turns a generically rigid framework with a free action on the vertex set on the cone into a flexible one. However we do suggest the following conjecture.

Conjecture 4

Let S be the group \({\mathcal {C}}_2\) representing 2-fold rotation about an axis perpendicular to the z-axis (i.e., perpendicular to the axis of the cone) or the group \({\mathcal {C}}_s\), where the mirror plane of the reflection contains the z-axis. Let (Gp) be an S-generic framework in \({\mathscr {R}}^{{\mathcal {C}}}_{(G,S,\theta )}\) with quotient S-gain graph \((G_0,\psi )\). Then (Gp) is S-isostatic if and only if \((G_0,\psi )\) is (2, 1, 0)-gain-tight.

It is also plausible that the remaining groups (\({\mathcal {C}}_{mv}\), \({\mathcal {D}}_m\), \({\mathcal {D}}_{mh}\) and \({\mathcal {D}}_{md}\)) can be understood similarly. For \({\mathcal {C}}_{mv}\) and \({\mathcal {D}}_m\), for example, the conjecture would be that \((2,1,0)^r\)-gain tightness characterises the symmetry-forced isostatic frameworks (where \((2,1,0)^r\)-gain-tightness is defined analogously to Definition 8), since \(k_{\langle F\rangle _v}=1\) if \(\langle F\rangle _v\) is a purely rotational group (with the rotational axis being the axis of the cone) and \(k_{\langle F\rangle _v}=0\) otherwise.

10.5 Non-free actions

For the cylinder, rotational symmetry about the z-axis is necessarily a free group action. However, for reflection symmetry s about a plane containing the z-axis, for example, this plane intersects the cylinder in two disjoint lines. If we allow symmetry-generic realisations to include joints lying on these lines then we must adapt the counts and the orbit-surface rigidity matrix accordingly. Any such joint which is ‘fixed’ by the reflection s will have only one degree of freedom, as it has to stay on the reflection plane of s and on the cylinder. While we do not expect any new complication to arise in this more general situation, the proofs will become significantly more messy due to the reduced number of columns in the orbit-surface matrix for fixed vertices [30]. Similar observations apply to the cone.

10.6 Surfaces with 1 isometry

In [18] Laman type theorems were developed for any surface with exactly 1 isometry. Here we have concentrated on the cone. We expect that our methods are adaptable to any other surface with one isometry (such as tori, hyperboloids and paraboloids).

However, we highlight that the same group acting on two different surfaces (that a priori have the same number of trivial motions) can give different numbers of symmetric trivial motions and hence different combinatorial counts with an example theorem.

Theorem 18

(Reflection symmetry on the elliptical cylinder) Let \({\mathcal {F}}\) be an elliptical cylinder about the z-axis and let \({\mathcal {C}}_s\) be generated by a reflection whose mirror plane contains the z-axis. Let (Gp) be a framework in \({\mathscr {R}}^{{\mathcal {F}}}_{(G,{\mathcal {C}}_s,\theta )}\) with quotient \({\mathcal {C}}_s\)-gain graph \((G_0,\psi )\). Then (Gp) is \({\mathcal {C}}_s\)-isostatic if and only if \((G_0,\psi )\) is (2, 1, 1)-gain-tight.

This is in contrast with the same group for the cone, where Theorem 6 implies that the \({\mathcal {C}}_s\)-gain graph must be (2, 1, 0)-gain-tight.

10.7 Incidental symmetry

In this paper, we focused on the symmetry-forced rigidity of symmetric frameworks on surfaces. More generally, one may ask when an S-symmetric framework (Gp) on a surface \({\mathcal {M}}\) is not only S-symmetric infinitesimally rigid (i.e., (Gp) has no non-trivial S-symmetric infinitesimal motion), but also infinitesimally rigid (i.e., (Gp) has no non-trivial infinitesimal motion at all).

A fundamental result in the rigidity analysis of (‘incidentally’) symmetric frameworks in Euclidean d-space is that the rigidity matrix R(Gp) of an S-symmetric framework (Gp) can be transformed into a block-decomposed form, where each block \(R_i(G,p)\) corresponds to an irreducible representation \(\rho _i\) of the group S [12, 24]. This breaks up the rigidity analysis of (Gp) into a number of independent subproblems. In fact, the symmetry-forced rigidity properties of (Gp) are described by the block matrix \(R_1(G,p)\) corresponding to the trivial irreducible representation \(\rho _1\) of S. In [30] the orbit rigidity matrix was derived to simplify the symmetry-forced rigidity analysis of Euclidean frameworks (the orbit rigidity matrix O(GpS) is equivalent to the block matrix \(R_1(G,p)\), but it can be constructed without using any methods from group representation theory). Moreover, in the very recent paper [29], an ‘orbit rigidity matrix’ was established for each of the blocks \(R_i(G,p)\), and these new tools were successfully used to characterise S-generic infinitesimally rigid frameworks for a number of point groups S.

These methods can clearly be extended to analyse the infinitesimal rigidity of S-generic frameworks on surfaces. However, note that for each surface \({\mathcal {M}}\) and each symmetry group S considered in this paper (except for the groups \({\mathcal {C}}_s\) and \({\mathcal {C}}_i\) on the cylinder \({\mathcal {Y}}\)), there always exists an irreducible representation \(\rho _i\) of S with the property that there is no trivial \(\rho _i\)-symmetric infinitesimal motion (i.e., there is no trivial motion in the kernel of the corresponding block matrix \(R_i(G,p)\)). Therefore, we need to deal with a (2, k, 0)-gain-sparsity count in each of these cases (more precisely, (2, 3, 0)-gain-sparsity for the sphere, (2, 2, 0)-gain-sparsity for the cylinder, and (2, 1, 0)-gain-sparsity for the cone), which gives rise to the difficulties outlined in Sects. 6.1 and 10.1.

For the groups \({\mathcal {C}}_s\) and \({\mathcal {C}}_i\) on the cylinder \({\mathcal {Y}}\), however, the block-decomposed orbit-surface rigidity matrix consists of two blocks, one corresponding to the trivial representation \(\rho _1\) of the group (this block is equivalent to the orbit-surface rigidity matrix) and one corresponding to the other irreducible representation \(\rho _2\) (this block is equivalent to an ‘anti-symmetric’ orbit-surface rigidity matrix), and for both of these blocks, one needs to consider the same (2, 2, 1)-gain-sparsity count to test whether the block has maximal rank. Therefore, we propose the following conjecture (recall also Proposition 3).

Conjecture 5

Let S be the group \({\mathcal {C}}_s\) or the group \({\mathcal {C}}_i\), and let (Gp) be an S-generic framework on the cylinder \({\mathcal {Y}}\). Then (Gp) is isostatic if and only if (Gp) is S-isostatic.

10.8 Algorithmic implications

We expect that \((k,\ell ,m)\)-gain-sparsity can be checked deterministically in polynomial time whenever \((k,\ell ,m)\)-gain-sparsity is a matroidal property. This would confirm that our theorems provide efficient combinatorial descriptions of symmetry-forced rigidity. We leave the exact details to the reader, but remark that: the quotient gain graph of a given symmetric simple graph can clearly be obtained in polynomial time; \((2,\ell ,\ell )\)-gain-sparsity for \(\ell =0,1,2,3\) is known to be polynomial time computable [14]; the case corresponding to Theorem 8 has been considered [10, Section 10]; and the remaining cases considered in this paper can be checked using similar arguments.