As several of you pointed out, due to miscommunication on our side some
corrections intended for bugfix 2 did not make it, despite being announced.
Because of this, bugfix 3 follows so quickly to bugfix 2. It incorporates
all the corrections from previous fixes.

Apologies for the extra work of installing this fix!

Alexander Hulpke

This is to announce bugfix number 3 for GAP 4.3. The priority of this fix
is high.

You should not apply this fix to any version of GAP before GAP 4.3. (If you
run such an old version, please update to GAP 4.3 (and this bugfix) as
release 4.3 corrects many problems.)
GAP Bugfixes now are comprehensive. If you forgot to install prior bugfixes,
you do only need to install this, and no prior ones.

This fix corrects:

1) An error in IdGroup that mistakenly was not corrected in Bugfix 2.
2) An inconsistent setting of IndicesNormalSteps.
3) A problem with the inversion routine for quaternions.

Error 1 and 3 may lead to wrong results.
Errors 2 will cause GAP to stop with an error message.

The following errors were corrected in earlier bugfixes, which are
incorporated into this one:

Corrections from bugfix 1

1) A bug in the handling of Processes with empty input or output streams.
2) An error in the function for computing quotients of algebra modules.
3) An error in computing the strongly connected components of a binary
relation in which incorrect results can be returned.
4) A "no method found" error in OrbitStabilizerAlgorithm for infinite
groups.
5) Calculation of iterated automorphism groups might stop with an error message.
6) A segmentation fault when converting length 0 compressed vectors to
larger fields
7) The output of the internal pager (see 'Pager') is no longer copied to
log files.
8) Some memory is not freed up as soon as it could be, resulting in
over-use of memory and over-large saved workspaces
9) Saving and loading a workspace using a kernel containing a
statically loaded user module (most likely a compiled GAP file)
did not work.
10) Problems with EulerianFunction for certain types of groups

Corrections from bugfix 2

1) A segmentation fault when appending to a length 0 compressed vector
over GF2.
2) An error in the computation of inverses in quaternion algebras with
non-standard parameters.
3) The result of 'ProjectiveSymplecticGroup(n,q);'.
4) `GeneratorOfCyclicGroup' for a trivial pc group.
5) A problem in backtrack routines using `Suborbits' if the group has
fixed points in the range [1..max(Omega)].
6) A problem with `CharacterTableDirectProduct' if exactly one argument
is a Brauer table.
7) Problems with `IntScalarProduct' and `NonnegIntScalarProducts'
if the third argument is not a plain list (this situation does not occur
in GAP library functions).
8) A Problem with GQuotient
9) A problem with the linear algebra methods for Lie algebra cohomology.
10) A Problem with requesting transitive groups of degree including 1
11) A Problem with inverting lists of compressed vectors over fields
of order greater than 2.
12) An error in computing whether an element is in a Green's D equivalence
class or not.
13) A missing method for `MovedPoints(<perm>)'
14) The method IsGreensLessThanOrEqual should work for Green's D classes for
finite groups.
15) The method GroupHClassOfGreensDClass was not implemented and is required
for the Rees Matrix methods.
16) The methods AssociatedReesMatrixSemigroupOfDClass, IsZeroSimpleSemigroup,
IsomorphismReesMatrixSemigroup, and SandwichMatrixOfReesZeroMatrixSemigroup
all create Greens classes using obsolete methods which for some semigroups
leads to infinite recursion or causes GAP to stop with an error message.
17) A problem with `CentralizerModulo' for permutation groups.
18) A wrong name for PGL(2,49) in the primitive groups library of degree 50
20) Missing `Representative' methods for certain trivial groups and
trivial spaces.
21) A missing setting of `IndicesNormalSteps'

Installing the bugfix.
======================

Load the zoo archive `fix4r3n3.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
fix4r3n3.zoo'. `unzoo' may ask you for permissions to overwrite files,
answer this with Y)es or A)ll. This will replace the erroneous files 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 incorporates changes in the kernel that came with bugfix 2. If
you did not install this bugfix (or do not remember installing the bugfix),
you have to recompile by issuing the commands:

make clean
./configure
make

in the directory in which you unpacked the fix, or -- for Windows or
Macintosh -- download (and unpack) the most recent binary for your machine.

You can remove the file `description3' afterwards.

After installing the bugfix you can test whether
the bugfix has been applied correctly by starting GAP from the `gap4r3'
directory and issuing

(The output should be like this if the bugfixes have been installed
correctly. The number of GAP4stones may vary according to your system.)

Running this test is not a necessary part of installing a bug fix, but only
serves as a confirmation that everything went well. The test might run for
a long time and GAP will not output information while running. Note that it
is not possible to run the test twice without restarting GAP and that an
interruption of the test with CTRL-C will produce lots of (harmless) error
messages.