> < ^ Date: Tue, 03 Aug 1999 15:40:15 +0100 (BST)
> < ^ From: Alexander Hulpke <hulpke@math.colostate.edu >
^ Subject: Bugfix1 for GAP4.1

Dear GAP-Forum,

Despite long testing of version 4.1, some errors inevitably came up...

This is to announce bugfix number 1 for GAP 4.1. The priority of this fix
is high.

You should not apply this fix to any version of GAP3.

This fix corrects:
1) Calls of `LLLReducedBasis' to zero matrices and `ProductCoeffs' to
empty lists.
2) It adds a file to the tables of marks library that accidentally only got
wrapped up in the extended tables of marks version.
3) It fixes a potential problem with `IntFFE' for large finite fields.
4) Non-reentrant `UniteSet' code.
5) Problematic type casts in the `RemInt' code that can cause wrong results,
in particular on 64 bit architectures.
6) Cut/Paste problems in the Macintosh version.

Error 5 might produce wrong results.

Many thanks to:
Ken Brown for reporting error 2.
Robert Morse for reporting error 4.
Akihiro Munemasa for reporting error 6.

Burkhard H"ofling for fixing error 6 and for the Macintosh binaries.

Load the zoo archive 'fix4r1n1.zoo' from the bugfixes web page
http://www-gap.dcs.st-and.ac.uk/~gap/Info4/bugfixes.html
Alternatively you can find this file in the 'bugfixes' directory of the
GAP4 ftp distribution.

Unpack the file in the home directory of your GAP distribution (the
directory containing the 'lib' and 'grp' directories) using 'unzoo -x
fix4r1n1.zoo'. `unzoo' may ask you for permissions to overwrite files,
answer this with Y)es or A)ll. This will replace the erraneous file by
fixed versions.

(On a PC or a Mac you will have to copy `unzoo' in the same directory and
enter the argument line after the call to 'unzoo'.)
Make sure you have write permissions when applying the fix.

This fix changes the kernel. You have to recompile by calling `make' in the
directory in which you unpacked the fix.

Windows users can find a new binary in the file wbin4r1n1.zoo in the
`bugfixes' directory: Extract this archive in the same place as the fix
archive to get a new gapw95.exe file.

Macintosh users should download the file bin4r1n1.sit in the `bugfixes'
directory which contains binaries for both 68k and PPC machines.

If you get one of these precompiled binaries you do not need to get any
precompiled binaries that would have come with earlier fixes (these old
binaries are obsolete now). Similarly, if you cannot find these binaries but
have further, newer, fixes to install check whether new binaries with these
fixes did not make the binaries of this fix obsolete.

You can remove the file 'description1' afterwards.

Alexander Hulpke, Willem de Graaf, 3-Aug-99

#############################################################################
##
## These commands should run without error if the fix has been applied.
##
a:=2^31+1; b:=2^30+1;
if RemInt(a,b)<> a mod b then Error("RemInt"); fi;
a:=2^66+1; b:=2^65+1; # for alpha we need to be bigger
if RemInt(a,b)<> a mod b then Error("RemInt"); fi;
ProductCoeffs([],0,[],0);
A := [[0,0],[0,0]];
LLLReducedBasis( A, "linearcomb");
dom := Domain([1..2]);
el := Elements(dom);
tl := List([1,2],x->List(el,y->Tuple([y,el[x]])));
gens := List(tl,x->GeneralMappingByElements(dom,dom,x));
MagmaWithOne(gens);

# The following command requires the tables of marks to be installed. If
# they are not installed it will issue a - then harmless - error.
tom:=TableOfMarks("A5");


> < [top]