CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.

| Download

GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it

Views: 418346
1
<Chapter Label="HistoryOfGAP44">
2
<Heading>Overview of updates for &GAP; 4.4</Heading>
3
4
This chapter lists changes in the main system (excluding packages)
5
that have been corrected or added in bugfixes and updates for
6
&GAP; 4.4.
7
8
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
9
<Section Label="fix442">
10
<Heading>&GAP; 4.4 Bugfix 2 (April 2004)</Heading>
11
12
Fixed bugs which could lead to crashes:
13
<List>
14
<Item>
15
A crash when incorrect types of arguments are passed to <C>FileString</C>.
16
</Item>
17
</List>
18
19
Other fixed bugs:
20
<List>
21
<Item>A bug in <C>DerivedSubgroupTom</C> and <C>DerivedSubgroupsTom</C>.
22
</Item>
23
<Item>An error in the inversion of certain <C>ZmodnZObj</C> elements.
24
</Item>
25
<Item>A wrong display string of the numerator in rational
26
functions returned by <C>MolienSeriesWithGivenDenominator</C>
27
(in the case that the constant term of this numerator is zero).
28
</Item>
29
</List>
30
31
</Section>
32
33
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
34
35
<Section Label="fix443">
36
<Heading>&GAP; 4.4 Bugfix 3 (May 2004)</Heading>
37
38
Fixed bugs which could produce wrong results:
39
40
<List>
41
<Item>Incorrect setting of system variables (e.g., home directory
42
and command line options) after loading a workspace.
43
</Item>
44
<Item>Wrong handling of integer literals within functions or loops
45
on 64-bit architectures (only integers in the range from
46
<M>2^{28}</M> to <M>2^{60}</M>).
47
</Item>
48
</List>
49
50
Fixed bugs which could lead to crashes:
51
52
<List>
53
<Item>A problem in the installation of the multiplication routine
54
for matrices that claimed to be applicable for more general list
55
multiplications.
56
</Item>
57
<Item>A problem when computing weight distributions of codes with
58
weights &gt; <M>2^{28}</M>.
59
</Item>
60
</List>
61
62
Other fixed bugs:
63
64
<List>
65
<Item>Problems with the online help with some manual sections.
66
</Item>
67
<Item>Problems of the online help on Windows systems.
68
</Item>
69
<Item>A problem in <C>GQuotients</C> when mapping from a finitely
70
presented group which has a free direct factor.
71
</Item>
72
<Item>A bug in the function <C>DisplayRevision</C>.
73
</Item>
74
<Item>The trivial finitely presented group on no generators was not
75
recognized as finitely presented.
76
</Item>
77
<Item>A problem with <C>Process</C>.
78
</Item>
79
<Item>A problem when intersecting subgroups of finitely presented
80
groups that are represented in <Q>quotient representation</Q> with
81
the quotient not apermutation group.
82
</Item>
83
<Item>A bug in the generic <C>Intersection2</C> method for vector
84
spaces, in the case that both spaces are trivial.
85
</Item>
86
<Item>Enable ReeGroup(q) for <M>q = 3</M>.
87
</Item>
88
</List>
89
90
</Section>
91
92
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
93
94
<Section Label="fix444">
95
<Heading>&GAP; 4.4 Bugfix 4 (December 2004)</Heading>
96
97
Fixed bugs which could produce wrong results:
98
99
<List>
100
<Item>
101
An error in the <C>Order</C> method for matrices over
102
cyclotomic fields which caused this method to return <C>infinity</C>
103
for matrices of finite order in certain cases.
104
</Item>
105
<Item>
106
Representations computed by <C>IrreducibleRepresentations</C>
107
in characteristic 0 erraneously claimed to be faithful.
108
</Item>
109
<Item>A primitive representation of degree 574 for PSL(2,41)
110
has been missing in the classification on which the &GAP;
111
library was built.
112
</Item>
113
<Item>
114
A bug in <C>Append</C> for compressed vectors over GF(2): if the
115
length of the result is 1 mod 32 (or 64) the last entry was
116
forgotten to copy.
117
</Item>
118
<Item>
119
A problem with the Ree group Ree(3) of size 1512 claiming
120
to be simple.
121
</Item>
122
<Item>
123
An error in the membership test for groups
124
GU(n,q) and SU(n,q) for non-prime <M>q</M>.
125
</Item>
126
<Item>
127
An error in the kernel code for ranges which caused e.g.
128
<C>-1 in [1..2]</C> to return <K>true</K>.
129
</Item>
130
<Item>
131
An error recording boolean lists in saved workspaces.
132
</Item>
133
<Item>
134
A problem in the selection function for primitive and
135
transitive groups if no degree is given.
136
</Item>
137
<Item>
138
<C>ReducedConfluentRewritingSystem</C>
139
returning a cached result that might
140
not conform to the ordering specified.
141
</Item>
142
</List>
143
144
Other fixed bugs:
145
146
<List>
147
<Item>
148
A problem with the function <C>SuggestUpdates</C> to check for
149
the most recent version of packages available.
150
</Item>
151
<Item>
152
A problem that caused <C>MatrixOfAction</C> to produce an error when
153
the algebra module was constructed as a direct sum.
154
</Item>
155
<Item>
156
Problems with computing <M>n</M>-th power maps of character tables,
157
where n is negative and the table does not yet store its irreducible
158
characters.
159
</Item>
160
<Item>
161
Element conjugacy in large-base permutation groups sometimes was
162
unnecessarily inefficient.
163
</Item>
164
<Item>
165
A missing method for getting the letter representation of an associate
166
word in straight line program representation.
167
</Item>
168
<Item>
169
A problem with the construction of vector space bases where the given list
170
of basis vectors is itself an object that was returned by <C>Basis</C>.
171
</Item>
172
<Item>
173
A problem of <C>AbelianInvariantsMultiplier</C> insisting that a result of
174
<C>IsomorphismFpGroup</C> is known to be surjective.
175
</Item>
176
<Item>
177
An error in the routine for <C>Resultant</C>
178
if one of the polynomials has degree zero.
179
</Item>
180
</List>
181
182
</Section>
183
184
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
185
186
<Section Label="fix445">
187
<Heading>&GAP; 4.4 Update 5 (May 2005)</Heading>
188
189
Fixed bugs which could produce wrong results:
190
<List>
191
<Item>
192
<Ref BookName="ref" Func="GroupWithGenerators"/>
193
returned a meaningless group object instead of signaling an error
194
when it was called with an empty list of generators.
195
</Item>
196
<Item>
197
When computing preimages under an embedding into a direct product
198
of permutation groups, if the element was not in the image of the
199
embedding then a permutation had been returned instead
200
of <C>fail</C>.
201
</Item>
202
<Item>
203
Two problems with <Ref BookName="ref" Func="PowerMod"/>
204
for polynomials. [Reported by Jack Schmidt]
205
</Item>
206
<Item>
207
Some methods for computing the sum of ideals returned the first
208
summand instead of the sum. [Reported by Alexander Konovalov]
209
</Item>
210
<Item>
211
Wrong result in <Ref BookName="ref" Func="Intersection"/> for pc groups.
212
</Item>
213
<Item>
214
The function <Ref BookName="ref" Func="CompareVersionNumbers"/>
215
erroneously ignored leading non-digit characters.
216
<P/>
217
A new feature in the corrected version is an optional third argument
218
<C>"equal"</C>, which causes the function to return
219
<C>true</C> only if the first two arguments describe
220
equal version numbers; documentation is available in the ext-manual.
221
This new feature is used in <Ref BookName="ref" Func="LoadPackage"/>,
222
now one can require a specific version of a package.
223
<P/>
224
The library code still contained parts of the handling of completion
225
files for packages, which does not work and therefore had already
226
been removed from the documentation. This code has now been removed.
227
<P/>
228
Now a new component <C>PreloadFile</C> is supported in
229
<Ref BookName="ref" Func="The PackageInfo.g File"/> files;
230
if it is bound then the file in question is read immediately before the
231
package or its documentation is loaded.
232
</Item>
233
<Item>
234
The result of <Ref BookName="ref" Func="String"/> for strings not
235
in <Ref BookName="ref" Func="IsStringRep"/> that occur as list
236
entries or record components was erroneously missing the double
237
quotes around the strings.
238
</Item>
239
<Item>
240
A bug which caused <Ref BookName="ref" Func="InducedPcgs"/> to
241
return a pcgs which is not induced wrt. the parent pcgs of
242
<C>pcgs</C>. This may cause unpredictable behaviour, e.&nbsp;g.
243
when <C>SiftedPcElement</C> is used subsequently.
244
[Reported by Alexander Konovalov]
245
</Item>
246
<Item>
247
Fixed a bug in <C>SmallGroupsInformation(512)</C>.
248
</Item>
249
<Item>
250
<Ref BookName="ref" Func="PowerModCoeffs"/> with exponent 1 for
251
compressed vectors did not reduce (a copy of) the input vector
252
before returning it. [Reported by Frank Lübeck]
253
</Item>
254
<Item>
255
Sorting a mutable non-plain list (e.g., a compressed matrix over
256
fields of order &lt; 257) could potentially destroy that object.
257
[Reported by Alexander Hulpke]
258
</Item>
259
<Item>
260
Under rare circumstances computing the closure of a permutation
261
group by a normalizing element could produce a corrupted stabilizer
262
chain. (The underlying algorithm uses random elements, probability
263
of failure was below 1 percent). [Reported by Thomas Breuer]
264
</Item>
265
</List>
266
267
Fixed bugs which could lead to crashes:
268
<List>
269
<Item>
270
Some code and comments in the &GAP; kernel assumed that there is no
271
garbage collection during the core printing function <C>Pr</C>,
272
which is not correct. This could cause &GAP; in rare cases to
273
crash during printing permutations, cyclotomics or strings with
274
zero bytes. [Reported by Warwick Harvey]
275
</Item>
276
</List>
277
278
Other fixed bugs:
279
<List>
280
281
<Item>
282
A rare problem with the choice of prime in the Dixon-Schneider
283
algorithm for computing the character table of a group.
284
[Reported by Jack Schmidt]
285
</Item>
286
287
<Item>
288
<Ref BookName="ref" Func="DirectProduct"/> for trivial permutation
289
groups returned a strange object.
290
</Item>
291
292
<Item>
293
A problem with <Ref BookName="ref" Func="PolynomialReduction"/>
294
running into an infinite loop.
295
</Item>
296
297
<Item>
298
Adding linear mappings with different image domains
299
was not possible. [Reported by Pasha Zusmanovich]
300
</Item>
301
302
<Item>
303
Multiplying group ring elements with rationals was not
304
possible. [Reported by Laurent Bartholdi]
305
</Item>
306
307
<Item>
308
<Ref BookName="ref" Func="Random"/>
309
now works for finite fields of size
310
larger than <M>2^{28}</M>. [Reported by Jack Schmidt]
311
</Item>
312
313
<Item>
314
Univariate polynomial creators did modify the coefficient
315
list passed. [Reported by Jürgen Müller]
316
</Item>
317
318
<Item>
319
Fixed <Ref BookName="ref" Func="IntHexString"/> to accept
320
arguments not in <C>IsStringRep</C>; the argument is
321
now first converted if necessary. [Reported by Kenn Heinrich]
322
</Item>
323
324
<Item>
325
The library code for stabilizer chains contained quite some
326
explicit references to the identity <C>()</C>.
327
This is unfortunate if one works with permutation groups, the
328
elements of which are not plain permutations but objects which
329
carry additional information like a memory, how they were obtained
330
from the group generators. For such cases it is much cleaner to
331
use the <C>One(...)</C> operation instead of <C>()</C>, such that
332
the library code can be used for a richer class of group objects.
333
This fix contains only rather trivial changes <C>()</C> to
334
<C>One(...)</C> which were carefully checked by me. The
335
tests for permutation groups all run without a problem. However, it is
336
relatively difficult to provide test code for this particular change,
337
since the "improvement" only shows up when one generates new group
338
objects. This is for example done in the package
339
<Package>recog</Package> which is in preparation.
340
[Reported by Akos Seress and Max Neunhöffer]
341
</Item>
342
343
<Item>
344
Using <C>{}</C> to select elements of a known inhomogenous dense list
345
produced a list that might falsely claim to be known inhomogenous,
346
which could lead to a segfault if the list typing code tried to mark
347
it homogenous, since the code intended to catch such errors also had
348
a bug. [Reported by Steve Linton]
349
</Item>
350
351
<Item>
352
The record for the generic iterator construction of subspaces domains
353
of non-row spaces was not complete.
354
</Item>
355
356
<Item>
357
When a workspace has been created without packages(<C>-A</C> option)
358
and is loaded into a &GAP; session without packages (same option)
359
then an error message is printed.
360
</Item>
361
362
<Item>
363
So far the functions <Ref BookName="ref" Func="IsPrimeInt"/> and
364
<Ref BookName="ref" Func="IsProbablyPrimeInt"/> are essentially the
365
same except that <C>IsPrimeInt</C> issues an additional
366
warning when (non-proven) probable primes are considered as primes.
367
<P/>
368
These warnings now print the probable primes in question as well;
369
if a probable prime is used several times then the warning is also
370
printed several times; there is no longer a warning for some known
371
large primes; the warnings can be switched off. See
372
<Ref BookName="ref" Func="IsPrimeInt"/> for more details.
373
<P/>
374
If we get a reasonable primality test in &GAP; we will change the
375
definition of <C>IsPrimeInt</C> to do a proper test.
376
</Item>
377
378
<Item>
379
Corrected some names of primitive groups in degree 26.
380
[Reported by Robert F. Bailey]
381
</Item>
382
383
</List>
384
385
New or improved functionality:
386
<List>
387
388
<Item>
389
Several changes for <Ref BookName="ref" Func="ConwayPolynomial"/>:
390
<List>
391
<Item> many new pre-computed polynomials </Item>
392
<Item> put data in several separate files (only read when needed) </Item>
393
<Item> added info on origins of pre-computed polynomials </Item>
394
<Item> improved performance of <Ref BookName="ref" Func="ConwayPolynomial"/>
395
and <Ref BookName="ref" Func="IsPrimitivePolynomial"/> for p &lt; 256 </Item>
396
<Item> improved documentation of <C>ConwayPolynomial</C> </Item>
397
<Item> added and documented new functions
398
<Ref BookName="ref" Func="IsCheapConwayPolynomial"/> and
399
<Ref BookName="ref" Func="RandomPrimitivePolynomial"/>
400
</Item>
401
</List>
402
</Item>
403
404
<Item>
405
Added method for <Ref BookName="ref" Func="NormalBase"/>
406
for extensions of finite fields.
407
</Item>
408
409
<Item>
410
Added more help viewers for the HTML version of the documentation
411
(firefox, mozilla, konqueror, w3m, safari).
412
</Item>
413
414
<Item>
415
New function <Ref BookName="ref" Func="ColorPrompt"/>.
416
(Users of former versions of a <C>colorprompt.g</C> file:
417
Now you just need a <C>ColorPrompt(true);</C> in your
418
<C>.gaprc</C> file.)
419
</Item>
420
421
<Item>
422
423
Specialised kernel functions to support <Package>GUAVA</Package>
424
2.0. &GAP; will only load <Package>GUAVA</Package>
425
in version at least 2.002 after this update.
426
427
</Item>
428
429
<Item>
430
Now there is a kernel function <C>CYC_LIST</C>
431
for converting a list of rationals into a cyclotomic,
432
without arithmetics overhead.
433
</Item>
434
435
<Item>
436
New functions
437
<Ref BookName="ref" Func="ContinuedFractionExpansionOfRoot"/> and
438
<Ref BookName="ref" Func="ContinuedFractionApproximationOfRoot"/>
439
for computing continued fraction expansions and continued fraction
440
approximations of real roots of polynomials with integer coefficients.
441
</Item>
442
443
<Item>
444
A method for computing structure descriptions for finite groups,
445
available via <Ref BookName="ref" Func="StructureDescription"/>.
446
</Item>
447
448
<Item>
449
This change contains the new, extended version of the
450
<Package>SmallGroups</Package> package. For example, the groups of
451
orders <M>p^4</M>, <M>p^5</M>, <M>p^6</M> for arbitrary primes
452
<M>p</M>, the groups of square-free order and the groups of
453
cube-free order at most 50000 are included now. For more detailed
454
information see the announcement of the extended package.
455
</Item>
456
457
<Item>
458
The function <C>ShowPackageVariables</C> gives
459
an overview of the global variables in a package.
460
It is thought as a utility for package authors and referees.
461
(It uses the new function <C>IsDocumentedVariable</C>.)
462
</Item>
463
464
<Item>
465
The mechanisms for testing &GAP; has been improved:
466
<List>
467
<Item> The information whether a test file belongs to the list in
468
<C>tst/testall.g</C> is now stored in the test file
469
itself.</Item>
470
<Item> Some targets for testing have been added to the
471
<C>Makefile</C> in the &GAP; root directory,
472
the output of the tests goes to the new directory
473
<C>dev/log</C>.</Item>
474
<Item> Utility functions for testing are in the new file
475
<C>tst/testutil.g</C>.
476
Now the loops over (some or all) files <C>tst/*.tst</C>
477
can be performed with a function call, and the file
478
<C>tst/testall.g</C> can be created automatically;
479
the file <C>tst/testfull.g</C> is now obsolete.
480
The remormalization of the scaling factors can now be done using a &GAP;
481
function, so the file <C>tst/renorm.g</C> is
482
obsolete.</Item>
483
<Item> Now the functions <C>START_TEST</C>
484
and <C>STOP_TEST</C> use components in
485
<C>GAPInfo</C> instead of own globals,
486
and the random number generator is always reset in
487
<C>START_TEST</C>.</Item>
488
<Item> <C>GAPInfo.SystemInformation</C> now takes two
489
arguments, now one can use it easier in the tests.</Item>
490
</List>
491
</Item>
492
493
<Item>
494
<Ref BookName="ref" Func="MultiplicationTable"/> is now an attribute,
495
and the construction of a magma, monoid, etc. from multiplication
496
tables has been unified.
497
</Item>
498
</List>
499
500
</Section>
501
502
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
503
504
<Section Label="fix446">
505
<Heading>&GAP; 4.4 Update 6 (September 2005)</Heading>
506
507
Attribution of bugfixes and improved functionalities to those who
508
reported or provided these, respectively, is still fairly incomplete
509
and inconsistent with this update. We apologise for this fact and will
510
discuss until the next update how to improve this feature.
511
<P/>
512
513
Fixed bugs which could produce wrong results:
514
<List>
515
516
<Item>
517
The perfect group library does not contain any information
518
on the trivial group, so the trivial group must be handled
519
specially. <Ref BookName="ref" Func="PerfectGroup"/> and
520
<C>NrPerfectLibraryGroups</C> were changed
521
to indicate that the trivial group is not part of the library.
522
</Item>
523
524
<Item>
525
The descriptions of <C>PerfectGroup(734832,3)</C>
526
and <C>PerfectGroup(864000,3)</C> were corrected
527
in the <Ref BookName="ref" Func="Finite Perfect Groups"/>
528
library of perfect groups.
529
</Item>
530
531
<Item>
532
The functions
533
<Ref BookName="ref" Func="EpimorphismSchurCover"/> and
534
<Ref BookName="ref" Func="AbelianInvariantsMultiplier"/>
535
may have produced wrong results without warning
536
[Reported by Colin Ingalls]. These problems are fixed.
537
However, the methods currently used can be expected to
538
be slower than the ones used before; we hope to fix this
539
in the next version of &GAP;.
540
</Item>
541
542
<Item>
543
<Ref BookName="ref" Func="DerivedSubgroup"/> and
544
<Ref BookName="ref" Func="CommutatorSubgroup"/> for permutation
545
groups sometimes returned groups with an incorrect stabilizer
546
chain due to a missing verification step after a random Schreier Sims.
547
</Item>
548
549
<Item>
550
<Ref BookName="ref" Func="NaturalHomomorphismByNormalSubgroup"/>
551
for FpGroups did unnecessary rewrites.
552
</Item>
553
554
<Item>
555
The alternating group <M>A_3</M> incorrectly claimed to be not simple.
556
</Item>
557
558
<Item>
559
<Ref BookName="ref" Func="ExponentSyllable"/> for straight line
560
program elements gave a wrong result.
561
562
</Item>
563
564
<Item>
565
<Ref BookName="ref" Func="PrimePGroup"/> is defined to return
566
<C>fail</C> for trivial groups, but if the group was constructed
567
as a factor or subgroup of a known <M>p</M>-group, the value of
568
<M>p</M> was retained.
569
</Item>
570
571
<Item>
572
The functions <Ref BookName="ref" Func="TestPackageAvailability"/>
573
and <Ref BookName="ref" Func="LoadPackage"/> did not work correctly
574
when one asked for a
575
particular version of the package, via a version number starting with
576
the character <C>=</C>, in the sense that a version
577
with a larger version number was loaded if it was available.
578
[Reported by Burkhard Höfling]
579
</Item>
580
581
<Item>
582
The generator names constructed by
583
<Ref BookName="ref" Func="AlgebraByStructureConstants"/>
584
were nonsense.
585
</Item>
586
587
<Item>
588
The undocumented function (but recently advertised on gap-dev)
589
<C>COPY_LIST_ENTRIES</C> did not handle overlapping source and
590
destination areas correctly in some cases.
591
</Item>
592
593
<Item>
594
The elements in a free magma ring have the filter
595
<Ref BookName="ref" Func="IsAssociativeElement"/> set
596
whenever the elements in the underlying magma and in
597
the coefficients ring have this filter set.
598
[Reported by Randy Cone]
599
</Item>
600
601
<Item>
602
The function <Ref BookName="ref" Func="InstallValue"/> must not
603
be used for objects in the filter <C>IsFamily</C> because these
604
objects are compared via <Ref BookName="ref" Func="IsIdenticalObj"/>.
605
[Reported by Max Neunhöffer]
606
</Item>
607
608
</List>
609
610
Fixed bugs which could lead to crashes:
611
<List>
612
613
<Item>
614
Problem in composition series for permutation groups for
615
non-Frobenius groups with regular point stabilizer.
616
</Item>
617
618
<Item>
619
After lots of computations with compressed GF(2) vectors
620
&GAP; occasionally crashed. The reason were three missing
621
<C>CHANGED_BAG</C>s in <C>SemiEchelonPListGF2Vecs</C>.
622
They were missing, because a garbage collection could be
623
triggered during the computation such that newly created bags
624
could become <Q>old</Q>. It is not possible to provide test
625
code because the error condition cannot easily be reproduced.
626
[Reported by Klaus Lux]
627
</Item>
628
629
<Item>
630
Minor bug that crashed &GAP;:
631
The type of <C>IMPLICATIONS</C>
632
could not be determined in a fresh session. [Reported by Marco Costantini]
633
</Item>
634
635
<Item>
636
<Ref BookName="ref" Func="Assert"/>
637
caused an infinite loop if called
638
as the first line of a function called from another function.
639
</Item>
640
</List>
641
642
Other fixed bugs:
643
<List>
644
645
<Item>
646
Wrong choice of prime in Dixon-Schneider if prime is bigger than
647
group order (if group has large exponent).
648
</Item>
649
650
<Item>
651
Groebner basis code ran into problems when comparing monomial
652
orderings.
653
</Item>
654
655
<Item>
656
When testing for conjugacy of a primitive group to an imprimitive
657
group,&GAP; runs into an error in EARNS calculation.
658
[Reported by John Jones]
659
</Item>
660
661
<Item>
662
The centre of a magma is commonly defined to be the set of elements
663
that commute and associate with all elements. The previous definition
664
left out <Q>associate</Q> and caused problems with extending the
665
functionality to nonassociative loops. [Reported by Petr Vojtechovsky]
666
</Item>
667
668
<Item>
669
New kernel methods for taking the intersection and difference between
670
sets of substantially different sizes give a big performance increase.
671
</Item>
672
673
<Item>
674
The commands
675
<Ref BookName="ref" Func="IsNaturalSymmetricGroup"/> and
676
<Ref BookName="ref" Func="IsNaturalAlternatingGroup"/> are faster and
677
should run much less
678
often into inefficient tests.
679
</Item>
680
681
<Item>
682
The perfect group library, see
683
<Ref BookName="ref" Func="Finite Perfect Groups"/>, is split into
684
several files which are loaded and unloaded to keep memory usage
685
down. The global variable <C>PERFSELECT</C> is a blist which
686
indicates which orders are currently loaded. An off-by-one error
687
wrongly added the last order of the previous file into the list of
688
valid orders when a new file was loaded. A subsequent access to
689
this order raises an error.
690
</Item>
691
692
<Item>
693
Up to now, the method installed for testing the membership of rationals
694
in the field of rationals via <Ref BookName="ref" Func="IsRat"/>
695
was not called; instead a more general method was used that called
696
<Ref BookName="ref" Func="Conductor"/> and thus was much slower.
697
Now the special method has been ranked up by changing the requirements
698
in the method installation.
699
</Item>
700
701
<Item>
702
Fixed a bug in <C>APPEND_VEC8BIT</C>, which was triggered in the
703
following situation: Let <C>e</C> be the number of field elements
704
stored in one byte. If a compressed 8bit-vector <C>v</C> had length
705
not divisible by <C>e</C> and another compressed 8-bit vector
706
<C>w</C> was appended, such that the sum of the lengths became
707
divisible by <C>e</C>, then one 0 byte too much was written, which
708
destroyed the <C>TNUM</C> of the next &GAP; object in memory.
709
[Reported by Klaus Lux]
710
</Item>
711
712
<Item>
713
<Ref BookName="ref" Func="PermutationCycle"/> returned <C>fail</C>
714
if the cycle was not a contiguous subset of the specified domain.
715
[Reported by Luc Teirlinck]
716
</Item>
717
718
<Item>
719
Now <Ref BookName="ref" Func="Inverse"/> correctly returns
720
<C>fail</C> for zeros in finite fields (and does no longer
721
enter a break loop).
722
</Item>
723
724
<Item>
725
Up to now, <Ref BookName="ref" Func="CharacterDegrees"/> ignored the attribute
726
<Ref BookName="ref" Func="Irr"/>
727
if the argument was a group that knew that it was solvable.
728
</Item>
729
730
<Item>
731
The function <C>Debug</C> now prints a meaningful message
732
if the user tries to debug an operation.
733
Also, the help file for <C>vi</C> is now available in
734
the case of several &GAP; root directories.
735
</Item>
736
737
<Item>
738
It is no longer possible to create corrupt objects via ranges of
739
length &gt;<M>2^{28}</M>, resp. &gt;<M>2^{60}</M> (depending on
740
the architecture). The limitation concerning the arguments of
741
ranges is documented. [Reported by Stefan Kohl]
742
</Item>
743
744
<Item>
745
Now <Ref BookName="ref" Func="IsElementaryAbelian"/> and
746
<Ref BookName="ref" Func="ClassPositionsOfMinimalNormalSubgroups"/>
747
are available for ordinary character tables. Now the operation
748
<Ref BookName="ref" Func="CharacterTableIsoclinic"/> is
749
an attribute, and there is another new attribute
750
<Ref BookName="ref" Func="SourceOfIsoclinicTable"/> that points back to the
751
original table; this is used for computing the Brauer tables of those
752
tables in the character table library that are computed using
753
<C>CharacterTableIsoclinic</C>.
754
Now <Ref BookName="ref" Func="ClassPositionsOfDerivedSubgroup"/>
755
avoids calling <Ref BookName="ref" Func="Irr"/>,
756
since <Ref BookName="ref" Func="LinearCharacters"/> is sufficient.
757
Now <Ref BookName="ref" Func="ClassPositionsOfElementaryAbelianSeries"/>
758
works also for the table of the trivial group.
759
Restrictions of character objects know that they are characters.
760
<P/>
761
A few formulations in the documentation concerning character tables have
762
been improved slightly.
763
</Item>
764
765
<Item>
766
Up to now, <Ref BookName="ref" Func="IsPGroup"/> has rarely been set.
767
Now many basic operations such as <Ref BookName="ref" Func="SylowSubgroup"/>
768
set this attribute on the returned result.
769
</Item>
770
771
<Item>
772
Computing an enumerator for a semigroup required too much time
773
because it used all elements instead of the given generators.
774
[Reported by Manuel Delgado]
775
</Item>
776
777
<Item>
778
Avoid potential error message when working with automorphism groups.
779
</Item>
780
781
<Item>
782
Fixed wrong page references in manual indices.
783
</Item>
784
785
<Item>
786
Make <C>MutableCopyMat</C> an operation and install
787
the former function which does call <Ref BookName="ref" Func="List"/> with
788
<Ref BookName="ref" Func="ShallowCopy"/> the default method for lists. Also
789
use this in a few appropriate places.
790
</Item>
791
792
<Item>
793
An old DEC compiler doesn't like C preprocessor directives that are
794
preceded by whitespace. Removed such whitespace. [Reported by Chris Wensley]
795
</Item>
796
797
</List>
798
799
800
New or improved functionality:
801
802
<List>
803
804
<Item>
805
The primitive groups library has been extended to degree 2499.
806
</Item>
807
808
<Item>
809
New operation
810
<Ref BookName="ref" Func="Remove"/>
811
and extended functionality of
812
<Ref BookName="ref" Func="Add"/> with
813
an optional argument giving the position of the insertion. They are based
814
on an efficient kernel function <C>COPY_LIST_ENTRIES</C>.
815
</Item>
816
817
<Item>
818
Added fast kernel implementation of Tarjan's
819
algorithm for strongly connected components of a
820
directed graph.
821
</Item>
822
823
<Item>
824
Now <Ref BookName="ref" Func="IsProbablyPrimeInt"/> can be used with larger numbers.
825
(Made internal function <C>TraceModQF</C> non-recursive.)
826
</Item>
827
828
<Item>
829
A new operation <Ref BookName="ref" Func="PadicValuation"/>
830
and a corresponding method for rationals.
831
</Item>
832
833
<Item>
834
A new operation <Ref BookName="ref" Func="PartialFactorization"/> has been
835
added, and a corresponding method for integers has been installed.
836
This method allows one to specify the amount of work to be spent on looking
837
for factors.
838
</Item>
839
840
<Item>
841
The generators of full s. c. algebras can now be accessed
842
with the dot operator. [Reported by Marcus Bishop]
843
</Item>
844
845
<Item>
846
New Conway polynomials computed by Kate Minola, John Bray, Richard Parker.
847
</Item>
848
849
<Item>
850
A new attribute <Ref BookName="ref" Func="EpimorphismFromFreeGroup"/>.
851
The code has been written by Alexander Hulpke.
852
</Item>
853
854
<Item>
855
The functions
856
<Ref BookName="ref" Func="Lambda"/>,
857
<Ref BookName="ref" Func="Phi"/>,
858
<Ref BookName="ref" Func="Sigma"/>, and
859
<Ref BookName="ref" Func="Tau"/>
860
have been turned into operations, to admit the installation of methods
861
for arguments other than integers.
862
</Item>
863
864
<Item>
865
Up to now, one could assign only lists with
866
<Ref BookName="ref" Func="InstallFlushableValue"/>.
867
Now also records are admitted.
868
</Item>
869
870
<Item>
871
<Ref BookName="ref" Func="InstallMethod"/> now admits entering a list of
872
strings instead of a list of required filters.
873
Each such string must evaluate to a filter when used as the argument of
874
<Ref BookName="ref" Func="EvalString"/>.
875
The advantage of this variant is that these strings are used to compose
876
an info string (which is shown by <C>ApplicableMethod</C>)
877
that reflects exactly the required filters.
878
</Item>
879
880
<Item>
881
In test files that are read with <C>ReadTest</C>,
882
the assertion level is set to 2 between <C>START_TEST</C>
883
and <C>STOP_TEST</C>.
884
This may result in runtimes for the tests that are substantially longer
885
than the usual runtimes with default assertion level 0.
886
In particular this is the reason why some of the standard test files require
887
more time in &GAP; 4.4.6 than in
888
&GAP; 4.4.5.
889
</Item>
890
891
<Item>
892
Some very basic functionality for floats.
893
</Item>
894
895
</List>
896
897
</Section>
898
899
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
900
901
<Section Label="fix447">
902
<Heading>&GAP; 4.4 Update 7 (March 2006)</Heading>
903
904
New or improved functionality:
905
906
<List>
907
908
<Item>
909
The <Ref BookName="ref" Func="Display"/>
910
functionality for character tables has been extended by addition
911
of an option to show power maps and centralizer orders in a format
912
similar to that used in the ATLAS.
913
Furthermore the options handling is now hierarchical,
914
in order to admit more flexible overloading.
915
</Item>
916
917
<Item>
918
For the function <Ref BookName="ref" Func="LowIndexSubgroupsFpGroup"/>,
919
there is now an iterator variant
920
<C>LowIndexSubgroupsFpGroupIterator</C>.
921
[Suggested (and based on code contributed) by Michael Hartley]
922
</Item>
923
924
<Item>
925
Semigroup functionality in &GAP; has been improved
926
and extended. Green's relations are now stored differently, making the system
927
more amenable to new methods for computing these relations in special cases.
928
It is now possible to calculate
929
Green's classes etc. without computing the entire semigroup or necessarily
930
loading the package <Package>MONOID</Package>.
931
Furthermore, the Froidure-Pin algorithm has now been implemented in
932
&GAP;.
933
</Item>
934
935
<Item>
936
Functionality for creating free products of any list of groups for which
937
a finite presentation can be determined had been added. This
938
function returns a finitely presented group. This functionality includes
939
the <C>Embedding</C> operation.
940
941
As an application of this new code a specialized direct product
942
operation has been added for finitely presented groups which
943
returns a finitely presented group. This application includes
944
<C>Embedding</C> and <C>Projection</C> functionality.
945
</Item>
946
947
<Item>
948
Some new Straight Line Program (SLP) functionality has been added.
949
The new functions take given SLPs and create new ones by restricting
950
to a subset of the results, or to an intermediate result or by calculating
951
the product of the results of two SLPs.
952
</Item>
953
954
<Item>
955
New code has been added to allow group elements with memory;
956
that is, they store
957
automatically how they were derived from some given set of generators.
958
Note that there is not yet documentation for this functionality,
959
but some packages already use it.
960
</Item>
961
962
<Item>
963
New code has been added to handle matrices and vectors in such a way that
964
they do not change their representation in a generic manner.
965
</Item>
966
967
<Item>
968
The <Ref BookName="ref" Func="Irr"/>
969
method for <M>p</M>-solvable <M>p</M>-modular Brauer tables now keeps
970
the order of the irreducibles in the ordinary table.
971
</Item>
972
973
<Item>
974
&GAP; can now handle any finite field for which the
975
Conway polynomial is known or can be computed.
976
</Item>
977
978
<Item>
979
New Conway polynomials provided by John Bray and Kate Minola have been added.
980
</Item>
981
982
<Item>
983
The <C>ReadTest</C>
984
methods for strings (filenames) and streams now automatically set
985
the screen width (see <Ref BookName="ref" Func="SizeScreen"/>) to 80 before the tests,
986
and reset it afterwards.
987
</Item>
988
989
<Item>
990
Now a few more checks are done during the <C>configure</C>
991
phase of compiling for future use of some I/O functions of the C-library
992
in a package. Also the path to the &GAP; binaries for the &GAP; compiler is
993
now handled via autoconf. Finally, now <C>autoconf</C>
994
version 2.59 is used.
995
</Item>
996
997
</List>
998
999
Fixed bugs which could produce wrong results:
1000
1001
<List>
1002
1003
<Item>
1004
Some technical errors in the functions for compressed vectors and matrices
1005
which could lead to corruption of internal data structures and so to crashes
1006
or conceivably to wrong results. [Reported by Roman Schmied]
1007
</Item>
1008
1009
<Item>
1010
A potential problem in the generic method for the undocumented operation
1011
<C>DirectFactorsOfGroup</C>:
1012
It was silently assumed that
1013
<Ref BookName="ref" Func="NormalSubgroups"/>
1014
delivers the trivial subgroup as first and
1015
the whole group as last entry of the resulting list.
1016
</Item>
1017
1018
<Item>
1019
The code for sublists of compressed vectors created by <C>vec{range}</C> may write
1020
one byte beyond the space allocated for the new vector, overwriting part of the next
1021
object in the workspace. Thanks to Jack Schmidt for narrowing down the problem.
1022
</Item>
1023
1024
<Item>
1025
Given a class function object of value zero, an
1026
<Ref BookName="ref" Func="Arithmetic Operations for Class Functions"/>
1027
method for a class function
1028
erroneously did not return <C>fail</C>.
1029
[Reported by Jack Schmidt]
1030
</Item>
1031
1032
<Item>
1033
The <Ref BookName="ref" Func="Arithmetic Operations for Class Functions"/>
1034
method for a class function
1035
erroneously returned a finite number if one of the values
1036
was nonreal, not a cyclotomic integer, and had norm 1.
1037
</Item>
1038
1039
<Item>
1040
Two missing perfect groups were added, and the permutation degree lowered on
1041
the perfect groups with the largest degrees. [Reported by Jack Schmidt]
1042
</Item>
1043
1044
<Item>
1045
When a character table was displayed with
1046
<Ref BookName="ref" Func="Printing Character Tables"/>,
1047
the centralizer order displayed for the first class shown
1048
was not correct if it did not involve
1049
all prime divisors of the group. [Reported by Jack Schmidt]
1050
</Item>
1051
1052
<Item>
1053
The first argument of the function <Ref BookName="ref" Func="VectorSpace"/> must be a field.
1054
This is checked from now on. [Reported by Laurent Bartholdi]
1055
</Item>
1056
1057
<Item>
1058
Up to now, it was possible to create a group object from a semigroup of
1059
cyclotomics using <Ref BookName="ref" Func="AsGroup"/>,
1060
although groups of cyclotomics are not admissible. [Reported by Alexander Konovalov]
1061
</Item>
1062
1063
<Item>
1064
The documentation of
1065
<C>CharacteristicPolynomial(F,mat)</C>
1066
was ambiguous if
1067
<C>FieldOfMatrix(mat) &lt;= F &lt;
1068
DefaultFieldOfMatrix(mat)</C>.
1069
In particular, the
1070
result was representation dependent. This was fixed by introducing a second
1071
field which specifies the vector space which mat acts upon. [Reported by Jack Schmidt]
1072
</Item>
1073
1074
<Item>
1075
<C>AssociatedReesMatrixSemigroupOfDClass</C> produced an incorrect
1076
sandwich matrix for the semigroup created. This matrix is an
1077
attribute set when creating the Rees matrix semigroup but is
1078
not used for creating the semigroup. The incorrect result was returned
1079
when <C>SandwichMatrix</C> was called. [Reported by Nelson Silva and Joao Araujo]
1080
</Item>
1081
1082
<Item>
1083
The literal <C>"compiled"</C> was given an incorrect length. The
1084
kernel was then unable to find compiled library code as the search
1085
path was incorrect. Also the documentation example had an error in
1086
the path used to invoke the <F>gac</F> compiler.
1087
</Item>
1088
1089
<Item>
1090
The twisting group in a generic wreath product might
1091
have had intransitive action. [Reported by Laurent Bartholdi]
1092
</Item>
1093
1094
<Item>
1095
There was an arithmetic bug in the polynomial reduction code.
1096
</Item>
1097
</List>
1098
1099
1100
Fixed bugs which could lead to crashes:
1101
1102
<List>
1103
1104
<Item>
1105
Bug 1 in the list of fixed bugs which could lead to wrong results
1106
could also potentially lead to crashes.
1107
</Item>
1108
1109
</List>
1110
1111
1112
Other fixed bugs:
1113
1114
<List>
1115
1116
<Item>
1117
The matrices of invariant forms stored as values of the attributes
1118
<Ref BookName="ref" Func="InvariantBilinearForm"/>,
1119
<Ref BookName="ref" Func="InvariantQuadraticForm"/>, and
1120
<Ref BookName="ref" Func="InvariantSesquilinearForm"/>,
1121
for matrix groups over finite fields,
1122
are now in the (compressed) format returned by
1123
<Ref BookName="ref" Func="ImmutableMatrix"/>.
1124
</Item>
1125
1126
<Item>
1127
<C>String</C> now returns an immutable string,
1128
by making a copy before changing the argument.
1129
</Item>
1130
1131
<Item>
1132
<C>permutation^0</C> and <C>permutation^1</C> were not handled with
1133
special code in the kernel, hence were very slow for big permutations.
1134
[Reported by Max Neunhöffer]
1135
</Item>
1136
1137
<Item>
1138
Added code to cache the induced pcgs for an arbitrary parent pcgs. (This code
1139
was formerly part of the <Package>CRISP</Package> package.)
1140
</Item>
1141
1142
<Item>
1143
This fix consists of numerous changes to improve support for
1144
direct products, including:
1145
- new methods for <C>PcgsElementaryAbelianSeries</C>,
1146
<C>PcgsChiefSeries</C>,
1147
<C>ExponentsOfPcElement</C>,
1148
<C>DepthOfPcElement</C> for direct products
1149
- fixed <C>EnumeratorOfPcgs</C> to test for membership first
1150
- new methods for membership test in groups which have an induced pcgs
1151
- added <C>GroupOfPcgs</C> attribute to pcgs in various methods
1152
- fixed declarations of <C>PcgsElementaryAbelianSeries</C>,
1153
<C>PcgsChiefSeries</C>
1154
(the declared argument was a pcgs, not a group) [Reported by Roman Schmied]
1155
</Item>
1156
1157
<Item>
1158
Corrected a term ordering problem encountered by the basis construction
1159
code for finite dimensional vector spaces of multivariate rational
1160
functions. [Reported by Jan Draisma]
1161
</Item>
1162
1163
<Item>
1164
When the factor of a finite dimensional group ring by an ideal was formed,
1165
a method intended for free algebras modulo relations was used,
1166
and the returned factor algebra could be used for (almost) nothing.
1167
[Reported by Heiko Dietrich]
1168
</Item>
1169
1170
<Item>
1171
Up to now, <Ref BookName="ref" Func="PowerMap"/> ran into an error
1172
when one asked for the n-th power map where n was not a small integer.
1173
This happened in some &GAP; library functions
1174
if the exponent of the character table in question was not a small integer.
1175
</Item>
1176
1177
<Item>
1178
Up to now, the test whether a finite field element was contained in a group
1179
of finite field elements ran into an error if the element was not in the
1180
field generated by the group elements. [Reported by Heiko Dietrich]
1181
</Item>
1182
1183
<Item>
1184
Conjugacy classes of natural (special) linear groups are now always returned
1185
with trivial class first.
1186
</Item>
1187
1188
<Item>
1189
Up to now, it could happen that <Ref BookName="ref" Func="CheckFixedPoints"/>
1190
reduced an entry in its
1191
second argument to a list containing only one integer
1192
but did not replace the list by that integer;
1193
according to the conventions, this replacement should be done.
1194
</Item>
1195
1196
<Item>
1197
The functions <C>PrintTo</C> and
1198
<C>AppendTo</C> did not work correctly for streams.
1199
[Reported by Marco Costantini]
1200
</Item>
1201
1202
<Item>
1203
The function <C>Basis</C> did not return a value
1204
when it was called with the argument <C>Rationals</C>.
1205
[Reported by Klaus Lux]
1206
</Item>
1207
1208
<Item>
1209
For certain matrix groups, the function
1210
<C>StructureDescription</C> raised an error message.
1211
The reason for this was that a trivial method for
1212
<C>IsGeneralLinearGroup</C> for matrix groups in
1213
<C>lib/grpmat.gi</C> which is ranked higher than
1214
the nontrivial method for generic groups in
1215
<C>lib/grpnames.gi</C> called the operation
1216
<C>IsNaturalGL</C>, for which there was no nontrivial
1217
method available. [Reported by Nilo de Roock]
1218
</Item>
1219
1220
<Item>
1221
Action on sets of length 1 was not correctly handled.
1222
[Reported by Mathieu Dutour]
1223
</Item>
1224
1225
<Item>
1226
Now <C>WriteByte</C> admits writing zero characters to
1227
all streams. [Reported by Marco Costantini]
1228
</Item>
1229
1230
<Item>
1231
The conjugacy test for subgroups tests for elementary abelian regular
1232
normal subgroup (EARNS) conjugacy. The fix will
1233
catch this in the case that the second group has no EARNS.
1234
[Reported by Andrew Johnson]
1235
</Item>
1236
1237
<Item>
1238
So far, the UNIX installation didn't result in a correct gap.sh if the
1239
installation path contained space characters. Now it should handle this
1240
case correctly, as well as other unusual characters in path names
1241
(except for double quotes).
1242
</Item>
1243
1244
</List>
1245
1246
</Section>
1247
1248
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
1249
1250
<Section Label="fix448">
1251
<Heading>&GAP; 4.4 Update 8 (September 2006)</Heading>
1252
1253
New or improved functionality:
1254
1255
<List>
1256
1257
<Item>
1258
A function <Ref BookName="ref" Func="Positions"/> with underlying operation
1259
<C>PositionsOp</C>, which returns the list
1260
of all positions at which a given object appears in a given list.
1261
</Item>
1262
1263
<Item>
1264
<Ref BookName="ref" Func="LogFFE"/>
1265
now returns <C>fail</C>
1266
when the element is not a power of the base.
1267
</Item>
1268
1269
<Item>
1270
It is now allowed to continue long integers, strings or identifiers by
1271
ending a line with a backslash or with a backslash and carriage return
1272
character. So, files with &GAP; code and
1273
DOS/Windows-style line breaks are now valid input on all architectures.
1274
</Item>
1275
1276
<Item>
1277
The command line for starting the session and the system environment are now
1278
available in <C>GAPInfo.SystemCommandLine</C> and
1279
<C>GAPInfo.SystemEnvironment</C>.
1280
</Item>
1281
1282
<Item>
1283
Names of all bound global variables and all component names are available
1284
on &GAP; level.
1285
</Item>
1286
1287
<Item>
1288
Added a few new Conway polynomials computed by Kate Minola and John Bray.
1289
</Item>
1290
1291
<Item>
1292
There is a new concept of <E>random sources</E>, see
1293
<Ref BookName="ref" Func="IsRandomSource"/>, which provides random number
1294
generators which are independent of each other.
1295
There is kernel code for the Mersenne twister random number generator
1296
(based on the code by Makoto Matsumoto distributed at
1297
<URL>http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html</URL>).
1298
It provides fast 32-bit pseudorandom integers with a period of length
1299
<M>2^{19937}-1</M>
1300
and a 623-dimensional equidistribution. The library methods for random
1301
elements of lists and for random (long) integers are using the Mersenne
1302
twister now.<P/>
1303
</Item>
1304
1305
<Item>
1306
In line editing mode (usual input mode without -n option) in lines starting
1307
with <C>gap&gt; </C>, <C>&gt; </C> or
1308
<C>brk&gt; </C> this beginning part is immediately
1309
removed. This is a convenient feature that allows one to cut and paste
1310
input lines from other sessions or from manual examples into the current
1311
session.
1312
</Item>
1313
</List>
1314
1315
Fixed bugs which could produce wrong results:
1316
1317
<List>
1318
1319
<Item>
1320
The function <Ref BookName="ref" Func="Decomposition"/>
1321
returned coefficient vectors also in certain
1322
situations where in fact no decomposition exists.
1323
This happened only if the matrix entered as the first argument
1324
contained irrational values
1325
and a row in the matrix entered as the second argument did not respect the
1326
algebraic conjugacy relations between the columns of the first argument.
1327
So there was no problem for the usual cases that the two matrices are
1328
integral or that they are lists of Brauer characters. [Reported by Jürgen Müller]
1329
</Item>
1330
1331
<Item>
1332
PC group homomorphisms can claim a wrong kernel after
1333
composition. [Reported by Serge Bouc]
1334
</Item>
1335
1336
<Item>
1337
The return value of <Ref BookName="ref" Func="OctaveAlgebra"/> had an inconsistent
1338
defining structure constants table for the case of coefficients fields
1339
not containing the integer zero. [Reported by Gábor Nagy]
1340
</Item>
1341
1342
<Item>
1343
The manual guarantees that a conjugator automorphism has a conjugating
1344
element in the group if possible. This was not guaranteed.
1345
</Item>
1346
1347
<Item>
1348
<Ref BookName="ref" Func="StabChain"/>
1349
for symmetric groups gave a wrong result if fixed points were
1350
prescribed for base.
1351
</Item>
1352
1353
<Item>
1354
Contrary to what is documented the function
1355
<C>POW_OBJ_INT</C> returned an immutable result for
1356
<C>POW_OBJ_INT(m,1)</C> for a mutable object
1357
<C>m</C>. This is triggered by the code
1358
<C>m^1</C>.
1359
</Item>
1360
1361
<Item>
1362
<Ref BookName="ref" Func="PseudoRandom"/> for a group
1363
had a problem if the group had lots of equal
1364
generators. The produced elements were extremely poorly distributed in
1365
that case. This is now fixed for the case that elements of the group
1366
can easily be sorted.
1367
</Item>
1368
1369
<Item>
1370
Fixed the bug that the type of a boolean list (see
1371
<Ref BookName="ref" Func="More about Boolean Lists"/>)
1372
was computed wrongly: The type previously had <C>IS_PLIST_REP</C>
1373
instead of <C>IS_BLIST_REP</C> in its filter list.
1374
</Item>
1375
1376
<Item>
1377
<Ref BookName="ref" Func="Orbits"/>
1378
did not respect a special <Ref BookName="ref" Func="PositionCanonical"/> method for right
1379
transversals. [Reported by Steve Costenoble]
1380
</Item>
1381
1382
<Item>
1383
Wrong results for <Ref BookName="ref" Func="GcdInt"/>
1384
for some arguments on 64 bit systems only.
1385
[Reported by Robert Morse]
1386
</Item>
1387
1388
<Item>
1389
When prescribing a subgroup to be included, the low index algorithm for fp
1390
groups sometimes returned subgroups which are in fact conjugate. (No
1391
subgroups are missing.) [Reported by Ignaz Soroko]
1392
</Item>
1393
</List>
1394
1395
1396
Fixed bugs which could lead to crashes:
1397
1398
<List>
1399
1400
<Item>
1401
The command line option <C>-x</C> allowed
1402
arguments > 256 which
1403
can then result in internal buffers overflowing. Now bigger numbers
1404
in the argument are equivalent to <C>-x 256</C>.
1405
<!--
1406
Can't really test it except by starting gap -x 300 and checking SizeScreen();
1407
With the fix it is [256,24], without it was [300,24]. -->
1408
[Reported by Michael Hartley]
1409
</Item>
1410
</List>
1411
1412
1413
Other fixed bugs:
1414
1415
<List>
1416
1417
<Item>
1418
Two special methods for the operation
1419
<Ref BookName="ref" Func="CompositionMapping2"/> were not correct,
1420
such that composing (and multiplying) certain group homomorphisms
1421
did not work. [Reported by Peter Mayr]
1422
</Item>
1423
1424
<Item>
1425
In the definition of
1426
<Ref BookName="ref" Func="FrobeniusCharacterValue"/>, it had been stated erroneously
1427
that the value must lie in the field of <M>p^n</M>-th roots of unity;
1428
the correct condition is that the value must lie in the field of
1429
<M>(p^n-1)</M>-th roots of unity. [Reported by Jack Schmidt]
1430
</Item>
1431
1432
<Item>
1433
The function <Ref BookName="ref" Func="DirectProduct"/> failed when one of the factors was known to be
1434
infinite.
1435
</Item>
1436
1437
<Item>
1438
For a linear action homomorphism <C>PreImageElm</C>
1439
was very slow because there was no good method to check for injectivity,
1440
which is needed for nearly all good methods for
1441
<C>PreImageElm</C>. This change adds such a new
1442
method for <C>IsInjective</C>. [Reported by Akos Seress]
1443
</Item>
1444
1445
<Item>
1446
Rare errors in the complement routine for permutation groups.
1447
</Item>
1448
1449
<Item>
1450
Blocks code now uses jellyfish-style random elements to avoid bad Schreier
1451
trees.
1452
</Item>
1453
1454
<Item>
1455
A method for <Ref BookName="ref" Func="IsPolycyclicGroup"/> has been added.
1456
Such a method was missing so far.
1457
</Item>
1458
1459
<Item>
1460
Corrected <Ref BookName="ref" Func="EpimorphismSchurCover"/> to handle
1461
the trivial group correctly.
1462
Added new methods that follow immediately from computing
1463
the Schur Cover of a group. The attribute
1464
<Ref BookName="ref" Func="Epicentre"/>, the operations
1465
<Ref BookName="ref" Func="NonabelianExteriorSquare"/> and
1466
<Ref BookName="ref" Func="EpimorphismNonabelianExteriorSquare"/>, and
1467
the property <Ref BookName="ref" Func="IsCentralFactor"/> are added to the
1468
library with documentation and references.
1469
</Item>
1470
1471
<Item>
1472
Display the correct expression in a call stack trace
1473
if an operation was called somewhere up due to the evaluation
1474
of a unary or binary operation.
1475
</Item>
1476
1477
<Item>
1478
Made <C>StripMemory</C> an operation rather than a
1479
global function. Added <C>ForgetMemory</C> operation.
1480
</Item>
1481
1482
<Item>
1483
Adjust things slightly to make later conversion to new vectors/matrices
1484
easier. Nothing of this should be visible.
1485
</Item>
1486
1487
<Item>
1488
Corrected some details in the documentation of the &GAP;
1489
language. [Reported by Alexander Konovalov]
1490
</Item>
1491
1492
<Item>
1493
Now <Ref BookName="ref" Func="PositionSorted"/> is much faster on long mutable
1494
plain lists. (The former operation is substituted by a function and a new
1495
operation <C>PositionSortedOp</C>.) [Reported by Silviu Radu]
1496
</Item>
1497
1498
<Item>
1499
Now it is possible to switch repeated warnings off when working with
1500
iterative polynomial rings.
1501
</Item>
1502
</List>
1503
1504
</Section>
1505
1506
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
1507
1508
<Section Label="fix449">
1509
<Heading>&GAP; 4.4 Update 9 (November 2006)</Heading>
1510
1511
Fixed bugs which could produce wrong results:
1512
1513
<List>
1514
1515
<Item>
1516
The methods of
1517
<Ref BookName="ref" Func="ReadByte"/>
1518
for reading from files or terminals returned wrong
1519
results for characters in the range <C>[128..255]</C>.
1520
[Reported by Yevgen Muntyan]
1521
</Item>
1522
</List>
1523
1524
1525
Other fixed bugs:
1526
1527
<List>
1528
1529
<Item>
1530
A method for the operation
1531
<Ref BookName="ref" Func="PseudoRandom"/> did not succeed.
1532
</Item>
1533
1534
<Item>
1535
A fix for <C>Orbits</C> with a set of points as a seed.
1536
</Item>
1537
1538
<Item>
1539
Added a generic method such that <Ref BookName="ref" Func="Positions"/>
1540
works with all types of lists.
1541
</Item>
1542
1543
<Item>
1544
Fixed a problem in choosing the prime in the Dixon-Schneider algorithm.
1545
[Reported by Toshio Sumi]
1546
</Item>
1547
</List>
1548
1549
New or improved functionality:
1550
1551
<List>
1552
1553
<Item>
1554
<C>ReducedOrdinary</C> was used in the manual, but was not documented,
1555
being a synonym for the documented <C>ReducedCharacters</C>. Changed
1556
manual examples to use the latter form. [Reported by Vahid Dabbaghian]
1557
</Item>
1558
</List>
1559
1560
</Section>
1561
1562
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
1563
1564
<Section Label="fix4410">
1565
<Heading>&GAP; 4.4 Update 10 (October 2007)</Heading>
1566
1567
1568
New or improved functionality:
1569
1570
<List>
1571
1572
<Item>
1573
Files in the <F>cnf</F> directory of the &GAP;
1574
distribution are now archived as binary files. Now &GAP;
1575
can be installed with UNIX or with WINDOWS style
1576
line breaks on any system and should work without problems.
1577
</Item>
1578
1579
<Item>
1580
Since large finite fields are available,
1581
some restrictions in the code for computing irreducible modules
1582
over finite fields are no longer necessary.
1583
(They had been introduced in order to give better error messages.)
1584
</Item>
1585
1586
<Item>
1587
Made PositionSublist faster in case the search string does not contain
1588
repetitive patterns.
1589
</Item>
1590
1591
<Item>
1592
The function <C>MakeImmutable</C> now returns
1593
its argument.
1594
</Item>
1595
1596
<Item>
1597
Dynamically loaded modules now work on Mac OS X. As a consequence,
1598
this allows to work with the Browse, EDIM and IO packages on Mac OS X.
1599
</Item>
1600
1601
<Item>
1602
Introduced <C>ViewObj</C> and
1603
<C>PrintObj</C> methods for algebraic number fields. Made
1604
them applicable to <C>AlgebraicExtension</C> by adding the
1605
property <C>IsNumberField</C> in the infinite field case.
1606
</Item>
1607
1608
<Item>
1609
The function
1610
<Ref BookName="ref" Func="CharacterTableRegular"/>
1611
is documented now.
1612
</Item>
1613
1614
<Item>
1615
The function
1616
<Ref BookName="ref" Func="ScalarProduct"/>
1617
now accepts also Brauer characters as arguments.
1618
</Item>
1619
1620
<Item>
1621
The function
1622
<Ref BookName="ref" Func="QuaternionAlgebra"/>
1623
now accepts also a list of field elements instead of a field.
1624
Also, now the comparison of return values (w.r.t. equality, containment)
1625
yields <C>true</C> if the parameters coincide and the
1626
ground fields fit.
1627
</Item>
1628
1629
<Item>
1630
The function
1631
<Ref BookName="ref" Func="RemoveCharacters"/> is now documented.
1632
</Item>
1633
1634
<Item>
1635
Lists in &GAP; sometimes occupy memory for
1636
possible additional entries. Now plain lists and strings read by &GAP;
1637
and the lists returned by <Ref BookName="ref" Func="List"/>
1638
only occupy the memory they really need. For more details see the
1639
documentation of the new function
1640
<Ref BookName="ref" Func="EmptyPlist"/>.
1641
</Item>
1642
1643
<Item>
1644
There are some new Conway polynomials in characteristic 2 and 3 provided by
1645
Kate Minola.
1646
</Item>
1647
1648
<Item>
1649
A new operation <C>MemoryUsage</C> determines the
1650
memory usage in bytes of an object and all its subobjects. It does
1651
not consider families and types but handles arbitrary self-referential
1652
structures of objects.
1653
</Item>
1654
</List>
1655
1656
1657
Fixed bugs which could produce wrong results:
1658
1659
<List>
1660
1661
<Item>
1662
When forming the semidirect product of a matrix group with a vector space
1663
over a non-prime field
1664
the embedding of the vector space gave a wrong result. [Reported by anvita21]
1665
</Item>
1666
1667
<Item>
1668
DefaultRing failed for constant polynomials over nonprime fields.
1669
[Reported by Stefan Kohl]
1670
</Item>
1671
1672
<Item>
1673
The method in ffeconway.gi that gets coefficients WRT to the
1674
canonical basis of the field from the representation is only correct
1675
if the basis is over the prime field. Added a TryNextMethod if this
1676
is not the case. [Reported by Alla Detinko]
1677
</Item>
1678
1679
<Item>
1680
1681
Creating a large (><M>2^{16}</M>) field over a non-prime subfield went
1682
completely wrong. [Reported by Jack Schmidt, from Alla Detinko]
1683
</Item>
1684
1685
<Item>
1686
A method for Coefficients for Conway polynomial FFEs
1687
didn't check that the basis provided was the canonical basis of
1688
the RIGHT field.
1689
[Reported by Bettina Eick]
1690
</Item>
1691
1692
<Item>
1693
An elementary abelian series was calculated wrongly. [Reported by N. Sieben]
1694
</Item>
1695
1696
<Item>
1697
Orbits on sets of transformations failed.
1698
</Item>
1699
1700
<Item>
1701
Wrong methods for <Ref BookName="ref" Func="GeneratorsOfRing"/>
1702
and <Ref BookName="ref" Func="GeneratorsOfRingWithOne"/>
1703
have been removed. These methods were based on the assumption
1704
that one can obtain a set of ring generators by taking the
1705
union of a known set of field generators, the set of the
1706
inverses of these field generators and&nbsp;{1}.
1707
</Item>
1708
1709
<Item>
1710
The name of a group of order 117600 and degree 50 was
1711
incorrect in the <Ref BookName="ref" Func="Primitive Permutation Groups"/>
1712
Primitive Permutation Groups library. In particular, a group
1713
was wrongly labelled as PGL(2, 49).
1714
</Item>
1715
1716
<Item>
1717
There was a possible error in <C>SubgroupsSolvableGroup</C> when computing
1718
subgroups within a subgroup.
1719
</Item>
1720
1721
<Item>
1722
An error in 2-Cohomology computation for pc groups was fixed.
1723
</Item>
1724
1725
<Item>
1726
<C>IsConjugate</C> used normality in a wrong supergroup
1727
</Item>
1728
</List>
1729
1730
1731
Fixed bugs which could lead to crashes:
1732
1733
<List>
1734
1735
<Item>
1736
&GAP; crashed when the
1737
<C>PATH</C> environment variable was not set. [Reported by Robert F. Morse]
1738
</Item>
1739
1740
<Item>
1741
&GAP; could crash when started with option <C>-x 1</C>.
1742
Now the number of columns is initialized with at
1743
least&nbsp;2. [Reported by Robert F. Morse]
1744
</Item>
1745
1746
<Item>
1747
After loading a saved workspace &GAP;
1748
crashed when one tried to slice
1749
a compressed vector over a field with 2 &lt; q &lt;= 256 elements, which had
1750
already existed in the saved workspace. [Reported by Laurent Bartholdi]
1751
</Item>
1752
1753
<Item>
1754
<C>FFECONWAY.WriteOverSmallestCommonField</C> tripped up when the common
1755
field is smaller than the field over which some of the vector elements
1756
are written, because it did a test based on the degree of the element,
1757
not the field it is written over. [Reported by Thomas Breuer]
1758
</Item>
1759
1760
<Item>
1761
1762
Fixed the following error:
1763
When an FFE in the Conway polynomial representation actually lied in a
1764
field that is handled in the internal representation (eg <M>GF(3)</M>)
1765
and you tried to write it over a bigger field that is ALSO handled
1766
internally (eg <M>GF(9)</M>) you got an element written over the larger
1767
field, but in the Conway polynomial representation, which is forbidden.
1768
[Reported by Jack Schmidt]
1769
</Item>
1770
1771
<Item>
1772
Attempting to compress a vector containing elements of a small finite field
1773
represented as elements of a bigger (external) field caused a
1774
segfault. [Reported by Edmund Robertson]
1775
</Item>
1776
1777
<Item>
1778
&GAP; crashed when <C>BlistList</C> was called with a range and a list
1779
containing large integers or non-integers. [Reported by Laurent Bartholdi]
1780
</Item>
1781
1782
<Item>
1783
&GAP; no longer crashes when <C>OnTuples</C> is called with a list that
1784
contains holes. [Reported by Thomas Breuer]
1785
</Item>
1786
</List>
1787
1788
1789
Other fixed bugs:
1790
1791
<List>
1792
1793
<Item>
1794
<C>Socle</C> for the trivial group could produce an error message.
1795
</Item>
1796
1797
<Item>
1798
<Ref BookName="ref" Func="DirectoryContents"/> ran into an error for immutable strings
1799
without trailing slash as argument. [Reported by Thomas Breuer]
1800
</Item>
1801
1802
<Item>
1803
The functions <Ref BookName="ref" Func="IsInjective"/>
1804
and <Ref BookName="ref" Func="IsSingleValued"/>
1805
did not work for general linear mappings with trivial (pre)image.
1806
[Reported by Alper Odabas]
1807
</Item>
1808
1809
<Item>
1810
Creating an enumerator for a prime field with more than 65536 elements ran
1811
into an infinite recursion. [Reported by Akos Seress]
1812
</Item>
1813
1814
<Item>
1815
The performance of <C>List</C>, <C>Filtered</C>, <C>Number</C>,
1816
<C>ForAll</C> and <C>ForAny</C> if
1817
applied to non-internally represented lists was improved. Also
1818
the performance of iterators for lists was slightly improved.
1819
</Item>
1820
1821
<Item>
1822
Finite field elements now know that they can be sorted easily which
1823
improves performance in certain lookups.
1824
</Item>
1825
1826
<Item>
1827
A method for <Ref BookName="ref" Func="IsSubset"/>
1828
was missing for the case that exactly one argument
1829
is an inhomogeneous list. [Reported by Laurent Bartholdi]
1830
</Item>
1831
1832
<Item>
1833
Long integers in expressions are now printed (was not yet implemented).
1834
[Reported by Thomas Breuer]
1835
</Item>
1836
1837
<Item>
1838
Fixed kernel function for printing records.
1839
</Item>
1840
1841
<Item>
1842
New C library interfaces (e.g., to ncurses in the <Package>Browse</Package>
1843
package) need some more memory to be allocated with <C>malloc</C>. The
1844
default value of &GAP; <C>-a</C> option is now <C>2m></C>.
1845
</Item>
1846
1847
<Item>
1848
Avoid warnings about pointer types by newer gcc compilers.
1849
</Item>
1850
1851
<Item>
1852
<C>IsBound(l[pos])</C> was failing for a large integer <A>pos</A>
1853
only when coded (e.g. in a loop or function body).
1854
</Item>
1855
1856
<Item>
1857
<C>ZmodpZObj</C> is now a synonym for
1858
<C>ZmodnZObj</C> such that from now on such
1859
objects print in a way that can be read back into &GAP;.
1860
</Item>
1861
1862
<Item>
1863
The outdated note that binary streams are not yet implemented has been
1864
removed.
1865
</Item>
1866
</List>
1867
1868
</Section>
1869
1870
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
1871
1872
<Section Label="fix4411">
1873
<Heading>&GAP; 4.4 Update 11 (December 2008)</Heading>
1874
1875
Fixed bugs which could produce wrong results:
1876
1877
<List>
1878
1879
<Item>
1880
<Ref BookName="ref" Func="MemoryUsage"/> on objects with no subobjects left them in the cache and
1881
thus reported 0 in subsequent calls to MemoryUsage for the same
1882
object. [Reported by Stefan Kohl]
1883
</Item>
1884
1885
<Item>
1886
<Ref BookName="ref" Func="Irr"/> might be missing characters. [Reported by Angel del Rio]
1887
</Item>
1888
1889
<Item>
1890
Up to now, it was allowed to call the function
1891
<Ref BookName="ref" Func="FullMatrixAlgebraCentralizer"/>
1892
with a field and a list of matrices such that the entries of the matrices
1893
were not contained in the field;
1894
in this situation, the result did not fit to the documentation.
1895
Now the entries of the matrices are required to lie in the field,
1896
if not then an error is signaled.
1897
</Item>
1898
1899
<Item>
1900
For those finite fields that are regarded as field extensions over
1901
non-prime fields (one can construct such fields with
1902
<Ref BookName="ref" Func="AsField"/>),
1903
the function <Ref BookName="ref" Func="DefiningPolynomial"/>
1904
erroneously returned a polynomial w.r.t. the extension of
1905
the prime field. [Reported by Stefan Kohl]
1906
</Item>
1907
1908
<Item>
1909
Since the release of &GAP; 4.4.10,
1910
the return values of the function
1911
<Ref BookName="ref" Func="QuaternionAlgebra"/>
1912
were not consistent w.r.t. the attribute
1913
<Ref BookName="ref" Func="GeneratorsOfAlgebra"/>;
1914
the returned list could have length four or five.
1915
Now always the list of elements of the canonical basis is returned.
1916
</Item>
1917
1918
<Item>
1919
<Ref BookName="ref" Func="MonomialGrevlexOrdering"/>
1920
calculated a wrong ordering in certain cases. [Reported by Paul Smith]
1921
</Item>
1922
1923
<Item>
1924
The (&GAP; kernel) method for the operation
1925
<Ref BookName="ref" Func="IntersectSet"/> for ranges had two bugs,
1926
which could yield a result range with either too few or too many elements.
1927
As a consequence, for example the <Ref BookName="ref" Func="Intersection"/>
1928
results for ranges could be
1929
wrong. [Reported by Matthew Fayers]
1930
</Item>
1931
1932
<Item>
1933
Fixed a bug in the short-form display of elements of larger finite fields, a bug in some
1934
cross-field conversions and some inefficiencies and a missing method in the
1935
<Ref BookName="ref" Func="LogFFE"/> code. [Reported by Jia Huang]
1936
</Item>
1937
1938
<Item>
1939
In rare cases <Ref BookName="ref" Func="SmithNormalFormIntegerMatTransforms"/>
1940
returned a wrong normal form (the version without transforming matrices
1941
did not have this problem). This is fixed. [Reported by Alexander Hulpke]
1942
</Item>
1943
1944
<Item>
1945
The variant of the function <Ref BookName="ref" Func="StraightLineProgram"/>
1946
that takes a string
1947
as its first argument returned wrong results if the last character of this
1948
string was a closing bracket.
1949
</Item>
1950
1951
<Item>
1952
The code for central series in a permutation group used too tight a bound
1953
and thus falsely return a nilpotent permutation group as non-nilpotent.
1954
</Item>
1955
</List>
1956
1957
1958
Fixed bugs which could lead to crashes:
1959
1960
<List>
1961
1962
<Item>
1963
Under certain circumstances the kernel code for position in blists
1964
would access a memory location just after the end of the blist. If
1965
this location was not accessible, a crash could result. This was corrected
1966
and the code was cleaned up. [Reported by Alexander Hulpke]
1967
</Item>
1968
</List>
1969
1970
1971
Other fixed bugs:
1972
1973
<List>
1974
1975
<Item>
1976
The function <Ref BookName="ref" Func="IsomorphismTypeInfoFiniteSimpleGroup"/>
1977
can be called with a positive integer instead of a group,
1978
and then returns information about the simple group(s) of this order.
1979
(This feature is currently undocumented.)
1980
For the argument 1, however, it ran into an infinite loop.
1981
</Item>
1982
1983
<Item>
1984
A lookup in an empty dictionary entered a break loop.
1985
Now returns <C>fail</C>. [Reported by Laurent Bartholdi]
1986
</Item>
1987
1988
<Item>
1989
The c++ keyword <C>and</C> can no longer be used as a macro parameter
1990
in the kernel. [Reported by Paul Smith]
1991
</Item>
1992
1993
<Item>
1994
The operation <Ref BookName="ref" Func="KernelOfMultiplicativeGeneralMapping"/> has
1995
methods designed to handle maps between permutation groups in a two-step approach,
1996
but did not reliably trigger the second step. This has now been fixed, preventing
1997
a slow infinite loop repeating the first step. This was normally only seen
1998
as part of a larger calculation.
1999
</Item>
2000
2001
<Item>
2002
There were two methods for the operation
2003
<Ref BookName="ref" Func="Intersection2"/>
2004
which have implicitly assumed
2005
that finiteness of a collection can always be decided. Now, these methods
2006
check for <Ref BookName="ref" Func="IsFinite"/> and
2007
<Ref BookName="ref" Func="CanComputeSize"/> prior to calling
2008
<Ref BookName="ref" Func="IsFinite"/>.
2009
</Item>
2010
2011
<Item>
2012
Made error message in case of corrupted help book information
2013
(manual.six file) shorter and more informative. [Reported by Alexander Hulpke]
2014
</Item>
2015
2016
<Item>
2017
&GAP; cannot call methods with more than six
2018
arguments.
2019
Now the functions <Ref BookName="ref" Func="NewOperation"/>,
2020
<Ref BookName="ref" Func="DeclareOperation"/>, and
2021
<Ref BookName="ref" Func="InstallMethod"/>
2022
signal an error if one attempts to declare an operation or to install
2023
a method with more than six arguments.
2024
</Item>
2025
2026
<Item>
2027
Up to now, <Ref BookName="ref" Func="IsOne"/>
2028
had a special method for general
2029
mappings, which was much worse than the generic method;
2030
this special method has now been removed.
2031
</Item>
2032
2033
<Item>
2034
When printing elements of an algebraic extension parentheses around
2035
coefficients were missing. [Reported by Maxim Hendriks]
2036
</Item>
2037
</List>
2038
2039
2040
New or improved functionality:
2041
2042
<List>
2043
2044
<Item>
2045
Make dynamic loading of modules possible on CYGWIN using a DLL based
2046
approach. Also move to using autoconf version 2.61.
2047
</Item>
2048
2049
<Item>
2050
One can now call
2051
<Ref BookName="ref" Func="Basis"/>,
2052
<Ref BookName="ref" Func="Iterator"/>
2053
etc. with the return value of the function
2054
<Ref BookName="ref" Func="AlgebraicExtension"/>.
2055
</Item>
2056
2057
<Item>
2058
The function <Ref BookName="ref" Func="FrobeniusCharacterValue"/>
2059
returned <C>fail</C> for results that require
2060
a finite field with more than 65536 elements.
2061
Meanwhile &GAP; can handle larger finite fields,
2062
so this restriction was removed.
2063
(It is still possible that
2064
<Ref BookName="ref" Func="FrobeniusCharacterValue"/> returns <C>fail</C>.)
2065
</Item>
2066
2067
<Item>
2068
Methods for testing membership in general linear groups and special linear
2069
groups over the integers have been added.
2070
</Item>
2071
2072
<Item>
2073
Methods for <Ref BookName="ref" Func="String"/> and
2074
<C>ViewString</C> for full row modules have
2075
been added. Further, a default method for
2076
<Ref BookName="ref" Func="IsRowModule"/>
2077
has been
2078
added, which returns
2079
<C>false</C> for objects
2080
which are not free left modules.
2081
</Item>
2082
2083
<Item>
2084
A <C>ViewString</C> method for objects with name
2085
has been added.
2086
</Item>
2087
2088
<Item>
2089
The method for <Ref BookName="ref" Func="View"/>
2090
for polynomial rings has been improved, and methods for
2091
<Ref BookName="ref" Func="String"/> and
2092
<C>ViewString</C> for polynomial rings
2093
have been added.
2094
</Item>
2095
2096
<Item>
2097
<Ref BookName="ref" Func="Binomial"/> now works with huge <C>n</C>.
2098
</Item>
2099
2100
<Item>
2101
The function <Ref BookName="ref" Func="InducedClassFunctionsByFusionMap"/>
2102
is now documented.
2103
</Item>
2104
2105
<Item>
2106
The return values of the function
2107
<Ref BookName="ref" Func="QuaternionAlgebra"/>
2108
now store that they are division rings (if optional parameters are given
2109
then of course ths depends on these parameters).
2110
</Item>
2111
</List>
2112
2113
</Section>
2114
2115
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
2116
2117
<Section Label="fix4412">
2118
<Heading>&GAP; 4.4 Update 12 (December 2008)</Heading>
2119
2120
Fixed bugs which could lead to crashes:
2121
2122
<List>
2123
<Item>
2124
A bug whereby leaving an incomplete statement on a
2125
line (for instance typing while and then return)
2126
when prompt colouring was in use could lead to &GAP;
2127
crashing.
2128
</Item>
2129
</List>
2130
2131
Other fixed bugs:
2132
<List>
2133
<Item>
2134
A bug which made the command-line editor unusable
2135
in a 64-bit version of &GAP; on Mac&nbsp;OS&nbsp;X.
2136
</Item>
2137
</List>
2138
2139
</Section>
2140
2141
</Chapter>
2142
2143
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
2144
<!-- %% -->
2145
<!-- %E -->
2146
2147