Sage (computer algebra system)
From Wikipedia, the free encyclopedia
Sage animated .gif, y=x2 (red) vs. y=x3(blue) |
|
| Initial release | 24 February 2005 |
|---|---|
| Latest release | 3.1.2 / 19 September 2008 |
| Written in | Python, Cython |
| OS | Cross-platform |
| Platform | Python |
| Type | Computer algebra system |
| License | GNU General Public License |
| Website | sagemath.org |
Sage is an open source computer algebra system written in Python and Cython and integrates an included distribution of specialized mathematics software into a common experience. It tries to cover many aspects of mathematics, including algebra, combinatorics, numerical mathematics and calculus.
The first version of Sage was released on 24 February 2005 under the terms of the GNU General Public License, with the initial goals of creating an "open source alternative to Magma, Maple, Mathematica, and MATLAB."[1]
In 2007, Sage won first prize in the scientific software division of Les Trophées du Libre, an international competition for free software.[2]
The lead developer of Sage, William Stein, is a mathematician at the University of Washington who employs students for Sage development. The development of Sage is supported by both volunteer work and grants.[3]
Contents |
[edit] Architecture
Sage consists of a (local) web server which provides a graphical interface to interact with a Python interface for programming.
Most of the computation is provided by an included distribution of different open source mathematical software and libraries. Currently these are PARI/GP, GAP, Singular, and Maxima.
Some operations use these libraries automatically, others require the user to make explicit calls to them. The state of variables within each of the libraries is independent and transfer of objects between libraries is typically achieved by converting to and from strings.
[edit] Features
Sage combines various modes of usage for different applications.
- It provides a notebook document interface.
- It provides a text-based command line interface.
- It includes MoinMoin as a Wiki system for knowledge management.
- It is possible to embed Sage inside LaTeX documents.
- It is possible to use sliders as input for calculations.[4]
- It provides support for distributed computing.
- Sage provides interfaces to some third-party software like Mathematica, Magma, and Maple, which allows users to combine software and compare output and performance. It is thus also a "front-end" to other mathematical tools similar to GNU TeXmacs.
[edit] See also
[edit] References
- ^ Stein, William (2007-06-12). "SAGE Days 4". Retrieved on 2007-08-02.
- ^ "Free Software Brings Affordability, Transparency To Mathematics". Science Daily (Dec. 7, 2007). Retrieved on 2008-07-20.
- ^ "Explicit Approaches to Modular Forms and Modular Abelian Varieties". National Science Foundation (2006-04-14). Retrieved on 2007-07-24.
- ^ "Sage Interact functionality". Retrieved on 2008-04-11.

