Fix SMaximalOrder to be an S-maximal over order of the equation order.
The computation of maximal orders of Artin–Schreier—Witt extensions has been sped up by using the chinese remainder theorem instead of strong approximation when this is faster and also by reducing the length of the sequences input into either of these algorithms.
Arithmetic with Witt vectors has been made more efficient.
Some improvements have been made to the speed of basic operations on sequences in the common case where there are no undefined elements.
A bug in testing for ordinariness of plane curves has been fixed. This was causing HasOnlyOrdinarySingularities to sometimes return that a non-ordinary curve was ordinary and caused errors in some other curve intrinsics that test for ordinariness and use a different algorithm in the ordinary case. Reported by J. Jahnel.
The defining polynomials of equation orders of function fields whose defining polynomials are non-monic or non-integral have been improved.
A check for zero ideals has been added when computing HNF bases of ideals. Reported by M. Kirschmer.
The intrinsic ChineseRemainderTheorem([PlcFunElt], [FldFunGElt], [RngIntElt]) has been added.
Some decompositions of places have been sped up by using CRT instead of strong approximation.
A check for zero ideals has been added when computing HNF bases of ideals. Reported by M. Kirschmer.
Inefficiencies in computing primary decomposition of a class of ideals over number fields have been fixed. Reported by F. Favale.
A bug in point-counting over finite fields with SEA which was causing sporadic runtime errors has been fixed. Reported by Craig Costello.
The hypergeometric motive package continues to be developed in various ways. Most significant is this patch release is the removal of the swapping of the ALPHA and BETA arrays. This affects a few other intrinsics such as Twist, which also no longer swaps the arrays.
Magma now contains the first part of a database for t = 1 degenerations. The intent is that the data at wild primes should be pre-computed here, when the user calls LSeries(H,1). Every case of degree up through 4 is now included. Furthermore, except for degree 4 and weight 2, an associated object is now available via Identify (two cases of degree 4 and weight 3 are also elided, as the level, namely 5400, of the modular forms is too large, and bogs down the computation).
Some minor problems with deformations at t = 1 and the Identify function were patched. Similarly with EulerFactor at t = 1.
A printing error with HodgeStructure has been fixed.
A bug with EulerFactor of an L-series of a modular form has been corrected. Additionally, the L-series of a 1-dimensional modular symbol space is now possible.
A fix to TensorProduct has been made, to ameliorate problems when the user has specified a trivial Euler factor (1) of one of the constituents as an integer rather than pedantically as a polynomial.
A bug was fixed in the general SymmetricPower intrinsic, which had caused a crash due to a incorrect argument passed to HodgeStructure. This intrinsic has also had its BadEulerFactors vararg be replaced by the more common BadPrimes, though the former is still retained for compatibility.
The TensorProduct intrinsic with two arguments can now take the BadPrimes info as a vararg, rather than having this be a third argument (as with ExcFactors – the latter is also still available).
A fix was made to the intrinsic WittInvariants so that the set of bad primes is now consistent with the Handbook description.
Fixed an occasional crash during garbage collection of LP objects. Reported by A. Munemasa.
The mutation operators +:= and -:= have been extended to work when the objects on both sides are compatible matrices which may have different types. Problem reported by A. Maurischat.
A bug with lifting the origin with IsolatedPointsLifter (due to erroneous use of Precision rater than AbsolutePrecision) was fixed. Reported by A.-S. Elsenhans and J. Jahnel.