[1X6 Useful properties and functions[0X [1X6.1 Semisimple group algebras of finite groups[0X [1X6.1-1 IsSemisimpleZeroCharacteristicGroupAlgebra[0m [2X> IsSemisimpleZeroCharacteristicGroupAlgebra( [0X[3XKG[0X[2X ) _________________[0Xproperty The input must be a group ring. Returns [9Xtrue[0m if the input [3XKG[0m is a [13Xsemisimple group algebra[0m ([14X7.2[0m) over a field of characteristic zero (that is if G is finite), and [9Xfalse[0m otherwise. [4X--------------------------- Example ----------------------------[0X [4X[0X [4Xgap> CG:=GroupRing( GaussianRationals, DihedralGroup(16) );;[0X [4Xgap> IsSemisimpleZeroCharacteristicGroupAlgebra( CG );[0X [4Xtrue[0X [4Xgap> FG:=GroupRing( GF(2), SymmetricGroup(3) );; [0X [4Xgap> IsSemisimpleZeroCharacteristicGroupAlgebra( FG );[0X [4Xfalse[0X [4Xgap> f := FreeGroup("a");[0X [4X<free group on the generators [ a ]>[0X [4Xgap> Qf:=GroupRing(Rationals,f);[0X [4X<algebra-with-one over Rationals, with 2 generators>[0X [4Xgap> IsSemisimpleZeroCharacteristicGroupAlgebra(Qf);[0X [4Xfalse[0X [4X[0X [4X------------------------------------------------------------------[0X [1X6.1-2 IsSemisimpleRationalGroupAlgebra[0m [2X> IsSemisimpleRationalGroupAlgebra( [0X[3XKG[0X[2X ) ___________________________[0Xproperty The input must be a group ring. Returns [9Xtrue[0m if [3XKG[0m is a [13Xsemisimple rational group algebra[0m ([14X7.2[0m) and [9Xfalse[0m otherwise. [4X--------------------------- Example ----------------------------[0X [4X[0X [4Xgap> QG:=GroupRing( Rationals, SymmetricGroup(4) );; [0X [4Xgap> IsSemisimpleRationalGroupAlgebra( QG ); [0X [4Xtrue[0X [4Xgap> CG:=GroupRing( GaussianRationals, DihedralGroup(16) );; [0X [4Xgap> IsSemisimpleRationalGroupAlgebra( CG ); [0X [4Xfalse[0X [4Xgap> FG:=GroupRing( GF(2), SymmetricGroup(3) );;[0X [4Xgap> IsSemisimpleRationalGroupAlgebra( FG );[0X [4Xfalse[0X [4X[0X [4X------------------------------------------------------------------[0X [1X6.1-3 IsSemisimpleANFGroupAlgebra[0m [2X> IsSemisimpleANFGroupAlgebra( [0X[3XKG[0X[2X ) ________________________________[0Xproperty The input must be a group ring. Returns [9Xtrue[0m if [3XKG[0m is the group algebra of a finite group over a subfield of a cyclotomic extension of the rationals and [9Xfalse[0m otherwise. [4X--------------------------- Example ----------------------------[0X [4X[0X [4Xgap> IsSemisimpleANFGroupAlgebra( GroupRing( NF(5,[4]) , CyclicGroup(28) ) );[0X [4Xtrue[0X [4Xgap> IsSemisimpleANFGroupAlgebra( GroupRing( GF(11) , CyclicGroup(28) ) );[0X [4Xfalse[0X [4X[0X [4X------------------------------------------------------------------[0X [1X6.1-4 IsSemisimpleFiniteGroupAlgebra[0m [2X> IsSemisimpleFiniteGroupAlgebra( [0X[3XKG[0X[2X ) _____________________________[0Xproperty The input must be a group ring. Returns [9Xtrue[0m if [3XKG[0m is a [13Xsemisimple finite group algebra[0m ([14X7.2[0m), that is a group algebra of a finite group G over a field K of order coprime to the order of G, and [9Xfalse[0m otherwisse. [4X--------------------------- Example ----------------------------[0X [4X[0X [4Xgap> FG:=GroupRing( GF(5), SymmetricGroup(3) );;[0X [4Xgap> IsSemisimpleFiniteGroupAlgebra( FG );[0X [4Xtrue[0X [4Xgap> KG:=GroupRing( GF(2), SymmetricGroup(3) );; [0X [4Xgap> IsSemisimpleFiniteGroupAlgebra( KG ); [0X [4Xfalse[0X [4Xgap> QG:=GroupRing( Rationals, SymmetricGroup(4) );;[0X [4Xgap> IsSemisimpleFiniteGroupAlgebra( QG );[0X [4Xfalse[0X [4X[0X [4X------------------------------------------------------------------[0X [1X6.2 Operations with group rings elements[0X [1X6.2-1 Centralizer[0m [2X> Centralizer( [0X[3XG, x[0X[2X ) _____________________________________________[0Xoperation [6XReturns:[0X A subgroup of a group [3XG[0m. The input should be formed by a finite group [3XG[0m and an element [3Xx[0m of a group ring FH whose underlying group H contains [3XG[0m as a subgroup. Returns the centralizer of [3Xx[0m in [3XG[0m. This operation adds a new method to the operation that already exists in [5XGAP[0m. [4X--------------------------- Example ----------------------------[0X [4X[0X [4Xgap> D16 := DihedralGroup(16);[0X [4X<pc group of size 16 with 4 generators>[0X [4Xgap> QD16 := GroupRing( Rationals, D16 );[0X [4X<algebra-with-one over Rationals, with 4 generators>[0X [4Xgap> a:=QD16.1;b:=QD16.2;[0X [4X(1)*f1[0X [4X(1)*f2[0X [4Xgap> e := PrimitiveCentralIdempotentsByStrongSP( QD16)[3];;[0X [4Xgap> Centralizer( D16, a);[0X [4XGroup([ f1, f4 ])[0X [4Xgap> Centralizer( D16, b);[0X [4XGroup([ f2 ])[0X [4Xgap> Centralizer( D16, a+b);[0X [4XGroup([ f4 ])[0X [4Xgap> Centralizer( D16, e);[0X [4XGroup([ f1, f2 ])[0X [4X[0X [4X------------------------------------------------------------------[0X [1X6.2-2 OnPoints[0m [2X> OnPoints( [0X[3Xx, g[0X[2X ) ________________________________________________[0Xoperation [2X> \^( [0X[3Xx, g[0X[2X ) ______________________________________________________[0Xoperation [6XReturns:[0X An element of a group ring. The input should be formed by an element [3Xx[0m of a group ring FG and an element [3Xg[0m in the underlying group G of FG. Returns the conjugate x^g = g^-1 x g of [3Xx[0m by [3Xg[0m. Usage of [10Xx^g[0m produces the same output. This operation adds a new method to the operation that already exists in [5XGAP[0m. The following example is a continuation of the example from the description of [2XCentralizer[0m ([14X6.2-1[0m). [4X--------------------------- Example ----------------------------[0X [4X[0X [4Xgap> List(D16,x->a^x=a);[0X [4X[ true, true, false, false, true, false, false, true, false, false, false,[0X [4X false, false, false, false, false ][0X [4Xgap> List(D16,x->e^x=e);[0X [4X[ true, true, true, true, true, true, true, true, true, true, true, true,[0X [4X true, true, true, true ][0X [4Xgap> ForAll(D16,x->a^x=a);[0X [4Xfalse[0X [4Xgap> ForAll(D16,x->e^x=e);[0X [4Xtrue[0X [4X[0X [4X------------------------------------------------------------------[0X [1X6.2-3 AverageSum[0m [2X> AverageSum( [0X[3XRG, X[0X[2X ) _____________________________________________[0Xoperation [6XReturns:[0X An element of a group ring. The input must be composed of a group ring [3XRG[0m and a finite subset [3XX[0m of the underlying group G of [3XRG[0m. The order of [3XX[0m must be invertible in the coefficient ring R of [3XRG[0m. Returns the element of the group ring [3XRG[0m that is equal to the sum of all elements of [3XX[0m divided by the order of [3XX[0m. If [3XX[0m is a subgroup of G then the output is an idempotent of RG which is central if and only if [3XX[0m is normal in G. [4X--------------------------- Example ----------------------------[0X [4X[0X [4Xgap> G:=DihedralGroup(16);; [0X [4Xgap> QG:=GroupRing( Rationals, G );;[0X [4Xgap> FG:=GroupRing( GF(5), G );;[0X [4Xgap> e:=AverageSum( QG, DerivedSubgroup(G) );[0X [4X(1/4)*<identity> of ...+(1/4)*f3+(1/4)*f4+(1/4)*f3*f4[0X [4Xgap> f:=AverageSum( FG, DerivedSubgroup(G) ); [0X [4X(Z(5)^2)*<identity> of ...+(Z(5)^2)*f3+(Z(5)^2)*f4+(Z(5)^2)*f3*f4[0X [4Xgap> G=Centralizer(G,e);[0X [4Xtrue[0X [4Xgap> H:=Subgroup(G,[G.1]);[0X [4XGroup([ f1 ])[0X [4Xgap> e:=AverageSum( QG, H );[0X [4X(1/2)*<identity> of ...+(1/2)*f1[0X [4Xgap> G=Centralizer(G,e);[0X [4Xfalse[0X [4Xgap> IsNormal(G,H);[0X [4Xfalse[0X [4X[0X [4X------------------------------------------------------------------[0X [1X6.3 Cyclotomic classes[0X [1X6.3-1 CyclotomicClasses[0m [2X> CyclotomicClasses( [0X[3Xq, n[0X[2X ) _______________________________________[0Xoperation [6XReturns:[0X A partition of [ 0 .. n ]. The input should be formed by two relatively prime positive integers. Returns the list [3Xq[0m-[13Xcyclotomic classes [0m ([14X7.17[0m) modulo [3Xn[0m. [4X--------------------------- Example ----------------------------[0X [4X[0X [4Xgap> CyclotomicClasses( 2, 21 );[0X [4X[ [ 0 ], [ 1, 2, 4, 8, 16, 11 ], [ 3, 6, 12 ], [ 5, 10, 20, 19, 17, 13 ],[0X [4X [ 7, 14 ], [ 9, 18, 15 ] ][0X [4Xgap> CyclotomicClasses( 10, 21 );[0X [4X[ [ 0 ], [ 1, 10, 16, 13, 4, 19 ], [ 2, 20, 11, 5, 8, 17 ],[0X [4X [ 3, 9, 6, 18, 12, 15 ], [ 7 ], [ 14 ] ][0X [4X[0X [4X------------------------------------------------------------------[0X [1X6.3-2 IsCyclotomicClass[0m [2X> IsCyclotomicClass( [0X[3Xq, n, C[0X[2X ) ____________________________________[0Xoperation The input should be formed by two relatively prime positive integers [3Xq[0m and [3Xn[0m and a sublist [3XC[0m of [ 0 .. n ]. Returns [9Xtrue[0m if [3XC[0m is a [3Xq[0m-[13Xcyclotomic class[0m ([14X7.17[0m) modulo [3Xn[0m and [9Xfalse[0m otherwise. [4X--------------------------- Example ----------------------------[0X [4X[0X [4Xgap> IsCyclotomicClass( 2, 7, [1,2,4] );[0X [4Xtrue[0X [4Xgap> IsCyclotomicClass( 2, 21, [1,2,4] );[0X [4Xfalse[0X [4Xgap> IsCyclotomicClass( 2, 21, [3,6,12] );[0X [4Xtrue[0X [4X[0X [4X------------------------------------------------------------------[0X [1X6.4 Other commands[0X [1X6.4-1 InfoWedderga[0m [2X> InfoWedderga____________________________________________________[0Xinfo class [10XInfoWedderga[0m is a special Info class for [5XWedderga[0m algorithms. It has 3 levels: 0, 1 (default) and 2. To change the info level to [10Xk[0m, use the command [10XSetInfoLevel(InfoWedderga, k)[0m. In the example below we use this mechanism to see more details about the Wedderburn components each time when we call [10XWedderburnDecomposition[0m. [4X--------------------------- Example ----------------------------[0X [4X[0X [4Xgap> SetInfoLevel(InfoWedderga, 2); [0X [4Xgap> WedderburnDecomposition( GroupRing( CF(5), DihedralGroup( 16 ) ) );[0X [4X#I Info version : [ [ 1, CF(5) ], [ 1, CF(5) ], [ 1, CF(5) ], [ 1, CF(5) ],[0X [4X [ 2, CF(5) ], [ 1, NF(40,[ 1, 31 ]), 8, [ 2, 7, 0 ] ] ][0X [4X[ CF(5), CF(5), CF(5), CF(5), ( CF(5)^[ 2, 2 ] ), [0X [4X <crossed product with center NF(40,[ 1, 31 ]) over AsField( NF(40,[0X [4X [ 1, 31 ]), CF(40) ) of a group of size 2> ][0X [4X[0X [4X------------------------------------------------------------------[0X [1X6.4-2 WEDDERGABuildManual[0m [2X> WEDDERGABuildManual( [0X[3X[0X[2X ) __________________________________________[0Xfunction This function is used to build the manual in the following formats: DVI, PDF, PS, HTML and text for online help. We recommend that the user should have a recent and fairly complete TeX distribution. Since [5XWedderga[0m is distributed together with its manual, it is not necessary for the user to use this function. Normally it is intended to be used by the developers only. This is the only function of [5XWedderga[0m which requires a UNIX/Linux environment. [1X6.4-3 WEDDERGABuildManualHTML[0m [2X> WEDDERGABuildManualHTML( [0X[3X[0X[2X ) ______________________________________[0Xfunction This fuction is used to build the manual only in HTML format. This does not depend on the availability of the TeX installation and works under Windows and MacOS as well. Since [5XWedderga[0m is distributed together with its manual, it is not necessary for the user to use this function. Normally it is intended to be used by the developers only.