> < ^ From:

< ^ Subject:

Dear Gap-Forum,

Christopher Bates asked (some weeks ago -- collecting the answer took some

time...):

I am currently doing some calculations with the larger sporadic groups (matrix

representations) and need to be able to compute centralizers. This proves

impossible in a variety of cases.However, I am not utilising the fact that I know the centralizer sizes

from the ATLAS. I believe it may be advantageous for me to find an element

which commutes with my given one, find the order of the subgroups they

generate,and keep doing this ... until the subgroup reaches the desired

size.

Without knowing what your group (and class of elements) is, and whether you

have a few or frequent centralizer computations, it is hard to give a

general rule. However here are some hints that might help (I should add that

most of this is not my idea but uses methods I learned from other

people, mainly Klaus Lux, Steve Linton and Robert Wilson):

o I suppose you are aware of Robert Wilson's Birmingham electronic ATLAS

repository that holds a lot of representations and also in some cases words

for centralizer generators &c. Your problem might have been solved already

there. (If you want to centralize another element than the representative

given there, it might be worth trying to conjugate the element to the given

class representative).

o When you work in GAP with a matrix group, GAP actually computes a

permutation representation (action on vectors) and then calculates with

permutation group methods in this representation. This representation is not

necessarily the one of smallest degree. In most cases you will be better off

by working in the permutation representation of smallest degree and to use a

homomorphism (for example a `GroupHomomorphismByImages'; based on standard

generators to go from permutation to matrix. Note that a homomorphism from

a matrix group will implicitloy again go through the permutation action on

vectors, since there is no algorithm implemented to decompose a matrix

into generators directly) to translate between matrices and permutations.

o The centralizer algorithm for permutation groups uses a backtrack search,

I am not aware of a general method to find random centralizing elements,

that works faster. However there are two tricks, that might reduce the

problem to a size that makes it feasible on your machine:

- Generate (random) subgroups containing your element to be centralized,

and compute first the centralizer in the subgroup. Iterate this and

collect all the centralizer generators.

To get a subgroup, construct random elements,or conjugate by random

elements (using `PseudoRandom' -- `Random' guarantees equal distribution

and therefore has to go via a permutation representation) and check (using

the Meataxe) whether an irreducible representation becomes reducible for

the group generated by these elements. Repeat until it does, then you

have found a proper subgroup. (This method is rather crude, but the test

often works reasonably quickly and permits many checks).

- There is a method to find elements that centralize an involution (and

thus can be used for centralizers of elements of even order) which

usually goes under the name of `dihedral group trick': Let a and b be

two elements of order 2 (one of them (a power of) the element you want

to centralize), then a and b generate a dihedral group whose center

centralizes. See

@inproceedings{linton92a, author = "S.~A. Linton", title = "The Art and Science of Computing in Large Groups", pages = "91--109", title = "Proceedings of CANT '92", editor = "Wieb Bosma and Alf~J. van der Poorten", publisher = "Kluwer", year = 1995 }

and

@phdthesis{brayphd, author = "John Bray", title = "Symmetric Presentations of Sporadic Groups and Related Topics", school = "The University of Birmingham", year = 1997 }

(The latter also is in a published paper in ArchMath I think, but I don't

have the reference at hand at the moment) for details.

o If you want to centralize an element of high order, it might be worth

trying to find first the centralizer of a power (which has lower order):

This centralizer is often larger, and thus you have a better chance to fidn

random elements therein.

o If you search for random elements it might be worth to look at the

centralizer structure: If you know that the centralizer must contain

elements from a given (smallish) class, get a representative from this class

first, and then conjugate it with random elements until you find something

centralizing.

I hope this is of help,

Alexander Hulpke

-- Colorado State University, Department of Mathematics,

Weber Building, Fort Collins, CO 80523, USA

email: hulpke@math.colostate.edu, Phone: ++1-970-4914288

http://www.math.colostate.edu/~hulpke

> < [top]