This is the home page of the book Numerical Algorithms for Number Theory, written by Karim Belabas and Henri Cohen.

You can download all GP programs used in the book as a single file (pari version 2.13 or above) [TGZ | ZIP]

Book cover

This book presents multiprecision algorithms used in number theory and elsewhere, such as extrapolation, numerical integration, numerical summation (including Multiple Zeta Values and the Riemann-Siegel formula), evaluation and speed of convergence of continued fractions, Euler products and Euler sums, inverse Mellin transforms, and complex L-functions.

For each task, many algorithms are presented, such as Gaussian and doubly-exponential integration, Euler-MacLaurin, Abel-Plana, Lagrange, and Monien summation. Each algorithm is given in detail, together with a complete implementation in the free Pari/GP system. These implementations serve both to make even more precise the inner workings of the algorithms, and as a gentle introduction to advanced features of the Pari/GP language.

The book will be appreciated by anyone interested in number theory, specifically in practical implementations, computer experiments and numerical algorithms that can be scaled to produce thousands of digits of accuracy.

Table of Contents

From the Preface :

The goal of this book is to present a number of analytic and arithmetic numerical methods used in number theory, with a particular emphasis on the ones which are less known than they should be, although very classical tools are also mentioned. Note that, as is very often the case in number theory, we want numerical methods giving sometimes hundreds if not thousands of decimal places of accuracy. The typical timing tables that we will give are in fact for 500 decimal digits. The style of presentation is the following: we first give proofs of some of the tools, the prerequisites being classical undergraduate analysis. Note that since the emphasis is on practicality, the proofs are sometimes only heuristic, but valid in actual practice. We then give the corresponding Pari/GP programs, usually followed by a number of examples. [...] These programs can also serve as an introduction to the syntax and semantics of GP, since in general they are easy to understand and do not use much sophistication. Note we use rather recent features of the GP language, so the reader is strongly advised to download the latest release (at least version 2.13) from the Pari/GP website.

Karim Belabas
Valid HTML 4.01!
Fri Feb 19 11:32:22 CET 2021