/usr/share/gap/doc/changes/chap2.html is in gap-doc 4r6p5-3.
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 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 | <?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 2: Changes between GAP 4.5 and GAP 4.6</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="chap2" 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="chapInd.html">Ind</a> </div>
<div class="chlinkprevnexttop"> <a href="chap0.html">[Top of Book]</a> <a href="chap0.html#contents">[Contents]</a> <a href="chap1.html">[Previous Chapter]</a> <a href="chap3.html">[Next Chapter]</a> </div>
<p id="mathjaxlink" class="pcenter"><a href="chap2_mj.html">[MathJax on]</a></p>
<p><a id="X8175857F79C8AD8E" name="X8175857F79C8AD8E"></a></p>
<div class="ChapSects"><a href="chap2.html#X8175857F79C8AD8E">2 <span class="Heading">Changes between <strong class="pkg">GAP</strong> 4.5 and <strong class="pkg">GAP</strong> 4.6</span></a>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap2.html#X837BB2577D478E55">2.1 <span class="Heading"><strong class="pkg">GAP</strong> 4.6.2 (February 2013)</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap2.html#X7C1300337DD936C4">2.1-1 <span class="Heading">Changes in the core <strong class="pkg">GAP</strong> system</span></a>
</span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap2.html#X79A4DFE97A230E6D">2.1-2 <span class="Heading">New and updated packages since <strong class="pkg">GAP</strong> 4.5.4</span></a>
</span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap2.html#X7C2A78667F08A971">2.2 <span class="Heading"><strong class="pkg">GAP</strong> 4.6.3 (March 2013)</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap2.html#X82859C4083F0D7B9">2.3 <span class="Heading"><strong class="pkg">GAP</strong> 4.6.4 (April 2013)</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap2.html#X7F7F29B27BF76872">2.4 <span class="Heading"><strong class="pkg">GAP</strong> 4.6.5 (July 2013)</span></a>
</span>
</div>
</div>
<h3>2 <span class="Heading">Changes between <strong class="pkg">GAP</strong> 4.5 and <strong class="pkg">GAP</strong> 4.6</span></h3>
<p>This chapter lists most important changes between <strong class="pkg">GAP</strong> 4.5.7 and <strong class="pkg">GAP</strong> 4.6.2 (i.e. between the last release of <strong class="pkg">GAP</strong> 4.5 and the first public release of <strong class="pkg">GAP</strong> 4.6). It also contains information about subsequent update releases for <strong class="pkg">GAP</strong> 4.6.</p>
<p><a id="X837BB2577D478E55" name="X837BB2577D478E55"></a></p>
<h4>2.1 <span class="Heading"><strong class="pkg">GAP</strong> 4.6.2 (February 2013)</span></h4>
<p><a id="X7C1300337DD936C4" name="X7C1300337DD936C4"></a></p>
<h5>2.1-1 <span class="Heading">Changes in the core <strong class="pkg">GAP</strong> system</span></h5>
<p>Improved and extended functionality:</p>
<ul>
<li><p>It is now possible to declare a name as an operation with two or more arguments (possibly several times) and <em>THEN</em> declare it as an attribute. Previously this was only possible in the other order. This should make the system more independent of the order in which packages are loaded.</p>
</li>
<li><p>Words in fp groups are now printed in factorised form if possible and not too time-consuming, i.e. <code class="code">a*b*a*b*a*b</code> will be printed as <code class="code">(a*b)^3</code>.</p>
</li>
<li><p>Added methods to calculate Hall subgroups in nonsolvable groups.</p>
</li>
<li><p>Added a generic method for <code class="func">IsPSolvable</code> (<a href="../../doc/ref/chap39.html#X81130F9A7CFCF6BF"><span class="RefLink">Reference: IsPSolvable</span></a>) and a better generic method for <code class="func">IsPNilpotent</code> (<a href="../../doc/ref/chap39.html#X87415A8485FCF510"><span class="RefLink">Reference: IsPNilpotent</span></a>) for groups.</p>
</li>
<li><p>Improvements to action homomorphisms: image of an element can use existing stabiliser chain of the image group (to reduce the number of images to compute), preimages under linear/projective action homomorphisms use linear algebra to avoid factorisation.</p>
</li>
<li><p>To improve efficiency, additional code was added to make sure that the <code class="code">HomePcgs</code> of a permutation group is in <code class="code">IsPcgsPermGroupRep</code> representation in more cases.</p>
</li>
<li><p>Added an operation <code class="func">SortBy</code> (<a href="../../doc/ref/chap21.html#X7FE4975F8166884D"><span class="RefLink">Reference: SortBy</span></a>) with arguments being a function <var class="Arg">f</var> of one argument and a list <var class="Arg">l</var> to be sorted in such a way that <code class="code"><var class="Arg">l</var>(<var class="Arg">f</var>[i]) <= <var class="Arg">l</var>(<var class="Arg">f</var>[i+1])</code>.</p>
</li>
<li><p>Added a kernel function <code class="code">MEET_BLIST</code> which returns <code class="keyw">true</code> if the two boolean lists have <code class="keyw">true</code> in any common position and <code class="keyw">false</code> otherwise. This is useful for representing subsets of a fixed set by boolean lists.</p>
</li>
<li><p>When assigning to a position in a compressed FFE vector <strong class="pkg">GAP</strong> now checks to see if the value being assigned can be converted into an internal FFE element if it isn't one already. This uses new attribute <code class="func">AsInternalFFE</code> (<a href="../../doc/ref/chap59.html#X807959EE82CED148"><span class="RefLink">Reference: AsInternalFFE</span></a>), for which methods are installed for internal FFEs, Conway FFEs and ZmodpZ objects.</p>
</li>
<li><p>Replaced <code class="func">ViewObj</code> (<a href="../../doc/ref/chap6.html#X815BF22186FD43C9"><span class="RefLink">Reference: ViewObj</span></a>) method for fields by <code class="func">ViewString</code> (<a href="../../doc/ref/chap27.html#X7803FBCA79DB5529"><span class="RefLink">Reference: ViewString</span></a>) method to improve the way how polynomial rings over algebraic extenstions of fields are displayed.</p>
</li>
<li><p>Made the info string (optional 2nd argument to <code class="func">InstallImmediateMethod</code> (<a href="../../doc/ref/chap78.html#X87B47AC0849611F8"><span class="RefLink">Reference: InstallImmediateMethod</span></a>)) behave similarly to the info string in <code class="func">InstallMethod</code> (<a href="../../doc/ref/chap78.html#X837EFDAB7BEF290B"><span class="RefLink">Reference: InstallMethod</span></a>). In particular, <code class="func">TraceImmediateMethods</code> (<a href="../../doc/ref/chap7.html#X81078D3387A38E31"><span class="RefLink">Reference: TraceImmediateMethods</span></a>) now always prints the name of the operation.</p>
</li>
<li><p>Syntax errors such as <code class="code">Unbind(x,1)</code> had the unhelpful property that <code class="code">x</code> got unbound before the syntax error was reported. A specific check was added to catch this and similar cases a little earlier.</p>
</li>
<li><p>Allow a <code class="code">GAPARGS</code> parameter to the top-level <strong class="pkg">GAP</strong> <code class="file">Makefile</code> to pass extra arguments to the <strong class="pkg">GAP</strong> used for manual building.</p>
</li>
<li><p>Added an attribute <code class="func">UnderlyingRingElement</code> (<a href="../../doc/ref/chap64.html#X874B2B2A7F5A9A78"><span class="RefLink">Reference: UnderlyingRingElement</span></a>) for Lie objects.</p>
</li>
<li><p>The function <code class="func">PrimeDivisors</code> (<a href="../../doc/ref/chap14.html#X80E7A5D381C64CC9"><span class="RefLink">Reference: PrimeDivisors</span></a>) now became an attribute. [suggested by Mohamed Barakat]</p>
</li>
<li><p>Added an operation <code class="func">DistancePerms</code> (<a href="../../doc/ref/chap42.html#X7BC944F57A04AFF2"><span class="RefLink">Reference: DistancePerms</span></a>) with a kernel method for internal permutations and a generic method.</p>
</li>
<li><p>Added a method for <code class="func">Subfields</code> (<a href="../../doc/ref/chap58.html#X83490C65819D85FE"><span class="RefLink">Reference: Subfields</span></a>) to support large finite fields. [reported by Inneke van Gelder]</p>
</li>
</ul>
<p>Fixed bugs which could lead to crashes:</p>
<ul>
<li><p>The extremely old <code class="code">DEBUG_DEADSONS_BAGS</code> compile-time option has not worked correctly for many years and indeed crashes <strong class="pkg">GAP</strong>. The type of bug it is there to detect has not arisen in many years and we have certainly not used this option, so it has been removed. [Reported by Volker Braun]</p>
</li>
</ul>
<p>Other fixed bugs:</p>
<ul>
<li><p>Scanning of floating point literals collided with iterated use of integers as record field elements in expressions like <code class="code">r.1.2</code>.</p>
</li>
<li><p>Fixed two potential problems in <code class="code">NorSerPermPcgs</code>, one corrupting some internal data and one possibly mixing up different pcgs.</p>
</li>
<li><p>Fixed a performance problem with <code class="func">NiceMonomorphism</code> (<a href="../../doc/ref/chap40.html#X7965086E82ABCF41"><span class="RefLink">Reference: NiceMonomorphism</span></a>). [reported by John Bamberg]</p>
</li>
<li><p>Fixed a bug in <code class="func">ReadCSV</code> (<a href="../../doc/ref/chap10.html#X86FDC1EF82CAD2DA"><span class="RefLink">Reference: ReadCSV</span></a>) that caused some <code class="file">.csv</code> files being parsed incorrectly.</p>
</li>
</ul>
<p>No longer supported:</p>
<ul>
<li><p>The file <code class="file">lib/consistency.g</code>, which contained three undocumented auxiliary functions, has been removed from the library. In addition, the global record <code class="code">Revision</code> is now deprecated, so there is no need to bind its components in <strong class="pkg">GAP</strong> packages.</p>
</li>
</ul>
<p><a id="X79A4DFE97A230E6D" name="X79A4DFE97A230E6D"></a></p>
<h5>2.1-2 <span class="Heading">New and updated packages since <strong class="pkg">GAP</strong> 4.5.4</span></h5>
<p>At the time of the release of <strong class="pkg">GAP</strong> 4.5 there were 99 packages redistributed with <strong class="pkg">GAP</strong>. The first public release of <strong class="pkg">GAP</strong> 4.6 contains 106 packages.</p>
<p>The new packages that have been added to the redistribution since the release of <strong class="pkg">GAP</strong> 4.5.4 are:</p>
<ul>
<li><p><strong class="pkg">AutoDoc</strong> package by S. Gutsche, providing tools for automated generation of <strong class="pkg">GAPDoc</strong> manuals.</p>
</li>
<li><p><strong class="pkg">Congruence</strong> package by A. Konovalov, which provides functions to construct various canonical congruence subgroups in <span class="SimpleMath">SL_2(ℤ)</span>, and also intersections of a finite number of such subgroups, implements the algorithm for generating Farey symbols for congruence subgroups and uses it to produce a system of independent generators for these subgroups.</p>
</li>
<li><p><strong class="pkg">Convex</strong> package by S. Gutsche, which provides structures and algorithms for convex geometry.</p>
</li>
<li><p><strong class="pkg">Float</strong> package by L. Bartholdi, which extends <strong class="pkg">GAP</strong> floating-point capabilities by providing new floating-point handlers for high-precision real, interval and complex arithmetic using MPFR, MPFI, MPC or CXSC external libraries. It also contains a very high-performance implementation of the LLL (Lenstra-Lenstra-Lovász) lattice reduction algorithm via the external library FPLLL.</p>
</li>
<li><p><strong class="pkg">PolymakeInterface</strong> package by T. Baechler and S. Gutsche, providing a link to the callable library of the <strong class="pkg">polymake</strong> system (<span class="URL"><a href="http://www.polymake.org">http://www.polymake.org</a></span>).</p>
</li>
<li><p><strong class="pkg">ToolsForHomalg</strong> package by M. Barakat, S. Gutsche and M. Lange-Hegermann, which provides some auxiliary functionality for the <strong class="pkg">homalg</strong> project (<span class="URL"><a href="http://homalg.math.rwth-aachen.de/">http://homalg.math.rwth-aachen.de/</a></span>).</p>
</li>
<li><p><strong class="pkg">ToricVarieties</strong> package by S. Gutsche, which provides data structures to handle toric varieties by their commutative algebra structure and by their combinatorics.</p>
</li>
</ul>
<p>Furthermore, some packages have been upgraded substantially since the <strong class="pkg">GAP</strong> 4.5.4 release:</p>
<ul>
<li><p>Starting from 2.x.x, the functionality for iterated monodromy groups has been moved from the <strong class="pkg">FR</strong> package by L. Bartholdi to a separate package IMG (currently undeposited, available from <span class="URL"><a href="https://github.com/laurentbartholdi/img">https://github.com/laurentbartholdi/img</a></span>). This completely removes the dependency of <strong class="pkg">FR</strong> on external library modules, and should make its installation much easier.</p>
</li>
</ul>
<p><a id="X7C2A78667F08A971" name="X7C2A78667F08A971"></a></p>
<h4>2.2 <span class="Heading"><strong class="pkg">GAP</strong> 4.6.3 (March 2013)</span></h4>
<p>Improved functionality:</p>
<ul>
<li><p>Several changes were made to <code class="func">IdentityMat</code> (<a href="../../doc/ref/chap24.html#X7DB902CE848D1524"><span class="RefLink">Reference: IdentityMat</span></a>) and <code class="func">NullMat</code> (<a href="../../doc/ref/chap24.html#X86D343A77D9B3D4D"><span class="RefLink">Reference: NullMat</span></a>). First off, the documentation was changed to properly state that these functions support arbitrary rings, and not just fields. Also, more usage examples were added to the manual.</p>
<p>For <code class="code">NullMat</code>, it is now also always possible to specify a ring element instead of a ring, and this is documented. This matches existing <code class="code">IdentityMat</code> behavior, and partially worked before (undocumented), but in some cases could run into error or infinite recursion.</p>
<p>In the other direction, if a finite field element, <code class="code">IdentityMat</code> now really creates a matrix over the smallest field containing that element. Previously, a matrix over the prime field was created instead, contrary to the documentation.</p>
<p>Furthermore, <code class="code">IdentityMat</code> over small finite fields is now substantially faster when creating matrices of large dimension (say a thousand or so).</p>
<p>Finally, <code class="func">MutableIdentityMat</code> (<a href="../../doc/ref/chap77.html#X7F6A6CBC7C9E91E5"><span class="RefLink">Reference: MutableIdentityMat</span></a>) and <code class="func">MutableNullMat</code> (<a href="../../doc/ref/chap77.html#X7F6A6CBC7C9E91E5"><span class="RefLink">Reference: MutableNullMat</span></a>) were explicitly declared obsolete (and may be removed in <strong class="pkg">GAP</strong> 4.7). They actually were deprecated since <strong class="pkg">GAP</strong> 4.1, and their use discouraged by the manual. Code using them should switch to <code class="func">IdentityMat</code> (<a href="../../doc/ref/chap24.html#X7DB902CE848D1524"><span class="RefLink">Reference: IdentityMat</span></a>) respectively <code class="func">NullMat</code> (<a href="../../doc/ref/chap24.html#X86D343A77D9B3D4D"><span class="RefLink">Reference: NullMat</span></a>).</p>
</li>
<li><p>Two new <code class="func">PerfectResiduum</code> (<a href="../../doc/ref/chap39.html#X83D5C8B8865C85F1"><span class="RefLink">Reference: PerfectResiduum</span></a>) methods were added for solvable and perfect groups, handling these cases optimally. Moreover, the existing generic method was improved by changing it to use <code class="func">DerivedSeriesOfGroup</code> (<a href="../../doc/ref/chap39.html#X7A879948834BD889"><span class="RefLink">Reference: DerivedSeriesOfGroup</span></a>). Previously, it would always compute the derived series from scratch and then throw away the result.</p>
</li>
<li><p>A new <code class="func">MinimalGeneratingSet</code> (<a href="../../doc/ref/chap39.html#X81D15723804771E2"><span class="RefLink">Reference: MinimalGeneratingSet</span></a>) method for groups handled by a nice monomorphisms was added, similar to the existing <code class="func">SmallGeneratingSet</code> (<a href="../../doc/ref/chap39.html#X814DBABC878D5232"><span class="RefLink">Reference: SmallGeneratingSet</span></a>) method. This is useful if the nice monomorphism is already mapping into a pc or pcp group.</p>
</li>
<li><p>Added a special method for <code class="func">DerivedSubgroup</code> (<a href="../../doc/ref/chap39.html#X7CC17CF179ED7EF2"><span class="RefLink">Reference: DerivedSubgroup</span></a>) if the group is known to be abelian.</p>
</li>
</ul>
<p>Fixed bugs:</p>
<ul>
<li><p>Fixed a bug in <code class="func">PowerModInt</code> (<a href="../../doc/ref/chap14.html#X7E404B1183DBC82A"><span class="RefLink">Reference: PowerModInt</span></a>) computing <span class="SimpleMath">r^e</span> mod <span class="SimpleMath">m</span> in a special case when <span class="SimpleMath">e=0</span> and <span class="SimpleMath">m=0</span>. [Reported by Ignat Soroko]</p>
</li>
<li><p><code class="func">CoefficientsQadic</code> (<a href="../../doc/ref/chap14.html#X79B466E984CD52D4"><span class="RefLink">Reference: CoefficientsQadic</span></a>) now better checks its arguments to avoid an infinite loop when being asked for a <var class="Arg">q</var>-adic representation for <span class="SimpleMath">q=1</span>. [Reported by Ignat Soroko]</p>
</li>
<li><p>Methods for <code class="code">SylowSubgroupOp</code> (see <code class="func">SylowSubgroup</code> (<a href="../../doc/ref/chap39.html#X7AA351308787544C"><span class="RefLink">Reference: SylowSubgroup</span></a>)) for symmetric and alternating group did not always set <code class="func">IsPGroup</code> (<a href="../../doc/ref/chap39.html#X8089F18C810B7E3E"><span class="RefLink">Reference: IsPGroup</span></a>) and <code class="func">PrimePGroup</code> (<a href="../../doc/ref/chap39.html#X87356BAA7E9E2142"><span class="RefLink">Reference: PrimePGroup</span></a>) for the returned Sylow subgroup.</p>
</li>
<li><p>Display of matrices consisting of Conway field elements (which are displayed as polynomials) did not print constant 1 terms.</p>
</li>
<li><p>Added an extra check and a better error message in the method to access <em>natural</em> generators of domains using the <code class="code">.</code> operator (see <code class="func">GeneratorsOfDomain</code> (<a href="../../doc/ref/chap31.html#X7E353DD1838AB223"><span class="RefLink">Reference: GeneratorsOfDomain</span></a>)).</p>
</li>
<li><p>Trying to solve the word problem in an fp group where one or more generators has a name of more than one alphabetic character led to a break loop.</p>
</li>
<li><p>Provided the default method for <code class="func">AbsoluteIrreducibleModules</code> (<a href="../../doc/ref/chap71.html#X7D0BD5337D1C069B"><span class="RefLink">Reference: AbsoluteIrreducibleModules</span></a>) as a temporary workaround for the problem which may cause returning wrong results or producing an error when being called for a non-prime field.</p>
</li>
<li><p>A bug in the <strong class="pkg">GAP</strong> kernel caused <code class="code">RNamObj</code> to error out when called with a string that had the <code class="func">IsSSortedList</code> (<a href="../../doc/ref/chap21.html#X80CDAF45782E8DCB"><span class="RefLink">Reference: IsSSortedList</span></a>) property set (regardless of whether it was set to <code class="keyw">true</code> or <code class="keyw">false</code>). This in turn would lead to strange (and inappropriate) errors when using such a string to access entries of a record.</p>
</li>
<li><p><strong class="pkg">GAP</strong> can store vectors over small finite fields (size at most 256) in a special internal data representation where each entry of the vector uses exactly one byte. Due to an off-by-one bug, the case of a field with exactly 256 elements was not handled properly. As a result, <strong class="pkg">GAP</strong> failed to convert a vector to the special data representation, which in some situations could lead to a crash. The off-by-one error was fixed and now vectors over <span class="SimpleMath">GF(256)</span> work as expected.</p>
</li>
<li><p>A bug in the code for accessing sublist via the <code class="code">list{poss}</code> syntax could lead to <strong class="pkg">GAP</strong> crashing. Specifically, if the list was a compressed vector over a finite field, and the sublist syntax was nested, as in <code class="code">vec{poss1}{poss2}</code>. This now correctly triggers an error instead of crashing.</p>
</li>
</ul>
<p>New packages added for the redistribution with <strong class="pkg">GAP</strong>:</p>
<ul>
<li><p><strong class="pkg">SpinSym</strong> package by L. Maas, which contains Brauer tables of Schur covers of symmetric and alternating groups and provides some related functionalities.</p>
</li>
</ul>
<p><a id="X82859C4083F0D7B9" name="X82859C4083F0D7B9"></a></p>
<h4>2.3 <span class="Heading"><strong class="pkg">GAP</strong> 4.6.4 (April 2013)</span></h4>
<p>New functionality:</p>
<ul>
<li><p>New command line option <code class="code">-O</code> was introduced to disable loading obsolete variables. This option may be used, for example, to check that they are not used in a <strong class="pkg">GAP</strong> package or one's own <strong class="pkg">GAP</strong> code. For further details see <a href="../../doc/ref/chap3.html#X79CCD3A6821E5A37"><span class="RefLink">Reference: options</span></a> and <a href="../../doc/ref/chap77.html#X78C85ED17F00DCC1"><span class="RefLink">Reference: Replaced and Removed Command Names</span></a>.</p>
</li>
</ul>
<p>Fixed bugs which could lead to incorrect results:</p>
<ul>
<li><p>Fixed the bug in <code class="func">NewmanInfinityCriterion</code> (<a href="../../doc/ref/chap47.html#X85C9FD548394C1E2"><span class="RefLink">Reference: NewmanInfinityCriterion</span></a>) which may cause returning <code class="keyw">true</code> instead of <code class="keyw">false</code>. [Reported by Lev Glebsky]</p>
</li>
</ul>
<p>Fixed bugs which could lead to crashes:</p>
<ul>
<li><p>Fixed the kernel method for <code class="func">Remove</code> (<a href="../../doc/ref/chap21.html#X7E98B11B79BA9167"><span class="RefLink">Reference: Remove</span></a>) which did not raise an error in case of empty lists, but corrupted the object. The error message in a library method is also improved. [Reported by Roberto Ràdina]</p>
</li>
</ul>
<p>Fixed bugs that could lead to break loops:</p>
<ul>
<li><p>Fixed requirements in a method to multiply a list and an algebraic element. [Reported by Sebastian Gutsche]</p>
</li>
<li><p>Fixed a bug in <code class="func">NaturalCharacter</code> (<a href="../../doc/ref/chap72.html#X82C01DDB82D751A9"><span class="RefLink">Reference: NaturalCharacter (for a group)</span></a>) entering a break loop when being called on a homomorphism whose image is not a permutation group. [Reported by Sebastian Gutsche]</p>
</li>
<li><p>Fixed a bug in <code class="func">ExponentsConjugateLayer</code> (<a href="../../doc/ref/chap45.html#X868D6DB07D349460"><span class="RefLink">Reference: ExponentsConjugateLayer</span></a>) which occured, for example, in some calls of <code class="func">SubgroupsSolvableGroup</code> (<a href="../../doc/ref/chap39.html#X7AD7804A803910AC"><span class="RefLink">Reference: SubgroupsSolvableGroup</span></a>) [Reported by Ramon Esteban-Romero]</p>
</li>
<li><p>Fixed a problem with displaying function fields, e.g. <code class="code">Field(Indeterminate(Rationals,"x"))</code>. [Reported by Jan Willem Knopper]</p>
</li>
<li><p>Fixed two bugs in the code for <code class="func">NaturalHomomorphismByIdeal</code> (<a href="../../doc/ref/chap56.html#X83D53D98809EC461"><span class="RefLink">Reference: NaturalHomomorphismByIdeal</span></a>) for polynomial rings. [Reported by Martin Leuner]</p>
</li>
<li><p>Added missing method for <code class="func">String</code> (<a href="../../doc/ref/chap27.html#X81FB5BE27903EC32"><span class="RefLink">Reference: String</span></a>) for <code class="code">-infinity</code>.</p>
</li>
<li><p>Fixed the bug with <code class="func">ONanScottType</code> (<a href="../../doc/ref/chap43.html#X7E50211A7B92455F"><span class="RefLink">Reference: ONanScottType</span></a>) not recognising product action properly in some cases.</p>
</li>
<li><p>The method for <code class="func">SlotUsagePattern</code> (<a href="../../doc/ref/chap37.html#X84C83CE98194FD03"><span class="RefLink">Reference: SlotUsagePattern</span></a>) for straight line programs had a bug which triggered an error, if the straight line program contained unnecessary steps.</p>
</li>
</ul>
<p><a id="X7F7F29B27BF76872" name="X7F7F29B27BF76872"></a></p>
<h4>2.4 <span class="Heading"><strong class="pkg">GAP</strong> 4.6.5 (July 2013)</span></h4>
<p>Improved functionality:</p>
<ul>
<li><p><code class="func">TraceMethods</code> (<a href="../../doc/ref/chap7.html#X80B044017C9E4137"><span class="RefLink">Reference: TraceMethods (for operations)</span></a>) and <code class="func">UntraceMethods</code> (<a href="../../doc/ref/chap7.html#X7EB04D387C53E4C1"><span class="RefLink">Reference: UntraceMethods (for operations)</span></a>) now better check their arguments and provide a sensible error message if being called without arguments. Also, both variants of calling them are now documented.</p>
</li>
<li><p>Library methods for <code class="func">Sortex</code> (<a href="../../doc/ref/chap21.html#X87287FCA81E2B06A"><span class="RefLink">Reference: Sortex</span></a>) are now replaced by faster ones using the kernel <code class="func">SortParallel</code> (<a href="../../doc/ref/chap21.html#X791F2B2C7E9B9A46"><span class="RefLink">Reference: SortParallel</span></a>) functionality instead of making expensive zipped lists.</p>
</li>
</ul>
<p>Fixed bugs which could lead to incorrect results:</p>
<ul>
<li><p><code class="func">IntHexString</code> (<a href="../../doc/ref/chap27.html#X7B6D118184F692A0"><span class="RefLink">Reference: IntHexString</span></a>) wrongly produced a large integer when there were too many leading zeros. [Reported by Joe Bohanon]</p>
</li>
</ul>
<p>Fixed bugs that could lead to break loops:</p>
<ul>
<li><p>A bug that may occur in some cases while calling <code class="func">TransitiveIdentification</code> (<a href="../../doc/ref/chap50.html#X7EE614D780C713D1"><span class="RefLink">Reference: TransitiveIdentification</span></a>). [Reported by Izumi Miyamoto]</p>
</li>
<li><p>The new code for semidirect products of permutation groups, introduced in <strong class="pkg">GAP</strong> 4.6, had a bug which was causing problems for <code class="func">Projection</code> (<a href="../../doc/ref/chap32.html#X8769E8DA80BC96C1"><span class="RefLink">Reference: Projection</span></a>). [Reported by Graham Ellis]</p>
</li>
</ul>
<div class="chlinkprevnextbot"> <a href="chap0.html">[Top of Book]</a> <a href="chap0.html#contents">[Contents]</a> <a href="chap1.html">[Previous Chapter]</a> <a href="chap3.html">[Next Chapter]</a> </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="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>
|