Quaternion Algebras

Introduction

There are only two quaternion algebras over the reals: 2 by 2 matrices, and the Hamiltonians. Over other fields such as , there are infinitely many isomorphism classes. The Magma package mainly deals with arithmetic questions about quaternion algebras over global fields; that is, , number fields, and functions fields k(t) over a finite field k. Unless explicitly stated, these methods were developed by Kohel (), Donnelly, Kirschmer and Voight (number fields), and Kirschmer (function fields).

Local Properties

The isomorphism type of an algebra is determined by local data; i.e., by properties of the algebra tensored with completions of the base field (these are simpler objects to study). A consequence is that existence and construction of isomorphisms are completely different computational problems, with the latter being much harder. The local calculations needed to decide the isomorphism class amount to computing Hilbert symbols. Functions are also provided for computing Hilbert symbols (a,b)P for field elements a,b without reference to quaternion algebras. Hilbert symbols are also used in the algorithms to compute maximal orders in quaternion algebras. Special maximal order algorithms are implemented for quaternion algebras over each type of field. (The general maximal order algorithm for associative algebras could be used, of course; however it is advantageous to make use of the very special structure of quaternions.)

A different kind of local calculation is: Given an algebra A whose completion A⊗Fv is trivial (as shown by computing a Hilbert symbol), explicitly construct an isomorphism over Fv to the trivial algebra, namely the algebra of 2 by 2 matrices. This is not a computationally hard problem, but requires the algorithm to be implemented very carefully. Magma contains a robust implementation over each kind of field.

Orders

The preceding paragraph discussed local properties of algebras; we now turn to orders in algebras. For an algebra A over a field F, an order may be defined as a subring of A which is a module of finite rank over some order of F. Note that while all modules are free over rings such as or the polynomial ring k[t], this is not true for orders in number fields. Therefore, we have the computational issue of how to represent and handle orders and ideals. Magma has a well-developed infrastructure for dealing with non-free modules, originally developed for handling orders in relative number fields, and which has also been made available to the user as a package for modules over Dedekind domains in general. In particular, this furnishes a canonical representation (echelon form) of a module.

When working in quaternion algebras this machinery is mainly kept in the background, while the user interracts with the system via more user-friendly commands. Orders and ideals can be defined by various kinds of generating data, and many arithmetic operations on them are implemented. As well as the most obvious ones, these include constructions like intersections, normalisers, and colon ideals.

In the theory of quaternion algebras, special kinds of orders play important roles. Magma contains algorithms for testing whether a given order is maximal, Eichler, hereditary, Gorenstein, or Bass.

Enumeration of Ideal Classes

For a given (maximal or Eichler) order in a quaternion algebra, two key computational problems stand out: to describe the group of units in the order, and to describe the set of (right or left) equivalence classes of ideals. Here we see a very close analogy with number fields, for which the key problems are to compute the maximal order, the unit group, and the ideal class group. The biggest difference in the non-commutative setting is that the set of ideal classes of a quaternion order does not have a natural group structure. On the other hand, the classes of two-sided ideals do form a group. Computing this is another important problem, in its own right, and also as a subproblem in a variant of the algorithm for finding all ideal classes. Magma contains algorithms for each of these problems (note: the units and ideal classes are not always finite, but they admit finite descriptions). Of most interest is the case of definite quaternion algebras: an algebra over is definite when all its subfields are imaginary quadratic fields, and the notion extends to algebras over number fields and function fields. The algorithms in Magma for this important case are especially refined (Donnelly and Kirschmer); in particular, a number of strategies and tricks have been developed to quickly test ideal isomorphism during the enumeration of ideal classes.

There is an especially significant application which relies on this ideal class problem in definite algebras, together with a closely related problem: finding all elements of given norm in an ideal. The Magma algorithm for this problem uses many of the same techniques used in the enumeration of ideal classes. Together these algorithms enable us to efficiently do “Brandt module” calculations over number fields; Magma is the only software with this ability over totally real number fields in general. Brandt module calculations form the core of the main algorithm in Magma for Hilbert modular forms (which are discussed in the section on arithmetic geometry).