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

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

## Aggregates

- A bug that could cause rare crashes in certain multisets has been fixed.  Reported by S. Kionke.

## Class Field Theory

- It is now possible to directly compute the abelian extension (FldAb) corresponding to a Hecke character (over a number field), and vice-versa.

## Coding Theory

- A bug in [`SpanZ2CodeZ4`](../CodingTheory/LinearCodesOverZ4/z4-invar.md#function-spanz2codez4-codelinrng) when delta = 0 has been fixed.  Reported by N. Aydinn.

## Coherent Sheaves

- A bug has been fixed that resulted in the canonical sheaf having the wrong grading in some cases after calls to `IsGorenstein`. Reported by E. Rains.

## Commutative Algebra

- A crash in `FreeResolution` for modules over non-prime fields of characteristic 2 has been fixed.  Reported by I. Soprunov.

## Cones

- [`MinimalRGenerators`](../Geometry/Polytopes/cones-polyhedra.md#function-minimalrgenerators-torcon) now uses Fourier-Motzkin elimination by default. Similarly, [`ZGenerators`](../Geometry/Polytopes/cones-polyhedra.md#function-zgenerators-torcon) now uses Hemmecke’s method by default. Previous versions would use a heuristic based on computing the [`SimplicialSubdivision`](../AlgebraicGeometry/ToricVarieties/toric-fans.md#function-simplicialsubdivision-torfan) of the cone to choose the most appropriate algorithm, however this scales poorly with the complexity of the cone. The optional `algorithm` parameter is deprecated and will be removed from these two intrinsics in a future patch release.

## Elliptic Curves

- A bug in `HasComplexMultiplication` that caused runtime errors in some cases has been fixed. Reported by W. Moore.
- A bug in [`LFunction`](../ArithmeticGeometry/EllipticCurvesOverFunctionFields/Lfunction.md#function-lfunction-crvell-fldfunrat) for elliptic curves over rational function fields (over finite fields) has been fixed and a slight speed-up has also been introduced.
- A runtime error has been fixed in reduction of genus one models over certain number fields.  This affected [`MordellWeilShaInformation`](../ArithmeticGeometry/EllipticCurvesOverQAndNumberFields/mordell-weil.md#function-mwsiref) for those fields.  Reported by Kazuo Matsuno.

## Groups

- A crash when computing the derived series of a permutation group has been fixed. Bug reported by Eamonn O’Brien (as a crash when computing [`CompositionTree`](../FiniteGroups/MatrixGroupsOverFiniteFields/composition-tree.md#function-compositiontree-grpmat-fldfin) of a matrix group).
- The `GeneratorOrder` parameter of the `AutomaticGroup` function now accepts a sequence of integers (generator numbers and their negatives) as input. Response to crash in calculator.
- A crash when computing the conjugacy classes of a permutation group has been fixed. Bug reported by Eamonn O’Brien.

## Hypergeometric motives

- The `EulerFactor` intrinsic was returning polynomials over the rational field instead of the integers in some cases (particularly at multiplicative primes).
- The `Weight01` vararg to `LSeries` has been modified to allow a weight dependent on the number of trivial cyclotomics in the data.
- The `Character` of hypergeometric data at a given $t$-value (including $t=1$) can now be obtained directly.
- A database of wild prime information at $t=1$ for small degrees has been computed, for instance containing all 147 examples in degree 5, and the 23/287/487 examples for degree 6 in weights 0/1/3.

## L-series

- A bug with `TensorProduct` concerning Artin representations has been fixed. This could also afflict elliptic curves over number fields which internally use these. Noted in part by J. Cremona and W. Moore.
- Division by the trivial $L$-series is now possible in any weight.
- Utility intrinsics to [`ChangeLocalInformation`](../ArithmeticGeometry/LFunctions/modifyL.md#function-changelocalinformation-lser-rngintelt-rngintelt-rngupolelt) and [`CopyCoefficients`](../ArithmeticGeometry/LFunctions/modifyL.md#function-copycoefficients-lser-lser) between $L$-functions are now provided, to ease the difficulties in numerically determining bad Euler factors.
- The `HodgeStructure` of various objects have been added, such as elliptic curves, Hilbert modular forms, and Artin representations.
- An intrinsic for the `Degree` of a `HodgeStructure` has been added.
- Various issues with precision have been remedied.
- [`Translate`](../ArithmeticGeometry/LFunctions/arithmetic.md#function-translate-lser-rngintelt) now tries to translate the residues (in addition to poles).
- An experimental intrinsic [`CFENew`](../ArithmeticGeometry/LFunctions/general.md#function-cfenew-lser) has been added that uses a dynamic method (relative precision of summands versus sum) to determine how many terms to use in checking the functional equation. Comparatively the intrinsic [`CheckFunctionalEquation`](../ArithmeticGeometry/LFunctions/general.md#function-checkfunctionalequation-lser) simply uses [`LCfRequired`](../ArithmeticGeometry/LFunctions/invariants.md#function-lcfrequired-lser) to get the required number of coefficients (usually a good factor larger).

## Number Fields

- A problem that was introduced in version 2.20-6 has been fixed: `RayClassGroup` did not use a \`\`current’’ (already computed) class group, but instead performed a full unconditional proof. Note: this behavior can be overcome in version 2.20-6 by using [`SetClassGroupBounds("GRH")`](../GlobalFields/NumberFieldsAndOrders/ideal-class-group.md#function-setclassgroupbounds-monstgelt).  Reported by Armand Brumer.
- Some problems with linear algebra over the 1st [`CyclotomicField`](../GlobalFields/CyclotomicFields/creation.md#function-cyclotomicfield-rngintelt) have been fixed.

## Rings

- The `ChangeRing` intrinsic can now be applied to a multivariate polynomial. Requested by A. Sutherland.
