I am teaching number theory out of Giblin's Primes and Programming which is a nice introduction to elementary number theory. It motivates the number theory by focusing on the problems of factoring large integers or verifying that they are prime. It includes many sample computer programs, some of which implement the standard factoring and prime testing algorithms and some which use simple techniques such as trail division and sieving to explore things like the distribution of primes.
Having been written in 1993, the programming aspects of the the book are unfortunately out of date. The exploration could well be done with a computer algebra package such as Maple or Mathematica (In 1993 as well as today), but the fact that factoring and prime checking algorithms are already programmed into Mathematica and Maple frees the student from thinking carefully about those algorithms. Wanting his students to think carefully about the algorithms, Giblin chooses to avoid computer algebra systems and writes the sample programs in PASCAL---a language that students and professors of that time were likely to be comfortable with. He also has to spend some time fretting about the limited precision that a typical computer language provided at that time.
In an attempt to update the book. My class has been converting the sample programs to java as we go. Java has multi-precision integers built in, and it has the nifty feature that it can easily be used to make web applets, so that we can display our work to the world. Java applets should appear on this page as the semester goes on.
Back to my
home page
Go to the math department
page
Go to the Willamette University page