|
|
|
[Next][Prev] [Right] [Left] [Up] [Index] [Root]
This screen provides a terse summary of the new features installed
in Magma for release version V2.4 (December 14, 1998).
- Summary
-
-
Two important group theory databases are now included: the Besche-Eick
database of all groups up to order 1000 (excepting orders 512 and 768)
and the Hulpke database of transitive groups of degree up to 22.
-
A facility for analyzing matrix groups of large degree defined over
finite fields has been installed. This module uses the Aschbacher
classification of maximal subgroups of GL(n, q). The module was
written by Derek Holt, Alice Niemeyer, Eamonn O'Brien and Anthony
Pye.
-
The Schoenhage-Strassen FFT-based algorithm for the multiplication
of very large integers and an asymptotically-fast algorithm for the
division of large integers has been implemented.
-
Two separate FFT-based algorithms are now employed for the
multiplication of univariate polynomials over the integers and
similar coefficient rings. Also, an asymptotically-fast algorithm
for the division of polynomials has been implemented and modular
exponentiation is now performed using pre-inversion of the
modulus.
-
A new efficient packed representation for polynomials over GF(2)
has been implemented. This has led to dramatic speed-ups for all
computations within finite fields of characteristic 2. A database
of sparse irreducible polynomials over GF(2) has also been
constructed for all degrees up to 11000.
-
The Shoup algorithm for factorization of polynomials over finite
fields has been implemented, leading to very significant speed-ups.
-
Stage 1 of a major revision and extension of the power series
module has been completed. In this stage, the existing machinery
has been redone in greater generality and asymptotically-fast
algorithms are employed for multiplication and division. Series
with fractional exponents are now permitted.
-
The KANT number field machinery corresponding to Kash 1.9 has been
installed. This is the first major upgrade of the Magma general
number field facility since Kash V1.5 in 1995. This version of KANT
provides the Magma user with greatly enhanced performance for many
fundamental algorithms. Particularly noteworthy is a Round 4
integral basis algorithm and a much improved class group
algorithm.
-
Major new number field facilities available in Magma V2.4 (courtesy
of KANT) are ray class groups, S-unit groups, prime ideal
decompositions of fractional ideals, subfield lattices,
automorphism groups of normal and abelian extensions, solution of
Thue equations, unit equations and index form equations.
-
A set of functions have been provided for computing q-expansions of
the standard elliptic and modular functions. These include the
Weierstrass p-function, Eisenstein series, Dedekind eta-function,
Jacobi theta-function, elliptic j-invariant and discriminant
function.
-
The facilities for elliptic curves have undergone major expansion.
Noteworthy is the introduction of general machinery for working
with isomorphisms, isogenies and rational maps between curves. The
new machinery allows comparatively easy computation of things such
as the endomorphism ring of a curve over a finite field and the
eigenvalues of the Frobenius automorphism (the latter being useful
in point-counting).
-
The Cremona database of elliptic curves having conductor up to 5300
has been installed.
-
The design of the facility for finite planes has been revised,
firstly, to make it easier to work with planes and their subplanes
and secondly, to make it follow similar conventions to other
structures.
- Removals and Changes
-
-
The libraries directory of Magma has been renamed from LIBS to
libs---this is now consistent with all the other Magma filenames,
which are in lower case.
-
The following libraries of groups have been replaced by databases:
-
The soluble groups of order up to 100 (gps100);
-
The library of 2-groups of order dividing 256 (twogps);
-
The library of 3-groups of order dividing 729 (thrgps);
-
The library of primitive groups (prmgps);
-
The library of transitive groups (trngps).
The use of databases means that the information may be accessed
directly without first having to load a library. In general, the
new databases offer equivalent or extended functionality compared
to the old libraries. However, users wishing to continue using any
of these libraries may obtain them by mailing
magma@maths.usyd.edu.au.
-
The function IsDivisible has been renamed to IsDivisibleBy.
-
For consistency, the function SquareFree has been renamed to
Squarefree and the function SquareFreeFactorization has been
renamed to SquarefreeFactorization; the old function names have
been removed from the documentation but kept in the executable to
allow old code to continue to work for this release.
(``Squarefree'' seems to be more standard than
``square-free''---Knuth, for example, uses the former.)
-
The function ChineseRemainderTheorem or CRT taking 3 integers has
been removed to avoid confusion. (Solution still retains the
original functionality.)
-
The function ChineseRemainderTheorem or CRT taking 3 integer
sequences has been changed so that it now only takes 2 integer
sequences (the original ``multipliers'' sequence is now considered
to be all ones). (Solution still retains the original
functionality.)
-
The function PartialFractionDecomposition now produces the full
partial fraction decomposition of a rational function. The
original functionality is now given by the function
SquarefreePartialFractionDecomposition.
-
The function Variety now returns a sequence of tuples.
-
The functions PowerSeriesAlgebra and LaurentSeriesAlgebra have been
removed from the documentation in anticipation of their withdrawal
in a future release.
-
The number field function BetterPolynomial has been replaced by
OptimizedRepresentation which has slightly different semantics.
The old function will be retained for compatibility in the medium
term.
-
All number field functions that return (inexact) real or complex
numbers have been changed so that instead of returning fixed
precision numbers, they return free numbers (type FldPrElt).
-
The category names for formal series have been changed (and new
ones have been added as well).
-
The category name for elliptic curves has been changed to CurveEll
and the category name for points on an elliptic curve has been
changed to CurveEllPt.
-
The following incidence structure intrinsics have changed to accept
the incidence structure in which the operation should be performed
as the first argument: Block, BlockDegree, BlockSize,
ConnectionNumber, Covalence, IsParallelClass, Line, PointDegree.
-
The function IsBlock(S, D), where D is an incidence structure and S
is a set of points of D, is now IsBlock(D, S).
-
The following plane intrinsics have changed to accept the plane in
which the operation should be performed as the first argument:
AllPassants, AllSecants, AllTangents, CentralCollineationGroup,
Conic, ContainsQuadrangle, Coordinates, Exterior, ExternalLines,
Index, Interior, IsArc, IsCollinear, IsComplete, IsConcurrent,
IsParallel, IsUnital, Knot, ParallelClass, Pencil, QuadraticForm,
Support, Tangent, UnitalFeet.
- Language and System Features [HB 1--5]
-
New features:
-
New operator cmpne which is the logical NOT of the operator cmpeq
(to allow equality testing of arbitrary objects).
-
The procedure SetColumns now checks whether its argument is in
range (for the first time!).
-
New function IsCoercible to test whether an object is coercible
into a given structure, and the result of coercion if allowed. The
effect is similar to ! but allows a test for failure.
-
New function MakeType to create the type (category name) named by a
given string.
-
New function IsIntrinsic which tests whether a specific intrinsic
exists, named by a given string, and if so, returns the actual
intrinsic.
-
New function GetVersion which returns a sequence of integers
indicating the current version of Magma.
-
New procedure SetTraceback and function GetTraceback to control
whether Magma should produce a traceback of user function calls
before each error message.
-
New procedure Traceback to display a traceback of the current Magma
function invocations.
-
Function HasOutputFile is documented for the first time.
-
Function Realtime is documented for the first time.
-
Procedure ShowMemoryUsage is documented for the first time.
- Aggregate Data Types [HB 6--9]
-
New features:
-
New function CanChangeUniverse, to test whether the universe of a
set or sequence can be changed (like ChangeUniverse but with a test
for success).
-
New functions and procedures (Append(T, x), Append(~T, x), Prune(T)
and Prune(~T)) for appending to and pruning of tuples [HB 9].
- Groups and Semigroups
-
- General Groups [HB 15]
-
Removals and Changes:
[Next][Prev] [Right] [Left] [Up] [Index] [Root]
|
|