[GAP Forum] Difficulty Understanding how to Generate Group and Compute Molien Series
Max Horn
max at quendi.de
Thu Nov 24 14:09:51 GMT 2016
Hi Saad,
> On 24 Nov 2016, at 00:30, saad khalid <saad1225 at gmail.com> wrote:
>
> Hello everyone!
>
> I'm coming from using Macaulay2 (and not knowing much of anything about
> representation theory) to generate groups and their corresponding Molien
> series. In Macaulay2, I would create a field with some qth root of unity.
> For example, if I wanted q = 8, I would use:
> K = toField(QQ[zet]/(zet^4 + 1))
>
> Then, I would pick some matrix I wanted to use to generate the group:
>
> A = matrix{{zet^(a1),0,0},{0,zet^(a2),0},{0,0,zet^(a3)}} #a1, a2, a3 are
> what I would pick.
In GAP, you can get a primitive 8-th root of unity by E(8), and the field it generates by CF(8). So you could write your matrix like this:
z := E(8);
A := DiagonalMat([z^a1,z^a2,z^a3]);
>
> Notice that this is diagonal(all the matrices I'm dealing with are
> diagonal).
>
> Then, I would generate the group for A in the field K, and compute its
> molienseries:
> B = generateGroup({A},K)
> molienSeries B
The equivalent to the first command in GAP:
B := Group( A );
As to the second command, the corresponding GAP function is MolienSeries(), but it takes a character of a group, not a (matrix) group. But as you say, you can easily convert your matrix representation into a character as follows:
chi := Character(B, List(ConjugacyClasses(B), c -> TraceMat(Representative(c))));
Then we can apply MolienSeries, and get something like this (for a1=1, a2=2, a3=3):
gap> MolienSeries(chi);
( 1-z-z^2+2*z^3+2*z^4-2*z^5+z^7 ) / ( (1-z^8)*(1-z^2)*(1-z) )
Hope that helps,
Max
More information about the Forum
mailing list