Mathematics

A Computational Introduction to Number Theory and Algebra

Victor Shoup

A free computational route through number theory and algebra, joining mathematical proofs with algorithms for integers and finite fields.

Prerequisites

Calculus-level mathematical maturity, elementary programming and an algorithms or discrete-mathematics course. Be comfortable reading proofs; prior number theory is not required, but formal notation needs attention.

Edition
2
Difficulty Level
Intermediate
Academic Level
Undergraduate
number theorycomputational algebrafinite fields

01 / Reading Guide

Reading Guide

Who this book is for

For mathematics and computer science students who want to understand why number-theoretic algorithms work as well as implement them. The self-contained algebraic background supports a computational number theory course after introductory proof and algorithm study. Readers seeking only a quick introduction to encryption should expect considerably more mathematical development.

Prerequisites

Calculus-level mathematical maturity, elementary programming and an algorithms or discrete-mathematics course. Be comfortable reading proofs; prior number theory is not required, but formal notation needs attention.

What it covers

Integers and congruences lead into algorithms, groups, rings, probability and finite fields. The interplay between algebraic structure and computational cost distinguishes the treatment from a purely theorem-by-theorem number theory introduction. Later topics can be selected around the needs of a course or project.

How to use it

Work a small numerical example before following a general algorithm. State the invariant that makes each step correct, then analyse the cost using the size of the input rather than its numerical value. Test a simple implementation on cases with known answers. Keep a distinction between an algebraic existence proof and an efficient construction, and revisit the prerequisite definitions whenever that distinction becomes unclear.

Edition and sources

The author site supplies Version 2, dated June 16, 2008, which it identifies as corresponding to the second printed edition. The electronic text is free under CC BY-NC-ND 3.0. This record does not infer a print ISBN or publication year from the PDF revision date.

Open the official resource