From: Hugh.Montgomery@MATH.LSA.UMICH.EDU (Hugh Montgomery) Newsgroups: sci.math.numberthy Subject: CLINT second edition Date: 9 Sep 94 14:26:05 GMT ANNOUNCING THE SECOND EDITION OF COMPUTATIONAL LABORATORIES IN NUMBER THEORY (CLINT) with assoicated software for IBM-compatible PCs running DOS I have been experimenting with a number theory laboratory class that students take concurrently with their first (undergraduate) course in number theory. The lecture course meets 3 hrs/week, the laboratory 1 hr/week. Thus far the laboratory course is optional, but my thesis is that students who participate in the labs will perform better in the lecture course. The 123 page CLINT manual, written in plain TeX, contains 17 labs and documentation for the software. The labs are linked to the text ``An Introduction to the Theory of Numbers'', Fifth Edition, by Ivan Niven, Herbert S. Zuckerman, and Hugh L. Montgomery, John Wiley & Sons, New York, 1991. The software consists of 70 programs written in Turbo Pascal (Version 57.0). Both source code and compiled code are provided. The programs are of three main types: 1) Quick calculations (e.g. gcd(a, b), phi(n)) 2) Tables (e.g. powers (mod m), indices (mod p), Farey fractions) 3) Demonstrations of algorithms (e.g. Euclidean, powering, Pollard rho) Instructors using the NZM text may find these programs useful for in-class demonstrations, even in the absence of any laboratory. The CLINT students are not expected to have any knowledge of Pascal, nor are they exprected to do any programming. However, students with interests in programming will find opportunities to write some programs of their own. A library of 28 basic number-theoretic routines is provided, to aid such efforts. I want my students to understand what the computer is calculating, rather than view the computer as some sort of magical black box. Consequently, the algorithms employed in these programs are restricted---with a few minor exceptions---to those discussed in NZM. This has some disadvantages, particularly in factoring (no quadratic sieve), primality proving (no Atkin-Morain or Adleman-Rumely), and in finding roots of polynomials modulo p (no Cantor-Zassenhaus). I want my source code to be as simple as possible, so that students can comprehend it. Hence I use no multiple-precision arithmetic. (A multiple- precision arithmetic package would require that students master a host of specialized data types, functions and procedures before the code would make sense.) Consequently, integers are restricted to have size < 10^{18}. This is a disadvantage in some contexts, such as factoring, Pell's equation, and continued fractions. For such topics I would turn to UBASIC, which accommodates integers up to 10^{2600}. The TeXfiles that create the CLINT manual, and the software are available by anonymous ftp at the address ftp.math.lsa.umich.edu, in the directory /pub/clint. There you will find the following files available: readme General instrucitons clint0.tex title page of lab manual clint1.tex forematter (pages ii--x) of lab manual clint2.tex the labs (pages 1--68) clint3.tex program documentation (pages 69--106) clint4.tex programs for the HP-28S, Further Resources error5-1.tex Known errors in NZM, Fifth Edition, First Printing tpprgms2.exe Turbo Pascal programs (archived) This last file is a self-extracting archive file; it MUST be transferred in binary. (Issue the command "type binary" before the command "get tpprgms.exe".) The other files can be transferred in the (default) ASCII mode. This material may be freely copied and distributed to students using the NZM text. (Think "coursepack.") If ftp is unavailable to you, you can obtain a printed copy of the manual, and a disk containing the programs, by writing to John Wiley. Direct your inquiry to Mathematics Editor John Wiley & Sons, Inc. 605 Third Avenue New York, NY 10158-0012 USA John Rickert has composed an Instructor's Manual for NZM that gives solutions to the starred problems. This is not available by anonymous ftp, lest it fall into students' hands. However, John Wiley will send it to you on request, or I can send it to you by email. I welcome your comments and suggestions. Hugh L. Montgomery hlm@math.lsa.umich.edu