This is a very clearly written introductory textbook on computer algebra systems (CAS), focussing on some of the subject’s commonly-used algorithms. It is aimed at beginners and assumes a good background in college algebra along with first-year calculus. It covers representative algorithms in a variety of areas, and these are done in enough detail that you would be able to implement them yourself if you wanted. The book is based on lecture notes from a course taught by the author since 2000 and is intended for a one-semester course.

The book starts with descriptions of many computer algebra systems, both past and present. It goes into a good bit of detail on the languages of Mathematica and Maple (mysteriously, MATLAB is never mentioned in the book). Most of the book consists of individual chapters on various areas, such as unlimited-precision integers, polynomial manipulation, and symbolic integration. The description of Gröbner bases is especially good. It closes with an interesting chapter on “Mathematical Correctness”, which is actually a catalog of many pitfalls of symbolic computation. The book sticks to the symbolic side of things, although real computer algebra systems also have powerful numerical analysis capabilities.

This is mostly an algorithms book and not a proof oriented book, although it includes some proofs. Each chapter ends with a long list of exercises. Most of these are drill, asking you to apply the just-studied algorithms to particular calculations. There are also a few proof problems, and some more speculative problems asking you to comment on some claim. Each chapter has a separate section of programming problems, most of which are to implement particular algorithms described in the text. These are intended to be done in a CAS rather than a lower-level language like C++.

The present book has just enough to get you started in computer algebra, and does a very good job of it. An excellent reference, much more thorough than the present book, is von zur Gathen & Gerhard’s

*Modern Computer Algebra*.

Allen Stenger is a math hobbyist and retired software developer. He is an editor of the Missouri Journal of Mathematical Sciences. His personal web page is allenstenger.com. His mathematical interests are number theory and classical analysis.