Patch Notes
Magma V2.20-6 Patch Notes
Patch release for Magma V2.20-6. Updated areas: Algebraic Function Fields, Elliptic Curves, Galois Groups, Graphs, Groebner Bases and 10 more.
Algebraic Function Fields¶
- Improvements have been made to finding a two-element form of an ideal. This fixes runtime errors in a few cases, one of which was reported by Matthieu Rambaud.
Embedhas been fixed (previously crashed) in the case where the constant fields are not the same. Reported by Matthieu Rambaud.- Extra checking has been added to the
Embedintrinsic to ensure that the coefficient field of the first argument is contained in the second argument. - A bug has been fixed in the application of the map returned by
ConstantFieldExtensionwhen the extensions are not defined by monic integral polynomials. - The
CoveringStructureof 2 function fields has been improved. - Some bugs involving denominators of non-simple elements have been fixed.
Elliptic Curves¶
- The Cremona database has been updated to include all curves up to conductor 339999.
Galois Groups¶
- An adjustment has been made to when
ShortCosetsare used in the computation of aGaloisGroup.
Graphs¶
- A bug preventing the use of the
Invariantparameter has been fixed.
Groebner Bases¶
- A crash involving ideals with a large number of variables has been fixed. Reported by M. Grassl.
Groups¶
- Following user problems, the optional parameters for the
CayleyGraphandSchreierGraphfunctions have been changed. They now have two parameters:LabelledandDirected, both of which are true by default. To get the unlabelled or undirected graph the user may set the approriate parameter(s) to false. Note that to compute a meaningful automorphism group of the graph, either the graph should be unlabelled, or theIgnoreLabelsparameter of the automorphism group function should be set to true. Problem identified by G. Royle. - A crash in computing the order of an fp-group has been fixed. Bug reported by Steve Humphries.
- A large waste of time when computing the conjugacy classes of a group of type
GrpAbhas been fixed. - A sometime infinite loop when using
AutomorphismGroupon a lattice with theStabilizerparameter set $>0$ has been fixed. - A bug where using
NormalSubgroupswith theIsTransitiveflag set returned some non-transitive subgroups has been fixed. Bug reported by Gabriel Verret.
Hyperelliptic Curves¶
- A bug in
Orderfor points on hyperelliptic Jacobians has been fixed. This caused a finite order rather than 0 to be returned for some points of infinite order. Reported by Christiaan Koster.
Lattices¶
- The
LatticeWithBasisintrinsic for a matrix over the reals checks that the input has full rank using LLL now (previously the check was done by calculating an echelon form). This means now almost any input is accepted, as the linear dependence must be exact for the check to fail.
Maps¶
- A fix has been made to the
CoveringStructureof parents of some types of maps. In particular this was seen to affect maps of typeHomGrp.
Matrices¶
- Compatibility between non-square matrices has been improved, in particular between
ModMatRngEltandModMatFldElttypes.
Modules¶
- A bug in
IsIsomorphicfor R-modules in characteristic zero has been fixed. Reported by U. Thiel.
Number Fields¶
- Some anomalous behaviour in the hashing of number field elements and order elements has been fixed. This manifested in poor performance in some algorithms.
- Corrections have been made to the real precision used in computing the
LLL(basis) of an order. Insufficient precision lead to a result which was far from LLL in some (unusual) cases, and this in turn caused a crash inClassGroup. Reported by Daniel Mayer. - Improvements have been made to finding a two-element form of an ideal. This fixes runtime errors in a few cases, one of which was reported by Daniel Mayer.
- The
Absparameter is now supported in theext<|>constructor when extending the rationals or an algebraic field. IsPrime(I)now works for ideals of non-maximal orders (returning only true/false). Previously it crashed in the non-prime case, if the caller attempted to assign two return values.- An order constructed from given elements of a field now has identical
EquationOrderto the field. Reported by C. Quitte. - Some bugs involving denominators of non-simple elements have been fixed.
- When
Divisoris called on an ideal it is now checked that the ideal is of a maximal order.
Numerical Linear Algebra¶
- Magma now has methods based on Householder reflections (RQ decompositions) for various functions involving linear algebra over a real or complex field.
- The user functionality includes
RQDecomposition,QLDecomposition,NumericalKernel,NumericalRank,NumericalSolution, andNumericalPseudoinverse. The main functions for determinant and inverse for square matrices use the new code internally. - The
NumericalEigenvectorsintrinsic has been fixed to deal with input that has columns that are zero. Reported by A. Kumar. - The
Choleskydecomposition of a matrix which has different precision than the default real field is now computed to the proper precision.
Orders of Associative Algebras¶
- Exception handling has been improved.
Schemes¶
- Schemes can now only be constructed over rings which contain a one.
- Classification of isolated singularities: a bug has been fixed that caused runtime errors for singularities of types $J_{k,i}$, $X_{k,0}$, $X_{1,i}$, $Y^1_{r,s}$, $Z_{k,i}$ and $W#_{k,i}$ when the parameter option to return the explicit transformation to normal form was NOT chosen.
- A bug in
HypersurfaceSingularityExpandFunctioncaused an error when the function expansion was zero to the required precision. This has now been fixed.