-1

I’m considering the group $G = \mathbb{Z}_n \times \mathbb{Z}_m$ and its covering group $$G^* = \langle \alpha, \beta, a|\alpha a = a\alpha, \beta a = a\beta, a^p = 1, \alpha^n = 1, \beta^m = 1, \alpha \beta = \beta \alpha a\rangle $$ where $p = gcd(n,m)$. It is clear to me that $G^* = (\mathbb{Z}_n \times \mathbb{Z}_p)\rtimes \mathbb{Z}_m$.

I’m wanting to determine the character table for $G^*$. I’ve seen that Section 8.2 of Serre’s book Linear Representations of Finite Groups addresses the representations. However, that is a little technical, and I was wondering if things simplify nicely in this case. If they do, is the character table straightforward to read off?

The answer here summarizes the method presented in Section 8.2 of Serre.

slowspider
  • 1,115
  • I'd recommend against using both $a$ and $\alpha$ in the same problem. Not enough contrast. – Gerry Myerson May 20 '24 at 07:33
  • Do you need the whole character table, or just the degrees, or just some values? Do you need it for arbitrary $m,n$? As the group is clearly nilpotent you can assume that $G$ is a $p$-group, which helps you out. Then you are looking at an extension $p^j.(p^i x p^j)$ where $i\geq j$. This includes the extraspecial groups of order $p^3$ and exponent $p$ as a special case, and all tables look a bit like those. – David A. Craven May 20 '24 at 12:00
  • I was hoping for the whole character table for arbitrary m and n. If that’s too difficult, then a detailed example of the general procedure would also be greatly appreciated. – slowspider May 20 '24 at 13:35

1 Answers1

1

Since you gave the [gap] tag, here is how you could compute it in GAP:

gap> m:=6;;n:=10;;p:=Gcd(m,n); # set m and n and calculate p
2
gap> f:=FreeGroup("a","b","c");; # use c for a and a,b for alpha,beta
gap> str:=Concatenation("ac=ca,bc=cb,c",String(p),",a",String(n),",b",String(m),",ab=bac");
"ac=ca,bc=cb,c2,a10,b6,ab=bac"
gap> rels:=ParseRelators(f,str);
[ c*a*c^-1*a^-1, c*b*c^-1*b^-1, c^2, a^10, b^6, b*a*c*b^-1*a^-1 ]
gap> g:=f/rels;
<fp group on the generators [ a, b, c ]>
gap> SetReducedMultiplication(g); # force short words in expressing elements
gap> Size(g);
120
gap> ct:=CharacterTable(g);
CharacterTable( <fp group of size 120 on the generators [ a, b, c ]> )
gap> CharacterDegrees(ct);
[ [ 1, 60 ], [ 2, 15 ] ]
gap> List(ConjugacyClasses(ct),Representative); # class representatives as words
[ <identity ...>, a^-1, a, b^-1, b, c, a^-2, a^-1*b^-1, a^-1*b, a^2, a*b^-1, [...]
gap> Display(ct); # show the table
ahulpke
  • 20,399
  • This is great, thank you so much! Quick question, when m = 4 and n = 2, could you explain what the Display(ct) is giving me? I'm not familiar with the notation 1a, 2a, etc. Also, what do the 2, 4, 3... represent? – slowspider May 20 '24 at 20:15
  • All right, it looks like the 1a, 2a, etc. is a default naming scheme of the conjugacy classes. Any nice way we can label them by a representative of the class? – slowspider May 21 '24 at 01:59