# Second cohomology group for trivial group action of M16 on Z2

This article gives information about the second cohomology group for trivial group action (i.e., the second cohomology group with trivial action) of the group M16 on cyclic group:Z2. The elements of this classify the group extensions with cyclic group:Z2 in the center and M16 the corresponding quotient group. Specifically, these are precisely the central extensions with the given base group and acting group.
The value of this cohomology group is Klein four-group.
Get more specific information about M16 |Get more specific information about cyclic group:Z2|View other constructions whose value is Klein four-group

## GAP implementation

### Construction of the cohomology group

The cohomology group can be constucted using the GAP functions CyclicGroup, SmallGroup, DirectProduct, TwoCohomology, TrivialGModule, GF.

```gap> G := SmallGroup(16,6);;
gap> A := TrivialGModule(G,GF(2));;
gap> T := TwoCohomology(G,A);
rec( group := <pc group of size 16 with 4 generators>,
module := rec( field := GF(2), isMTXModule := true, dimension := 1,
generators := [ <an immutable 1x1 matrix over GF2>,
<an immutable 1x1 matrix over GF2>,
<an immutable 1x1 matrix over GF2>,
<an immutable 1x1 matrix over GF2> ] ),
collector := rec( relators := [ [ [ 3, 1 ] ], [ [ 2, 1, 4, 1 ], 0 ],
[ [ 3, 1 ], [ 3, 1 ], [ 4, 1 ] ],
[ [ 4, 1 ], [ 4, 1 ], [ 4, 1 ], 0 ] ], orders := [ 2, 2, 2, 2 ],
wstack := [ [ 3, 1 ], [ 2, 1, 4, 1 ], [ 3, 1 ] ], estack := [  ],
pstack := [ 3, 5, 3 ], cstack := [ 1, 1, 1 ], mstack := [ 0, 0, 0 ],
list := [ 1, 0, 1, 0 ],
module := [ <an immutable 1x1 matrix over GF2>,
<an immutable 1x1 matrix over GF2>,
<an immutable 1x1 matrix over GF2>,
<an immutable 1x1 matrix over GF2> ],
mone := <an immutable 1x1 matrix over GF2>,
mzero := <an immutable 1x1 matrix over GF2>, avoid := [  ],
unavoidable := [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] ),
cohom := <linear mapping by matrix, <vector space of dimension 4 over GF(
2)> -> ( GF(2)^2 )>,
presentation := rec( group := <free group on the generators
[ f1, f2, f3, f4 ]>,
relators := [ f1^2*f3^-1, f1^-1*f2*f1*f4^-1*f2^-1, f2^2,
f1^-1*f3*f1*f3^-1, f2^-1*f3*f2*f3^-1, f3^2*f4^-1,
f1^-1*f4*f1*f4^-1, f2^-1*f4*f2*f4^-1, f3^-1*f4*f3*f4^-1, f4^2 ] ) )```

### Construction of extensions

```gap> G := SmallGroup(16,6);;
gap> A := TrivialGModule(G,GF(2));;
gap> L := Extensions(G,A);;
gap> List(L,IdGroup);
[ [ 32, 37 ], [ 32, 5 ], [ 32, 4 ], [ 32, 12 ] ]```

### Under the action of the various automorphism groups

This uses additionally the GAP functions AutomorphismGroup, DirectProduct, CompatiblePairs, and ExtensionRepresentatives.

```gap> G := SmallGroup(16,6);;
gap> A := TrivialGModule(G,GF(2));;
gap> A1 := AutomorphismGroup(G);;
gap> A2 := GL(1,2);;
gap> D := DirectProduct(A1,A2);;
gap> P := CompatiblePairs(G,A,D);;
gap> M := ExtensionRepresentatives(G,A,P);;
gap> List(M,IdGroup);
[ [ 32, 37 ], [ 32, 4 ], [ 32, 5 ], [ 32, 12 ] ]```