SageMath combines numerous open-source software libraries under one umbrella and contains many unique and novice algorithms built on top of these libraries. Additionally to the command-line and programming-library interface, its primary user interface is a dynamic self-hosted website.

Python is the main programming language of the SageMath library and also the language of choice for all interactions with the built-in objects and functions for expressing mathematical concepts and calculations. The mission of SageMath is to create a viable open-source alternative to all major proprietary mathematical software systems. The goal of the SageMath foundation is to support the development of the mathematical software system SageMath.

Almost all areas of mathematics are represented in SageMath, at various levels of sophistication. This includes symbolic calculus, 2D and 3D graphics, polynomials, graph theory, group theory, abstract algebra, combinatorics, cryptography, elliptic curves and modular forms, numerical mathematics, linear algebra and matrix calculations (over various rings), support for parallel computing, and a powerful coercion framework to “mix” elements from different rings for calculations. SageMath’s features also expand into neighboring fields like Statistics and Physics.