# Second cohomology group for trivial group action of D16 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 dihedral group:D16 on cyclic group:Z2. The elements of this classify the group extensions with cyclic group:Z2 in the center and dihedral group:D16 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 elementary abelian group:E8.
Get more specific information about dihedral group:D16 |Get more specific information about cyclic group:Z2|View other constructions whose value is elementary abelian group:E8

## GAP implementation

### Construction of the cohomology group

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

```gap> G := DihedralGroup(16);;
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 := [ [ 0 ], [ [ 2, 1, 3, 1, 4, 1 ], [ 3, 1 ] ],
[ [ 3, 1, 4, 1 ], [ 3, 1 ], [ 4, 1 ] ],
[ [ 4, 1 ], [ 4, 1 ], [ 4, 1 ], 0 ] ], orders := [ 2, 2, 2, 2 ],
wstack := [ [ 1, 1 ], [ 3, 1, 4, 1 ], [ 4, 1 ] ], estack := [  ],
pstack := [ 3, 5, 3 ], cstack := [ 1, 1, 1 ], mstack := [ 0, 0, 0 ],
list := [ 0, 0, 0, 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 5 over GF(
2)> -> ( GF(2)^3 )>,
presentation := rec( group := <free group on the generators
[ f1, f2, f3, f4 ]>,
relators := [ f1^2, f1^-1*f2*f1*f4^-1*f3^-1*f2^-1, f2^2*f3^-1,
f1^-1*f3*f1*f4^-1*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

The extensions can be constructed using the additional command Extensions.

```gap> G := DihedralGroup(16);;
gap> A := TrivialGModule(G,GF(2));;
gap> L := Extensions(G,A);;
gap> List(L,IdGroup);
[ [ 32, 39 ], [ 32, 18 ], [ 32, 19 ], [ 32, 9 ], [ 32, 14 ], [ 32, 20 ],
[ 32, 19 ], [ 32, 9 ] ]```

### Under the action of the various automorphism groups

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

```gap> G := DihedralGroup(16);;
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, 39 ], [ 32, 19 ], [ 32, 9 ], [ 32, 18 ], [ 32, 14 ], [ 32, 20 ] ]```