Gregory V. Bard
Associate Professor of Mathematics
Preserving the look-and-feel of the World Wide Web as it was, in 1998.
Looking to download Sage
for Undergraduates for free?
(Scroll down for lots of cool resources.)
What is Sage?
SageMath (or Sage for short)
is the free, open-source competitor to Maple, Mathematica, Magma, and
Matlab. It is a computer-algebra system ideally suited to students of mathematics,
and all other STEM fields, vastly more sophisticated and advanced
than any graphing calculator. Moreover, Sage is based on the popular
programming language Python. That means if you use Sage in
a mathematics, statistics, physics, or data-science class, you will learn
Python along the way. Lots of other STEM fields are using Sage too,
such as chemistry and geology.
There are four really great ways to use SageMath:
- SageMathCell --- this is
perfect for simple tasks requiring 1 to 10 lines of SageMath code. I use this
all the time when teaching Math-154: Calculus ii at
- CoCalc.com --- this is an
awesome many-featured system, that was once called SageMathCloud.com.
You can collaborate with others, have chats that can include mathematical formulas,
add/remove collaborators, and publish your work to the web. Moreover,
you have access to every version of every file, unlike
a typical jupyter notebook. You can use many languages, such as Python, R, Octave, Java,
C++, C, and even FORTRAN, in addition to SageMath, plus all the major Python
libraries, like NumPy, SciPy and SymPy. There is even a full course-management
system for those who teach online.
- A local
installation --- not recommended for beginners, this can be great for those
who do not have reliable access to a high-speed internet connection. Most Sage users
access Sage via the internet. There is almost never any reason to do
a local install of Sage on your laptop or home computer.
The exception is if you have limited or no internet
connectivity, such as in rural areas. This is good news, because it saves a lot of
headaches and hassles (especially for students), that you would have to suffer if you were
using Mathematica, Maple, Matlab, or Magma.
- Interacts (sometimes called interactive webpages, applets, apps, or interactive
figures) are a really fun way to demonstrate a complicated math topic. A large repository
of them (made by the Sage community) can be found by
and I've made a few myself, which you can find by
clicking here. For using the
interacts, NO KNOWLEDGE of Sage whatsoever is required! However, making your
own interacts is neither too difficult nor very easy, and is covered in Chapter 6 of my
book, Sage for Undergraduates. You can download that
book for free, using the rainbow link at the top of this webpage.
- The commands
used are the same in all cases, because that's the SageMath part, the computational
engine at the heart of the system. Even better, SageMath is based off Python, so students
naturally become good Python programmers while using Sage, instead of learning a
proprietary language when using Maple, Mathematica, MATLAB, or Magma.
Sage is great for calculus, differential equations, linear algebra, data science,
abstract algebra, discrete mathematics, graph theory, physics, numerical computing,
machine learning, and many other courses. Sage also includes a full copy of
R for those who use statistics or those who want to learn data science, and
other open-source systems like Maxima, Pari, and GAP.
Resources for Sage
Here are some of my favorite resources for Sage. However, this page is woefully
incomplete. The Sage community
involves hundreds of developers and thousands of contributors world wide.
- Here are some links for my book Sage for Undergraduates,
published by The
American Mathematical Society in February of 2015.
- Graciously, the AMS has permitted me to place a pdf file of the book on my webpage.
- Here is a link
to the black-and-white version.
- Here is a link
to the color version.
- The online electronic appendix covers plotting in color, complex functions, and
3D graphics. Those subjects are not suited to a black-and-white book, and therefore cannot
be printed inside the book itself. [Rough Draft]
- Chapter 6 of the book teaches the reader how to make their own interactive webpages
or applets. To save readers from having to retype my
code into their computers,
I promised a zip-file with
some source code of the examples used.
- The book Calcul mathematique
avec Sage was only available in French until
the middle of 2018, when a translation into English was released. I have enjoyed
consulting this book frequently over the years, but I'm glad that it is now available
in English, because very few of my students have studied French. In some ways, this
book can serve as a sequel to my own. The translation is Computational Mathematics
with SageMath. (click
here to download)
- There is a tutorial for Sage, by Prof Michael E. O'Sullivan (at San Diego State
University in California).
This is an excellent entry-point
for faculty, PhD-students in mathematics, and senior math majors about using
Sage for all sorts of problems.
- Here is a large collection of quick-reference
cards for Sage, by various people, for various branches of mathematics, in many languages.
Personally, I think having a printed quick-reference card out next to the laptop while using
Sage is really handy. :-)
- Aimed at students in Calculus 1, Prof Hieu Nguyen (at Rowan University in New Jersey)
has made a guide for his students, SageMath Advice for Calculus.
However, I think it is also very useful for Calculus 1 instructors.
here to download)
- For matrices and linear algebra, Prof Robert Beezer (at the University of Puget
Sound) has written an excellent textbook that uses Sage examples throughout. The book,
A First Course in Linear Algebra also teaches the
writing of proofs. Even if you're using a different textbook, you can steal all the
Sage examples. Best of all, the book is free in electronic form.
(click here to download)
In any case, the directions
for a local install can be found by
Videos about Sage
- Here is a series of videos/screencasts introducing Sage. They are
made by William Stein, the founder of Sage.
- Here are some videos that I've made
to introduce my students to the basics of using Sage with its most
simple interface, the SageMathCell Server.
(All are less than five minutes.)
One covers functions, derivatives, integrals, and 2D plotting.
Two covers factoring, 3D plotting, gradients, and symbolic solving.
- After watching both videos (or even without them) you'd find it very easy to just dive
on into Chapter 1 of my book, linked above.
- Here is a video for how to find the Reduced Row Echelon Form (RREF) of
a matrix. For example, you might do this to solve a linear system of equations.
- For solving Linear Programming Problems (i.e. maximizing or minimizing a many-variable
linear function subject to several multivariate linear inequalities), I have three videos:
- More are coming soon!!
Last updated August 8th, 2018.