---
title: "Magma V2.29-3 Patch Notes"
canonical: "https://docs.magma-maths.org/patchnotes/2.29-3.html"
source: "https://docs.magma-maths.org/patchnotes/2.29-3.md"
---

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

## Aggregates

- For associative array $A$ with a default value assigned, `IsDefined(A, x)` has been fixed to return [`true`](../MagmaLanguage/StatementsAndExpressions/boolean.md#literal-literal-true-true) when a value for $x$ has not been explicitly assigned, while [`IsInKeys(A, x)`](../SetsSequencesMappings/AssociativeArrays/operations.md#function-isinkeys-assoc-elt) returns whether a value for $x$ has been explicitly assigned. In both cases, if the result is true, the second return value is the value $A[x]$.

## Algebraic Curves

- Error checking for compatibility of differentials has been added. Reported by Jeremy Booher.

## Algebraic Number Fields and Orders

- `Compositum` involving fields with known embeddings has been fixed. Reported by Abhijit Mudigonda.
- New function `PrimeRepresentative` computes a prime ideal in a given ideal class.

## Coding Theory

- The parameter `Nthreads` is now handled properly if the dual code is used in the function `WeightDistribution`.  Reported by Markus Grassl.

<a id="congruence-subgroups-of-psl-2-r"></a>
## Congruence Subgroups of PSL_2(R)

- A bug in `IsEquivalent`, a function testing equivalence of points in the upper half plane by a congruence subgroup, has been fixed.

## Elliptic Curves

- Functionality of elliptic curves over $p$-adic fields has been improved, especially using [`IsogenyFromKernel`](../ArithmeticGeometry/EllipticCurves/morphism.md#function-isogenyfromkernel-schgrpell). Reported by Sachi Hashimoto.
- The map returned by [`DualIsogeny`](../ArithmeticGeometry/EllipticCurves/morphism.md#function-dualisogeny-map) is now an isogeny rather than an arbitrary map of schemes. Reported by Ignasi Sánchez Rodríguez.

## Galois Groups

- Support for ramified p-adic splitting fields for Galois groups over the rationals has been added.

## Groups

- A bug where the `Subgroups` is given an order or index filter which doesn’t divide the group order produced too many (ie any) subgroups has been fixed. Bug reported by Tendai Shumba.
- A problem when computing automorphisms of p-groups has been addressed. Reported by Eamonn O’Brien.

## Hyperelliptic Curves

- Functionality involving computation of local data has been improved. Reported by Ariel Pacetti.
- A crash in [`MordellWeilGroupGenus2`](../ArithmeticGeometry/HyperellipticCurves/jacobians-number-fields.md#function-mordellweilgroupgenus2-jachyp) (arising from inconsistent abelian group hom preimages) has been fixed. Reported by Drew Sutherland and Michael Stoll.

## Integer Ring

- `TrialDivision(n, B)` has been sped up for the case that $B>2^{30}$.
- A failure in the MPQS algorithm for relatively small integers has been fixed.

## Language

- A crash when calling a procedure with no name at the top level has been fixed.
- Option `-V` (or `--version`) has been added so that Magma prints the version immediately and then exits immediately.  Suggested by H{\\aa}vard Damm-Johnsen.

## Lattices

- A crash in [`ClosestVectors`](../LatticesQuadraticForms/Lattices/enumeration.md#function-closestvectors-lat-modtuprngelt) with large real entries have been fixed.  Reported by Stefano Marseglia.
- Some problems in short vector enumeration for lattices with very large bases have fixed (including print messages when the minimum was incorrectly adjusted).  Reported by David Zuerick-Brown.
- `JordanDecomposition(L, p)` for $L$ of type `LatNF` has been fixed so that the type of the returned matrices is `AlgMatElt`.
- A failed assert in `Dual` where the lattice has no ambient inner product matrix has been fixed. Reported by Stefano Marseglia.

## Local Fields

- The map returned as the third return value from `GaloisGroup` of a local field now returns a map rather than a function when given input of the identity element of the group, consistent with maps being returned when the input is a non identity element. Reported by Kevin Keating.
- Allow coercion between unramified extensions when coercion is available between their residue class fields. Reported by Sachi Hashimoto.

## Modular forms over imaginary quadratic fields

- Type mismatch between documentation and intrinsic in `Eigenform` has been fixed. Reported by H{\\aa}vard Damm-Johnsen.
