Abstract
In the first part of this note we present an algorithm to recognise constructively the special linear group. In the second part we give timings and examples.
Introduction
It seems possible, using Aschbacher's celebrated analysis of subgroups of classical groups [5], to develop algorithms that will answer basic questions about the group G generated by a subset X of GL(d, g), for modest values of d and q, as is already possible for permutation groups. The best strategy may involve trying to recognise very large subgroups of GL(d, q) by special techniques.
In the case of permutation groups, special techniques are used to recognise the alternating and symmetric groups. This is done by making a random search for elements of a certain cycle type. If such elements are found in a primitive group, the group is known to contain the alternating group. If no such elements are found after a sufficiently long search, one proceeds with the expectation that one is dealing with a smaller group. For linear groups, the corresponding question is to determine whether or not the group in question contains a classical group.
It is possible to recognise the classical groups in a non-constructive way as described in [6], [7], and [2]. This still leaves the further problem of exhibiting an explicit isomorphism, that is to say, given that the group G = 〈X〉 contains a classical group, how can one express a given element A of G as a word in X? We call an algorithm to solve such a problem a constructive recognition algorithm.