Previous
About HAP: Integral Cohomology Rings
next

The integral cohomology Hn(G,Z) of a group G is by definition the quotient



Hn(G,Z) =

Ker( HomZG(Rn,Z) →
HomZG(Rn+1,Z) )

Image( HomZG(Rn-1,Z) → HomZG(Rn,Z)


where HomZG(Rn,Z) denotes the abelian group of G-equivariant homomorphisms from the n-th term of a free ZG-resolution R to the trivial G-module Z. The ZG-homomorphisms in

Zn(R,Z) = Ker( HomZG(Rn,Z) → HomZG(Rn+1,Z) )

are called n-cocycles. Those cocycles lying in

Bn(R,Z) = Image( HomZG(Rn-1,Z) → HomZG(Rn,Z)

are called n-coboundaries.


For a finite group G the Universal Coefficient Theorem and the lack of torsion in Z imply an isomorphism
Hn+1(G,Z) = Hn(G,Z) for n>0. The isomorphism does not hold in general for infinite groups.

The following commands calculate the integral cohomology groups of the Artin group defined by the diagram

and show that they are different to its integral homology groups calculated on the previous page.
gap>  D:=[ [1,[2,3],[4,3]], [2,[3,3],[5,0]], [3,[4,4]], [5,[6,4],[7,4]] ];;

gap>  R:=ResolutionArtinGroup(D,8);;

gap>  TR:=HomToIntegers(R);;

gap> for i in [1..7] do
> Print(Cohomology(TR,i),"\n");
> od;
[ 0, 0, 0, 0 ]
[ 0, 0, 0, 0, 0, 0, 0, 0 ]
[ 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
[ 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
[ 2, 2, 0, 0, 0, 0 ]
[  ]
[  ]
Cohomology is a contravariant functor, meaning that a group homomorphism f:G→Q induces a cohomology homomorphism Hn(f):Hn(Q,Z) → Hn(G,Z) for all n. The following commands compute the orders of the kernel and image of H3(f) for the quotient homomorphism f:B5 → S5 from the 5-string braid group to the symmetric group of degree 5.
gap> D:=[[1,[2,3]],[2,[3,3]],[3,[4,3]]];;
gap> R:=ResolutionArtinGroup(D,4);;
gap> TR:=HomToIntegers(R);;

gap> for i in [1..3] do                           #These seemingly unnecessary commands are needed to
gap> x:=Cohomology(TR,i);; od;;      #construct the boundary homomorphisms in R.

gap> B5:=R!.group;; B5gens:=GeneratorsOfGroup(B5);;
gap> S5:=SymmetricGroup(5);; S5gens:=[(1,2),(2,3),(3,4),(4,5)];;
gap> S:=ResolutionFiniteGroup(S5,4);;

gap> f:=GroupHomomorphismByImages(B5,S5,B5gens,S5gens);;
gap> eqchmap:=EquivariantChainMap(R,S,f);;
gap> chmap:=HomToIntegers(eqchmap);;
gap> Hf:=Cohomology(chmap,3);;

gap> Order(Kernel(Hf));
1
gap> Order(Image(Hf));
2
For any group G there is a bilinear mapping


Hp(G,Z) × Hq(G,Z) → Hp+q(G,Z),    (u,v) →u·v


called the cup product.  The product is associative, and  u·v =  (-1)pq v·u .

(One construction of the cup product is as follows. Let R be a ZG-resolution of Z. The cohomology class u is represented by a cocycle u : Rp → Z which induces a chain mapping un : RnRn-p (for n > p-1). The composition of up+q with the cocycle v: Rq → Z is a cocycle representing a cohomology class u·v in Hp+q(G,Z).)


We need some notation for the HAP function IntegralCupProduct(R,u,v,p,q)
.
  • Let ai be the i-th canonical generator of the d-generator abelian group Hn(G,Z). A cohomology class n1a1 + ... +ndais represented by the integer vector u=[n1, ..., nd].
The following commands illustrate the cup product H4(S4,Z) × H4(S4,Z) → H8(S4,Z) in the integral cohomology of the symmetric group S4
gap>  R:=ResolutionFiniteGroup(SymmetricGroup(4), 9 );;

gap>  TR:=HomToIntegers(R);;

gap>  Cohomology(TR,4);
[ 2, 12 ]

gap> Cohomology(TR,8);
[ 2, 2, 12 ]

gap> u:=[1,0];; v:=[0,1];; p:=4;; q:=4;;

gap> IntegralCupProduct(R,u,v,p,q);
[ 1, 0, 6 ]
The above command can be used to compute the complete cohomology ring H*(G,Z) for finite index subgroups of Artin groups where the K(pi,1) conjecture is known to hold (once I've implemented the contracting homotopy on the associated resolution). For example, the four generator affine braid group, which was considered on the previous page, has cohomology ring

H*(AD,Z) = Z[s,t,u1,u2,u3,u4] / (st, 2u3, 2u4, J>3)

where deg(s)=1, deg(t)=2, deg(ui)=3.

The integral cohomology ring was computed for all 4-generator Artin groups with compact hyperbolic Coxeter group in the preprint [G. Ellis & E. Sköldberg, "Cohomology rings for some non-spherical Artin groups",  http://hamilton.nuigalway.ie] using Haskell code written by Emil Sköldberg. Previously, the integral cohomology rings of all the spherical Artin groups has been calculated by theoretical methods in the papers:
  • F.V. Vainshtein, "The cohomology of braid groups (Russian)", Funktsional. Anal. i Prilozhen, 12 no. 2 (1978), 72-73.
  • V.V. Gorjunov, "The cohomology of braid groups of series C and D and certain stratifications (Russian)",  Funktsional. Anal. i Prilozhen, 12 no. 2 (1978), 76-77.
  •  C. Landi, "Cohomology rings of Artin groups", Atti Accad. Naz. Lincei Cl. Sci. Fis. Mat. Natur. Rend. Lincei (9) Mat. Appl., 11 no. 1 (2000), 41-65.
Given a ZG-resolution R the function IntegralRingGenerators(R,n) returns a list of cohomology classes in Hn(G,Z) which, together with all cup products of classes of lower degrees, generates the group Hn(G,Z).

The following commands show that, for the free nilpotent group G of class 2 on three generators, the cohomology H*(G,Z) is generated as a ring by three classes in dimension 1, eight classes in dimension  2 and six classes in dimension 3. They also show that, as an abelian group, the ring H*(G,Z) is free abelian of rank 35.
gap> F:=FreeGroup(3);;G:=NilpotentQuotient(F,2);;
gap> R:=ResolutionNilpotentGroup(G,10);;

gap> for n in [1..9] do
> Print("Cohomology group in dimension ",n," = ",Cohomology(HomToIntegers(R),n),"\n");
>od;
Cohomology group in dimension 1 = [ 0, 0, 0 ]
Cohomology group in dimension 2 = [ 0, 0, 0, 0, 0, 0, 0, 0 ]
Cohomology group in dimension 3 = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
Cohomology group in dimension 4 = [ 0, 0, 0, 0, 0, 0, 0, 0 ]
Cohomology group in dimension 5 = [ 0, 0, 0 ]
Cohomology group in dimension 6 = [ 0 ]
Cohomology group in dimension 7 = [  ]
Cohomology group in dimension 8 = [  ]
Cohomology group in dimension 9 = [  ]

gap> for n in [1..9] do
> Print("Ring generators in dimension ",n, " = ",IntegralRingGenerators(R,n),"\n");
> od;
Ring generators in dimension 1 = [ [ 1, 0, 0 ], [ 0, 1, 0 ], [ 0, 0, 1 ] ]
Ring generators in dimension 2 =
[ [ 1, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0, 0, 0 ],
  [ 0, 0, 1, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0, 0, 0 ],
  [ 0, 0, 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 0, 1, 0, 0 ],
  [ 0, 0, 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 1 ] ]
Ring generators in dimension 3 =
[ [ 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, 0, 0, 0, 0, 0, 0, 1, 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, 1, 0 ],
  [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 ] ]
Ring generators in dimension 4 = [  ]
Ring generators in dimension 5 = [  ]
Ring generators in dimension 6 = [  ]
Ring generators in dimension 7 = [  ]
Ring generators in dimension 8 = [  ]
Ring generators in dimension 9 = [  ]
Similar commands can be used to obtain partial information on the cohomology rings of finite groups. For instance, the following commands show that the first fifteen degrees of the (infinite dimensional) graded ring H*(S4,Z) are generated by
  • one class of order 2 in degree 2,
  • one class of order 2 in degree 3,
  • and one class of order 12 in degree 4.
One would have to use theoretical arguments to prove that H*(S4,Z) has no other generators in higher degrees.
gap> R:=ResolutionFiniteGroup(SymmetricGroup(4),16);;
gap> TR:=HomToIntegers(R);;
gap> for n in [1..15] do
> Print("The cohomology in degree ", n," is  ", Cohomology(TR,n),"\n");
> Print("The cohomology ring generators in degree ", n, " are  ",
> IntegralRingGenerators(R,n), "\n");
> od;
The cohomology in degree 1 is  [  ]
The cohomology ring generators in degree 1 are  [  ]
The cohomology in degree 2 is  [ 2 ]
The cohomology ring generators in degree 2 are  [ [ 1 ] ]
The cohomology in degree 3 is  [ 2 ]
The cohomology ring generators in degree 3 are  [ [ 1 ] ]
The cohomology in degree 4 is  [ 2, 12 ]
The cohomology ring generators in degree 4 are  [ [ 0, 1 ] ]
The cohomology in degree 5 is  [ 2 ]
The cohomology ring generators in degree 5 are  [  ]
The cohomology in degree 6 is  [ 2, 2, 2 ]
The cohomology ring generators in degree 6 are  [  ]
The cohomology in degree 7 is  [ 2, 2 ]
The cohomology ring generators in degree 7 are  [  ]
The cohomology in degree 8 is  [ 2, 2, 12 ]
The cohomology ring generators in degree 8 are  [  ]
The cohomology in degree 9 is  [ 2, 2, 2 ]
The cohomology ring generators in degree 9 are  [  ]
The cohomology in degree 10 is  [ 2, 2, 2, 2 ]
The cohomology ring generators in degree 10 are  [  ]
The cohomology in degree 11 is  [ 2, 2, 2 ]
The cohomology ring generators in degree 11 are  [  ]
The cohomology in degree 12 is  [ 2, 2, 2, 2, 12 ]
The cohomology ring generators in degree 12 are  [  ]
The cohomology in degree 13 is  [ 2, 2, 2, 2 ]
The cohomology ring generators in degree 13 are  [  ]
The cohomology in degree 14 is  [ 2, 2, 2, 2, 2 ]
The cohomology ring generators in degree 14 are  [  ]
The cohomology in degree 15 is  [ 2, 2, 2, 2, 2 ]
The cohomology ring generators in degree 15 are  [  ]
Previous Page
Contents
Next page