265
Comment:

3063

Deletions are marked like this.  Additions are marked like this. 
Line 3:  Line 3: 
This is a highlevel overview and list of functionality that is easily available from the standard SAGE interface. (The intended reader has never heard of Maxima, GAP, Singular, Givaro, etc.) 

Line 4:  Line 6: 
* SAGE has fairly complete symbolic manipulation capabilities, including symbolic and numerical integration, differentiation, limits, etc.  
Line 5:  Line 8: 
== Commutative Algebra ==  == Coding theory == * A wide range of basic functionality. == Commutative Algebra == * Fast computation of Groebner basis. == Cryptography == * Classical ciphers are well supported. == Elementary Education == * The SAGE notebook (a graphical interface) is a useful tool for basic math education because of its flexible visualization/output capabilities. 
Line 9:  Line 26: 
* Very fast arithmetic over finite fields and extensions of finite fields (especially up to cardinality 2^16). 

Line 10:  Line 29: 
* A webbrowser based graphical interface, which anybody can easily use or share. The GUI can also be used for any math software that SAGE interfaces with. * A wiki with math typesetting preconfigured. 

Line 13:  Line 34: 
* Permutations groups * Abelian groups * Matrix groups (in particular, classical groups over finite fields) == Interfaces == * Interpreter interfaces to Axiom, CoCoA, GAP, KASH, Macaulay2, Magma, Maple, Mathematica, Matlab, Maxima, MuPAD, Octave, and Singular. * C/C++library interfaces to NTL, PARI, Linbox, and mwrank. 

Line 15:  Line 45: 
== Number Theory ==  * Compute the reduced row echelon form of e.g. dense 20,000x20,000 matrices over GF(2) in seconds and 50MB of RAM. * Computation of reduced row echelon forms of sparse matrices. * Fast matrix multiplication, characteristic polynomial and echelon forms of dense matrices over QQ. == Number Theory == * Compute MordellWeil groups of (many) elliptic curves using both invariants and algebraic 2descents. * A wide range of number theoretic functions, e.g., euler_phi, primes enumeration, sigma, tau_qexp, etc. * Compute the number of points on an elliptic curve modulo p for all primes p less than a million in seconds. * Optimized implementation of the SchoofElkiesAtkin point counting algorithm for counting points modulo p when p is large. * An optimized modern quadratic Sieve for factoring integers n = p*q. * Modular symbols for general weight, character, Gamma1, and GammaH. * Modular forms for general weight >= 2, character, Gamma1, and GammaH. 
Line 18:  Line 59: 
* Fast arithmetic and special functions with double precision real and complex numbers. * Matrix and vector arithmetic, QR decomposition, system solving. 

Line 22:  Line 65: 
* SAGE provides 2d plotting functionality similar to Mathematica's. * SAGE provides limited 3d plotting via an included ray tracer. == Polytopes == * State of the art support for computing with lattice polytopes. * Exact convex hulls in any dimension can be quickly computed (requires the optional polymake package). 
What SAGE Can Do
This is a highlevel overview and list of functionality that is easily available from the standard SAGE interface. (The intended reader has never heard of Maxima, GAP, Singular, Givaro, etc.)
Calculus
 SAGE has fairly complete symbolic manipulation capabilities, including symbolic and numerical integration, differentiation, limits, etc.
Coding theory
 A wide range of basic functionality.
Commutative Algebra
 Fast computation of Groebner basis.
Cryptography
 Classical ciphers are well supported.
Elementary Education
 The SAGE notebook (a graphical interface) is a useful tool for basic math education because of its flexible visualization/output capabilities.
Finite Fields
 Very fast arithmetic over finite fields and extensions of finite fields (especially up to cardinality 2^16).
Graphical Interface
 A webbrowser based graphical interface, which anybody can easily use or share. The GUI can also be used for any math software that SAGE interfaces with.
 A wiki with math typesetting preconfigured.
Group Theory
 Permutations groups
 Abelian groups
 Matrix groups (in particular, classical groups over finite fields)
Interfaces
 Interpreter interfaces to Axiom, CoCoA, GAP, KASH, Macaulay2, Magma, Maple, Mathematica, Matlab, Maxima, MuPAD, Octave, and Singular.
 C/C++library interfaces to NTL, PARI, Linbox, and mwrank.
Linear Algebra
 Compute the reduced row echelon form of e.g. dense 20,000x20,000 matrices over GF(2) in seconds and 50MB of RAM.
 Computation of reduced row echelon forms of sparse matrices.
 Fast matrix multiplication, characteristic polynomial and echelon forms of dense matrices over QQ.
Number Theory
 Compute MordellWeil groups of (many) elliptic curves using both invariants and algebraic 2descents.
 A wide range of number theoretic functions, e.g., euler_phi, primes enumeration, sigma, tau_qexp, etc.
 Compute the number of points on an elliptic curve modulo p for all primes p less than a million in seconds.
 Optimized implementation of the SchoofElkiesAtkin point counting algorithm for counting points modulo p when p is large.
 An optimized modern quadratic Sieve for factoring integers n = p*q.
 Modular symbols for general weight, character, Gamma1, and GammaH.
Modular forms for general weight >= 2, character, Gamma1, and GammaH.
Numerical Computation
 Fast arithmetic and special functions with double precision real and complex numbers.
 Matrix and vector arithmetic, QR decomposition, system solving.
padic Numbers
Plotting
 SAGE provides 2d plotting functionality similar to Mathematica's.
 SAGE provides limited 3d plotting via an included ray tracer.
Polytopes
 State of the art support for computing with lattice polytopes.
 Exact convex hulls in any dimension can be quickly computed (requires the optional polymake package).