1 Introduction

Given a simplicial graph \(\varGamma \), the associated right-angled Artin group (RAAG) is the group \(A_\varGamma \) with generators the vertices of \(\varGamma \), and relations being commutators between vertices joined by an edge. Complete graphs give free abelian groups and empty graphs give free groups. Subgroups of RAAGs have many rich properties, such as being residually finite [5].

Consider the Bestvina-Brady group from [2], corresponding to the minimal flag triangulation L of the circle. The associated group \(A_L\) splits as \(F_2\times F_2\) in this case, and we can get a presentation:

$$\begin{aligned} G=\left\langle x_1,x_2,x_3,x_4\ \big |\ x_1^i x_2^i x_3^i x_4^i\text { for }i\in {\mathbb {Z}}\right\rangle . \end{aligned}$$

The group G is defined as the kernel of a map from \(A_L\) to \({\mathbb {Z}}\) (more on this in Sect. 3), therefore is naturally a subgroup of a RAAG.

We ask what happens if we vary the number of generators, and replace some of the relations by their powers. The resulting groups would have torsion, so cannot be subgroups of RAAGs. Nonetheless, we could look at torsion-free finite-index subgroups, and see if we can embed those into RAAGs. Certain properties of subgroups of RAAGs, such as residual finiteness, pass between finite-index subgroups.

It was originally conjectured by Baumslag that one-relator groups with torsion are residually finite. This was proven by Wise, through showing that they are virtually special, hence have finite-index torsion-free subgroups embedding into RAAGs [10].

Theorem 1

For each integer \(m\geqslant 4\) and prime \(k\geqslant 2\), the group

$$\begin{aligned} G_m^k:=\left\langle x_1,x_2,\dots ,x_m\ \big | \begin{aligned}&\ \ x_1^i x_2^i\cdots x_m^i\\&\left( x_1^i x_2^i\cdots x_m^i\right) ^k \end{aligned} \, \begin{aligned}&\text { for }i\in k{\mathbb {Z}}\\&\text { for }i\in {\mathbb {Z}}\backslash k{\mathbb {Z}} \end{aligned}\right\rangle \end{aligned}$$
(1)

is virtually special. In particular, it is residually finite.

Special cube complexes were introduced by Haglund and Wise in [6]. They are nonpositively curved cube complexes whose fundamental groups embed into RAAGs. We say that a group is virtually special if it has the fundamental group of a special cube complex as a finite-index subgroup. Note that traditionally, the cube complex is taken to be compact, ensuring the corresponding RAAG is finitely generated. We will deal with non-cocompact actions, however our actions will still be cofinite (see the introduction in [7]), leading to embeddings in finitely generated RAAGs just like in the compact case.

A lot of progress concerning special cube complexes has been surrounding hyperbolic groups (such as Agol’s theorem [1]), however in our case the virtually special groups cannot be finitely presented (see Sect. 7), hence are not hyperbolic. Furthermore, we have explicit presentations for our groups. While Bestvina-Brady groups may be used to construct at most one special group per flag complex as input, we obtain an infinite family for each fixed flag triangulation of the circle (fixing m) by varying the branching (varying k).

Bestvina-Brady groups have classifying spaces which are special cube complexes. The groups in Theorem 1 arise from branched covers of classifying spaces of Bestvina-Brady groups corresponding to different flag triangulations of the circle. In particular, the group \(G_m^k\) corresponds to a generalised Bestvina-Brady group \(G_L^M(S)\) by taking \(M\rightarrow L\) to be the k-regular covering of the regular m-gon by the regular km-gon (thought of as flag triangulations of the circle), with branching set \({\mathbb {Z}}\setminus k{\mathbb {Z}}\) (more on this in Sect. 3). This kind of construction was first introduced in [9]. The study of branched covers of special cube complexes is of wider interest; see for example [4], where it is shown that certain cyclic branched covers of special cube complexes are again special.

The idea of the proof of Theorem 1 first came from the author representing edges in complexes by matrices, using representations of finite quotients and height functions to work in some \(GL_n(V)\oplus {\mathbb {Z}}\). This allows us to turn geometric information about hyperplanes into algebraic statements. After noticing that considering determinants of these matrices can be useful, linear characters entered the picture. While the complexes involved are not compact, there are still finitely many orbits of hyperplanes.

The paper is structured as follows. Sections 2 and 3 contain the relevant background on special cube complexes and Bestvina-Brady groups, respectively. Section 4 describes the action of the groups \(G_m^k\) on the associated CAT(0) complexes \(X_m^k\) in terms of fundamental domains (as well as the appendix). Section 5 shows that the groups are virtually torsion-free and introduces specific quotients. The quotient complex is considered, and the structure of hyperplanes is examined. Section 6 showcases the method of utilising linear characters to prove that the quotient complex is special, and proves Theorem 1. Section 7 distinguishes the groups, examines particular infinite behaviour of the hyperplanes and considers further generalisations.

I would like to thank Ian Leary, my PhD supervisor, for the support and great conversations full of helpful suggestions. I would also like to thank the anonymous referee for their comments, particularly with regard to improving exposition and context.

2 Background on special cube complexes

We will only need to consider 2-dimensional square complexes in this paper. Let \(I=[0,1]\) be the unit interval. An n-cube for \(n>0\) is a copy of \(I^n\) and a 0-cube is just a vertex. A cube complex is a cell complex where every cell is some n-cube, with the attaching maps being combinatorial on cubes. This means that the attaching maps must send n-cubes isometrically to n-cubes when we consider the boundaries of cubes as being the union of lower-dimensional cubes. In our case, squares will be glued together by sending vertices to vertices and edges to edges.

The link of a vertex v is a complex whose vertices correspond to ends of 1-cubes attached to v, and these are joined by an n-simplex for each corresponding \((n+1)\)-cube having a corner at v. In our case, links will be simplicial graphs.

A flag complex is a simplicial complex where any collection of \((k+1)\) vertices that are pairwise joined by 1-simplices span a k-simplex. We say that a cube complex is nonpositively curved if the link of every vertex is a flag complex. In our case, this means that every link is triangle-free. We refer to simply connected nonpositively curved cube complexes as \(\text {CAT}(0)\) cube complexes.

Let X be a nonpositively curved cube complex. ‘Square’ will refer to a 2-cube in X, and ‘edge’ will refer to a 1-cube. For edges u, v which are opposite each other in some square of X, we write \(u\sim v\) and say that u and v are elementary parallel. This induces an equivalence relation on the edges. By abuse of notation, we write \(u\sim w\) if edges uw lie in the same equivalence class and say they are parallel. We denote the equivalence class of u by [u], and we call this a hyperplane. If we induce an orientation on edges, we can insist that elementary parallelism keeps track of orientation. We say that a hyperplane [u] is not two-sided if there exists an edge v such that \(v\sim u\) as well as \(v\sim -v\), and we say the hyperplane is two-sided otherwise. We can write \([u]=[v]\) if uv lie in the same hyperplane.

Definition 1

(Hyperplane interactions, [6]) If two edges uv are adjacent in a square (intersect at a corner of the square), we write \(u\perp v\). We write \([u]\perp [v]\) and say that hyperplanes [u], [v] cross if there exist edges \(u',v'\) such that \(u'\perp v'\) and \(u'\sim u\), \(v'\sim v\). If two edges wx share a vertex (intersect at a 0-cell), but there does not exist a square that contains both of them where they are adjacent (i.e. \(w\not \perp x\)), we write \(w\circlearrowright x\). We write \([w]\circlearrowright [x]\) and say that hyperplanes [w], [x] osculate if there exist edges \(w',x'\) such that \(w'\circlearrowright x'\) and \(x'\sim x\), \(w'\sim w\).

One can define a special cube complex in terms of avoiding certain configurations of hyperplane interactions. Note that while \(\circlearrowright \) and \(\perp \) are relations, only \(\sim \) is an equivalence relation.

Definition 2

(Special Cube Complex, [6]) If X is such that there exists an orientation of the edges with [u] two-sided for every edge, and for any pair of (not necessarily distinct) edges uv, we have at most one of the relations \(\sim \), \(\perp \), \(\circlearrowright \) holding between [u] and [v], then we say that X is a special cube complex.

If \(\sim \) and \(\perp \) hold, then a hyperplane crosses itself, so is not an embedded hyperplane. If \(\sim \) and \(\circlearrowright \) hold, then a hyperplane self-osculates. If both \(\perp \) and \(\circlearrowright \) hold between a pair of hyperplanes, they inter-osculate. There are essentially 4 components to Definition 2, we will refer to them in Section 6.

Theorem 2

(Haglund and Wise, [6]) If X is a special cube complex, then \(\pi _1(X)\) embeds into a right-angled Artin group. In particular, if X contains finitely many hyperplanes, then \(\pi _1(X)\) embeds into a finitely generated right-angled Artin group.

Having finitely many hyperplanes is important, as a finitely-generated RAAG in particular embeds into \(SL_n({\mathbb {Z}})\) for some finite n, see [8].

3 Background on Bestvina-Brady Groups

Bestvina-Brady groups (introduced in [2]) are by definition normal subgroups of Right-Angled Artin Groups (RAAGs), hence they are linear over \({\mathbb {Z}}\) and enjoy properties such as being residually finite. If a space has fundamental group G and has contractible universal cover, we say that space is a classifying space for G.

Definition 3

(Salvetti complex) Let \(A_\varGamma \) be a RAAG defined by a graph \(\varGamma \). Then \(A_\varGamma \) has a natural classifying space, called the Salvetti complex, formed from one vertex, one loop for each Artin generator, and an n-torus for each n-clique in \(\varGamma \), glued appropriately.

The link of the vertex in the Salvetti complex corresponding to \(A_\varGamma \) is a “spherical double” of the flag complex with 1-skeleton \(\varGamma \). This is formed by taking each vertex v and replacing it with two vertices \(v^{+},v^{-}\), such that a set of vertices form a simplex if the corresponding vertices formed a simplex when forgetting about the superscripts. Note that this remains a flag complex if the original complex was flag. We will focus on the case when these links are finite complexes.

Definition 4

(Bestvina-Brady Group) Let L be a connected finite flag complex. Define \(BB_L\) to be the kernel of the homomorphism from the RAAG \(A_L\) (associated with the 1-skeleton of L) to \({\mathbb {Z}}\), which sends every Artin generator to 1 in \({\mathbb {Z}}\).

The finiteness properties of \(BB_L\) are controlled by the choice of complex L. Note that there is a natural correspondence between flag complexes L and their 1-skeletons \(\varGamma \), hence we can refer to a group \(A_L\). One can think of the naturally associated classifying space \({\mathbb {B}}_L\) either as the quotient of the universal cover of the Salvetti complex of \(A_L\) by \(BB_L\), or as a \({\mathbb {Z}}\)-cover of this Salvetti complex (which gives us a natural height function f). Notice that the ascending and descending links (which are the induced subcomplexes of the link on edges pointing either up or down, respectively) of vertices in \({\mathbb {B}}_L\) are all isomorphic to L. Since there are only countably many finite connected flag complexes, there are at most countably many groups \(BB_L\).

This construction was generalised by Leary in [9], to give uncountably many more such groups for each finite connected flag complex.

Definition 5

(Generalised Bestvina-Brady Group) Let \(M\rightarrow L\) be a regular cover. Following the start of section 21 in [9], define \(G_L^M(S)\) to be the group of deck transformations of the branched cover \(X_L^M(S)\) of the classifying space \({\mathbb {B}}_L\) of \(BB_L\). The branching occurs at vertices with heights not in S, when the \(BB_L\)-orbits of vertices in the universal cover of \({\mathbb {B}}_L\) are naturally labelled with the integers (consider the height function f, mentioned above). The branching is such that the ascending and descending links of branching vertices are isomorphic to M.

The existence of such a branched cover is Theorem 9.1 in [9].

When the group does not coincide with a Bestvina-Brady group, it does not act specially on its associated \(\text {CAT}\left( 0\right) \) complex (using language from [7], see Definition 3.4 there), because of the action of the point stabilisers at the branching vertices. Indeed, those where this complex is locally finite (call these groups “of finite ramification”) contain torsion, hence cannot be subgroups of RAAGs.

Definition 6

(Finite Ramification) When the group of deck transformations of \(M\rightarrow L\) is finite, we say that \(G_L^M(S)\) is of finite ramification (i.e. \([\pi _1(L):\pi _1(M)]<\infty \)). To avoid this group coinciding with a Bestvina-Brady group, we insist that \(S\ne {\mathbb {Z}}\) and \(\pi _1(L)/\pi _1(M)\) is not the trivial group.

In particular, this means that we study the case when L is not simply connected and \(M\ne L\). Note that when M is the universal cover of L and \(\pi _1(L)\) is finite, we get finite ramification of the group in the main statement of [9] without any modification, as long as \(S\ne {\mathbb {Z}}\). We have decided to exclude Bestvina-Brady groups from this definition, because they are special by definition, and we are interested in new virtually special groups.

For the rest of the paper, let \(m>3\) be an integer and k a prime number. We will focus on the case when L is the m-vertex flag triangulation of the circle, and M is the mk-vertex flag triangulation of the circle. In Sect. 4, we will give specific names to vertices, edges and squares in \(X_L^M\) in this case.

Let \({\mathfrak {R}}\) be the set of generalised Bestvina-Brady groups of finite ramification which are virtually special, up to isomorphism. We conclude this sect. by showing that \({\mathfrak {R}}\) is countably infinite.

Theorem 3

Assume \(G_{L}^M(S)\) is of finite ramification, then it is virtually torsion-free only if S is periodic.

Proof

Assume that \(G_{L}^M(S)\) is virtually torsion-free. Then there exists \(H\dot{<}G_{L}^M(S)\) which is torsion-free, and in particular \(H\not =G_{L}^M(S)\) because \(S\not ={\mathbb {Z}}\), as we are assuming the group is not a Bestvina-Brady group. This implies that there is torsion in \(G_{L}^M(S)\), coming from finite point stabilisers, as the group of deck transformations \(M\rightarrow L\) is finite and non-trivial. Let \(X=G_{L}^M(S)/H\) denote the set of left cosets of H in \(G_{L}^M(S)\). There is a left \(G_{L}^M(S)\)-action on X:

$$\begin{aligned} G_{L}^M(S)\times X\rightarrow X\;,\;\;g'\cdot (gH)=(g'g)H\;,\;\;\forall \;g',g\in G_{L}^M(S). \end{aligned}$$

Because H is of finite index in \(G_{L}^M(S)\), we have \(r=|X|<\infty \). The action gives a homomorphism

$$\begin{aligned} \phi :G_{L}^M(S)\rightarrow Sym_X\cong S_r. \end{aligned}$$

Since \(gH=H\implies g\in H\), we get \(\ker {\phi }\leqslant H\).

Let p be a prime number dividing the order of the group of deck transformations \(M\rightarrow L\) and let \(\gamma \) be a loop in L whose representative in this group has order p. Choose an edge loop \(a_1,\dots ,a_m\) in L corresponding to \(\gamma \).

Utilising the presentation of Definition 1.1 in [9] which is the same as presentation (1) in Theorem 1, we get group generators from edges, so consider \(\phi (a_1),\ \dots ,\ \phi (a_m)\). These are finite group elements in the finite group \(S_r\). As \(\phi \) is a homomorphism, denoting the order of an element g by o(g),we get the infinite sequence

$$\begin{aligned}&J=\ldots ,\ o\left( \phi (a_1)^{-1}\cdots \phi (a_m)^{-1}\right) ,\ o\left( \phi (a_1)^0\cdots \phi (a_m)^0\right) =1, \\&\quad o\left( \phi (a_1)\cdots \phi (a_m)\right) ,\ o\left( \phi (a_1)^2\cdots \phi (a_m)^2\right) ,\dots \end{aligned}$$

This is now a periodic sequence with each term in \(\{1,p\}\), with some finite period. Now H being torsion-free implies that \(\ker {\phi }\) is also torsion-free. For \(i\not \in S\), \(a_1^i \cdots a_m^i\) is a torsion element, and hence cannot belong to \(\ker {\phi }\), therefore \(o\left( \phi (a_1)^i\cdots \phi (a_m)^i\right) =p\). But for \(i\in S\), we have \(a^i\cdots a_m^i=1\), and since \(\phi \) is a homomorphism, \(o\left( \phi (a_1)^i\cdots \phi (a_m)^i\right) =1\) too. This means that if S is not periodic, then J is not periodic. Hence:

$$\begin{aligned} G_{L}^M(S)\ \text {virtually torsion-free}\implies J\ \text {periodic}\implies S\ \text {periodic}. \end{aligned}$$

\(\square \)

Since there are countably many periodic subsets of \({\mathbb {Z}}\), and countably many finite connected flag complexes, there are at most countably many generalised Bestvina-Brady groups of finite ramification which are virtually torsion-free. Groups which are virtually special must be virtually torsion-free. Hence \({\mathfrak {R}}\) is at most countable. It is not finite because Theorem 1 provides infinitely many examples, which all have different abelianisations (see Sect. 7).

4 Fundamental domain

We apply Definition 5 to L being an m-vertex triangulation of the circle and M being an mk-triangulation of the circle, as well as \(S=k{\mathbb {Z}}\). We refer to the resulting group as \(G_m^k\), and to the branched cover as \(X_m^k\). Using the presentation in [9], we get generators \(x_1,\dots ,x_m\) and relations (1) as stated in Theorem 1.

The group \(G_m^k\) acts (on the left) on the square complex \(X_m^k\) which admits a height function \(f:X_m^k\rightarrow {\mathbb {R}}\) such that vertices of the complex lie at integer heights. There is one orbit of vertices at each height i, with a distinguished base vertex \(X^i\), which has stabiliser \(\left\langle x_1^ix_2^i\cdots x_m^i\right\rangle \). Other vertices will have stabilisers being the appropriate conjugate of this.

Every edge joins two vertices of heights differing by 1. The edges are labelled by the heights of the top vertex. There are m free orbits of edges at each height, with distinguished orbit representatives \({\mathbf {u}}^i_j\) at height i for \(1\leqslant j\leqslant m\), such that \({\mathbf {u}}_1^i\) joins \(X^{i-1}\) to \(X^i\).

Every square has a top vertex of height \(i+1\), a bottom vertex of height \(i-1\) and two vertices of height i. We say such a square has height i.

Denote by \(\text {Orb}\left( {\mathbf {u}}\right) \) the orbit of an edge. There are m free orbits of squares at each height, with distinguished orbit representatives \(\underline{{\mathbf {s}}}^i_j\) at height i for \(1\leqslant j\leqslant m\). They are chosen such that \(\underline{{\mathbf {s}}}^i_j\) contains edges in \(\text {Orb}\left( {\mathbf {u}}_j^{i+1}\right) \), \(\text {Orb}\left( {\mathbf {u}}_{j+1}^{i+1}\right) \), \(\text {Orb}\left( {\mathbf {u}}_j^{i}\right) \), \(\text {Orb}\left( {\mathbf {u}}_{j+1}^{i}\right) \), in that order, having picked an appropriate direction to read around the square (using cyclic indexing, which will also be used later on, which means that \(j+1\) denotes 1 for \(j=m\), for example). In order to complete the convention for labelling the edges and squares, we use Fig. 1 to order the edges and squares. Note that the labels on the edges in the link refer to which squares in the complex \(X_m^k\) contribute towards this.

Fig. 1
figure 1

Part of the descending link of \(X^i\)

Note further that in Fig. 1, when \(i\in S\), the element \(x_1^i\cdots x_m^i\) is the identity, so this forms a complete loop, isomorphic to L.

Each square is made up of two parallel copies of two types of edges, where we can think of the type of the edge as being the generator of the underling RAAG it corresponds to. Each such square is then contained in a unique plane made up of squares of only those two types of edges (see Sect. 12 in [9]). Given a vertex of positive height, we can consider all the squares which have this vertex as their top vertex, and form a pyramid by continuing each plane corresponding to each square, down to the 0-level.

Vertex \(X^i\), for positive i, contains the following vertices around the base of its corresponding pyramid at the 0-level: (see Lemma 14.3 in [9])

in that order (when reading in an appropriate direction). Note that when \(i\in k{\mathbb {Z}}\), then \(x_1^i x_2^i \cdots x_m^i\) is the identity element, hence \(x_1^i x_2^i\cdots x_m^i\cdot X^0=X^0\) and the elements above are a complete loop and go around the entire base of the pyramid. We can do the same for vertices of negative height, by projecting planes upwards rather than downwards, towards the 0-level. Vertex \(X^i\), for negative i, has the following vertices around the base of its corresponding pyramid at the 0-level:

The faces of the pyramid are parts of embedded planes in \(X_m^k\), consisting of two types of edges each. When \(i\in S\), this pyramid will have m faces and it will have mk faces otherwise.

We can now use this to determine what every square in the complex looks like. For example, Fig. 2 shows one face of the pyramid with apex \(X^{n+2}\) which is used to understand square \(\underline{{\mathbf {s}}}^{n+1}_1\).

Fig. 2
figure 2

One face of a pyramid with base at the 0-level

Since edges and squares are in free orbit, we will refer to the group element acting as the coefficient.

Lemma 1

Given the above notational conventions, the complex \(X^k_m\) and the action of \(G_m^k\) on it can be fully described in Fig. 3.

Fig. 3
figure 3

\(G_m^k\)-orbit representatives of 2-cells in \(X_m^k\) in layer i

In Fig. 3, the following shorthand is used: (note that here, \(x_i\) for \(i<1\) should be thought of as the identity element, for example \(\alpha (i,0)\) is just the identity element)

$$\begin{aligned}&\alpha (i,j):= x_1^{i+1}\cdots x_{j-1}^{i+1}\ x_j\ x_{j-1}^{-i}\cdots x_1^{-i} \\&\beta (i,j):= x_1^{i+1}\cdots x_{j-1}^{i+1}\ x_j\ x_{j-1}^{1-i}\cdots x_1^{1-i} \\&\gamma (i,j):= x_1^{i+1}\cdots x_j^{i+1} \end{aligned}$$

The proof of this involves unwrapping the notation by induction and can be found in the appendix. Much of the proof of Theorem 1 will involve translating around patches of the fundamental domain to understand the structure of hyperplanes, using the fact that edges or squares of a fixed height and type are in free orbit.

5 Hyperplane stabilisers in a quotient

We show that \(G_m^k\) is virtually torsion-free by exhibiting an explicit surjection onto a finite group with torsion-free kernel as follows:

where \(\sigma _i\) is a generator of \({\mathbb {Z}}/k{\mathbb {Z}}\). We can see that is a homomorphism from (1) since each \(\sigma _i\) has order k. The only torsion elements come from point stabilisers of the action on \(X_m^k\), which are conjugates of the torsion elements in the presentation (or their powers). This is because any torsion element must fix some vertex (see Proposition 6.7 of Chapter II.6 in [3]), and the action is by deck transformations of a branched cover, hence each torsion element must be conjugate to a stabiliser of one of the \(X^i\). Since these do not map to the identity (neither do their powers, as k is prime) in \({\bar{G}}^k_m\), we get that \(\ker {\phi ^k_m}\) is a torsion-free subgroup of \(G_m^k\) of index mk. Note that \({\bar{G}}_m^k\) is abelian. We could have used a smaller target group to get a torsion-free kernel, however this larger group will be useful for defining linear characters later. If k were not prime, this would be false, as then an intermediate power of a torsion element (which is a torsion element itself) would still lie in the kernel, due to some factorisation of k.

We can now turn our attention to the quotient complex \({\bar{X}}_m^k:=X_m^k/\ker {\phi _m^k}\). We denote images by placing a bar over the notation. From Lemma 1, we obtain the new fundamental domain in Fig. 4.

Fig. 4
figure 4

\({\bar{G}}_m^k\)-orbit representatives of 2-cells in \({\bar{X}}_m^k\) in layer i

In Fig. 4, the following shorthand is used:

$$\begin{aligned}&{\bar{\alpha }}(i,j):= \phi _m^k\left( \alpha (i,j)\right) =\sigma _1\cdots \sigma _j \\&{\bar{\beta }}(i,j):= \phi _m^k\left( \beta (i,j)\right) =\sigma _1^2\cdots \sigma _{j-1}^2\sigma _j \\&{\bar{\gamma }}(i,j):= \phi _m^k\left( \gamma (i,j)\right) =\sigma _1^{i+1}\cdots \sigma _j^{i+1} \end{aligned}$$

Given a hyperplane \([{\mathbf {u}}]\), we define the hyperplane stabiliser as

$$\begin{aligned} \text {Stab}\left( [{\mathbf {u}}]\right) :=\left\{ g\in {\bar{G}}_m^k\ \big |\ g\cdot {\mathbf {u}}\sim {\mathbf {u}}\right\} . \end{aligned}$$

Note that hyperplane here refers to a hyperplane of the quotient complex, not in the CAT(0) cube complex. We can compute the hyperplane stabilisers by observing which \({\bar{G}}_m^k\)-coefficients of an edge type in a particular layer lie in the same hyperplane. This is done by first observing that in order to “move” to a different layer and remain in the same hyperplane (for edge \(\bar{{\mathbf {u}}}_j^i\), say), we must utilise squares \(\underline{\bar{{\mathbf {s}}}}_j\) and \(\underline{\bar{{\mathbf {s}}}}_{j-1}\) (using cyclic indexing), as they are the only ones to contain an edge of this type. We can think of the hyperplane stabilisers as fundamental groups of graphs where the vertices represent heights and edges represent how the coefficient changes when “jumping” across a square to change height, as shown in Fig. 5. These edge labels are calculated from the coefficients on the edges in Fig. 4. The direction of the arrow shows the direction in which the edge label is multiplied (take the inverse for the opposite direction). For example, by looking at the top left and bottom right edges of square \(g\cdot \underline{\bar{{\mathbf {s}}}}_1^i\), we can deduce that using this square to drop down to layer i, the coefficient of edge \(g\cdot \bar{{\mathbf {u}}}_1^{i+1}\) will be multiplied by \({\bar{\alpha }}(i,1)=\sigma _1\), resulting in the edge \(g\sigma _1\cdot \bar{{\mathbf {u}}}_1^i\), which is still in the same hyperplane as \(g\cdot \bar{{\mathbf {u}}}_1^{i+1}\). Note that this multiplication should be thought of as occurring on the right, but \({\bar{G}}_m^k\) is abelian, so we do not need to worry about this.

Fig. 5
figure 5

Moving between edges of different heights in the same hyperplane of type \(\bar{{\mathbf {u}}}_j\)

We can read off elements of the hyperplane stabiliser from Fig. 5 by multiplying along based loops, such as in the case \(1<j\leqslant m\) we can go down one layer using the left side of the graph and return up using the right side, resulting in the element

$$\begin{aligned} \sigma _1 \sigma _2 \cdots \sigma _j \cdot \left( \sigma _1 \sigma _2 \cdots \sigma _{j-2}\right) ^{-1}=\sigma _{j-1}\sigma _j. \end{aligned}$$

From this, (using cyclic indexing) we can determine:

$$\begin{aligned} \text {Stab}\left( [\bar{{\mathbf {u}}}_{j}^i]\right) =\left\langle \sigma _{j-1}\sigma _j\right\rangle . \end{aligned}$$

Note that because squares of a fixed type are in free orbit and our group of coefficients is abelian, it does not matter which particular hyperplane we are in: the stabiliser will only depend on the type of edge. So we can ignore the coefficient or height of an edge when considering its hyperplane stabiliser, which will be mirrored in the notation from now on.

Lemma 2

For integers ab and elements \(g,h\in {\bar{G}}_m^k\), we have:

$$\begin{aligned} g\cdot \bar{{\mathbf {u}}}_j^a\sim h\cdot \bar{{\mathbf {u}}}_j^b \implies h \in g\left( \sigma _1\cdots \sigma _j\right) ^{a-b} Stab \left( [\bar{{\mathbf {u}}}_{j}]\right) . \end{aligned}$$

Proof

Consider which \(\bar{{\mathbf {u}}}_j\)-type edges lie on layer b and are part of the hyperplane \([g\cdot \bar{{\mathbf {u}}}_j^a]\). Their \({\bar{G}}_m^k\)-coefficient will be g multiplied by \(\left( \sigma _1\cdots \sigma _j\right) ^{a-b}\) from moving to layer b, by moving along the left side of the graph in Fig. 5, and then maybe also moved around in the layer by multiplication by an element from the stabiliser, giving the result. It did not matter that we chose to take the left side, as the stabiliser is the fundamental group of the graph we used to compute it. \(\square \)

6 Linear characters

Fix a primitive \(k\hbox {th}\) root of unity \(\mu \) in \({\mathbb {C}}\). For each \(1\leqslant j\leqslant m\), consider the homomorphism:

$$\begin{aligned} {\mathfrak {D}}(j): {\bar{G}}_m^k&\rightarrow {\mathbb {C}}\\ \sigma _i&\mapsto \left\{ \begin{array}{ll} \mu &{} \text {if }\, i=j\\ 1 &{} \text {else} \end{array}\right. \end{aligned}$$

This defines a linear character. We will show that \({\bar{X}}_m^k\) is a special cube complex by working with \(\text {Ch}({\bar{G}}_m^k)\), the abelian group of linear characters (under pointwise multiplication). In particular, we can multiply and take inverses. The main idea is to come up with characters constant on certain sets. Cyclic indexing will again be used in this section, so for example, \({\mathfrak {D}}(j-1)\) for \(j=1\) will refer to \({\mathfrak {D}}(m)\).

We will proceed by checking each of the 4 conditions for a special cube complex:

1.:

(\(\sim \),\(\perp \)) Every square in \({\bar{X}}_m^k\) is such that every corner consists of two edges of different types meeting, hence a hyperplane can never cross itself.

2.:

(2-sided) We choose an orientation for each edge by deciding to make each edge point upwards. Now each square takes positively oriented edges to positively oriented edges or negatively oriented edges to negatively oriented edges, so we can never have the situation \(\bar{{\mathbf {u}}}_j^i\sim -\bar{{\mathbf {u}}}_j^i\).

3.:

(\(\sim \),\(\circlearrowright \)) Next we investigate whether a hyperplane can self-osculate. In order for this to occur, we must have two distinct edges \(g\cdot \bar{{\mathbf {u}}}_j^a\) and \(h\cdot \bar{{\mathbf {u}}}_j^b\) for some integers ab, some \(1\leqslant j\leqslant m\) and \(g,h\in {\bar{G}}_m^k\), for which we have

$$\begin{aligned} g\cdot \bar{{\mathbf {u}}}_j^a\sim h\cdot \bar{{\mathbf {u}}}_j^b\ \ \ \text {and also}\ \ g\cdot \bar{{\mathbf {u}}}_j^a\circlearrowright h\cdot \bar{{\mathbf {u}}}_j^b. \end{aligned}$$

We already know from Lemma 2 that the first condition implies that

$$\begin{aligned} h \in g\left( \sigma _1\cdots \sigma _j\right) ^{a-b} \text {Stab}\left( [\bar{{\mathbf {u}}}_{j}]\right) . \end{aligned}$$

Consider the second condition. Since the two edges in question osculate, they must share a common vertex. This implies that \(b\in \{a-1,a,a+1\}\). We consider each in turn:

Case 1: \((b=a-1)\) From the fundamental domain in the previous section, we know that edge \(\sigma _1^{-1}\cdots \sigma _{j-1}^{-1}\cdot \bar{{\mathbf {u}}}_j^{i+1}\) is attached to vertex \({\bar{X}}^{i}\) and so is edge \(\bar{{\mathbf {u}}}_j^i\). By translation, this means that to get at all the edges of type \(\bar{{\mathbf {u}}}_j^{a-1}\) which osculate with \(g\cdot \bar{{\mathbf {u}}}_j^a\), the coefficient is multiplied by \(\sigma _1\cdots \sigma _{j-1}\) and also possibly by some stabiliser of the vertex (note that since \({\bar{G}}_m^k\) is abelian, the stabiliser of a vertex is determined only by its height). This implies that

$$\begin{aligned} h=\left( \sigma _1^{a-1}\cdots \sigma _m^{a-1}\right) ^c\sigma _1\cdots \sigma _{j-1}g \end{aligned}$$

for some integer c. So in order for the self-osculation to be possible, it must be true that

$$\begin{aligned} \left( \sigma _1^{a-1}\cdots \sigma _m^{a-1}\right) ^c\sigma _1\cdots \sigma _{j-1} \in \left( \sigma _1\cdots \sigma _j\right) ^{a-b} \text {Stab}\left( [\bar{{\mathbf {u}}}_{j}]\right) . \end{aligned}$$

However, the character \({\mathfrak {D}}(j-1){\mathfrak {D}}(j)^{-1}\) takes the value 1 on the set on the right and takes the value \(\mu \) on the element on the left, hence this is not possible.

Case 2: \((b=a+1)\) Reasoning similarly to above, we have that, for some integer c,

$$\begin{aligned} h=\left( \sigma _1^a\cdots \sigma _m^a\right) ^c\sigma _1^{-1}\cdots \sigma _{j-1}^{-1}g. \end{aligned}$$

This implies that for self-osculation, we need

$$\begin{aligned} \left( \sigma _1^a\cdots \sigma _m^a\right) ^c\sigma _1^{-1}\cdots \sigma _{j-1}^{-1} \in \left( \sigma _1\cdots \sigma _j\right) ^{a-b} \text {Stab}\left( [\bar{{\mathbf {u}}}_{j}]\right) . \end{aligned}$$

However, the character \({\mathfrak {D}}(j-1){\mathfrak {D}}(j)^{-1}\) takes the value 1 on the set on the right and takes the value \(\mu ^{-1}\) on the element on the left, hence this is not possible.

Case 3: \((b=a)\) Here we can have two further possibilities: the two edges could be joined at a vertex of height a or \(a-1\). Note that in either case, this requires this vertex to be a branching vertex, hence the respective heights are not divisible by k.

In the former case, we get h from g by multiplying by a stabiliser of a vertex of height a, so for some integer \(c\not \in k{\mathbb {Z}}\) (because we want the two edges to be distinct) we have:

$$\begin{aligned} h=\left( \sigma _1^a\cdots \sigma _m^a\right) ^cg. \end{aligned}$$

This implies that for self-osculation, we need

$$\begin{aligned} \left( \sigma _1^a\cdots \sigma _m^a\right) ^c \in \left( \sigma _1\cdots \sigma _j\right) ^{a-b} \text {Stab}\left( [\bar{{\mathbf {u}}}_{j}]\right) . \end{aligned}$$

However, since \(a=b\), this is the same as asking for \(\left( \sigma _1^a\cdots \sigma _m^a\right) ^c\) to be in \(\left\langle \sigma _{j-1}\sigma _j\right\rangle \). Since \(m>2\), the character \({\mathfrak {D}}(j+1)\) evaluates to 1 on the stabiliser, however it takes the value \(\mu ^{ac}\) on \(\left( \sigma _1^a\cdots \sigma _m^a\right) ^c\). These do not agree, as k is prime and neither of a or c are divisible by k.

In the latter case, we get h from g by multiplying by a stabiliser of a vertex of height \(a-1\). Similarly, we obtain, for some integer \(c\not \in k{\mathbb {Z}}\),

$$\begin{aligned} h=\left( \sigma _1^{a-1}\cdots \sigma _m^{a-1}\right) ^cg. \end{aligned}$$

Just as in the previous case, this is the same as asking for \(\left( \sigma _1^{a-1}\cdots \sigma _m^{a-1}\right) ^c\) to be in \(\left\langle \sigma _{j-1}\sigma _j\right\rangle \). The character \({\mathfrak {D}}(j+1)\) evaluates to 1 on the stabiliser, but takes the value \(\mu ^{c(a-1)}\) on the element. These again do not coincide as k is prime and neither of c or \(a-1\) are divisible by k in this case.

Therefore we have showed that no hyperplane self-osculates in \({\bar{X}}_m^k\).

4. (\(\perp \),\(\circlearrowright \)) Finally, we investigate whether two hyperplanes \({\mathfrak {H}}\), \({\mathfrak {H}}'\) can inter-osculate. In order for this to occur, we must have two distinct hyperplanes which cross. This can only occur between one of type \([\bar{{\mathbf {u}}}_j]\) and one of type \([\bar{{\mathbf {u}}}_{j+1}]\) (using cyclic indexing). In fact, since an intersection of hyperplanes can only happen at a square, it does not matter which corner of the square or which edges of that square are considered, since each edge in a pair of parallel edges represents the same hyperplane. Hence without loss of generality we may assume that it is the top corner. Now we proceed according to the two ways this corner can be, according to the fundamental domain in Fig. 4 from Sect. 5.

Case 1: \((1\leqslant j<m)\) In this situation, \({\mathfrak {H}}\perp {\mathfrak {H}}'\) comes from edges \(g\cdot \bar{{\mathbf {u}}}_j^a\) and \(g\cdot \bar{{\mathbf {u}}}_{j+1}^a\) for some integer a and \(g\in {\bar{G}}_m^k\). As when dealing with the self-osculation, we now have 4 possible sources of osculation to deal with:

  • Sub-case 1.1: (joined at the top vertex) From the top corner of the fundamental domain we can deduce that osculation comes from edges \(h\cdot \bar{{\mathbf {u}}}_j^b\) and \(h\left( \sigma _1^b\cdots \sigma _m^b\right) ^c\cdot \bar{{\mathbf {u}}}_{j+1}^b\), for some integers \(b,c\not \in k{\mathbb {Z}}\) (because we are attached at a branching vertex and the edges are not meeting at the corner of a square, respectively) and some \(h\in {\bar{G}}_m^k\). We now need to check if \(h\cdot \bar{{\mathbf {u}}}_j^b\sim g\cdot \bar{{\mathbf {u}}}_j^a\) and \(h\left( \sigma _1^b\cdots \sigma _m^b\right) ^c\cdot \bar{{\mathbf {u}}}_{j+1}^b\sim g\cdot \bar{{\mathbf {u}}}_{j+1}^a\) are both possible simultaneously. By Lemma 2, this implies:

    $$\begin{aligned} g\in \left( h\left( \sigma _1\cdots \sigma _j\right) ^{b-a}\text {Stab}\left( [\bar{{\mathbf {u}}}_j]\right) \right) \cap \left( h\left( \sigma _1^b\cdots \sigma _m^b\right) ^c\left( \sigma _1\cdots \sigma _{j+1}\right) ^{b-a}\text {Stab}\left( [\bar{{\mathbf {u}}}_{j+1}]\right) \right) , \end{aligned}$$

    so we need

    $$\begin{aligned} \left( \left( \sigma _1\cdots \sigma _j\right) ^{b-a}\left\langle \sigma _{j-1}\sigma _j\right\rangle \right) \cap \left( \left( \sigma _1^b\cdots \sigma _m^b\right) ^c\left( \sigma _1\cdots \sigma _{j+1}\right) ^{b-a}\left\langle \sigma _j\sigma _{j+1}\right\rangle \right) \end{aligned}$$

    to not be empty, which is the same as

    $$\begin{aligned} \left\langle \sigma _{j-1}\sigma _j\right\rangle \cap \left( \sigma _1^b\cdots \sigma _m^b\right) ^c\sigma _{j+1}^{b-a}\left\langle \sigma _j\sigma _{j+1}\right\rangle \end{aligned}$$

    not being empty. However, as \(m>3\), the character \({\mathfrak {D}}(j+2)\) evaluates to 1 on the left set and to \(\mu ^{bc}\ne 1\) on the right set, so the intersection is empty.

  • Sub-case 1.2: (joined at the bottom vertex) From the bottom corner of the fundamental domain we can deduce that osculation comes from edges \(h\sigma _j\cdot \bar{{\mathbf {u}}}_j^{b+1}\) and \(h\left( \sigma _1^b\cdots \sigma _m^b\right) ^c\cdot \bar{{\mathbf {u}}}_{j+1}^{b+1}\) for some integers \(b,c\not \in k{\mathbb {Z}}\) and some \(h\in {\bar{G}}_m^k\). Similarly to above, this implies that

    $$\begin{aligned} \sigma _j\left\langle \sigma _{j-1}\sigma _j\right\rangle \cap \left( \sigma _1^b\cdots \sigma _m^b\right) ^c\sigma _{j+1}^{b-a+1}\left\langle \sigma _j\sigma _{j+1}\right\rangle \end{aligned}$$

    is not empty. However, as \(m>3\), the character \({\mathfrak {D}}(j+2)\) evaluates to 1 on the left set and to \(\mu ^{bc}\ne 1\) on the right set, so the intersection is empty.

  • Sub-case 1.3: (j above \(j+1\)) From the left corner of the fundamental domain we can deduce that osculation comes from edges \(h\left( \sigma _1^b\cdots \sigma _m^b\right) ^c\cdot \bar{{\mathbf {u}}}_j^{b+1}\) and \(h\sigma _1\cdots \sigma _{j-1}\cdot \bar{{\mathbf {u}}}_{j+1}^b\) for some integers \(b,c\not \in k{\mathbb {Z}}\) and some \(h\in {\bar{G}}_m^k\). Similarly to above, this implies that

    $$\begin{aligned} \left( \sigma _1^b\cdots \sigma _m^b\right) ^c\sigma _j\left\langle \sigma _{j-1}\sigma _j\right\rangle \cap \sigma _{j+1}^{b-a}\left\langle \sigma _j\sigma _{j+1}\right\rangle \end{aligned}$$

    is not empty. However, as \(m>3\), the character \({\mathfrak {D}}(j+2)\) evaluates to 1 on the right set and to \(\mu ^{bc}\ne 1\) on the left set, so the intersection is empty.

  • Sub-case 1.4: (j below \(j+1\)) From the right corner of the fundamental domain we can deduce that osculation comes from edges \(h\left( \sigma _1^b\cdots \sigma _m^b\right) ^c\cdot \bar{{\mathbf {u}}}_{j+1}^{b+1}\) and \(h\sigma _1\cdots \sigma _j\cdot \bar{{\mathbf {u}}}_j^b\) for some integers \(b,c\not \in k{\mathbb {Z}}\) and some \(h\in {\bar{G}}_m^k\). Similarly to above, this implies that

    $$\begin{aligned} \left( \sigma _1^b\cdots \sigma _m^b\right) ^c\sigma _{j+1}^{b-a+1}\left\langle \sigma _j\sigma _{j+1}\right\rangle \cap \left\langle \sigma _{j-1}\sigma _j\right\rangle \end{aligned}$$

    is not empty. However, as \(m>3\), the character \({\mathfrak {D}}(j+2)\) evaluates to 1 on the right set and to \(\mu ^{bc}\ne 1\) on the left set, so the intersection is empty.

Case 2: \((j=m,``j+1"=1)\) In this situation, \({\mathfrak {H}}\perp {\mathfrak {H}}'\) comes from edges \(g\cdot \bar{{\mathbf {u}}}_m^a\) and \(g\sigma _1^a\cdots \sigma _m^a\cdot \bar{{\mathbf {u}}}_{1}^a\) for some integer a and \(g\in {\bar{G}}_m^k\). Once again we have 4 possible sources of osculation to deal with:

  • Sub-case 2.1: (joined at the top vertex) From the top corner of the fundamental domain we can deduce that osculation comes from edges \(h\left( \sigma _1^b\cdots \sigma _m^b\right) ^c\cdot \bar{{\mathbf {u}}}_m^b\) and \(h\sigma _1^b\cdots \sigma _m^b\cdot \bar{{\mathbf {u}}}_1^b\) for some integers \(b,c\not \in k{\mathbb {Z}}\) and some \(h\in {\bar{G}}_m^k\). From Lemma 2, in order for this to occur, we need both of

    $$\begin{aligned} g\in h\left( \sigma _1^b\cdots \sigma _m^b\right) ^c\left( \sigma _1\cdots \sigma _m\right) ^{b-a}\left\langle \sigma _{m-1}\sigma _m\right\rangle \end{aligned}$$

    and

    $$\begin{aligned} g\sigma _1^a\cdots \sigma _m^a\in h\sigma _1^b\cdots \sigma _m^b\sigma _1^{b-a}\left\langle \sigma _1\sigma _m\right\rangle \end{aligned}$$

    to hold simultaneously. This is the same as

    $$\begin{aligned} \sigma _1^{b-a}\left\langle \sigma _1\sigma _m\right\rangle \cap \left( \sigma _1^b\cdots \sigma _m^b\right) ^c\left\langle \sigma _{m-1}\sigma _m\right\rangle \end{aligned}$$

    not being empty. However, since \(m>3\), the character \({\mathfrak {D}}(2)\) evaluates to 1 on the left set and to \(\mu ^{bc}\ne 1\) on the right set, so the intersection is empty.

  • Sub-case 2.2: (joined at the bottom vertex) From the bottom corner of the fundamental domain we can deduce that osculation comes from edges \(h\left( \sigma _1^b\cdots \sigma _m^b\right) ^c\cdot \bar{{\mathbf {u}}}_m^{b+1}\) and \(h\sigma _1^{b+1}\cdots \sigma _{m-1}^{b+1}\sigma _m^b\cdot \bar{{\mathbf {u}}}_1^{b+1}\) for some integers \(b,c\not \in k{\mathbb {Z}}\) and some \(h\in {\bar{G}}_m^k\). Similarly to above, this implies that

    $$\begin{aligned} \left( \sigma _1^b\cdots \sigma _m^b\right) ^c\sigma _m\left\langle \sigma _{m-1}\sigma _m\right\rangle \cap \sigma _1^{b-a+1}\left\langle \sigma _1\sigma _m\right\rangle \end{aligned}$$

    is not empty. However, since \(m>3\), the character \({\mathfrak {D}}(2)\) evaluates to 1 on the right set and to \(\mu ^{bc}\ne 1\) on the left set, so the intersection is empty.

  • Sub-case 2.3: (1 above m) From the right corner of the fundamental domain we can deduce that osculation comes from edges \(h\sigma _1^{b+1}\cdots \sigma _m^{b+1}\cdot \bar{{\mathbf {u}}}_1^{b+1}\) and \(h\left( \sigma _1^b\cdots \sigma _m^b\right) ^c\sigma _1\cdots \sigma _m\cdot \bar{{\mathbf {u}}}_m^b\) for some integers \(b,c\not \in k{\mathbb {Z}}\) and some \(h\in {\bar{G}}_m^k\). Similarly to above, this implies that

    $$\begin{aligned} \sigma _1^{b-a+1}\left\langle \sigma _1\sigma _m\right\rangle \cap \left( \sigma _1^b\cdots \sigma _m^b\right) ^c\left\langle \sigma _{m-1}\sigma _{m}\right\rangle \end{aligned}$$

    is not empty. However, since \(m>3\), the character \({\mathfrak {D}}(2)\) evaluates to 1 on the left set and to \(\mu ^{bc}\ne 1\) on the right set, so the intersection is empty.

  • Sub-case 2.4: (1 below m) From the left corner of the fundamental domain we can deduce that osculation comes from edges \(h\left( \sigma _1^b\cdots \sigma _m^b\right) ^c\cdot \bar{{\mathbf {u}}}_m^{b+1}\) and \(h\sigma _1^{b+1}\cdots \sigma _{m-1}^{b+1}\sigma _m^b\cdot \bar{{\mathbf {u}}}_1^b\) for some integers \(b,c\not \in k{\mathbb {Z}}\) and some \(h\in {\bar{G}}_m^k\). Similarly to above, this implies that

    $$\begin{aligned} \left( \sigma _1^b\cdots \sigma _m^b\right) ^c\sigma _m\left\langle \sigma _{m-1}\sigma _m\right\rangle \cap \sigma _1^{b-a}\left\langle \sigma _1\sigma _m\right\rangle \end{aligned}$$

    is not empty. However, since \(m>3\), the character \({\mathfrak {D}}(2)\) evaluates to 1 on the right set and to \(\mu ^{bc}\ne 1\) on the left set, so the intersection is empty. Hence there is no inter-osculation between hyperplanes in \({\bar{X}}_m^k\).

Hence \({\bar{X}}_m^k\) is a special cube complex. \(\square \)

Proof of Theorem 1

We have that \(\ker {\phi _m^k}\) is torsion-free and \(X_m^k\) is simply-connected, therefore \(\ker {\phi _m^k}=\pi _1\left( {\bar{X}}_m^k\right) \). We also have that \(\ker {\phi _m^k}\) is a finite-index subgroup of \(G_m^k\), hence \(G_m^k\) is virtually special. By Theorem 2, \(\ker {\phi _m^k}\) embeds into a finitely generated RAAG, so is residually finite. Finally, as \(\ker {\phi _m^k}\) is a finite-index subgroup, \(G_m^k\) is also residually finite. \(\square \)

7 Remarks

1. Note that the abelianisation of \(G_m^k\) is

$$\begin{aligned} {G_m^k}^{ab}={\mathbb {Z}}^m / \left\langle (k,k,\dots ,k)\right\rangle . \end{aligned}$$

Using Smith Normal Form, we get

$$\begin{aligned} \underbrace{(k,k,\dots ,k)}_{m}\mapsto (k,\underbrace{0,\dots ,0}_{m-1})\implies {G_m^k}^{ab}\cong C_k\times {\mathbb {Z}}^{m-1} \end{aligned}$$

and hence \(G_m^k\) are distinct up to isomorphism for different integer pairs (mk).

2. The action of \(G_m^k\) on the CAT(0) cube complex \(X_m^k\) is interesting, because even though there are only finitely many \(G_m^k\)-orbits of hyperplanes, we get infinitely many \(\text {Stab}\left( {\mathfrak {H}}\right) \)-orbits of hyperplanes crossing a given hyperplane \({\mathfrak {H}}\). This makes it difficult to apply existing tools such as Theorem 4.1 in [7] for proving that the group is virtually special.

For an explicit example, consider the hyperplane \([{\mathbf {u}}_2^0]\). From the fundamental domain in sect. 4, we have \({\mathbf {u}}_2^0\sim {\mathbf {u}}_2^i\ \forall \ i\in {\mathbb {Z}}\) and also \({\mathbf {u}}_2^i\perp {\mathbf {u}}_3^i\ \forall \ i\in {\mathbb {Z}}\). Similarly to Sect. 5 we can compute the hyperplane stabilisers

$$\begin{aligned} \text {Stab}\left( [{\mathbf {u}}_2^0]\right) =\left\langle x_1^a x_2^a\ |\ \forall \ a\in {\mathbb {Z}}\right\rangle ,\ \text {Stab}\left( [{\mathbf {u}}_3^0]\right) =\left\langle x_2^a x_3^a\ |\ \forall \ a\in {\mathbb {Z}}\right\rangle , \end{aligned}$$

as well as \({\mathbf {u}}_3^i\sim x_1^i\cdot {\mathbf {u}}_3^0\). This implies that the set of coefficients g for which \([{\mathbf {u}}_2^0]\) crosses \([g\cdot {\mathbf {u}}_3^0]\) contains the set \(I=\{x_1^i\ |\ i\in {\mathbb {Z}}\}\). Two elements ab of I give the same hyperplane in the \(\text {Stab}\left( [{\mathbf {u}}_2^0]\right) \)-orbit of hyperplanes which cross \([{\mathbf {u}}_2^0]\) in the following way: if one can get from a to b by multiplying on the left by an element from \(\text {Stab}\left( [{\mathbf {u}}_2^0]\right) \) and on the right by an element from \(\text {Stab}\left( [{\mathbf {u}}_3^0]\right) \). So let us see how many such hyperplanes there are by seeing how many elements of I are different up to such equivalence. If, after this identification, there were only a finite list of elements left, there would also be a finite list of such elements in the abelianisation. However, in \({G_m^k}^{ab}\) this consists of all elements of the form \(x_1^{i+a}x_2^{a+b}x_3^b\) for some integers abi. To remain within I, we require \(b=a=0\), so actually there are infinitely many elements in the abelianisation after identification.

This means that there are infinitely many \(\text {Stab}\left( [{\mathbf {u}}_2^0]\right) \)-orbits of hyperplanes crossing \([{\mathbf {u}}_2^0]\). Similar infinite behaviour can occur with other hyperplanes and with osculation.

3. The groups in Theorem 1 are not finitely presented because of Corollary 14.5 in [9]. Lemma 14.4 applies with the modification that a relation \(x_1^i\cdots x_m^i\) becomes \(\left( x_1^i\cdots x_m^i\right) ^k\) when \(i\not \in S\).

4. The special groups which are the finite index subgroups can be naturally thought of as kernels of maps to \({\mathbb {Z}}\) in the following way.

In a more general setting of a virtually torsion-free generalised Bestvina-Brady group G of finite ramification with associated locally finite \(\text {CAT}(0)\) cube complex X, we have the following short exact sequence:

$$\begin{aligned} 1\rightarrow \ker {\phi }\rightarrow G\rightarrow {\bar{G}}\rightarrow 1, \end{aligned}$$

where \({\bar{G}}\) is some finite group and \(\ker {\phi }\) is torsion-free. From Theorem 3, the associated branching set is periodic, hence the complex X is periodic. Therefore \(X/\ker {\phi }\) is a \({\mathbb {Z}}\)-cover of some finite cube complex \(\chi \) and we also get a short exact sequence

$$\begin{aligned} 1\rightarrow \ker {\phi }\rightarrow \pi _1(\chi )\rightarrow {\mathbb {Z}}\rightarrow 1. \end{aligned}$$

The finite complex \(\chi \) can be thought of as a branched Salvetti complex, because in the case of a Bestvina-Brady group, this would actually be a Salvetti complex and \(\ker {\phi }\) the associated Bestvina-Brady group. It is the author’s intention to study properties of such complexes further, as well as classify groups in \({\mathfrak {R}}\), the set of generalised Bestvina-Brady groups of finite ramification which are virtually special.