


Some classical theoryThe third cohomology
H^{3}(G,A) of G with coefficients in a Gmodule A, together
with the corresponding 3cocycles, can
be used to classify homotopy 2types.
which reduces the homotopy theory of 2types to a "computable" algebraic theory. Furthermore, a simplicial group with Moore complex of length 1 can be represented by a group H with two endomorphisms s:H>H and t:H>H satisfying the axioms
The homotopy groups of a cat^{1}group H are defined as


A
number of standard grouptheoretic constructions can be viewed
naturally as a cat^{1}group.
For instance, the following commands begin by constructing the cat^{1}group of the last example for the group G=SmallGroup(64,134). They then construct the fundamental group of H and then the second homotopy group of H as a pi_1module. These have orders 8 and 2 respectively. 

gap>
G:=SmallGroup(64,134);; gap> H:=AutomorphismGroupAsCatOneGroup(G);; gap> pi_1:=HomotopyGroup(H,1);; gap> pi_2:=HomotopyModule(H,2);; gap> Order(pi_1) 8 gap> Order(ActedGroup(pi_2)); 2 

The
third
cohomology H^{3}(pi_1,pi_2) classifies those cat^{1}groups
H
with fundamental group equal to pi_1 and second homotopy module equal
to pi_2. The classification is up to a Yoneda equivalence. The following additional commands show that there are 1024 Yoneda equivalence classes of cat^{1}groups with homotopy group pi_1 and homotopy module pi_2 equal to that in our example. 

gap>
R:=ResolutionFiniteGroup(pi_1,4);; gap> C:=HomToGModule(R,pi_2);; gap> CH:=CohomologyModule(C,3);; gap> AbelianInvariants(ActedGroup(CH)); [ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 ] 

A 3cocycle f : pi_1 × pi_1 × pi_1 > pi_2 corresponding to the second cohomology class in H^{3}(pi_1,pi_2) can be produced using the following command,  
gap>
x:=Elements(ActedGroup(CH))[2];; gap> f:=CH!.representativeCocycle(x); Standard 3cocycle 

