Introduction

Magma provides facilities for computing with Galois rings. The features are currently very basic, but advanced features will be available in the near future, including support for the creation of subrings and appropriate embeddings, allowing lattices of compatible embeddings, just as for finite fields.

A Galois ring R in Magma is considered as a finite algebraic extension of Z_(p^a) (where p is prime) by a monic polynomial D∈Z[x] which is irreducible modulo p. Thus R is presented as the polynomial quotient ring Z_(p^a)[x]/<D> and is usually written as GR(pa, d), where d is the degree of D. The cardinality of R is easily seen to be pad.

R has a unique maximal ideal generated by p, and the quotient ring R/< p > is a finite field isomorphic to Zp[x]/< D >, where D is here considered as a polynomial in Zp[x] (the coefficients are reduced modulo p). This finite field is called the residue field of R. In the following, we will also call the integer residue ring Z_(p^a) the base ring of R, because this is the subring of R generated by 1 and we can think of R as an extension of Z_(p^a).

For a non-zero element x of R, the valuation of x is defined to be the largest power of p which divides the coefficients of x, where x is considered as a polynomial in Zp[x]/< D >. x is a unit if and only if the valuation of x is zero.

Because of the valuation defined on them, Galois rings are Euclidean rings, so they may be used in Magma in any place where general Euclidean rings are valid. This includes many matrix and module functions, and the computation of Gröbner bases. Linear codes over Galois rings will be supported in the near future.

V2.28, 13 July 2023