OneCocycles( G, M )
Let M be a normal p-elementary abelian subgroup of G. Then
OneCocycles computes the vector space {cal V} = beta( Z^1( <G>/<M>,
<M> ) ), which is isomorphic to the group of one cocyles Z^1( G, M )
as described in One Cohomology Group. The function returns a record
C with the following components.
oneCoboundaries:
oneCocycles:
generators:
isSplitExtension:C.isSplitExtension is true,
otherwise it is false. In case of a split extension
three more components C.complement,
C.cocycleToComplement and C.complementToCycles
are returned.
complement:
cocycleToList:
listToCocycles:cocycleToList.
cocycleToComplement:
complementToCocycle:
OneCocycles( G, alpha, M )
In that form OneCocycles computes the one cocycles in the semidirect
product of G and M where G acts on M using alpha (see
SemidirectProduct). In that case C only contains
C.oneCoboundaries, C.oneCocycles, C.generators,
C.cocycleToList and C.listToCocycle.
gap> s4xc2 := DirectProduct( s4, CyclicGroup( AgWords, 2 ) );;
gap> s4xc2.name := "s4xc2";;
gap> m := CompositionSubgroup( s4xc2, 3 );
Subgroup( s4xc2, [ a3, a4, b ] )
gap> oc := OneCocycles( s4xc2, m );;
gap> oc.oneCocycles;
RowSpace( GF(2), [ [ 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2) ],
[ 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), 0*Z(2) ],
[ 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2) ] ] )
gap> v := Base( oc.oneCocycles );
[ [ 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2) ],
[ 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2), 0*Z(2) ],
[ 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2) ] ]
gap> oc.cocycleToList( v[1] );
[ a4, a4 ]
gap> oc.cocycleToList( v[2] );
[ b, IdAgWord ]
gap> oc.cocycleToList( v[2] );
[ b, IdAgWord ]
gap> oc.cocycleToList( v[3] );
[ IdAgWord, a3 ]
gap> Igs( oc.complement );
[ a1, a2 ]
gap> Igs( oc.cocycleToComplement( v[1]+v[2]+v[3] ) );
[ a1*a4*b, a2*a3*a4 ]
gap> z4 := CyclicGroup( AgWords, 4 );
Group( c4_1, c4_2 )
gap> m := CompositionSubgroup( z4, 2 );
Subgroup( Group( c4_1, c4_2 ), [ c4_2 ] )
gap> OneCocycles( z4, m );
rec(
oneCoboundaries := RowSpace( GF(2), [ [ 0*Z(2) ] ] ),
oneCocycles := RowSpace( GF(2), [ [ Z(2)^0 ] ] ),
generators := [ c4_1 ],
isSplitExtension := false )
GAP 3.4.4