GRAPE (GRaph Algorithms using PErmutation groups),
Version 2.2, L.H.Soicher@qmw.ac.uk, 30 June 1994.

Note: all file paths in this document are relative to the main
directory for the GRAPE package.

To install GRAPE 2.2 (as a GAP 3.4 Share Library Package), follow the
instructions in the Sections on GRAPE in the Chapter on Share Libraries
in the GAP Manual (or see doc/share.tex).  The main documentation on
GRAPE is in the Chapter Grape of the GAP manual (or see
doc/grape.tex).  If you install GRAPE, then please tell
L.H.Soicher@qmw.ac.uk.

If you use GRAPE to solve a problem, then also tell   
L.H.Soicher@qmw.ac.uk, and reference:
   L.H.Soicher, GRAPE: a system for computing with graphs and groups,
   in "Groups and Computation" (L. Finkelstein and W.M. Kantor, eds.),
   DIMACS Series  in Discrete  Mathematics and  Theoretical Computer
   Science 11, pp. 287-291.

Changes in GRAPE 2.2 from GRAPE 2.1, other than the improvement of some 
functions:
   - function Components now called ConnectedComponents.
   - function Component now called ConnectedComponent, and only works 
     for simple graphs.
   - Default MAXN for nauty now 8192.

Changes from previous versions of GRAPE to GRAPE 2.1, other than new 
functions and new function parameters:
   - Nauty Version 1.7 is used in GRAPE 2.1. Note that canonical 
     labellings could be different from those produced by nauty 1.4, 
     which was used in versions of GRAPE prior to 2.1.
   - EnumColadj returns an intersection matrix for the trivial orbital
     graph, in addition to the intersection matrices for the other 
     orbital graphs.
   - MakeIntransitiveGroupGenerators called IntransitiveGroupGenerators.
   - VertexName returns a copy (of the vertex name).
     
The functionality (although not necessarily the speed) of the functions
Enum and EnumColadj are handled by the standard functions
OperationCosetsFpGroup in GAP, and OrbitalGraphIntersectionMatrices in
GRAPE. The functions Enum and Enumcoladj are not well supported, and
make use of fortran and pascal programs.  However, if a user requires
the Enum or EnumColadj functions and you have fortran and pascal
compilers, then cd to directory src, and type

    compileothers

Then the Enum and Enumcoladj commands will work for a single
architecture setup (for multiple architectures you will have to do
something analogous to that described in the GAP Manual for setting up
nauty under GRAPE).  Also, for using Enum, EnumColadj, and the related
standalones enum3 and enum3ca, the user must have an environment
variable  GRAPE_BIN  set to the value of the bin directory of the GRAPE
package. Also, s/he must be aware that the use of these functions or
standalones causes temporary files with names starting with GRAPE_ to
be created and deleted in the current directory, and so if s/he uses
these programs then two should not be run at the same time in the same
directory.

Please send comments on GRAPE, bug reports, etc. to
L.H.Soicher@qmw.ac.uk.

GRAPE is provided "as is", with no warranty whatsoever. Please read the
copyright notice in the file COPYING.
