Constructing Resolutions for p-groups

Peter Webb

Mount Holyoke, June 2002

email: webb@math.umn.edu http://www.math.umn.edu/∼webb

The text of this talk can be obtained from the above site.

Outline of talk

1. Introduction

2. Constructing a non-minimal resolution in characteristic 2 3. Examples

4. Splitting the resolution

5. Examples

6. Computing a minimal resolution

7. General construction of the resolution

8. Properties of the resolution 1. Introduction

I will show how to construct a minimal resolution of k over kG, wneh G is a p-group and k is a field of characteristic p, without finding preimages of elements, inverting matrices or taking intersections of subspaces. The only operations used are the basic ones of matrix addition and multiplication.

Some ways to compute the (co)homology of a finite p-group:

Method  Advantages/Disadvantages
LHS spectral sequence  It’s hard to program.
Compute a resolution by It’s easy to program.
computing projective  We get a minimal
covers and kernels using resolution.
matrices  It becomes slow.
Compute a resolution  Harder to program.
from a presentation  We get a minimal
of kG using Groebner  resolution.
basis methods  It becomes slow.
Bar resolution,  These are easy
construct BG  to program but too big.

Wall’s resolution

This list of methods is by no means complete. We mention also the method used by Rusin and special techniques for particular groups.

2. Constructing a non-minimal resolution in characteristic 2

Let G be a 2-group, H a subgroup of index 2 in G, k a field of characteristic 2. Suppose we are given a resolution

k ← \overbrace{Q_{0} ← Q_{1} ← ⋯}^{Q}

of k over kH. We will construct a resolution

k ← \overbrace{P_{0} ← P_{1} ← ⋯}^{P}

over kG.

At the moment we don’t know what P is, but let us pretend that we do. Let g ∈ G − H and consider the extension

0 ⟶ k⟶^{1−g}k ↑_{H}^{G}⟶ k ⟶ 0

associated to H. We may lift maps from P as follows

k ⟵ P_{0}  ⟵^{e_{1}} P_{1}  ⟵^{e_{2}} P_{2}  ⟵^{e_{3}}
1−g↓  ^{u_{0}}↓  ^{u_{1}}↓  ^{u_{2}}↓
k ↑_{H}^{G} ⟵ Q_{0} ↑_{H}^{G} ⟵^{d_{1}} Q_{1} ↑_{H}^{G} ⟵^{d_{2}} Q_{2} ↑_{H}^{G} ⟵^{d_{3}}
↓
k

to get a map of complexes u : P → Q ↑_{H}^{G}. We form the mapping cone of u. This is a complex C(u):

Q_{0} ↑_{H}^{G} \underleftarrow{(_{−d_{1}} _{u_{0}} )}Q_{1} ↑_{H}^{G} ⊕P_{0}\underleftarrow{( \begin{matrix}−d_{2} & u_{1} \\ 0 & e_{1} \end{matrix} )}Q_{2} ↑_{H}^{G} ⊕P_{1}\underleftarrow{( \begin{matrix}−d_{3} & u_{2} \\ 0 & e_{2} \end{matrix} )}

PROPOSITION/EXERCISE. C(u) is a projective resolution of k.

Proof. The modules here are projective. By looking at the long exact sequence in homology associated to the exact sequence

0 → Q ↑_{H}^{G}→ C(u) → P[1] → 0

which ends

⋯ → 0 → 0 → k → k ↑_{H}^{G}→ H_{0}(C(u)) → 0

we see that C(u) is a projective resolution of k.

At this point, one idea is that we may now define P to be C(u). P appears as the top and middle of a diagram as follows.

Q_{0} ↑_{H}^{G} \underleftarrow{(_{−d_{1}} _{u_{0}} )} Q_{1} ↑_{H}^{G} ⊕P_{0} \underleftarrow{( \begin{matrix}−d_{2} & u_{1} \\ 0 & e_{1} \end{matrix} )} Q_{2} ↑_{H}^{G} ⊕P_{1}
∥  ∥  ∥
P_{0}  ⟵^{e_{1}}  P_{1}  ⟵^{e_{2}}  P_{2}
u_{0}↓  ^{u_{1}}↓  ^{u_{2}}↓
Q_{0} ↑_{H}^{G}  ⟵^{d_{1}}  Q_{1} ↑_{H}^{G}  ⟵^{d_{2}}  Q_{2} ↑_{H}^{G}

We may take P_{0} = Q_{0} ↑_{H}^{G}= kG, u_{0} = 1 − g, and no matter what the e_{i} are, the first map of C(u) is (−d_{1}, u_{0}). Thus there certainly is a resolution of k starting this way, and we might as well define e_{1} = (−d_{1}, u_{0}). Having made this definition, the second map in C(u) is defined as shown, no matter what e_{2}, e_{3}, … are, so we might as well define e_{2} to be this map. Continuing this argument shows that a resolution with the property P = C(u) exists, and it may be computed in an inductive fashion. We see in this resolution that

P_{n} = Q_{n} ↑_{H}^{G} ⊕Q_{n−1} ↑_{H}^{G} ⊕ ⋯ ⊕ Q_{0} ↑_{H}^{G} .

We also see that information about the resolution up to stage n is entirely encoded in the single matrix

e_{n} = ( \begin{matrix}−d_{n} & u_{n−1} \\ 0 & e_{n−1} \end{matrix} ) ,

since this includes the e_{i} with i ≤ n as submatrices, and also the u_{i} with i ≤ n − 1 are stored as the right-hand parts of the rows. This resolution has some quite interesting properties, but for the moment we consider only algorithmic questions.

We have produced a resolution over kG from the following information

1. a resolution over kH,

2. the lifts u_{n}.

In particular, we never compute kernels. The point not so far explained is how we compute the u_{n}. One approach is to solve a system of linear equations. We will present a different approach.

Partial algorithm to compute a resolution as a mapping cone 1. We suppose we have a free resolution Q of k over kH with maps given as matrices with entries in kH.

2. We form the induced resolution Q ↑_{H}^{G}. This has terms which are free kG-modules of the same rank as in Q, and the matrices giving the maps are the same as for Q.

3. Start things off by taking u_{0} = 1 − g where g lies in G − H.

4. At stage n, when u_{n−1} has been computed, form the matrix

e_{n} = ( \begin{matrix}−d_{n} & u_{n−1} \\ 0 & e_{n−1} \end{matrix} ) .

5. Compute the matrix which represents u_{n}.

6…. repeat.

After some examples we will show how the lifts u_{n} may be computed without solving equations.

3. Examples

Example 1. G = C_{4} = ⟨g⟩ the cyclic group of order 4, H = ⟨g^{2}⟩. We start with a resolution Q of k over kH:

(0 ← k ←) Q_{0} ⟵^{1+g^{2}}Q_{1} ⟵^{1+g^{2}}Q_{2} ⟵^{1+g^{2}} ← ⋯

where each Q_{i} is a copy of kH. Inducing this to G we obtain

(0 ← k ↑_{H}^{G}←) Q_{0} ↑_{H}^{G} ⟵^{1+g^{2}}Q_{1} ↑_{H}^{G} ⟵^{1+g^{2}}Q_{2} ↑_{H}^{G} ⟵^{1+g^{2}} ← ⋯

The labels stay the same on induction. The construction of the resolution P over kG is now

P_{0}  \underleftarrow{(_{1+g^{2}} _{1+g})} P_{1}  \underleftarrow{( \begin{matrix}1+g^{2} & 1+g & 1 \\ 0 & 1+g^{2} & 1+g \end{matrix} )} P_{2}
1+g↓  (^{1+g 1} )↓  (^{1+g 0 0} )↓
Q_{0} ↑_{H}^{G}  ⟵^{1+g^{2}}  Q_{1} ↑_{H}^{G}  ⟵^{1+g^{2}}  Q_{2} ↑_{H}^{G}

where P_{n} = Q_{n} ↑_{H}^{G} ⊕ ⋯ ⊕ Q_{0} ↑_{H}^{G} ≅ kG^{n+1}.

The general form of the differential e_{n} is

e_{n} = ( \begin{matrix}... & & & & & & ⋮ \\ & 1+g^{2} & 1+g & 0 & 0 & 0 & 0 \\ & 0 & 1+g^{2} & 1+g & 1 & 0 & 0 \\ & 0 & 0 & 1+g^{2} & 1+g & 0 & 0 \\ & 0 & 0 & 0 & 1+g^{2} & 1+g & 1 \\ ··· & 0 & 0 & 0 & 0 & 1+g^{2} & 1+g \end{matrix} ) .

Reduced modulo the radical of kG this is

( \begin{matrix}... & & & & & & ⋮ \\ & 0 & 0 & 0 & 0 & 0 & 0 \\ & 0 & 0 & 0 & 1 & 0 & 0 \\ & 0 & 0 & 0 & 0 & 0 & 0 \\ & 0 & 0 & 0 & 0 & 0 & 1 \\ ⋯ & 0 & 0 & 0 & 0 & 0 & 0 \end{matrix} )

The ranks of the successive differentials after reduction modulo the radical of kG are 0, 1, 1, 2, 2, 3, 3, . . .. Since these have domains of dimensions 1, 2, 3, 4, 5, … we obtain that dim H^{i}(C_{4}, k) = 1 for all i. By examining these matrices we also see that a minimal resolution may be obtained by removing Q_{0} ↑_{H}^{G} from P_{i} for all i ≥ 2, together with the image of Q_{0} ↑_{H}^{G} under e_{i}, removing Q_{2} ↑_{H}^{G} from P_{i} for all i ≥ 4, together with the image of Q_{2} ↑_{H}^{G} under e_{i}, and so on.

Example 2. The quaternion group of order 8. G = Q_{8} = {±1, ±i, ±j, ±k}, H = ⟨i⟩.

We start with a resolution Q of k over kH:

(0 ← k ←) Q_{0}⟵^{1+i}Q_{1} ⟵^{(1+i)^{3}}Q_{2}⟵^{1+i} ← ⋯

where each Q_{i} is a copy of kH. Inducing this to G we obtain

(0 ← k ↑_{H}^{G}←) Q_{0} ↑_{H}^{G} ⟵^{1+i}Q_{1} ↑_{H}^{G} ⟵^{(1+i)^{3}}Q_{2} ↑_{H}^{G} ⟵^{1+i} ← ⋯

The construction of the resolution P over kG is now

P_{0}  \underleftarrow{(^{1+i} ^{1+j})} P_{1}  \underleftarrow{( \begin{matrix}(1+i)^{3} & 1+k & 1+i \\ 0 & 1+i & 1+j \end{matrix} )} P_{2}
1+j↓  ^{(}^{1+k} ^{1+i}^{)}↓  (^{1+j 0 j})↓
Q_{0} ↑_{H}^{G}  ⟵^{1+i}  Q_{1} ↑_{H}^{G}  ⟵^{(1+i)^{3}}  Q_{2} ↑_{H}^{G}

where P_{n} = Q_{n} ↑_{H}^{G} ⊕ ⋯ ⊕ Q_{0} ↑_{H}^{G} ≅ kG^{n+1}. In order to do these computations we have to solve systems equations in the group ring, such as

\begin{aligned}(1 + i)(1 + j) & = x(1 + i) \\ (1 + j)(1 + j) & = y(1 + i) \end{aligned}

with solution

(x, y) = (1 + k, 1 + i)

which gives u_{1} and

\begin{aligned}(1 + i)^{3}(1 + k) & = r(1 + i)^{3} \\ (1 + k)^{2} + (1 + i)^{2} & = s(1 + i)^{3} \\ (1 + i)(1 + k) + (1 + j)(1 + i) & = t(1 + i)^{3} \end{aligned}

with solution

(r, s, t) = (1 + j, 0, j)

which gives u_{2}; and so on. The general form of the differential e_{n} is a matrix with n rows

e_{n} = ( \begin{matrix}... & & & & & & & & & ⋮ \\ & (1+i)^{3} & 1+k & 1+i & k & 0 & k & 0 & k & 0 \\ & 0 & 1+i & 1+j & 0 & j & 0 & j & 0 & j \\ & 0 & 0 & (1+i)^{3} & 1+k & 1+i & 0 & 0 & k & 0 \\ & 0 & 0 & 0 & 1+i & 1+j & 0 & 0 & 0 & j \\ & 0 & 0 & 0 & 0 & (1+i)^{3} & 1+k & 1+i & k & 0 \\ & 0 & 0 & 0 & 0 & 0 & 1+i & 1+j & 0 & j \\ & 0 & 0 & 0 & 0 & 0 & 0 & (1+i)^{3} & 1+k & 1+i \\ ··· & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1+i & 1+j \end{matrix} )

which reduced modulo the radical of kG is

( \begin{matrix}... & & & & & & & & & ⋮ \\ & 0 & 0 & 0 & 1 & 0 & 1 & 0 & 1 & 0 \\ & 0 & 0 & 0 & 0 & 1 & 0 & 1 & 0 & 1 \\ & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \\ & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \\ & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \\ & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \\ & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ ⋯ & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \end{matrix} )

From this we obtain that the dimensions of H^{i}(Q_{8}, k) are 1, 2, 2, 1, 1, 2, 2, … 4. Splitting the resolution

Definition. A splitting of a complex ⋯ ← C_{i−1}←^{d_{i}}C_{i} ←^{d_{i+1}}C_{i+1} ← ⋯ is a family of maps s_{i} : C_{i} → C_{i+1} of degree +1 so that dsd = d always holds.

PROPOSITION/EXERCISE (‘Subgroup Complexes’, Arcata Proceedings p.363). The following are equivalent:

(1) C. has a splitting,

(2) C_{i} ≅ d(C_{i}) ⊕ H_{i}(C.) ⊕ d(C_{i+1}) for all i in such a way that d is an isomorphism on the summands d(C_{i}) and is zero on the other summands.

Given a projective kG-resolution of k, it has no G-equivariant splitting, since this would force k to be projective and G = 1. It does, however, have non-equivariant splittings. A non-equivariant splitting of Q ↑_{H}^{G} allows us to compute the lifts u_{n}:

⟵^{e_{n−1}} P_{n−1}  ⟵^{e_{n}} P_{n}  ⟵^{e_{n+1}}
u_{n−1}↓  ^{u_{n}}↓
⟶^{s_{n−1}} Q_{n−1} ↑_{H}^{G} ⟶^{s_{n}} Q_{n} ↑_{H}^{G} ⟶^{s_{n+1}}

For each free generator x_{j} of P_{n}, the assignment x ↦ s_{n}u_{n−1}e_{n}(x_{j}) extends uniquely to a kG-module map u_{n} : P_{n} → Q_{n}, and now u_{n−1}d_{n} = d_{n}u_{n}.

PROPOSITION. Suppose that (Q ↑_{H}^{G}, d, s) is a kG-projective resolution of k ↑_{H}^{G} with differential d and non-equivariant splitting s. Suppose that u_{n} : P_{n} → Q_{n} ↑_{H}^{G} is defined as above, using the splitting s_{n}. Then

σ_{n} = ( \begin{matrix}−s_{n} & s_{n}u_{n}σ_{n−1} \\ 0 & σ_{n−1} \end{matrix} ) : P_{n−1} → P_{n}

when n ≥ 2, and with σ_{1} defined suitably (below), is a splitting of P = C.(u).

Note that P_{n−1} → P_{n} may be written as Q_{n−1} ↑ ⊕P_{n−2} → Q_{n} ↑ ⊕P_{n−1} and the matrix refers to this decomposition. Proof. The plan is to define σ_{1} directly so that e_{1}σ_{1}e_{1} = e_{1}. We then verify that e_{n}σ_{n}e_{n} = e_{n} by multiplying matrices and using induction on n. The definition of σ_{1} : kG → Q_{0} ↑_{H}^{G} ⊕kG is as follows. Here g ∈ G − H and we let x denote an arbitrary element of the augmentation ideal of kH.

σ_{1} : \{ \begin{matrix}1 ↦ (0, 0)^{T} \\ g → (0, −1)^{T} \\ x ↦ (s_{1}(x), 0)^{T} \\ gx ↦ (gs_{1}(x), 0)^{T} . \end{matrix}

Algorithm to compute a polynomial growth resolution using only matrix multiplications

We suppose H ≤ G with |G : H| = 2, and let g ∈ G − H. Inductively we suppose we are given a resolution Q of k by free kH-modules, together with a non-equivariant splitting of Q. We produce a resolution P of k by free kG-modules, together with a non-equivariant splitting of P.

1. Construct

Q ↑_{H}^{G}= Q_{0} ↑_{H}^{G} \overleftarrow{→}_{s_{1}}^{d_{1}} Q_{1} ↑_{H}^{G} \overleftarrow{→}_{s_{2}}^{d_{2}} ⋯

by an induction construction. In terms of matrices this means duplicating the differential and splitting.

2. Given e_{n−1} and u_{n−1} construct e_{n} = ( \begin{matrix}−d_{n} & u_{n−1} \\ 0 & e_{n−1} \end{matrix} ), and also u_{n} extending s_{n}u_{n−1}d_{n} on the free generators.

3. Construct splittings σ_{n} : P_{n−1} → P_{n} as σ_{n} = ( \begin{matrix}−s_{n} & s_{n}u_{n}σ_{n−1} \\ 0 & σ_{n−1} \end{matrix} ) : P_{n−1} → P_{n}.

Disadvantage of this algorithm: the ranks of the P_{n} become large, so that ordinary matrix multiplication becomes slow. Advantage of this algorithm: the matrices e_{n}, and especially the σ_{n}, are sparse. Storing these as sparse matrices and using sparse multiplication may give an efficient way to compute a resolution.

5. Examples

C_{2} × C_{2}: the degree 4 boundary map and splitting:

gap> MatPrint(c2xc2info.res[4]); [ [ [ 1, 0, 1, 0 ], [ 0, 0, 0, 0 ], [ 0, 0, 0, 0 ], [ 0, 0, 0, 0 ] ], [ [ 1, 1, 0, 0 ], [ 1, 0, 1, 0 ], [ 0, 0, 0, 0 ], [ 0, 0, 0, 0 ] ], [ [ 0, 0, 0, 0 ], [ 1, 1, 0, 0 ], [ 1, 0, 1, 0 ], [ 0, 0, 0, 0 ] ], [ [ 0, 0, 0, 0 ], [ 0, 0, 0, 0 ], [ 1, 1, 0, 0 ], [ 1, 0, 1, 0 ] ], [ [ 0, 0, 0, 0 ], [ 0, 0, 0, 0 ], [ 0, 0, 0, 0 ], [ 1, 1, 0, 0 ] ] ] gap> DisplaySM(c2xc2info.split[4]); [ [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0 ] ] gap> c2xc2info.split[4]; [ [ 16, 20 ], [ [ ], [ ], [ 1 ], [ 2 ], [ ], [ ], [ 5 ], [ 6 ], [ ], [ ], [ 9 ], [ 10 ], [ ], [ 17 ], [ 13 ], [ 14, 17 ] ] ] D_{8}: the degree 3 boundary map and splitting:

gap> MatPrint(d8info.res[3]); [ [ [ 1, 0, 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0 ], [ 1, 1, 0, 0, 1, 1, 0, 0 ] ], [ [ 0, 0, 0, 0, 0, 0, 0, 0 ], [ 1, 0, 1, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0 ] ], [ [ 1, 1, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 0 ] ], [ [ 0, 0, 0, 0, 0, 0, 0, 0 ], [ 1, 1, 0, 0, 0, 0, 0, 0 ], [ 1, 0, 0, 0, 0, 0, 0, 1 ] ] ] gap> DisplaySM(d8info.split[3]); [ [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ] [ 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 ] [ 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 0 ] [ 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 ] [ 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 ] [ 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 ] [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 ] ] gap> d8info.split[3]; [ [ 24, 32 ], [ [ ], [ 17 ], [ 24 ], [ 19, 24 ], [ 17, 18 ], [ 17, 18, 21 ], [ 19, 20, 24 ], [ ], [ ], [ ], [ 9 ], [ 2, 10, 19, 24, 27, 32 ], [ 3, 17, 18, 25, 26 ], [ 8, 18, 21, 26, 29 ], [ 1, 9, 19, 20, 27, 28 ], [ 10 ], [ ], [ 24 ], [ 17, 25 ], [ 17, 25 ], [ 24 ], [ 2, 17, 19, 24 ], [ 3, 17, 18, 24, 25 ], [ 25 ] ] ] 6. Computing a minimal resolution.

This could be done by taking some other resolution, for example the mapping cone resolution just described, or the bar resolution, and stripping off free summands to make it minimal. In this section we explain how to do this without letting the resolution get big in the first place. We will compute a minimal resolution P = k ← P_{0} ← P_{1} ← P_{2} ← ⋯ which is part of a diagram

C_{0}  ⟵^{e_{1}} C_{1}  ⟵^{e_{2}} C_{2}  ⟵^{e_{3}}
∥  ^{w_{1}}↓  ^{w_{2}}↓
P_{0}  ⟵^{δ_{1}} P_{1}  ⟵^{δ_{2}} P_{2}  ⟵^{δ_{3}}
u_{0}↓  ^{u_{1}}↓  ^{u_{2}}↓
Q_{0} ↑_{H}^{G} ⟵^{d_{1}} Q_{1} ↑_{H}^{G} ⟵^{d_{2}} Q_{2} ↑_{H}^{G} ⟵^{d_{3}}

Here C. = C.(u) is the mapping cone of u, and it is also a projective resolution of k. We start with P_{0} = C_{0} = kG. Inductively, suppose that P_{0} ← ⋯ ← P_{n−1} has been constructed, minimal up to P_{n−2}, not necessarily minimal at P_{n−1}. Suppose that maps w_{1}, …, w_{n−1} have been constructed, and they are all surjective. Then w_{n−1}e_{n} : C_{n} → P_{n−1} is surjective and

PROPOSITION/EXERCISE. P_{n−1} is minimal ⇔ w_{n−1}e_{n} is represented by a matrix of elements of kG with no unit entries.

In case there are unit entries, they may easily be used to factor kG summands from P_{n−1}, making it smaller, in turn making C_{n} smaller. A new map w_{n−1} is computed by composition with the factor map, and it is surjective. P_{n−1} is now minimal. The corresponding kG-summands of C_{n} may be factored from C_{n} to give a surjection w_{n} : C_{n} → P_{n}, which we use for the next iteration of the algorithm. It remains to compute splittings of P. We have splittings σ_{n} of C., and we may use them to compute a chain map v : P → C. which is a chain homotopy inverse to w. We now use v and w to transfer the splittings of C. to give splittings of P. This idea appears in ‘Subgroup complexes’, Arcata Proceedings, page 364.

7. General construction of the resolution

This works whenever we have a subgroup H ◁ G with G/H = ⟨gH⟩ cyclic, over any ground ring R. It is convenient but not necessary to assume G = H ⋊ ⟨g⟩ for some g ∈ G.

Suppose we have a resolution

R ← \overbrace{Q_{0} ← Q_{1} ← ⋯}^{Q}

over RH, Q_{0} = RH. We construct a resolution

R ← \overbrace{P_{0} ← P_{1} ← ⋯}^{P}

over RG. Consider

0 → R\underrightarrow{∑ g^{i}}R ↑_{H}^{G} ⟶^{g−1}R ↑_{H}^{G} ⟶^{1}R → 0

and lift g − 1 as follows:

R ↑_{H}^{G} ⟵ Q_{0} ↑_{H}^{G} ⟵^{d_{1}} Q_{1} ↑_{H}^{G} ⟵^{d_{2}} ⋯
g−1↓  ^{u_{0}}↓  ^{u_{1}}↓
R ↑_{H}^{G} ⟵ Q_{0} ↑_{H}^{G} ⟵^{d_{1}} Q_{1} ↑_{H}^{G} ⟵^{d_{2}} ⋯

Form the mapping cone C(u):

Q_{0} ↑_{H}^{G}\underleftarrow{(_{−d_{1}} _{u_{0}} )}Q_{1} ↑_{H}^{G} ⊕Q_{0} ↑_{H}^{G}\underleftarrow{( \begin{matrix}−d_{2} & u_{1} \\ 0 & d_{1} \end{matrix} )}Q_{2} ↑_{H}^{G} ⊕Q_{1} ↑_{H}^{G}\underleftarrow{( \begin{matrix}−d_{3} & u_{2} \\ 0 & d_{2} \end{matrix} )}

LEMMA.

H_{i}(C(u)) = \{ \begin{matrix}R & if i = 0 or 1 \\ 0 & otherwise. \end{matrix}

Proof. Use the long exact sequence in homology.

Whenever P is a projective resolution of R we may use it to kill H_{1}(C(u)) as follows. We choose a map v_{1} : P_{0} → C_{1}(u) extending the map P_{0} → H_{1}(C(u)) and lift it to a map of complexes v : P[1] → C(u). When G = H ⋊ ⟨g⟩ this map be represented as shown:

P_{0}  ⟵^{e_{1}}  P_{1}
( \begin{matrix}0 \\ ∑ g^{i} \end{matrix} )↓  ^{v_{2}}↓
Q_{0} ↑_{H}^{G} \underleftarrow{(_{−d_{1}} _{u_{0}} )} Q_{1} ↑_{H}^{G} ⊕Q_{0} ↑_{H}^{G} \underleftarrow{( \begin{matrix}−d_{2} & u_{1} \\ 0 & d_{1} \end{matrix} )} Q_{2} ↑_{H}^{G} ⊕Q_{1} ↑_{H}^{G}

Form the mapping cone C(v).

LEMMA. C(v) is a projective resolution of R over RG.

Proof. Use the long exact sequence in homology.

We now define P to be C(v). Specifically

P_{0}  ⟵^{e_{1}}  P_{1}  ⟵^{e_{2}}
∥  ∥
Q_{0} ↑_{H}^{G} \underleftarrow{(_{d_{1}} _{−u_{0}} )} Q_{1} ↑_{H}^{G} ⊕Q_{0} ↑_{H}^{G} \underleftarrow{( \begin{matrix}d_{2} & −u_{1} & v_{1}^{1,0} \\ 0 & −d_{1} & v_{1}^{0,0} \end{matrix} )}
P_{2}  ⟵^{e_{3}}
∥
Q_{2} ↑_{H}^{G} ⊕Q_{1} ↑_{H}^{G} ⊕P_{0} \underleftarrow{( \begin{matrix}d_{3} & −u_{2} & v_{2}^{2,.} \\ 0 & −d_{2} & v_{2}^{1,.} \\ 0 & 0 & e_{1} \end{matrix} )}

From this we deduce

P_{n} = Q_{n} ↑_{H}^{G} ⊕Q_{n−1} ↑_{H}^{G} ⊕ ⋯ ⊕ Q_{0} ↑_{H}^{G}

and

e_{1} = ( d_{1} −u_{0} ) e_{2} = ( \begin{matrix}d_{2} & −u_{1} & v_{1}^{1,0} \\ 0 & −d_{1} & v_{1}^{0,0} \end{matrix} ) .

The expression for e_{3} has e_{1} as an entry, but since e_{1} is already determined we may substitute this to get

e_{3} = ( \begin{matrix}d_{3} & −u_{2} & v_{2}^{2,1} & v_{2}^{2,0} \\ 0 & −d_{2} & v_{2}^{1,1} & v_{2}^{1,0} \\ 0 & 0 & d_{1} & −u_{0} \end{matrix} ) .

Similarly

e_{4} = ( \begin{matrix}d_{4} & −u_{3} & v_{3}^{3,2} & v_{3}^{3,1} & v_{3}^{3,0} \\ 0 & −d_{3} & v_{3}^{2,2} & v_{3}^{2,1} & v_{3}^{2,0} \\ 0 & 0 & d_{2} & −u_{1} & v_{1}^{1,0} \\ 0 & 0 & 0 & −d_{1} & v_{1}^{0,0} \end{matrix} ) ,

and so on.

8. Properties of the resolution

Property (i) The resolution replicates itself. What we mean here is that there is a short exact sequence of complexes

0 → Q ↑_{H}^{G}→ P → P[1] → 0

so that the whole of the resolution can be seen as a quotient complex of itself starting in dimension 1. This may be pictured by drawing the resolution as an array, which in the case of the Q_{8} example is

⋮  ⋮  ⋮  ⋮
Q_{0} ↑_{H}^{G} ⟵^{1+i} Q_{1} ↑_{H}^{G} ⟵^{(1+i)^{3}} Q_{2} ↑_{H}^{G} ⟵^{1+i} Q_{3} ↑_{H}^{G} ⋯
1+j↓  ^{1+k}↓  ^{1+j}↓  ^{1+k}↓
Q_{0} ↑_{H}^{G} ⟵^{1+i} Q_{1} ↑_{H}^{G} ⟵^{(1+i)^{3}} Q_{2} ↑_{H}^{G} ⟵^{1+i} Q_{3} ↑_{H}^{G} ⋯
1+j↓  ^{1+k}↓  ^{1+j}↓  ^{1+k}↓
Q_{0} ↑_{H}^{G} ⟵^{1+i} Q_{1} ↑_{H}^{G} ⟵^{(1+i)^{3}} Q_{2} ↑_{H}^{G} ⟵^{1+i} Q_{3} ↑_{H}^{G} ⋯
1+j↓  ^{1+k}↓  ^{1+j}↓  ^{1+k}↓
Q_{0} ↑_{H}^{G} ⟵^{1+i} Q_{1} ↑_{H}^{G} ⟵^{(1+i)^{3}} Q_{2} ↑_{H}^{G} ⟵^{1+i} Q_{3} ↑_{H}^{G} ⋯

This diagram is not supposed to be a double complex!

Not all the component morphisms are shown! There is a morphism 1 + i from the Q_{0} summand of P_{2} to the Q_{1} summand of P_{1}, and another such from the Q_{0} summand of P_{3} to the Q_{1} summand of P_{2}, and so on with copies of the same map appearing in all vertically higher places. Also there are maps j from the Q_{0} summand of P_{3} to the Q_{2} summand of P_{2}, k from the Q_{1} summand of P_{4} to the Q_{3} summand of P_{3}, and 1 + i from the Q_{2} summand of P_{4} to the Q_{3} summand of P_{3}.

All of these maps replicate vertically.

Property (ii) The powers of the extension determined by the subgroup H are easily identified.

Let α ∈ Ext_{kG}^{1}(k, k) be the class of the extension

0 → k → k ↑_{H}^{G}→ k → 0

determined by H.

PROPOSITION. The power α^{n} of the element in cohomology determined by the subgroup H is represented by the cocycle

P_{n} = Q_{n} ↑_{H}^{G} ⊕ ⋯ ⊕ Q_{0} ↑_{H}^{G}→ Q_{0} ↑_{H}^{G}→ k

where the first map is projection onto the summand Q_{0} ↑_{H}^{G} and the second is the augmentation. If β ∈ H^{r}(G, K) is represented by a cocycle which factors through Q_{r} ↑_{H}^{G} in the manner β̂ : P_{r} → Q_{r} ↑_{H}^{G}→ k then βα^{n} is represented by the corresponding map P_{n+r} → Q_{r} ↑_{H}^{G}→ k defined similarly on the summand Q_{r} of P_{n+r}.

As an application of this we may deduce in the Q_{8} example, for instance, that α and α^{2} are non-zero, but α^{3} = 0 since there is a component of the differential e_{3} of the form Q_{0} ↑_{H}^{G} ⟶^{j}Q_{2} ↑_{H}^{G}⊆ P_{2} which shows that the map P_{3} → Q_{0} ↑_{H}^{G} →^{ϵ}k factors through P_{2}, and hence is a coboundary.

Property (iii) The corestriction map from H^{∗}(H, k) is easily identified.

PROPOSITION. Suppose that ζ̂: Q_{n} → k is a cocycle which represents some element ζ of H^{n}(H, k). Then cores_{H}^{G} ζ is represented by the cocycle

P_{n}⟶^{u_{n}}Q_{n} ↑_{H}^{G}→ k ⊗_{kG} Q_{n} ↑_{H}^{G} ≅ k ⊗_{kH} Q_{n}⟶^{ζ̂}k

where the map on the right, by abuse of notation, is the one induced by ζ̂, and the map u_{n} on the left is the one which occurs at degree n in the map u : P → Q ↑_{H}^{G}.

As an application of this in the Q_{8} example, if we denote by ζ_{i} a non-zero element in H^{i}(⟨i⟩, k) then we see that cores ζ_{0} = 0 and cores ζ_{1} = 0, whereas cores ζ_{2} is non-zero and is represented by a cocycle defined on the summand Q_{0} ↑_{H}^{G} of P_{2}, and cores ζ_{3} is non-zero and is represented by a cocycle defined on the summand Q_{1} ↑_{H}^{G} of P_{3}. This is because in our calculation of u all components of u_{0} and u_{1} lie in the radical of kG, whereas in u_{2} and u_{3} there were non-radical components in the appropriate places, and the cocycles we obtain are not coboundaries because the boundary components defined on these summands all lie in the radical. We may deduce the following.

THEOREM. cores_{H}^{G} ζ = 0 for all ζ in H^{∗}(H, k) if and only if the Hilbert-Poincaré series of the cohomology rings satisfy

P_{G}(t) = \frac{P_{H}(t)}{(1 − t)}.

This is the situation which occurs, for example, when we take G = D_{2^{n}} to be dihedral of order 2^{n}, and H = C_{2^{n−1}} to be the subgroup which is cyclic of order 2^{n−1}.

Property (iv) Restrictions to H are easily identified. As a complex of kH-modules the complex Q ↑_{H}^{G} decomposes as Q ⊕ gQ where g lies in G but not in H, and using the embedding of kH-complexes Q → Q ↑_{H}^{G} which this gives we construct a map of complexes of kH-modules Q → P specified as the composite of the inclusions

Q → Q ↑_{H}^{G}→ P.

For the right-hand map we identify P_{n} as Q_{n} ↑_{H}^{G} ⊕ ⋯ ⊕ Q_{0} ↑_{H}^{G} and include Q_{n} ↑_{H}^{G} as the first summand.

PROPOSITION. (i) The map of kH-complexes Q → P lifts the identity map on k:

\begin{matrix}Q & ⟶ & k \\ ↓ & & ∥ \\ P & ⟶ & k \end{matrix} .

(ii) At the level of cocycles the restriction map to H is described by restricting to the summand Q_{n} ↑_{H}^{G} of P_{n} and then restricting to Q_{n}.

With trivial coefficients and a minimal resolution Q the restriction is non-zero if and only if the component on Q_{n} ↑_{H}^{G} is non-zero. In the Q_{8} example we see that in each of degrees 0 and 1 there is a cohomology class with non-zero restriction, but all classes in degrees 2 and 3 restrict to zero.

This description of the restriction map is useful when we compute products in H^{∗}(G, k). The components on the Q_{n} ⊆ P_{n} of cocycles multiply the same way as the restrictions of these cocycles to H. Provided we know the cohomology ring of H, this helps in building up the cohomology ring of G inductively.