This file is indexed.

/usr/share/gap/doc/changes/chap6.html is in gap-doc 4r7p9-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>GAP (changes) - Chapter 6: Changes from Earlier Versions</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta name="generator" content="GAPDoc2HTML" />
<link rel="stylesheet" type="text/css" href="manual.css" />
<script src="manual.js" type="text/javascript"></script>
<script type="text/javascript">overwriteStyle();</script>
</head>
<body class="chap6"  onload="jscontent()">


<div class="chlinktop"><span class="chlink1">Goto Chapter: </span><a href="chap0.html">Top</a>  <a href="chap1.html">1</a>  <a href="chap2.html">2</a>  <a href="chap3.html">3</a>  <a href="chap4.html">4</a>  <a href="chap5.html">5</a>  <a href="chap6.html">6</a>  <a href="chapInd.html">Ind</a>  </div>

<div class="chlinkprevnexttop">&nbsp;<a href="chap0.html">[Top of Book]</a>&nbsp;  <a href="chap0.html#contents">[Contents]</a>&nbsp;  &nbsp;<a href="chap5.html">[Previous Chapter]</a>&nbsp;  &nbsp;<a href="chapInd.html">[Next Chapter]</a>&nbsp;  </div>

<p id="mathjaxlink" class="pcenter"><a href="chap6_mj.html">[MathJax on]</a></p>
<p><a id="X7F5DE9997CF43125" name="X7F5DE9997CF43125"></a></p>
<div class="ChapSects"><a href="chap6.html#X7F5DE9997CF43125">6 <span class="Heading">Changes from Earlier Versions</span></a>
<div class="ContSect"><span class="tocline"><span class="nocss">&nbsp;</span><a href="chap6.html#X7DBACE2286A43A31">6.1 <span class="Heading">Changes between <strong class="pkg">GAP</strong> 4.3 and <strong class="pkg">GAP</strong> 4.4</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap6.html#X7C5AC61F824086D6">6.1-1 <span class="Heading">Potentially Incompatible Changes</span></a>
</span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap6.html#X7D9702E3815BE9FB">6.1-2 <span class="Heading">New Packages</span></a>
</span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap6.html#X7DA8709A850E772D">6.1-3 <span class="Heading">Performance Enhancements</span></a>
</span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap6.html#X83E1A0D87D3D1EAF">6.1-4 <span class="Heading">New Programming and User Features</span></a>
</span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss">&nbsp;</span><a href="chap6.html#X8205C966783E6F37">6.2 <span class="Heading">Earlier Changes</span></a>
</span>
</div>
</div>

<h3>6 <span class="Heading">Changes from Earlier Versions</span></h3>

<p><a id="X7DBACE2286A43A31" name="X7DBACE2286A43A31"></a></p>

<h4>6.1 <span class="Heading">Changes between <strong class="pkg">GAP</strong> 4.3 and <strong class="pkg">GAP</strong> 4.4</span></h4>

<p>The main changes between <strong class="pkg">GAP</strong> 4.3 and <strong class="pkg">GAP</strong> 4.4 are:</p>

<p><a id="X7C5AC61F824086D6" name="X7C5AC61F824086D6"></a></p>

<h5>6.1-1 <span class="Heading">Potentially Incompatible Changes</span></h5>


<ul>
<li><p>The mechanism for the loading of Packages has changed to allow easier updates independent of main <strong class="pkg">GAP</strong> releases. Packages require a file <code class="file">PackageInfo.g</code> now. The new <code class="file">PackageInfo.g</code> files are available for all packages with the new version of GAP (see <span class="RefLink">???</span>).</p>

</li>
<li><p><code class="func">IsSimpleGroup</code> (<a href="../../doc/ref/chap39.html#X7A6685D7819AEC32"><span class="RefLink">Reference: IsSimpleGroup</span></a>) returns false now for the trivial group.</p>

</li>
<li><p><code class="func">PrimeBlocks</code> (<a href="../../doc/ref/chap71.html#X7ACB9306804F4E3F"><span class="RefLink">Reference: PrimeBlocks</span></a>): The output format has changed.</p>

</li>
<li><p>Division rings (see <code class="func">IsDivisionRing</code> (<a href="../../doc/ref/chap58.html#X7F2CAA9E7A16913D"><span class="RefLink">Reference: IsDivisionRing</span></a>)) are now implemented as <code class="func">IsRingWithOne</code> (<a href="../../doc/ref/chap56.html#X7E601FBD8020A0F3"><span class="RefLink">Reference: IsRingWithOne</span></a>).</p>

</li>
<li><p><code class="func">DirectSumOfAlgebras</code> (<a href="../../doc/ref/chap62.html#X7C591B7C7DEA7EEB"><span class="RefLink">Reference: DirectSumOfAlgebras (for two algebras)</span></a>): <span class="SimpleMath">p</span>-th power maps are compatible with the input now.</p>

</li>
<li><p>The print order for polynomials has been changed.</p>

</li>
</ul>
<p>These 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 "legacy" interfaces, but we remain committed to our policy of maintaining upward compatibility whenever sensibly possible.</p>


<ul>
<li><p>Groebner Bases:</p>

<p>Buchberger's algorithm to compute Groebner Bases has been implemented in GAP. (A. Hulpke)</p>

</li>
<li><p>For large scale Groebner Basis computations there also is an interface to the Singular system available in the <span class="URL"><a href="http://www.gap-system.org/Packages/singular.html"><strong class="pkg">Singular</strong></a></span> package. (M. Costantini and W. de Graaf)</p>

</li>
<li><p>New methods for factorizing polynomials over algebraic extensions of the rationals have been implemented in GAP. (A. Hulpke)</p>

</li>
<li><p>For more functionality to compute with algebraic number fields there is an interface to the Kant system available in the <span class="URL"><a href="http://www.gap-system.org/Packages/alnuth.html"><strong class="pkg">Alnuth</strong></a></span> package. (B. Assmann and B. Eick)</p>

</li>
<li><p>A new functionality to compute the minimal normal subgroups of a finite group, as well as its socle, has been installed. (B. Höfling)</p>

</li>
<li><p>A fast method for recognizing whether a permutation group is symmetric or alternating is available now (A. Seress)</p>

</li>
<li><p>A method for computing the Galois group of a rational polynomial is available again. (A. Hulpke)</p>

</li>
<li><p>The algorithm for <code class="func">BrauerCharacterValue</code> (<a href="../../doc/ref/chap72.html#X8304B68E84511685"><span class="RefLink">Reference: BrauerCharacterValue</span></a>) has been extended to the case where the splitting field is not supported in <strong class="pkg">GAP</strong>. (T. Breuer)</p>

</li>
<li><p>Brauer tables of direct products can now be constructed from the known Brauer tables of the direct factors. (T. Breuer)</p>

</li>
<li><p>Basic support for vector spaces of rational functions and of uea elements is available now in <strong class="pkg">GAP</strong>. (T. Breuer and W. de Graaf)</p>

</li>
<li><p>Various 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)</p>

</li>
</ul>
<p><a id="X7D9702E3815BE9FB" name="X7D9702E3815BE9FB"></a></p>

<h5>6.1-2 <span class="Heading">New Packages</span></h5>

<p>The following new Packages have been accepted.</p>


<ul>
<li><p><span class="URL"><a href="http://www.gap-system.org/Packages/alnuth.html"> <strong class="pkg">Alnuth</strong>: Algebraic Number Theory and an interface to the Kant system. </a></span> By B. Assmann and B. Eick.</p>

</li>
<li><p><span class="URL"><a href="http://www.gap-system.org/Packages/laguna.html"> <strong class="pkg">LAGUNA</strong>: Computing with Lie Algebras and Units of Group Algebras. </a></span> By V. Bovdi, A. Konovalov, R. Rossmanith, C. Schneider.</p>

</li>
<li><p><span class="URL"><a href="http://www.gap-system.org/Packages/nq.html"> <strong class="pkg">NQ</strong>: The ANU Nilpotent Quotient Algorithm. </a></span> By W. Nickel.</p>

</li>
<li><p><span class="URL"><a href="http://www.gap-system.org/Packages/kbmag.html"> <strong class="pkg">KBMAG</strong>: Knuth-Bendix for Monoids and Groups. </a></span> By D. Holt.</p>

</li>
<li><p><span class="URL"><a href="http://www.gap-system.org/Packages/polycyclic.html"> <strong class="pkg">Polycyclic</strong>: Computation with polycyclic groups. </a></span> By B. Eick and W. Nickel.</p>

</li>
<li><p><span class="URL"><a href="http://www.gap-system.org/Packages/quagroup.html"> <strong class="pkg">QuaGroup</strong>: Computing with Quantized Enveloping Algebras. </a></span> By W. de Graaf.</p>

</li>
</ul>
<p><a id="X7DA8709A850E772D" name="X7DA8709A850E772D"></a></p>

<h5>6.1-3 <span class="Heading">Performance Enhancements</span></h5>


<ul>
<li><p>The computation of irreducible representations and irreducible characters using the Baum-Clausen algorithm and the implementation of the Dixon-Schneider algorithm have been speeded up.</p>

</li>
<li><p>The algorithm for <code class="func">PossibleClassFusions</code> (<a href="../../doc/ref/chap73.html#X7883271F7F26356E"><span class="RefLink">Reference: PossibleClassFusions</span></a>) has been changed: the efficiency is improved and a new criterion is used. The algorithm for <code class="func">PossibleFusionsCharTableTom</code> (<a href="../../doc/ref/chap70.html#X7A82CB487DBDDC53"><span class="RefLink">Reference: PossibleFusionsCharTableTom</span></a>) has been speeded up. The method for <code class="func">PrimeBlocks</code> (<a href="../../doc/ref/chap71.html#X7ACB9306804F4E3F"><span class="RefLink">Reference: PrimeBlocks</span></a>) has been improved following a suggestion of H. Pahlings.</p>

</li>
<li><p>New improved methods for normalizer and subgroup conjugation in <span class="SimpleMath">S_n</span> have been installed and new improved methods for <code class="func">IsNaturalSymmetricGroup</code> (<a href="../../doc/ref/chap43.html#X8129BE59781478E1"><span class="RefLink">Reference: IsNaturalSymmetricGroup</span></a>) and <code class="func">IsNaturalAlternatingGroup</code> (<a href="../../doc/ref/chap43.html#X8129BE59781478E1"><span class="RefLink">Reference: IsNaturalAlternatingGroup</span></a>) have been implemented. These improve the available methods when groups of large degrees are given.</p>

</li>
<li><p>The 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.</p>

</li>
<li><p>The membership test in <code class="func">SP</code> (<a href="../../doc/ref/chap50.html#X8142A8B07811CA90"><span class="RefLink">Reference: Sp (for dimension and field size)</span></a>) and <code class="func">SU</code> (<a href="../../doc/ref/chap50.html#X82A2AADE805DCDE9"><span class="RefLink">Reference: SU</span></a>) groups has been improved using the invariant forms underlying these groups.</p>

</li>
<li><p>An improvement for the cyclic extension method for the computation of subgroup lattices has been implemented.</p>

</li>
<li><p>A better method for <code class="func">MinimalPolynomial</code> (<a href="../../doc/ref/chap66.html#X8643915A8424DAF8"><span class="RefLink">Reference: MinimalPolynomial</span></a>) for finite field matrices has been implemented.</p>

</li>
<li><p>The display has changed and the arithmetic of multivariate polynomials has been improved.</p>

</li>
<li><p>The <code class="func">LogMod</code> (<a href="../../doc/ref/chap15.html#X81AD9C7779A7BA89"><span class="RefLink">Reference: LogMod</span></a>) function now uses Pollard's rho method combined with the Pohlig/Hellmann approach.</p>

</li>
<li><p>Various functions for sets and lists have been improved following suggestions of L. Teirlinck. These include: <code class="func">Sort</code> (<a href="../../doc/ref/chap21.html#X7FE4975F8166884D"><span class="RefLink">Reference: Sort</span></a>), <code class="func">Sortex</code> (<a href="../../doc/ref/chap21.html#X87287FCA81E2B06A"><span class="RefLink">Reference: Sortex</span></a>), <code class="func">SortParallel</code> (<a href="../../doc/ref/chap21.html#X791F2B2C7E9B9A46"><span class="RefLink">Reference: SortParallel</span></a>), <code class="func">SortingPerm</code> (<a href="../../doc/ref/chap21.html#X800209E881E7CECB"><span class="RefLink">Reference: SortingPerm</span></a>), <code class="func">NrArrangements</code> (<a href="../../doc/ref/chap16.html#X7DE1ABD47D19F140"><span class="RefLink">Reference: NrArrangements</span></a>).</p>

</li>
<li><p>The methods for <code class="func">StructureConstantsTable</code> (<a href="../../doc/ref/chap62.html#X804ADF0280F67CDC"><span class="RefLink">Reference: StructureConstantsTable</span></a>) and <code class="func">GapInputSCTable</code> (<a href="../../doc/ref/chap62.html#X7F333822780B6731"><span class="RefLink">Reference: GapInputSCTable</span></a>) have been improved in the case of a known (anti-) symmetry following a suggestion of M. Costantini.</p>

</li>
</ul>
<p>The improvements listed in this Section have been implemented by T. Breuer and A. Hulpke.</p>

<p><a id="X83E1A0D87D3D1EAF" name="X83E1A0D87D3D1EAF"></a></p>

<h5>6.1-4 <span class="Heading">New Programming and User Features</span></h5>


<ul>
<li><p>The 2GB limit for workspace size has been removed and version numbers for saved workspaces have been introduced. (S. Linton and B. Höfling)</p>

</li>
<li><p>The limit on the total number of types created in a session has been removed. (S. Linton)</p>

</li>
<li><p>There is a new mechanism for loading packages available. Packages need a file <code class="file">PackageInfo.g</code> now. (T. Breuer and F. Lübeck; see <span class="RefLink">???</span>).</p>

</li>
</ul>
<p>Finally, as always, a number of bugs have been fixed. This release thus incorporates the contents of all the bug fixes which were released for <strong class="pkg">GAP</strong> 4.3. It also fixes a number of bugs discovered since the last bug fix.</p>

<p><a id="X8205C966783E6F37" name="X8205C966783E6F37"></a></p>

<h4>6.2 <span class="Heading">Earlier Changes</span></h4>

<p>The most important changes between <strong class="pkg">GAP</strong> 4.2 and <strong class="pkg">GAP</strong> 4.3 were:</p>


<ul>
<li><p>The performance of several routines has been substantially improved.</p>

</li>
<li><p>The functionality in the areas of finitely presented groups, Schur covers and the calculation of representations has been extended.</p>

</li>
<li><p>The data libraries of transitive groups, finite integral matrix groups, character tables and tables of marks have been extended.</p>

</li>
<li><p>The Windows installation has been simplified for the case where you are installing <strong class="pkg">GAP</strong> in its standard location.</p>

</li>
<li><p>Many bugs have been fixed.</p>

</li>
</ul>
<p>The most important changes between <strong class="pkg">GAP</strong> 4.1 and <strong class="pkg">GAP</strong> 4.2 were:</p>


<ul>
<li><p>A much extended and improved library of small groups as well as associated <code class="func">IdGroup</code> (<a href="../../doc/ref/chap50.html#X83044B9D7E3BDF35"><span class="RefLink">Reference: IdGroup</span></a>) routines.</p>

</li>
<li><p>The primitive groups library has been made more independent of the rest of <strong class="pkg">GAP</strong>, some errors were corrected.</p>

</li>
<li><p>New (and often much faster) infrastructure for orbit computation, based on a general "dictionary" abstraction.</p>

</li>
<li><p>New functionality for dealing with representations of algebras, and in particular for semisimple Lie algebras.</p>

</li>
<li><p>New functionality for binary relations on arbitrary sets, magmas and semigroups.</p>

</li>
<li><p>Bidirectional streams, allowing an external process to be started and then controlled "interactively" by <strong class="pkg">GAP</strong></p>

</li>
<li><p>A prototype implementation of algorithms using general subgroup chains.</p>

</li>
<li><p>Changes in the behavior of vectors over small finite fields.</p>

</li>
<li><p>A fifth book "New features for Developers" has been added to the <strong class="pkg">GAP</strong> manual.</p>

</li>
<li><p>Numerous bug fixes and performance improvements</p>

</li>
</ul>
<p>The changes between the final release of <strong class="pkg">GAP</strong> 3 (version 3.4.4) and <strong class="pkg">GAP</strong> 4 are wide-ranging. The general philosophy of the changes is two-fold. Firstly, many assumptions in the design of <strong class="pkg">GAP</strong> 3 revealed its authors' primary interest in group theory, and indeed in finite group theory. Although much of the <strong class="pkg">GAP</strong> 4 library is concerned with groups, the basic design now allows extension to other algebraic structures, as witnessed by the inclusion of substantial bodies of algorithms for computation with semigroups and Lie algebras. Secondly, as the scale of the system, and the number of people using and contributing to it has grown, some aspects of the underlying system have proved to be restricting, and these have been improved as part of comprehensive re-engineering of the system. This has included the new method selection system, which underpins the library, and a new, much more flexible, <strong class="pkg">GAP</strong> package interface.</p>

<p>Details of these changes can be found in the document "Migrating to GAP 4" available at the <strong class="pkg">GAP</strong> website, see <span class="URL"><a href="http://www.gap-system.org/Gap3/migratedoc.pdf">http://www.gap-system.org/Gap3/migratedoc.pdf</a></span>.</p>

<p>It is perhaps worth mentioning a few points here.</p>

<p>Firstly, much remains unchanged, from the perspective of the mathematical user:</p>


<ul>
<li><p>The syntax of that part of the <strong class="pkg">GAP</strong> language that most users need for investigating mathematical problems.</p>

</li>
<li><p>The great majority of function names.</p>

</li>
<li><p>Data libraries and the access to them.</p>

</li>
</ul>
<p>A number of visible aspects have changed:</p>


<ul>
<li><p>Some function names that need finer specifications now that there are more structures available in <strong class="pkg">GAP</strong>.</p>

</li>
<li><p>The access to information already obtained about a mathematical structure. In <strong class="pkg">GAP</strong> 3 such information about a group could be looked up by directly inspecting the group record, whereas in <strong class="pkg">GAP</strong> 4 functions must be used to access such information.</p>

</li>
</ul>
<p>Behind the scenes, much has changed:</p>


<ul>
<li><p>A new kernel, with improvements in memory management and in the language interpreter, as well as new features such as saving of workspaces and the possibility of compilation of <strong class="pkg">GAP</strong> code into C.</p>

</li>
<li><p>A new structure to the library, based upon a new type and method selection system, which is able to support a broader range of algebraic computation and to make the structure of the library simpler and more modular.</p>

</li>
<li><p>New and faster algorithms in many mathematical areas.</p>

</li>
<li><p>Data structures and algorithms for new mathematical objects, such as algebras and semigroups.</p>

</li>
<li><p>A new and more flexible structure for the <strong class="pkg">GAP</strong> installation and documentation, which means, for example, that a <strong class="pkg">GAP</strong> package and its documentation can be installed and be fully usable without any changes to the <strong class="pkg">GAP</strong> system.</p>

</li>
</ul>
<p>Very few features of <strong class="pkg">GAP</strong> 3 are not yet available in <strong class="pkg">GAP</strong> 4.</p>


<ul>
<li><p>Not all of the <strong class="pkg">GAP</strong> 3 packages have yet been converted for use with <strong class="pkg">GAP</strong> 4.</p>

</li>
<li><p>The library of crystallographic groups which was present in <strong class="pkg">GAP</strong> 3 is now part of a <strong class="pkg">GAP</strong> 4 package <span class="URL"><a href="http://www.gap-system.org/Packages/crystcat.html"> <strong class="pkg">CrystCat</strong> </a></span> by V. Felsch and F. Gähler.</p>

</li>
</ul>

<div class="chlinkprevnextbot">&nbsp;<a href="chap0.html">[Top of Book]</a>&nbsp;  <a href="chap0.html#contents">[Contents]</a>&nbsp;  &nbsp;<a href="chap5.html">[Previous Chapter]</a>&nbsp;  &nbsp;<a href="chapInd.html">[Next Chapter]</a>&nbsp;  </div>


<div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a href="chap0.html">Top</a>  <a href="chap1.html">1</a>  <a href="chap2.html">2</a>  <a href="chap3.html">3</a>  <a href="chap4.html">4</a>  <a href="chap5.html">5</a>  <a href="chap6.html">6</a>  <a href="chapInd.html">Ind</a>  </div>

<hr />
<p class="foot">generated by <a href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc">GAPDoc2HTML</a></p>
</body>
</html>