Previous | About HAP: Graphs of Groups, Fuchsian groups and Kleinian groups | next
Graphs of groups A graph of groups is a connected graph Y together with groups Gv and Ge where v and e range respectively over the vertices and edges of Y, and monomorphisms s:Ge→Gv and t:Ge→Gw for every edge e, where v and w are the vertices of e. The fundamental group of a graph of groups is defined using a notion of "path" where an element of Gv is regarded as a path from v to v; one imposes the relations s(a) e = e t(a) for every a in Ge . That is, the composite paths and are regarded as equal paths from v to w.
Amalgamated products and HNN extensions can both be viewed as fundamental groups of graphs of groups. For example, the following commands create a graph of groups corresponding to the amalgamated product G=H*AK where H is the symmetric group H=S5 and K is the symmetric group K=S4 . The common subgroup A is the symmetric group A=S3 . A graph of groups is represented by a list consisting of the vertex groups and pairs of monomorphisms which define edges. Each group must be given a name using the SetName() command, and distinct groups must be given different names.
gap> S5:=SymmetricGroup(5);SetName(S5,"S5");; gap> S4:=SymmetricGroup(4);SetName(S4,"S4");; gap> A:=SymmetricGroup(3);SetName(A,"S3");; gap> AS5:=GroupHomomorphismByFunction(A,S5,x->x);; gap> AS4:=GroupHomomorphismByFunction(A,S4,x->x);; gap> D:=[S5,S4,[AS5,AS4]];; gap> GraphOfGroupsDisplay(D);;
The following additional commands create a resolution for the above amalgamated product G and then calculate H7(G,Z) = (Z2)3+Z4+Z60
gap> R:=ResolutionGraphOfGroups(D,8);; gap> Homology(TensorWithIntegers(R),7); [ 2, 2, 2, 4, 60 ]
The following commands create a graph of groups corresponding to the HNN extension G=H*A where H is the symmetric group H=S5 and A is the subgroup A=S3 and f:A→S5 is the homomorphism (1,2) → (3,4), (1,2,3) → (3,4,5). The HNN extension G is obtained from H by adding an element t subject to the relations t-1 a t = f(a) for a in S3.
gap> S5:=SymmetricGroup(5);SetName(S5,"S5"); gap> A:=SymmetricGroup(3);SetName(A,"S3"); gap> f:=GroupHomomorphismByImages(A,S5,[(1,2),(1,2,3)],[(3,4),(3,4,5)]);; gap> g:=GroupHomomorphismByFunction(A,S5,x->x); gap> D:=[S5,[f,g]];; gap> GraphOfGroupsDisplay(D);;
The following additional commands create a resolution for the HNN extension and calculate H7(G,Z) = (Z2)2+Z60 .
gap> R:=ResolutionGraphOfGroups(D,8);; gap> Homology(TensorWithIntegers(R),7); [ 2, 2, 60 ]
Fuchsian and Kleinian groups A Kleinian group is discrete subgroup of PSL(2,C), the full group of orientation preserving isometries of 3-dimensional hyperbolic space. A Fuchsian group is a discrete subgroup of PSL(2,R) and as such acts on the hyperbolic plane. A "fundamental domain" for a Kleinian or Fuchsian group G gives rise to a tessellation of hyperbolic 3- or 2-space. Let X denote the 1-skeleton of this tessellation. Then G acts on X in such a way that no edge is inverted. The quotient graph Y=X/G is thus a graph of groups in which vertices and edges are labelled by the subgroups of G stabilizing the corresponding vertices and edges in Y. The computational method described in [G. Ellis & A.G. Williams, "On the cohomology of generalized triangle groups", Comment. Math. Helv. 80 (2005), 1-21] can be partially summarized as follows.
Let G be a Fuchsian or Kleinian group. Let Y be the graph of groups arising from G and a fundamental domain. Let P be the fundamental group of Y. Then the "obvious" quotient homomorphism P→G induces an isomorphism Hn(P,M) → Hn(G,M) for any ZG-module M and all n>2 (Fuchsian case) or all n>3 (Kleinian case).
As an example consider the classical triangle group defined by the presentation T = T(l,m,n) = < a, b | al = bm = (ab-1)n = 1 > where 1/|l| + 1/|m| + 1/|m| < 1. This group acts on the hyperbolic plane as follows. Let v1 and v2 be distinct point in the hyperbolic plane. Let the generator a of T act as a clockwise rotation about v1 through an angle 2 pi/¦l| , and let the generator b of T act as a clockwise rotation about v2 through an angle 2 pi/¦m| . It follows that (ab-1) acts as an anti-clockwise rotation about some point v3 through an angle 2 pi/|n|. Let v4 be the image of v3 under a reflection in the line v1v2 . Then the points v1 , v2 , v3 , v4 are the corners of a quadrilateral fundamental region for the action of T. The edges of this fundamental region have trivial stabilizer subgroups in G. The vertices v1 , v2 , v3 have cyclic stabilizer subgroups A = <a>, B=<b> and C=<c> respectively. The associated graph of groups is The fundamental group P of this graph has the same homology as the triangle group T(l,m,n) in dimensions greater than 3. So for example, the following commands show that the triangle group T=T(2,3,4) has 5-dimensional integral homology H5(T,Z) = Z2+Z12 .
gap> a:=(1,2);; b:=(1,2,3);; c:=(1,2,3,4);; f:=();; g:=();; gap> A:=Group(a);; SetName(A,"A");; gap> B:=Group(b);; SetName(B,"B");; gap> C:=Group(c);; SetName(C,"C");; gap> F:=Group(f);; SetName(F,"F");; gap> G:=Group(g);; SetName(G,"G");; gap> FA:=GroupHomomorphismByFunction(F,A,x->x);; gap> FC:=GroupHomomorphismByFunction(F,C,x->x);; gap> GC:=GroupHomomorphismByFunction(G,C,x->x);; gap> GB:=GroupHomomorphismByFunction(G,B,x->x);; gap> Graph:=[A,B,C,[FA,FC],[GC,GB]];; gap> GraphOfGroupsDisplay(Graph);; gap> R:=ResolutionGraphOfGroups(Graph,6);; gap> Homology(TensorWithIntegers(R),5); [ 2, 12 ]
Previous Page | Contents | Next page