Hacker News new | ask | show | jobs
by martyweissman 2738 days ago
I hope you enjoy the book -- the AMS sale does give a great price! Part of the reason I went with the AMS was that they're a nonprofit and their prices are reasonable for a hardcover book printed (offset, not digital on-demand) in color.

As the author, I'll add a few remarks and answer some questions about the book.

1. I made a book webpage at illustratedtheoryofnumbers.com. The errata are there. Also you can find a series of programming tutorials, if you wish to learn number theory with Python. I go from programming basics to primality-testing, RSA, etc.

2. I didn't provide solutions in the book. :( But there's always online discussion boards. Someday I'll write many more exercises and provide some solutions.

3. It's been used as a textbook for undergraduate number theory, e.g. at Rice, UC San Diego, next semester at Georgia Tech I think, etc.

4. No full e-book version is planned. It's all very old-fashioned, but I spent a lot of time on page layout, optimizing for print, etc.

5. I took a stronger stance on zero being a natural number in an early draft. Now I just try to make it clear that it's the convention I choose. If it's good for Bourbaki, it's good for me.

Feel free to drop a note if you have more questions about the book. My email is not hard to find.

Happy holidays! Marty Weissman

6 comments

I’m apprecticative of the amount of work and effort you put into the book. Please consider the self-learner and those that don’t have access to solutions, a classmate, a TA, or a professor.

I know you probably don’t want to expose solutions to the exercises so they can be used in a classroom, but for people like me, I don’t want to create an online discussion to every problem I attempt just to check my work.

I prefer to read textbooks that have solutions, so I can know for sure my answers are correct.

I don’t really buy the “you know when your solutions are correct”. The beginner can easily fool themself into thinking their solutions are correct, when they aren’t.

Due to that, I won’t be buying your book.

That's cool -- you might like Underwood Dudley's book on Elementary Number Theory. It has a similar set of topics, and I think it has more exercises and contains some solutions. And it's inexpensive!
Thanks! I’ll check that out.
>Due to that, I won’t be buying your book.

I'm on the same boat as you. I might still buy this book, it seems beautiful.

In the days of online autodidactic zeitgeists, it's a shame not to include the solutions. I understand the author wants to monetize his hard work and ensure it'll make money as a textbook and I believe textbooks can provide some income as long as they become the mainstay of a particular subjects.

That being said, I wonder if there is a future option for creating a problem/solution booklet exclusive for the teachers and opening up the solutions to this book so the entire world could possibly learn from this book.

Yes -- that is a future option. It's a time commitment, but perhaps next summer I'll post a new section on the book webpage with more exercises and solutions to existing ones. (Those who have taught with the book asked for more problems too.)
Thanks for stopping by! I'd like to ask a question / make a request. Unlike most of the people here, I was trained in mathematics but am just learning how to program, so I was wondering if you had any desire to expand the online algorithms material. In particular the 'generic programming' technique illustrated by Alexander Stepanov in these lectures (Four Algorithmic Journeys) [1] and book [2] caught my attention. He takes a simple number theoretic algorithm, considers what properties are required for it to work, then generalizes it and applies it in other useful and surprising cases.

For example, Stepanov starts with the problem of multiplying two integers n * m using the Ancient Egyptian Multiplication algorithm from the Rhind Papyrus (which runs in log n if i remember correctly), then observes the only property needed for the algorithm is associativity, so that it can run on any semi-group: mult(n,s) is n repetitions of the semi-group element s, using the semi-group operation. Useful and surprising applications are (1) matrix exponentiation to solve systems of linear recurrences in log n steps (no stupid Fibonacci implementation here!), and (2) encode a graph in your matrix, with elements in a tropical semi-ring, then matrix exponentiation solves shortest path. Not too bad for a 4,000 year old multiplication algorithm.

A second example is the euclidean algorithm, which he extends first to polynomials following Stevin, then to Gaussian integers, then to euclidean domains. A surprising application was to permutation algorithms managing memory.

Anyhow, I think it would be really cool if you showed these kind of applications of number-theoretic algorithms as well as the cryptography stuff. Unfortunately basically all of the modern algorithms literature seems to avoid even the tiniest hint of abstraction; it makes the subject so much harder to hold in your head! So providing a new set of examples that is more accessible than Stepanov would be doing the world a great service, i think.

[1] https://www.youtube.com/user/A9Videos/playlists

[2] https://www.amazon.com/Elements-Programming-Alexander-Stepan...

I would like to expand the programming tutorials, though I doubt I'll go as abstract as Stepanov. I do provide some discussion of algorithms that generalize, e.g. the Euclidean algorithm and Pingala's algorithm for exponentiation. But I don't present these in such a generic form.

I've got a grant application out right now... if it goes through, I'll have some funding to support expansion of programming tutorials. I'd like to include more depth in both programming and number theory. On the programming side, I'd include classes, recursion, memoization, visualization. On the number theory side, I'd include Gaussian/Eisenstein/polynomials, Pollard rho and maybe SQUFOF for factorization.

Thank you, from the sample pages it looks really interesting and beautiful, uses the printed page very well and looks like it would be a joy to hold.

The table of contents looks interesting — how did you choose which topics to cover? Were they influenced by what would be easy to illustrate? My knowledge of number theory is limited to the (very) early chapters of Burton's Elementary Number Theory or Niven & Zuckerman's book, so I'm wondering how this book differs in its choice of contents. (The presentation of course is outstanding.)

The contents kind of evolved from everything I had taught in undergraduate number theory, and a few other courses (a 2-week course for high-school students, some work with K-12 teachers, etc.). First, I wanted to cover the core topics of an elementary number theory course: Euclidean algorithm, prime decomposition, multiplicative functions, modular arithmetic, quadratic reciprocity.

Add to that Gaussian/Eisenstein integers, because they're pretty, open the door to algebraic number fields, and might help the reader understand that uniqueness of prime decomposition is not obvious.

Add to that mediant fractions and Ford circles, because they give a really nice perspective on Diophantine approximation (the only approach which really stuck with me). They're also good for future K-12 teachers to better understand fractions.

For quadratic reciprocity, I like teaching with Zolotarev's proof... so add that. (I think I'll give a more traditional proof, in an extra few pages, in a future edition.)

Finally, Conway's topographs give a beautiful approach to binary quadratic forms, which are often not taught in a first course (outside of Pell's equation). Learning and teaching Conway's approach has influenced my own research, and it's beautiful and visual. That's the last part of the book.

Seems like a great book, thank you!

> 4. No full e-book version is planned. It's all very old-fashioned, but I spent a lot of time on page layout, optimizing for print, etc.

It is very strange choice for a book written in 2017.

Just bought it! Looking forward. Thanks very much.
Why no full e-book version, if I may ask?