1 Introduction

An arrangement is a finite set of closed subvarieties of a variety. Despite their simple definition, arrangements are of interest to a wide range of areas of mathematics such as algebraic geometry, topology, combinatorics, Lie theory and singularity theory.

Classically, most attention has been given to arrangements of hyperplanes in an affine space. However, in the last two decades, an increasing amount of interest has been drawn towards toric arrangements, i.e. arrangements \(\mathcal {A}=\{A_i\}_{i \in I}\) of codimension one subtori inside an ambient torus X. In particular, a lot of work has gone into understanding the cohomology of complements \(X_{\mathcal {A}}=X {\setminus } \cup _{i \in I} A_i\) of toric arrangements. This is also the topic of the present paper.

More specifically, we are interested in the following situation. Let \(\Gamma \) be a finite group of automorphisms of X which stabilize \(\mathcal {A}\) as a set. The group \(\Gamma \) then acts on the complement \(X_{\mathcal {A}}\) and this action induces a linear action on the cohomology groups \(H^{i} \! \left( X_{\mathcal {A}}\right) \). In other words, the groups \(H^{i} \! \left( X_{\mathcal {A}}\right) \) become representations of \(\Gamma \). A typical example (and the example which will be given most attention in the present paper) is when \(\Gamma \) is a Coxeter group, L is a lattice with a \(\Gamma \)-action, \(X=L \otimes {\mathbb {C}}^*\) and \(\mathcal {A}\) is the set of subtori fixed by reflections in \(\Gamma \).

The main result of this work is an efficient algorithm, see Algorithms 3.3 and 3.6, which computes \(H^{i} \! \left( X_{\mathcal {A}}\right) \) together with its representation structure. The algorithm is applicable rather generally but as one application we determine the cohomology of the complements of the toric arrangements associated with root systems of exceptional type as representations of the corresponding Weyl groups. This is not only of interest in its own but also of interest in moduli theory. For instance,

  • the toric arrangement associated with \(E_6\) is closely related to moduli spaces of cubic surfaces (see, for example, [7]),

  • the toric arrangement associated with \(E_7\) is closely related to moduli spaces of quartic curves, abelian threefold and Del Pezzo surfaces of degree 2 (see, for example, [3, 5, 24]),

  • the toric arrangement associated with \(E_8\) is closely related to moduli spaces of Del Pezzo surfaces of degree 1 and to moduli of genus 4 curves (see, for example, [12]).

In fact, the results of the present paper have been essential ingredients in determining the cohomology of many of the moduli spaces mentioned above (others, in particular the case of Del Pezzo surfaces of degree 1 is work in progress). We also mention that recent results suggest a connection between toric arrangements and cluster varieties, log-Calabi–Yau varieties and mirror symmetry (see, for example, [20, 24]).

The study of cohomology groups of complements of toric arrangements can be traced back all the way to Arnol’d [2], but the theory in its current form is probably best attributed to Lehrer [22] or Looijenga [24]. In an abstract sense, Looijenga determined the cohomology groups of complements of toric arrangements—from this perspective our main contribution lies in the explicit nature of the results and the novel approach in the method. We also mention that Looijenga’s work spurred intense investigations and reformulations from more combinatorial perspectives, starting with the work of De Concini and Procesi [14].

The present paper is to a large extent a toric analogue of the paper [18] of Fleischmann and Janiszczak where they do the corresponding computations in the case of hyperplane arrangements. We refer to Remark 4.2 for a more thorough comparison with their work but mention already now that while the hyperplane case is entirely determined by the intersection poset, see Definition 2.2, we also need to take “local” topological and arithmetic data into account in the toric setting. The paper [17] by Eisenbud and Sturmfels provides many of the tools necessary to carry out these computations.

The paper is organized as follows. In Sect. 2, we introduce terminology around general arrangements and review how the cohomology of the complements of a minimally pure arrangement can be determined via inclusion–exclusion techniques. In Sect. 3, we specialize to the situation of a toric arrangement. We show that the cohomology of the complement of a toric arrangement can be computed using only the arithmetic of \({\mathbb {Z}}\)-modules. On the basis of this, we develop Algorithms 3.3 and 3.6 which when combined compute the cohomology of the complement of a toric arrangement. This computation is equivariant with respect to a finite group \(\Gamma \) acting on the ambient torus and stabilizing the arrangement. Finally, in Sect. 4, we use these algorithms to compute the cohomology groups of the complements of the toric arrangements associated with exceptional root systems as representations of the corresponding Weyl groups.

2 General arrangements

Unless otherwise specified, we shall always work over the complex numbers.

Definition 2.1

Let X be a variety. An arrangement \(\mathcal {A}\) in X is a finite set \(\{A_i\}_{i \in I}\) of closed subvarieties of X of codimension 1.

Given an arrangement \(\mathcal {A}\) in a variety X, one may define its divisor

$$\begin{aligned} D_{\mathcal {A}} = \bigcup _{i \in I} A_i \subset X, \end{aligned}$$

and its open complement

$$\begin{aligned} X_{\mathcal {A}} = X {\setminus } D_{\mathcal {A}}. \end{aligned}$$

The variety \(X_{\mathcal {A}}\) will be our main object of study.

Many interesting properties of the variety \(X_{\mathcal {A}}\) can be deduced from properties of \(D_{\mathcal {A}}\) via inclusion–exclusion arguments. The object that governs the principle of inclusion and exclusion in this setting is the intersection poset of \(\mathcal {A}\).

Definition 2.2

Let \(\mathcal {A}\) be an arrangement in a variety X. The intersection poset of \(\mathcal {A}\) is the set

$$\begin{aligned} \mathscr {L}\! \left( \mathcal {A}\right) = \left\{ \left. \cap _{j \in J} A_j \right| J \subseteq I \right\} \end{aligned}$$

of intersections of elements of \(\mathcal {A}\), ordered by reverse inclusion. We include X as an element of \(\mathscr {L}\! \left( \mathcal {A}\right) \) corresponding to the empty intersection.

Remark 2.3

The definition of the poset \(\mathscr {L}\! \left( \mathcal {A}\right) \) is deceivingly similar to a poset used in many combinatorial texts. The difference is that we allow reducible and even disconnected elements in \(\mathscr {L}\! \left( \mathcal {A}\right) \) while the “combinatorial” counterpart consists of irreducible components of intersections. The reason why we have not stuck to this convention will become apparent after Definition 3.2.

It might also be of interest to compare our approach to the theory of arithmetic matroids of Brändén and Moci [8] (which is more closely related to what is above referred to as the “combinatorial intersection poset”) and to the theory of matroids over rings of Fink and Moci [19] (which is more closely related to our approach—our approach is almost an embedded, dual version of a matroid over \({\mathbb {Z}}\)).

Since \(\mathscr {L}\! \left( \mathcal {A}\right) \) is a poset, it has a Möbius function \(\mu : \mathscr {L}\! \left( \mathcal {A}\right) \times \mathscr {L}\! \left( \mathcal {A}\right) \rightarrow {\mathbb {Z}}\) defined inductively by setting \(\mu (Z,Z) = 1\) and

$$\begin{aligned} \sum _{Y \ge Z' \ge Z} \mu (Z',Z) =0, \quad \text {if } Y \ge Z, \end{aligned}$$

where the sum is over all \(Z' \in \mathscr {L}\! \left( \mathcal {A}\right) \) between Y and Z. We shall exclusively be interested in the values of the Möbius function at the minimal element X. Therefore, we shall use the simplified notation \(\mu (Z):=\mu (Z,X)\). See Example 2.6 for an explicit arrangement together with its intersection poset and Möbius function.

2.1 Group actions on arrangements

Let \(\Gamma \) be a finite group of automorphisms of X that stabilizes \(\mathcal {A}\) as a set. Such an action induces an action on \(X_{\mathcal {A}}\) and thus yields a linear action on the de Rham cohomology groups \(H^{i} \! \left( X_{\mathcal {A}}\right) \) as well as the de Rham cohomology groups with compact supports \(H^{i}_c \! \left( X_{\mathcal {A}}\right) \). In other words, each cohomology group is naturally a \(\Gamma \)-representation.

One way to encode this information is via equivariant Poincaré polynomials. If \(\Gamma \) is a finite group acting on a smooth variety Y as above, we define the equivariant Poincaré polynomial of Y at \(g \in \Gamma \) as:

$$\begin{aligned} P(Y,t)(g) := \sum _{i \ge 0} \mathrm {Tr} \!\left( g, H^{i} \! \left( Y\right) \right) \cdot t^i, \end{aligned}$$

where \(\mathrm {Tr} \!\left( g, H^{i} \! \left( Y\right) \right) \) denotes the trace of g on \(H^{i} \! \left( Y\right) \). We define the compactly supported equivariant Poincaré polynomial \(P_c(Y,t)(g)\) in a completely analogous way.

Poincaré polynomials are not additive. Therefore, one should not expect inclusion-exclusion arguments to apply in the computation of Poincaré polynomials. Nonetheless, if X and \(\mathcal {A}\) are nice enough, this turns out to be the case. One such instance is when both X and \(\mathcal {A}\) are minimally pure. We refer to [16] or [26] for the general definitions of minimal purity but recall that a smooth and irreducible variety X is minimally pure if \(H^{i}_c \! \left( X\right) \) is a pure Hodge structure of weight \(2i-2\,\mathrm {dim}(X)\). We also recall that the conditions for minimal purity are satisfied when X is an affine or projective space and each element of \(\mathcal {A}\) is a hyperplane (by results of Brieskorn [9]) or when X is a torus and each element of \(\mathcal {A}\) is a subtorus of codimension one (by results of Looijenga [24]).

For an element \(g \in \Gamma \), we let \(\mathscr {L}^{g}\left( \mathcal {A}\right) \) denote the subposet of \(\mathscr {L}\! \left( \mathcal {A}\right) \) consisting of elements fixed by g and we let \(\mu _g\) denote the Möbius function of \(\mathscr {L}^{g}\left( \mathcal {A}\right) \).

Theorem 2.4

[26] Let \(\mathcal {A}=\left\{ A_i\right\} _{i \in I}\) be a minimally pure arrangement in a minimally pure variety X and let \(\Gamma \) be a finite group of automorphisms of X that stabilizes \(\mathcal {A}\) as a set. Then, for each \(g \in \Gamma \)

$$\begin{aligned} P_c(X_{\mathcal {A}},t)(g) = \sum _{Z \in \mathscr {L}^{g}\left( \mathcal {A}\right) } \mu _g(Z) (-t)^{\mathrm {cd}(Z)} P_c(Z,t)(g), \end{aligned}$$

where \(\mathrm {cd}(Z)\) denotes the codimension of Z in X.

We will use the following version of the above result.

Corollary 2.5

Let \(\mathcal {A}=\left\{ A_i\right\} _{i \in I}\) be a minimally pure arrangement in a minimally pure variety X and let \(\Gamma \) be a finite group of automorphisms of X that stabilizes \(\mathcal {A}\) as a set. Suppose also that both \(X_{\mathcal {A}}\) and each element of \(\mathscr {L}\! \left( \mathcal {A}\right) \) satisfy Poincaré duality. Then, for each \(g\in \Gamma \)

$$\begin{aligned} P(X_{\mathcal {A}},t)(g) = \sum _{Z \in \mathscr {L}^{g}\left( \mathcal {A}\right) } \mu _g(Z) (-t)^{\mathrm {cd}(Z)} P(Z,t)(g), \end{aligned}$$

where \(\mathrm {cd}(Z)\) denotes the codimension of Z in X.

Proof

Poincaré duality tells us that if M is a smooth manifold of complex dimension n, then \(H^k(M) = H_c^{2n-k}(M)\) (see [28]). Phrased in terms of Poincaré polynomials, this translates to

$$\begin{aligned} P_c(M,t)=t^{2n} \cdot P(M,t^{-1}). \end{aligned}$$

We apply Poincaré duality to Theorem 2.4 and get

$$\begin{aligned} t^{2n} P(X_{\mathcal {A}},t^{-1})(g) = \sum _{Z \in \mathscr {L}^{g}\left( \mathcal {A}\right) } \mu _g(Z) (-t)^{\mathrm {cd}(Z)} \cdot t^{2\,\mathrm {dim}(Z)} \cdot P(Z,t^{-1})(g). \end{aligned}$$

We thus have that

$$\begin{aligned} P(X_{\mathcal {A}},t^{-1})(g)&= \sum _{Z \in \mathscr {L}^{g}\left( \mathcal {A}\right) } \mu _g(Z) (-t)^{\mathrm {cd}(Z)} \cdot t^{2\,\mathrm {dim}(Z)-2n} \cdot P(Z,t^{-1})(g) \\&= \sum _{Z \in \mathscr {L}^{g}\left( \mathcal {A}\right) } \mu _g(Z) (-t)^{\mathrm {cd}(Z)} \cdot t^{-2\,\mathrm {cd}(Z)} \cdot P(Z,t^{-1})(g) \\&= \sum _{Z \in \mathscr {L}^{g}\left( \mathcal {A}\right) } \mu _g(Z) (-t^{-1})^{\mathrm {cd}(Z)} \cdot P(Z,t^{-1})(g). \end{aligned}$$

We now arrive at the desired formula by substituting \(t^{-1}\) for t. \(\square \)

Example 2.6

Let \(X= \left( {\mathbb {C}}^* \right) ^2\) and consider the arrangement \(\mathcal {A}\) in X consisting of the four subtori given by the equations

$$\begin{aligned} A_1: \, z_1=1, \quad A_2: \, z_1^2z_2=1, \quad A_3: \, z_1z_2^2=1, \quad A_4: \, z_2=1. \end{aligned}$$

Let \(\xi \) be a primitive third root of unity. We then have

$$\begin{aligned}&A_1 \cap A_2 = A_1 \cap A_4 = A_3 \cap A_4 = \{(1,1)\}, \\&A_1 \cap A_3 = \{(1,1), \, (1,-1)\}, \\&A_2 \cap A_3 = \{(1,1), \, (\xi ,\xi ), \, (\xi ^2,\xi ^2)\}, \\&A_2 \cap A_4 = \{(1,1), \, (-1,1)\}, \end{aligned}$$

and all further intersections are equal to \(\{(1,1)\}\). We thus have the poset \(\mathscr {L}\! \left( \mathcal {A}\right) \) (the numbers in the upper left corners are the values of the Möbius function):

figure a

The Poincaré polynomial of X is \((1+t)^2\), and the Poincaré polynomial of \(A_i\) is \(1+t\). By Corollary 2.5, we now get that the Poincaré polynomial of \(X_{\mathcal {A}}\) is

$$\begin{aligned} P(X_{\mathcal {A}},t)&= (1+t)^2+4 \cdot (-1) \cdot (-t)\cdot (1+t) + (-t)^2 \cdot (2 +3+2) = \\&= 1 + 6\, t + 12 \, t^2. \end{aligned}$$

3 Toric arrangements

Definition 3.1

Let X be an n-torus. An arrangement \(\mathcal {A}\) in X is called a toric arrangement if each element of \(\mathcal {A}\) is a hypertorus, i.e. a subtorus of codimension one.

More explicitly, a toric arrangement in \(X=({\mathbb {C}}^*)^n\) is determined by a finite set \(\{\chi _i\}_{i \in I}\) of characters \(\chi _i\) in the character lattice \(\mathrm {Hom}(X,{\mathbb {C}}^*)\) of X. The subtorus \(A_i\) is then given as \(A_i=\chi _i^{-1}(1)\).

For our purposes it is more convenient to start the other way around, i.e. to start with a free \({\mathbb {Z}}\)-module M of rank n and construct the torus X as \(X= \mathrm {Hom}(M,{\mathbb {C}}^*)\). An arrangement in X is then given by a finite set \(R=\{m_i\}_{i \in I}\) of nonzero elements \(m_i \in M\) and the subtorus \(A_i\) is given as the kernel of the evaluation map at \(m_i\), i.e.

$$\begin{aligned} A_i = \{\chi \in X | \chi (m_i)=1\}. \end{aligned}$$

Let \(B=\{b_1, \ldots , b_n\}\) be an ordered set of free generators of M. An element \(\chi \in X\) is then entirely determined by its values at \(b_1, \ldots , b_n\), and the coordinate ring of X is therefore the ring of Laurent polynomials

$$\begin{aligned} {\mathbb {C}}[X] = {\mathbb {C}}[z_1^{\pm 1}, \ldots , z_n^{\pm 1}] \end{aligned}$$

where the variable \(z_i\) corresponds to \(b_i\). If m is an element in R, then there are integers \(r_1, \ldots , r_n\) such that

$$\begin{aligned} m = r_1 b_1 + \cdots + r_n b_n \end{aligned}$$

and we have \(\chi (m)=1\) if and only if

$$\begin{aligned} z_1^{r_1} \ldots z_n^{r_n} = 1. \end{aligned}$$

We denote the Laurent polynomial \( z_1^{r_1} \ldots z_n^{r_n} - 1\) by \(f_m\) and the corresponding subtorus in \(\mathcal {A}\) is denoted both as \(A_m\) and \(V(f_m)\). We will also make the identification \(A_{m_i}=A_i\) whenever convenient.

Let Z be an element of \(\mathscr {L}\! \left( \mathcal {A}\right) \). Then, Z is an intersection

$$\begin{aligned} Z = \bigcap _{m \in S} A_m = \bigcap _{m \in S} V(f_m) \end{aligned}$$

where S is a subset of R. We define the ideal

$$\begin{aligned} I_{S} = \left( f_m \right) _{m \in S} \subseteq {\mathbb {C}}[X] \end{aligned}$$

so that \(Z=V(I_{S})\). The ideal \(I_S\) is entirely determined by the exponents occurring in the various Laurent polynomials \(f_{\alpha }\) generating it or, in other words, the coefficients occurring in the elements of S when expressed in terms of the generators in B. Thus, if we define the module of exponents

$$\begin{aligned} N_S := {\mathbb {Z}}\left\langle S \right\rangle \subseteq M, \end{aligned}$$

then the module \(N_S\) determines \(I_S\) and

$$\begin{aligned} V(I_S) = \mathrm {Hom}(M/N_S, {\mathbb {C}}^*) \subseteq \mathrm {Hom}(M, {\mathbb {C}}^*) =T. \end{aligned}$$

For more details, see [17].

From the above we see that there is an intimate relationship between elements of \(\mathscr {L}\! \left( \mathcal {A}\right) \) and submodules of M generated by subsets of R. We have that an inclusion \(N_S \subset N_{S'}\) gives a surjection \(M/N_S \twoheadrightarrow M/N_{S'}\) and thus an inclusion \(\mathrm {Hom}(M/N_{S'},{\mathbb {C}}^*) \hookrightarrow \mathrm {Hom}(M/N_S,{\mathbb {C}}^*)\).

Definition 3.2

Let R be a finite set of nonzero elements of a free \({\mathbb {Z}}\)-module M. The poset of modules of exponents is the set

$$\begin{aligned} \mathscr {P}(R) = \left\{ {\mathbb {Z}}\langle S \rangle | S \subseteq R \right\} , \end{aligned}$$

ordered by inclusion.

By construction we have that the poset \(\mathscr {P}(R)\) is isomorphic to the poset \(\mathscr {L}\! \left( \mathcal {A}\right) \). One benefit of considering the posets \(\mathscr {P}(R)\) instead is that they are more easily computed. Another benefit is that the elements of \(\mathscr {P}(R)\) are directly related to the cohomology groups of the corresponding elements of \(\mathscr {L}\! \left( \mathcal {A}\right) \). In order to explain how, we recall some basic facts about cohomology of tori that can be found in most texts on toric varieties, e.g. Chapter 9 of [11].

Let L be a free \({\mathbb {Z}}\)-module. The torus \(T_L=\mathrm {Hom}(L,{\mathbb {C}}^*)\) has cohomology given by

$$\begin{aligned} H^{i} \! \left( T_L\right) = \bigwedge ^i H^{1} \! \left( T_L\right) = \bigwedge ^i L. \end{aligned}$$

Suppose \(L'\) is another free \({\mathbb {Z}}\)-module and let \(T_{L'}= \mathrm {Hom}(L',{\mathbb {C}}^*)\). There is a one-to-one correspondence between homomorphisms \(L \rightarrow L'\) of free \({\mathbb {Z}}\)-modules and morphisms \(T_{L'} \rightarrow T_L\) and the induced map \(H^{i} \! \left( T_L\right) \rightarrow H^{i} \! \left( T_{L'}\right) \) is the map

$$\begin{aligned} \bigwedge ^i L \rightarrow \bigwedge ^i L'. \end{aligned}$$

The module \(M/N_S\) will not always be free but will still determine the cohomology of \(V(I_S)\) in a sense very similar to the above. Let L be a free \({\mathbb {Z}}\)-module, \(N \subset L\) a submodule and let \(Q=L/N\). The module Q will split as a direct sum \(Q=Q^T \oplus Q^F\), where \(Q^T\) is the torsion part and \(Q^F\) is the free part of Q. The variety \(T_Q=\mathrm {Hom}(Q, {\mathbb {C}}^*)\) consists of \(\left| Q^T \right| \) connected components, each isomorphic to \(\mathrm {Hom}\! \left( Q^F, {\mathbb {C}}^* \right) \). The ith cohomology group of \(T_Q\) is given by

$$\begin{aligned} H^{i} \! \left( T_Q\right) = \bigoplus _{v \in Q^T} \bigwedge ^i Q^F. \end{aligned}$$

Let \(\varphi : L \rightarrow L'\) be a homomorphism and define \(Q'=L'/\varphi (N)\). The morphism \(\varphi \) induces a morphism \(Q \rightarrow Q'\) which in turn gives rise to a morphism \(T_{Q'} \rightarrow T_Q\) and the induced map \(H^{i} \! \left( T_Q\right) \rightarrow H^{i} \! \left( T_{Q'}\right) \) is the map

$$\begin{aligned} \bigoplus _{v \in Q^T} \bigwedge ^i Q^F \rightarrow \bigoplus _{v' \in Q'^T} \bigwedge ^i Q'^F. \end{aligned}$$

In conclusion, in order to use Corollary 2.5 to compute the cohomology of \(X_{\mathcal {A}}\), we can first compute the poset \(\mathscr {P}(R)\) of submodules of M generated by subsets of R and then for each element \(N_S\) of \(\mathscr {P}(R)\) compute the torsion part of \(Q_S=M/N_S\) and all wedge powers of the free part of \(Q_S\). We will elaborate on this in the following while also introducing group actions.

3.1 Group actions on toric arrangements

Let \(\Gamma \) be a group acting linearly on M (from the left) such that \(\Gamma \) fixes R as a set. Then, \(\Gamma \) will also act on \(X_{\mathcal {A}}\) (from the right) by precomposition, i.e.

$$\begin{aligned} (\chi . g)(v) = \chi (g.v). \end{aligned}$$

We write \(\mathscr {P}^g(R)\) to denote the subposet of \(\mathscr {P}(R)\) of modules fixed by g. Just as \(\mathscr {P}(R)\) is isomorphic to \(\mathscr {L}\! \left( \mathcal {A}\right) \) we have that \(\mathscr {P}^g(R)\) is isomorphic to \(\mathscr {L}^{g}\left( \mathcal {A}\right) \).

Let g be an element of \(\Gamma \) and let \(\langle g \rangle \) be the subgroup of \(\Gamma \) generated by g. If N is an element of \(\mathscr {P}^g(R)\), then \(N \cap R\) is a union of \(\langle g \rangle \)-orbits of R. Since \(N={\mathbb {Z}}\langle N \cap R \rangle \), we may compute \(\mathscr {P}^g(R)\) via the following steps.

Algorithm 3.3

Let R and \(\Gamma \) be as above and let g be an element of \(\Gamma \). Then, the following algorithm computes the poset \(\mathscr {P}^g(R)\):

  1. (1)

    Compute the \(\langle g \rangle \)-orbits of R.

  2. (2)

    Compute the set \(\mathscr {P}^g(R)_{\mathrm {set}}\) of all (distinct) \({\mathbb {Z}}\)-spans of unions of \(\langle g \rangle \)-orbits.

  3. (3)

    Investigate the inclusion relations of the elements of \(\mathscr {P}^g(R)_{\mathrm {set}}\).

In practice, we represent elements of \(\mathscr {P}^g(R)_{\mathrm {set}}\) by their Hermite normal forms (i.e. the nontrivial part of the echelon form of any matrix with a spanning set as rows which need to be computed with some care since we are working over the integers). Thus, step (2) consists of performing Gaussian elimination on matrices and making sure we only save each matrix once. Step (3) is by far the most computationally demanding since, in principle, one needs to make \(|\mathscr {P}^g(R)|^2\) checks of whether one module is a submodule of another. Fortunately, the task of comparing every pair of elements of a list is at least very well adapted to parallel computing techniques.

Remark 3.4

Algorithm 3.3 is a toric analogue of the algorithm of Fleischmann and Janiszczak [18] for computing the intersection poset associated with a hyperplane arrangement.

Remark 3.5

Without going too deep into details, we make a few comments on the complexity of Algorithm 3.3. We state our crude estimates in terms of “operations” and “comparisons”; these consist of performing Gaussian elimination on matrices with n columns and at most n rows.

To start, we note that Step (1) can require up to \(O(|g|\cdot |R|)\) operations, where |g| denotes the order of g. In examples, this step gives instant output and this part of the algorithm is likely to be near optimal (but no such analysis has been made). If we denote the set of \(\langle g \rangle \)-orbits of R by \(\mathrm {Orb}_g(R)\) and denote the rank of M by m, then Step (2) requires at most \(O(|\mathrm {Orb}_g(R)|^m)\) operations. This step can likely be somewhat optimized compared to our implementation but since this step is very fast compared to Step (3) we have not attempted any such minor improvements. As mentioned above, we have to make \(|\mathscr {P}^g(R)|^2\) comparisons in Step (3). We can bound the size of \(\mathscr {P}^g(R)\) by \(|\mathrm {Orb}_g(R)|^m\) so the number of comparisons is at most \(O(|\mathrm {Orb}_g(R)|^{2m})\). This step can likely be improved, especially one can make significant improvements in special cases where one can find a good upper bound of the width of \(\mathscr {P}^g(R)\), see [13].

The group \(\Gamma \) acts not only on poset \(\mathscr {P}(R)\) but also on the cohomology groups of the individual elements of \(\mathscr {P}(R)\). Let g be an element of \(\Gamma \) and let N be an element of \(\mathscr {P}^g(R)\). Let \(Q_N=M/N\) and let \(Q^T_N\) and \(Q^F_N\) denote the torsion part and free part, respectively. Recall that the ith cohomology group of the element \(Z_N\in \mathscr {L}^{g}\left( \mathcal {A}\right) \) corresponding to N is given by

$$\begin{aligned} H^i(Z_N) = \bigoplus _{v \in Q^T_N} \bigwedge ^i Q_N^F. \end{aligned}$$

The element g may both permute the elements of \(Q^T_N\) (i.e. permute the components of \(Z_N\)) and act on \(\wedge ^i Q_N^F\) via its action on \(Q^F_N\).

More explicitly, the module \(Q_N\) is determined by the echelon basis matrix of N. Torsion elements of \(Q_N\) stem from rows in the echelon basis matrix whose entries has a greatest common divisor greater than 1. The module \(Q_N^F\) is the module \(M/\mathrm {Sat}(N)\), where \(\mathrm {Sat}(N)=N \otimes _{{\mathbb {Z}}} {\mathbb {Q}} \cap M\) is the saturation of N, i.e. the module generated by the elements obtained from the Hermite normal form of N by dividing each row by the greatest common divisor of its entries (the division procedure does not immediately yield a Hermite normal form of \(\mathrm {Sat}(N)\)). A row \((r_1, \ldots , r_n)\) in the echelon basis matrix of N corresponds to the equation

$$\begin{aligned} z_1^{r_1} \ldots z_n^{r_n} = 1. \end{aligned}$$

If \(\mathrm {gcd}(r_1, \ldots , r_n)=d\), we may write \(r_i = d \cdot r'_i\) and

$$\begin{aligned} (z_1^{r'_1} \ldots z_n^{r'_n})^d = 1, \end{aligned}$$

i.e. an equation for d non-intersecting hypertori, namely the hypertorus given by

$$\begin{aligned} z_1^{m'_1} \ldots z_n^{m'_n}=1, \end{aligned}$$

translated by multiplication by powers of a primitive dth root of unity.

A linear map \(g: M \rightarrow M\) which fixes N can be analysed in two steps. Firstly, we can investigate how it “permutes different roots of unity”, more precisely, how it acts on \(Q_N^T\). The elements of \(Q_N^T\) correspond to connected components of \(Z_N\) and a component is fixed by g if and only if the corresponding element of \(Q_N^T\) is fixed. Of course, only fixed components can contribute to the trace of g on \(H^{i} \! \left( Z_N\right) \). Once we have determined which of the components that are fixed, it suffices to compute the trace of g on the cohomology on one of those components, e.g. the component corresponding to the zero element of \(Q_N^T\).

We may now write down an algorithm for computing the equivariant Poincaré polynomial of an element \(Z \in \mathscr {L}\! \left( \mathcal {A}\right) \).

Algorithm 3.6

Let \(\Gamma \), M and R be as above and let \(Z \in \mathscr {L}\! \left( \mathcal {A}\right) \) correspond to the submodule N in \(\mathscr {P}(R)\). Let g be an element of \(\Gamma \) stabilizing Z. Then, P(Zt)(g) can computed via the following steps.

  1. (1)

    Compute the number m of elements in \(Q_N^T\) which are fixed by g (for instance by lifting each element of \(Q_N^T\) to M, acting on the lifted element by g and pushing the result down to \(Q_N^T\)).

  2. (2)

    Compute \(\mathrm {Tr}(g,Q_N^F)\) (for instance as \(\mathrm {Tr}(g,M)-\mathrm {Tr}(g,N)\)).

  3. (3)

    Using the knowledge of \(\mathrm {Tr}(g,Q_N^F)\), compute \(\mathrm {Tr}(g,\wedge ^i Q_N^F)\) for \(i=1, \ldots , n\) (for instance via the Newton-Girard method, i.e. iteratively using Newton’s identities).

The polynomial P(Zt)(g) is now given by

$$\begin{aligned} P(Z,t)(g) = m \cdot \sum _{i=0}^n \mathrm {Tr}(g,\wedge ^i Q_N^F) t^i. \end{aligned}$$

4 Toric arrangements associated with exceptional root systems

We now explain how to associate a toric arrangement to a root system. Let \(\Phi \) be a root system and let \(M={\mathbb {Z}}\langle \Phi \rangle \) be the \({\mathbb {Z}}\)-linear span of the elements of \(\Phi \), i.e. the root lattice. Let X be the torus \(X=\mathrm {Hom}(M,{\mathbb {C}}^*)\) and, for each \(\alpha \in \Phi \) let \(A_{\alpha }\) be the kernel of the evaluation map \(X \rightarrow {\mathbb {C}}^*\) defined by \(\alpha \), i.e.

$$\begin{aligned} A_{\alpha } = \{\chi \in X| \chi (\alpha ) = 1\}. \end{aligned}$$

We note that if \(\alpha '=-\alpha \), then \(A_{\alpha '}=A_{\alpha }\). The \(A_{\alpha }\) are codimension 1 subtori and constitute a toric arrangement \(\mathcal {A}_{\Phi } = \{A_{\alpha }\}_{\alpha \in \Phi ^{+}}\), where \(\Phi ^{+}\) is a choice of positive roots for \(\Phi \). For notational convenience, we denote the complement \(X_{\mathcal {A}_{\Phi }}\) by \(X_{\Phi }\).

We have used Algorithms 3.3 and 3.6 to construct a SageMath [15] program computing the cohomology of the complement of a toric arrangement associated with a root system as a representation of the corresponding Weyl group. The code can be found at the permanent repository https://github.com/OlofBergvall/CohTorArr. The validity of this program has been tested against the results in [1, 6, 23, 25] as well as several other works which are referred to more properly below. In this section, we present the results produced by this program for the exceptional root systems.

The irreducible representations of Weyl groups of exceptional root systems can be described in terms of two integers, d and e. The integer d is the degree of the representation. The integer e can be defined using the standard representation \(\chi _{\mathrm {std}}\) as follows, see [10, p. 411].

Definition 4.1

Let \(\Phi \) be an exceptional root system and let W be its Weyl group. Then, each irreducible representation of W occurs in some symmetric power \(\mathrm {Sym}^i\chi _{\mathrm {std}}\) of \(\chi _{\mathrm {std}}\). Given an irreducible representation \(\chi \), let e be the integer such that \(\chi \) occurs as a direct summand in \(\mathrm {Sym}^e\chi _{\mathrm {std}}\) but not in \(\mathrm {Sym}^i\chi _{\mathrm {std}}\) for all \(i<e\).

For root systems of type E, the integers d and e uniquely determine the irreducible representations. However, for the root systems \(F_4\) and \(G_2\) this is not the case. We denote the irreducible character corresponding to d and e by \(\phi _d^e\). If there are two characters corresponding to the same d and e, we add a second subscript to distinguish between them.

We refer to [10] for character tables of the Weyl groups of type \(G_2\) and \(F_4\). It should be noted that Carter denotes the characters \(\phi _d^e\), \(\phi _{d,1}^e\) and \(\phi _{d,2}^e\) by \(\phi _{d,e}\), \(\phi _{d,e}'\) and \(\phi _{d,e}''\). We have chosen to denote the characters differently because we are in need of notational compactness.

Remark 4.2

This work parallels that of Fleischmann and Janiszczak [18] in the hyperplane case and we therefore comment on a few differences. Most obviously, in the hyperplane case the elements of the intersection poset are linear subspaces and therefore have trivial cohomology. The cohomology is therefore determined entirely by the combinatorics of the poset. This is not the case in the toric setting. Furthermore, in the hyperplane case one can reduce modulo “good” primes and do computations over finite fields. This speeds up computations dramatically. In the toric setting we need to do all computations over \({\mathbb {Z}}\). Finally, one may observe that the poset \(\mathscr {P}^g(R)\) is largest when g is the identity element or minus the identity (more complicated group elements typically have fewer fixed elements). In the hyperplane case, the Poincaré polynomials \(P(X_{\Phi },t)(\pm \mathrm {id})\) were known (and known to be the same). Thus, the computationally most involved cases were already taken care of by other methods. In the toric case we only knew \(P(X_{\Phi },t)(\mathrm {id})\) from before which forces us to consider the most complicated posets. For the most complicated example (\(E_8\)), this increased the computational complexity more than 10 000 times compared to what would have been the case if we had known also \(P(X_{\Phi },t)(-\mathrm {id})\) (and the posets in the toric case are significantly larger than in the hyperplane case). On the other hand, there has also been a significant increase in computational power over the two decades separating our work from that of Fleischmann and Janiszczak.

4.1 The root system \(G_2\)

Let \(\Phi \) be the root system of type \(G_2\). Then, the Poincaré polynomial of \(X_{\Phi }\) is

$$\begin{aligned} P(X_{\Phi },t) = 19 \, t^2 + 8 \, t + 1. \end{aligned}$$

The cohomology of \(X_{\Phi }\) as a representation of the Weyl group of \(G_2\) is given in Table 1.

Table 1 The cohomology groups of the complement of the toric arrangement associated with \(G_2\) as representations of the Weyl group
Table 2 The cohomology groups of the complement of the toric arrangement associated with \(F_4\) as representations of the Weyl group
Table 3 The cohomology groups of the complement of the toric arrangement associated with \(E_6\) as representations of the Weyl group
Table 4 The cohomology groups of the complement of the toric arrangement associated with \(E_7\) as representations of the Weyl group
Table 5 The cohomology groups of the complement of the toric arrangement associated with \(E_8\) as representations of the Weyl group

4.2 The root system \(F_4\)

Let \(\Phi \) be the root system of type \(F_4\). Then, the Poincaré polynomial of \(X_{\Phi }\) is

$$\begin{aligned} P(X_{\Phi },t) = 2153 \, t^{4} + 1260 \, t^{3} + 286 \, t^{2} + 28 \, t + 1 . \end{aligned}$$

The cohomology of \(X_{\Phi }\) as a representation of the Weyl group of \(G_2\) is given in Table 2.

Remark 4.3

The polynomial \(P(X_{\Phi },t)\) was computed by Moci in [27] as the Poincaré polynomial of the complement of the toric arrangement associated with the coroot system of \(F_4\).

4.3 The root system \(E_6\)

Let \(\Phi \) be the root system of type \(E_6\). Then, the Poincaré polynomial of \(X_{\Phi }\) is

$$\begin{aligned} P(X_{\Phi },t) = 58555 \, t^6 + 63378 \, t^5 + 27459 \, t^4 + 6020 \, t^3 + 705 \, t^2 + 42 \, t + 1. \end{aligned}$$

The cohomology of \(X_{\Phi }\) as a representation of the Weyl group of \(E_6\) is given in Table 3.

Remark 4.4

The column \(\phi _{1}^0\) gives the cohomology of \(X_{\Phi }/W\). It was first computed by Looijenga in [24].

4.4 The root system \(E_7\)

Let \(\Phi \) be the root system of type \(E_7\). Then, the Poincaré polynomial of \(X_{\Phi }\) is

$$\begin{aligned} \begin{array}{rl} P(X_{\Phi },t)= &{} 3842020 \, t^7 + 3479734 \, t^6 + 1328670 \, t^5 + 268289 \, t^4 +\\ &{} + 30800 \, t^3 + 2016 \, t^2 + 70 \, t + 1. \end{array} \end{aligned}$$

The cohomology of \(X_{\Phi }\) as a representation of the Weyl group of \(E_7\) is given in Table 4.

Remark 4.5

The column \(\phi _{1}^0\) gives the cohomology of \(X_{\Phi }/W\). It was first computed by Looijenga in [24] and later corrected by Getzler and Looijenga in [21].

4.5 The root system \(E_8\)

Let \(\Phi \) be the root system of type \(E_8\). Then, the Poincaré polynomial of \(X_{\Phi }\) is

$$\begin{aligned} \begin{array}{rl} P(X_{\Phi },t)= &{} 1313187309t^8 + 818120000t^7 + 235845616t^6 + 37527168t^5 + \\ &{}+3539578t^4 + 202496t^3 + 6888t^2 + 128t + 1. \end{array} \end{aligned}$$

The cohomology of \(X_{\Phi }\) as a representation of the Weyl group of \(E_8\) is given in Table 5.