Generated by GPT-5-mini| SageMath | |
|---|---|
| Name | SageMath |
| Developer | SageMath Development Team |
| Released | 2005 |
| Programming language | Python, Cython, C, C++, Fortran, Julia |
| Operating system | Linux, macOS, Windows |
| Platform | x86, x86-64, ARM |
| Genre | Computer algebra system, Mathematical software |
| License | Open-source (per text) |
SageMath is an open-source mathematical software system designed to provide a unified interface to a wide range of computational mathematics libraries and tools. It integrates numerical, symbolic, algebraic, geometric, combinatorial, and number-theoretic capabilities into a common environment and aims to be a free alternative to proprietary systems. Originating from an effort by academics and open-source contributors, it combines components from many established projects and supports interactive notebooks, scripting, and large-scale computation.
The project began as an initiative by William Stein in 2004 and publicly launched in 2005 with the goal of creating a comprehensive free alternative to proprietary systems such as Mathematica, Maple, MATLAB, and Magma. Early contributors included developers associated with Harvard University, University of Washington, and the University of Wisconsin–Madison mathematics departments, drawing on code from projects like PARI/GP, GAP, Maxima, R, NumPy, and SciPy. Over successive releases the ecosystem expanded through collaborations with institutions such as The University of Warwick, Brown University, Imperial College London, and organizations like the Simons Foundation that funded specific development sprints. The project matured with the establishment of release engineering, packaging for distributions like Debian, Ubuntu, and Fedora, and adoption by research groups in Europe and North America.
The system provides a layered architecture combining a high-level scripting interface with compiled libraries. The core uses the Python language for user interaction, enhanced by Cython for performance-critical code and bindings to native libraries written in C, C++, and Fortran. It exposes functionality from algebraic packages such as Singular, FLINT, NTL and analytic packages like mpmath, as well as combinatorial tools from NetworkX and SageManifolds components. Interactive frontends include a web-based notebook inspired by Jupyter and integration with editors used at institutions like MIT, ETH Zurich, and École Polytechnique. Numerical linear algebra leverages LAPACK and BLAS implementations including OpenBLAS and vendor libraries used in research centers like Los Alamos National Laboratory.
Development is coordinated by a distributed community of researchers, graduate students, and engineers organized via code hosting, mailing lists, and sprints. Contributors have affiliations with universities such as Princeton University, University of Cambridge, University of Oxford, University of California, Berkeley, and research institutes including CNRS and INRIA. Governance and release decisions have been informed by working groups that include maintainers with backgrounds at Google, Microsoft Research, and nonprofit funders like the Alfred P. Sloan Foundation. The community runs outreach at conferences including International Congress of Mathematicians, Joint Mathematics Meetings, and workshops at universities like Stanford University and Cambridge (UK). Documentation, issue tracking, and continuous integration involve services provided by organizations such as GitHub and Travis CI historically, with mirrors and packaging maintained by distribution teams for Debian and Homebrew.
The software is used across research, teaching, and industry for tasks including symbolic computation in algebraic number theory explored at Princeton, computational algebraic geometry practiced at ETH Zurich, numerical experimentation in applied mathematics labs at Imperial College London, and combinatorics research at University of Waterloo. Educators deploy it in courses at institutions such as Harvard University and University of Cambridge for calculus and algebra assignments, often integrating with learning platforms developed at edX and courseware from MIT OpenCourseWare. In industry, teams at startups and companies with links to NVIDIA and Intel have used it for prototyping algorithms in cryptography and optimization. Large-scale computations combine it with cluster resources at national facilities like XSEDE and cloud providers with ties to Amazon Web Services.
Adoption includes packaging by operating system projects like Debian, Ubuntu, Fedora, and distribution through language ecosystems such as Python repositories and conda channels maintained by community members. Integration points include interoperability with Jupyter Notebook and JupyterLab, connectors to R via interfaces used at research groups, and bindings enabling use with numerical libraries from NumPy and SciPy in applied labs at Los Alamos National Laboratory and Lawrence Berkeley National Laboratory. Universities have incorporated it into computational courses and research workflows alongside tools like MATLAB at engineering schools and Mathematica at theoretical physics groups, often facilitated by package managers and container images produced by teams at institutions like CERN.
The software is distributed under a free open-source license (see project materials) chosen to ensure compatibility with major open-source components. Governance is community-driven with core maintainers elected or recognized by contribution history, and advisory support from academics at institutions including University of Washington and Brown University. Funding and institutional support have come from grants by organizations such as the Simons Foundation, Sloan Foundation, and university research offices, enabling code sprints, documentation work, and infrastructure hosted on services contributed by companies and academic IT departments.
Category:Free mathematics software