Related Links
Magma is a general-purpose computer algebra system based on a computational model that closely reflects the way in which mathematicians view their subject. It provides an environment built on the fundamental concepts of algebra (set, sequence, structure, mapping, morphism).
Algebraic Design: The design of the system and language is based on standard mathematical modes of thought and notation.
Breadth: In-depth coverage of all the major branches of modules and linear algebra, commutative algebra, number theory, algebraic geometry, and combinatorial theory.
Integration: The facilities for each area are designed in a uniform manner using generic constructors wherever possible.
Performance: Magma achieves outstanding performance across a huge spectrum of areas with timings similar to, or often better than, specialised stand-alone programs.
The Magma system has been developed by the Computational Algebra Group at the University of Sydney. The machinery for particular areas has been developed jointly with mathematicians at many different centres.
The following is a partial list of the mathematical objects which Magma supports. Magma includes a very large number of the more important algorithms in group theory, number theory, algebraic geometry, and discrete mathematics.
More detailed descriptions of Magma's facilities for working in selected important areas can be found in the Overview of important areas.
- Algebras: General finite-dimensional algebras, Lie algebras, associative algebras, quaternion algebras, matrix algebras, group algebras, (split) basic algebras, modules over an algebra, invariant rings.
- Algebraic geometry: Schemes, coherent sheaves, algebraic curves, algebraic surfaces, toric varieties.
- Arithmetic geometry: Rational curves and conics, elliptic curves, hyperelliptic curves and their Jacobians, plane quartics, hypergeometric motives, L-functions.
- Coding theory: Codes over finite fields, codes over ℤ/4ℤ, algebraic-geometric codes.
- Combinatorics: Counting theory, Young tableaux, directed and undirected graphs, networks, incidence structures, designs, finite planes, Hadamard matrices, incidence geometries.
- Commutative rings: Polynomial rings, graded rings, ideal theory, Gröbner bases, affine algebras.
- Fields and their orders: Ring of integers, Galois fields, Galois rings, number fields and their orders, algebraically closed fields, algebraic function fields, p-adic and local fields, power series and Laurent series rings, real and complex fields, Puiseux series fields.
- Groups: Permutation groups, matrix groups, finitely-presented groups, Abelian groups, soluble groups, (infinite) polycyclic groups, automatic groups, braid groups, black box groups.
- Lattices and Quadratic Forms: Integral lattices, lattices over number fields, quadratic forms, binary quadratic forms.
- Lie theory: Root data, root systems, Coxeter systems, Coxeter groups, reflection groups, Lie groups, Lie algebras, UEAs, quantum groups.
- Modules: Vector spaces, free modules, modules over Euclidean rings, modules over orders, modules over affine algebras, modules over Dedekind domains, chain complexes, multilinear algebra.
- Modular arithmetic geometry: Modular curves, congruence subgroups of PSL(2,ℝ), modular forms, modular symbols, Brandt modules, modular abelian varieties, Hilbert modular forms, modular forms over imaginary quadratic fields, admissible representations of GL2(Op).
- Representation theory: Modules over an algebra, construction of ordinary and modular group representations, character theory.