# [GAP Forum] decomposition formulae for C-representations

Alexander Hulpke hulpke at math.colostate.edu
Fri Apr 9 03:45:46 BST 2004

```Dear Gap-Forum,

(Somehow my original reply only went to Dima Pasechnik and not to the list.
Thus a bit belatedly:)

Dima Pasechnik wrote:

> are the formulae that give the decomposition of a C-represenation p
> of a finite group G into direct sums of irreducibles implemented in GAP?

To my knowledge they are not immediately implemented, but it is relatively
easyly done (I leave out the GAP output as it gets quite long):

# construct some group and a matrix representation (this is your input)
g:=TransitiveGroup(12,150);
mats:=List(GeneratorsOfGroup(g),i->PermutationMat(i,12,1));

# matrix rep.
hom:=GroupHomomorphismByImages(g,Group(mats),GeneratorsOfGroup(g),mats);

# get character table and corresponding character

c:=CharacterTable(g);
char:=ClassFunction(c,List(ConjugacyClasses(c),
i->TraceMat(Image(hom,Representative(i)))));

# calculate decomposition
MatScalarProducts(Irr(c),[char]);

# In the example character 9 occurs. find the submodule
x:=Irr(c)[9];
l:=Length(ConjugacyClasses(c));

# the projectuion matrix according to the formula you gave (I sum up the
# elements according to conjugacy classes:
proj:=x[1]/Size(g)*Sum([1..l],i->GaloisCyc(x[i],-1)
*Sum(Elements(ConjugacyClasses(c)[i]),j->Image(hom,j)));

# its rank (the dimension of the module) and a basis
RankMat(proj);
v:=BaseMat(proj);

# for example the induced action on the submodule.
induc:=List(mats,i->List(v,j->SolutionMat(v,j*i)));

I hope this helps,

Alexander

-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke

```