Goto Chapter: Top 1 2 3 4 A B Bib Ind
 Top of Book   Previous Chapter   Next Chapter 

B A note on algebra generators

B A note on algebra generators

As discussed in Section 3.1, we use a subalgebra eFGe of the group algebra FG during the construction of the basic algebra. While any generating set of the group G gives a generating set for FG, we do not have a similar result for eFGe. The function FindAlgGens (3.1-4) finds a small generating set for eFGe. The purpose of this section is to explain the notation used for labeling the generators of eFGe.

A small generating set for eFGe is found by picking "random" elements in eFGe and checking the dimension of the space they generate. Since these calculations need to be reproducible, we use straight line programs, see StraightLineProgram (Reference: StraightLineProgram), to construct elements in eFGe. For the purposes of the Basic package, we use the following standard words (this is the output of a straight line program which is not given here) to generate elements of eFGe:

Since these eleven words are a small subset of eFGe, there is no reason to believe that they will contain a generating set. For notation, let z(a,b) be the list [z_1(a,b), z_2(a,b), z_3(a,b), z_4(a,b), z_5(a,b), z_6(a,b), z_7(a,b), z_8(a,b), z_9(a,b), z_10(a,b), z_11(a,b)]. When necessary, more elements are created by applying these straight line programs to the elements we have already created. This is done methodically, as described in the following algorithm:

  1. Let a, b be permutations.

  2. Compute gens:=z(a,b).

  3. Initialize perm1:=1 and perm2:=2.

  4. While gens is not a generating set:

    1. Increment perm2.

    2. If perm1=perm2 then increment perm2.

    3. If perm2>11 then

      1. increment perm1,

      2. set perm2:=1.

    4. Append z(gens[perm1],gens[perm2]) onto gens.

  5. Return the positions of the generators in the list gens.

The reason for covering this labelling of generators here is to explain the input and output of some functions in the Basic package.

First, we consider FindAlgGens (3.1-4). This function returns a list of records. Each record in this list corresponds to a pass through the while loop in the above algorithm. These records all contain a field named genlist, which is a list of numbers from 1 to 11 corresponding to the elements of z(gens[perm1],gens[perm2]) which are part of the generating set.

To use a command like CondenseModuleTom (3.2-1), we need to construct a record describing a generating set of eFGe. To do this in GAP, we use the following sequence of commands.

gap> alggens:=[];;
gap> alggens[1]:=rec();;
gap> alggens[1].genlist:=[2,6];;
gap> alggens[2]:=rec();;
gap> alggens[2].genlist:=[7];;
gap> alggens;
[ rec( genlist := [ 2, 6 ] ), rec( genlist := [ 7 ] ) ]

The list alggens corresponds to the set consisting of z_2(a,b), z_6(a,b) and z_7(z_1(a,b),z_3(a,b)). One should be careful here, CondenseModuleTom (3.2-1) will not verify that the record it is given corresponds to a generating set for eFGe.

 Top of Book   Previous Chapter   Next Chapter 
Goto Chapter: Top 1 2 3 4 A B Bib Ind

generated by GAPDoc2HTML