> < ^ Date: Wed, 22 Nov 1995 22:33:23 +1000
> < ^ From: Smith@wintermute.anu.edu.au <Michael >
^ Subject: new GAP module package

I'm in the process of posting a file called moddist.tar.z (gzipped) to the
anonymous ftp site at Aachen
(<ftp://ftp.math.rwth-aachen.de/pub/incoming>). The connection from
Australia to Germany is atrocious, but hopefully the file will get there
within the next day or two.

This package contains various functions for computing information about
modules for matrix algebras. I've included the README file below which
lists most of the important functions, and there are a number of (hopefully
informative) example files included with the code to get people started.

Hope this is of use to someone out there. Comments and suggestions welcome.

Currently there is no user documentation (apart from the README file), but
examining the README file and the example files would be a good first step
for anyone interested in using the package.


README for GAP modules code

Michael J Smith, School of Mathematical Sciences, ANU
21:07 Wed 22 Nov 1995

The files in subdirectory "modules" contain routines for computing with
modules over matrix group algebras. Included are routines for:

(1) defining module records:
        gap> M := GModule([mat1, mat2, ...]);

(2) computing the decomposition of a module into a direct sum of
indecomposable summands:
gap> computeDecomposition(M);

(3) computing isomorphisms between modules:
gap> X := isomorphismModules(M1, M2);

(4) computing module endomorphism algebra:
gap> E := moduleEndAlgBasis(M);

(5) computing module homomorphism groups:
        gap> H := moduleHomBasis(M1, M2);

(6) computing module automorphisms; generators for the multiplicative
subgroup of invertible elements of the endomorphism algebra, and the order
of this matrix group:
gap> A := moduleAutGenerators(M);
gap> o := moduleAutOrder(M);

(7) computing the centraliser in GL(n,p) of a subgroup of GL(n,p):
        gap> U := MatGroup([mat1, mat2, ...], GF(p));
        gap> C := MatGroupCentraliser(U);
(note that this is equivalent to the computation in (6))

(8) assorted other routines used by the above.

There are a number of example files that demonstrate most of the routines
that are available.


The simplest way to use these files is to define a gap variable called
"LOCALNAMEmodules" pointing to the subdirectory "modules", and then to
issue the command

gap> Read(Concatenation(LOCALNAMEmodules, "init.gap"));

For example, with the "modules" directory copied to /home/user/gap/modules/,
issue the following commands to GAP:

gap> LOCALNAMEmodules := "/home/user/gap/modules/";
gap> Read(Concatenation(LOCALNAMEmodules, "init.gap"));

 Michael.Smith@maths.anu.edu.au /-| |\ | |  | Mathematics (CMA)


> < [top]