[GAP Forum] Cohomology of nontrivial G-modules?

Benoit Jacob benoitjacob at google.com
Fri Nov 13 14:53:24 GMT 2015


Hi Graham,

Thank you very much for this full example! That's exactly what I needed.

I made some progress toward successfully running it:

First I found about two things:
 - I needed to LoadPackage("hap");
 - A:=GOuterGroup();; failed, but A:=GOuterGroup(V);; succeeded, so I am
using that.

I now run into this problem:

gap> G:=SymmetricGroup(5);;
gap> V:=AbelianGroup(IsPcGroup,[2,2,2,2,2]);;
gap> A:=GOuterGroup(V);;
gap> SetActedGroup(A,V);;
gap> SetActingGroup(A,G);;
gap> gensV:=GeneratorsOfGroup(V);;
gap> w:=GroupHomomorphismByImages(V,V,gensV,gensV{[2,1,3,4,5]});;
gap> x:=GroupHomomorphismByImages(V,V,gensV,gensV{[1,3,2,4,5]});;
gap> y:=GroupHomomorphismByImages(V,V,gensV,gensV{[1,2,4,3,5]});;
gap> z:=GroupHomomorphismByImages(V,V,gensV,gensV{[1,2,3,5,4]});;
gap> G1:=Group([w,x,y,z]);;
gap>
iso:=GroupHomomorphismByImages(G,G1,[(1,2),(2,3),(3,4),(4,5)],[w,x,y,z]);;
gap> action:=function(g,v); return v^Image(iso,g^-1); end;;  #HAP uses left
actions!!!
gap> SetOuterAction(A,action);;
gap> R:=ResolutionFiniteGroup(G,7);;
gap> C:=HomToGModule(R,A);;
gap> H6:=Cohomology(C,6);
Error, no method found! For debugging hints type ?Recovery from
NoMethodFound
Error, no 1st choice method found for `*' on 2 arguments called from
g * a at
/usr/local/google/home/benoitjacob/gap/pkg/Hap1.10/lib/GOuterGroups/
goutergroup.gi:178 called from
act( R!.elts[AbsInt( x )], a ) at
/usr/local/google/home/benoitjacob/gap/pkg/Hap1.10/lib/GOuterGroups/
homtogouter.gi:36 called from
fn( j, Image( Projection( UM, j ), x )
 ) at /usr/local/google/home/benoitjacob/gap/pkg/Hap1.10/lib/GOuterGroups/
homtogouter.gi:44 called from
func( C[i] ) at /usr/local/google/home/benoitjacob/gap/lib/coll.gi:745
called from
List( [ 1 .. R!.dimension( n ) ], function ( j )
      return fn( j, Image( Projection( UM, j ), x ) );
  end ) at
/usr/local/google/home/benoitjacob/gap/pkg/Hap1.10/lib/GOuterGroups/
homtogouter.gi:44 called from
...  at line 22 of *stdin*
you can 'quit;' to quit to outer loop, or
you can 'return;' to continue
brk> ShowDetails();
--------------------------------------------
Information about a `No method found'-error:
--------------------------------------------
Operation           : *
Number of Arguments : 2
Operation traced    : false
IsConstructor       : false
Choice              : 1st
brk> ShowArguments();
[ (4,5), f1 ]

Cheers,
Benoit

On Wed, Nov 11, 2015 at 5:09 PM, Ellis, Grahamj <graham.ellis at nuigalway.ie>
wrote:

> Hi Benoit,
>
> On Wed, Nov 11, 2015 at 10:52:29AM -0500, Benoit Jacob wrote:
> > > I need to compute cohomology groups of the form
> > >
> > >     H^n(G, A)
> > >
> > > where G is a finite group and A is a nontrivial G-module. More
> > > specifically, A is a finite-dimensional vector space over Z/2Z on
> which G
> > > acts non-trivially.
> > >
> > > Any example code would be greatly appreciated;
>
> I think the answer to you question depends very much on the type of input
> (how large is your n? what nice properties does G have? what is the
> dimension of the module A?) and on the required output (do you only want
> the abelian invariants of the cohomology group, or do you also need things
> like explicit cocycles?). For n=1,2 you might have most success using the
> Coho package. If you send me details I'd be glad to try to help.
>
> The following example code calculates the abelian invariants of
>
> H^6(G,A)=Z_2 x Z_2 x Z_2 x Z_2 x Z_5
>
> for G=S_5 the symmetric group of degree 5 and A the vector space of
> dimension 5 over GF(2) with permutation action. But with a tiny bit of
> programming (involving Sylow subgroups) this example can be significantly
> improved.
>
> gap> G:=SymmetricGroup(5);;
> gap>
> gap> V:=AbelianGroup(IsPcGroup,[2,2,2,2,2]);;
> gap> gensV:=GeneratorsOfGroup(V);;
> gap> w:=GroupHomomorphismByImages(V,V,gensV,gensV{[2,1,3,4,5]});;
> gap> x:=GroupHomomorphismByImages(V,V,gensV,gensV{[1,3,2,4,5]});;
> gap> y:=GroupHomomorphismByImages(V,V,gensV,gensV{[1,2,4,3,5]});;
> gap> z:=GroupHomomorphismByImages(V,V,gensV,gensV{[1,2,3,5,4]});;
> gap> G1:=Group([w,x,y,z]);;
> gap>
> gap>
> iso:=GroupHomomorphismByImages(G,G1,[(1,2),(2,3),(3,4),(4,5)],[w,x,y,z]);;
> gap> action:=function(g,v); return v^Image(iso,g^-1); end;;  #HAP uses
> left actions!!!
> gap>
> gap> A:=GOuterGroup();;
> gap> SetActedGroup(A,V);;
> gap> SetActingGroup(A,G);;
> gap> SetOuterAction(A,action);;
> gap>
> gap> R:=ResolutionFiniteGroup(G,7);;
> gap> C:=HomToGModule(R,A);;
> gap>
> gap> H6:=Cohomology(C,6);
> [ 2, 2, 2, 2, 2 ]
>
>
> All the best,
>
> Graham
>
> School of Mathematics, Statistics & Applied Mathematics
> National University of Ireland, Galway
> University Road,
> Galway
> Ireland
>
> http://hamilton.nuigalway.ie
> tel: 091 493011
>


More information about the Forum mailing list