From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Sun Jan  5 03:59:34 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA27279; Sun, 5 Jan 97 03:59:32 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA09668; Sun, 5 Jan 97 04:01:58 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vgjla-0009KcC.970105.050058; Sun, 5 Jan 97 05:00 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vgjlZ-000I8AC; Sun, 5 Jan 97 05:00 MET
Message-Id:     <199701050350.WAA08134@bach.math.ufl.edu>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1083 accepted at 05 Jan 97 04:58 +0100
Date:           Sat, 04 Jan 97 22:50:23 -0500
From: Peter F Mueller <pfm@math.ufl.edu>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        RepresentativeOperation, bug?
Status: RO

Dear Gap-Forum,

the following (under the present up to date version of gap) seems
to display a bug(?)

- Peter M"uller
-------------------------------------------------------------------
gap> x:=[(3,5)(6,7),(2,3)(4,7),(1,2)(5,7)];
[ (3,5)(6,7), (2,3)(4,7), (1,2)(5,7) ]
gap> y:=[(3,5)(6,7),(2,3)(4,7),(1,2)(3,6)];
[ (3,5)(6,7), (2,3)(4,7), (1,2)(3,6) ]
gap> g:=Group(Concatenation(x,y),());
Group( (3,5)(6,7), (2,3)(4,7), (1,2)(5,7), (3,5)(6,7), (2,3)(4,7), (1,2)
(3,6) )
gap> RepresentativeOperation(g,x,y,OnTuples);
Error, List Element: <list>[1] must have a value at
img[bpt] := lensh[OrbitLength( Group( g ), bpt )] ... in
G.operations.RepresentativeConjugationElements( G, d, e ) called from
S.operations.RepresentativeOperation( S, d[i], e[i] ^ (rep ^ (-1 * 1)), 
 OnPoints ) called from
arg[1].operations.RepresentativeOperation( arg[1], arg[2], arg[3], arg[4] 
 ) called from
RepresentativeOperation( g, x, y, OnTuples ) called from
main loop
brk> quit;
gap> quit;

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Mon Jan  6 21:53:54 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA11021; Mon, 6 Jan 97 21:53:52 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA11368; Mon, 6 Jan 97 21:56:19 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vhMus-0009KeC.970106.224910; Mon, 6 Jan 97 22:49 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vhMur-000I8AC; Mon, 6 Jan 97 22:49 MET
Message-Id:     <9701062138.AA05301@pv3454.vincent.iastate.edu>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1085 accepted at 06 Jan 97 22:46 +0100
Date:           Mon, 06 Jan 97 15:38:26 -0600 (CST)
From: Cliff Bergman <cbergman@iastate.edu>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        trouble installing bugfix 27
Status: RO

Hi, 
Sorry to bother everyone with this.  I, finally, have gotten around to
applying all of the patches to our implementation of gap (3r4p3).  [Hey,
isn't that what Christmas vacation is for?]  I had no trouble with
gapfix25, which was a compilation of the first 25 bug fixes.  Also,
bugfix26 went without any trouble.

However, when I tried to apply bugfix27, I got an error message.  I
followed the instructions, and renamed the mail message to fix27lib.dif,
and executed the command:
  patch -p0 < fix27lib.dif

Patch ran and reported the following:

Good.  This file appears to be the 3.52.1.3 version.
Patching file lib/ctcharac.g using Plan A...
Hunk #1 failed at 3.
1 out of 1 hunks failed--saving rejects to lib/ctcharac.g.rej
Hmm...  The next patch looks like a unified diff to me...
The text leading up to this was:
--------------------------
| #H  'List' does no longer accept lists with holes.
| #H
| #H  Revision 3.52.1.2  1995/06/28  07:03:38  sam

It then asked for the name of a file to patch, and I didn't have a clue
what I should do.  I checked the version of patch:

> patch -v
Patch version 2.1

So that does not seem to be the problem.  Does anybody have any advice?

thanks,
cliff bergman
cbergman@iastate.edu

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Tue Jan  7 08:31:23 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA23517; Tue, 7 Jan 97 08:31:21 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA06267; Tue, 7 Jan 97 08:33:42 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vhWq7-0009KiC.970107.092455; Tue, 7 Jan 97 09:24 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vhWq7-000I8AC; Tue, 7 Jan 97 09:24 MET
Message-Id:     <m0vhWhA-0000OaC.970107.091540@beaker.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1086 accepted at 07 Jan 97 09:22 +0100
Date:           Tue, 07 Jan 97 09:15:00 +0100 (MET)
From: Heiko Theissen <heiko.theissen@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        [no subject]
Status: RO

FILE    fix28lib.dif __ 1997/01/06 ____ GAP bugfixes __ Heiko Thei"sen ______

    This file contains a bugfix for a serious problem in GAP 3.4.3.
    You should apply this bugfix soon.
    The problem is in `PermGroupOps.RepresentativeOperation', and it may
    cause a computation to fail with a cryptic error message.


ACKNOWLEDGEMENT

    We thank Peter F M"uller of the University of Florida for bringing this
    bug to our attention in his GAP forum article of 4 Jan 1997 (article
    1083).


VERSION

    GAP/lib 3.4.3.0


PRIORITY

    The problem is a serious problem, because it may cause a computation to
    fail.  Thus the bugfix has medium priority, and we recommend that you
    apply it soon.


HOW TO APPLY

    Go to the GAP directory (the directory with the `lib/' subdirectory),
    name this file `fix28lib.dif', and issue the command:

        patch -p0 < fix28lib.dif

    If `patch' writes "I can't seem to find a patch in there" try `patch -v'.
    If `patch -v' gives an error message or reports a version older than 2.1,
    get 2.1 from `ftp://FTP.Math.RWTH-Aachen.DE/pub/gap/utils/patch2_1.zoo'.

    This fix changes only the library.
    Thus you need not recompile the GAP kernel.


DESCRIPTION

    `PermGroupOps.RepresentativeConjugationElements( G, d, e )' fails
    if the group $G$ has a non-reduced base and signals

    Error, List Element: <list>[1] must have a value at
    img[bpt] := lensh[OrbitLength( Group( g ), bpt )] ... in
    G.operations.RepresentativeConjugationElements( G, d, e ) called from
    arg[1].operations.RepresentativeOperation( arg[1], arg[2], arg[3], OnPoints
     ) called from
    RepresentativeOperation( G, (1,2), (1,3) ) called from
    main loop

    The analogous problem in `Centralizer' does not lead to an error.


CORRECT BEHAVIOUR

gap> G := Group(());
Group( () )
gap> G.stabChain := StabChain(G,rec(base:=[3,4],reduced:=false));;
gap> RepresentativeOperation(G,(1,2),(1,3));
false


COMMENT

    `PermGroupOps.RepresentativeConjugationElements( G, d, e )' builds a list
    which is indexed by cycle lengths of $d$ and contains for each cycle
    length a union of cycles of that length. If $G$ is trivial, this list is
    empty. Then for each base point $b$ of $G$, the list entry at position
    ``length of the $e$-cycle containing $b$'' is read. This causes the error
    if $G$ is trivial but has a non-reduced base.

    Such non-reduced bases can appear in centralisers in permutation groups,
    which are computed with a backtrack algorithm. `RepresentativeOperation'
    uses an iterative method involving such centralisers when it computes an
    element which conjugates a list of permutations onto another one.

    The analogous code in `Centralizer' is also changed with this patch,
    although it causes no error.

DIFFS

Prereq: 3.21
--- lib/permbckt.g	Thu Dec 21 15:30:28 1995
+++ lib/permbckt.g	Tue Jan  7 09:05:55 1997
@@ -3,14 +3,17 @@
 #A  permbckt.g                  GAP library                         Udo Polis
 #A                                                         & Martin Schoenert
 ##
-#A  @(#)$Id: forum97a.txt,v 1.1 1997/04/06 10:39:44 gap Exp $
+#A  @(#)$Id: forum97a.txt,v 1.1 1997/04/06 10:39:44 gap Exp $
 ##
 #Y  Copyright 1990-1992,  Lehrstuhl D fuer Mathematik,  RWTH Aachen,  Germany
 ##
 ##  This file  contains  the  backtrack  functions  for  permutation  groups.
 ##
 #H  $Log: forum97a.txt,v $
 #H  Revision 1.1  1997/04/06 10:39:44  gap
 #H  Added forum archives (ahulpke)
 #H
-#H  Revision 3.21  1994/06/20  11:29:09  ahulpke
+#H  Revision 3.21.1.1  1997/01/06 13:41:46  htheisse
+#H  avoided non-redundant bases in centraliser/element conjugacy
+#H
+#H  Revision 3.21  1994/06/20 11:29:09  ahulpke
 #H  Transfer of .stabChainOps.random
 #H
 #H  Revision 3.20  1992/07/07  12:43:17  martin
@@ -519,8 +522,8 @@
 
     # compute a stabchain for $G$.
     # we take a base that has as often as possible $\beta_i^g = \beta_{i+1}$.
-    MakeStabChain( G, Concatenation(orbsg) );
-    base := G.operations.Base( G );
+    base := G.operations.Base( StabChain( G,
+        rec( base := Concatenation( orbsg ) ) ) );
 
     # for each length make a set of points in orbits of that length under $h$
     lensh := [];
@@ -990,8 +993,8 @@
 
     # compute a stabchain for $G$.
     # we take a base that has as often as possible $\beta_i^g = \beta_{i+1}$.
-    MakeStabChain( G, Concatenation(orbsH) );
-    base := G.operations.Base( G );
+    base := G.operations.Base( StabChain( G,
+        rec( base := Concatenation( orbsH ) ) ) );
 
     # for each length make a set of points in orbits of that length under $g$
     lensH := [];
END OF  fix28lib.dif ________________________________________________________

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Fri Jan 10 16:09:36 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA25278; Fri, 10 Jan 97 16:09:34 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA23410; Fri, 10 Jan 97 16:12:03 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vijOd-0009KfC.970110.170131; Fri, 10 Jan 97 17:01 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vijOd-000I8AC; Fri, 10 Jan 97 17:01 MET
Message-Id:     <m0vijJX-0000OaC.970110.165615@beaker.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1087 accepted at 10 Jan 97 16:58 +0100
Date:           Fri, 10 Jan 97 16:56:00 +0100 (MET)
From: Thomas Breuer <thomas.breuer@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: trouble installing bugfix 27
Status: RO

Dear GAP-Forum,

Cliff Bergman had written about problems with the installation of bugfix 27.
There were indeed problems with some of the bugfix files on some of the
servers, namely the '@(#)$Id' lines in the bugfix files had been changed.

This should be fixed now.

Kind regards
Thomas


From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Fri Jan 17 08:28:01 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA20246; Fri, 17 Jan 97 08:27:59 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA05400; Fri, 17 Jan 97 08:30:34 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vl9Ta-0009KkC.970117.091638; Fri, 17 Jan 97 09:16 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vl9TZ-000I8AC; Fri, 17 Jan 97 09:16 MET
Message-Id:     <Pine.NXT.3.91.970116230556.23105A-100000@ashkhabad.berkeley.edu>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1088 accepted at 17 Jan 97 09:14 +0100
Date:           Thu, 16 Jan 97 23:58:09 -0800
From: Paul R. Brown <pbrown@math.berkeley.edu>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        An AgGroup question
Status: RO

Is there a limit on the orders of elements in an AgGroup?

The motivation for the question and my own attempts to answer the 
question follow:

Let $p$ and $q$ be odd primes such that $q$ is 1 mod $2p$. Let $n$ be a 
primitive $p^{\text{th}}$ root of unity modulo $q$, and form the 
semidirect product $G(p,q)$ with kernel of order $q$ and quotient of 
order $p$ where the action of the quotient on the kernel is defined by 
the root of unity selected.

For large $q$ (on the order of $10^7$, I would like to use an AgGroup to
represent this group, as it would otherwise require either an automaton
(via Derek Holt's kbmag) for an economical normal form or a tremendous
amount of storage because of the length of a permutation representing an
element of order $q$. So, I try the following: 

gap> IsPrime(3) and IsPrime(53269) and Mod(5427^3,53269)=1;
true
gap> F:=FreeGroup(2);
Group( f.1, f.2 )
gap> G:=F / [F.1^3,F.2^53269,(F.2^F.1)*(F.2)^-5427];
Group( f.1, f.2 )
gap> InfoAgGroup1:=Print;
function (...) internal; end
gap> InfoAgGroup2:=Print;
function (...) internal; end
gap> G1:=AgGroupFpGroup(G);
#W  AgGroupFpGroup: composite index, use 'RefinedAgSeries'

Now, this seems rather strange, so let's see what's up:

gap> AgGroupOps.FpGroup(G1);
Group( f.1, f.2 )
gap> PresentationFpGroup(last);
<< presentation with 2 gens and 3 rels of total length 17700 >>
gap> TzPrintPresentation(last);
#I  generators:
#I  1.  f.1   5 occurrences
#I  2.  f.2   17695 occurrences
#I  relators:
#I  1. f.1^3
#I  2. f.2^-1*f.1^-1*f.2*f.1*f.2^-5426
#I  3. f.2^12267
#I  there are 2 generators and 3 relators of total length 17700
gap> IsPrime(12267);
false

The order of the second generator gets changed somehow, so let's go and 
root out the offending code:

    # Check if the indices are primes.
    if ForAny( G.generators, x->not IsPrimeInt(RelativeOrderAgWord(x)))  then
       Print("#W  AgGroupFpGroup: composite index, use 'RefinedAgSeries'\n");
    fi;

which, after a

	grep RelativeOrderAgWord /usr/local/gap3r4p3/lib/* | less

shows that the command is defined in the kernel somewhere, so we go poke 
around in aggroup.c:

*V  HdRnRelativeOrder . . . . . . . . . . . . 'RelativeOrder' record name bag
*V  HdCallSumAgWord . . . . . . . . . . . . . . . . . call to record function
*F  FunRelativeOrderAgWord( <hdCall> )  . . .  internal 'RelativeOrderAgWord'..

Long story short, it boils down to INT_TO_HD, which, via integer.c and 
integer.h, claims to have no problems with integers between $\pm 2^{28} -1$.

So I'm stumped. The system is a fully-patched GAP 3r4p3 running on a P5 
under Linux; I have the same problems on a NeXTstation and on a 
SparcServer 1000.

Any assistance would be greatly appreciated.

	Paul Brown


From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Fri Jan 17 12:50:14 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA21986; Fri, 17 Jan 97 12:50:12 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA13270; Fri, 17 Jan 97 12:52:29 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vlDPT-0009KkC.970117.132839; Fri, 17 Jan 97 13:28 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vlDPS-000I8AC; Fri, 17 Jan 97 13:28 MET
Message-Id:     <m0vlDHG-000dIVC.970117.132010@floyd.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1089 accepted at 17 Jan 97 13:26 +0100
Date:           Fri, 17 Jan 97 13:20:00 +0100 (MET)
From: Frank Celler <frank.celler@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        RE: An AgGroup question
Status: RO

Dear Paul Brown,

    Is there a limit on the orders of elements in an AgGroup?

the relative orders of generators of ag groups are currently limited
to 2^15-1.  Unfortunately, because we never expected such big orders
(the single collector will in general be way too slow) this is *not*
checked, which causes this strange message.  However, in the GAP 4 (to
be released this summer) there will be no such limitions *and* there
will (hopefully) better collectors be included which are more suitable
to large relative orders.

In GAP 3 it is possible to implement your own type of group element
using the methods outlined in "About Defining New Group Elements",
however, none of the special AG group methods is then applicible to
groups of such elements.  If you only want the arithmetic of such
elements this would be a possible solution.

best wishes
  Frank

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Sat Jan 18 16:32:05 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA02955; Sat, 18 Jan 97 16:32:02 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA11035; Sat, 18 Jan 97 16:34:40 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vldgE-0009KeC.970118.173142; Sat, 18 Jan 97 17:31 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vldgD-000I8AC; Sat, 18 Jan 97 17:31 MET
Message-Id:     <8343.199701181625@prospero.maths.warwick.ac.uk>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1090 accepted at 18 Jan 97 17:29 +0100
Date:           Sat, 18 Jan 97 16:25:41 +0000 (GMT)
From: Derek Holt <dfh@maths.warwick.ac.uk>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        New share package for crossed modules
Status: RO

A new GAP share package written by Chris Wensley and Murat Alp, for
calculating in crossed modules and cat1 groups is now available, and can
be collected from the GAP incoming directory in the file xmod131.tar.gz.
The GAP web page description is included below.

Derek Holt.


******************************************************************************

XMod 

Authors: Chris Wensley, Murat Alp 
Language: GAP 
Operating System: Any 
Available from: http://www.math.rwth-aachen.de/ftp/pub/incoming/xmod131.tar.gz, 

Description 

This package enables construction of and computation with objects within the
equivalent categories of crossed modules and cat1-groups, where the groups
involved are finite of moderately small order. 

A crossed module consists of two groups S and R, together with a homomorphism
from S to R which essentially commutes with conjugation within S and R.
Functions are provided for each of the standard constructions of crossed
modules, and for computing with sub- and quotient-structures and
homomorphisms.

A cat1-group consists of a group G together with two homomorphisms from G to G
satisfying certain conditions. It was shown by Loday that there is a natural
one-one correspondence between cat1-groups and crossed modules. 

An important notion is a derivation of a crossed module, which is a map from R
to S satisfying certain conditions. It is possible to compute all (or all
regular) derivations of a crossed module. There are also functions for
computing the actor of a crossed module X, which is a crossed module whose
range is the automorphism group of X. 

Authors 

Chris Wensley and Murat Alp

School of Mathematics
University of Wales, Bangor
Gwynedd, LL57 1UT
GB

email: c.d.wensley@bangor.ac.uk ~e

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Mon Jan 27 17:38:17 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA22326; Mon, 27 Jan 97 17:38:16 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA17150; Mon, 27 Jan 97 17:41:01 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vov0e-0009LGC.970127.183820; Mon, 27 Jan 97 18:38 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vov0l-000I8AC; Mon, 27 Jan 97 18:38 MET
Message-Id:     <199701271726.SAA15311@fermat.math.uvsq.fr>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1091 accepted at 27 Jan 97 18:36 +0100
Date:           Mon, 27 Jan 97 18:26:38 +0100
From: Guillermo MORENO SOCI'AS <moreno@math.uvsq.fr>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Elementary Group Theory
Status: RO

   I am new here, hello to all.
   First question:  is there a FAQ somewhere?
   If not, does anybody know about some material which could help me
in a course of elementary group theory?
   In fact, as I am completely new to GAP, anything with practical
examples would be welcome.  (Yes, I have got the manual, but as it is
1227 pages long the reading is slow.)
   It seems to me GAP could be a good help for students to better
understand and manipulate groups.  Has any of you got any experience
on this?
 Thank you very much in advance.
                                           Guillermo Moreno

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Tue Jan 28 15:49:52 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA06328; Tue, 28 Jan 97 15:49:50 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA00881; Tue, 28 Jan 97 15:52:36 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vpFeq-0009KfC.970128.164112; Tue, 28 Jan 97 16:41 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vpFef-000I8AC; Tue, 28 Jan 97 16:41 MET
Message-Id:     <m0vpFZG-00075CC.970128.163526@astoria.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1092 accepted at 28 Jan 97 16:38 +0100
Date:           Tue, 28 Jan 97 16:35:25 +0100
From: Joachim Neubueser <joachim.neubueser@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        gap in teaching
Status: RO

Daer Dr. Moreno,

Thanks for your  message to the forum which  I will also answer in the
forum  because we   are  asked  similar  questions through   different
channels more often.

>   I am new here, hello to all.
>   First question:  is there a FAQ somewhere?
 
I  am afraid the answer  is no, although  for some time there has been
the intention  to start something of  the  kind. Maybe the  St Andrews
team which will take  over responsibility for GAP  this Summer will be
able to provide such. If  you look at the  WWW pages for GAP

    http://www.math.rwth-aachen.de/LDFM/GAP

you will see  that  at least some steps   have been taken to  make GAP
relevant  information more   easily available, in  particular you  can
search through the correspondence in  the  GAP forum (up to  September
last year)

>   If not, does anybody know about some  material which could help me
>   in   a course of   elementary  group  theory?  In   fact, as I  am
>   completely  new to GAP, anything  with practical examples would be
>   welcome.  (Yes, I  have got the manual,  but  as it is  1227 pages
>   long the reading is slow.)

We have collected exercises from various courses and workshops and you
can get this material through ftp:

ftp.math.rwth-aachen.de/tmp/exercise.zoo

However this material has  not been ordered or  brought into  a common
format, in fact not even been controlled recently, if it still matches
the latest version of GAP.  So at best this can give you some hints.

Of course the path  to hell is paved   with good intentions: I  have a
couple of  students at present  who will become  math teachers and for
their thesis (Staatsexamensarbeit) are working out a set of excercises
with  solutions that could  accompany certain parts  of a group theory
course.  At  present there  is only  a draft *in  German*.  If  you or
somebody else is  strongly interested (s)he can  get  part of it  as a
pre-alpha release, i.e.  more  with our hope  that  we might get  good
suggestions than  with  any promise.  If  and  when this material  may
become publicly available in English, I do not want to make promises.

As said, the question of using GAP in teaching  has come up in the GAP
forum before, and  I have  compiled some of  that correspondance  in a
file, I will send you a copy of that file.

>   It  seems to me GAP could  be a good   help for students to better
>   understand   and  manipulate groups.   Has    any  of you got  any
>   experience on this?
 
I do agree and  in fact we  are using  it  for this  purpose alongside
various  courses  on group  theory,   representation theory  and  more
generally  algebra (the share package  GUAVA has been used with course
on coding theory,  I believe, although  with this I have no experience
myself), but  in a very  much ad  hoc fashion.   That is, we  give our
students a brief introduction to GAP, recommend that they work through
some initial  segment of  the first chapter  of  the GAP manual 'About
GAP' (which   in fact has  been  written with the   intention to allow
to get some   aquaintance without reading  all the  1200+ pages of the
manual), and then  with each exercise they get  a few  hints which GAP
functions might be helpful. It is  left to them  to read in the manual
the description of those specific functions.

Sorry for   not  being    able to   offer  better  organised    files,
unfortunately to prepare  such takes  time. Hope  that the  hints  are
nevertheless useful.

with kind regards     Joachim Neubueser


----------------------------------------------------------------------
Prof. J. Neubueser
Lehrstuhl D fuer Mathematik
RWTH Aachen
Templergraben 64
D 52062 Aachen 
Germany
































































































































































From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Wed Jan 29 08:29:36 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA10658; Wed, 29 Jan 97 08:29:34 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA00174; Wed, 29 Jan 97 08:32:21 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vpVRJ-0009KgC.970129.093217; Wed, 29 Jan 97 09:32 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vpVQw-000I8AC; Wed, 29 Jan 97 09:31 MET
Message-Id:     <m0vpVFN-0009jvC.970129.091957@hobbes.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1094 accepted at 29 Jan 97 09:29 +0100
Date:           Wed, 29 Jan 97 09:19:56 +0100
From: Peter F. Blanchard <pfb3h@weyl.math.virginia.edu>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        AutGroupSagGroup (forwarded)
Status: RO

This mail was not originally accepted by 'Miles' because of technical
problems:

> Dear Mr. and Mrs. Forum,
> 	I have been using Micheal Smith's Automorphism Group share
> package quite a bit lately.  It is a wonderful and welcome replacement for 
> a rickety old backtrack program I had been using.  Much thanks to Micheal.
> 	Here is my question: can someone tell me how to multiply cosets
> of subgroups of automorphism groups?  It seems that this was left out, but
> it is probably not difficult to do.  An example follows which illustrates 
> how the problem comes up when trying to calculate an intersection of 
> subgroups of an automorphism group.
> 
> -- 
> 
> Peter Blanchard                     http://vega.math.ualberta.ca/~pblancha   
> Dept. of Mathematical Sciences      e-mail: pblancha@vega.math.ualberta.ca
> University of Alberta               "Every day holds a wonder that's got 
>                                      to be seen, baby." ------- Carol King
> 
> Example:
> 
> gap> grp := SpecialAgGroup(DihedralGroup(AgWords,8));
> Group( s, d1, d2 )
> gap> autgrp := AutGroupSagGroup(grp);
> Group( Aut(Group( s, d1, d2 ), [ s*d1, d1, d2 ]), InnerAut(Group( s, d1, 
> d2 ), d1), InnerAut(Group( s, d1, d2 ), s) )
> gap> t1 := Subgroup(autgrp,[autgrp.1]);
> Subgroup( Group( Aut(Group( s, d1, d2 ), [ s*d1, d1, d2 ]), InnerAut(Group( 
> s, d1, d2 ), d1), InnerAut(Group( s, d1, d2 ), s) ), 
> [ Aut(Group( s, d1, d2 ), [ s*d1, d1, d2 ]) ] )
> gap> t2 := Subgroup(autgrp,[autgrp.2]);
> Subgroup( Group( Aut(Group( s, d1, d2 ), [ s*d1, d1, d2 ]), InnerAut(Group( 
> s, d1, d2 ), d1), InnerAut(Group( s, d1, d2 ), s) ), 
> [ InnerAut(Group( s, d1, d2 ), d1) ] )
> gap> Intersection(t1,t2);
> Error, product of <a> and <b> is not defined in
> <rec1> * <rec2> called from
> arg[1].operations.Stabilizer( arg[1], arg[2], arg[3] ) called from
> Stabilizer( H, Coset( G ), OnRight ) called from
> D.operations.Intersection( I, D ) called from
> Intersection( t1, t2 ) called from
> main loop
> brk> a;
> (Subgroup( Group( Aut(Group( s, d1, d2 ), [ s*d1, d1, d2 ]), InnerAut(Group( 
> s, d1, d2 ), d1), InnerAut(Group( s, d1, d2 ), s) ), 
> [ Aut(Group( s, d1, d2 ), [ s*d1, d1, d2 ]) ] )*InnerAut(Group( s, d1, 
> d2 ), IdAgWord))
> brk> b;
> InnerAut(Group( s, d1, d2 ), d1)
> brk> quit;
> gap> LogTo();

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Wed Jan 29 10:35:14 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA11061; Wed, 29 Jan 97 10:35:12 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA02936; Wed, 29 Jan 97 10:37:56 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vpXLL-0009KhC.970129.113415; Wed, 29 Jan 97 11:34 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vpXKw-000I8AC; Wed, 29 Jan 97 11:33 MET
Message-Id:     <v03020704af14d268ca82@[150.203.148.161]>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1095 accepted at 29 Jan 97 11:31 +0100
Date:           Wed, 29 Jan 97 21:28:05 +1100
From: Michael Smith <michael.smith@maths.anu.edu.au>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: AutGroupSagGroup (forwarded)
Status: RO

Dear GAP forum,

Peter F. Blanchard wrote [in reference to my AutAg share package]:
>> 	Here is my question: can someone tell me how to multiply cosets
>> of subgroups of automorphism groups?  It seems that this was left out, but
>> it is probably not difficult to do.  An example follows which illustrates
>> how the problem comes up when trying to calculate an intersection of
>> subgroups of an automorphism group.

I think I need an explanation from someone who knows more about the parsing
of GAP commands. I'm replying to the list because this may be of interest
to others who are interested in implementing their own group element
records...

I've repeated Peter's example here (with a few more commands added):


----------------------------------------------------------------------
gap> G := SpecialAgGroup(DihedralGroup(AgWords,8));
Group( s, d1, d2 )
gap> G.name := "G";;
gap> A := AutGroupSagGroup(G);
Group( Aut(G, [ s*d1, d1, d2 ]), InnerAut(G, d1), InnerAut(G, s) )
gap> A.name := "A";;
gap> t1 := Subgroup(A, [A.1]);
Subgroup( A, [ Aut(G, [ s*d1, d1, d2 ]) ] )
gap> t2 := Subgroup(A, [A.2]);
Subgroup( A, [ InnerAut(G, d1) ] )
gap> Intersection(t1, t2);
Error, product of <a> and <b> is not defined in
<rec1> * <rec2> called from
arg[1].operations.Stabilizer( arg[1], arg[2], arg[3] ) called from
Stabilizer( H, Coset( G ), OnRight ) called from
D.operations.Intersection( I, D ) called from
Intersection( t1, t2 ) called from
main loop
brk> a;
(Subgroup( A, [ Aut(G, [ s*d1, d1, d2 ]) ] )*InnerAut(G, IdAgWord))
brk> IsRightCoset(a);
true
brk> a.operations;
DomainOps
brk> a.operations.\*;
function ( C, D ) ... end
brk> Print(a.operations.\*);
function ( C, D )
    local  E;
    if IsRightCoset( C ) and D in Parent( C.group )  then
        E := RightCoset( C.group, C.representative * D );
    elif IsRightCoset( C )  then
        E := Elements( C ) * D;
    elif IsRightCoset( D )  then
        E := C * Elements( D );
    else
        Error( "product of <C> and <D> is not defined" );
    fi;
    return E;
endbrk> Parent(b.group);
G
brk> b in Parent(a.group);
true
brk> RightCoset( a.group, a.representative * b);
(Subgroup( A, [ Aut(G, [ s*d1, d1, d2 ]) ] )*InnerAut(G, d1))
brk>
brk> Print(b.operations.\*);
function ( a, b )
    local  prd;
    if IsAut( a ) and IsAut( b )  then
        if AutOps.IsKnownInner( a ) and AutOps.IsKnownInner( b )  then
            prd := AutOps.MakeAut( a.group, a.inner * b.inner );
        else
            prd := AutOps.MakeAut( a.group, AutOps.Compose( a, b ) );
            if IsBound( a.inverse ) and IsBound( b.inverse )  then
                prd.inverse
                 := AutOps.MakeAut( a.group, AutOps.Compose( b.inverse,
                     a.inverse ) );
                prd.inverse.inverse := prd;
            fi;
        fi;
    elif IsList( a )  then
        prd := List( a, function ( x )
                return x * b;
            end );
    elif IsList( b )  then
        prd := List( b, function ( x )
                return a * x;
            end );
    else
        Error( "product of <a> and <b> is not defined" );
    fi;
    return prd;
end
----------------------------------------------------------------------

I guess I have 2 questions:

(1) When asked to evaluate "a * b", why wasn't the "a.operations.\*"
function used first?

(2) How should I amend my "b.operations.\*" to cope with this situation?
Should I replace the last "else-error" clause with:

    elif IsBound(a.operations.\*) then
        return a.operations.\*(a,b);
    else
        Error( "product of <a> and <b> is not defined" );
    fi;

This solution appears to work, and I'm happy to update my code, but it
would be useful to know the "correct" solution to this problem.

Cheers,
Michael.

-----------------------------------------------------------------------------
Michael.Smith@maths.anu.edu.au          DSTO & Australian National University



From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Thu Jan 30 10:12:20 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA17185; Thu, 30 Jan 97 10:12:19 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA15359; Thu, 30 Jan 97 10:15:06 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vptPE-0009KiC.970130.110744; Thu, 30 Jan 97 11:07 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vptOY-000I8AC; Thu, 30 Jan 97 11:07 MET
Message-Id:     <v03020700af15f3bdf41c@[150.203.148.163]>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1096 accepted at 30 Jan 97 11:04 +0100
Date:           Thu, 30 Jan 97 20:50:49 +1100
From: Michael Smith <michael.smith@maths.anu.edu.au>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        GAPstones for some machines...
Status: RO

Dear GAP Forum,

Some time ago there were a number of messages posted to the forum
concerning GAPstone measurements for various machines. Having just upgraded
my home machine, I thought I'd measure GAP's performance on it and some
other machines around the Mathematics Department at the ANU. In case anyone
else is interested in such measurements, here is a brief summary:

(all runs performed with 2MB of workspace: ie "gap -m 2m")

                                      L2     Bus   total
Machine                CPU/speed     cache  speed    RAM    OS     GAPstones
---------------        ---------     -----  -----  -----  -------  ---------
SparcStation 5         Sparc5/110      ?      ?     32MB  Solaris    63752
SparcStation 10/41     SuperSparc/50   ?      ?    256MB  Solaris    71065
Dell Pentium Notebook  Pentium/150    512K   66     48MB  Linux     112540
Power Center 150       PPC604/150     512K   50     32MB  MacOS     131653*

(I was surprised that the difference between the Pentium/150 and the
PPC604/150 was not higher, since the PPC604/150 should be closer to the
performance of a Pentium/200 --- the (relatively) slow bus speed of the
Power Center is having an impact here I guess.)

It's interesting to compare these with the figures quoted in a January 1993
posting by Martin. The highest score at that time was 63578 GAPstones
attained by a HP 730...

Cheers,
Michael.

-----------------------------------------------------------------------------
Michael.Smith@maths.anu.edu.au          DSTO & Australian National University



From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Thu Jan 30 11:19:24 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA17719; Thu, 30 Jan 97 11:19:23 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA18452; Thu, 30 Jan 97 11:22:10 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vpuWP-0009KmC.970130.121913; Thu, 30 Jan 97 12:19 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vpuVi-000I8AC; Thu, 30 Jan 97 12:18 MET
Message-Id:     <m0vpuLy-000dLBC.970130.120826@floyd.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1098 accepted at 30 Jan 97 12:16 +0100
Date:           Thu, 30 Jan 97 12:08:26 +0100
From: Bettina Eick <bettina.eick@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        AutAG Package
Status: RO

Dear Peter Blanchard,

as you and Michael Smith figured out already, the problem is that
the elements of the AutGroup do not know how to build the product
with a coset of a subgroup of an AutGroup.

The elements of the AutGroup are objects which have been introduced
by Michael Smith, basically because they are faster to multiply
than GroupHomomorphismsByImages which would be the standard GAP
objects for the elements of an automorphism group. However, the 
operations record of the elements of an AutGroup have a very restricted
operations record.
Thus, if you want to use your AutGroup as input for other GAP functions, 
then you should convert the AutGroup to a group of GroupHomomorphismByImages.
There is a function "AutGroupConvert" included in Michael Smith's package
that does the convertion for you.

So this would be the standard solution for your problem. Another
possibility would be that Michael Smith enlarge the operation records
for this automorphisms. In his e-mail he has asked two questions
about this:

> (1) When asked to evaluate "a * b", why wasn't the "a.operations.\*"
> function used first?
This is just a GAP convention. We could have choosen the first argument
just as well, but I am sure that then problems of the same kind would
arise.  

> (2) How should I amend my "b.operations.\*" to cope with this situation?
> Should I replace the last "else-error" clause with:

    elif IsBound(a.operations.\*) then
        return a.operations.\*(a,b);
    else
        Error( "product of <a> and <b> is not defined" );
    fi;

At least one should check 

    elif IsBound(a.operations.\*) and 
         a.operations.\* <> b.operations.\* then

to avoid infinite loops.
If the output of AutGroupSagGroup should be used as input for
other GAP functions, then one should probably add all the features
that the operations record of a GroupHomomorphismByImages has.

However, this might not solve all problems for the computation with
subgroups and elements of AutGroups. Furthermore it might take some
time to adapt an AutGroup such that it might be used for other GAP
computations.

Alltogether, using AutGroupConvert is certainly the easier solution.

Best wishes, Bettina

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Fri Jan 31 12:43:43 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA25458; Fri, 31 Jan 97 12:43:41 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA18233; Fri, 31 Jan 97 12:46:29 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vqIKb-0009KkC.970131.134437; Fri, 31 Jan 97 13:44 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vqIJa-000I8AC; Fri, 31 Jan 97 13:43 MET
Message-Id:     <199701311234.AA06216@primus.math.TU-Berlin.DE>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1099 accepted at 31 Jan 97 13:41 +0100
Date:           Fri, 31 Jan 97 13:34:30 +0100
From: Andreas Hoppe <hoppe@math.tu-berlin.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        GAPstones
Status: RO

Dear GAP Forum,

what is the actual definition of a GAPstone? I guess the number is
milliseconds for a certain bit of GAP code - but which?

Cheers
Andreas

-- 
                       _\|/_
                      ( O - )
-------------------oOOo-(_)-oOOo---------------------------------------
 Urizano                           http://www.math.tu-berlin.de/~hoppe/
 AndreasHoppe      .ooOO   OOoo.   hoppe@math.tu-berlin.de
                   (   )   (   )
--------------------\ (-----) /----------------------------------------
                     \_)   (_/

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Fri Jan 31 16:04:34 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA26591; Fri, 31 Jan 97 16:04:31 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA27878; Fri, 31 Jan 97 16:07:20 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vqLV6-0009KoC.970131.170740; Fri, 31 Jan 97 17:07 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vqLU2-000I8AC; Fri, 31 Jan 97 17:06 MET
Message-Id:     <m0vqLOc-0009gwC.970131.170058@hobbes.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1100 accepted at 31 Jan 97 17:03 +0100
Date:           Fri, 31 Jan 97 17:00:58 +0100
From: Alexander Hulpke <alexander.hulpke@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: GAPstones
Status: RO

Dear GAP Forum,

Andreas Hoppe asked:
> what is the actual definition of a GAPstone? I guess the number is
> milliseconds for a certain bit of GAP code - but which?

The file is 'tst/combinat.tst' in the standard GAP distribution.
It outputs a GAPstone number. (This number is not directly milliseconds,
but scaled such that an Atari ST running GAP 3.1 yielded 1000 GAPstones).
Incidentally, for PCs with a Pentium processor running under Unix, the
number of kiloGAPstones is roughly the Processor speed in MHz. On current
day top-level systems (DEC Alpha, Pentium Pro) you get something around
300k-330k GAPstones.
The GAPstone ranking basically reflects the speed of memory operations and
integer arithmetic.

Best,

   Alexander Hulpke


From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Fri Jan 31 17:29:14 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA27185; Fri, 31 Jan 97 17:29:12 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA02504; Fri, 31 Jan 97 17:32:01 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vqMpR-0009KpC.970131.183245; Fri, 31 Jan 97 18:32 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vqMoN-000I8AC; Fri, 31 Jan 97 18:31 MET
Message-Id:     <m0vqMeh-0009jvC.970131.182139@hobbes.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1101 accepted at 31 Jan 97 18:29 +0100
Date:           Fri, 31 Jan 97 18:21:39 +0100
From: Alexander Hulpke <alexander.hulpke@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: GAPstones
Status: RO

Dear GAP Forum,

I wrote today:
> The file is 'tst/combinat.tst' in the standard GAP distribution.

I was just alerted by an user that 'combinat.test' is not in the current
distribution (I had looked in our GAP directories and found it there, I
think once it had been also in the distribution). For those who want to
try their system, I have put the file in the directory /pub/incoming on
our ftp server ftp.math.rwth-aachen.de.
I hope not too many people searched already in vain. Please excuse the
mistake!


     Alexander Hulpke



From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Fri Jan 31 20:37:57 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA27754; Fri, 31 Jan 97 20:37:54 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA07261; Fri, 31 Jan 97 20:40:43 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vqPmB-0009KkC.970131.214135; Fri, 31 Jan 97 21:41 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vqPl5-000I8AC; Fri, 31 Jan 97 21:40 MET
Message-Id:     <199701312028.OAA13475@rigel.math.uiuc.edu>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1102 accepted at 31 Jan 97 21:38 +0100
Date:           Fri, 31 Jan 97 14:28:58 -0600
From: Kevin O'Bryant <obryant@math.uiuc.edu>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Games on Groups
Status: RO

Hello!

I'm writing code relating to combinatorial game theory (in the style
of Berlekamp, Conway, and Guy's Winning Ways) in GAP. Has anyone out
there been down this road already? In particular, in C one may use "^"
for binary addition without carrying (Nim addition), an operation used
repeatedly (and recursively, so time is a BIG issue) and pervasively
in game theory calculations. Is there a quick way to do this in GAP?
By "quick", I mean faster than computing the binary expression, doing
the addition without carry term by term, and then converting back to a
Gap integer.

To head off questions about just using C, I'm looking at several games
which take place on Cayley-Digraph's, so I need (want?) the group
algorithms handy.

Thanks in advance,
				Kevin O'Bryant

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Sat Feb  1 17:20:18 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA29588; Sat, 1 Feb 97 17:20:16 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA08699; Sat, 1 Feb 97 17:23:06 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vqj9h-0009KmC.970201.182309; Sat, 1 Feb 97 18:23 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vqj8L-000I8AC; Sat, 1 Feb 97 18:21 MET
Message-Id:     <199702011713.SAA25515@wsdw01.win.tue.nl>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1103 accepted at 01 Feb 97 18:19 +0100
Date:           Sat, 01 Feb 97 18:13:52 +0100
From: A.E. Brouwer <aeb@win.tue.nl>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        GAP on Alpha
Status: RO

Dear GAP-Forum,

Long ago I promised to construct an interface between
GAP and COCO. I just fetched the GAP source (gap3r4p3.zoo)
and compiled it on my Alpha.

This revealed two minor bugs:
In system.c, the
	ret = sbrk( 4 - (int)sbrk(0) % 4 );
has a pointer cast to int, which makes the compiler complain.
Also, the prototype for times(), given as
	extern  int             times P(( struct tms * ));
should have been
	extern clock_t times P(( struct tms * ));
according to POSIX.

So, it was very easy to make it compile. Unfortunately,
GAP crashes on everything I do. Looking at the sources,
these are filled with (undocumented?) assumptions about
the underlying hardware.

I get

gap> 2^59+2^59;
0

because integer.c tests for overflow (e.g. in SumInt) by

        i = (long)hdL + (long)hdR - 1;

        if ( ((i << 1) >> 1) == i )
            return (TypHandle)i;

but longs have 64 bits, so 2^59 is still stored as a small integer.
However, when the sum does not fit in a small integer, GAP does

        i = HD_TO_INT(hdL) + HD_TO_INT(hdR);
        if ( 0 < i ) {
            hdS = NewBag( T_INTPOS, 4*sizeof(TypDigit) );
            ((TypDigit*)PTR(hdS))[0] = i;
            ((TypDigit*)PTR(hdS))[1] = i >> 16;
        }

preserving only 32 bits.
Also Gasman fails in various ways, like in:

gap> Bell(34);
Gasman: last bag of type +12 and size    16 has overwritten the free bag.

I have not really traced this bug, but again there are all kinds
of hidden assumptions (like in

    HdFree->size -= (size + SIZE_HD + SIZE_HD-1) & ~(SIZE_HD-1);

which will only work when SIZE_HD is a power of two).

Since I hear people talking about GAP on the Alpha, perhaps
someone debugged all this already?
This gap3r4p3 is more than a year old. Is there a more recent version?

Best regards,
Andries Brouwer

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Mon Feb  3 08:27:06 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA05456; Mon, 3 Feb 97 08:27:04 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA16712; Mon, 3 Feb 97 08:29:46 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vrJlw-0009KmC.970203.092904; Mon, 3 Feb 97 09:29 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vrJk5-000I8AC; Mon, 3 Feb 97 09:27 MET
Message-Id:     <m0vrJZk-000dLBC.970203.091628@floyd.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1105 accepted at 03 Feb 97 09:24 +0100
Date:           Mon, 03 Feb 97 09:16:00 +0100 (MET)
From: Steve Linton <sal@dcs.st-and.ac.uk>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: GAP on Alpha
Status: RO

Hi Andries,

In brief, you cannot compile GAP3 directly on a 64 bit machine. The 32 bit 
assumption is wired into the storage manager, long integer arithmetic and 
Blist code. You can download an alpha binary from Aachen (it was compiled on 
an older DEC workstation and converted using a DEC conversion tool).

A new patch level of GAP 3.4 (3.4.4) will be out in the next week or two. It 
rolls in the 30 or so bug fixes since 3.4.3, makes a few tiny improvements and 
picks up the latest versions of all the share packages.

GAP4 will be out this summer and is a complete re-engineering of the kernel 
and the library structure. You can get an alpha test version now if you are 
interested, contact gap4@math.rwth-aachen.de. It will run on 64 bit machines 
when it is released (but we haven't quite integrated the code for this yet).

        Steve

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Mon Feb  3 09:59:57 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA05937; Mon, 3 Feb 97 09:59:55 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA21840; Mon, 3 Feb 97 10:02:43 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vrLFN-0009KrC.970203.110333; Mon, 3 Feb 97 11:03 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vrLDW-000I8AC; Mon, 3 Feb 97 11:01 MET
Message-Id:     <m0vrL0n-0009jvC.970203.104829@hobbes.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1106 accepted at 03 Feb 97 10:59 +0100
Date:           Mon, 03 Feb 97 10:48:29 +0100
From: Alexander Hulpke <alexander.hulpke@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: Games on Groups
Status: RO

Dear GAP-forum,

Kevin O'Bryant asked:

> I'm writing code relating to combinatorial game theory (in the style
> of Berlekamp, Conway, and Guy's Winning Ways) in GAP. Has anyone out
> there been down this road already? In particular, in C one may use "^"
> for binary addition without carrying (Nim addition), an operation used
> repeatedly (and recursively, so time is a BIG issue) and pervasively
> in game theory calculations. Is there a quick way to do this in GAP?
> By "quick", I mean faster than computing the binary expression, doing
> the addition without carry term by term, and then converting back to a
> Gap integer.

If you don't need the numerical value often, it might pay off to use blists
(binary lists). The manual section 'More about boolean lists' tells you
more. These are lists that contain only 'true' and 'false', if you
have created such a list, 'IsBlist' converts it implicitely to the internal
storage that takes just one bit per boolean value. For these blists there
are functions 'UnionBlist', 'IntersectionBlist' and 'DifferenceBlist' (note
that for these operations the blists must be of same length) from
which you can build the XOR-operation (i.e. binary addition without carrying)
easily. This should be certainly faster than using integers.
If this is still too slow you would need to add C routines, see the source
file 'blister.c' for information.
If the number of objects you're operating with is fairly small, you could
finally try to use numbers to represent the objects and to create a
nim-addition table, in which you look up the result.

Best,

    Alexander Hulpke

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Tue Feb  4 23:00:02 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA19786; Tue, 4 Feb 97 23:00:00 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA19195; Tue, 4 Feb 97 23:02:53 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vrttU-0009KfC.970205.000316; Wed, 5 Feb 97 00:03 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vrtrA-000I8AC; Wed, 5 Feb 97 00:00 MET
Message-Id:     <Pine.OSF.3.95.970204163748.11253C-100000@pscosf.peru.edu>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1107 accepted at 04 Feb 97 23:58 +0100
Date:           Tue, 04 Feb 97 16:38:53 -0600
From: Joe Kincaid <kincaid@pscosf.peru.edu>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        GAP manual
Status: RO

Hi,

  Is the GAP manual available in printed form anywhere? I know I can print
the LaTeX file, but our library would rather buy it from a publisher than
bound a loose set of pages.

Thanks,

Joe
-----
Joseph Kincaid                 |  Mathematics is the alphabet with which God
kincaid@pscosf.peru.edu        |  has written the universe.
kincaid@hilbert.math.ksu.edu   |				 -- Galileo
http://www.peru.edu/~kincaid   |   (except he said it in Italian, of course.) 



From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Wed Feb  5 09:06:32 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA23146; Wed, 5 Feb 97 09:06:30 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu (4.1/SMI-4.1)
	id AA14739; Wed, 5 Feb 97 09:09:18 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vs3Oo-0009KgC.970205.101214; Wed, 5 Feb 97 10:12 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vs3MN-000I8AC; Wed, 5 Feb 97 10:09 MET
Message-Id:     <m0vs3HS-00075CC.970205.100438@astoria.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1108 accepted at 05 Feb 97 10:07 +0100
Date:           Wed, 05 Feb 97 10:04:37 +0100
From: Joachim Neubueser <joachim.neubueser@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        GAP manual
Status: RO

Dear Colleagues,

Joe Kincaid asked in the Forum:

> Is the GAP manual available  in printed form anywhere?  I know I can
> print  the LaTeX file,  but our library would  rather  buy it from a
> publisher than bound a loose set of pages.

The question has been raised before and is absolutely reasonable. 

However:

The   manual (fortunately!) has  changed  rather  frequently and  will
continue to change, due to new functionality made available in GAP, it
will in particular change when the new GAP 4 will be released.

The more as the total number of copies needed at a given moment is not
that big, a commercial publisher would soon  be faced with the problem
what to do with copies that do not represent the  state of the art any
more.

We have considered the possibility to  get ourselves a small number of
copies printed and bound and to  sell them, but all the administrative
overhead and  financial problems  of  prepaying the  printing, sending
copies, invoices, reminders etc is just beyond us. Lehrstuhl D is just
a small math department with one secretary. Developing and maintaining
GAP  and  trying to answer  every  question brought  forward to us, is
going almost beyond the limits of what we can do.

So: sorry, we can't  help with that one,  and your library most put up
with  binding a lose set of  pages (or perhaps rather  put them into a
folder to which you could add additions).  

Let me add that if somebody among the readers of this Forum is willing
to provide bound   copies, in  contact  with  us and  taking into  due
account  the ongoing  changes of the  manual,   he is most  welcome to
contact us.

Kind regards     Joachim Neubueser




From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Mon Feb 24 13:17:15 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA22045; Mon, 24 Feb 97 13:17:14 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA21084; Mon, 24 Feb 97 13:20:17 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vz0Ha-0009KjC.970224.141730; Mon, 24 Feb 97 14:17 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vz0Ha-000I8AC; Mon, 24 Feb 97 14:17 MET
Message-Id:     <199702241303.QAA23145@mailserv.tversu.ac.ru>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1109 accepted at 24 Feb 97 14:15 +0100
Date:           Mon, 24 Feb 97 16:03:29 +0300
From: User <nicks@tversu.ac.ru>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Question1
Status: RO

       Dear Sirs,
 How I must compilate the file unzoo.c with the help Borland C++ v.3.0?
Were i can get file "You_ must_specify_the_system.h"?
                                 
                                                               Yours sincerely,

                                                               Nickolay E.
Skorochodov

                                                                 nicks@tvers
u.ac.ru


From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Tue Feb 25 08:15:53 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA29901; Tue, 25 Feb 97 08:15:46 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA10526; Tue, 25 Feb 97 08:18:26 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0vzI6P-0009KmC.970225.091909; Tue, 25 Feb 97 09:19 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0vzI6P-000I8AC; Tue, 25 Feb 97 09:19 MET
Message-Id:     <m0vzHzT-000KgdC.970225.091159@elmo.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1110 accepted at 25 Feb 97 09:16 +0100
Date:           Tue, 25 Feb 97 09:11:00 +0100 (MET)
From: Heiko Theissen <heiko.theissen@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: Question1
Status: RO

Dear Nickolay Skorochodov,

how you have to compile `unzoo.c' depends on what machine you are
using. If you look at the file `unzoo.c' you will find a section with
compilation hints under the heading `COMPILATION'. It describes
precisely what command you have to enter for which machine. If your
machine is not among the options listed there (and if -DSYS_IS_GENERIC
does not work either), do not hesitate to ask
`Gap-Trouble@math.rwth-aachen.de' again, stating

  * what machine
  * what operating system
  * what C compiler

you are using.

Hope this helps,

Heiko Thei{\ss}en

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Thu Feb 27 09:41:04 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA19881; Thu, 27 Feb 97 09:41:03 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA16170; Thu, 27 Feb 97 09:44:15 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w0258-0009KjC.970227.102454; Thu, 27 Feb 97 10:24 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w0257-000I8AC; Thu, 27 Feb 97 10:24 MET
Message-Id:     <9702270907.AA09757@dirac.maths.qmw.ac.uk>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1114 accepted at 27 Feb 97 10:22 +0100
Date:           Thu, 27 Feb 97 09:07:36 +0000
From: Roderik Cornelis Lindenbergh <r.c.lindenbergh@qmw.ac.uk>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Group Presentations Library
Status: RO

Dear GAP Forum,

This is the announcement of
 
         GPL, the Group Presentations Library .

The GPL files 

1. contain 27 presentations of sporadic groups (a sporadic group is a
   sporadic simple group or its automorphism group). These presentations
   come from [PS97]: C.E.Praeger and L.H.Soicher, "Low Rank Representations
   and Graphs for Sporadic Groups", Cambridge University Press, 1997.  Other
   presentations may be added in due course.
2. contain lists of words generating many subgroups with respect to these 
   presentations.
3. give a general setup for storing presentations and subgroup generators.
4. enable its users to build finitely presented groups via strings.
5. enable its users to build string presentations from finitely
   presented groups.

The presentations include those for all sporadic simple groups with
order up to that of the Higman-Sims group, and the automorphism groups
of these groups. In addition, with respect to these eleven
presentations, words are given for every maximal subgroup up to the
action of the automorphism group of the group presented. To achieve
this, words for several subgroups were found by the author. For rank > 5
maximal subgroups, this adds to the information given in [PS97].


The GPL distribution contains of two files:
        gpl.g      - the library and functions in GAP format
        gpl.ps.gz  - documentation in postscript format

The files are available from GAP's incoming directory:
        math.rwth-aachen.de/pub/incoming/
and from the GPL home page:
        http://www.maths.qmw.ac.uk/~rcl/GPL/GPL.html
        http://www.can.nl/~lindenb/GPL/GPL.html
where online documentation is available as well.

Please send bugs and comments to 
		
				Roderik Lindenbergh
				
				R.C.Lindenbergh@qmw.ac.uk

EXAMPLES

1. Using the library of group presentations.

  gap>
  gap> Read("gpl.g");
  gap> hs := GroupPresentationGPL("HS",1);
  GroupPresentation( "HS", 1 )
  gap> InitializeGroupPresentationGPL( hs );
  gap> sg := AvailableSubgroupsGPL(hs);
  [ M22, U3(5).2, U3(5), L3(4).2_1, A8.2, 2^4.s6, 4^3:psl(3,2), M11,
    4.2^4:s5, 2xa6.2^2, 5:4xa5 ]
  gap> ops := OperationCosetsFpGroup( hs.group, sg[1] );;
  gap> List(ops.generators, x -> LargestMovedPointPerm(x));
  [ 100, 100, 100, 100, 100, 100 ]
  gap>

2. Building 2xA5 via a string representing a coxeter graph.

  gap>
  gap> 2dira5 := FpGroupViaStrings( "a3b5c" );
  ## The map is: "abc"
  Group( f.1, f.2, f.3 )
  gap> 2dira5.relators;
  [ f.1*f.2*f.1*f.2*f.1*f.2, f.2*f.3*f.2*f.3*f.2*f.3*f.2*f.3*f.2*f.3,
    f.1^2, f.2^2, f.3^2, f.1*f.3*f.1*f.3 ]
  gap>

3. Creating a compact string presentation for a coxeter group.
  
  gap>
  gap> F5 := FreeGroup( "x1", "x2", "x3", "x4", "x5" );;
  gap> E1 := F5 / [ F5.1^2, F5.2^2, F5.3^2, F5.4^2, F5.5^2,
  > ( F5.1 * F5.3 )^2, ( F5.2 * F5.4 )^2, ( F5.1 * F5.2 )^3,
  > ( F5.2 * F5.3 )^3, ( F5.3 * F5.4 )^3, ( F5.4 * F5.1 )^3,
  > ( F5.1 * F5.5 )^3, ( F5.2 * F5.5 )^2, ( F5.3 * F5.5 )^3,
  > ( F5.4 * F5.5 )^2,
  > ( F5.1 * F5.2 * F5.3 * F5.4 * F5.3 * F5.2 )^2 ];;
  gap> CoxeterStringPresentation( E1 );
  [ "A3B3C3D3A3E3C",, "(ABCDCB)^2" ] 

INTRODUCTION AND MAIN FEATURES.

The Group Presentations Library (GPL) presents a new way to store
and use presentations and words generating subgroups in a given presentation.
The presentations and the words are stored as strings  in a human readible
way. I tried to develop and document the package in such a way that it
is easy to add new words and presentations.

** Presentations and short words for subgroups for sporadic groups. **

The Group Presentations Library contains already 27 presentations for
sporadic groups. Numerous subgroups can be created with the stored short
words in the generators of the given presentations.  The first chapter
of the documentation describes the functions that are programmed to
use the information available in the GPL library file.  Besides, it
will give an overview of the available presentations and it will tell
for which  subgroups in the available presentations  words are given
in the GPL library file. Several new short words that generate subgroups
of sporadic groups were found by the author. Short words found by
Martin Schoenert were added as well to the list of words and
presentations that can be found in [PS97]. This last source of
information formed the first basis for this library file.

** Storing presentations and words. **

The code that builds the presentations and the subgroups of a group
in a  given presentation from the GPL library file is quite  general.
It is therefore possible to add other presentations and words in future
releases easily.  If one wishes to use a new presentation on a one-off
basis, one can use the functions described in chapter 2. If a
presentation or a set of presentations is needed more regularly, we
could consider to add these presentations in future releases.  Please
contact me via email or other means. Of course it is possible to add
presentations and words to your personal copy of the library file by
just following the format conventions described in the first chapter
and in the library file itself.

** Finitely presented groups versus string presentations. **

The second chapter  describes an alternative approach to building
finitely presented groups inside GAP. The standard approach in GAP
is to use a set of abstract generators subject to a set of relations.
When the relations, which are words in the abstract generators, are
complicated, it is sometimes more convenient to represent some of
the relations in the form of a  so-called Coxeter graph.  In our
approach, functions are introduced that make it possible to enter
generators and implicit relations via Coxeter graphs and explicit
relations using strings. Functions that convert a finitely presented
group in such a string presentation are added as well.

** Thanks. **

I hereby thank Anton Cox and Julian Gilbey  for their comments.
Almost last but not least I would like to give special thanks
to my supervisor, Dr. L.H. Soicher who showed me many techniques
for working with sporadic groups and GAP, and who carefully read
this documentation and used procedures on an early stage.

Finally, I would like to thank the European Union, which enabled me to do
this work, done during a period of eight months at Queen Mary and Westfield
college, London, via an HCM grant in Computational Group Theory.

				Roderik Lindenbergh

                                School of Mathematical Sciences
                                Queen Mary & Westfield College
                                Mile End Road
                                London E1 4NS

                                R.C.Lindenbergh@qmw.ac.uk

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Fri Feb 28 09:35:59 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA27189; Fri, 28 Feb 97 09:35:58 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA20565; Fri, 28 Feb 97 09:38:35 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w0Okk-0009KqC.970228.103722; Fri, 28 Feb 97 10:37 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w0Okj-000I8AC; Fri, 28 Feb 97 10:37 MET
Message-Id:     <9702280924.AA20110@tamdhu.dcs.st-andrews.ac.uk>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1116 accepted at 28 Feb 97 10:34 +0100
Date:           Fri, 28 Feb 97 09:25:44 +0000
From: Steve Linton <sal@dcs.st-and.ac.uk>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Databases
Status: RO

The recent announcements of libraries of presentations and the proposal (which 
I applaud) prompts me to mention on the forum something that I and others have 
been thinking about for a while now, which is the question of a more 
integrated framework for the various types of data about known groups (and 
other structures) that is available in GAP.

Doing this properly is a big project, and will take some years, at least. 
Furthermore, it is essential to get the high-level design of such a database 
right from the beginning, so that essential flexibility is not lost.

So why am I telling you about this now, I hear you ask. I raise the subject 
now because I would be interested to hear what people might like to see in 
such a database in the future, and to receive any suggestions on how it might 
be organised, or on traps that we must avoid falling into. I make absolutely 
no promises to actually provide what people ask for, or indeed anything at 
all, but I will read the suggestions.

		Steve


From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Sat Mar  1 04:12:57 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA05627; Sat, 1 Mar 97 04:12:55 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA09557; Sat, 1 Mar 97 04:16:09 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w0gEP-0009KoC.970301.051709; Sat, 1 Mar 97 05:17 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w0gEO-000I8AC; Sat, 1 Mar 97 05:17 MET
Message-Id:     <m0w0g6r-0009KQC.970301.050921@hurin.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1117 accepted at 01 Mar 97 05:14 +0100
Date:           Fri, 28 Feb 97 22:03:33 -0600 (CST)
From: william banks  <wdb@littlewood.math.okstate.edu>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        GAP question
Status: RO

I am trying to use GAP to study a certain finite (finitely presented)
group.  To make the question simple, suppose I want to consider a
free group with 1 generator X and 1 relation: X*X = 1.

This group has two elements: IdWord & X .

Given an element, such as X*X*X*X*X*X*X, how can I make the GAP program
reveal to me which of two elements, IdWord or X, this is?

						Thanks,
						Bill

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Mon Mar  3 08:23:33 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA15864; Mon, 3 Mar 97 08:23:32 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA16724; Mon, 3 Mar 97 08:26:47 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w1T6K-0009KoC.970303.092804; Mon, 3 Mar 97 09:28 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w1T6J-000I8AC; Mon, 3 Mar 97 09:28 MET
Message-Id:     <9703030817.AA00872@maxp03.mathe.uni-jena.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1119 accepted at 03 Mar 97 09:25 +0100
Date:           Mon, 03 Mar 97 09:17:57 +0100
From: Richard Rossmanith <richard@maxp03.mathe.uni-jena.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: GAP question
Status: RO

Dear Bill, dear Gap Forum,

I had the same problem, and probably also other people. What I usually do (and 
probably what is more or less the natural thing to do here) is to convert the 
group into a isomorphic permutation group with "OperationCosetsFpGroup", and 
then define two mutually inverse isomorphisms phi, psi between my original group 
g and the permutation group p.

I would solve your example this way:

gap> f:=FreeGroup("x");
Group( x )
gap> x:=f.1;
x
gap> g:=f/[x^2];
Group( x )
gap> x:=g.1;
x
gap> p:=OperationCosetsFpGroup(g,TrivialSubgroup(g));
Group( (1,2) )
gap> phi:=GroupHomomorphismByImages(g,p,g.generators,p.generators);
GroupHomomorphismByImages( Group( x ), Group( (1,2) ), [ x ], [ (1,2) ] )
gap> psi:=GroupHomomorphismByImages(p,g,p.generators,g.generators);
GroupHomomorphismByImages( Group( (1,2) ), Group( x ), [ (1,2) ], [ x ] )
gap> IsIsomorphism(phi); IsIsomorphism(psi);
true
true
gap> ((x*x*x*x*x*x*x)^phi)^psi;
x^-1

(This is a strange, but at least canonical GAP says "x".)

Note that this approach does unfortunately not always (but almost) work. Namely 
it does not work when one of the generators of g becomes trivial by the 
relations you gave. Then this element would be mapped onto the empty permutation 
under phi, so GAP seems to throw it out of the set of generators of p. (It 
obviously is not needed to generate p. But the generating sets of g and p are 
not "compatible" anymore, so you have a harder time defining phi and psi.)

Maybe there's a better way, in this case I would be interested, too.

Regards,

Richard

_______________________________________________________________________________
 http://www.minet.uni-jena.de/~richard/

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Mon Mar  3 11:28:13 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA17036; Mon, 3 Mar 97 11:28:12 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA23402; Mon, 3 Mar 97 11:31:26 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w1Vyp-0009KsC.970303.123231; Mon, 3 Mar 97 12:32 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w1Vyo-000I8AC; Mon, 3 Mar 97 12:32 MET
Message-Id:     <m0w1Vtr-0008ZJC.970303.122723@rowlf.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1120 accepted at 03 Mar 97 12:30 +0100
Date:           Mon, 03 Mar 97 12:27:23 +0100
From: Paul R. Brown <pbrown@math.berkeley.edu>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: GAP question
Status: RO

(Moderators remark: This mail was originally rejected by Miles as it came
from another address that the subscribed one.)

On Fri, 28 Feb 1997, william banks wrote:
#>I am trying to use GAP to study a certain finite (finitely presented)
#>group.  To make the question simple, suppose I want to consider a
#>free group with 1 generator X and 1 relation: X*X = 1.
#>This group has two elements: IdWord & X .
#>Given an element, such as X*X*X*X*X*X*X, how can I make the GAP program
#>reveal to me which of two elements, IdWord or X, this is?

You're completely out of luck unless you know more about the group. In
most cases, the problem of deciding whether or not a word is trivial
is unsolvable. The most notable exceptions to this rule are automatic
groups, and in this case, Derek Holt's kbmag, integrated into GAP or
standalone, provides a time-efficient solution of the word problem.
(The time-efficiency only applies AFTER the automatic structure is
found; finding the automatic structure can be a "hard" problem.)

Another tack on the problem is to find normal subgroups of finite
index and then see if the two elements match in the finite quotient
group; this sounds easy, but searching for the normal subgroups and
then finding a permutation representation via coset enumeration are
both "hard" problems from the computer's viewpoint.

If you send your presentation to me, I'll try to give you some
assistance.

	Best,

	Paul

_____________________________________________________________________
Paul Brown	Grad student, UCB mathematics	       (510)-843-7817
pbrown@math.berkeley.edu            http://math.berkeley.edu/~pbrown/
_____________________________________________________________________





From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Mon Mar  3 12:53:11 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA17925; Mon, 3 Mar 97 12:53:10 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA27510; Mon, 3 Mar 97 12:56:25 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w1XIl-0009L3C.970303.135711; Mon, 3 Mar 97 13:57 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w1XIk-000I8AC; Mon, 3 Mar 97 13:57 MET
Message-Id:     <m0w1X6W-0008YgC.970303.134432@rowlf.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1123 accepted at 03 Mar 97 13:54 +0100
Date:           Mon, 03 Mar 97 13:44:31 +0100
From: Derek Holt <dfh@maths.warwick.ac.uk>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: GAP question
Status: RO

William Banks wrote:

> 
> I am trying to use GAP to study a certain finite (finitely presented)
> group.  To make the question simple, suppose I want to consider a
> free group with 1 generator X and 1 relation: X*X = 1.
> 
> This group has two elements: IdWord & X .
> 
> Given an element, such as X*X*X*X*X*X*X, how can I make the GAP program
> reveal to me which of two elements, IdWord or X, this is?
> 
> 						Thanks,
> 						Bill

A (not completely satisfactory) solution to this problem has been posted by
Richard Rossmanith, which involves setting up a two-way homomorphism
between your group and an isomorphic regular permutation group.

There is an alternative solution, which does more or less exactly what you
want, but it involves using the external package "kbmag". So, you would
first need to get this package, compile it (it contains `C' source code)
and install it properly. It should work reasonably well if your group is
not too big.

Here is an example using a slightly less simple example than you did!

gap> RequirePackage("kbmag");
gap> G:=FreeGroup("x","y");; x:=G.1;; y:=G.2;;  
gap> G.relators:=[x^2,y^3,(x*y)^4];;
gap> R:=FpGroupToRWS(G);
      #This builds a "rewriting system", which kbmag can works with
rec(
           isRWS := true,
  generatorOrder := [x,y,y^-1],
        inverses := [x,y^-1,y],
        ordering := "shortlex",
       equations := [
         [y^2,y^-1],
         [x*y*x*y,y^-1*x*y^-1*x]
       ]
)
KB(R);  #This runs the external `C' programs to complete the rewriting system.
#System is confluent.
#Halting with 11 equations.
true
     #Now you can do what you want.
gap> SizeRWS(R);
24
gap> EnumerateRWS(R,0,10);
[ IdWord, x, x*y, x*y*x, x*y*x*y, x*y*x*y^-1, x*y*x*y^-1*x, x*y*x*y^-1*x*y, 
  x*y^-1, x*y^-1*x, x*y^-1*x*y, x*y^-1*x*y*x, x*y^-1*x*y^-1, y, y*x, y*x*y, 
  y*x*y^-1, y*x*y^-1*x, y*x*y^-1*x*y, y^-1, y^-1*x, y^-1*x*y, y^-1*x*y*x, 
  y^-1*x*y^-1 ]
  #This gives the complete list of reduced words for the group elements
  #of lengths betwwen 0 and 4 (which gives the whole group here).
gap> ReduceWordRWS(R,y^5);
y^-1
gap> ReduceWordRWS(R,y^2*x*y*x*y^2*x*(y^-1)^2);   
x*y^-1*x*y*x


There is a slightly confusing "feature" here. The generators of a rewriting
system are monoid generators of the group - in this case  x, y and y^-1.
This means that (currently) you have to specify your word as a word in
these, and so you have to put (y^-1)^2 rather than y^-2. Sorry about that!

Derek Holt.




From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Tue Mar  4 10:12:10 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA24753; Tue, 4 Mar 97 10:12:09 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA27886; Tue, 4 Mar 97 10:15:22 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w1rEb-0009KiC.970304.111413; Tue, 4 Mar 97 11:14 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w1rEa-000I8AC; Tue, 4 Mar 97 11:14 MET
Message-Id:     <m0w1r36-0003KbC@bert.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1124 accepted at 04 Mar 97 11:11 +0100
Date:           Tue, 04 Mar 97 11:02:20 +0100
From: Volkmar Felsch <volkmar.felsch@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: GAP question
Status: RO

Dear Gap Forum,

In his reply to Bill Banks' question concerning the problem of
recognizing which element of a small finitely presented group is
described by a given word in its generators, Richard Rossmanith wrote:


> I had the same problem, and probably also other people. What I usually
> do (and probably what is more or less the natural thing to do here) is
> to convert the group into a isomorphic permutation group with
> "OperationCosetsFpGroup", and then define two mutually inverse
> isomorphisms phi, psi between my original group g and the permutation
> group p.
> 
> I would solve your example this way:
> 
> gap> f:=FreeGroup("x");
> Group( x )
> gap> x:=f.1;
> x
> gap> g:=f/[x^2];
> Group( x )
> gap> x:=g.1;
> x
> gap> p:=OperationCosetsFpGroup(g,TrivialSubgroup(g));
> Group( (1,2) )
> gap> phi:=GroupHomomorphismByImages(g,p,g.generators,p.generators);
> GroupHomomorphismByImages( Group( x ), Group( (1,2) ), [ x ], [ (1,2) ] )
> gap> psi:=GroupHomomorphismByImages(p,g,p.generators,g.generators);
> GroupHomomorphismByImages( Group( (1,2) ), Group( x ), [ (1,2) ], [ x ] )
> gap> IsIsomorphism(phi); IsIsomorphism(psi);
> true
> true
> gap> ((x*x*x*x*x*x*x)^phi)^psi;
> x^-1
> 
> (This is a strange, but at least canonical GAP says "x".)
> 
> Note that this approach does unfortunately not always (but almost) work.
> Namely it does not work when one of the generators of g becomes trivial
> by the relations you gave. Then this element would be mapped onto the
> empty permutation under phi, so GAP seems to throw it out of the set of
> generators of p. (It obviously is not needed to generate p. But the
> generating sets of g and p are not "compatible" anymore, so you have a
> harder time defining phi and psi.)
> 
> Maybe there's a better way, in this case I would be interested, too.


Indeed, there is a way to avoid the problem with empty permutations among
the generators. It suffices to replace the two lines defining phi and psi
by

    phi := OperationHomomorphism( g, p );
    psi := InverseMapping( phi );

Example:

    gap> F := FreeGroup( "x", "y", "z" );;
    gap> x := F.1;; y := F.2;; z := F.3;;
    gap> G := F / [ x, y^2, z^3, Comm( y, z ) ];;
    gap> x := G.1;; y := G.2;; z := G.3;;
    gap> P := OperationCosetsFpGroup( G, TrivialSubgroup( G ) );;
    gap> phi := OperationHomomorphism( G, P );;
    gap> psi := InverseMapping( phi );;
    gap> IsIsomorphism( phi );
    true
    gap> IsIsomorphism( psi );
    Error, arbitrary generating systems not yet allowed for fp groups in
    G.operations.GroupHomomorphismByImages( G, H, gens, imgs ) called from
    GroupHomomorphismByImages( hom.range, hom.source, hom.genimages,
     hom.generators ) called from
    struct.operations.InverseMapping( struct ) called from
    InverseMapping( hom ) called from
    struct.operations.KernelGroupHomomorphism( struct ) called from
    ...
    brk> quit;
    gap> ((y^5*z)^phi)^psi;
    y^-1*z^-2
    gap> ((y*z*y)^phi)^psi;
    z^-2
    gap> ((z*y*z)^phi)^psi;
    y^-1*z^-1

This approach works though the "inverse mapping" psi is not necessarily
a mapping. e. g., if we have two generators in p which are equal, but
which are mapped on different generators of g.

The resulting representative for a given word w in G is the image under
psi of a word in the generators of P for the permutation phi(w). This
product is computed by first constructing a stabilizer chain of P (via
the Schreier-Sims method) and then using the stabilizer coset
representatives.

It may be a disadvantage of the homomorphism functions called in the
above example that they do not give us a feeling for their complexity.

As an alternative, here is a different approach, again using a faithful
permutation representation of G, which is more transparent. It involves
two functions, an initializing function which has to be called just once
for the group, and the proper function itself.

    gap> InitElementWord := function( G )
    >     local elts, T;
    >     T := CosetTableFpGroup( G, TrivialSubgroup( G ) );
    >     G.permutations := List( [1 .. Length( G.generators ) ],
    >         i ->PermList(  T[ 2*i - 1 ] ) );
    >     elts := Elements( G );
    > end;;
    gap> ElementWord := function( G, word )
    >     local perm;
    >     perm := MappedWord( word, G.generators, G.permutations );
    >     return G.elements[1^perm];
    > end;;

We use these functions to handle the same example as above:

    gap> F := FreeGroup( "x", "y", "z" );;
    gap> x := F.1;; y := F.2;; z := F.3;;
    gap> G := F / [ x, y^2, z^3, Comm( y, z ) ];;
    gap> x := G.1;; y := G.2;; z := G.3;;
    gap> InitElementWord( G );
    gap> ElementWord( G, y^5*z );
    y*z
    gap> ElementWord( G, y*z*y );
    z
    gap> ElementWord( G, z*y*z );
    y*z^2

Now the representative for a given word w in G is determined by the
definition of the associated coset representative in the coset table
T of G by its trivial subgroup. This is consistent with the
representation of w in the list Elements(G).

Volkmar Felsch, Aachen

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Wed Mar  5 08:36:59 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA02662; Wed, 5 Mar 97 08:36:56 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA15965; Wed, 5 Mar 97 08:40:13 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w2CDf-0009KnC.970305.093839; Wed, 5 Mar 97 09:38 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w2CDe-000I8AC; Wed, 5 Mar 97 09:38 MET
Message-Id:     <m0w2C2v-0009gwC.970305.092733@hobbes.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1126 accepted at 05 Mar 97 09:36 +0100
Date:           Wed, 05 Mar 97 09:27:33 +0100
From: Chris Charnes <charnes@osiris.cs.uow.edu.au>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        external programs
Status: RO

Dear Forum,

Is there a way to
call external programs from within Gap?

Chris Charnes





From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Wed Mar  5 09:59:58 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA03015; Wed, 5 Mar 97 09:59:57 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA18052; Wed, 5 Mar 97 10:03:14 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w2DYl-0009KqC.970305.110431; Wed, 5 Mar 97 11:04 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w2DYk-000I8AC; Wed, 5 Mar 97 11:04 MET
Message-Id:     <m0w2DP3-0009gwC.970305.105429@hobbes.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1127 accepted at 05 Mar 97 11:01 +0100
Date:           Wed, 05 Mar 97 10:54:29 +0100
From: Alexander Hulpke <alexander.hulpke@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: external programs
Status: RO

Dear Forum,

Chris Charnes asked:

> Is there a way to
> call external programs from within Gap?

Yes. Provided you have a reasonable operating system (e.g. UNIX) you can use
'Exec'. The manual (Section 3.22, about page 308) tells you more.
Note, however that passing information from the external program back to
GAP requires the external program to write the output as GAP assignment
statements to a file and GAP
reading in this file via 'Read' afterwards. You will also have to deal with
selection of appropriate filenames, write permissions &c. yourself.

For example, if 'foo' is a program that adds the first two arguments and
writes the result in GAP readable format to a file given in the third
argument, your GAP code could look like:

Exec("foo 3 5 bar");
Read("bar");

This would call the external program 'foo' with the arguments 3 5 and 'bar'.
Then the external program would use the third argument as a filename to
write output to. So it might create a file 'bar' that looks like
GAPINPUT := 8;
Then GAP reads in the file and the variable GAPINPUT contains the result.
Note that GAPINPUT (or whatever variable you chose) must be a *global*
variable, even when calling the 'Read' from a function.

Best regards,

   Alexander Hulpke





From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Sat Mar  8 19:39:26 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA17565; Sat, 8 Mar 97 19:39:23 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA12941; Sat, 8 Mar 97 19:42:43 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w3S0Y-0009KoC.970308.204218; Sat, 8 Mar 97 20:42 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w3S0X-000I8AC; Sat, 8 Mar 97 20:42 MET
Message-Id:     <Pine.SOL.3.91.970308132725.1619A-100000@ux1>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1128 accepted at 08 Mar 97 20:39 +0100
Date:           Sat, 08 Mar 97 13:35:21 -0600
From: Kaustuv M. Das <cfkmd@eiu.edu>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Sylow-3 Subgroups
Status: RO

Hi All:

I am running GAP 3.4 on a Pentium 133 machine with 32 megs of memory (in 
a DOS window from within Windows 95).  I am interested in getting hold of 
all the Sylow_3 subgroups of Sp_6(5), but whenever I try the GAP command:

gap> SylowSubgroup(G,3);

where G has been defined as :

gap> G:=SymplecticGroup(6,5);

I get an out of memory error (after the machine sits and thinks for about 
thirty hours).  What am I doing wrong?

I have tried allocating more memory to the program by changing the 
command line in GAP.BAT and that hasn't helped.  Also Windows 95 
supposedly is better with memory allocation, though I am not sure whether 
I believe that or not :)  Any suggestions on how I can get hold of all 
the Sylow_3 subgroups of Sp_6(5), without having to shift to another 
machine would be most welcome.

Thanks in advance.

K.M.Das

**********************************************************************
* Kaustuv Mukul Das                                                  *
* Department of Mathematics             DON'T PANIC                  *
* Eastern Illinois University                                        *
* Charleston, IL 612920                           --  Douglas Adams  *  
* (217) 581 3828                                                     *
**********************************************************************


From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Mon Mar 10 12:28:20 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA23605; Mon, 10 Mar 97 12:28:18 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA25643; Mon, 10 Mar 97 12:31:35 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w44BM-0009KqC.970310.132800; Mon, 10 Mar 97 13:28 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w44BL-000I8AC; Mon, 10 Mar 97 13:27 MET
Message-Id:     <Pine.SUN.3.94.970310113853.13442E-100000@thalia>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1130 accepted at 10 Mar 97 13:25 +0100
Date:           Mon, 10 Mar 97 13:21:23 +0100
From: Frank Luebeck <frank.luebeck@iwr.uni-heidelberg.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: Sylow-3 Subgroups
Status: RO

Dear GAP-Forum, dear Kaustuv,

On Sat, 8 Mar 1997, Kaustuv M. Das wrote:

> I am interested in getting hold of 
> all the Sylow_3 subgroups of Sp_6(5), but whenever I try the GAP command:
> 
> gap> SylowSubgroup(G,3);
> 
> where G has been defined as :
> 
> gap> G:=SymplecticGroup(6,5);
> 
> I get an out of memory error (after the machine sits and thinks for about 
> thirty hours).  What am I doing wrong?

I think essentially you are doing the right thing, but GAP seems to do 
something which is not very efficient. 

GAP's idea is to convert the group to a permutation group and it seems
that it spends a lot of time and memory in doing so. 

I append to this mail a short file with some utility functions which I
gave to several people before (who had similar questions than the one
above). An example is given, how to find a Sylow-3-subgroup in Sp_6(5).
It also converts the group to a permutation group and defines functions
for converting elements from matrices to permutations and vice versa.

Maybe it would be useful to many GAP users to have a better interface
between the matrix groups and permutation groups. (Functions like
'NumVec' and 'VecNum' below can also be used to write a much  faster
orbit algorithm for vectors under a matrix group, than the default
algorithm in GAP.)

> I have tried allocating more memory to the program by changing the 
> command line in GAP.BAT and that hasn't helped.  Also Windows 95 
> supposedly is better with memory allocation, though I am not sure whether 
> I believe that or not :)  Any suggestions on how I can get hold of all 
> the Sylow_3 subgroups of Sp_6(5), without having to shift to another 
> machine would be most welcome.

Give GAP 12MB or more for the shown example. On my Sparc 20 the example
takes less than 3  minutes. It should be faster on your Pentium 133.


By the way: another possibility to find the Sylow-3-Subgroups would be to
look at the much smaller subgroup isomorphic to the unitary group GU_3(5)
(some people call it U_3(25)), whose order is divisible by 3^4.

With best regards,

  Frank Luebeck




# an example
# read in the following file:
Read("matperm.g");

# define the group
g:=SymplecticGroup(6,5);;

# convert to permutation group
gp:=PermGroupOnVectorspace(g);;
time;

# always a good idea to tell a permutation group its order ("Size"), 
# if you know it
gp.size:=Size(g);

# compute Sylow-3-subgroup
sylperm:=SylowSubgroup(gp,3);;
time;

# convert back to matrix group
syl:=Group(List(sylperm.generators,p->MatrixPerm(g,p)),
           IdentityMat(6)*Z(5)^0);
Size(syl);

# the following works, too
n:=Normalizer(gp,sylperm);;
Size(n);
# => probably you don't want to write down all the conjugate 
# subgroups explicitly


------------  cut here ------------------------------------
########################################################################
##  
##  matperm.g                                                Frank Luebeck
##  
##  Mathematisches Institut and IWR, Universitaet Heidelberg
##  
##  This file contains  some utility functions  to convert between  matrix
##  groups  over finite field and  the corresponding permutations group on
##  all(!) vectors of the vector space.
##  


#############################################################################
##  
#F  NumVec( <fld>, v ) . . . . . . . . . . . . converts vector <v> over finite
#F  field <fld> to a positive integer number
##  
NumVec:=function(f,v)
  local fel,p,n,q,i;
  if IsBound(f.elements) then
    fel:=f.elements;
  else
    fel:=Elements(f);
  fi;
  q:=Length(fel);
  n:=Length(v);
  p:=0;
  for i in [1..n] do
    p:=p*q+Position(fel,v[i])-1;
  od;
  return p+1;
end;

#############################################################################
##  
#F  VecNum( <fld>, <dim>, <nr> ) . . . . . inverse of 'NumVec', converts number
#F  <nr> to <dim>-dimensional vector over finite field <fld>
##  
VecNum:=function(f,n,p)
  local fel,q,v,i;
  if IsBound(f.elements) then
    fel:=f.elements;
  else
    fel:=Elements(f);
  fi;
  q:=Length(fel);
  v:=[];
  p:=p-1;
  for i in [1..n] do
    v[n-i+1]:=fel[(p mod q)+1];
    p:=QuoInt(p,q);
  od;
  return v;
end;

#############################################################################
##  
#F  PermGroupOnVectorspace( <matgrp> )  . . .   . . .  returns permutation
#F  group which describes the matrix group <matgrp> over a finite field as
#F  permutation group on all vectors of the vector space
##  
##  Before using this  function think about the number  of vectors in your
##  vector space!
##  
PermGroupOnVectorspace:=function(g)
  local l, n, f, gen, v, p, i, erg;
  l:=Length(g.generators);
  n:=g.dimension;
  f:=g.field;
  g.idPos:=List(g.identity,e->NumVec(f,e));
  gen:=List([1..l],i->[]);
  for p in [1..Size(f)^n] do
    v:=VecNum(f,n,p);
    for i in [1..l] do
      Add(gen[i],NumVec(f,v*g.generators[i]));
    od;
  od;
  erg:=Group(List(gen,PermList),());
  return erg;
end;

#############################################################################
##  
#F  PermMatrix( <matgrp>, <mat> ) . . . . . . converts matrix in <matgrp> to 
#F  corresponding permutation in PermGroupOnVectorspace( <matgrp> )
##  
PermMatrix:=function(g,M)
  local l;
  l:=Size(g.field)^g.dimension;
  return PermList(List([1..l],i->NumVec(g.field,
                            VecNum(g.field,g.dimension,i)*M)));
end;

#############################################################################
##  
#F  MatrixPerm( <matgrp>, <perm> ) . . . . . . . . . converts permutation  in 
#F  PermGroupOnVectorspace( <matgrp> ) to corresponding matrix in <matgrp>
##  
MatrixPerm:=function(g,p)
  return List(OnTuples(g.idPos,p),i->VecNum(g.field,g.dimension,i));
end;





From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Mon Mar 10 21:39:57 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA28982; Mon, 10 Mar 97 21:39:56 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA03770; Mon, 10 Mar 97 21:43:18 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w4Cr8-0009KoC.970310.224342; Mon, 10 Mar 97 22:43 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w4Cr7-000I8AC; Mon, 10 Mar 97 22:43 MET
Message-Id:     <33248B41.2F1A1D0E@win.tue.nl>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1131 accepted at 10 Mar 97 22:41 +0100
Date:           Mon, 10 Mar 97 22:29:21 +0000
From: Dima Pasechnik <pasec@can.nl>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: Sylow-3 Subgroups
Status: RO

Dear GAP-Forum,

Kaustuv M. Das wrote:
> 
> Hi All:
> 
> I am running GAP 3.4 on a Pentium 133 machine with 32 megs of memory (in
> a DOS window from within Windows 95).  I am interested in getting hold of
> all the Sylow_3 subgroups of Sp_6(5), 
Well, this is not possible on any computer, as there are >10^10 of them,
and each needs few kilobytes to be stored...

> but whenever I try the GAP command:
> 
> gap> SylowSubgroup(G,3);
> 
> where G has been defined as :
> 
> gap> G:=SymplecticGroup(6,5);
> 
> I get an out of memory error (after the machine sits and thinks for about
> thirty hours).  What am I doing wrong?
Well, the problem of computing *one* Sylow 3-subgroup of G
seems to be well within reach of your particular hardware - I can do
this on my Pentium 90 with 24 Mb, the computation would take few hours
though. The real difference is that I'm running Linux 2.0 instead of 
Win95...
Install Linux (which is better system  for all sorts of computational
problems anyway), and at least questions of computing such a subgroup
would be easy...

[...]

> Thanks in advance.
> 
> K.M.Das
> 
> **********************************************************************
> * Kaustuv Mukul Das                                                  *
> * Department of Mathematics             DON'T PANIC                  *
> * Eastern Illinois University                                        *
> * Charleston, IL 612920                           --  Douglas Adams  *
> * (217) 581 3828                                                     *
> **********************************************************************

D. Pasechnik <dima@win.tue.nl>
http://www.can.nl/~pasec


From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Tue Mar 11 10:39:13 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA03299; Tue, 11 Mar 97 10:39:11 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA08545; Tue, 11 Mar 97 10:42:33 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w4P25-0009L2C.970311.114349; Tue, 11 Mar 97 11:43 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w4P24-000I8AC; Tue, 11 Mar 97 11:43 MET
Message-Id:     <199703111632.LAA002.20@tp21.itp.uni-hannover.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1132 accepted at 11 Mar 97 11:41 +0100
Date:           Tue, 11 Mar 97 11:24:48 +0100
From: Norbert Dragon  <dragon@itp.uni-hannover.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: Sylow-3 Subgroups
Status: RO

Dear GAP-Forum,

Kaustuv M. Das wrote:
> 
> Hi All:
> 
> I am running GAP 3.4 on a Pentium 133 machine with 32 megs of memory (in
> a DOS window from within Windows 95).  I am interested in getting hold of
> all the Sylow_3 subgroups of Sp_6(5), 
> but whenever I try the GAP command:
> 
> gap> SylowSubgroup(G,3);
> 
> where G has been defined as :
> 
> gap> G:=SymplecticGroup(6,5);
> 
> I get an out of memory error (after the machine sits and thinks for about
> thirty hours).  What am I doing wrong?

On my Pentium 133 with 32 Mb with OS/2 Ver 4 it takes approximately
4 hours to produce the following result

gap> G:=SymplecticGroup(6,5);                                                  
SP(6,5)
gap> SylowSubgroup(G,3);
Subgroup( SP(6,5),
[ [ [ Z(5)^2, Z(5), Z(5), Z(5)^2, 0*Z(5), Z(5) ], [ Z(5)^2, Z(5)^2, Z(5)^0,
          Z(5)^0, 0*Z(5), 0*Z(5) ],
      [ Z(5), Z(5)^2, Z(5), Z(5), Z(5)^0, Z(5)^2 ],
      [ Z(5), Z(5), 0*Z(5), Z(5), Z(5)^2, Z(5)^3 ],
      [ Z(5)^3, Z(5), Z(5), Z(5)^0, 0*Z(5), Z(5)^3 ],
      [ Z(5), Z(5)^3, Z(5), Z(5)^3, Z(5)^0, 0*Z(5) ] ],
  [ [ Z(5)^0, Z(5)^2, Z(5), 0*Z(5), Z(5)^3, Z(5)^0 ],
      [ 0*Z(5), 0*Z(5), Z(5), Z(5), Z(5)^3, Z(5)^2 ],
      [ Z(5)^3, 0*Z(5), Z(5)^2, 0*Z(5), Z(5)^0, Z(5)^2 ],
      [ Z(5)^3, Z(5)^2, Z(5)^3, 0*Z(5), Z(5)^2, Z(5)^2 ],
      [ Z(5)^0, Z(5)^2, Z(5)^0, Z(5), Z(5)^0, 0*Z(5) ],
      [ Z(5)^2, Z(5)^2, Z(5)^3, Z(5), Z(5)^0, Z(5)^2 ] ],
  [ [ 0*Z(5), Z(5), Z(5)^0, Z(5)^3, Z(5), Z(5)^2 ],
      [ Z(5)^2, 0*Z(5), Z(5)^2, Z(5)^2, Z(5), Z(5)^0 ],
      [ Z(5)^3, 0*Z(5), Z(5)^2, Z(5)^2, 0*Z(5), Z(5) ],
      [ Z(5)^0, Z(5)^0, Z(5)^3, 0*Z(5), 0*Z(5), 0*Z(5) ],
      [ Z(5)^2, Z(5)^0, Z(5)^3, Z(5), 0*Z(5), Z(5)^2 ],
      [ Z(5)^0, Z(5)^0, Z(5), Z(5)^3, 0*Z(5), Z(5)^0 ] ],
  [ [ 0*Z(5), Z(5)^3, Z(5)^3, Z(5)^2, Z(5)^2, 0*Z(5) ],
      [ Z(5)^0, Z(5)^0, 0*Z(5), Z(5)^2, Z(5)^2, Z(5)^2 ],
      [ Z(5)^0, Z(5), Z(5)^0, Z(5)^0, Z(5)^3, Z(5)^3 ],
      [ Z(5)^0, Z(5)^0, Z(5)^0, Z(5)^0, 0*Z(5), Z(5) ],
      [ Z(5)^3, Z(5)^2, 0*Z(5), Z(5), 0*Z(5), Z(5)^2 ],
      [ 0*Z(5), Z(5)^2, Z(5), Z(5)^3, Z(5), Z(5) ] ] ] )
gap>

The question, what you are doing wrong, seems to be that you run the wrong
operating system.


Norbert Dragon


From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Tue Mar 11 11:09:30 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA03504; Tue, 11 Mar 97 11:09:28 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA09193; Tue, 11 Mar 97 11:12:45 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w4PVV-0009L6C.970311.121413; Tue, 11 Mar 97 12:14 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w4PVU-000I8AC; Tue, 11 Mar 97 12:14 MET
Message-Id:     <m0w4PLq-000KLzC.970311.120414@gonzo.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1135 accepted at 11 Mar 97 12:11 +0100
Date:           Tue, 11 Mar 97 12:04:14 +0100
From: Akos Seress <akos@math.ohio-state.edu>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: Sylow-3 subgroups
Status: RO

Dear GAP-Forum,

Kaustuv Das asked about computing Sylow-3 subgroups of Sp(6,5),
and Frank Luebeck responded by sending some functions converting
matrix groups to permutation groups more cleverly than the 
current GAP default. I'd like to add some comments on the topic. 

In Version 3.4.4 of GAP, released probably at the end of this month,
there is a new share package "matrix". Among other things, it contains 
a function 
PermGroupRepresentation(G, n)
which tries to find a permutation representation of the matrix group G
acting on at most $n$ points. Of course, at the problem at hand, it 
would not do better than Frank's functions, but at other examples 
it may find significantly smaller permutation domains. 

Computing the Sylow subgroups of a classical matrix group can, and 
should, be done WITHOUT converting to a permutation representation. 
We know that the Sylow-3 subgroup of Sp(6,5) is isomorphic to 
$C_3 \wr C_3$, and we know generators for it; the only question
is how to make it consistent with the generators given by GAP.

###########################

gap> g:=SymplecticGroup(6,5);
SP(6,5)
# we need to find the alternating form of $g$; I use the package "matrix",
# but the functions are already available in the incoming directory, 
# in the package "classic"
gap> RequirePackage("matrix");

  Loading the "Matrix Package", Version 1.0, by
  Frank Celler, Derek Holt, Charles Leedham-Green, Alice Niemeyer
  Eamon O'Brien, Cheryl Praeger, Anthony Pye, Sarah Rees

gap> RecognizeClassical(g);
rec(
  recognizeSL := << SL recognition record >>,
  dimension := 6,
  field := GF(5),
  isPossibleImprimitive := false,
  isPossibleTensorProduct := false,
  isPossibleTensorPower := false,
  recognizeSP := << SP recognition record >>,
  dualForm := [ [ 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), Z(5)^3 ], 
      [ 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), Z(5)^3, 0*Z(5) ], 
      [ 0*Z(5), 0*Z(5), 0*Z(5), Z(5)^3, 0*Z(5), 0*Z(5) ], 
      [ 0*Z(5), 0*Z(5), Z(5), 0*Z(5), 0*Z(5), 0*Z(5) ], 
      [ 0*Z(5), Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5) ], 
      [ Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5) ] ],
  type := "symplectic",
  containsSL := false,
  containsSP := true,
  containsSO := false,
  containsSU := false,
  possibleAlmostSimple := [  ],
  possibleAlternatingGroups := [  ],
  possibleChevalleyGroups := [  ] )

# we see that the form is the natural, anti-diagonal one
# we write a permutation matrix for the top of the wreath product
gap> syl1:=
[ [ 0*Z(5), Z(5)^0, 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5) ], 
  [ 0*Z(5), 0*Z(5), Z(5)^0, 0*Z(5), 0*Z(5), 0*Z(5) ], 
  [ Z(5)^0, 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5) ], 
  [ 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), Z(5)^0 ], 
  [ 0*Z(5), 0*Z(5), 0*Z(5), Z(5)^0, 0*Z(5), 0*Z(5) ], 
  [ 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), Z(5)^0, 0*Z(5) ] ];;

# for the bottom of the wreath product, we can work with 2x2 matrices
# these are so small that we can let the default functions do the work
# note that in dimension 2, symplectic = special linear

gap> gr:=SpecialLinearMatGroup(2,5);
SL(2,5)
gap> Syl:=SylowSubgroup(gr,3);
Subgroup( SL(2,5), [ [ [ Z(5), Z(5)^0 ], [ Z(5)^3, Z(5) ] ] ] )

# copy the generator of Syl into an identity matrix, acting on the 
# 3rd and 4th basis vectors

gap> syl2:=
[ [ Z(5)^0, 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5) ], 
  [ 0*Z(5), Z(5)^0, 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5) ], 
  [ 0*Z(5), 0*Z(5), Z(5), Z(5)^0, 0*Z(5), 0*Z(5) ], 
  [ 0*Z(5), 0*Z(5), Z(5)^3, Z(5), 0*Z(5), 0*Z(5) ], 
  [ 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), Z(5)^0, 0*Z(5) ], 
  [ 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), Z(5)^0 ] ];;

# We are done, because syl1, syl2 generate a Sylow-3 subgroup, 
# but we should NOT call Subgroup(g,[syl1,syl2]),
# because it would convert to permutation groups to check that 
# syl1, syl2 are in $g$. Containment in $g$ can be tested using the form.

gap> form:=g.recognizeClassicalCLG.recognizeSP.symplecticForm;
[ [ 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), Z(5)^3 ], 
  [ 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), Z(5)^3, 0*Z(5) ], 
  [ 0*Z(5), 0*Z(5), 0*Z(5), Z(5)^3, 0*Z(5), 0*Z(5) ], 
  [ 0*Z(5), 0*Z(5), Z(5), 0*Z(5), 0*Z(5), 0*Z(5) ], 
  [ 0*Z(5), Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5) ], 
  [ Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5) ] ]
gap> TransposedMat(syl1)*form*syl1 = form;
true
gap> TransposedMat(syl2)*form*syl2 = form;
true

########################

The computation was done in the default 4MB GAP session. 
The most time consuming part of the computation is to type in the matrices 
syl1, syl2, but of course they could have been generated by GAP as well. 
The moral of the story is that it is possible to compute with matrix groups 
in GAP, but programming requires more thought than in the case of 
permutation or ag-groups. I'd like to call your attention to an 
announcement following this message, about a workshop on permutation 
and matrix group methods. The first half of the workshop is a 
tutorial about GAP and, among other topics, we intend to cover 
problems like the above. 

Finally, a remark about Sylow subgroup computations in permutation groups.
The current GAP function uses backtrack; however, Bill Kantor has a polynomial
time algorithm, and recently Prabhav Morje designed a nearly linear time 
version for groups without composition factors of exceptional Lie type. 
The latter should be practical, and an implementation will sooner or
later find its way into GAP. The idea is to start with a composition 
series, compute the natural matrix representation of the composition 
factors, find Sylow subgroups in the factors as we did above in Sp(6,5),
and then paste together to a Sylow subgroup of the entire group. 
When this will be programmed, there will be special functions for 
computing Sylow subgroups of classical matrix groups. 

Akos Seress

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Tue Mar 11 13:11:48 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA04009; Tue, 11 Mar 97 13:11:45 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA11213; Tue, 11 Mar 97 13:15:07 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w4RPI-0009L6C.970311.141556; Tue, 11 Mar 97 14:15 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w4RPH-000I8AC; Tue, 11 Mar 97 14:15 MET
Message-Id:     <25478.199703111304@thames>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1136 accepted at 11 Mar 97 14:13 +0100
Date:           Tue, 11 Mar 97 13:04:09 +0000 (GMT)
From: Derek Holt <dfh@maths.warwick.ac.uk>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: Sylow-3 Subgroups
Status: RO

Dear GAP-forum

Kaustuv M. Das asked:

> I am running GAP 3.4 on a Pentium 133 machine with 32 megs of memory (in 
> a DOS window from within Windows 95).  I am interested in getting hold of 
> all the Sylow_3 subgroups of Sp_6(5), but whenever I try the GAP command:

Three people have responded to this query, but none of them seem to have
attempted to answer what was asked. He wants to find ALL Sylow 3-subgroups,
not just one of them!

The way to do that is to find the normaliser of one Sylow subgroup, find
coset representatives for it in the whole group, then conjugate your
Sylow subgroup by these coset representatives.

Akos Seress would probably want to compute the normaliser within the matrix
group, using standard constructions for classical groups, but currently it
is probably easiest to work in the permutation representation - there is
in fact nothing lost by working in Psp(6,5), since that only loses the
centre of order 2.

Well I computed the normaliser, and it has order 324 in PSp(6,5) (and
hence 648 in Sp(6,5)), which means index 705250000000 in the whole group.

Oh dear! There appear to be 705250000000 Sylow 3-subgroups. No wonder
your computer was struggling. Are you sure you want them all?

Derek Holt.

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Wed Mar 12 20:14:53 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA13676; Wed, 12 Mar 97 20:14:50 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA01536; Wed, 12 Mar 97 20:18:13 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w4uQY-0009L6C.970312.211510; Wed, 12 Mar 97 21:15 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w4uQX-000I8AC; Wed, 12 Mar 97 21:15 MET
Message-Id:     <199703122002.JAA04596@matu2.math.auckland.ac.nz>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1137 accepted at 12 Mar 97 21:12 +0100
Date:           Thu, 13 Mar 97 09:02:49 +1300
From: Eamonn O'Brien <obrien@math.auckland.ac.nz>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        BibTeX database for Group Theory
Status: RO

The latest version of a BibTeX database containing about 
750 references for various areas of group theory has been 
put on anonymous FTP on ftpmaths.anu.edu.au (IP 150.203.33.4)

The relevant files are 

/pub/bib/algebra.bib 
/pub/bib/README  

The database file is algebra.bib 
The file README describes the consistent key system used. 

The database can also be accessed via my home page 
http://www.math.auckland.ac.nz/~obrien

The database can be used in the usual fashion with 
flavours of TeX, and the standard .bst files can be 
used to process its contents.

Many of the papers included in the database cover aspects 
of Computational Group Theory, but other areas of group 
theory -- particularly, about p-groups and soluble groups 
-- are referenced as well. However, be warned that 
the overall collection is somewhat idiosyncratic.

Reasonable care has been taken to ensure that the 
information is accurate and moderately consistent;
however, a user should exercise care.

We update the distributed version at intervals.
Comments and criticisms are welcomed.  We will
fix errors and include new material which others care 
to supply. However, such material should be in complete 
form, and use the same "key" conventions. 

Thanks to all who have contributed to this collection. 

Eamonn O'Brien

----------------------------------------------------------------
Mathematics, University of Auckland, Private Bag 92019, Auckland
E-mail: obrien@math.auckland.ac.nz
WWW:    http://www.math.auckland.ac.nz/~obrien
FTP:    ftpmaths.anu.edu.au /pub/obrien/papers

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Wed Mar 12 20:33:51 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA13809; Wed, 12 Mar 97 20:33:49 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA01644; Wed, 12 Mar 97 20:37:12 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w4ulx-0009LCC.970312.213717; Wed, 12 Mar 97 21:37 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w4ulw-000I8AC; Wed, 12 Mar 97 21:37 MET
Message-Id:     <199703122022.JAA04636@matu2.math.auckland.ac.nz>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1138 accepted at 12 Mar 97 21:34 +0100
Date:           Thu, 13 Mar 97 09:22:57 +1300
From: Eamonn O'Brien <obrien@math.auckland.ac.nz>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        BibTeX database for Group Theory
Status: RO

Dear GAP-Forum,

The latest version of a BibTeX database containing about 
750 references for various areas of group theory has been 
put on anonymous FTP on ftpmaths.anu.edu.au (IP 150.203.33.4)

The relevant files are 

/pub/bib/algebra.bib 
/pub/bib/README  

The database file is algebra.bib 
The file README describes the consistent key system used. 

The database can also be accessed via my home page 
http://www.math.auckland.ac.nz/~obrien

The database can be used in the usual fashion with 
flavours of TeX, and the standard .bst files can be 
used to process its contents.

Many of the papers included in the database cover aspects 
of Computational Group Theory, but other areas of group 
theory -- particularly, about p-groups and soluble groups 
-- are referenced as well. However, be warned that 
the overall collection is somewhat idiosyncratic.

Reasonable care has been taken to ensure that the 
information is accurate and moderately consistent;
however, a user should exercise care.

We update the distributed version at intervals.
Comments and criticisms are welcomed.  We will
fix errors and include new material which others care 
to supply. However, such material should be in complete 
form, and use the same "key" conventions. 

Thanks to all who have contributed to this collection. 

Eamonn O'Brien

----------------------------------------------------------------
Mathematics, University of Auckland, Private Bag 92019, Auckland
E-mail: obrien@math.auckland.ac.nz
WWW:    http://www.math.auckland.ac.nz/~obrien
FTP:    ftpmaths.anu.edu.au /pub/obrien/papers

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Mon Mar 17 10:42:59 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA01113; Mon, 17 Mar 97 10:42:57 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA16252; Mon, 17 Mar 97 10:00:45 GMT
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w6ZCy-0009L2C.970317.110000; Mon, 17 Mar 97 11:00 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w6ZCx-000I89C; Mon, 17 Mar 97 10:59 MET
Message-Id:     <m0w6Z0v-000KLzC.970317.104733@gonzo.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1139 accepted at 17 Mar 97 10:57 +0100
Date:           Mon, 17 Mar 97 10:47:33 +0100
From: Akos Seress <akos@math.ohio-state.edu>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        workshop on permutation and matrix group methods
Status: RO

Dear Forum Members,

as part of the European Summer on Computational Group Theory, a workshop

   ``Computational methods for permutation and matrix groups''

will be held from May 26, 1997 -- June 1, 1997 in Aachen.
The workshop starts at May 26 (Monday) afternoon. In the first three
days, a tutorial is given about matrix and permutation group computations
with GAP, and about the most important features of GAP 4 which changed 
compared to Version 3. From Thursday to Saturday (including a full 
program on Saturday), research talks (both about the development of 
algorithms and applications) are planned. 
As further details of the program become available, the conference 
homepage at 

http://www.math.rwth-aachen.de/~Akos.Seress/Workshop97.html

will be updated. Although the deadline for registration expired last 
Saturday, we have some space left. If interested, please send an 
email to    Akos.Seress@math.rwth-aachen.de   by the evening of 
Thursday, March 20. 

Finances: no registration fee. Limited support toward local expenses 
in Aachen is available. 

Akos Seress

From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Mon Mar 24 12:32:37 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA27404; Mon, 24 Mar 97 12:32:36 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA08080; Mon, 24 Mar 97 12:36:10 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w98wO-0009L3C.970324.133332; Mon, 24 Mar 97 13:33 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w98wN-000I8AC; Mon, 24 Mar 97 14:33 MET DST
Message-Id:     <Pine.ULT.3.91.970324130953.11736A-100000@lgdx02>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1141 accepted at 24 Mar 97 14:31 +0100
Date:           Mon, 24 Mar 97 13:17:21 +0100
From: Gustavo Fernandez Alcober <mtpfealg@lg.ehu.es>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        line length
Status: RO

Dear Gap-Forum

I want to make GAP print output to a file with more than 80 characters
per line (I want to print this file with a small size font). Is there
any way of doing this - maybe some variable controlling this feature -
without executing GAP with the option -x?
(I just  want to change the length of the line in the output file, not on
my terminal.)

Thank you,

Gustavo Fernandez Alcober


From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Mon Mar 24 15:52:20 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA02017; Mon, 24 Mar 97 15:52:19 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA09672; Mon, 24 Mar 97 15:55:53 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w9C6l-0009L4C.970324.165627; Mon, 24 Mar 97 16:56 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w9C6k-000I8AC; Mon, 24 Mar 97 17:56 MET DST
Message-Id:     <m0w9C1H-0009gvC.970324.165047@hobbes.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1142 accepted at 24 Mar 97 17:54 +0100
Date:           Mon, 24 Mar 97 16:50:47 +0100
From: Alexander Hulpke <alexander.hulpke@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: line length
Status: RO

Dear Gap-Forum

Gustavo Fernandez Alcober asked:
> I want to make GAP print output to a file with more than 80 characters
> per line (I want to print this file with a small size font). Is there
> any way of doing this - maybe some variable controlling this feature -
> without executing GAP with the option -x?
> (I just  want to change the length of the line in the output file, not on
> my terminal.)

The command 

SizeScreen([x,y]);

sets the screen size to y lines of length x each. 'Print' respects these
variables. As these variables also affect the screen output, you just should
reset them after printing. The manual will tell you more.

Best,

   Alexander Hulpke


From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Tue Mar 25 17:42:22 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA10006; Tue, 25 Mar 97 17:42:21 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA18882; Tue, 25 Mar 97 17:45:55 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w9aHK-0009LBC.970325.184458; Tue, 25 Mar 97 18:44 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w9aHJ-000I8AC; Tue, 25 Mar 97 19:44 MET DST
Message-Id:     <Pine.A32.3.91.970325113147.17154A-100000@SUL-ROSS-1.sulross.edu>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1143 accepted at 25 Mar 97 19:42 +0100
Date:           Tue, 25 Mar 97 11:32:31 -0600
From: Peter Farbman <farbman@sul-ross-1.sulross.edu>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Using GAP via the web?
Status: RO

I've been having all sorts of difficulties trying to set up GAP on
computers in our lab.  At this point, in fact, I've pretty much given up. 
I would, however, like for my students to have access somehow.  One of 
them claims that at some point he happened upon a web page that allowed 
him to use GAP interactively, but he has been unable to find it since.  
Does anyone know anything about this?  Is this a legitimate possibility 
or was it just figment of his imagination?

S. Peter Farbman
Department of Mathematics
SRSU Box C-18
Alpine, TX  79832
farbman@sul-ross-1.sulross.edu


From GAP-Forum-Sender@Math.RWTH-Aachen.DE  Wed Mar 26 08:23:10 1997
Return-Path: <GAP-Forum-Sender@Math.RWTH-Aachen.DE>
Received: from tamdhu.dcs.st-andrews.ac.uk by gregory.dcs.st-and.ac.uk (4.1/SMI-4.1)
	id AA16826; Wed, 26 Mar 97 08:23:09 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from hurin.math.rwth-aachen.de by tamdhu.dcs.st-andrews.ac.uk (4.1/SMI-4.1)
	id AA23465; Wed, 26 Mar 97 08:26:44 GMT
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Received: from samson.math.rwth-aachen.de by hurin.math.rwth-aachen.de with smtp
	(Smail3.1.28.1 #30) id m0w9o19-0009LBC.970326.092511; Wed, 26 Mar 97 09:25 MET
Received: by samson.math.rwth-aachen.de (Smail3.1.28.1 #11)
	id m0w9o18-000I8AC; Wed, 26 Mar 97 10:25 MET DST
Message-Id:     <m0w9nqE-000KgoC.970326.091354@elmo.math.rwth-aachen.de>
Sender: GAP-Forum-Sender@Math.RWTH-Aachen.DE
Errors-To: GAP-Forum-Errors@Math.RWTH-Aachen.DE
Reply-To: GAP Forum <GAP-Forum-Reply@Math.RWTH-Aachen.DE>
X-Miles:        GAP Forum article 1144 accepted at 26 Mar 97 10:22 +0100
Date:           Wed, 26 Mar 97 09:13:00 +0100 (MET)
From: Heiko Theissen <heiko.theissen@math.rwth-aachen.de>
To: Multiple recipients of list <GAP-Forum@Math.RWTH-Aachen.DE>
Subject:        Re: Using GAP via the web?
Status: RO

Dear Peter Farbman, dear GAP forum,

I know of one or two WWW pages where web surfers  can ``try out GAP'',
i.e., they can send a one-line command via the  web which will then be
executed by GAP one a remote machine and the  result will be displayed
on the WWW page. These pages have been set up to advertise GAP and are
surely not  intended as an alternative  to installing GAP on  your own
system. It   is certainly infeasible to   use  this facility  for your
purposes. The computers  on which the  calculations would be performed
would be overloaded if more than three people used GAP this way at the
same time. Also for  serious mathematical computations you would  have
to transfer such an amount of information that it would simply jam the
net if GAP could be used this way.

To demonstrate that  your student did not make  up  something, you can
try out the page

    http://www.math.utsa.edu/srv_gap.html

but you should really try to install GAP on your machines. If you have
problems with this, it would be useful to know  what machines you have
in  your lab (processor, operating system  etc.) and where exactly the
difficulties arise: during compilation, when files cannot be found, or
at runtime?

If you can give us more detailed information,  we can perhaps help you
with the installation. Please do not send the technical details to the
GAP forum, but rather to

    Gap-Trouble@math.rwth-aachen.de

I hope this helps,

Heiko Thei{\ss}en

