A Project IV 24-25 (Herbert Gangl)

Project IV (MATH4072) 2024-2025


Explicit calculations in number theory using computer algebra

H Gangl

Description

In courses on Algebraic Number Theory and Galois Theory, the examples given in lectures and lecture notes can typically only scratch the surface as calculations become unwieldy very quickly. This entails that one merely gets a rather superficial understanding of the intricate notions and the amazing and beautiful relationships they enjoy. In light of some powerful computer algebra software packages--for Number Theory I strongly recommend GP-PARI, a free, powerful and surprisingly intuitive package of routines--we can now easily distil information on the arithmetic of a given number field (units, ideals, class group, prime ideal decomposition, ...) and make these notions come to life'. What is more, the software allows to verify or illustrate key theorems and conjectures: Class number formula, Stark's Conjecture, Dirichlet's Unit Theorem, even the Galois action or class field theory as well as Kronecker's `Jugendtraum' (dream of youth) and much more can be made tangible.

In this project, you are expected to build on your experience with Number Theory--and ideally also Galois Theory--and, after an initial `instigation period', to concoct your own examples of interesting number fields which allow to highlight as many of those topics as possible. The titles that were originally pondered for this project were ``Hilbert's 12th problem" and ``Constructing explicit class fields'', and these topics, including an indication of very recent progress on them, would each make a great dissertation in its own right, ideally with many newly computed examples. Vladut's book on ``Kronecker's Jugendtraum" is a beautiful guide to the topic, but it is quite demanding in terms of background reading. A good guide for the coding part in connection with the theory is Rodriguez-Villegas's book linked below. A treasure trove of number field data can be found in the LMFDB database .

The project will almost invariably require that you learn to interact with some of the pertinent computer algebra packages that are available. The arguably most straightforward and convenient among them is GP/PARI (e.g. just type `bnfinit(x^2+53).clgp' to obtain, after 2ms, the answer to one of the recent exam questions). If you are used to working with Python then perhaps Sage is a good option--in fact, it is more powerful than GP/PARI but its number theoretic functionality is essentially calling GP/PARI.

Prerequisites

This project is for students who are strongly interested in Number Theory and Galois Theory, and who also are willing to learn and [deal with] some computer algebra software (GP-Pari/Sage/Magma). The Topics in Algebra and Geometry course would make a good corequisite.

Resources

Experimental Number Theory by F. Rodriguez-Villegas,

Kronecker's Jugendtraum and modular functions, by S.G. Vladut,

and already the Wikipedia link on Hilbert's 12th problem gives a good impression of the topics surrounding these questions.

Since the project title is sufficiently generic, you may find other arithmetic questions (e.g. Cebotarev's density theorem that will inspire intriguing experiments; look also for `Computational number theory' and `Explicit (methods in) number theory' for potential further resources--but be aware that the interpretation of those labels may differ widely.

You can download GP/PARI from here

and binaries for Sage (SageMath site) here.

Henri Cohen, the original creator of GP/PARI, wrote a book containing the background and algorithms for an earlier version of the package. The software comes with a manual which is unfortunately rather terse; on the plus side, the current developers (Karim Belabas, Aurel Page and Bill Allombert in particular) are eager to add instructive examples to it.