# 36.2 Group Functions for Matrix Groups

As already mentioned in the introduction of this chapter matrix groups are after all group. All group functions such as `Centralizer` and `DerivedSeries` are thus applicable to matrix groups. This section describes how these functions are implemented for matrix groups. Functions not mentioned here either inherit the default group methods described in the respective sections.

To compute with a matrix group m, GAP computes the operation of the matrix group on the underlying vector space (more precisely, if the vector space is small enough, it enumerates the space and acts on the whole space. Otherwise it takes the union of the orbits of the parent of m on the standard basis vectors). Then it works with the thus defined permutation group p, which is of course isomorphic to m, and finally translates the results back into the matrix group.

`Centralizer( m, u )`
`Normalizer( m, u )`
`SylowSubgroup( m, p )`
`ConjugacyClasses( m )`

This functions all work by solving the problem in the permutation group p and translating the result back.

`PermGroup( m )`

This function simply returns the permutation group defined above.

`Stabilizer( m, v )`

The stabilizer of a vector v that lies in the union of the orbits of the parent of m on the standard basis vectors is computed by finding the stabilizer of the corresponding point in the permutation group p and translating this back. Other stabilizers are computed with the default method (see Stabilizer).

`RepresentativeOperation( m, v1, v2 )`

If v1 and v2 are vectors that both lie in the union of the orbits of the parent group of m on the standard basis vectors, `RepresentativeOperation` finds a permutation in p that takes the point corresponding to v1 to the point corresponding to v2. If no such permutation exists, it returns `false`. Otherwise it translates the permutation back to a matrix.

`RepresentativeOperation( m, m1, m2 )`

If m1 and m2 are matrices in m, `RepresentativeOperation` finds a permutation in p that conjugates the permutation corresponding to m1 to the permutation corresponding to m2. If no such permutation exists, it returns `false`. Otherwise it translates the permutation back to a matrix.

GAP 3.4.4
April 1997