Homological Algebra

Let's deal with Tor, Ext and so on:

>LIB "homolog.lib";
>matrix Ps[1][2]=x5y-xy5,x20-x4y16+y20;
>matrix Ph[1][1]=x;
>Tor(1,Ps,Ph);
_[1]=x*gen(1)
_[2]=y5*gen(2)
_[3]=y15*gen(1)-gen(2)
>ideal I1=intersect(ideal(Ps),ideal(Ph));
>ideal I2=ideal(Ps)*ideal(Ph);
>modulo(I1,I2);

Tor 1 R R /<Ps>, R /<Ph> (<Ps>∩<Ph> / <Ps>˙<Ph>)

Now something about Koszul complexes:

>qring Q=groebner(I);
>module M=0;
>ideal x=maxideal(1);
>KoszulHomology(x,M,0);
_[1]=y*gen(1);
_[2]=x*gen(1);
>KoszulHomology(x,M,1);
_[1]=y*gen(1);
_[2]=y*gen(2);
_[3]=x*gen(1);
_[4]=x*gen(2);
>KoszulHomology(x,M,2);
_[1]=y*gen(1);
_[2]=x*gen(1);
>KoszulHomology(x,M,3);
_[1]=0

For a Noetherian local ring A and a finitely generated A-module M, we always have

depth(M) ≤ dim(M)

Modules with depth(M) = dim(M) are called Cohen-Macaulay modules, A is called a Cohen-Macaulay ring if it is a Cohen-Macaulay A-module. Regular local rings are Cohen-Macaulay.

>module M=I*freemodule(1);
>CohenMacaulayTest(M);
1	//M is Cohen-Macaulay, because depth(M)=dim(std(Ann(M)))
>depth(M);
0
>isCohenMacaulay(I);
0

Well, SL(2,5) has an extraspecial Sylow 2-subgroup (the quaternions of order 8), and so its mod 2 cohomology ring is Cohen-Macaulay.

Finally we decided to play around with the HAP™ package (see [HAP]). Look there for a tremendous amount of more information (we must confess that this stuff is perhaps too difficult for us, but certainly our readers can make use of it).

In the first example we see that there are 4 orbits in the Schur multiplier of N:=AlternatingGroup(6) under the conjugation action of G:=SymmetricGroup(6). Note that the Schur multiplier of N is isomorphic to the second integral homology of N, and that N acts trivial on its Schur multiplier/second homology (for any group N). So we are really interested in orbits under an action of the quotient group G/N.

gap>G:=SymmetricGroup(6);;
gap>N:=AlternatingGroup(6);;
gap>R:=ResolutionFiniteGroup(N,3);;
gap>SchurMultiplier:=Homology(TensorWithIntegers(R),2);
[6]
gap>#So the Schur multiplier of N is cyclic of order 6.
gap>ConjugationHomomorphism:=function(g);
>return GroupHomomorphismByFunction(N,N,x->g*x*g^-1);
>end;;
gap>HomologyMapInducedByConjugation:=function(g)
>local f;
>f:=EquivariantChainMap(R,R,ConjugationHomomorphism(g));
>f:=TensorWithIntegers(f);
>f:=Homology(f,2);
>return f;
>end;;
gap>#Note that (1,2) represents a nontrivial element in G/N.
gap>HM:=HomologyMapInducedByConjugation((1,2));
[ f1, f2, f3, f4, f5, f6 ] -> [ f1^4*f2^-3, f1^2*f2^-1, f3, 
f3^-2*f4^2*f5, f3^-2*f4^2*f5, f6 ]
gap>IsomorphismPermGroup(Source(HM));
[ f1, f2, f3, f4, f5, f6 ] -> [ (), (1,2,3)(4,5,6), (1,4)(2,5)(3,6), 
(), (), ((1,4)((2,5)(3,6) ]

Here Source(HM) is a finitely presented group isomorphic to the cyclic group H 2 N of order 6. We see that conjugation by (1,2) in G induces an endomorphism on H 2 N Z(2) × Z(3) which fixes the generator f3 of order two, and inverts the generator f2 of order three.

So far so good, in the next example we do s.th. else:

gap>P:=SylowSubgroup(MathieuGroup(24),2);;
gap>GroupHomology(P,6,2);
143
gap>L:=List(LowerCentralSeries(P), x->GeneratorsOfGroup(x));; L[5]:=[()];;
gap>R:=ResolutionNormalSeries(L,7);;
gap>ModularHomology(R,6,2);
143

M(24) has a Sylow 2-subgroup P with sixth mod 2 homology H 6 (P, Z(2)) Z(2) 143

gap>N:=DerivedSubgroup(P);;
gap>RelativeSchurMultiplier(P,N);
[ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 ]

The implications for the game of Chess are only one step away.