


So
far we have computed the homology of mainly finite groups or infinite
nilpotent groups. We now
turn to infinite groups such as the braid group on n+1 strings. This is
an example
of an Artin group, the
definition of which we now recall. A Coxeter diagram is a finite graph D with at most one edge joining any pair of vertices, and with each edge labelled by an integer n>2 or n=infinity. The label n=3 occurs frequently and so, in pictures of D, we denote it by an unmarked edge. For typographical reasons, when the label is infinity we shall denote it by the symbol 0 (but treat it as infinity in any mathematical discussion). Here are three examples. We can succinctly represent a Coxeter graph by numbering its vertices and recording a list D = [L_{1}, ... L_{t}] in which each term is itself a list L_{k} = [v_{k}, [u_{k1},n_{k1}], [u_{k2},n_{k2}], ... [u_{km},n_{km}]] such that vertex v_{k} is connected to vertex u_{kj} by an edge with label n_{kj}. It is sufficient to record just those vertices u_{kj} > v_{k}. We set n_{kj}=0 when the edge label is infinity. The above three diagrams are encoded by the following commands. 

gap>
D1:=[ [1,[2,3]], [2,[3,3]], [3,[4,4]] ];; gap> D2:=[ [1,[2,3],[4,3]], [2,[3,3]], [3,[4,3]] ];; gap> D3:=[ [1,[2,3],[4,3]], [2,[3,3],[5,0]], [3,[4,4]], [5,[6,4],[7,4]] ];; 

A
Coxeter diagram D can be viewed as a .gif picture using the function CoxeterDiagramDisplay().
For example, the following command displays the above diagram D3. 

gap>
CoxeterDiagramDisplay(D3,"mozilla");; 

An Artin group is a finitely presented
group A_{D }associated to a Coxeter diagram D as follows:
The following commands give the Artin group associated the first of the above diagrams, and the Coxeter group associated to the second. 

gap>
CoxeterDiagramFpArtinGroup(D1); [ <free group on the generators [ f1, f2, f3, f4 ]>, [ f1*f2*f1*f2^1*f1^1*f2^1, f1*f3*f1^1*f3^1, f1*f4*f1^1*f4^1, f2*f3*f2*f3^1*f2^1*f3^1, f2*f4*f2^1*f4^1, f3*f4*f3*f4^1*f3^1*f4^1 ] ] gap> CoxeterDiagramFpCoxeterGroup(D2); [ <free group on the generators [ f1, f2, f3, f4 ]>, [ f1*f2*f1*f2^1*f1^1*f2^1, f1*f3*f1^1*f3^1, f1*f4*f1*f4^1*f1^1*f4^1, f2*f3*f2*f3^1*f2^1*f3^1, f2*f4*f2^1*f4^1, f3*f4*f3*f4^1*f3^1*f4^1, f1^2, f2^2, f3^2, f4^2 ] ] 

An
Artin group A_{D} is said to be spherical if the associated Coxeter
group is finite. The following commands show that the first of the
above diagrams yields a spherical Artin group, whereas the second and
third diagrams both yield nonspherical groups. 

gap>
CoxeterDiagramIsSpherical(D1); true gap> CoxeterDiagramIsSpherical(D2); false gap> CoxeterDiagramIsSpherical(D3); false 

Some
years ago Craig Squier discovered a resolution R for spherical Artin
groups A_{D}. The ndimensional generators of R correspond to
the
subsets of vertices of D of size n. Thus R_{n}=0 for n greater
than the number of vertices in D.
This result was only published more recently in [ C.C. Squier, "The
homological algebra of Artin groups", Math.
Scand., 75 no. 1 (1994), 543]. The resolution was independently
rediscovered by M. Salvetti [M. Salvetti, "The homotopy type of Artin
groups, Math. Res. Lett., 1
no. 5 (1994),
565577]. The resolution for a spherical Artin group A_{D} can be obtained as the cellular chain complex of an easily constructed cellular space X_{D}. For the construction we note that the finite Coxeter group W_{D} is isomorphic to a group generated by d reflections in Euclidean space R^{d}, where d is the number of vertices in the diagram D. Choose any vector v in R^{d} which is fixed by no reflection in W_{D}. The convex hull of the orbit of v under the action of W_{D} is then a polytope whose 1skeleton can be viewed as the cayley graph of W_{D}. The edges of faces in the polytope are thus labelled by the generating reflections in W_{D}. Let Y_{D} be the space obtained from this polytope by identifying all similary labelled faces (in all dimensions <d). The space X_{D} is the universal cover of Y_{D}. As an example, the space Y_{D }for the 3generator braid group is obtained by identifying similarly labelled faces of the following 3dimensional polytope. 

gap>
R:=ResolutionArtinGroup(D1,5);; gap> TR:=TensorWithIntegers(R);; gap> Homology(TR,1); [ 0, 0 ] gap> Homology(TR,2); [ 2, 0, 0 ] gap> Homology(TR,3); [ 0, 0 ] gap> TRHomology(R,4); [ 0 ] 

We
can, in principle, use a ZGresolution R to compute the homology of a
finite index subgroup K<G. The command ResolutionSubgroup(R,K)
can be used for this. For example, any Artin group A_{D} has a normal subgroup 2A_{D }, the even subgroup, consisting of all products of an even number of generators of A_{D}. The following commands show that the even subgroup of the 5string braid group has integral homology H_{1}(2A_{D},Z)=Z, H_{2}(2A_{D},Z)=Z_{2}+Z_{2}, H_{3}(2A_{D},Z)=Z_{5}, H_{n}(2A_{D},Z)=0 for n>3. (As a curiosity, we note that similar commands can be used to show that, for certain Coxeter diagrams such as D=E_{7}, the Artin group has the same integral homology as its even subgroup.) 

gap>
D:=[[1,[2,3]],[2,[3,3]],[3,[4,3]]];; gap> R:=ResolutionArtinGroup(D,5);; gap> A_D:=R!.group;; gap> 2A_D:=EvenSubgroup(A_D);; gap> S:=ResolutionSubgroup(R,2A_D);; gap> TS:=TensorWithIntegers(S);; gap> for i in [1..4] do > Print(Homology(TS,i),"\n"); > od; [ 0 ] [ 2, 2 ] [ 5 ] [ ] 

Squier's
resolution for Artin groups can be viewed as the cellular chain complex
of a
contractible
space X_{D} on which A_{D} acts freely. The space X_{D}
exists even
when A_{D} is not spherical and its ncells correspond to those
subsets S of the vertices of D such that S=n and the image of S
generates a finite subgroup in W_{D}. It is conjectured that X_{D}
is
always contractible. In those cases where the conjecture is known to
hold the command ResolutionArtin(D)
can be used to construct a free ZA_{D}resolution R. (In
all cases one can view the output R of this command as a free ZM_{D}resolution
where M_{D}
is the Artin monoid defined by D.) The conjecture has been studied by many people. It is discussed in [G. Ellis & E. Sköldberg,"The K(pi,1) conjecture for a class of Artin groups. Comment. Math. Helv., 85, no. 2, 409415 (2010)]. That preprint gives a short proof of the following result.
(A special case of the above result, in which each A_{T} is assumed to be spherical, was proved in [R. Charney and M.W. Davis, "The K(\pi,1) problem for hyperplane complements associated to infinite reflection groups", Journal Amer. Math. Soc., vol. 8, issue 3 (1995), 597627].) The paper explains how a lemma in [ K.J. Appel and P.E. Schupp, "Artin groups and infinite Coxeter groups", Invent. Math., 72 (1983), 201220] implies the following result.


A
further case when X_{D} is known to be contractible is proved
in [R. Charney & D. Peifer, "The $K(\pi,1)$conjecture for the
affine braid groups", Comment. Math.
Helv., 78 no. 3 (2003), 584600.] Their result is
the following.
The following commands completely determine the additive structure of the integral homology of the affine braid groups on six, seven, eight and nine generators. 

gap>
D6gens:=[[1,[2,3],[6,3]], [2,[3,3]], [3,[4,3]], [4,[5,3]], [5,[6,3]] ];; gap> R:=ResolutionArtinGroup(D6gens,7);; gap> TR:=TensorWithIntegers(R);; gap> for n in [1..6] do > Print(Homology(TR,n),"\n"); > od; [ 0 ] [ 2, 0 ] [ 2, 2, 0 ] [ 3, 3, 3, 3, 0 ] [ 0, 0 ] [ ] gap> D7gens:=[ [1,[2,3],[7,3]], [2,[3,3]], [3,[4,3]], [4,[5,3]], [5,[6,3]], [6,[7,3]] ];; gap> R:=ResolutionArtinGroup(D7gens,8);; gap> TR:=TensorWithIntegers(R);; gap> for n in [1..7] do > Print(Homology(TR,n),"\n"); > od; [ 0 ] [ 2, 0 ] [ 2, 0 ] [ 6, 0 ] [ 0 ] [ 0 ] [ ] gap> D8gens:=[ [1,[2,3],[8,3]], [2,[3,3]], [3,[4,3]], [4,[5,3]], [5,[6,3]], [6,[7,3]], [7,[8,3]] ];; gap> R:=ResolutionArtinGroup(D8gens,9);; gap> TR:=TensorWithIntegers(R);; gap> for n in [1..8] do > Print(Homology(TR,n),"\n"); > od; [ 0 ] [ 2, 0 ] [ 2, 0 ] [ 2, 2, 6, 0 ] [ 3, 3, 0 ] [ 2, 2, 2, 2, 4, 4, 0 ] [ 0, 0 ] [ ] gap> D9gens:=[ [1,[2,3],[9,3]], [2,[3,3]], [3,[4,3]], [4,[5,3]], [5,[6,3]], [6,[7,3]], [7,[8,3]], [8,[9,3]] ];; gap> R:=ResolutionArtinGroup(D9gens,10);; gap> TR:=TensorWithIntegers(R);; gap> for n in [1..9] do > Print(Homology(TR,n),"\n"); > od; [ 0 ] [ 2, 0 ] [ 2, 0 ] [ 2, 6, 0 ] [ 6, 0 ] [ 2, 6, 0 ] [ 0 ] [ 0 ] [ ] 

