ConjugacyClasses( G )
ConjugacyClasses
returns a list of the conjugacy classes of elements of
the group G. The elements in the list returned are conjugacy class
domains as created by ConjugacyClass
(see ConjugacyClass). Because
conjugacy classes are domains, all set theoretic functions can be applied
to them (see Domains).
gap> a5 := Group( (1,2,3), (3,4,5) );; a5.name := "a5";; gap> ConjugacyClasses( a5 ); [ ConjugacyClass( a5, () ), ConjugacyClass( a5, (3,4,5) ), ConjugacyClass( a5, (2,3)(4,5) ), ConjugacyClass( a5, (1,2,3,4,5) ), ConjugacyClass( a5, (1,2,3,5,4) ) ]
ConjugacyClasses
first checks if G.conjugacyClasses
is bound. If
the component is bound, it returns that value. Otherwise it calls
G.operations.ConjugacyClasses( G )
, remembers the returned value in
G.conjugacyClasses
, and returns it.
The default function called this way is GroupOps.ConjugacyClasses
.
This function takes random elements in G and tests whether such a
random element g lies in one of the already known classes. If it does
not it adds the new class ConjugacyClass( G, g )
(see
ConjugacyClass). Also after adding a new class it tests whether any
power of the representative gives rise to a new class. It returns the
list of classes when the sum of the sizes is equal to the size of G.
GAP 3.4.4