
| Current Path : /usr/share/gap/doc/changes/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : //usr/share/gap/doc/changes/chap8.txt |
[1X8 [33X[0;0YChanges between [5XGAP[105X[101X[1X 4.3 and [5XGAP[105X[101X[1X 4.4[133X[101X
[33X[0;0YThis chapter contains an overview of most important changes introduced in
[5XGAP[105X 4.4. It also contains information about subsequent update releases of
[5XGAP[105X 4.4.[133X
[1X8.1 [33X[0;0YChanges in the core [5XGAP[105X[101X[1X system introduced in [5XGAP[105X[101X[1X 4.4[133X[101X
[1X8.1-1 [33X[0;0YPotentially Incompatible Changes[133X[101X
[30X [33X[0;6YThe mechanism for the loading of Packages has changed to allow easier
updates independent of main [5XGAP[105X releases. Packages require a file
[11XPackageInfo.g[111X now. The new [11XPackageInfo.g[111X files are available for all
packages with the new version of GAP (see [14XReference: PackageInfo.g for
a GAP package[114X).[133X
[30X [33X[0;6Y[2XIsSimpleGroup[102X ([14XReference: IsSimpleGroup[114X) returns false now for the
trivial group.[133X
[30X [33X[0;6Y[2XPrimeBlocks[102X ([14XReference: PrimeBlocks[114X): The output format has changed.[133X
[30X [33X[0;6YDivision rings (see [2XIsDivisionRing[102X ([14XReference: IsDivisionRing[114X)) are
now implemented as [2XIsRingWithOne[102X ([14XReference: IsRingWithOne[114X).[133X
[30X [33X[0;6Y[2XDirectSumOfAlgebras[102X ([14XReference: DirectSumOfAlgebras for two algebras[114X):
[22Xp[122X-th power maps are compatible with the input now.[133X
[30X [33X[0;6YThe print order for polynomials has been changed.[133X
[33X[0;0YThese changes are, in some respects, departures from our policy of
maintaining upward compatibility of documented functions between releases.
In the first case, we felt that the old behavior was sufficiently
inconsistent, illogical, and impossible to document that we had no
alternative but to change it. In the case of the package interface, the
change was necessary to introduce new functionality. The planned and phased
removal of a few unnecessary functions or synonyms is needed to avoid
becoming buried in [21Xlegacy[121X interfaces, but we remain committed to our policy
of maintaining upward compatibility whenever sensibly possible.[133X
[30X [33X[0;6YGroebner Bases:[133X
[33X[0;6YBuchberger's algorithm to compute Groebner Bases has been implemented
in GAP. (A. Hulpke)[133X
[30X [33X[0;6YFor large scale Groebner Basis computations there also is an interface
to the Singular system available in the [5XSingular[105X
([7Xhttps://www.gap-system.org/Packages/singular.html[107X) package. (M.
Costantini and W. de Graaf)[133X
[30X [33X[0;6YNew methods for factorizing polynomials over algebraic extensions of
the rationals have been implemented in GAP. (A. Hulpke)[133X
[30X [33X[0;6YFor more functionality to compute with algebraic number fields there
is an interface to the Kant system available in the [5XAlnuth[105X
([7Xhttps://www.gap-system.org/Packages/alnuth.html[107X) package. (B. Assmann
and B. Eick)[133X
[30X [33X[0;6YA new functionality to compute the minimal normal subgroups of a
finite group, as well as its socle, has been installed. (B. Höfling)[133X
[30X [33X[0;6YA fast method for recognizing whether a permutation group is symmetric
or alternating is available now (A. Seress)[133X
[30X [33X[0;6YA method for computing the Galois group of a rational polynomial is
available again. (A. Hulpke)[133X
[30X [33X[0;6YThe algorithm for [2XBrauerCharacterValue[102X ([14XReference:
BrauerCharacterValue[114X) has been extended to the case where the
splitting field is not supported in [5XGAP[105X. (T. Breuer)[133X
[30X [33X[0;6YBrauer tables of direct products can now be constructed from the known
Brauer tables of the direct factors. (T. Breuer)[133X
[30X [33X[0;6YBasic support for vector spaces of rational functions and of uea
elements is available now in [5XGAP[105X. (T. Breuer and W. de Graaf)[133X
[30X [33X[0;6YVarious new functions for computations with integer matrices are
available, such as methods for computing normal forms of integer
matrices as well as nullspaces or solutions systems of equations. (W.
Nickel and F. Gähler)[133X
[1X8.1-2 [33X[0;0YNew Packages[133X[101X
[33X[0;0YThe following new Packages have been accepted.[133X
[30X [33X[0;6Y[5XAlnuth[105X: Algebraic Number Theory and an interface to the Kant system.
([7Xhttps://www.gap-system.org/Packages/alnuth.html[107X) By B. Assmann and B.
Eick.[133X
[30X [33X[0;6Y[5XLAGUNA[105X: Computing with Lie Algebras and Units of Group Algebras.
([7Xhttps://www.gap-system.org/Packages/laguna.html[107X) By V. Bovdi, A.
Konovalov, R. Rossmanith, C. Schneider.[133X
[30X [33X[0;6Y[5XNQ[105X: The ANU Nilpotent Quotient Algorithm.
([7Xhttps://www.gap-system.org/Packages/nq.html[107X) By W. Nickel.[133X
[30X [33X[0;6Y[5XKBMAG[105X: Knuth-Bendix for Monoids and Groups.
([7Xhttps://www.gap-system.org/Packages/kbmag.html[107X) By D. Holt.[133X
[30X [33X[0;6Y[5XPolycyclic[105X: Computation with polycyclic groups.
([7Xhttps://www.gap-system.org/Packages/polycyclic.html[107X) By B. Eick and
W. Nickel.[133X
[30X [33X[0;6Y[5XQuaGroup[105X: Computing with Quantized Enveloping Algebras.
([7Xhttps://www.gap-system.org/Packages/quagroup.html[107X) By W. de Graaf.[133X
[1X8.1-3 [33X[0;0YPerformance Enhancements[133X[101X
[30X [33X[0;6YThe computation of irreducible representations and irreducible
characters using the Baum-Clausen algorithm and the implementation of
the Dixon-Schneider algorithm have been speeded up.[133X
[30X [33X[0;6YThe algorithm for [2XPossibleClassFusions[102X ([14XReference:
PossibleClassFusions[114X) has been changed: the efficiency is improved and
a new criterion is used. The algorithm for [2XPossibleFusionsCharTableTom[102X
([14XReference: PossibleFusionsCharTableTom[114X) has been speeded up. The
method for [2XPrimeBlocks[102X ([14XReference: PrimeBlocks[114X) has been improved
following a suggestion of H. Pahlings.[133X
[30X [33X[0;6YNew improved methods for normalizer and subgroup conjugation in [22XS_n[122X
have been installed and new improved methods for
[2XIsNaturalSymmetricGroup[102X ([14XReference: IsNaturalSymmetricGroup[114X) and
[2XIsNaturalAlternatingGroup[102X ([14XReference: IsNaturalAlternatingGroup[114X) have
been implemented. These improve the available methods when groups of
large degrees are given.[133X
[30X [33X[0;6YThe partition split method used in the permutation backtrack is now in
the kernel. Transversal computations in large permutation groups are
improved. Homomorphisms from free groups into permutation groups now
give substantially shorter words for preimages.[133X
[30X [33X[0;6YThe membership test in [2XSP[102X ([14XReference: Sp for dimension and field size[114X)
and [2XSU[102X ([14XReference: SU[114X) groups has been improved using the invariant
forms underlying these groups.[133X
[30X [33X[0;6YAn improvement for the cyclic extension method for the computation of
subgroup lattices has been implemented.[133X
[30X [33X[0;6YA better method for [2XMinimalPolynomial[102X ([14XReference: MinimalPolynomial[114X)
for finite field matrices has been implemented.[133X
[30X [33X[0;6YThe display has changed and the arithmetic of multivariate polynomials
has been improved.[133X
[30X [33X[0;6YThe [2XLogMod[102X ([14XReference: LogMod[114X) function now uses Pollard's rho method
combined with the Pohlig/Hellmann approach.[133X
[30X [33X[0;6YVarious functions for sets and lists have been improved following
suggestions of L. Teirlinck. These include: [2XSort[102X ([14XReference: Sort[114X),
[2XSortex[102X ([14XReference: Sortex[114X), [2XSortParallel[102X ([14XReference: SortParallel[114X),
[2XSortingPerm[102X ([14XReference: SortingPerm[114X), [2XNrArrangements[102X ([14XReference:
NrArrangements[114X).[133X
[30X [33X[0;6YThe methods for [2XStructureConstantsTable[102X ([14XReference:
StructureConstantsTable[114X) and [2XGapInputSCTable[102X ([14XReference:
GapInputSCTable[114X) have been improved in the case of a known (anti-)
symmetry following a suggestion of M. Costantini.[133X
[33X[0;0YThe improvements listed in this Section have been implemented by T. Breuer
and A. Hulpke.[133X
[1X8.1-4 [33X[0;0YNew Programming and User Features[133X[101X
[30X [33X[0;6YThe 2GB limit for workspace size has been removed and version numbers
for saved workspaces have been introduced. (S. Linton and B. Höfling)[133X
[30X [33X[0;6YThe limit on the total number of types created in a session has been
removed. (S. Linton)[133X
[30X [33X[0;6YThere is a new mechanism for loading packages available. Packages need
a file [11XPackageInfo.g[111X now. (T. Breuer and F. Lübeck; see [14XReference:
PackageInfo.g for a GAP package[114X).[133X
[33X[0;0YFinally, as always, a number of bugs have been fixed. This release thus
incorporates the contents of all the bug fixes which were released for [5XGAP[105X
4.3. It also fixes a number of bugs discovered since the last bug fix.[133X
[33X[0;0YBelow we list changes in the main system (excluding packages) that have been
corrected or added in bugfixes and updates for [5XGAP[105X 4.4.[133X
[1X8.2 [33X[0;0Y[5XGAP[105X[101X[1X 4.4 Bugfix 2 (April 2004)[133X[101X
[33X[0;0YFixed bugs which could lead to crashes:[133X
[30X [33X[0;6YA crash when incorrect types of arguments are passed to [10XFileString[110X.[133X
[33X[0;0YOther fixed bugs:[133X
[30X [33X[0;6YA bug in [10XDerivedSubgroupTom[110X and [10XDerivedSubgroupsTom[110X.[133X
[30X [33X[0;6YAn error in the inversion of certain [10XZmodnZObj[110X elements.[133X
[30X [33X[0;6YA wrong display string of the numerator in rational functions returned
by [10XMolienSeriesWithGivenDenominator[110X (in the case that the constant
term of this numerator is zero).[133X
[1X8.3 [33X[0;0Y[5XGAP[105X[101X[1X 4.4 Bugfix 3 (May 2004)[133X[101X
[33X[0;0YFixed bugs which could produce wrong results:[133X
[30X [33X[0;6YIncorrect setting of system variables (e.g., home directory and
command line options) after loading a workspace.[133X
[30X [33X[0;6YWrong handling of integer literals within functions or loops on 64-bit
architectures (only integers in the range from [22X2^28[122X to [22X2^60[122X).[133X
[33X[0;0YFixed bugs which could lead to crashes:[133X
[30X [33X[0;6YA problem in the installation of the multiplication routine for
matrices that claimed to be applicable for more general list
multiplications.[133X
[30X [33X[0;6YA problem when computing weight distributions of codes with weights >
[22X2^28[122X.[133X
[33X[0;0YOther fixed bugs:[133X
[30X [33X[0;6YProblems with the online help with some manual sections.[133X
[30X [33X[0;6YProblems of the online help on Windows systems.[133X
[30X [33X[0;6YA problem in [10XGQuotients[110X when mapping from a finitely presented group
which has a free direct factor.[133X
[30X [33X[0;6YA bug in the function [10XDisplayRevision[110X.[133X
[30X [33X[0;6YThe trivial finitely presented group on no generators was not
recognized as finitely presented.[133X
[30X [33X[0;6YA problem with [10XProcess[110X.[133X
[30X [33X[0;6YA problem when intersecting subgroups of finitely presented groups
that are represented in [21Xquotient representation[121X with the quotient not
apermutation group.[133X
[30X [33X[0;6YA bug in the generic [10XIntersection2[110X method for vector spaces, in the
case that both spaces are trivial.[133X
[30X [33X[0;6YEnable ReeGroup(q) for [22Xq = 3[122X.[133X
[1X8.4 [33X[0;0Y[5XGAP[105X[101X[1X 4.4 Bugfix 4 (December 2004)[133X[101X
[33X[0;0YFixed bugs which could produce wrong results:[133X
[30X [33X[0;6YAn error in the [10XOrder[110X method for matrices over cyclotomic fields which
caused this method to return [10Xinfinity[110X for matrices of finite order in
certain cases.[133X
[30X [33X[0;6YRepresentations computed by [10XIrreducibleRepresentations[110X in
characteristic 0 erraneously claimed to be faithful.[133X
[30X [33X[0;6YA primitive representation of degree 574 for PSL(2,41) has been
missing in the classification on which the [5XGAP[105X library was built.[133X
[30X [33X[0;6YA bug in [10XAppend[110X for compressed vectors over GF(2): if the length of
the result is 1 mod 32 (or 64) the last entry was forgotten to copy.[133X
[30X [33X[0;6YA problem with the Ree group Ree(3) of size 1512 claiming to be
simple.[133X
[30X [33X[0;6YAn error in the membership test for groups GU(n,q) and SU(n,q) for
non-prime [22Xq[122X.[133X
[30X [33X[0;6YAn error in the kernel code for ranges which caused e.g. [10X-1 in [1..2][110X
to return [9Xtrue[109X.[133X
[30X [33X[0;6YAn error recording boolean lists in saved workspaces.[133X
[30X [33X[0;6YA problem in the selection function for primitive and transitive
groups if no degree is given.[133X
[30X [33X[0;6Y[10XReducedConfluentRewritingSystem[110X returning a cached result that might
not conform to the ordering specified.[133X
[33X[0;0YOther fixed bugs:[133X
[30X [33X[0;6YA problem with the function [10XSuggestUpdates[110X to check for the most
recent version of packages available.[133X
[30X [33X[0;6YA problem that caused [10XMatrixOfAction[110X to produce an error when the
algebra module was constructed as a direct sum.[133X
[30X [33X[0;6YProblems with computing [22Xn[122X-th power maps of character tables, where n
is negative and the table does not yet store its irreducible
characters.[133X
[30X [33X[0;6YElement conjugacy in large-base permutation groups sometimes was
unnecessarily inefficient.[133X
[30X [33X[0;6YA missing method for getting the letter representation of an associate
word in straight line program representation.[133X
[30X [33X[0;6YA problem with the construction of vector space bases where the given
list of basis vectors is itself an object that was returned by [10XBasis[110X.[133X
[30X [33X[0;6YA problem of [10XAbelianInvariantsMultiplier[110X insisting that a result of
[10XIsomorphismFpGroup[110X is known to be surjective.[133X
[30X [33X[0;6YAn error in the routine for [10XResultant[110X if one of the polynomials has
degree zero.[133X
[1X8.5 [33X[0;0Y[5XGAP[105X[101X[1X 4.4 Update 5 (May 2005)[133X[101X
[33X[0;0YFixed bugs which could produce wrong results:[133X
[30X [33X[0;6Y[2XGroupWithGenerators[102X ([14XReference: GroupWithGenerators[114X) returned a
meaningless group object instead of signaling an error when it was
called with an empty list of generators.[133X
[30X [33X[0;6YWhen computing preimages under an embedding into a direct product of
permutation groups, if the element was not in the image of the
embedding then a permutation had been returned instead of [10Xfail[110X.[133X
[30X [33X[0;6YTwo problems with [2XPowerMod[102X ([14XReference: PowerMod[114X) for polynomials.
[Reported by Jack Schmidt][133X
[30X [33X[0;6YSome methods for computing the sum of ideals returned the first
summand instead of the sum. [Reported by Alexander Konovalov][133X
[30X [33X[0;6YWrong result in [2XIntersection[102X ([14XReference: Intersection[114X) for pc groups.[133X
[30X [33X[0;6YThe function [2XCompareVersionNumbers[102X ([14XReference: CompareVersionNumbers[114X)
erroneously ignored leading non-digit characters.[133X
[33X[0;6YA new feature in the corrected version is an optional third argument
[10X"equal"[110X, which causes the function to return [10Xtrue[110X only if the first
two arguments describe equal version numbers; documentation is
available in the ext-manual. This new feature is used in [2XLoadPackage[102X
([14XReference: LoadPackage[114X), now one can require a specific version of a
package.[133X
[33X[0;6YThe library code still contained parts of the handling of completion
files for packages, which does not work and therefore had already been
removed from the documentation. This code has now been removed.[133X
[33X[0;6YNow a new component [10XPreloadFile[110X is supported in [2XThe PackageInfo.g File[102X
([14XReference: The PackageInfo.g File[114X) files; if it is bound then the
file in question is read immediately before the package or its
documentation is loaded.[133X
[30X [33X[0;6YThe result of [2XString[102X ([14XReference: String[114X) for strings not in
[2XIsStringRep[102X ([14XReference: IsStringRep[114X) that occur as list entries or
record components was erroneously missing the double quotes around the
strings.[133X
[30X [33X[0;6YA bug which caused [2XInducedPcgs[102X ([14XReference: InducedPcgs[114X) to return a
pcgs which is not induced wrt. the parent pcgs of [10Xpcgs[110X. This may cause
unpredictable behaviour, e. g. when [10XSiftedPcElement[110X is used
subsequently. [Reported by Alexander Konovalov][133X
[30X [33X[0;6YFixed a bug in [10XSmallGroupsInformation(512)[110X.[133X
[30X [33X[0;6Y[2XPowerModCoeffs[102X ([14XReference: PowerModCoeffs[114X) with exponent 1 for
compressed vectors did not reduce (a copy of) the input vector before
returning it. [Reported by Frank Lübeck][133X
[30X [33X[0;6YSorting a mutable non-plain list (e.g., a compressed matrix over
fields of order < 257) could potentially destroy that object.
[Reported by Alexander Hulpke][133X
[30X [33X[0;6YUnder rare circumstances computing the closure of a permutation group
by a normalizing element could produce a corrupted stabilizer chain.
(The underlying algorithm uses random elements, probability of failure
was below 1 percent). [Reported by Thomas Breuer][133X
[33X[0;0YFixed bugs which could lead to crashes:[133X
[30X [33X[0;6YSome code and comments in the [5XGAP[105X kernel assumed that there is no
garbage collection during the core printing function [10XPr[110X, which is not
correct. This could cause [5XGAP[105X in rare cases to crash during printing
permutations, cyclotomics or strings with zero bytes. [Reported by
Warwick Harvey][133X
[33X[0;0YOther fixed bugs:[133X
[30X [33X[0;6YA rare problem with the choice of prime in the Dixon-Schneider
algorithm for computing the character table of a group. [Reported by
Jack Schmidt][133X
[30X [33X[0;6Y[2XDirectProduct[102X ([14XReference: DirectProduct[114X) for trivial permutation
groups returned a strange object.[133X
[30X [33X[0;6YA problem with [2XPolynomialReduction[102X ([14XReference: PolynomialReduction[114X)
running into an infinite loop.[133X
[30X [33X[0;6YAdding linear mappings with different image domains was not possible.
[Reported by Pasha Zusmanovich][133X
[30X [33X[0;6YMultiplying group ring elements with rationals was not possible.
[Reported by Laurent Bartholdi][133X
[30X [33X[0;6Y[2XRandom[102X ([14XReference: Random[114X) now works for finite fields of size larger
than [22X2^28[122X. [Reported by Jack Schmidt][133X
[30X [33X[0;6YUnivariate polynomial creators did modify the coefficient list passed.
[Reported by Jürgen Müller][133X
[30X [33X[0;6YFixed [2XIntHexString[102X ([14XReference: IntHexString[114X) to accept arguments not
in [10XIsStringRep[110X; the argument is now first converted if necessary.
[Reported by Kenn Heinrich][133X
[30X [33X[0;6YThe library code for stabilizer chains contained quite some explicit
references to the identity [10X()[110X. This is unfortunate if one works with
permutation groups, the elements of which are not plain permutations
but objects which carry additional information like a memory, how they
were obtained from the group generators. For such cases it is much
cleaner to use the [10XOne(...)[110X operation instead of [10X()[110X, such that the
library code can be used for a richer class of group objects. This fix
contains only rather trivial changes [10X()[110X to [10XOne(...)[110X which were
carefully checked by me. The tests for permutation groups all run
without a problem. However, it is relatively difficult to provide test
code for this particular change, since the "improvement" only shows up
when one generates new group objects. This is for example done in the
package [5Xrecog[105X which is in preparation. [Reported by Akos Seress and
Max Neunhöffer][133X
[30X [33X[0;6YUsing [10X{}[110X to select elements of a known inhomogenous dense list
produced a list that might falsely claim to be known inhomogenous,
which could lead to a segfault if the list typing code tried to mark
it homogenous, since the code intended to catch such errors also had a
bug. [Reported by Steve Linton][133X
[30X [33X[0;6YThe record for the generic iterator construction of subspaces domains
of non-row spaces was not complete.[133X
[30X [33X[0;6YWhen a workspace has been created without packages([10X-A[110X option) and is
loaded into a [5XGAP[105X session without packages (same option) then an error
message is printed.[133X
[30X [33X[0;6YSo far the functions [2XIsPrimeInt[102X ([14XReference: IsPrimeInt[114X) and
[2XIsProbablyPrimeInt[102X ([14XReference: IsProbablyPrimeInt[114X) are essentially the
same except that [10XIsPrimeInt[110X issues an additional warning when
(non-proven) probable primes are considered as primes.[133X
[33X[0;6YThese warnings now print the probable primes in question as well; if a
probable prime is used several times then the warning is also printed
several times; there is no longer a warning for some known large
primes; the warnings can be switched off. See [2XIsPrimeInt[102X ([14XReference:
IsPrimeInt[114X) for more details.[133X
[33X[0;6YIf we get a reasonable primality test in [5XGAP[105X we will change the
definition of [10XIsPrimeInt[110X to do a proper test.[133X
[30X [33X[0;6YCorrected some names of primitive groups in degree 26. [Reported by
Robert F. Bailey][133X
[33X[0;0YNew or improved functionality:[133X
[30X [33X[0;6YSeveral changes for [2XConwayPolynomial[102X ([14XReference: ConwayPolynomial[114X):[133X
[30X [33X[0;12Ymany new pre-computed polynomials[133X
[30X [33X[0;12Yput data in several separate files (only read when needed)[133X
[30X [33X[0;12Yadded info on origins of pre-computed polynomials[133X
[30X [33X[0;12Yimproved performance of [2XConwayPolynomial[102X ([14XReference:
ConwayPolynomial[114X) and [2XIsPrimitivePolynomial[102X ([14XReference:
IsPrimitivePolynomial[114X) for p < 256[133X
[30X [33X[0;12Yimproved documentation of [10XConwayPolynomial[110X[133X
[30X [33X[0;12Yadded and documented new functions [2XIsCheapConwayPolynomial[102X
([14XReference: IsCheapConwayPolynomial[114X) and
[2XRandomPrimitivePolynomial[102X ([14XReference: RandomPrimitivePolynomial[114X)[133X
[30X [33X[0;6YAdded method for [2XNormalBase[102X ([14XReference: NormalBase[114X) for extensions of
finite fields.[133X
[30X [33X[0;6YAdded more help viewers for the HTML version of the documentation
(firefox, mozilla, konqueror, w3m, safari).[133X
[30X [33X[0;6YNew function [2XColorPrompt[102X ([14XReference: ColorPrompt[114X). (Users of former
versions of a [10Xcolorprompt.g[110X file: Now you just need a
[10XColorPrompt(true);[110X in your [10X.gaprc[110X file.)[133X
[30X [33X[0;6YSpecialised kernel functions to support [5XGUAVA[105X 2.0. [5XGAP[105X will only load
[5XGUAVA[105X in version at least 2.002 after this update.[133X
[30X [33X[0;6YNow there is a kernel function [10XCYC_LIST[110X for converting a list of
rationals into a cyclotomic, without arithmetics overhead.[133X
[30X [33X[0;6YNew functions [2XContinuedFractionExpansionOfRoot[102X ([14XReference:
ContinuedFractionExpansionOfRoot[114X) and
[2XContinuedFractionApproximationOfRoot[102X ([14XReference:
ContinuedFractionApproximationOfRoot[114X) for computing continued fraction
expansions and continued fraction approximations of real roots of
polynomials with integer coefficients.[133X
[30X [33X[0;6YA method for computing structure descriptions for finite groups,
available via [2XStructureDescription[102X ([14XReference: StructureDescription[114X).[133X
[30X [33X[0;6YThis change contains the new, extended version of the [5XSmallGroups[105X
package. For example, the groups of orders [22Xp^4[122X, [22Xp^5[122X, [22Xp^6[122X for arbitrary
primes [22Xp[122X, the groups of square-free order and the groups of cube-free
order at most 50000 are included now. For more detailed information
see the announcement of the extended package.[133X
[30X [33X[0;6YThe function [10XShowPackageVariables[110X gives an overview of the global
variables in a package. It is thought as a utility for package authors
and referees. (It uses the new function [10XIsDocumentedVariable[110X.)[133X
[30X [33X[0;6YThe mechanisms for testing [5XGAP[105X has been improved:[133X
[30X [33X[0;12YThe information whether a test file belongs to the list in
[10Xtst/testall.g[110X is now stored in the test file itself.[133X
[30X [33X[0;12YSome targets for testing have been added to the [10XMakefile[110X in the
[5XGAP[105X root directory, the output of the tests goes to the new
directory [10Xdev/log[110X.[133X
[30X [33X[0;12YUtility functions for testing are in the new file
[10Xtst/testutil.g[110X. Now the loops over (some or all) files [10Xtst/*.tst[110X
can be performed with a function call, and the file
[10Xtst/testall.g[110X can be created automatically; the file
[10Xtst/testfull.g[110X is now obsolete. The remormalization of the
scaling factors can now be done using a [5XGAP[105X function, so the
file [10Xtst/renorm.g[110X is obsolete.[133X
[30X [33X[0;12YNow the functions [10XSTART_TEST[110X and [10XSTOP_TEST[110X use components in
[10XGAPInfo[110X instead of own globals, and the random number generator
is always reset in [10XSTART_TEST[110X.[133X
[30X [33X[0;12Y[10XGAPInfo.SystemInformation[110X now takes two arguments, now one can
use it easier in the tests.[133X
[30X [33X[0;6Y[2XMultiplicationTable[102X ([14XReference: MultiplicationTable[114X) is now an
attribute, and the construction of a magma, monoid, etc. from
multiplication tables has been unified.[133X
[1X8.6 [33X[0;0Y[5XGAP[105X[101X[1X 4.4 Update 6 (September 2005)[133X[101X
[33X[0;0YAttribution of bugfixes and improved functionalities to those who reported
or provided these, respectively, is still fairly incomplete and inconsistent
with this update. We apologise for this fact and will discuss until the next
update how to improve this feature.[133X
[33X[0;0YFixed bugs which could produce wrong results:[133X
[30X [33X[0;6YThe perfect group library does not contain any information on the
trivial group, so the trivial group must be handled specially.
[2XPerfectGroup[102X ([14XReference: PerfectGroup[114X) and [10XNrPerfectLibraryGroups[110X were
changed to indicate that the trivial group is not part of the library.[133X
[30X [33X[0;6YThe descriptions of [10XPerfectGroup(734832,3)[110X and [10XPerfectGroup(864000,3)[110X
were corrected in the [2XFinite Perfect Groups[102X ([14XReference: Finite Perfect
Groups[114X) library of perfect groups.[133X
[30X [33X[0;6YThe functions [2XEpimorphismSchurCover[102X ([14XReference: EpimorphismSchurCover[114X)
and [2XAbelianInvariantsMultiplier[102X ([14XReference:
AbelianInvariantsMultiplier[114X) may have produced wrong results without
warning [Reported by Colin Ingalls]. These problems are fixed.
However, the methods currently used can be expected to be slower than
the ones used before; we hope to fix this in the next version of [5XGAP[105X.[133X
[30X [33X[0;6Y[2XDerivedSubgroup[102X ([14XReference: DerivedSubgroup[114X) and [2XCommutatorSubgroup[102X
([14XReference: CommutatorSubgroup[114X) for permutation groups sometimes
returned groups with an incorrect stabilizer chain due to a missing
verification step after a random Schreier Sims.[133X
[30X [33X[0;6Y[2XNaturalHomomorphismByNormalSubgroup[102X ([14XReference:
NaturalHomomorphismByNormalSubgroup[114X) for FpGroups did unnecessary
rewrites.[133X
[30X [33X[0;6YThe alternating group [22XA_3[122X incorrectly claimed to be not simple.[133X
[30X [33X[0;6Y[2XExponentSyllable[102X ([14XReference: ExponentSyllable[114X) for straight line
program elements gave a wrong result.[133X
[30X [33X[0;6Y[2XPrimePGroup[102X ([14XReference: PrimePGroup[114X) is defined to return [10Xfail[110X for
trivial groups, but if the group was constructed as a factor or
subgroup of a known [22Xp[122X-group, the value of [22Xp[122X was retained.[133X
[30X [33X[0;6YThe functions [2XTestPackageAvailability[102X ([14XReference:
TestPackageAvailability[114X) and [2XLoadPackage[102X ([14XReference: LoadPackage[114X) did
not work correctly when one asked for a particular version of the
package, via a version number starting with the character [10X=[110X, in the
sense that a version with a larger version number was loaded if it was
available. [Reported by Burkhard Höfling][133X
[30X [33X[0;6YThe generator names constructed by [2XAlgebraByStructureConstants[102X
([14XReference: AlgebraByStructureConstants[114X) were nonsense.[133X
[30X [33X[0;6YThe undocumented function (but recently advertised on gap-dev)
[10XCOPY_LIST_ENTRIES[110X did not handle overlapping source and destination
areas correctly in some cases.[133X
[30X [33X[0;6YThe elements in a free magma ring have the filter [2XIsAssociativeElement[102X
([14XReference: IsAssociativeElement[114X) set whenever the elements in the
underlying magma and in the coefficients ring have this filter set.
[Reported by Randy Cone][133X
[30X [33X[0;6YThe function [2XInstallValue[102X ([14XReference: InstallValue[114X) must not be used
for objects in the filter [10XIsFamily[110X because these objects are compared
via [2XIsIdenticalObj[102X ([14XReference: IsIdenticalObj[114X). [Reported by Max
Neunhöffer][133X
[33X[0;0YFixed bugs which could lead to crashes:[133X
[30X [33X[0;6YProblem in composition series for permutation groups for non-Frobenius
groups with regular point stabilizer.[133X
[30X [33X[0;6YAfter lots of computations with compressed GF(2) vectors [5XGAP[105X
occasionally crashed. The reason were three missing [10XCHANGED_BAG[110Xs in
[10XSemiEchelonPListGF2Vecs[110X. They were missing, because a garbage
collection could be triggered during the computation such that newly
created bags could become [21Xold[121X. It is not possible to provide test code
because the error condition cannot easily be reproduced. [Reported by
Klaus Lux][133X
[30X [33X[0;6YMinor bug that crashed [5XGAP[105X: The type of [10XIMPLICATIONS[110X could not be
determined in a fresh session. [Reported by Marco Costantini][133X
[30X [33X[0;6Y[2XAssert[102X ([14XReference: Assert[114X) caused an infinite loop if called as the
first line of a function called from another function.[133X
[33X[0;0YOther fixed bugs:[133X
[30X [33X[0;6YWrong choice of prime in Dixon-Schneider if prime is bigger than group
order (if group has large exponent).[133X
[30X [33X[0;6YGroebner basis code ran into problems when comparing monomial
orderings.[133X
[30X [33X[0;6YWhen testing for conjugacy of a primitive group to an imprimitive
group,[5XGAP[105X runs into an error in EARNS calculation. [Reported by John
Jones][133X
[30X [33X[0;6YThe centre of a magma is commonly defined to be the set of elements
that commute and associate with all elements. The previous definition
left out [21Xassociate[121X and caused problems with extending the
functionality to nonassociative loops. [Reported by Petr Vojtechovsky][133X
[30X [33X[0;6YNew kernel methods for taking the intersection and difference between
sets of substantially different sizes give a big performance increase.[133X
[30X [33X[0;6YThe commands [2XIsNaturalSymmetricGroup[102X ([14XReference:
IsNaturalSymmetricGroup[114X) and [2XIsNaturalAlternatingGroup[102X ([14XReference:
IsNaturalAlternatingGroup[114X) are faster and should run much less often
into inefficient tests.[133X
[30X [33X[0;6YThe perfect group library, see [2XFinite Perfect Groups[102X ([14XReference:
Finite Perfect Groups[114X), is split into several files which are loaded
and unloaded to keep memory usage down. The global variable [10XPERFSELECT[110X
is a blist which indicates which orders are currently loaded. An
off-by-one error wrongly added the last order of the previous file
into the list of valid orders when a new file was loaded. A subsequent
access to this order raises an error.[133X
[30X [33X[0;6YUp to now, the method installed for testing the membership of
rationals in the field of rationals via [2XIsRat[102X ([14XReference: IsRat[114X) was
not called; instead a more general method was used that called
[2XConductor[102X ([14XReference: Conductor for a cyclotomic[114X) and thus was much
slower. Now the special method has been ranked up by changing the
requirements in the method installation.[133X
[30X [33X[0;6YFixed a bug in [10XAPPEND_VEC8BIT[110X, which was triggered in the following
situation: Let [10Xe[110X be the number of field elements stored in one byte.
If a compressed 8bit-vector [10Xv[110X had length not divisible by [10Xe[110X and
another compressed 8-bit vector [10Xw[110X was appended, such that the sum of
the lengths became divisible by [10Xe[110X, then one 0 byte too much was
written, which destroyed the [10XTNUM[110X of the next [5XGAP[105X object in memory.
[Reported by Klaus Lux][133X
[30X [33X[0;6Y[2XPermutationCycle[102X ([14XReference: PermutationCycle[114X) returned [10Xfail[110X if the
cycle was not a contiguous subset of the specified domain. [Reported
by Luc Teirlinck][133X
[30X [33X[0;6YNow [2XInverse[102X ([14XReference: Inverse[114X) correctly returns [10Xfail[110X for zeros in
finite fields (and does no longer enter a break loop).[133X
[30X [33X[0;6YUp to now, [2XCharacterDegrees[102X ([14XReference: CharacterDegrees[114X) ignored the
attribute [2XIrr[102X ([14XReference: Irr[114X) if the argument was a group that knew
that it was solvable.[133X
[30X [33X[0;6YThe function [10XDebug[110X now prints a meaningful message if the user tries
to debug an operation. Also, the help file for [10Xvi[110X is now available in
the case of several [5XGAP[105X root directories.[133X
[30X [33X[0;6YIt is no longer possible to create corrupt objects via ranges of
length >[22X2^28[122X, resp. >[22X2^60[122X (depending on the architecture). The
limitation concerning the arguments of ranges is documented. [Reported
by Stefan Kohl][133X
[30X [33X[0;6YNow [2XIsElementaryAbelian[102X ([14XReference: IsElementaryAbelian[114X) and
[2XClassPositionsOfMinimalNormalSubgroups[102X ([14XReference:
ClassPositionsOfMinimalNormalSubgroups[114X) are available for ordinary
character tables. Now the operation [2XCharacterTableIsoclinic[102X
([14XReference: CharacterTableIsoclinic[114X) is an attribute, and there is
another new attribute [2XSourceOfIsoclinicTable[102X ([14XReference:
SourceOfIsoclinicTable[114X) that points back to the original table; this
is used for computing the Brauer tables of those tables in the
character table library that are computed using
[10XCharacterTableIsoclinic[110X. Now [2XClassPositionsOfDerivedSubgroup[102X
([14XReference: ClassPositionsOfDerivedSubgroup[114X) avoids calling [2XIrr[102X
([14XReference: Irr[114X), since [2XLinearCharacters[102X ([14XReference: LinearCharacters[114X)
is sufficient. Now [2XClassPositionsOfElementaryAbelianSeries[102X ([14XReference:
ClassPositionsOfElementaryAbelianSeries[114X) works also for the table of
the trivial group. Restrictions of character objects know that they
are characters.[133X
[33X[0;6YA few formulations in the documentation concerning character tables
have been improved slightly.[133X
[30X [33X[0;6YUp to now, [2XIsPGroup[102X ([14XReference: IsPGroup[114X) has rarely been set. Now
many basic operations such as [2XSylowSubgroup[102X ([14XReference: SylowSubgroup[114X)
set this attribute on the returned result.[133X
[30X [33X[0;6YComputing an enumerator for a semigroup required too much time because
it used all elements instead of the given generators. [Reported by
Manuel Delgado][133X
[30X [33X[0;6YAvoid potential error message when working with automorphism groups.[133X
[30X [33X[0;6YFixed wrong page references in manual indices.[133X
[30X [33X[0;6YMake [10XMutableCopyMat[110X an operation and install the former function which
does call [2XList[102X ([14XReference: list element operation[114X) with [2XShallowCopy[102X
([14XReference: ShallowCopy[114X) the default method for lists. Also use this
in a few appropriate places.[133X
[30X [33X[0;6YAn old DEC compiler doesn't like C preprocessor directives that are
preceded by whitespace. Removed such whitespace. [Reported by Chris
Wensley][133X
[33X[0;0YNew or improved functionality:[133X
[30X [33X[0;6YThe primitive groups library has been extended to degree 2499.[133X
[30X [33X[0;6YNew operation [2XRemove[102X ([14XReference: Remove[114X) and extended functionality of
[2XAdd[102X ([14XReference: Add[114X) with an optional argument giving the position of
the insertion. They are based on an efficient kernel function
[10XCOPY_LIST_ENTRIES[110X.[133X
[30X [33X[0;6YAdded fast kernel implementation of Tarjan's algorithm for strongly
connected components of a directed graph.[133X
[30X [33X[0;6YNow [2XIsProbablyPrimeInt[102X ([14XReference: IsProbablyPrimeInt[114X) can be used
with larger numbers. (Made internal function [10XTraceModQF[110X
non-recursive.)[133X
[30X [33X[0;6YA new operation [2XPadicValuation[102X ([14XReference: PadicValuation[114X) and a
corresponding method for rationals.[133X
[30X [33X[0;6YA new operation [2XPartialFactorization[102X ([14XReference: PartialFactorization[114X)
has been added, and a corresponding method for integers has been
installed. This method allows one to specify the amount of work to be
spent on looking for factors.[133X
[30X [33X[0;6YThe generators of full s. c. algebras can now be accessed with the dot
operator. [Reported by Marcus Bishop][133X
[30X [33X[0;6YNew Conway polynomials computed by Kate Minola, John Bray, Richard
Parker.[133X
[30X [33X[0;6YA new attribute [2XEpimorphismFromFreeGroup[102X ([14XReference:
EpimorphismFromFreeGroup[114X). The code has been written by Alexander
Hulpke.[133X
[30X [33X[0;6YThe functions [2XLambda[102X ([14XReference: Lambda[114X), [2XPhi[102X ([14XReference: Phi[114X), [2XSigma[102X
([14XReference: Sigma[114X), and [2XTau[102X ([14XReference: Tau[114X) have been turned into
operations, to admit the installation of methods for arguments other
than integers.[133X
[30X [33X[0;6YUp to now, one could assign only lists with [2XInstallFlushableValue[102X
([14XReference: InstallFlushableValue[114X). Now also records are admitted.[133X
[30X [33X[0;6Y[2XInstallMethod[102X ([14XReference: InstallMethod[114X) now admits entering a list of
strings instead of a list of required filters. Each such string must
evaluate to a filter when used as the argument of [2XEvalString[102X
([14XReference: EvalString[114X). The advantage of this variant is that these
strings are used to compose an info string (which is shown by
[10XApplicableMethod[110X) that reflects exactly the required filters.[133X
[30X [33X[0;6YIn test files that are read with [10XReadTest[110X, the assertion level is set
to 2 between [10XSTART_TEST[110X and [10XSTOP_TEST[110X. This may result in runtimes for
the tests that are substantially longer than the usual runtimes with
default assertion level 0. In particular this is the reason why some
of the standard test files require more time in [5XGAP[105X 4.4.6 than in [5XGAP[105X
4.4.5.[133X
[30X [33X[0;6YSome very basic functionality for floats.[133X
[1X8.7 [33X[0;0Y[5XGAP[105X[101X[1X 4.4 Update 7 (March 2006)[133X[101X
[33X[0;0YNew or improved functionality:[133X
[30X [33X[0;6YThe [2XDisplay[102X ([14XReference: Display[114X) functionality for character tables
has been extended by addition of an option to show power maps and
centralizer orders in a format similar to that used in the ATLAS.
Furthermore the options handling is now hierarchical, in order to
admit more flexible overloading.[133X
[30X [33X[0;6YFor the function [2XLowIndexSubgroupsFpGroup[102X ([14XReference:
LowIndexSubgroupsFpGroup[114X), there is now an iterator variant
[10XLowIndexSubgroupsFpGroupIterator[110X. [Suggested (and based on code
contributed) by Michael Hartley][133X
[30X [33X[0;6YSemigroup functionality in [5XGAP[105X has been improved and extended. Green's
relations are now stored differently, making the system more amenable
to new methods for computing these relations in special cases. It is
now possible to calculate Green's classes etc. without computing the
entire semigroup or necessarily loading the package [5XMONOID[105X.
Furthermore, the Froidure-Pin algorithm has now been implemented in
[5XGAP[105X.[133X
[30X [33X[0;6YFunctionality for creating free products of any list of groups for
which a finite presentation can be determined had been added. This
function returns a finitely presented group. This functionality
includes the [10XEmbedding[110X operation. As an application of this new code a
specialized direct product operation has been added for finitely
presented groups which returns a finitely presented group. This
application includes [10XEmbedding[110X and [10XProjection[110X functionality.[133X
[30X [33X[0;6YSome new Straight Line Program (SLP) functionality has been added. The
new functions take given SLPs and create new ones by restricting to a
subset of the results, or to an intermediate result or by calculating
the product of the results of two SLPs.[133X
[30X [33X[0;6YNew code has been added to allow group elements with memory; that is,
they store automatically how they were derived from some given set of
generators. Note that there is not yet documentation for this
functionality, but some packages already use it.[133X
[30X [33X[0;6YNew code has been added to handle matrices and vectors in such a way
that they do not change their representation in a generic manner.[133X
[30X [33X[0;6YThe [2XIrr[102X ([14XReference: Irr[114X) method for [22Xp[122X-solvable [22Xp[122X-modular Brauer tables
now keeps the order of the irreducibles in the ordinary table.[133X
[30X [33X[0;6Y[5XGAP[105X can now handle any finite field for which the Conway polynomial is
known or can be computed.[133X
[30X [33X[0;6YNew Conway polynomials provided by John Bray and Kate Minola have been
added.[133X
[30X [33X[0;6YThe [10XReadTest[110X methods for strings (filenames) and streams now
automatically set the screen width (see [2XSizeScreen[102X ([14XReference:
SizeScreen[114X)) to 80 before the tests, and reset it afterwards.[133X
[30X [33X[0;6YNow a few more checks are done during the [10Xconfigure[110X phase of compiling
for future use of some I/O functions of the C-library in a package.
Also the path to the [5XGAP[105X binaries for the [5XGAP[105X compiler is now handled
via autoconf. Finally, now [10Xautoconf[110X version 2.59 is used.[133X
[33X[0;0YFixed bugs which could produce wrong results:[133X
[30X [33X[0;6YSome technical errors in the functions for compressed vectors and
matrices which could lead to corruption of internal data structures
and so to crashes or conceivably to wrong results. [Reported by Roman
Schmied][133X
[30X [33X[0;6YA potential problem in the generic method for the undocumented
operation [10XDirectFactorsOfGroup[110X: It was silently assumed that
[2XNormalSubgroups[102X ([14XReference: NormalSubgroups[114X) delivers the trivial
subgroup as first and the whole group as last entry of the resulting
list.[133X
[30X [33X[0;6YThe code for sublists of compressed vectors created by [10Xvec{range}[110X may
write one byte beyond the space allocated for the new vector,
overwriting part of the next object in the workspace. Thanks to Jack
Schmidt for narrowing down the problem.[133X
[30X [33X[0;6YGiven a class function object of value zero, an [2XArithmetic Operations
for Class Functions[102X ([14XReference: Arithmetic Operations for Class
Functions[114X) method for a class function erroneously did not return
[10Xfail[110X. [Reported by Jack Schmidt][133X
[30X [33X[0;6YThe [2XArithmetic Operations for Class Functions[102X ([14XReference: Arithmetic
Operations for Class Functions[114X) method for a class function
erroneously returned a finite number if one of the values was nonreal,
not a cyclotomic integer, and had norm 1.[133X
[30X [33X[0;6YTwo missing perfect groups were added, and the permutation degree
lowered on the perfect groups with the largest degrees. [Reported by
Jack Schmidt][133X
[30X [33X[0;6YWhen a character table was displayed with [2XPrinting Character Tables[102X
([14XReference: Printing Character Tables[114X), the centralizer order
displayed for the first class shown was not correct if it did not
involve all prime divisors of the group. [Reported by Jack Schmidt][133X
[30X [33X[0;6YThe first argument of the function [2XVectorSpace[102X ([14XReference:
VectorSpace[114X) must be a field. This is checked from now on. [Reported
by Laurent Bartholdi][133X
[30X [33X[0;6YUp to now, it was possible to create a group object from a semigroup
of cyclotomics using [2XAsGroup[102X ([14XReference: AsGroup[114X), although groups of
cyclotomics are not admissible. [Reported by Alexander Konovalov][133X
[30X [33X[0;6YThe documentation of [10XCharacteristicPolynomial(F,mat)[110X was ambiguous if
[10XFieldOfMatrix(mat) <= F < DefaultFieldOfMatrix(mat)[110X. In particular,
the result was representation dependent. This was fixed by introducing
a second field which specifies the vector space which mat acts upon.
[Reported by Jack Schmidt][133X
[30X [33X[0;6Y[10XAssociatedReesMatrixSemigroupOfDClass[110X produced an incorrect sandwich
matrix for the semigroup created. This matrix is an attribute set when
creating the Rees matrix semigroup but is not used for creating the
semigroup. The incorrect result was returned when [10XSandwichMatrix[110X was
called. [Reported by Nelson Silva and Joao Araujo][133X
[30X [33X[0;6YThe literal [10X"compiled"[110X was given an incorrect length. The kernel was
then unable to find compiled library code as the search path was
incorrect. Also the documentation example had an error in the path
used to invoke the [11Xgac[111X compiler.[133X
[30X [33X[0;6YThe twisting group in a generic wreath product might have had
intransitive action. [Reported by Laurent Bartholdi][133X
[30X [33X[0;6YThere was an arithmetic bug in the polynomial reduction code.[133X
[33X[0;0YFixed bugs which could lead to crashes:[133X
[30X [33X[0;6YBug 1 in the list of fixed bugs which could lead to wrong results
could also potentially lead to crashes.[133X
[33X[0;0YOther fixed bugs:[133X
[30X [33X[0;6YThe matrices of invariant forms stored as values of the attributes
[2XInvariantBilinearForm[102X ([14XReference: InvariantBilinearForm[114X),
[2XInvariantQuadraticForm[102X ([14XReference: InvariantQuadraticForm[114X), and
[2XInvariantSesquilinearForm[102X ([14XReference: InvariantSesquilinearForm[114X), for
matrix groups over finite fields, are now in the (compressed) format
returned by [2XImmutableMatrix[102X ([14XReference: ImmutableMatrix[114X).[133X
[30X [33X[0;6Y[10XString[110X now returns an immutable string, by making a copy before
changing the argument.[133X
[30X [33X[0;6Y[10Xpermutation^0[110X and [10Xpermutation^1[110X were not handled with special code in
the kernel, hence were very slow for big permutations. [Reported by
Max Neunhöffer][133X
[30X [33X[0;6YAdded code to cache the induced pcgs for an arbitrary parent pcgs.
(This code was formerly part of the [5XCRISP[105X package.)[133X
[30X [33X[0;6YThis fix consists of numerous changes to improve support for direct
products, including: - new methods for [10XPcgsElementaryAbelianSeries[110X,
[10XPcgsChiefSeries[110X, [10XExponentsOfPcElement[110X, [10XDepthOfPcElement[110X for direct
products - fixed [10XEnumeratorOfPcgs[110X to test for membership first - new
methods for membership test in groups which have an induced pcgs -
added [10XGroupOfPcgs[110X attribute to pcgs in various methods - fixed
declarations of [10XPcgsElementaryAbelianSeries[110X, [10XPcgsChiefSeries[110X (the
declared argument was a pcgs, not a group) [Reported by Roman Schmied][133X
[30X [33X[0;6YCorrected a term ordering problem encountered by the basis
construction code for finite dimensional vector spaces of multivariate
rational functions. [Reported by Jan Draisma][133X
[30X [33X[0;6YWhen the factor of a finite dimensional group ring by an ideal was
formed, a method intended for free algebras modulo relations was used,
and the returned factor algebra could be used for (almost) nothing.
[Reported by Heiko Dietrich][133X
[30X [33X[0;6YUp to now, [2XPowerMap[102X ([14XReference: PowerMap[114X) ran into an error when one
asked for the n-th power map where n was not a small integer. This
happened in some [5XGAP[105X library functions if the exponent of the
character table in question was not a small integer.[133X
[30X [33X[0;6YUp to now, the test whether a finite field element was contained in a
group of finite field elements ran into an error if the element was
not in the field generated by the group elements. [Reported by Heiko
Dietrich][133X
[30X [33X[0;6YConjugacy classes of natural (special) linear groups are now always
returned with trivial class first.[133X
[30X [33X[0;6YUp to now, it could happen that [2XCheckFixedPoints[102X ([14XReference:
CheckFixedPoints[114X) reduced an entry in its second argument to a list
containing only one integer but did not replace the list by that
integer; according to the conventions, this replacement should be
done.[133X
[30X [33X[0;6YThe functions [10XPrintTo[110X and [10XAppendTo[110X did not work correctly for streams.
[Reported by Marco Costantini][133X
[30X [33X[0;6YThe function [10XBasis[110X did not return a value when it was called with the
argument [10XRationals[110X. [Reported by Klaus Lux][133X
[30X [33X[0;6YFor certain matrix groups, the function [10XStructureDescription[110X raised an
error message. The reason for this was that a trivial method for
[10XIsGeneralLinearGroup[110X for matrix groups in [10Xlib/grpmat.gi[110X which is
ranked higher than the nontrivial method for generic groups in
[10Xlib/grpnames.gi[110X called the operation [10XIsNaturalGL[110X, for which there was
no nontrivial method available. [Reported by Nilo de Roock][133X
[30X [33X[0;6YAction on sets of length 1 was not correctly handled. [Reported by
Mathieu Dutour][133X
[30X [33X[0;6YNow [10XWriteByte[110X admits writing zero characters to all streams. [Reported
by Marco Costantini][133X
[30X [33X[0;6YThe conjugacy test for subgroups tests for elementary abelian regular
normal subgroup (EARNS) conjugacy. The fix will catch this in the case
that the second group has no EARNS. [Reported by Andrew Johnson][133X
[30X [33X[0;6YSo far, the UNIX installation didn't result in a correct gap.sh if the
installation path contained space characters. Now it should handle
this case correctly, as well as other unusual characters in path names
(except for double quotes).[133X
[1X8.8 [33X[0;0Y[5XGAP[105X[101X[1X 4.4 Update 8 (September 2006)[133X[101X
[33X[0;0YNew or improved functionality:[133X
[30X [33X[0;6YA function [2XPositions[102X ([14XReference: Positions[114X) with underlying operation
[10XPositionsOp[110X, which returns the list of all positions at which a given
object appears in a given list.[133X
[30X [33X[0;6Y[2XLogFFE[102X ([14XReference: LogFFE[114X) now returns [10Xfail[110X when the element is not a
power of the base.[133X
[30X [33X[0;6YIt is now allowed to continue long integers, strings or identifiers by
ending a line with a backslash or with a backslash and carriage return
character. So, files with [5XGAP[105X code and DOS/Windows-style line breaks
are now valid input on all architectures.[133X
[30X [33X[0;6YThe command line for starting the session and the system environment
are now available in [10XGAPInfo.SystemCommandLine[110X and
[10XGAPInfo.SystemEnvironment[110X.[133X
[30X [33X[0;6YNames of all bound global variables and all component names are
available on [5XGAP[105X level.[133X
[30X [33X[0;6YAdded a few new Conway polynomials computed by Kate Minola and John
Bray.[133X
[30X [33X[0;6YThere is a new concept of [13Xrandom sources[113X, see [2XIsRandomSource[102X
([14XReference: IsRandomSource[114X), which provides random number generators
which are independent of each other. There is kernel code for the
Mersenne twister random number generator (based on the code by Makoto
Matsumoto distributed at
[7Xhttp://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html[107X). It provides
fast 32-bit pseudorandom integers with a period of length [22X2^19937-1[122X
and a 623-dimensional equidistribution. The library methods for random
elements of lists and for random (long) integers are using the
Mersenne twister now.[133X
[30X [33X[0;6YIn line editing mode (usual input mode without -n option) in lines
starting with [10Xgap> [110X, [10X> [110X or [10Xbrk> [110X this beginning part is immediately
removed. This is a convenient feature that allows one to cut and paste
input lines from other sessions or from manual examples into the
current session.[133X
[33X[0;0YFixed bugs which could produce wrong results:[133X
[30X [33X[0;6YThe function [2XDecomposition[102X ([14XReference: Decomposition[114X) returned
coefficient vectors also in certain situations where in fact no
decomposition exists. This happened only if the matrix entered as the
first argument contained irrational values and a row in the matrix
entered as the second argument did not respect the algebraic conjugacy
relations between the columns of the first argument. So there was no
problem for the usual cases that the two matrices are integral or that
they are lists of Brauer characters. [Reported by Jürgen Müller][133X
[30X [33X[0;6YPC group homomorphisms can claim a wrong kernel after composition.
[Reported by Serge Bouc][133X
[30X [33X[0;6YThe return value of [2XOctaveAlgebra[102X ([14XReference: OctaveAlgebra[114X) had an
inconsistent defining structure constants table for the case of
coefficients fields not containing the integer zero. [Reported by
Gábor Nagy][133X
[30X [33X[0;6YThe manual guarantees that a conjugator automorphism has a conjugating
element in the group if possible. This was not guaranteed.[133X
[30X [33X[0;6Y[2XStabChain[102X ([14XReference: StabChain for a group (and a record)[114X) for
symmetric groups gave a wrong result if fixed points were prescribed
for base.[133X
[30X [33X[0;6YContrary to what is documented the function [10XPOW_OBJ_INT[110X returned an
immutable result for [10XPOW_OBJ_INT(m,1)[110X for a mutable object [10Xm[110X. This is
triggered by the code [10Xm^1[110X.[133X
[30X [33X[0;6Y[2XPseudoRandom[102X ([14XReference: PseudoRandom[114X) for a group had a problem if
the group had lots of equal generators. The produced elements were
extremely poorly distributed in that case. This is now fixed for the
case that elements of the group can easily be sorted.[133X
[30X [33X[0;6YFixed the bug that the type of a boolean list (see [2XMore about Boolean
Lists[102X ([14XReference: More about Boolean Lists[114X)) was computed wrongly: The
type previously had [10XIS_PLIST_REP[110X instead of [10XIS_BLIST_REP[110X in its filter
list.[133X
[30X [33X[0;6Y[2XOrbits[102X ([14XReference: Orbits[114X) did not respect a special [2XPositionCanonical[102X
([14XReference: PositionCanonical[114X) method for right transversals.
[Reported by Steve Costenoble][133X
[30X [33X[0;6YWrong results for [2XGcdInt[102X ([14XReference: GcdInt[114X) for some arguments on 64
bit systems only. [Reported by Robert Morse][133X
[30X [33X[0;6YWhen prescribing a subgroup to be included, the low index algorithm
for fp groups sometimes returned subgroups which are in fact
conjugate. (No subgroups are missing.) [Reported by Ignaz Soroko][133X
[33X[0;0YFixed bugs which could lead to crashes:[133X
[30X [33X[0;6YThe command line option [10X-x[110X allowed arguments > 256 which can then
result in internal buffers overflowing. Now bigger numbers in the
argument are equivalent to [10X-x 256[110X. [Reported by Michael Hartley][133X
[33X[0;0YOther fixed bugs:[133X
[30X [33X[0;6YTwo special methods for the operation [2XCompositionMapping2[102X ([14XReference:
CompositionMapping2[114X) were not correct, such that composing (and
multiplying) certain group homomorphisms did not work. [Reported by
Peter Mayr][133X
[30X [33X[0;6YIn the definition of [2XFrobeniusCharacterValue[102X ([14XReference:
FrobeniusCharacterValue[114X), it had been stated erroneously that the
value must lie in the field of [22Xp^n[122X-th roots of unity; the correct
condition is that the value must lie in the field of [22X(p^n-1)[122X-th roots
of unity. [Reported by Jack Schmidt][133X
[30X [33X[0;6YThe function [2XDirectProduct[102X ([14XReference: DirectProduct[114X) failed when one
of the factors was known to be infinite.[133X
[30X [33X[0;6YFor a linear action homomorphism [10XPreImageElm[110X was very slow because
there was no good method to check for injectivity, which is needed for
nearly all good methods for [10XPreImageElm[110X. This change adds such a new
method for [10XIsInjective[110X. [Reported by Akos Seress][133X
[30X [33X[0;6YRare errors in the complement routine for permutation groups.[133X
[30X [33X[0;6YBlocks code now uses jellyfish-style random elements to avoid bad
Schreier trees.[133X
[30X [33X[0;6YA method for [2XIsPolycyclicGroup[102X ([14XReference: IsPolycyclicGroup[114X) has been
added. Such a method was missing so far.[133X
[30X [33X[0;6YCorrected [2XEpimorphismSchurCover[102X ([14XReference: EpimorphismSchurCover[114X) to
handle the trivial group correctly. Added new methods that follow
immediately from computing the Schur Cover of a group. The attribute
[2XEpicentre[102X ([14XReference: Epicentre[114X), the operations
[2XNonabelianExteriorSquare[102X ([14XReference: NonabelianExteriorSquare[114X) and
[2XEpimorphismNonabelianExteriorSquare[102X ([14XReference:
EpimorphismNonabelianExteriorSquare[114X), and the property [2XIsCentralFactor[102X
([14XReference: IsCentralFactor[114X) are added to the library with
documentation and references.[133X
[30X [33X[0;6YDisplay the correct expression in a call stack trace if an operation
was called somewhere up due to the evaluation of a unary or binary
operation.[133X
[30X [33X[0;6YMade [10XStripMemory[110X an operation rather than a global function. Added
[10XForgetMemory[110X operation.[133X
[30X [33X[0;6YAdjust things slightly to make later conversion to new
vectors/matrices easier. Nothing of this should be visible.[133X
[30X [33X[0;6YCorrected some details in the documentation of the [5XGAP[105X language.
[Reported by Alexander Konovalov][133X
[30X [33X[0;6YNow [2XPositionSorted[102X ([14XReference: PositionSorted[114X) is much faster on long
mutable plain lists. (The former operation is substituted by a
function and a new operation [10XPositionSortedOp[110X.) [Reported by Silviu
Radu][133X
[30X [33X[0;6YNow it is possible to switch repeated warnings off when working with
iterative polynomial rings.[133X
[1X8.9 [33X[0;0Y[5XGAP[105X[101X[1X 4.4 Update 9 (November 2006)[133X[101X
[33X[0;0YFixed bugs which could produce wrong results:[133X
[30X [33X[0;6YThe methods of [2XReadByte[102X ([14XReference: ReadByte[114X) for reading from files
or terminals returned wrong results for characters in the range
[10X[128..255][110X. [Reported by Yevgen Muntyan][133X
[33X[0;0YOther fixed bugs:[133X
[30X [33X[0;6YA method for the operation [2XPseudoRandom[102X ([14XReference: PseudoRandom[114X) did
not succeed.[133X
[30X [33X[0;6YA fix for [10XOrbits[110X with a set of points as a seed.[133X
[30X [33X[0;6YAdded a generic method such that [2XPositions[102X ([14XReference: Positions[114X)
works with all types of lists.[133X
[30X [33X[0;6YFixed a problem in choosing the prime in the Dixon-Schneider
algorithm. [Reported by Toshio Sumi][133X
[33X[0;0YNew or improved functionality:[133X
[30X [33X[0;6Y[10XReducedOrdinary[110X was used in the manual, but was not documented, being
a synonym for the documented [10XReducedCharacters[110X. Changed manual
examples to use the latter form. [Reported by Vahid Dabbaghian][133X
[1X8.10 [33X[0;0Y[5XGAP[105X[101X[1X 4.4 Update 10 (October 2007)[133X[101X
[33X[0;0YNew or improved functionality:[133X
[30X [33X[0;6YFiles in the [11Xcnf[111X directory of the [5XGAP[105X distribution are now archived as
binary files. Now [5XGAP[105X can be installed with UNIX or with WINDOWS style
line breaks on any system and should work without problems.[133X
[30X [33X[0;6YSince large finite fields are available, some restrictions in the code
for computing irreducible modules over finite fields are no longer
necessary. (They had been introduced in order to give better error
messages.)[133X
[30X [33X[0;6YMade PositionSublist faster in case the search string does not contain
repetitive patterns.[133X
[30X [33X[0;6YThe function [10XMakeImmutable[110X now returns its argument.[133X
[30X [33X[0;6YDynamically loaded modules now work on Mac OS X. As a consequence,
this allows to work with the Browse, EDIM and IO packages on Mac OS X.[133X
[30X [33X[0;6YIntroduced [10XViewObj[110X and [10XPrintObj[110X methods for algebraic number fields.
Made them applicable to [10XAlgebraicExtension[110X by adding the property
[10XIsNumberField[110X in the infinite field case.[133X
[30X [33X[0;6YThe function [2XCharacterTableRegular[102X ([14XReference: CharacterTableRegular[114X)
is documented now.[133X
[30X [33X[0;6YThe function [2XScalarProduct[102X ([14XReference: ScalarProduct for characters[114X)
now accepts also Brauer characters as arguments.[133X
[30X [33X[0;6YThe function [2XQuaternionAlgebra[102X ([14XReference: QuaternionAlgebra[114X) now
accepts also a list of field elements instead of a field. Also, now
the comparison of return values (w.r.t. equality, containment) yields
[10Xtrue[110X if the parameters coincide and the ground fields fit.[133X
[30X [33X[0;6YThe function [2XRemoveCharacters[102X ([14XReference: RemoveCharacters[114X) is now
documented.[133X
[30X [33X[0;6YLists in [5XGAP[105X sometimes occupy memory for possible additional entries.
Now plain lists and strings read by [5XGAP[105X and the lists returned by [2XList[102X
([14XReference: list element operation[114X) only occupy the memory they really
need. For more details see the documentation of the new function
[2XEmptyPlist[102X ([14XReference: EmptyPlist[114X).[133X
[30X [33X[0;6YThere are some new Conway polynomials in characteristic 2 and 3
provided by Kate Minola.[133X
[30X [33X[0;6YA new operation [10XMemoryUsage[110X determines the memory usage in bytes of an
object and all its subobjects. It does not consider families and types
but handles arbitrary self-referential structures of objects.[133X
[33X[0;0YFixed bugs which could produce wrong results:[133X
[30X [33X[0;6YWhen forming the semidirect product of a matrix group with a vector
space over a non-prime field the embedding of the vector space gave a
wrong result. [Reported by anvita21][133X
[30X [33X[0;6YDefaultRing failed for constant polynomials over nonprime fields.
[Reported by Stefan Kohl][133X
[30X [33X[0;6YThe method in ffeconway.gi that gets coefficients WRT to the canonical
basis of the field from the representation is only correct if the
basis is over the prime field. Added a TryNextMethod if this is not
the case. [Reported by Alla Detinko][133X
[30X [33X[0;6YCreating a large (>[22X2^16[122X) field over a non-prime subfield went
completely wrong. [Reported by Jack Schmidt, from Alla Detinko][133X
[30X [33X[0;6YA method for Coefficients for Conway polynomial FFEs didn't check that
the basis provided was the canonical basis of the RIGHT field.
[Reported by Bettina Eick][133X
[30X [33X[0;6YAn elementary abelian series was calculated wrongly. [Reported by N.
Sieben][133X
[30X [33X[0;6YOrbits on sets of transformations failed.[133X
[30X [33X[0;6YWrong methods for [2XGeneratorsOfRing[102X ([14XReference: GeneratorsOfRing[114X) and
[2XGeneratorsOfRingWithOne[102X ([14XReference: GeneratorsOfRingWithOne[114X) have been
removed. These methods were based on the assumption that one can
obtain a set of ring generators by taking the union of a known set of
field generators, the set of the inverses of these field generators
and {1}.[133X
[30X [33X[0;6YThe name of a group of order 117600 and degree 50 was incorrect in the
[2XPrimitive Permutation Groups[102X ([14Xprimgrp: Primitive Permutation Groups[114X)
Primitive Permutation Groups library. In particular, a group was
wrongly labelled as PGL(2, 49).[133X
[30X [33X[0;6YThere was a possible error in [10XSubgroupsSolvableGroup[110X when computing
subgroups within a subgroup.[133X
[30X [33X[0;6YAn error in 2-Cohomology computation for pc groups was fixed.[133X
[30X [33X[0;6Y[10XIsConjugate[110X used normality in a wrong supergroup[133X
[33X[0;0YFixed bugs which could lead to crashes:[133X
[30X [33X[0;6Y[5XGAP[105X crashed when the [10XPATH[110X environment variable was not set. [Reported
by Robert F. Morse][133X
[30X [33X[0;6Y[5XGAP[105X could crash when started with option [10X-x 1[110X. Now the number of
columns is initialized with at least 2. [Reported by Robert F. Morse][133X
[30X [33X[0;6YAfter loading a saved workspace [5XGAP[105X crashed when one tried to slice a
compressed vector over a field with 2 < q <= 256 elements, which had
already existed in the saved workspace. [Reported by Laurent
Bartholdi][133X
[30X [33X[0;6Y[10XFFECONWAY.WriteOverSmallestCommonField[110X tripped up when the common
field is smaller than the field over which some of the vector elements
are written, because it did a test based on the degree of the element,
not the field it is written over. [Reported by Thomas Breuer][133X
[30X [33X[0;6YFixed the following error: When an FFE in the Conway polynomial
representation actually lied in a field that is handled in the
internal representation (eg [22XGF(3)[122X) and you tried to write it over a
bigger field that is ALSO handled internally (eg [22XGF(9)[122X) you got an
element written over the larger field, but in the Conway polynomial
representation, which is forbidden. [Reported by Jack Schmidt][133X
[30X [33X[0;6YAttempting to compress a vector containing elements of a small finite
field represented as elements of a bigger (external) field caused a
segfault. [Reported by Edmund Robertson][133X
[30X [33X[0;6Y[5XGAP[105X crashed when [10XBlistList[110X was called with a range and a list
containing large integers or non-integers. [Reported by Laurent
Bartholdi][133X
[30X [33X[0;6Y[5XGAP[105X no longer crashes when [10XOnTuples[110X is called with a list that
contains holes. [Reported by Thomas Breuer][133X
[33X[0;0YOther fixed bugs:[133X
[30X [33X[0;6Y[10XSocle[110X for the trivial group could produce an error message.[133X
[30X [33X[0;6Y[2XDirectoryContents[102X ([14XReference: DirectoryContents[114X) ran into an error for
immutable strings without trailing slash as argument. [Reported by
Thomas Breuer][133X
[30X [33X[0;6YThe functions [2XIsInjective[102X ([14XReference: IsInjective[114X) and [2XIsSingleValued[102X
([14XReference: IsSingleValued[114X) did not work for general linear mappings
with trivial (pre)image. [Reported by Alper Odabas][133X
[30X [33X[0;6YCreating an enumerator for a prime field with more than 65536 elements
ran into an infinite recursion. [Reported by Akos Seress][133X
[30X [33X[0;6YThe performance of [10XList[110X, [10XFiltered[110X, [10XNumber[110X, [10XForAll[110X and [10XForAny[110X if
applied to non-internally represented lists was improved. Also the
performance of iterators for lists was slightly improved.[133X
[30X [33X[0;6YFinite field elements now know that they can be sorted easily which
improves performance in certain lookups.[133X
[30X [33X[0;6YA method for [2XIsSubset[102X ([14XReference: IsSubset[114X) was missing for the case
that exactly one argument is an inhomogeneous list. [Reported by
Laurent Bartholdi][133X
[30X [33X[0;6YLong integers in expressions are now printed (was not yet
implemented). [Reported by Thomas Breuer][133X
[30X [33X[0;6YFixed kernel function for printing records.[133X
[30X [33X[0;6YNew C library interfaces (e.g., to ncurses in the [5XBrowse[105X package) need
some more memory to be allocated with [10Xmalloc[110X. The default value of [5XGAP[105X
[10X-a[110X option is now [10X2m>[110X.[133X
[30X [33X[0;6YAvoid warnings about pointer types by newer gcc compilers.[133X
[30X [33X[0;6Y[10XIsBound(l[pos])[110X was failing for a large integer [3Xpos[103X only when coded
(e.g. in a loop or function body).[133X
[30X [33X[0;6Y[10XZmodpZObj[110X is now a synonym for [10XZmodnZObj[110X such that from now on such
objects print in a way that can be read back into [5XGAP[105X.[133X
[30X [33X[0;6YThe outdated note that binary streams are not yet implemented has been
removed.[133X
[1X8.11 [33X[0;0Y[5XGAP[105X[101X[1X 4.4 Update 11 (December 2008)[133X[101X
[33X[0;0YFixed bugs which could produce wrong results:[133X
[30X [33X[0;6Y[2XMemoryUsage[102X ([14XReference: MemoryUsage[114X) on objects with no subobjects
left them in the cache and thus reported 0 in subsequent calls to
MemoryUsage for the same object. [Reported by Stefan Kohl][133X
[30X [33X[0;6Y[2XIrr[102X ([14XReference: Irr[114X) might be missing characters. [Reported by Angel
del Rio][133X
[30X [33X[0;6YUp to now, it was allowed to call the function
[2XFullMatrixAlgebraCentralizer[102X ([14XReference: FullMatrixAlgebraCentralizer[114X)
with a field and a list of matrices such that the entries of the
matrices were not contained in the field; in this situation, the
result did not fit to the documentation. Now the entries of the
matrices are required to lie in the field, if not then an error is
signaled.[133X
[30X [33X[0;6YFor those finite fields that are regarded as field extensions over
non-prime fields (one can construct such fields with [2XAsField[102X
([14XReference: AsField[114X)), the function [2XDefiningPolynomial[102X ([14XReference:
DefiningPolynomial[114X) erroneously returned a polynomial w.r.t. the
extension of the prime field. [Reported by Stefan Kohl][133X
[30X [33X[0;6YSince the release of [5XGAP[105X 4.4.10, the return values of the function
[2XQuaternionAlgebra[102X ([14XReference: QuaternionAlgebra[114X) were not consistent
w.r.t. the attribute [2XGeneratorsOfAlgebra[102X ([14XReference:
GeneratorsOfAlgebra[114X); the returned list could have length four or
five. Now always the list of elements of the canonical basis is
returned.[133X
[30X [33X[0;6Y[2XMonomialGrevlexOrdering[102X ([14XReference: MonomialGrevlexOrdering[114X)
calculated a wrong ordering in certain cases. [Reported by Paul Smith][133X
[30X [33X[0;6YThe ([5XGAP[105X kernel) method for the operation [2XIntersectSet[102X ([14XReference:
IntersectSet[114X) for ranges had two bugs, which could yield a result
range with either too few or too many elements. As a consequence, for
example the [2XIntersection[102X ([14XReference: Intersection[114X) results for ranges
could be wrong. [Reported by Matthew Fayers][133X
[30X [33X[0;6YFixed a bug in the short-form display of elements of larger finite
fields, a bug in some cross-field conversions and some inefficiencies
and a missing method in the [2XLogFFE[102X ([14XReference: LogFFE[114X) code. [Reported
by Jia Huang][133X
[30X [33X[0;6YIn rare cases [2XSmithNormalFormIntegerMatTransforms[102X ([14XReference:
SmithNormalFormIntegerMatTransforms[114X) returned a wrong normal form (the
version without transforming matrices did not have this problem). This
is fixed. [Reported by Alexander Hulpke][133X
[30X [33X[0;6YThe variant of the function [2XStraightLineProgram[102X ([14XReference:
StraightLineProgram for a list of lines (and the number of
generators)[114X) that takes a string as its first argument returned wrong
results if the last character of this string was a closing bracket.[133X
[30X [33X[0;6YThe code for central series in a permutation group used too tight a
bound and thus falsely return a nilpotent permutation group as
non-nilpotent.[133X
[33X[0;0YFixed bugs which could lead to crashes:[133X
[30X [33X[0;6YUnder certain circumstances the kernel code for position in blists
would access a memory location just after the end of the blist. If
this location was not accessible, a crash could result. This was
corrected and the code was cleaned up. [Reported by Alexander Hulpke][133X
[33X[0;0YOther fixed bugs:[133X
[30X [33X[0;6YThe function [2XIsomorphismTypeInfoFiniteSimpleGroup[102X ([14XReference:
IsomorphismTypeInfoFiniteSimpleGroup[114X) can be called with a positive
integer instead of a group, and then returns information about the
simple group(s) of this order. (This feature is currently
undocumented.) For the argument 1, however, it ran into an infinite
loop.[133X
[30X [33X[0;6YA lookup in an empty dictionary entered a break loop. Now returns
[10Xfail[110X. [Reported by Laurent Bartholdi][133X
[30X [33X[0;6YThe c++ keyword [10Xand[110X can no longer be used as a macro parameter in the
kernel. [Reported by Paul Smith][133X
[30X [33X[0;6YThe operation [2XKernelOfMultiplicativeGeneralMapping[102X ([14XReference:
KernelOfMultiplicativeGeneralMapping[114X) has methods designed to handle
maps between permutation groups in a two-step approach, but did not
reliably trigger the second step. This has now been fixed, preventing
a slow infinite loop repeating the first step. This was normally only
seen as part of a larger calculation.[133X
[30X [33X[0;6YThere were two methods for the operation [2XIntersection2[102X ([14XReference:
Intersection2[114X) which have implicitly assumed that finiteness of a
collection can always be decided. Now, these methods check for
[2XIsFinite[102X ([14XReference: IsFinite[114X) and [2XCanComputeSize[102X ([14XReference:
CanComputeSize[114X) prior to calling [2XIsFinite[102X ([14XReference: IsFinite[114X).[133X
[30X [33X[0;6YMade error message in case of corrupted help book information
(manual.six file) shorter and more informative. [Reported by Alexander
Hulpke][133X
[30X [33X[0;6Y[5XGAP[105X cannot call methods with more than six arguments. Now the
functions [2XNewOperation[102X ([14XReference: NewOperation[114X), [2XDeclareOperation[102X
([14XReference: DeclareOperation[114X), and [2XInstallMethod[102X ([14XReference:
InstallMethod[114X) signal an error if one attempts to declare an operation
or to install a method with more than six arguments.[133X
[30X [33X[0;6YUp to now, [2XIsOne[102X ([14XReference: IsOne[114X) had a special method for general
mappings, which was much worse than the generic method; this special
method has now been removed.[133X
[30X [33X[0;6YWhen printing elements of an algebraic extension parentheses around
coefficients were missing. [Reported by Maxim Hendriks][133X
[33X[0;0YNew or improved functionality:[133X
[30X [33X[0;6YMake dynamic loading of modules possible on CYGWIN using a DLL based
approach. Also move to using autoconf version 2.61.[133X
[30X [33X[0;6YOne can now call [2XBasis[102X ([14XReference: Basis[114X), [2XIterator[102X ([14XReference:
Iterator[114X) etc. with the return value of the function
[2XAlgebraicExtension[102X ([14XReference: AlgebraicExtension[114X).[133X
[30X [33X[0;6YThe function [2XFrobeniusCharacterValue[102X ([14XReference:
FrobeniusCharacterValue[114X) returned [10Xfail[110X for results that require a
finite field with more than 65536 elements. Meanwhile [5XGAP[105X can handle
larger finite fields, so this restriction was removed. (It is still
possible that [2XFrobeniusCharacterValue[102X ([14XReference:
FrobeniusCharacterValue[114X) returns [10Xfail[110X.)[133X
[30X [33X[0;6YMethods for testing membership in general linear groups and special
linear groups over the integers have been added.[133X
[30X [33X[0;6YMethods for [2XString[102X ([14XReference: String[114X) and [10XViewString[110X for full row
modules have been added. Further, a default method for [2XIsRowModule[102X
([14XReference: IsRowModule[114X) has been added, which returns [10Xfalse[110X for
objects which are not free left modules.[133X
[30X [33X[0;6YA [10XViewString[110X method for objects with name has been added.[133X
[30X [33X[0;6YThe method for [2XView[102X ([14XReference: View[114X) for polynomial rings has been
improved, and methods for [2XString[102X ([14XReference: String[114X) and [10XViewString[110X
for polynomial rings have been added.[133X
[30X [33X[0;6Y[2XBinomial[102X ([14XReference: Binomial[114X) now works with huge [10Xn[110X.[133X
[30X [33X[0;6YThe function [2XInducedClassFunctionsByFusionMap[102X ([14XReference:
InducedClassFunctionsByFusionMap[114X) is now documented.[133X
[30X [33X[0;6YThe return values of the function [2XQuaternionAlgebra[102X ([14XReference:
QuaternionAlgebra[114X) now store that they are division rings (if optional
parameters are given then of course ths depends on these parameters).[133X
[1X8.12 [33X[0;0Y[5XGAP[105X[101X[1X 4.4 Update 12 (December 2008)[133X[101X
[33X[0;0YFixed bugs which could lead to crashes:[133X
[30X [33X[0;6YA bug whereby leaving an incomplete statement on a line (for instance
typing while and then return) when prompt colouring was in use could
lead to [5XGAP[105X crashing.[133X
[33X[0;0YOther fixed bugs:[133X
[30X [33X[0;6YA bug which made the command-line editor unusable in a 64-bit version
of [5XGAP[105X on Mac OS X.[133X