Ask Your Question

Revision history [back]

The first step would be to make sure that you can do the calculation in sage's built-in version of gap. You can start it up with sage -gap. The code there doesn't immediately work for two reasons:

  • The package HAP is required, so you have to tell gap to load it.
  • sage -gap doesn't have the HAP package installed by default -- it's an optional package for sage.

To resolve these, first install the optional gap packages with the following

$ sage -i gap_packages

Then run the following code in sage -gap:

LoadPackage("hap");
G:=SymmetricGroup(6);;
A:=Group((11,12,13,14,15,16,17,18,19,20,21,22));;
A:=TrivialGModuleAsGOuterGroup(G,A);; #This is the cyclic group of order 12 encoded as a trivial G-module
R:=ResolutionFiniteGroup(G,4);;
C:=HomToGModule(R,A);;
CH:=CohomologyModule(C,3);;
classes:=Elements(ActedGroup(CH));; #This is the list of cohomology classes
Length(classes); #This gives the number of distinct cohomology classes
c:=CH!.representativeCocycle(classes[2]);
f:=Mapping(c);;

This works correctly for me, so I guess the next step would be to figure out how to run this completely inside Sage, so that you can export the cocycles to Sage and presumably do some other work with them. I don't know how to do that though. My initial searching turned up a couple of promising starting points, but I didn't see a quick answer. You might have better luck:

  • http://www.wdjoyner.org/papers/groups-sage4.pdf
  • http://www.sagemath.org/doc/reference/interfaces/sage/interfaces/gap.html