The following example determines a presentation for the cohomology ring H^∗(Syl_2(M_12), Z_2). The Lyndon-Hochschild-Serre spectral sequence, and Groebner basis routines from Singular, are used to determine how much of a resolution to compute for the presentation.
gap> G:=SylowSubgroup(MathieuGroup(12),2);; gap> Mod2CohomologyRingPresentation(G); Graded algebra GF(2)[ x_1, x_2, x_3, x_4, x_5, x_6, x_7 ] / [ x_2*x_3, x_1*x_2, x_2*x_4, x_3^3+x_3*x_5, x_1^2*x_4+x_1*x_3*x_4+x_3^2*x_4+x_3^2*x_5+x_1*x_6+x_4^2+x_4*x_5, x_1^2*x_3^2+x_1*x_3*x_5+x_3^2*x_5+x_3*x_6, x_1^3*x_3+x_3^2*x_4+x_3^2*x_5+x_1*x_6+x_3*x_6+x_4*x_5, x_1*x_3^2*x_4+x_1*x_3*x_6+x_1*x_4*x_5+x_3*x_4^2+x_3*x_4*x_5+x_3*x_5^\ 2+x_4*x_6, x_1^2*x_3*x_5+x_1*x_3^2*x_5+x_3^2*x_6+x_3*x_5^2, x_3^2*x_4^2+x_3^2*x_5^2+x_1*x_5*x_6+x_3*x_4*x_6+x_4*x_5^2, x_1*x_3*x_4^2+x_1*x_3*x_4*x_5+x_1*x_3*x_5^2+x_3^2*x_5^2+x_1*x_4*x_6+\ x_2^2*x_7+x_2*x_5*x_6+x_3*x_4*x_6+x_3*x_5*x_6+x_4^2*x_5+x_4*x_5^2+x_6^\ 2, x_1*x_3^2*x_6+x_3^2*x_4*x_5+x_1*x_5*x_6+x_4*x_5^2, x_1^2*x_3*x_6+x_1*x_5*x_6+x_2^2*x_7+x_2*x_5*x_6+x_3*x_5*x_6+x_6^2 ] with indeterminate degrees [ 1, 1, 1, 2, 2, 3, 4 ]
The command CohomologicalData(G,n)
prints complete information for the cohomology ring H^∗(G, Z_2 ) and steenrod operations for a 2-group G provided that the integer n is at least the maximal degree of a relator in a minimal set of relators for the ring.
The following example produces complete information on the Steenrod algebra of group number 8 in GAP's library of groups of order 32. Groebner basis routines from Singular are called involved in the example. (This example take over 2 hours to run. Most other groups of order 32 run significantly quicker.)
gap> CohomologicalData(SmallGroup(32,8),12); Group number: 8 Group description: C2 . ((C4 x C2) : C2) = (C2 x C2) . (C4 x C2) Cohomology generators Degree 1: a, b Degree 2: c, d Degree 3: e Degree 5: f, g Degree 6: h Degree 8: p Cohomology relations 1: f^2 2: c*h+e*f 3: c*f 4: b*h+c*g 5: b*e+c*d 6: a*h 7: a*g 8: a*f+b*f 9: a*e+c^2 10: a*c 11: a*b 12: a^2 13: d*e*h+e^2*g+f*h 14: d^2*h+d*e*f+d*e*g+f*g 15: c^2*d+b*f 16: b*c*g+e*f 17: b*c*d+c*e 18: b^2*g+d*f 19: b^2*c+c^2 20: b^3+a*d 21: c*d^2*e+c*d*g+d^2*f+e*h 22: c*d^3+d*e^2+d*h+e*f+e*g 23: b^2*d^2+c*d^2+b*f+e^2 24: b^3*d 25: d^3*e^2+d^2*e*f+c^2*p+h^2 26: d^4*e+b*c*p+e^2*g+g*h 27: d^5+b*d^2*g+b^2*p+f*g+g^2 Poincare series (x^5+x^2+1)/(x^8-2*x^7+2*x^6-2*x^5+2*x^4-2*x^3+2*x^2-2*x+1) Steenrod squares Sq^1(c)=0 Sq^1(d)=b*b*b+d*b Sq^1(e)=c*b*b Sq^2(e)=e*d+f Sq^1(f)=c*d*b*b+d*d*b*b Sq^2(f)=g*b*b Sq^4(f)=p*a Sq^1(g)=d*d*d+g*b Sq^2(g)=0 Sq^4(g)=c*d*d*d*b+g*d*b*b+g*d*d+p*a+p*b Sq^1(h)=c*d*d*b+e*d*d Sq^2(h)=d*d*d*b*b+c*d*d*d+g*c*b Sq^4(h)=d*d*d*d*b*b+g*e*d+p*c Sq^1(p)=c*d*d*d*b Sq^2(p)=d*d*d*d*b*b+c*d*d*d*d Sq^4(p)=d*d*d*d*d*b*b+d*d*d*d*d*d+g*d*d*d*b+g*g*d+p*d*d
For a finite group G, prime p and positive integer deg the function ModPCohomologyRing(G,p,deg)
computes a finite dimensional graded ring equal to the cohomology ring H^≤ deg(G, Z_p) := H^∗(G, Z_p)/{x=0 : degree(x)>deg } .
The following example computes the first 14 degrees of the cohomology ring H^∗(M_11, Z_2) where M_11 is the Mathieu group of order 7920. The ring is seen to be generated by three elements a_3, a_4, a_6 in degrees 3,4,5.
gap> G:=MathieuGroup(11);; gap> p:=2;;deg:=14;; gap> A:=ModPCohomologyRing(G,p,deg); <algebra over GF(2), with 20 generators> gap> gns:=ModPRingGenerators(A); [ v.1, v.6, v.8+v.10, v.13 ] gap> List(gns,A!.degree); [ 0, 3, 4, 5 ]
The following example constructs the ring homomorphism
F: H^≤ deg(H, Z_p) → H^≤ deg(G, Z_p)
induced by the group homomorphism f: H→ G with H=A_5, G=S_5, f the canonical inclusion of the alternating group into the symmetric group, p=2 and deg=7.
gap> G:=SymmetricGroup(5);;H:=AlternatingGroup(5);; gap> f:=GroupHomomorphismByFunction(H,G,x->x);; gap> p:=2;; deg:=7;; gap> F:=ModPCohomologyRing(f,p,deg); [ v.1, v.2, v.4+v.6, v.5, v.7, v.8, v.9, v.12+v.15, v.13, v.14, v.16+v.17, v.18, v.19, v.20, v.22+v.24+v.28, v.23, v.25, v.26, v.27 ] -> [ v.1, 0*v.1, v.4+v.5+v.6, 0*v.1, v.7+v.8, 0*v.1, 0*v.1, v.14+v.15, 0*v.1, 0*v.1, v.16+v.17+v.19, 0*v.1, 0*v.1, 0*v.1, v.22+v.23+v.26+v.27+v.28, v.25, 0*v.1, 0*v.1, 0*v.1 ]
The following commands are consistent with F being a ring homomorphism.
gap> x:=Random(Source(F)); v.4+v.6+v.8+v.9+v.12+v.13+v.14+v.15+v.18+v.20+v.22+v.24+v.25+v.28+v.32+v.35 gap> y:=Random(Source(F)); v.1+v.2+v.7+v.9+v.13+v.23+v.26+v.27+v.32+v.33+v.34+v.35 gap> Image(F,x)+Image(F,y)=Image(F,x+y); true gap> Image(F,x)*Image(F,y)=Image(F,x*y); true
Mod-p cohomology rings of finite groups are constructed as the rings of stable elements in the cohomology of a (non-functorially) chosen Sylow p-subgroup and thus require the construction of a free resolution only for the Sylow subgroup. However, to ensure the functoriality of induced cohomology homomorphisms the above computation constructs free resolutions for the entire groups G,H. This is a more expensive computation than finding resolutions just for Sylow subgroups.
The default algorithm used by the function ModPCohomologyRing()
for constructing resolutions of a finite group G is ResolutionFiniteGroup()
or ResolutionPrimePowerGroup()
in the case when G happens to be a group of prime-power order. If the user is able to construct the first deg terms of free resolutions RG, RH for the groups G, H then the pair [RG,RH]
can be entered as the third input variable of ModPCohomologyRing()
.
For instance, the following example constructs the ring homomorphism
F: H^≤ 7(A_6, Z_2) → H^≤ 7(S_6, Z_2)
induced by the the canonical inclusion of the alternating group A_6 into the symmetric group S_6.
gap> G:=SymmetricGroup(6);; gap> H:=AlternatingGroup(6);; gap> f:=GroupHomomorphismByFunction(H,G,x->x);; gap> RG:=ResolutionFiniteGroup(G,7);; gap> RH:=ResolutionFiniteSubgroup(RG,H);; gap> F:=ModPCohomologyRing(f,2,[RG,RH]); [ v.1, v.2+v.3, v.6+v.8+v.10, v.7+v.9, v.11+v.12, v.13+v.15+v.16+v.18+v.19, v.14+v.16+v.19, v.17, v.22, v.23+v.28+v.32+v.35, v.24+v.26+v.27+v.29+v.32+v.33+v.35, v.25+v.26+v.27+v.29+v.32+v.33+v.35, v.30+v.32+v.33+v.34+v.35, v.36+v.39+v.43+v.45+v.47+v.49+v.50+v.55, v.38+v.45+v.47+v.49+v.50+v.55, v.40, v.41+v.43+v.45+v.47+v.48+v.49+v.50+v.53+v.55, v.42+v.43+v.45+v.46+v.47+v.49+v.53+v.54, v.44+v.45+v.46+v.47+v.49+v.53+v.54, v.51+v.52, v.58+v.60, v.59+v.68+v.73+v.77+v.81+v.83, v.62+v.68+v.74+v.77+v.78+v.80+v.81+v.83+v.84, v.63+v.69+v.73+v.74+v.78+v.80+v.84, v.64+v.68+v.73+v.77+v.81+v.83, v.65, v.66+v.75+v.81, v.67+v.68+v.69+v.70+v.73+v.74+v.78+v.80+v.84, v.71+v.72+v.73+v.76+v.77+v.78+v.80+v.82+v.83+v.84, v.79 ] -> [ v.1, 0*v.1, v.4+v.5+v.6, 0*v.1, v.8, v.8, 0*v.1, v.7, 0*v.1, v.12+v.13+v.14+v.15, v.12+v.13+v.14+v.15, v.12+v.13+v.14+v.15, v.12+v.13+v.14+v.15, v.18+v.19, 0*v.1, 0*v.1, v.18+v.19, v.18+v.19, v.18+v.19, v.16+v.17, 0*v.1, v.25, v.22+v.24+v.25+v.26+v.27+v.28, v.22+v.24+v.25+v.26+v.27+v.28, 0*v.1, 0*v.1, v.25, v.22+v.24+v.26+v.27+v.28, v.22+v.24+v.26+v.27+v.28, v.23 ]
The following example constructs the first eight degrees of the mod-3 cohomology ring H^∗(G, Z_3) for the group G number 4 in GAP's library of groups of order 81. It determines a minimal set of ring generators lying in degree ≤ 8 and it evaluates the Bockstein operator on these generators. Steenrod powers for p≥ 3 are not implemented as no efficient method of implementation is known.
gap> G:=SmallGroup(81,4);; gap> A:=ModPSteenrodAlgebra(G,8);; gap> List(ModPRingGenerators(A),x->Bockstein(A,x)); [ 0*v.1, 0*v.1, v.5, 0*v.1, (Z(3))*v.7+v.8+(Z(3))*v.9 ]
generated by GAPDoc2HTML