SageMath is a free open-source mathematics software system licensed under the GPL. It combines the power of many existing open-source packages into a common Python-based interface. In this course we will use SageMath through a jupyter server provided by the Pacific Institute for the Mathematical Sciences (PIMS) located at UBC: (

SageMath is also available for download from the SageMath website, or you can use CoCalc (formerly known as SageMath Cloud).

We will be working with permutation groups in SageMath (subgroups of the Symmetric group). See the Puzzles link in the menu above for examples of how we represent the each of the puzzles in SageMath.


Access to SageMath

Cloud based web service:
or download your own copy:

SageMath Demos

Either view using Jupyter viewer , download the Jupyter notebook file (.ipynb) , or run on CoCalc
  • SageMath Intro:         
  • Lights Out:         
  • Integers:         

Reference Links