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