You are here

Computational Mathematics with SageMath

P. Zimmermann, A. Casamayou, N. Cohen, G. Connan, T. Dumont, L. Fousse, F. Maltey, M. Meulien, M. Mezzarobba, C. Pernet, N. M. Thiéry, E. Bray, J. Cremona, M. Forets, A. Ghitza, and H. Thomas
Publication Date: 
Number of Pages: 
BLL Rating: 

The Basic Library List Committee recommends this book for acquisition by undergraduate mathematics libraries.

[Reviewed by
Fernando Q. Gouvêa
, on

Some forty years ago, Herb Wilf wrote an article entitled “The Disk with a College Education” (American Mathematical Monthly, 89, January 1982, 4–8). In it, he explained that he was part of the small group of Americans who owned a personal computer. He had just received a disk containing a new program that would run on his PC and that could do mathematical calculations, including most of the things one teaches in first-year calculus. Such programs were not really new (Macsyma already existed, for example), but this one could run on a small machine at home. Wilf asked what impact this should have on calculus courses.


Will we allow students to bring them into exams? Use them to do homework? How will the content of calculus courses be affected? Will we take the advice that we have been dispensing to teachers in the primary grades: that they should teach more of concepts and less of mechanics? What happens when $29.95 pocket computers can do all of the above and solve standard forms of differential equations, do multiple integrals, vector analysis, and what-have-you?


Well, what happens when pretty much all of our students have powerful computers in their pockets, and they don’t even need to get a disk? SageMath can be accessed entirely online (for example, using the Cell Server). And it does “solve standard forms of differential equations, do multiple integrals, vector analysis, and what-have-you.” Indeed, quite a lot of what-have-you.

Given that there is open-source (i.e., free) mathematical software that students can access through phones or tablets or run online or install on their own computers, the day of "compute the derivative of" seems to be gone. Knowing how to compute a derivative is not a marketable skill. Was it ever?

Of course, we all say we teach concepts, not technique. But sometimes the question is not what we teach, but what we test. The message to students is clear: the things you will be tested on are the things you must be able to do. So perhaps it’s time to take Wilf’s challenge seriously.

Wilf ended his article with “ Excuse me if I don't have answers. I wanted only to raise the questions and beat a hasty retreat.” My vote is already clear: use software in class, allow students to use software for homework and for tests, and invest some efforts on teaching them intelligent computing. SageMath is an attractive choice for that simply because, being free, it is something students can continue to use after they graduate.

The book under review is one of the best ways to begin learning SageMath. As a printed book it is available from SIAM, but one can also get it online in pdf format. Like SageMath itself, it is “crowd-sourced”: 16 authors are listed on the cover.

The structure is a natural one. The first section, “Coming to Grips with Sage,” is general. After an introduction comes a chapter on calculus and linear algebra. Just this much is already enough for many of our students. But of course one can do a lot more using programming and data structures, which come next. Given those basics, the rest of the book focuses on specific areas of mathematics, allowing readers to read about what SageMath can do. Section II focuses more on symbolic computation, while Section III deals with numerical methods.

We should teach our students how to use the powerful mathematical software that is available to them. This book is a good way to get started.

Fernando Q. Gouvêa is Carter Professor of Mathematics at Colby College. He has figured out a way to allow students to use SageMath during exams. (Well, if works for him.)