dijous, 25 d’octubre del 2007

Magma & Sage : software mathematical packages

Magma (http://magma.maths.usyd.edu.au/magma/) is a private software designed to solve computationally hard problems in algebra, number theory, geometry and combinatorics. It uses the best algorithms known at the moment, which makes it really potent.
I use this application to construct and calculate a high variety of codes. It is easy to use and its help is well explained.
Magma makes your live easier when you are working in mathematics problems, it provides quick and easy to use functions to solve a lot of calculations over codes, matrix, vector spaces...
It is also well supported for discrete mathematics, futhermore it has a lot of libraries including cryptography, algebra, all kind of groups and more useful functionalities.

However, Magma is a private software, and I must give another free-software option. This one is Sage .

Sage (http://www.sagemath.org/) is a software for studying a huge range of mathematics, including algebra, calculus, elementary to very advanced number theory, cryptography, numerical computation, commutative algebra, group theory, combinatorics, graph theory, and exact linear algebra.
It tries to be a an open source option to sum up those mathematical applications which are nowadays in the market, like private ones (Mathematica, Magma, Matlab, Maple, ...) or free ones (GAP, Maxima, ...). Sage also have an interface to use those programs (if you have them installed) while you are using sage. It is programed in python but fortunatley (for developers), you have applications to convert other programming languages to python.
Sage is an initiative of profesor William Stein from Washington University. At the moment I am working to convert some applications we use in University to include them in SAGE.