<<

Computing Hecke Operators for Arithmetic Subgroups of General Linear Groups

Mark McConnell∗ Robert MacPherson† August 23, 2021

Abstract We present an algorithm to compute the Hecke operators on the equivariant cohomology of an arithmetic subgroup Γ of the general linear group GLn. This includes GLn over a number field or a finite- dimensional division algebra. As coefficients, we may use any finite- dimensional local coefficient system. Unlike earlier methods, the algo- rithm works for the cohomology Hi in all degrees i. It starts from the well-rounded retract Wf, a Γ-invariant cell complex which computes the cohomology [1]. It extends Wf to a new well-tempered complex Wf+ of one higher real dimension, using a real parameter called the tem- perament. The algorithm has been coded up for SLn(Z) for n = 2, 3, 4; we present some results for congruence subgroups of SL3(Z).

1 Introduction

1.1 The 2 × 2 Case arXiv:2010.06036v2 [math.NT] 4 Dec 2020 We begin by describing our Hecke operator algorithm in the simplest case. a b Let E be the space of real symmetric matrices Z = [ b c ]. The group G = t GL2(R) acts on E by Z 7→ gZg . The action preserves the cone of positive definite matrices X ⊂ E. We mod out in X by the positive scalar multiples of the identity, the homotheties. Then the action (when det g > 0) is equivalent

∗Dept. of Mathematics, Princeton University. [email protected] †School of Mathematics, Institute for Advanced Study. [email protected]

1 Figure 1: A pencil of well-rounded forms. to the well-known action of SL2(R) on the upper half-plane H ⊂ C by linear fractional transformations. X is called the Klein model of H. The action on H has the advantage of being complex-analytic, but the Klein model has a different advantage: X has a linear structure inherited from E. A matrix Z ∈ X defines a positive definite quadratic form on R2, which 2 we use to measure the lengths of vectors in the standard lattice L0 = Z . Divide Z by a homothety so the shortest non-zero vector in L0 has length 1. We say Z is well rounded if two linearly independent vectors in Z2 have length 1. Figure 1 shows the Z = 1 level curves of five forms, which are well rounded because (1, 0), (0, 1) have Z = 1. The figure suggests there is a continuous path, a pencil of well-rounded forms, connecting the first and last pictures. To draw pictures in X, we divide Z by a different homothety to make its trace 1. The image of X is then an open circular disc in the ab-plane. The well-rounded forms form a tree Wf in X, shown on the left in Figure 2. The vertical edge in the center of the tree is the pencil in Figure 1. We can also understand Z in terms of lattices. X = G/K, where K is the subgroup of orthogonal matrices. Z = ggt for some g ∈ G. The rows of g are a basis of R2, and the Z-linear combinations of this basis are a lattice L = L0g. Let Γ0 = GL2(Z), the integer matrices of ±1. Then Y = Γ0\G is the space of lattices, and Y/K = Γ0\X. The tree Wf is Γ0-equivariant and is a strong deformation retract of X. It is called the well-rounded retract. Let m be a positive integer. The Hecke correspondence Tm is the one- to-many map that carries a lattice L to its sublattices of index m. Figure 3 shows the three sublattices for ` = 2. Let Γ ⊆ Γ0 be a subgroup of finite index. The correspondence Tm acts 1 on the cohomology H (Γ\X), and this action, also denoted Tm, is a Hecke operator. By work of Eichler and Shimura [24], the cohomology can be un-

2 Figure 2: The well-rounded retract for GL2(Z), and its translate by T2.

•·•·• ••••• •·•·• •·•·• ····· ·•·•· •·•·• ••••• •·•·• •·•·• ····· ·•·•· •·•·• ••••• •·•·•

Figure 3: A lattice and its three sublattices of index two.

3 Figure 4: Continuously deforming trees in the well-tempered complex. derstood in terms of modular forms (Eisenstein series and cusp forms) on Γ\H. The Hecke operators act on modular forms, and their eigenvalues give important arithmetic information. We would like to compute the Hecke operators by how they act on the tree Wf. Unfortunately, the Hecke correspondences do not carry the tree to itself. T2 moves it within the disc, as shown on the right in Figure 2. (The Tm are one-to-many on Γ0\X but are defined by a one-to-one map on X; see Section 4.1 for the definition.) The deformation retraction X → Wf will carry the right-hand tree back to the left-hand tree, but when m is large this is hard to use for computation. One edge may retract back to a path through many edges, starting and ending with fractions of edges. + This paper introduces the well-tempered complex Wf for Tm. For sim- plicity, let m be a prime ` for the rest of the Introduction. The well-tempered complex is a regular cell complex of dimension dim Wf + 1. It is a fibration Wf+ → [1, `2], where the coordinate τ in the base is called the temperament. The fiber over τ = 1 is on the left side of Figure 2, with the fiber over `2 on the right. The fibers are all trees, and they continuously deform as τ varies. We show there are a finite number of critical temperaments where the cell structure abruptly changes. Figure 4 shows an example for T2, around τ = 2 in the base [1, 4]. All the fibers are 3-valent trees—every vertex is on three edges—except in the middle picture, where for a moment some vertices are on four edges. A deformation retract of Γ\X is Γ\Wf1, the finite graph which is the 1 left side of Figure 2 mod Γ. We compute H (Γ\Wfτ ) as τ varies from 1 to `2. At the critical temperaments, the cohomology does not change, but

4 the cell structure does, and we keep track of it. When τ reaches the last 2 temperament ` , we have the information we need to compute T` on the cohomology. The algorithm is explained in more detail in Section 6.

1.2 The General Case

For Γ ⊆ GL2(Z), there is already a well-known method for computing Hecke operators, modular symbols [20] [27]. It works on the top degree of cohomol- ogy, H1. The contribution of our paper is to give a Hecke operator algorithm i on the cohomology H (Γ\X; ρ) for all i = 0, 1, 2,... . This holds for GLn for all n > 2. Our algorithm works for all local coefficient systems ρ. The general setting of this paper is the algebraic group G where G(Q) is the general linear group of a division algebra D (possibly commutative) of finite dimension over Q. When D = Q, we have G(Z) = Γ0 = GLn(Z), the case described in the Introduction so far (for n = 2). In [1], Avner Ash constructed the well-rounded retract in this general setting of division algebras. In Section 2, we set up the rest of the paper by reviewing notation and facts from [1]. The retract depends on a family of weights; in Section 3, we show that varying the weights over an interval of temperaments gives a fibration. For any of the G in this paper, the definition of a Hecke correspondence starts from a sublattice M0 ⊂ L0 of finite index. (In our 2 × 2 example 2 for T`, the M0 is any one of the index-` sublattices of Z .) The form Z generalizes to a Hermitian form Z which defines a Hermitian metric on L0. The main idea of the well-tempered complex is to lie about the lengths of vectors x ∈ L0 − M0. We use a family of weights where the weighted length of x is τ times the length of x if x ∈ L0 − M0, but the weighted length of x equals the length of x if x ∈ M0. When τ = 1, there are no lies, and we obtain the usual well-rounded retract. When τ is large, vectors x ∈ L0 − M0 cannot have small weighted length: all the vectors of weighted length 1 in a well-rounded lattice will be in M0. For τ between the extremes, the critical temperaments occur when the changing weights make the cell structure vary. This is the topic of Section 4. In Section 5, we show that we can compute the Hecke operators with the well-tempered complex. In Section 6, we indicate how the different fibers of the well-tempered complex are computed in practice. This involves a weighted generalization of the Voronoi polyhedron, the Hecketope. The algorithm has been coded up for SLn(Z) for n = 2, 3, 4 by the first

5 author. It performs successfully for congruence subgroups of small levels N. Section 7 contains a sampling of results for subgroups of SL3(Z). In the near future, we hope to test it for GL2 when D is a quadratic number field or another small Galois extension of Q. Our algorithm for Hecke operators has two parts, one-time work and every-time work. The one-time work is to compute the well-tempered com- plex for a given Γ0, L0, and Hecke correspondence T . The every-time work is i to compute the Hecke operators for T on H (Γ0\X, ρ) for various i and ρ. To 0 compute the cohomology of subgroups Γ , like the classical Γ0(N) and Γ(N) of level N, we simply do the every-time work for the coinduced represen- Γ0 tation CoindΓ0 ρ. Other Hecke-operator algorithms, including the classical algorithms with modular symbols, require one to do the equivalent of the one-time work and the every-time work every time. Even for a single Hecke correspondence, it is possible to run our algorithm as a parallel computation (see Theorem 5). Our current implementation is a proof of concept written in Sage [28]. In terms of speed, it is not yet competitive with Gunnells’ algorithm in [18] [5]. Plans for the future include translating parts of the implementation to C++ and parallelizing it.

1.3 Related Work The Ash-Rudolph algorithm generalizes the modular symbol algorithm [9]. i For any n, it computes Hecke operators on H (Γ\X; ρ) for Γ ⊆ SLn(Z). It works only in the top degree, i = vcd Γ. Ash and his collaborators have many papers that study cohomology using this algorithm, starting with [3]. Gunnells extended the Ash-Rudolph algorithm to the next lower degree, where i = vcd Γ − 1. This works for Γ ⊆ SLn(Z) for all n [18]. In a se- ries of papers including [5] [6] [7] [4], Ash, Gunnells, and the first author 5 have computed Hecke operators on H (Γ0(N)\X; ρ), which is in the cuspi- dal range of cohomology, for a variety of levels N and coefficient systems ρ. From the Hecke eigenvalues, these papers find Galois representations that are conjecturally attached to the cohomology. For other computations of Hecke operators on the cohomology of sub- groups of SL or GL over a number field, see for example [22] [13] [30] [2] [29] [23] [12] [25] [8] [17].

6 1.4 Acknowledgments Avner Ash’s paper [1] is foundational for this paper. We thank him for helpful conversations, as well as Paul Gunnells, Dan Yasaki, Dylan Galt, and David Pollack. We thank Tony Bahri for suggesting the name well tempered. See also [14]. Soli Deo Gloria.

2 Background on the Well-Rounded Retract

We summarize notation and facts from [1]. We reverse left and right, and rows and columns, relative to [1] because we prefer to have our arithmetic groups acting on the left on cell complexes. Let D be a division algebra (possibly commutative) of finite dimension n over Q. Let S = D ⊗Q R. Let G = GLn(S). The space of row vectors S is an R-, a left S-module, and a right G-module. A Z-lattice in Dn is a finitely generated subgroup of row vectors that contains a Q-basis of Dn.A Z-lattice in Sn is a finitely generated subgroup n that contains an R-basis. Let L0 ⊂ D be a Z-lattice. The subset A of D that stabilizes L0 is an order in D. The subgroup Γ0 of G that stabilizes L0 is an arithmetic group. We fix L0, and hence A and Γ0, once and for all. Fix an arithmetic subgroup Γ ⊆ Γ0. Let Y = Γ\G. If Γ = Γ0, then Y n is the space of Z-lattices in S stable under A and isomorphic to L0 as A-module, and these are the lattices of the form L0g for g ∈ G. If Γ is a , then the elements of Y are lattices with a level structure. In [1], only Γ0 is used, but passing to Γ brings no real changes. We choose a particular positive definite inner product h , i on the R-vector space Sn; we will present the definition in Section 3.2. The K ⊂ G which preserves h , i is a maximal compact subgroup. X = G/K is a symmetric space. The virtual cohomological dimension vcd Γ is dim(Y/K) − n. Let P(Dn) be the set of lines (rank-one left D-submodules) in Dn. The quotient P(Dn)/Γ is finite. A set of weights for Γ is a function ϕ : P(Dn)/Γ → R+. Such a ϕ defines a set of weights for L0, a Γ-invariant function L0−{0} → R+ also denoted ϕ, by ϕ(x) = ϕ(Dx). We always normalize ϕ by dividing through by a positive real number so that the maximum value in its image L is 1. For L = L0g, a set of weights ϕ for L0 defines ϕ : L − {0} → R+, a set L of weights for L, by ϕ (xg) = ϕ(x) for x ∈ L0 − {0}.

7 Here are the main definitions and the main theorem of [1].

Definition 1. Let L = L0g ∈ Y . The arithmetic minimum is

m(L) = min{ϕL(x)hx, xi | x ∈ L − {0}}.

The minimal vectors are

M(L) = {x ∈ L | ϕL(x)hx, xi = m(L)}.

We say L is well rounded if SM(L) = Sn. The set of well-rounded lattices in Y with minimum 1 is denoted Wc.

The functions m and M are K-invariant, because h , i is. Hence Wc is K-invariant.

Theorem 1 ([1, Thm. 2.11]). W = Wc /K is a strong deformation retract of Y/K. It is compact and of dimension vcd Γ. The universal cover1 Wf of W is a locally finite regular cell complex in X on which Γ acts cell-wise with finite stabilizers of cells. This cell structure has a natural barycentric subdivision which descends to a finite cell complex structure on W .

Definition 2. W = Wc /K is the well-rounded retract.

3 Varying the Weights

3.1 Statement of Results In this paper, we start with the trivial bundle Y × I over an interval I. The value τ ∈ I is the temperament. G acts on Y × I by acting on each fiber Y × {τ} in the obvious way. There is a bundle isomorphism (Y × I)/K ∼= (Y/K) × I with fibers Y/K. A one-parameter family of weights for L0 is a map ϕτ :(L0 − {0}) × I → + R which is a Γ-invariant set of weights for any given τ, and such that ϕτ (x) is real analytic in τ for any given x. We divide through by a positive real scalar, which depends continuously on τ, so that the maximum of ϕτ is 1

1Strictly speaking, this is a ramified cover, because certain points of W have finite stabilizer subgroups in Γ0. The barycentric subdivision in the last sentence of the theorem produces a triangulation which is compatible with the ramified covering map.

8 for all τ. Why we use real analytic functions will appear during the proof of Theorem 2. L A one-parameter family of weights ϕτ determines ϕτ , mτ (L), Mτ (L), Wcτ , and Wτ = Wcτ /K for any given τ. By Theorem 1, there is a strong deformation retraction Rτ (t) of the fiber over τ onto Wτ . This means Rτ (t): ((Y ×{τ})/K)×[0, 1] → (Y ×{τ})/K is continuous, Rτ (0) is the identity on the fiber (Y × {τ})/K, the image of Rτ (1) is Wτ , and Rτ fixes Wτ pointwise for all t. Our next theorem is that Rτ (t) is also continuous in τ.

Theorem 2. Rτ (t) is a continuous function ((Y ×I)/K)×[0, 1] → (Y ×I)/K.

Corollary. {(w × τ)/K | τ ∈ I, w ∈ Wcτ } is a strong deformation retract of (Y × I)/K. It has dimension vcd Γ. It is compact if I is compact. The map from the retract to I is a fibration.

The proof of Theorem 2 is an extension of the proof of Theorem 1. In Section 3.2, we summarize notation and facts from the proof of Theorem 1 in [1]. In Section 3.3 we prove Theorem 2.

3.2 The Well-Rounded Retraction First, we recall the definition of the inner product h , i. Let v run through the archimedean places of the center of D. Let Dv be the corresponding completion; we identify Dv with an algebra of square matrices over R, C, ∗ or H, as appropriate. For x ∈ Dv, let x be the conjugate transpose, where conjugate means the identity on R and the usual conjugate on C or H. By x n we denote a row vector. Define the positive definite inner product h , iv on Dv by hx, yi = Pn TraceDv (x∗y ). We have S = Q D and G = Q G , where v i=1 R i i v v v v G = GL (D ). Define h , i on Sn = Q Dn by h(x ), (y )i = P hx , y i . v n v v v v v v v v v The left action of S on Sn is stable under adjoint of R-linear maps. K is the Q subgroup of G preserving h , i. Observe that K = Kv, where Kv is the v Q maximal compact subgroup of Gv preserving h , iv. Also, X = v Xv where Xv = Gv/Kv. Throughout this Section 3.2, τ ∈ I is fixed. For j = 1, . . . , n, define

(j) Yτ = {L ∈ Yτ | dimD(DMτ (L)) > j and mτ (L) = 1}.

(0) (0) (1) (2) Set Yτ = Y . Then Yτ ⊃ Yτ ⊃ Yτ ⊃ · · · is a nested sequence of (n) subspaces in the fiber Y over τ. By definition, Wcτ = Yτ . There is a

9 (j) (j−1) (j) K-equivariant strong deformation retraction rτ (t) from Yτ to Yτ for t ∈ [0, 1], whose definition we give below at (1). To obtain Rτ (t), we string (j) together the rτ (t) for j = 1, . . . , n, rescaling the n consecutive ts into [0, 1], (j) (j) while modding out by K. We write rτ (t) as rτ (L, t) when we need to specify L. (1) The action of the positive real homotheties gives rτ . Suppose j > 2 and (j−1) (j) (j) (j) L ∈ Yτ . We now define rτ (L, t). If L is in Yτ already, set rτ (L, t) = L n for all t. Otherwise, let P = S · Mτ (L), an S-submodule of S . Let Q be the orthogonal complement of P in Sn with respect to h , i. By [1, Lemma 2.6], Q is also an S-submodule, Sn = P ⊕ Q, and if λ is a non-zero real number then the map Fλ(p + q) = p + λq (for p ∈ P , q ∈ Q) is given by right multiplication by some matrix Fλ ∈ G. The heart of the argument is to prove that µτ (L) = sup{λ | mτ (LFλ) < 1} exists and satisfies 0 < µτ (L) < 1, with mτ (L · Fλ) = 1 at λ = µτ (L). (Intuitively, we shrink λ down from 1 through positive values until LFλ gains at least one new independent minimal vector; this new vector appears at λ = µτ (L).) Define

( (j−1) (j) (j) LF(1+(µτ (L)−1)t) if L ∈ Yτ − Yτ rτ (L, t) = (j) (1) L if L ∈ Yτ .

This is K-invariant, and [1] proves it is continuous in L and t.

3.3 Proof of Theorem 2

(j) (j) (j−1) Let Y ⊆ Y × I be the union of the Yτ for τ ∈ I. Let L ∈ Y . We (j) 0 must show rτ 0 (L, t) is continuous as τ ∈ I varies in a neighborhood of τ. We will show it is continuous for both τ 0 ∈ (τ − ε, τ] and τ 0 ∈ [τ, τ + ε) for small ε > 0. We will call either (τ −ε, τ] or [τ, τ +ε) a half-interval around τ. A punctured half-interval is a half-interval around τ with τ removed. As above, the action of the positive real homotheties gives the retraction (1) r . This is continuous as a function of τ because ϕτ is continuous in τ and all the weights are positive. From now on, let j > 2. The dimension dimD(DMτ (L)) may or may not be constant on small half-intervals. If there is no small half-interval on a given side on which it is constant, it nevertheless varies upper semi-continuously: the dimension has a certain value at τ, and has a constant but smaller value on a small punctured half-interval. The reason for the upper-semicontinuity is that dimS(SMτ (L))

10 is the number of linearly independent vectors x ∈ L with

L ϕτ (x)hx, xi − mτ (L) = 0. (2)

L For a given x, (2) is an upper semi-continuous condition, because ϕτ (x) is a real analytic positive function of τ, mτ (L) is a min of real analytic functions of τ, and hx, xi is a positive constant independent of τ. If the left side of (2) is 6= 0, then it will remain 6= 0 on a small half-interval around τ, by continuity. But if it is 0, then—by analyticity—it will either remain 0 on a small half-interval around τ, or it will be 6= 0 throughout a small punctured half-interval around τ. (j) 0 Showing rτ (L, t) is continuous in τ breaks into two cases. In the first 0 case, dimS P is constant for τ in a small half-interval around τ. This is equiv- (j−1) 0 alent to saying L ∈ Yτ 0 for all τ in the neighborhood. Then P and Q vary 0 n continuously with τ as S-submodules of S , hence so does LFλ. The min- 0 0 imum mτ 0 varies continuously with τ , so µτ 0 (L) varies continuously with τ (j) and remains bounded away from 1 on the half-interval. Hence rτ (L, t) varies continuously with τ 0 throughout the half-interval. In the second case, dimS(SMτ 0 (L)) is upper semi-continuous. Here L/∈ (j−1) 0 Yτ 0 for τ on a small punctured half-interval around τ; rather, there is 0 (j0−1) 0 a j < j so that L ∈ Yτ 0 for τ in that punctured half-interval. The (j) 0 (j−1) retraction r will not be operating on L when τ 6= τ, because L/∈ Yτ 0 ; rather, it will be operating on the image L0 of L under r(j0), r(j0+1), . . . , r(j−1). We must show that L0 is arbitrarily close to L when τ 0 is arbitrarily close to τ. Consider the function µ used in (1) above. When τ 0 is very close to τ, the new minimal vectors that will appear when λ = µτ 0 (L) are a subset of 0 those that are already in Mτ (L). This means that µτ 0 (L) → 1 as τ → τ. 0 In (1), this means LF(1+(µτ (L)−1)t) converges to L as τ → τ. The convergence is uniform as L and t vary in small compact neighborhoods. This proves the (j) continuity of rτ (L, t).

4 The Well-Tempered Complex

4.1 Hecke Correspondences We review Hecke correspondences, following [24, §3.1 and p. 76]. Sub- groups Γ1 and Γ2 of G are commensurable if Γ1 ∩ Γ2 has finite index in

11 both Γ1 and Γ2. Commensurability is an equivalence relation. The commen- ˘ −1 surator of Γ1 is Γ1 = {a ∈ G | a Γ1a is commensurable with Γ1}. If Γ1 ˘ ˘ and Γ2 are commensurable, then Γ1 = Γ2. Define ∆ = {a ∈ G | L0a ⊆ L0}. This is a sub-semigroup of G con- taining Γ0. If a ∈ ∆, then M0 = L0a is a sublattice of L0 of finite index. ˘ −1 Thus Γ0 ⊂ ∆ ⊂ Γ0. The arithmetic group Γ = Γ0 ∩ a Γ0a is the common stabilizer in G of L0 and M0. One calls (Γ0, ∆) a Hecke pair. A point in Γ0\X has the form Γ0gK with g ∈ G. Define two maps Γ\X (3)

p q  Γ0\X by p :ΓgK 7→ Γ0gK and q :ΓgK 7→ Γ0agK. The map q is well defined: −1 (∀ γ ∈ Γ) Γ0ag = Γ0aγg is true if and only if Γ0 = Γ0aγa , and the latter −1 −1 −1 −1 is implied by aγa ∈ a(Γ0 ∩ a Γ0a)a = aΓ0a ∩ Γ0 ⊆ Γ0. The Hecke correspondence Ta is the one-to-many map Γ0\X → Γ0\X given by −1 Ta = q ◦ p .

It sends one point of Γ0\X to [Γ0 : Γ] points of Γ0\X, counting multiplicities. The Hecke algebra for the Hecke pair (Γ0, ∆) is the free abelian group on the set of correspondences Ta for a ∈ ∆, with multiplication defined by the composition of the correspondences. This is equivalent to the traditional definition as the algebra of double cosets Γ0aΓ0 for a ∈ ∆ [24, p. 54]. The Hecke algebra is commutative.

4.1.1 Examples

n Let D = Q, and let L0 be the standard lattice Z . Then Γ0 = GLn(Z). All n lines in P (Q) are equivalent mod Γ0, so the constant function ϕ = 1 is the only set of weights for Γ0. Here ∆ is the semigroup of all n × n matrices with ˘ entries in Z and non-zero determinant. Γ0 = GLn(Q). For a prime ` ∈ Z and k ∈ {1, . . . , n}, define

T`,k = Ta for a = diag(1,..., 1, `, . . . , `). | {z } | {z } n−k times k times

The Hecke algebra is generated by the T`,k for all primes ` and k ∈ {1, . . . , n} [24, §3.2].

12 When D is an algebraic number field of class number one, the Hecke algebra is defined in a similar way. The ring of integers OD replaces Z. When D is a number field of class number greater than one, what we have defined is a subalgebra of the full Hecke algebra, namely the subalgebra consisting of those correspondences that come from the principal ideal classes. The full Hecke algebra is defined over the adeles; see, for example, [16, p. 47].

4.2 Definition of the Well-Tempered Complex

Fix a set of weights ϕ for Γ0. The lattice L0, and ϕ, determine the well- −1 rounded retract for Γ0 as in Section 2. Fix a ∈ ∆, and let Γ = Γ0 ∩ a Γ0a + as in Section 4.1. The well-tempered complex W will be determined by L0, ϕ, and a, and will naturally have an action of Γ. We impose an additional hypothesis on ϕ making ϕ compatible with a:

ϕ(xa) = ϕ(x) for all x ∈ L0 − {0}. (4) The hypothesis is satisfied, for instance, if ϕ is the constant function 1. Let M0 = L0a. For the rest of the paper, we extend the set of weights ϕ for Γ0 to a set of weights ϕτ for Γ in a particular way.

Definition 3. For x ∈ L0 − {0} and τ > 1, define  ϕ(x) if x ∈ M0 − {0}, ϕτ (x) = 2 τ ϕ(x) if x∈ / M0. Remark. The idea here comes from m(L) in Definition 1. The weighted squared length of a vector x ∈ L is ϕL(x)hx, xi. The squared length hx, xi scales by c2 when we multiply x by c ∈ R. By multiplying the weight by τ 2 when x∈ / M0, we mimic the effect of scaling the length of x linearly by τ. We pretend x∈ / M0 gets longer by lies, linearly. When x ∈ M0, we do not pretend to change the length.

Choose τ0 > 1, and let I = [1, τ0]. The well-tempered complex depends on τ0, but we will see that the complexes for two different τ0 are isomorphic when τ0 is sufficiently large. In Theorem 4 below, we will derive a particular τ0 > 1 for computing Hecke operators.

+ Definition 4. The well-tempered complex W for L0, ϕ, and a is the image of (Y ×[1, τ0])/K under the retraction Rτ (t) of Theorem 2, where ϕ satisfies (4) and where ϕτ is as in Definition 3.

13 4.3 Cells in the Well-Tempered Complex

Theorem 3. The universal cover Wf+ of the well-tempered complex W + is a locally finite regular cell complex on which Γ acts cell-wise with finite stabilizers of cells. This cell structure has a natural barycentric subdivision which descends to a finite cell complex structure on W +. Proof. We summarize notation and facts from the proof of Theorem 1 in [1], at first with τ fixed. For any ring R, let Mn(R) be the ring of n × n matrices t ∗ over R, and (... ) the transpose. For Zv ∈ Mn(Dv), let Zv be the result of ∗ applying to each matrix entry of Zv. We say Zv ∈ Mn(Dv) is Hermitian if t ∗ Zv = Zv . Let Ev be the R-vector space of Hermitian matrices in Mn(Dv). Z is positive definite if TraceDv xZ x∗ > 0 for all x ∈ Dn − {0}. Identify v R v v Xv = Gv/Kv with the open cone of positive definite matrices in Ev, via ∗ t Q gKv ↔ g(g ) for g ∈ Gv. Let E = Ev, an R-vector space, and identify Q Qv points X = v Xv with products Z = v Zv of positive definite matrices. If ∗ t x ∈ L0 and Z = g(g ) for g ∈ G, the length hxg, xgi is denoted Z[x]. As mentioned in the Introduction, E puts a system of linear coordinates on X. If x ∈ L0 is fixed, then Z[x] is an R-linear function of Z. The cells in our complexes will be defined using this linear structure. The definitions of m(L), M(L), and well rounded from Definition 1 are equivalent to the following for Z ∈ X:

mτ (Z) = min{ϕτ (x)Z[x] | x ∈ L0 − {0}} (5)

Mτ (Z) = {x ∈ L0 | ϕτ (x)Z[x] = mτ (Z)} n Z is well rounded if SMτ (Z) = S .

If Wfτ is the set of well-rounded Z in X with minimum mτ (Z) = 1, then Wfτ is the inverse image of Wτ under the covering map X → Y/K; this is the universal cover of Wτ . A point Z ∈ Wfτ satisfies the linear equations and inequalities

ϕτ (x)Z[x] = 1 if x ∈ Mτ (Z), ϕτ (x)Z[x] > 1 if x ∈ L0 − {0}.

For each finite subset M ⊆ L0, we define στ (M) to be the set of all Z ∈ X such that

ϕτ (x)Z[x] = 1 for x ∈ M (6)

14 ϕτ (x)Z[x] > 1 for x ∈ L0 − (M ∪ {0}).

This is a system of linear equations and inequalities in the linear coordinates of E. (Intuitively, it is a linear programming problem in E.) Either στ (M) is empty, or it is a convex polyhedron, which is topologically a closed cell. When the cell is non-empty, we call M the set of minimal vectors for στ (M). [1] shows that the non-empty στ (M) give Wfτ the structure of a locally finite regular cell complex on which Γ0 acts cell-wise with finite stabilizers of cells. It shows that the cell structure has a natural barycentric subdivision which descends to a finite cell complex structure on Wτ . An element γ ∈ Γ0 acts −1 by γστ (M) = στ (Mγ ). We now consider how these constructions vary with τ. For each finite sub- set M ⊆ L0, extend (6) to the following system of equations and inequalities in Z and τ:

ϕτ (x)Z[x] = 1 for x ∈ M,

ϕτ (x)Z[x] > 1 for x ∈ L0 − (M ∪ {0}), 1 6 τ 6 τ0. By Definition 3, this is equivalent to

ϕ(x)Z[x] = 1 for x ∈ M ∩ M0, (7) 1 ϕ(x)Z[x] = for x ∈ M − M , τ 2 0 ϕ(x)Z[x] > 1 for x ∈ M0 − (M ∪ {0}), 1 ϕ(x)Z[x] > for x ∈ L − (M ∪ M), τ 2 0 0 1 6 τ 6 τ0. We now add one more variable to our system of linear coordinates. Re- place E with the real vector space E ×R, where the coordinate on the second factor is u. Rewrite (7) on E × R by setting 1 u = . τ 2 In the first four equations of (7), u occurs (if at all) only to the first power. 2 The last equation bounds u between two constants, 1/τ0 and 1. Thus the equations and inequalities (7) are still linear in the coordinates of Z and u,

15 still a linear programming problem. Exactly as in [1], the solution set for M is either empty or is a convex polyhedron σ(M), which is topologically a closed cell. Taken over all M, the σ(M) give Wf+ the structure of a regular cell complex on which Γ acts cell-wise with finite stabilizers of cells. The cell structure has a natural barycentric subdivision which descends to a cell complex structure on W +. We must show there are only finitely many cells σ up to the action of Γ. Since a convex polyhedron is the convex hull of its vertices, it suffices to show there are only finitely many zero-dimensional cells (vertices) σ in Wf+ up to the action of Γ. Fix a Z-basis of L0. Given b ∈ R, define the box for b to be the set of vectors in L0 whose coordinates with respect to the basis all 0 have absolute value 6 b. Let Γ be the intersection of the conjugates of Γ in Γ0; this is a normal subgroup of Γ0 of finite index. By the finiteness for the 0 ordinary well-rounded retract Wf1 mod Γ , there is a b0 so that every vertex 0 of Wf1 has, modulo Γ , the form σ1(M) for an M contained in the box for b0. 0 Then every vertex that is a solution to (7) with 1 6 τ 6 τ0 has, modulo Γ , the form σ(M) for an M contained in the box for b0τ0. The box has only finitely many subsets.

2 Notation. For any τ > 1, we write u = 1/τ for the rest of the paper. We write Wu = W1/τ 2 , and similarly for Wfu.

4.4 Refining the Well-Tempered Complex

In Wfτ for a given τ, the non-empty cells στ (M) are in one-to-one correspon- dence with their sets of minimal vectors M. In Wf+, the cells σ are also indexed by a finite amount of combinatorial data. For computation in Wf+, it will be more convenient to take a certain refinement of the cell structure. In the refinement, the combinatorial data in L0 will be kept separate from the combinatorial data along the τ-axis. Since a non-empty σ is a closed convex polyhedron, its projection onto 2 the u-coordinate is a compact subinterval of [1/τ0 , 1], possibly a single point. Consider the set U of left and right endpoints of these intervals, taken over all σ. Because the cells are convex, the endpoints are the images of certain vertices of the σs. By the finiteness in Theorem 3, U is a finite subset of 2 [1/τ0 , 1]. We denote its elements

2 (0) (1) (ir) 1/τ0 = u < u < ··· < u = 1. (8)

16 √ The u(i), and their corresponding τ (i) = 1/ u(i), are called the critical tem- peraments. We will always refine the cells σ of Theorem 3 by cutting them (i) into closed pieces along the hyperplanes u = u for i = 0, . . . , ir. Each non- empty cell of the refinement is indexed by a pair. The pair is (M, [u(i−1), u(i)]) if the projection of the cell to the u-coordinate is [u(i−1), u(i)]. The pair is (M, [u(i), u(i)]) if the projection is {u(i)}. We will write [u, u0] as shorthand for both [u(i−1), u(i)] and [u(i), u(i)].

4.5 The First and Last Temperaments

Since M0 is a sublattice of finite index in L0, there is a positive integer N so that NL0 ⊆ M0 ⊆ L0. Let ξ be the maximum value of ϕ on x ∈ M0 − {0}. Let η be the minimum value of ϕ on x ∈ L0 − M0.

Theorem 4. Let L0, ϕ, and a be as in Theorem 3. Define p τ0 = ξ/η N.

−1 Let τ > τ0. Then the map X → X given by gK 7→ a gK descends mod Γ to give a cell-preserving homeomorphism from the well-rounded retract W1 over 1 to the well-rounded retract Wτ over τ. If a cell over τ = 1 is σ1(Q) with index set Q ⊂ L0 − {0}, then the cell that corresponds to σ1(Q) under the homeomorphism has index set Qa.

We call the endpoints of [1, τ0] the first and last temperaments, respec- tively. For example, if D = Q and Ta = T`,k as in Section 4.1.1, then τ0 = `. We turn to the proof of Theorem 4.

Lemma. With notation as in Theorem 4, let τ > τ0. Let L = L0g be a well- rounded lattice in the fiber over τ. Then every minimal vector x ∈ Mτ (L) is in M0g.

Proof of Lemma. First suppose τ > τ0. Assume by way of contradiction that x ∈ Mτ (L) is a minimal vector with x∈ / M0g. Note that Nx ∈ M0g. The 2 weighted length of x is ϕτ (x)hx, xi > τ ηhx, xi. The weighted length of Nx 2 2 2 is ϕτ (Nx)hNx, Nxi ξN hx, xi. Since x was minimal, we have τ η ξN , p > 6 or τ 6 ξ/ηN, contradicting τ > τ0. When τ = τ0, the argument needs to be modified because there may be 2 2 ties. τ η = ξN may occur for an x with x∈ / M0g but Nx ∈ M0g. This says that two of the conditions in (7), those for x and Nx, are identical and

17 redundant in the fiber over this particular τ0. We simply drop x from the minimal vector set and keep Nx.

Proof of Theorem 4. Let g ∈ G be such that L0gK ∈ Wτ . We use the ∗ t notation Z = g(g ) of the proof of Theorem 3. To say L0gK is well rounded over τ is to say that there is a finite subset M ⊂ L0 − {0} so that

ϕτ (x)Z[x] = 1 for x ∈ M

ϕτ (x)Z[x] > 1 for x ∈ L0 − (M ∪ {0}).

By the Lemma, M is a subset of M0 −{0}; every x ∈ M has the form x = ya for some y ∈ L0 − {0}. Let Q be the set of these y, so that M = Qa. Let ∗ t Z1 = aZ(a ) . Then

ϕτ (x)Z1[y] = 1 for y ∈ Q

ϕτ (x)Z1[y] > 1 for y ∈ L0 − (Q ∪ {0}) with x = ya. Since x ∈ M0, Definition 3 says ϕτ (x) is independent of τ, hence equals ϕ1(x). By the hypothesis (4), ϕ1(x) = ϕ1(y). Thus

ϕ1(y)Z1[y] = 1 for x ∈ Q

ϕ1(y)Z1[y] > 1 for x ∈ L0 − (Q ∪ {0}).

In other words, Z1 is well rounded in the fiber over 1. It is easy to see this map is a homeomorphism between the well-rounded retracts in the two fibers. Since the map from the fiber over τ to the fiber over 1 was multiplication by a, the map from the fiber over 1 to the fiber over τ is multiplication by a−1. The map on sets of minimal vectors from the fiber over 1 to the fiber over τ is Q 7→ M, which is Q 7→ Qa.

Corollary. For any two τ1, τ2 > τ0, the intersections of the well-tempered complex with the fibers over τ1 and τ2 are equal to each other as subsets of Y/K, independently of τ; Proof. By Theorem 4, both are equal to a−1 times the fiber over τ = 1.

5 Computing Hecke Operators

Let the Hecke pair (Γ0, ∆) be as above. Let ρ be any left Z∆-module. There is a natural left action of the Hecke algebra on cohomology groups for Γ0

18 with coefficients in ρ [10, §1.1]. For a ∈ ∆, the action of the Hecke cor- respondence Ta on the cohomology is called the Hecke operator, and it will also be denoted Ta. In this section, we will give an algorithm that uses the well-tempered complex to compute Ta.

5.1 Equivariant Cohomology First, we specify the cohomology theory we will use. This is the equivariant ∗ cohomology HΓ0 (X; ρ), the cohomology of the group Γ0 with coefficients in the complex of cochains on X with coefficients in ρ [11, VII.7]. In this paragraph, say a prime is “bad” if it divides the order of a finite subgroup of Γ0. Since Γ0 is arithmetic, it has at most finitely many finite subgroups up to conjugacy. Hence there are at most finitely many bad primes. Suppose the module underlying the coefficient system ρ is a vector space over a field whose characteristic is not divisible by the bad primes; this ∗ includes characteristic zero. Then the equivariant cohomology HΓ0 (X; ρ) is ∗ canonically isomorphic to the cohomology H (Γ0\X; ρ) of the space Γ0\X ∗ with coefficients in ρ, as well as to the group cohomology H (Γ0; ρ). To compute equivariant cohomology, we may replace X with any acyclic cell complex on which Γ0 acts.The symmetric space X = G/K is contractible. By Theorem 1, the well-rounded retract Wf is a strong deformation retract ∗ ∗ of X, hence contractible, hence acyclic. Thus HΓ0 (X; ρ) = HΓ0 (Wf; ρ). Again + by Theorem 1, the fiber Wfτ of the well-tempered complex Wf over any τ is a strong deformation retract of X, hence acyclic. This holds in particular (i) for the fibers Wfτ (i) over the critical temperaments τ . Denote the portion of Wf+ with u between two consecutive critical temperaments, u ∈ [u(i−1), u(i)], by Wf[u(i−1),u(i)]. By Theorem 2, Wf[u(i−1),u(i)] is a strong deformation retract (i−1) (i) of X × [u , u ], hence is acyclic. Any of the Wfu(i) or Wf[u(i−1),u(i)] can be used to compute the equivariant cohomology of Γ. We can compute it in finite terms because the complexes have only finitely many Γ-orbits of cells.

Wf[u(i−1),u(i)] has dimension one higher than the vcd, but its cohomology in degree vcd+1 will be zero.

19 5.2 Definition of the Hecke Operator Apply the equivariant cohomology functor to the diagram (3):

∗ HΓ(X; ρ) (9) T p∗ q∗

∗  HΓ0 (X; ρ)

∗ The Hecke operator Ta on HΓ0 (X; ρ) is by definition

∗ p∗q .

∗ ∗ ∗ The map q : HΓ0 (X; ρ) → HΓ(X; ρ) is the natural pullback map for q. The ∗ ∗ map p∗ : HΓ(X; ρ) → HΓ0 (X; ρ) is the transfer map [11, III.9] for p, which is −1 defined because Γ = Γ0 ∩ a Γ0a has finite index in Γ0.

5.3 Computing Hecke Operators We now describe how to use (9) with the well-tempered complex to compute the Hecke operators in practice. First, we compute p∗. We use τ = 1, the first temperament, when working with p. The retracts Wf and Wf1 are equal by definition. Γ0 acts on Wf, and the smaller group Γ acts on Wf1. Computing the transfer map is straightforward. (In practice it is tricky to get the orientation questions correct. This is true for all the cells, and especially for the cells with non-trivial stabilizer subgroups. This comment applies to all the computations in this paper.) Next, we compute q∗. The pullback map is natural on cohomology, but we must account for the factor of a in the definition of q. The key is to ∗ use the last temperament τ0 when working with q. We compute HΓ(X; ρ) ∗ as HΓ(Wfτ0 ; ρ). By Theorem 4, there is a homeomorphism of cell complexes

Wfτ0 → Wf1, from the last temperament to the first, given by multiplication by a. As we saw for p, Wf1 equals Wf. Thus there is a cellular map which ∗ ∗ ∗ enables us to compute q : HΓ0 (Wf; ρ) → HΓ(Wfτ0 ; ρ). During the computation, the cells are represented by the combinatorial data (M, [u, u0]) of Section 4.4. By Theorem 4, the map in the last paragraph involves dividing M by a; the map sends (M, [u, u0]) to (Ma−1, [u, u0]). The Lemma before Theorem 4 showed that, for the last temperament τ0, all the

20 −1 index sets M are subsets of the sublattice M0 = L0a. This is why Ma will be a subset of L0 (will be “integral”). ∗ Computing only p∗ and q does not give us the Hecke operator. The map of Theorem 4 involves dividing or multiplying by a. It is not a Γ-map, because a ∈ ∆ but a∈ / Γ in general. For this reason, we cannot directly map ∗ ∗ HΓ(Wfτ0 ; ρ) to HΓ(Wf1; ρ). To overcome this last difficulty, we use the whole well-tempered complex to define a chain of morphisms and quasi-isomorphisms. For i = 1, . . . , ir, (i−1) (i) in the portion Wf[u(i−1),u(i)] over the fibers u ∈ [u , u ], define the closed inclusions of the fibers on the left and right sides:

l(i−1) r(i) Wfu(i−1) ,−−−→ Wf[u(i−1),u(i)] ←−- Wfu(i) By Theorems 2 and 3, we can compute the pullbacks (l(i−1))∗ and the push- (i) ∗ forwards (r )∗ on HΓ(... ; ρ). The pullback is a naturally defined cellular (i) map. The pushforward (r )∗ is a quasi-isomorphism, the inverse of the pull- back (r(i))∗; we compute the pullback at the cochain level using the cellular map, then invert the map on cohomology. We summarize our algorithm as a theorem.

Theorem 5. With notation as above, the Hecke operator Ta on equivariant cohomology (9) may be computed in finite terms as the composition ∗ ∗ ∗ (0) (1) (1) (2) (ir−1) (ir) ∗ p∗l r∗ l r∗ ··· l r∗ q .

∗ (i)∗ (i) Note that the maps p∗, q , and l and r∗ for the various i can be computed in parallel to speed up the computation.

5.4 Cohomology of Subgroups

0 Let Γ ⊆ Γ0 be an arithmetic subgroup. We wish to compute Hecke operators ∗ 0 on the equivariant cohomology HΓ0 (X; ρ) for any Γ . By Shapiro’s Lemma ∗ ∼ ∗ Γ0 0 0 [11, III.6.2], HΓ (X; ρ) = HΓ0 (X; CoindΓ ρ). We use Theorem 5 to compute the latter.

6 Computing the Well-Tempered Complex

We now describe practical algorithms for finding a list of representatives of the Γ-orbits of cells in the well-tempered complex.

21 In broad terms, there are two kinds of steps. First, we take an individual τ and find all the cells in Wτ up to Γ-equivalence. Second, we determine the interval of τ 0 around the given τ where the cell structure does not change. The endpoints of this interval are two consecutive members of the set of critical temperaments. We also carry out the first step at the critical temperaments themselves. We repeat the first and second steps, starting at different τ, until the entire interval [1, τ0] has been covered. As we said in the Introduction, our algorithm for Hecke operators has two parts, one-time work and every-time work. The one-time work is to + compute Wf for a given L0, set of weights ϕ, and a ∈ ∆. The every-time ∗ work is to pick a ρ and compute the Hecke operators on HΓ0 (X; ρ). As in Section 5.4, computing Hecke operators for a range of different levels N comes under the heading of every-time work.

6.1 Finding the Cells for One Fiber

In Section 4.3 we introduced the space Ev of n×n Hermitian matrices over Dv. Pn ∗ Put the positive definite inner product hhA, Biiv = i,j=1 AijBij on Ev. P Dv Then hhA, Bii = Trace hhA, Biiv is a positive definite inner product Q v R on E = v Ev. For a row vector x ∈ L0, let ψ = ψ(x) be the matrix ∗ whose component ψv at the v-th place has i, j entry equal to (xv)i (xv)j. Let Z = g(g∗)t. The next proposition generalizes Voronoi’s original work on perfect forms [31, §15].

Proposition. With x, ψ, and Z as above, Z[x] = hhZv, ψii.

Proof. For elements in the image of the embedding D,→ Dv, we drop the subscript v for simplicity.

Z[x] = hxg, xgi n X X = TraceDv (((xg) )∗(xg) ) R i i v i=1 n ! X X = TraceDv ((xg) )∗(xg) R i i v i=1 n n !∗ n !! X X X X = TraceDv x g x g R j ji k ki v i=1 j=1 k=1

22 ! X X = TraceDv g∗ x∗x g R ji j k ki v i,j,k ! X X = TraceDv g g∗ x∗x R ki ji j k v i,j,k ! ! X X X = TraceDv g g∗ x∗x R ki ji j k v j,k i ! X X = TraceDv (Z ) (x∗x )∗ R v kj k j v j,k X = TraceDv hhZ , ψii R v v v

= hhZv, ψii.

Now let the notation be as in Theorem 4.  ϕ(x)Z[x] if x ∈ M0 − {0}, ϕτ (x)Z[x] = 2 τ ϕ(x)Z[x] if x∈ / M0.

Define  ψ if x ∈ M0 − {0}, ψτ (x) = 2 τ ψ if x∈ / M0.

Definition 5. For a given τ ∈ [1, τ0], the Hecketope at τ is the intersection of X with the convex hull Hτ in E of the points ψτ (x) for all x ∈ L0 − {0}.

The Voronoi polyhedron is the Hecketope at τ = 1 [27, §A.3.4]. We must explain why we took the intersection with X in the definition. The points ψτ (x) lie on the boundary of the cone X in E. They are not in X (assuming n > 2), because their rank over D is one; they are positive semidefinite, not positive definite. If F is a face of Hτ and int F is the relative interior of F , then either int F lies in X or is disjoint from X. The Hecketope contains only the int F that lie in X. We remark that Hτ is not compact, because it has infinitely many vertices ψτ . It is not locally finite at the faces where int F does not lie in X. Examining Formulas (7) gives the

23 Corollary. There is a one-to-one, inclusion-reversing correspondence be- tween the faces of the Hecketope at τ and the faces of the fiber Wfτ of the well-tempered complex over τ.

For instance, a facet (codimension-1 face) of the Hecketope corresponds to a vertex (dimension 0) of the well-rounded retract. When D = Q, the polyhedral cones in the Voronoi tiling of X as in [31] are exactly the cones spanned by the faces of the Voronoi polyhedron. If F is a face of Hτ for which int F is disjoint from X, then Formulas (7) determine a set of points which are not well rounded. That is why we exclude such int F from the Hecketope.

6.2 Finding Representative Cells modulo Γ For a given τ, we need an algorithm to find a complete set of representatives of the cells of Wfτ modulo Γ. By the last Corollary, it is equivalent to provide an algorithm to find a complete set of representatives of the faces of the Hecketope Hτ ∩ X modulo Γ. We describe two such algorithms.

6.2.1 Contiguous Forms

The first algorithm generalizes Voronoi’s own method. Find a facet F0 of the Hecketope at which to start. Enumerate all the facets F01,F02,... of this facet (these have codimension two in the Hecketope). Each F0j is the border between exactly two facets of the Hecketope; the first is F0, and the second is a new facet contiguous to F0. Voronoi gave an algorithm for finding the contiguous facet when D = Q [31, §§22–23]; a modern formulation, with ideas for implementing it on computers, appears in [21, §7.8]. Enumerate all the facets contiguous to F0 across F01,F02,... . Continue this process recursively. When the algorithm computes a new facet, check whether it is Γ-equivalent to one we have already found. The algorithm stops when all the new facets one finds are Γ-equivalent to old facets. Once we have a list of finitely many facets, it is straightforward to enumerate their faces in all the smaller dimensions and classify them up to Γ-equivalence. Specialized, highly optimized algorithms have been designed for particu- lar D and n. Examples include [26] and [15].

24 6.2.2 A Global Method At present, our code uses a second method. We begin with an intuitive description. We choose a finite subset B ⊂ L0−{0}, roughly the lattice points 0 in a ball around the origin. We take the convex hull H of {ψτ (x) | x ∈ B} in E. H0 ∩ X is a chunk of the Hecketope H ∩ X near the origin of E. The chunk has been truncated far from the origin (since H0 is compact, while H is not). Near the region where the truncation occurs, H0 will have faces which are not faces of H. Let us make precise how we choose B. Choose a reasonably good lattice n basis of L0 as Z-lattice. (If D = Q and L0 = Z , choose the standard basis.) Put on L0 the usual 2-norm for the coordinates on that basis. Choose a parameter c, the vertex count, which is the approximate number of points we want to have in B. Using the classical formula for the volume of a ball in n dimR S dimensions, choose an r1 so that the ball of radius r1 contains about 1.25c vectors of L0 − {0}. (We always count x and −x as a single vector. Similarly, if u ∈ D is a unit with norm of absolute value 1 in each Dv, we count x and xu as a single vector. The extra 0.25 is a margin of error.) Let L1 be the list of these x ∈ L0 within radius r1. Choose r2 so that the ball of radius r2 contains about 1.25c vectors of M0 −{0}. Let L2 be the list of these x ∈ M0. If x ∈ L1 ∩ L2, remove x from L1. For each x ∈ L1 ∪ L2, compute ψτ (x). Give ψτ (x) a score; we have experimented with different scores, but P ∗ currently we use z z for z running down the diagonal of the matrix ψτ (x). Let B contain the best c vectors x ∈ L1 ∪ L2, where “best” means the scores are the least. If the scores are tied, take a few more vectors than c until the tie is broken. The main point of this algorithm is that ψτ (x) is scaled by 2 a factor of τ when x ∈ L1, but not when x ∈ L2. When τ is near 1, B contains the shortest c vectors in L0 − {0}. But when τ is near τ0, almost all the vectors in B are in M0 − {0}. For mid-range τ, B contains a mixture. 0 Once B is chosen, we compute the convex hull H of {ψτ (x) | x ∈ B} in E using Sage’s class Polyhedron over Q [28]. The Polyhedron class has a method which enumerates all the faces of H0 in every dimension. We keep those faces whose relative interior lies in X, discarding those where it does not. We use (7) to check whether the face is really a face of H, and we discard ˇ it if not. The faces that remain form a set Wτ . We find representatives of ˇ the Γ-orbits in Wτ by a straightforward search. ˇ If we choose c too small, we observe that the set Wτ will not be a closed subcomplex. Some small-dimensional faces of H will be computed incor-

25 rectly in H0 near where H is truncated. Because of the inclusion-reversing correspondence in the last Corollary, this means some large-dimensional faces ˇ will be missing in Wτ ; for example, two k-cells may be missing their common (k−1)-dimensional face. However, when c is large enough, we do get a closed cell complex equal to Wτ . As we have said, computing the Hecketopes is one-time work. We take the position that one-time work can be relatively slow, as long as the every- time work is fast. Still, choosing a large c makes the one-time work very slow, and it generates large intermediate files until we have finished modding out by Γ. A plan for our future work on the Hecketopes is to replace the global method with the method of contiguous forms.

6.3 Finding Consecutive Critical Temperaments In this section, let F be a given facet of the Hecketope at τ. Dually, F is a vertex of the retract Wfτ over τ. As in (7), F is characterized by a set M of minimal vectors in L0 − {0}. Because F is a vertex of the retract, there is a unique Z satisfying (7) for M and τ. As before, change variables to u by u = 1/τ 2. Our next goal is to find the largest interval [u1, u2] containing a given u so 0 0 that, for all u ∈ (u1, u2), (7) still has a unique solution at u for our chosen F 0 0 and M. At the endpoints u = u1 or u = u2, the solution to (7) could be unique for a proper superset of M (in other words, some new independent minimal vectors could appear). To find [u1, u2], we observe that (7), for a given M, defines a pencil of Hermitian forms in the variable u0. The left-hand side of the equations is a linear function of the entries of Z. The right-hand sides are either 1 or u0, depending on whether or not x ∈ M0. Using symbolic algebra in Sage, we find the solution Z = Z(u0) of this pencil. The entries of the matrix Z(u0) are linear polynomials in u0. The coefficients in this pencil are in D (are “rational”), since all the x ∈ L0. Thus the symbolic computations we are about to do are based on rational arithmetic. For simplicity, in the rest of this section, we describe our implementation of the algorithm for D = Q, where S = R. If D is a more general number field or division algebra, the algorithm would need modifications, such as using complex interval arithmetic when we use real interval arithmetic below. It may be that Z(u0) only has a solution at the one point u0 = u. This

26 happens if and only if we are at a critical temperament. If it happens, we stop and report that the largest interval [u1, u2] is [u, u]. Otherwise, we continue searching for a larger interval. The algorithm we are about to describe is like Voronoi’s original contigu- ous form algorithm [31, §§22–23] [21, §7.8], but adapted to the variation of the temperament. We find det Z(u0) symbolically as a polynomial f(u0). Re- placing f by its gcd with its derivative, we guarantee that f has no repeated roots. Using real interval arithmetic (Sage’s RIF), we find approximations to the real roots of f. Our u itself is not a root, since Z is positive definite there. The real roots closest to u on either side are where Z become a de- generate Hermitian form. The interval [u1, u2] must be properly contained in the interval cut out by the real roots, because of positive definiteness. We now describe how to find u1 (the left side); finding u2 is similar. We find u1 using a bisection argument. Let ur be the real root of f closest to u on the 0 left. Start with u halfway between ur and u. If the equations in (7) have no new minimal vectors beyond those in M, move u0 further to the left, halfway between its current position and ur. After enough bisections, we must find some new minimal vectors, because we are getting closer and closer to where det Z(u0) = 0, the boundary of X. Once we find a u0 where the set M 0 of minimal vectors in the equations in (7) is a proper superset of M, we are essentially done. The finite number of vectors in M 0 − M give finitely many conditions; the rightmost of those conditions determines u1.

6.4 Finding the Well-Tempered Complex We complete Section 6, giving a practical algorithm for finding a list of representatives of the Γ-orbits of cells in the well-tempered complex Wf+. The input is L0, a set of weights ϕ, and a ∈ ∆. We begin by finding the Hecketope at u[0] = 1. This finds the fiber of Wf+ over u[0] = 1 (the well- rounded retract of [1]), together with the smallest possible u[1] so that the cell structure does not change for u0 ∈ u[1], u[0]. At the critical temperament u = u[1], the cell structure has changed, and we compute the fiber over it. Next, we take a u0 < u[1] but close to u[1], and we compute the fiber over u0 together with the interval around u0. If u0 was close enough, then the right- hand endpoint of the interval will indeed be u[1] (if not, we pick u0 even closer to u[1] and start over). The interval around u0 where the cell structure does not change is then u[2], u[1]. Here u[2] is the next critical temperament. We continue in this way. We stop when the left-hand endpoint of the interval is

27 2 [0] [ir] 1/τ0 . We have generated the points u ,..., u in right-to-left order, but we renumber them as u(i) in left-to-right order to match (8).

7 Some Results for Subgroups of SL3(Z)

Let Γ0(N) be the subgroup of SL3(Z) consisting of the matrices congruent to h ∗ ∗ ∗ i ∗ ∗ ∗ modulo N. We present some cohomology computations for Γ (N) for 0 0 ∗ 0 levels N = 2 through 7. For these N, the group (Z/NZ)× of units mod N is cyclic, and hence the group of Dirichlet characters (Z/NZ)× → C× is cyclic. Let χN be a generator of this Dirichlet group. Any Dirichlet character η mod N defines a nebentype character Γ0(N) → × C by A 7→ η(a33), where a33 is the bottom right entry of A reduced mod N. We denote the nebentype character by the same symbol η. In Table 1, η = 1 is the trivial character. η = ±1 is the quadratic character, the unique character whose image is {±1}. Other η are given as powers of χN . When nebentypes differ by an automorphism of the Dirichlet group, it suffices to take one representative, since the automorphism induces an isomorphism on cohomology. i We computed the cohomology groups H (Γ0(N); η) for all i = 0,..., 3 and all nebentypes η. (The vcd is 3, so Hi vanishes for i > 3.) We then computed the Hecke operators T`,k on these cohomology groups, for ` = 2, 3, 5, 7 and k = 1, 2, 3. For simplicity, we omitted ` if ` | N. We decomposed the cohomology into its common Hecke eigenspaces for the operators that we computed. The results are in Table 1. A blank cell means the cohomology group is 0. Each non-blank entry indicates a non-zero Hecke eigenspace. The eigenspaces have dimension 1, except for those labeled (dim 2), which have dimension 2. The computations were done in exact arithmetic over the smallest field containing the image of η. This field was Q when η = 1 or ±1, and otherwise was the appropriate QuadraticField from Sage. If E is a Hecke eigenspace for the operators T`,k for all primes ` - N and k = 1, 2, 3, then E has an attached Galois representation. Let a`,k be the eigenvalue for T`,k. The Hecke polynomial at ` is 2 3 3 1 − a`,1X + `a`,2X − ` a`,3X . This is the characteristic polynomial of the Galois representation for E at the Frobenius over `. The factorization of the Hecke polynomial determines the

28 N η H0 H1 H2 H3 2 1 1 ⊕ ε ⊕ ε2 3 1 1 ⊕ ε ⊕ ε2 2 3 ±1 χ3 ⊕ ε ⊕ ε 2 1 ⊕ ε ⊕ χ3ε 4 1 1 ⊕ ε ⊕ ε2 1 ⊕ ε ⊕ ε2 2 4 ±1 χ4 ⊕ ε ⊕ ε 2 1 ⊕ ε ⊕ χ4ε 5 1 1 ⊕ ε ⊕ ε2 2 2 5 ±1 1 ⊕ χ5ε ⊕ ε 2 5 χ5 χ5 ⊕ ε ⊕ ε 2 1 ⊕ ε ⊕ χ5ε 6 1 1 ⊕ ε ⊕ ε2 1 ⊕ ε ⊕ ε2 (dim 2) 2 6 ±1 χ6 ⊕ ε ⊕ ε (dim 2) 2 1 ⊕ ε ⊕ χ6ε (dim 2) 7 1 1 ⊕ ε ⊕ ε2 3 2 7 ±1 χ7 ⊕ ε ⊕ ε 3 2 1 ⊕ ε ⊕ χ7ε ε⊕ (7.3.b.a) 2 2 2 7 χ7 1 ⊕ χ7ε ⊕ ε 2 7 χ7 χ7 ⊕ ε ⊕ ε 2 1 ⊕ ε ⊕ χ7ε

i Table 1: Galois representations for the cohomology H (Γ0(N); η) of congru- ence subgroups of SL3(Z) with nebentype coefficients η.

29 Galois representation. For example, let ε be the cyclotomic character, the Galois representation taking the value ` at ` for all ` - N. For any Dirichlet character χ, a factor of 1 − χ(`)`mX in the Hecke polynomials for all ` indicates that the Galois representation for E has a direct summand χεm, the tensor product of χ with m copies of ε. As a second example coming from Eichler-Shimura, a classical cuspidal Hecke eigenform of weight k and k−2 2 character χ has Hecke polynomial 1 − a`X + ` · χ(`) · ` X , where a` is the ’s Hecke eigenvalue at `. (For an introduction to these ideas, see [3] [5] and the references there.) Our Hecke eigenspaces E are determined by only finitely many `. We say that a Galois representation seems to be attached to E if our data matches the Galois representation for all the ` we have computed. The entries in Table 1 are the Galois representations that seem to be attached to E. We found their direct sum decompositions by factoring the Hecke polynomials. We believe we have computed enough ` so that the Galois representations really are attached; the results follow the patterns observed for SL3 in [3] [8] and for SL4 in [5] [6] [7]. (7.3.b.a) is the cusp form q − 3q2 + 5q4 − 7q7 − 3q8 + 9q9 + O(q10). This is the unique newform of level 7 and weight 3. Its name comes from the L-functions and Modular Forms Database [19].

References

[1] Avner Ash. Small-dimensional classifying spaces for arithmetic sub- groups of general linear groups. Duke Math. J., 51(2):459–468, June 1984.

[2] Avner Ash. A note on minimal modular symbols. Proc. Amer. Math. Soc., 96:394–396, 1986.

[3] Avner Ash, Daniel Grayson, and Philip Green. Computations of cuspidal cohomology of congruence subgroups of SL(3,Z). J. Number Theory, 19:412–436, 1984.

[4] Avner Ash, Paul Gunnells, and Mark McConnell. Cohomology of con- gruence subgroups of SL(4,Z) with symmetric power coefficients. In preparation.

30 [5] Avner Ash, Paul Gunnells, and Mark McConnell. Cohomology of con- gruence subgroups of SL(4,Z). J. Number Theory, 94(1):181–212, 2002.

[6] Avner Ash, Paul Gunnells, and Mark McConnell. Cohomology of con- gruence subgroups of SL(4,Z) III. Math. Comp., 79:1811–1831, 2010.

[7] Avner Ash, Paul Gunnells, and Mark McConnell. Cohomology with twisted coefficients of congruence subgroups of SL(4,Z). J. Algebra, 2020.

[8] Avner Ash, Paul Gunnells, Mark McConnell, and Dan Yasaki. On the growth of torsion in the cohomology of arithmetic groups. J. Inst. Math. Jussieu, pages 1–33, 2018.

[9] Avner Ash and Lee Rudolph. The modular symbol and continued frac- tions in higher dimensions. Inventiones Math., 55:241–250, 1979.

[10] Avner Ash and Glenn Stevens. Cohomology of arithmetic groups and congruences between systems of Hecke eigenvalues. J. Reine Angew. Math., 365:192–220, 1986.

[11] Kenneth S. Brown. Cohomology of Groups, volume 87 of Grad. Texts in Math. Springer-Verlag, 1982.

[12] J. E. Cremona and M. T. Aran´es. Congruence subgroups, cusps and Manin symbols over number fields. Contrib. Math. Comput. Sci., 6:109– 127, 2014.

[13] John E. Cremona. Hyperbolic tessellations, modular symbols, and ellip- tic curves over complex quadratic fields. Compositio Math., 51(3):275– 324, 1984.

[14] Edward Dunne and Mark McConnell. Pianos and continued fractions. Math. Magazine, 72(2):104–115, April 1999.

[15] P. Elbaz-Vincent, H. Gangl, and C. Soul´e.Perfect forms, K-theory, and the cohomology of modular groups. Advances in Math., 245:587–624, 2013.

[16] Stephen S. Gelbart. Automorphic Forms on Adele Groups. Number 83 in Annals of Math. Stud. Princeton Univ. Press, 1975.

31 [17] Paul Gunnells, Mark McConnell, and Dan Yasaki. Cohomology of GL(3) over the Eisenstein integers. J. Experimental Math., 2019. DOI: 10.1080/10586458.2019.1577767.

[18] Paul E. Gunnells. Computing Hecke eigenvalues below the cohomologi- cal dimension. J. Experimental Math., 9(3):351–367, 2000.

[19] The LMFDB Collaboration. The L-functions and modular forms database. http://www.lmfdb.org, 2020.

[20] Ju. I. Manin. Parabolic points and zeta-functions of modular curves. Math. USSR Izvestija, 6(1):19–64, 1972.

[21] Jacques Martinet. Perfect Lattices in Euclidean Spaces, volume 327 of Grundlehren der math. Wiss. Springer-Verlag, 2003.

[22] Eduardo R. Mendoza. Cohomology of PGL(2) over imaginary quadratic integers. Universit¨atBonn Math. Inst., 1979.

[23] Alexander D. Rahm. Higher torsion in the abelianization of the full Bianchi groups. LMS J. Comput. Math., 16:344–365, 2013.

[24] . Introduction to the Arithmetic Theory of Automorphic Functions, volume 11 of Publ. Math. Soc. Japan. Princeton Univ. Press, 1971.

[25] M. Dutour Sikiric, H. Gangl, P. Gunnells, J. Hanke, A. Schuermann, and D. Yasaki. On the cohomology of linear groups over imaginary quadratic fields. J. Pure Appl. Algebra, 220:2564–2589, 2016.

[26] M. Dutour Sikiric, A. Schuermann, and F. Vallentin. Classification of eight dimensional perfect forms. Electronic Res. Ann. AMS, 13:21–32, 2007.

[27] William Stein. Modular Forms, a Computational Approach, volume 79 of Grad. Stud. in Math. Amer. Math. Soc., 2007. With an appendix by Paul E. Gunnells.

[28] The Sage Developers. SageMath, the Sage Mathematics Software System (Version 9.1), 2020. https://www.sagemath.org.

32 [29] Bert van Geemen et al. Hecke eigenforms in the cohomology of congru- ence subgroups of SL(3,Z). J. Experimental Math., 6:163–174, 1997.

[30] Karen Vogtmann. Rational homology of Bianchi groups. Math. Annalen, 272:399–419, 1985.

[31] Georges Voronoi. Nouvelles applications des param`etrescontinus `ala th´eoriedes formes quadratiques: 1 Sur quelques propri´et´esdes formes quadratiques positives parfaites. J. Reine Angew. Math., 133:97–178, 1908.

33