> < ^ Date: Wed, 29 Apr 1992 12:51:37 +0200
^ From: Peter Dobcsanyi <dobcsany@mat.aukuni.ac.nz >
> ^ Subject: gap bugs

Hi,

Last week I installed the new gap-3.1 in our departmental workstation (Sparc)
network. I used the Gnu C compiler (gcc 2.1) and it worked fine.

The improvement from gap-2.4 to gap-3.1 is quite big, MANY THANKS to
ALL DEVELOPERS of GAP, in particular that they provide this enormous
system free of charge.

Started using the system we encountered two problems (See below).
Because I have jointed to this mailing list just recently, I wouldn't be
surprised if these problems were fixed for now. In that case, please,
ignore my bug-report.

............................................................................

Bug 1
-----

In the "init.g" file the "ReplacedString" routine searches and replaces
the "old" string segment from the beginning of the "string" so if one
happens to install the gap library directories (lib,grp,...) in
"/usr/local/lib/gap" the following function, for example,

--  GRPNAME := ReplacedString( LIBNAME, "lib", "grp" );

results "/usr/local/grp/gap/lib/" and not the desirable
"/usr/local/lib/gap/grp/".

My rather drastical fix for this

++  GRPNAME := ConcatenationString(
                        SubString(LIBNAME,1,LengthString(LIBNAME)-4),
                        "grp/" );

(I did similarly for TWONAME TBLNAME.)

Bug 2
-----

There is an undiserable global variable (f) in the
"ElementaryAbelianPermGroup" routine in the "permgrp.grp" file.
Probably, it was a typing error.

The original code:

--  ElementaryAbelianPermGroup := function ( n )
--      local   facs,       # factors of <n>
--              C;          # cyclic group of prime order
--
--      f := Factors( n );
--      C := CyclicPermGroup( f[ 1 ] );
--      return DirectProduct( List( f, n -> C ) );
--  end;

My fixed version:

++  ElementaryAbelianPermGroup := function ( n )
++      local   facs,       # factors of <n>
++              C;          # cyclic group of prime order
++
++      facs := Factors( n );
++      C := CyclicPermGroup( facs[ 1 ] );
++      return DirectProduct( List( facs, n -> C ) );
++  end;

Best regards

Peter Dobcsanyi

Department of Mathematics and Statistics
The University of Auckland
Auckland
New Zealand


> < [top]