---
title: "Magma V2.20-8 Patch Notes"
canonical: "https://docs.magma-maths.org/patchnotes/2.20-8.html"
source: "https://docs.magma-maths.org/patchnotes/2.20-8.md"
---

<a id="magma-v2-20-8-patch-notes"></a>
# Magma V2.20-8 Patch Notes

## Aggregates

- A bug in equality testing of lists has been fixed.

## Algebraic Curves

- The `Ideal` intrinsic that computes the prime ideal in the coordinate corresponding to a place on a curve was returning non-prime (in fact, non-saturated) ideals. This has now been fixed. Reported by M. Rambaud.
- A bug has been fixed that was causing runtime errors in the computation of gonal maps for genus 5 curves of general type. This principally affected the [`Genus5GonalMap`](../AlgebraicGeometry/AlgebraicCurves/arith-2.md#function-genus5gonalmap-crv) intrinsic.

## Algebraic Function Fields

- A fix has been made to homomorphisms from algebraic function fields in non-simple representation. Reported by M. Grassl.
- The preimage of the map returned by `Module``(RngFunOrdId)` has been fixed.
- A correction has been made in `Factorization``(RngFunOrdIdl)`. Reported by M. Kirschmer.
- A correction has been made to the maximal order computations in Artin-Schreier-Witt extensions for the occasional extensions in which certain unramified primes occurred.
- [`ArtinSchreierReduction`](../GlobalFields/ClassFieldTheoryForGlobalFunctionFields/related.md#function-artinschreierreduction-fldfungelt-plcfunelt) has been fixed in the case where the result of the reduction was 0.
- An error message from [`ArtinSchreierReduction`](../GlobalFields/ClassFieldTheoryForGlobalFunctionFields/related.md#function-artinschreierreduction-fldfungelt-plcfunelt) has been fixed.

## Algebraic Number Fields

- A bug has been fixed in `ClassGroup` affecting the Windows version (causing a crash or bad performance).  Reported by K. Matsuno.
- A crash has been fixed which occurred occasionally in calculations requiring evaluation of power products.  Reported by A. Brumer.
- A correction has been made in `Factorization``(RngFracOrdIdl)`. Reported by M. Kirschmer.
- Some issues have been resolved in calls to `Conjugates` (and similar functions) when the user requests a very low precision.
- A crash has been fixed in `IsIsomorphic`.
- In [`PrimesUpTo`](../BasicRings/Integers/prime.md#function-primesupto-rngintelt) for relative number fields, the optional argument `coprime_to` was ignored.
- The degrees of the arguments into `Embed` are now checked properly.

## Character Theory

- The `Symmetrization` of a character can now be computed for larger partitions than previously. Furthermore, the previous code had some errors for partitions of size 6.
- The associated `OrthogonalComponent` and `SymplecticComponent` intrinsics were similarly buggy, and their usage should be replaced by the new `OrthogonalSymmetrization` and `SymplecticSymmetrization`.

## Dirichlet and Hecke characters

- A bug with `'meet'` of character subgroups was fixed.
- Real Dirichlet characters over the rationals now print as “Kronecker character”, which should be more clear than the previous.

## Divisors on Varieties

- A bug has been fixed that caused `IsLinearlyEquivalent`, `IsPrincipal` (and probably other intrinsics) to sometimes fail after the ideal factorisations of the divisors involved had been refined. Reported by C. Rito and N. Bruin.

## Elliptic Curves

- The associated `Grossencharacter` to an elliptic curve over $\mathbb{Q}$ that has complex multiplication by an imaginary quadratic order is now available. Similarly with the inverse operation (which returns a representative in the isogeny class).

## Groebner Bases

- A crash in the F4 algorithm with huge matrices has been fixed. Reported by M. Grassl.

## Hyperelliptic Curves

- The code to compute $p$-minimal models was not following the same logic as the [`IspMinimal`](../ArithmeticGeometry/HyperellipticCurves/creation.md#function-ispminimal-crvhyp-rngintelt) intrinsic, causing intrinsics such as [`pMinimalWeierstrassModel`](../ArithmeticGeometry/HyperellipticCurves/creation.md#function-pminimalweierstrassmodel-crvhyp-rngintelt) to return models which were in fact not $p$-minimal. Reported by A. Sutherland.

## Hypergeometric Motives

- The database of wild prime information at $t=1$ for small degrees has been extended, now containing data for all examples of degrees up to and including 6.
- A bug was fixed, concerning computing the central Hodge sign(s) when the ALPHA and BETA arrays were switched from the original normalization that was used in previous Magma versions.
- There is now a WARNING when Magma ignores specified `BadPrimes` info when it already knows an object associated to the hypergeometric data. Similarly with the $t=1$ database mentioned above.
- The $L$-series of a hypergeometric datum now has a `SaveEuler` option that allows the user to specify that Euler factors up to a given bound should be saved. This is useful when the $L$-functions themselves are then used in other constructions (tensor product, or symmetric power), as the coefficients of the underlying object need only be computed once.

## L-Series

- Some more minor changes to internal precision limits have been made for $L$-functions of larger degree and weight.
- A new intrinsic [`BadPrimeData`](../ArithmeticGeometry/LFunctions/invariants.md#function-badprimedata-lser) has been added that gives the information for primes that divide the conductor.
- Multiplication by the trivial $L$-series is now possible in any weight.
- Multiplication of [`RiemannZeta`](../ArithmeticGeometry/LFunctions/builtin.md#function-riemannzeta) with itself should now work. Similarly with other products involving $L$-functions with simple poles.
- An error with `SymmetricPower` of a Hodge structure was corrected.
- An issue with passing precision to a tensor product of imprimitive $L$-functions has been resolved.
- The convention for `TateTwist` has been reversed in direction.
- An issue with `EulerFactor` of non-rational modular forms was fixed.
- The base ring of `EulerFactor` should now be the integers when the data allow it (previously, it often was defined over the rationals).
- A new intrinsic `Symmetrization` has been introduced for $L$-series. This is still not fully implemented, but should allow significantly more examples to be computed than previously. Furthermore, orthogonal and symplectic versions are available where applicable.
- The O-term in [`LTaylor`](../ArithmeticGeometry/LFunctions/computing.md#function-ltaylor-lser-fldcomelt-rngintelt) is now correct when the Valuation is nonzero.

## Lattices

- A problem with [`ClosestVectors`](../LatticesQuadraticForms/Lattices/enumeration.md#function-closestvectors-lat-modtuprngelt) has been fixed. Reported by M. Kirschmer and G. Nebe.
- Some discrepanices with varargs to `LLL` have been fixed. In particular, the Lovasz condition was not always the default, and Delta was ignored for `LLL` of a lattice.

## Linear Algebra

- The [`AllLinearRelations`](../BasicRings/RealAndComplexFields/operation-element.md#function-alllinearrelations-seqenum-rngintelt) intrinsic failed to return solutions in some cases. In fact, the semantics of this intrinsic are rather ill-defined, with precision playing two not necessarily compatible roles, and the given description (involving the size of coefficients) must only be true on a basis. The intrinsic has been modified to try to give a reasonable answer, returning a lattice that gives small linear relations to the desired precision, and also putting some cap on their size (though not necessarily the precise bound given in the description). Reported by O. Coskun.

## Polynomial Rings

- A bug in `MonomialCoefficient` for polynomial quotient rings has been fixed.  Reported by E. Rains.

## Quaternion Algebras

- Quaternion algebras now have an identity element explicity stored, so that `A!1` now works for all base fields.  Previously this gave a runtime error over inexact fields (as did many standard constructions which rely on coercion).  Reported by M. Masdeu.
