SageMath icon

SageMath

SageMath is an open-source mathematics software system licensed under the GPL. It builds on top of many existing open-source packages including NumPy, SciPy, matplotlib, Sympy, and more. It provides an interactive environment and library to support research and teaching across algebra, analysis, calculus, combinatorics, geometry, number theory, and more.

What is SageMath?

SageMath is an open-source mathematics software system that provides a viable free open source alternative to Magma, Maple, Mathematica and MATLAB. It is based on Python and implements a huge range of mathematics functionality including:

  • Algebra - including commutative algebra, group theory, combinatorics, graph theory, exact linear algebra, and more
  • Calculus - including real and complex analysis, multivariate calculus, vector calculus, differential equations, etc.
  • Number Theory - including algebraic number theory, arithmetic geometry, diophantine geometry, analytic number theory, etc.
  • Geometry - including algebraic geometry, differential geometry, projective geometry, toric geometry, etc.
  • Cryptography - including elliptic curves, lattice-based cryptography, and classical cryptography
  • Numerical Analysis - linear optimization, numerical linear algebra, root finding and minimization, numerical calculus, dynamical systems, etc.
  • Probability and Statistics
  • And much more across pure and applied mathematics

SageMath builds on top of many existing open-source packages including NumPy, SciPy, matplotlib, Sympy, and more. It provides an interactive environment to use these packages effectively for advanced mathematics as well as a library written in Python for extensibility. SageMath supports LaTeX output for high-quality math typesetting. It provides extensive documentation and many textbooks have been written using SageMath.

SageMath provides a viable free open source alternative to expensive proprietary software like Magma, Maple, Mathematica and MATLAB for research and teaching in mathematics and related fields. It runs on all major platforms and has thousands of users around the world across academia and industry.

The Best SageMath Alternatives

Top Apps like SageMath

Mathematica, MATLAB, Maple, Scilab, GNU Octave, Derive, NumeRe, Maxima, Jupyter, Mathway, Ascend, wxMaxima, OpenAxiom, Livebook, Mirai Math, Spyder, ANKHOR FlowSheet, Collimator, fxSolver, SymPy, Calcpad, Julia, MathStudio, Freemat, Magma, Mathmatiz, GMDH Shell, Enthought, FriCAS, Mathics, VisSim, Cadabra, ScicosLab, GiNaC, Function Analyzer, DataSpell, DataJoy, Yacas, MathJournal, nerdamer, Math Solver II, Reinteract, Math Notepad, Doronix Math Toolbox, MATHdoozy, Mathomatic, GAP, SymbolicC++ are some alternatives to SageMath.

Mathematica

Mathematica is a computational software program developed by Wolfram Research. It is used for symbolic and numerical mathematics, data visualization, image processing, and a wide range of technical computing applications.Some key features of Mathematica include:A symbolic algebra engine that can manipulate mathematical expressions, solve equations, simplify expressions, compute...

MATLAB

MATLAB (matrix laboratory) is a multi-paradigm numerical computing environment and proprietary programming language developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages.Some key features of MATLAB include:Matrix and array-oriented language...

Maple

Maple is a proprietary computer algebra system or CAS designed for mathematical computation and modeling. It was first developed in 1980 by the Symbolic Computation Group at the University of Waterloo in Canada.Some of the key capabilities Maple offers include:Algebraic manipulation - simplify expressions, solve equations, factor polynomials, compute...

Scilab

Scilab is an open source, cross-platform numerical computational package and a high level, numerically oriented programming language. It provides an interpreted programming language, linear algebra operations, numerical optimization, signal processing features, and the ability to plot functions and data.Originally created in 1990 by researchers from INRIA and ENPC in France...

GNU Octave

GNU Octave is an open-source mathematical programming language and environment that is compatible with MATLAB. It allows users to perform numerical computations, data manipulation and visualization, and other mathematical tasks. Some key features of GNU Octave include:An extensive library of mathematical functions for linear algebra, differential equations, optimization, statistics...

Derive

Derive is a mathematical and graphical software program used for symbolic and numeric manipulation and visualization of mathematical expressions. Originally released in 1988 by Soft Warehouse Inc, Derive provides a graphical user interface for performing various mathematical calculations and analysis.With Derive, users can perform symbolic and numeric calculations, plot 2D...

NumeRe

NumeRe is an open-source platform for numerical computing, data analysis, and scientific visualization. It provides a MATLAB-like environment and programming language focused on matrix operations, linear algebra routines, statistical analysis, and plotting. Some key features of NumeRe include:Fast vector/matrix math operations through integration of BLAS and LAPACK librariesA...

Maxima

Maxima is a feature-rich open source computer algebra system that provides capabilities for symbolic computation and mathematical modeling. First released in 1968, Maxima descends from DOE Macsyma, one of the oldest such systems still in use and development today.Some of the key features and capabilities of Maxima include:Symbolic manipulation...

Jupyter

Jupyter is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and narrative text. It supports over 40 programming languages including Python, R, Julia and Scala.Some key features of Jupyter include:Notebook interface - Combine code, text, visualizations etc. in a...

Mathway

Mathway is an online math problem solver and calculator that provides step-by-step explanations. It can solve problems ranging from basic math, algebra, trigonometry, calculus, and more. Mathway is useful for:Students - to check homework answers, improve understanding of concepts through detailed steps, and study math.Teachers - to generate...

Ascend

Ascend is a flexible data analytics and data management platform used by organizations to wrangle, analyze, and gain valuable insights from their data. Some key features of Ascend include:Data integration and ETL to bring together data from multiple sourcesInteractive data preparation with profiling, cleansing, merging, and reshaping capabilities Visual...

WxMaxima

wxMaxima is a cross-platform and open source graphical user interface for the computer algebra system Maxima. It allows users to access Maxima's powerful symbolic and numerical capabilities through a simple, intuitive interface without needing to learn Maxima's command line syntax.Some key features and capabilities of wxMaxima include:Symbolic manipulations...

OpenAxiom

OpenAxiom is an open-source computer algebra system for symbolic and algebraic computation. It provides capabilities for algebra, calculus, statistics, numerical analysis, graphics, proof-assistants, and more. OpenAxiom originated from IBM's Scratchpad II in the 1970s and was later sold as Axiom. In 2001, it was released as an open-source project under the...

Livebook

Livebook is an interactive notebook application for data analysis, machine learning, and visualization. It provides a browser-based workspace where you can combine code, visualizations, text, and multimedia into a single document.Some key features of Livebook:Supports Elixir, Python, JavaScript and other languagesConnects to databases like PostgreSQL, MySQL, and RedisIntegrates...

Mirai Math

Mirai Math is a fully featured, open-source graphing calculator software for Windows, macOS, and Linux operating systems. Developed as an alternative to expensive proprietary math software like TI and Casio calculators, Mirai Math provides robust math capabilties in an easy-to-use interface.Key features of Mirai Math include:2D and 3D...

Spyder

Spyder is a powerful Python integrated development environment (IDE) with features tailored towards scientific computing and data analysis. It provides the following key capabilities:Advanced editor with syntax highlighting, code completion, variable explorer, and other features to facilitate Python coding.Interactive Python console for testing code snippets and exploring data...

ANKHOR FlowSheet

ANKHOR FlowSheet is a flexible workflow automation platform designed specifically for hospitals and healthcare delivery organizations. It enables users to easily build and deploy digital forms, multi-step workflows, real-time alerts and notifications, reports, and dashboards to streamline clinical, financial, and operational processes.Some key features and benefits of ANKHOR FlowSheet...

Collimator

A collimator is a device that is used to narrow a beam of particles or waves by blocking peripheral rays and only allowing the focused beam to pass through. It has many uses across different fields:- In optics, a collimator can collimate light, x-rays or gamma rays into a...

FxSolver

fxSolver is a free online math calculator and equation solver. It allows users to easily solve a wide range of math problems and calculate formulas without needing to install any software.Some key features of fxSolver include:Supports various common math functions like trigonometry, logarithms, fractions, matrices, etc.Can solve...

SymPy

SymPy is an open-source Python library for symbolic mathematics. It enables users to manipulate mathematical expressions, solve equations, expand functions into series, calculate limits, take derivatives and integrals, work with matrices, plot graphs, and more.Some key features of SymPy include:Symbolic calculation engine that can perform arithmetic, algebra, calculus...

Calcpad

Calcpad is a free calculator application for Windows designed to provide simple math and conversion functionalities with a clean and minimalist user interface. It serves as an alternative to the default Windows calculator app for users who prefer a lightweight program specifically for calculation tasks.The Calcpad calculator layout consists...

Julia

Julia is an open-source, high-level, dynamic programming language designed for scientific computing and data science. Some key aspects of Julia:High-performance JIT compiler that allows Julia to approach and often match the speeds of C and FortranDynamically typed, feels like a scripting language but with the speed of a compiled...

MathStudio

MathStudio is a comprehensive software environment and programming language for mathematical computation, data analysis, visualization, and algorithm development. It integrates numerical, symbolic, and graphical capabilities which allow users to solve problems, analyze data, develop algorithms, and create interactive applications.Some of the key features of MathStudio include:Powerful mathematical engine...

Freemat

Freemat is an open-source numerical computing environment that is very similar to MATLAB. It provides many of the same capabilities as MATLAB including:A high-level interactive language for numerical computations2D and 3D plotting and visualization toolsBuilt-in mathematical and statistical functionsSupport for linear algebra, signal processing, optimization, and moreSome key...

Magma

Magma is an open-source, cross-platform software for solving problems in engineering and mathematical physics. It is specialized in numerical solutions using the finite element method, with a particular focus on electromagnetic, thermal, and mechanical simulations.Some key capabilities and applications of Magma include:Modeling electromagnetic wave propagation, scattering, and radiation...

Mathmatiz

Mathmatiz is a free and open-source software designed for mathematics education. It includes features found in general graphing calculators as well as specialized mathematical tools.Mathmatiz allows students to visualize mathematical concepts through 2D and 3D graphing. It can graph a wide variety of functions and equations. The graphs can...

GMDH Shell

GMDH Shell is an open-source software application for data mining and machine learning tasks. It provides a user-friendly graphical interface for building predictive models using GMDH-type neural networks.Some key features and capabilities of GMDH Shell include:Intuitive visual interface for working with datasets and building GMDH modelsWide range of...

Enthought

Enthought is a software company founded in 2001 that focuses on developing Python solutions for scientific and analytic computing. Their products and services center around enabling organizations to build and deploy robust Python environments for data science, machine learning, and scientific computing.Enthought's flagship product is the Enthought Deployment Manager, which...

FriCAS

FriCAS (formerly Axiom) is a general purpose computer algebra system with a focus on symbolic computation. It has powerful capabilities for working with mathematical expressions and can perform calculus, number theory, algebra, integral transforms, special functions, and more.Some key features of FriCAS include:A rich language for defining mathematical...

Mathics

Mathics is an open-source computer algebra system designed to be compatible with Mathematica. It provides capabilities for symbolic and numerical calculations, 2D and 3D graphics, mathematical typesetting, and interactive use.Some of the key features of Mathics include:Symbolic calculations - simplify expressions, compute derivatives, integrals, limits, solve equations, etc...

VisSim

VisSim is a visual block diagram software used for simulating dynamic systems and modeling physical processes. It provides a graphical programming environment for creating models by connecting functional blocks, with no need for text-based coding.Some key features of VisSim include:Drag-and-drop interface for quickly building models by connecting block...

Cadabra

Cadabra is an open-source computer algebra system designed specifically for advanced theoretical physics computations involving tensor polynomial simplifications. It has a modern C++ codebase focused on flexibility, extensibility and understandability.Some key features of Cadabra include:Symbolic tensor manipulation, with support for abstract and component indicesComputation and simplification of tensor...

ScicosLab

ScicosLab is an open-source software suite for numerical computation that specializes in the modeling and simulation of dynamical systems. It features a user-friendly graphical interface based on block diagrams, allowing users to easily construct models by dragging and dropping blocks representing system components.Some of the key capabilities and features...

GiNaC

GiNaC is an open-source computer algebra system designed for practical symbolic mathematical computations and manipulation. It provides a programming interface in C++ for symbolic calculations involving arbitrary precision integer, rational, complex number, symbolic computation, and matrix operations.Some of the key features of GiNaC include:Symbolic manipulation of mathematical expressionsSimplification...

Function Analyzer

Function Analyzer is a versatile software tool used by developers to analyze, profile and optimize the performance of functions in their code. It provides detailed tracing of execution times, memory usage, call stacks, and other vital metrics for each function.This allows developers to easily identify bottlenecks, slow functions, and...

DataSpell

DataSpell is an integrated development environment (IDE) created by JetBrains for working with databases and SQL. It is designed specifically for database developers and data analysts to improve productivity when working with data.Some key features of DataSpell include:Intelligent schema navigation and autocompletion for quickly accessing database objectsVisual query...

DataJoy

DataJoy is a business intelligence and analytics platform designed to help companies make data-driven decisions. It provides an intuitive, drag-and-drop interface that allows users without technical skills to easily connect to data sources, prepare and clean data, and create interactive reports and dashboards.Key features of DataJoy include:Connecting to...

Yacas

Yacas is an open-source computer algebra system written in C++. It provides a flexible environment for symbolic and numerical mathematical computations. Some of the key features of Yacas include:Symbolic manipulation of mathematical expressions involving variables, functions, matrices, tensors, etc.Numerical evaluation of expressions with arbitrary precision floating point or...

MathJournal

MathJournal is an open-source software application designed for mathematical journaling, note-taking and problem solving. It allows users to seamlessly integrate text, handwritten math expressions, LaTeX equations, diagrams, and images all on an infinite virtual math notebook.Key features include:Intuitive math handwriting recognition and conversion to LaTeX and MathMLRobust LaTeX...

Nerdamer

Nerdamer is an extensive JavaScript math library for symbolic computation and algebraic manipulation. It allows performing various mathematical operations and calculations in code:Symbolic manipulation of algebraic expressions and equationsNumerical evaluation of expressionsCalculus operations like differentiation and integrationEquation solving and simplificationMatrix operationsPlotting graphs and visualizationsNerdamer is designed to be lightweight...

Math Solver II

Math Solver II is a powerful math software designed to help students solve a wide range of mathematical problems and better understand concepts. With an intuitive equation editor, students can enter any math problem from basic arithmetic to advanced calculus and get step-by-step solutions.Key features include:- Algebra solver...

Reinteract

Reinteract is an open-source customer engagement platform designed to help companies have more meaningful conversations with customers. It provides a suite of tools to:Centralize customer data from multiple sources into one databaseBuild customer profiles and segments to understand customers betterSet up automated, personalized marketing campaigns across email, mobile push...

Math Notepad

Math Notepad is a free, lightweight math editor and graphing calculator software for Windows. It provides an easy-to-use interface for typing and evaluating mathematical expressions, drawing 2D and 3D graphs of functions, creating matrices, plotting data sets, and more.Key features of Math Notepad include:Intuitive math editor for typing...

Doronix Math Toolbox

Doronix Math Toolbox is a free, open-source math software program designed primarily for students and teachers. It includes a wide range of mathematical tools and utilities in a single interface, making it an versatile option for daily math needs.Key features of Doronix Math Toolbox include:Graphing Calculator - Plot...

MATHdoozy

MATHdoozy is an adaptive and comprehensive math learning platform for K-12 students. It aims to make math fun and engaging through its game-based lessons, while also developing math fluency and mastery.Key features of MATHdoozy include:Personalized math curriculum that adapts to each student's learning level and paceOver 5000 standards-aligned interactive...

Mathomatic

Mathomatic is a free and open-source computer algebra system (CAS) software designed for symbolic mathematics and numerical calculations. Developed in portable C, Mathomatic can run on various platforms like Linux, Windows, macOS, and Unix.Mathomatic provides a simple yet powerful environment to perform a wide range of mathematical operations seamlessly...

GAP

GAP is an open-source computer algebra system for computational discrete algebra, with particular emphasis on computational group theory. It provides a programming language, a library of thousands of functions implementing algebraic algorithms, and extensive documentation.Some key features of GAP include:Specialized capabilities for working with groups, including permutation groups...

SymbolicC++

SymbolicC++ is an open-source, mathematical programming language that is syntactically similar to C++. It allows users to write programs using mathematical notation instead of traditional programming syntax.Some key features of SymbolicC++ include:Supports common mathematical operations like derivatives, integrals, matrices, etc. Users can write programs using actual mathematical symbols...