Cayley Computer Algebra System
   HOME

TheInfoList



OR:

Magma is a
computer algebra system A computer algebra system (CAS) or symbolic algebra system (SAS) is any mathematical software with the ability to manipulate mathematical expressions in a way similar to the traditional manual computations of mathematicians and scientists. The de ...
designed to solve problems in
algebra Algebra is a branch of mathematics that deals with abstract systems, known as algebraic structures, and the manipulation of expressions within those systems. It is a generalization of arithmetic that introduces variables and algebraic ope ...
,
number theory Number theory is a branch of pure mathematics devoted primarily to the study of the integers and arithmetic functions. Number theorists study prime numbers as well as the properties of mathematical objects constructed from integers (for example ...
,
geometry Geometry (; ) is a branch of mathematics concerned with properties of space such as the distance, shape, size, and relative position of figures. Geometry is, along with arithmetic, one of the oldest branches of mathematics. A mathematician w ...
and
combinatorics Combinatorics is an area of mathematics primarily concerned with counting, both as a means and as an end to obtaining results, and certain properties of finite structures. It is closely related to many other areas of mathematics and has many ...
. It is named after the
algebraic structure In mathematics, an algebraic structure or algebraic system consists of a nonempty set ''A'' (called the underlying set, carrier set or domain), a collection of operations on ''A'' (typically binary operations such as addition and multiplicatio ...
magma Magma () is the molten or semi-molten natural material from which all igneous rocks are formed. Magma (sometimes colloquially but incorrectly referred to as ''lava'') is found beneath the surface of the Earth, and evidence of magmatism has also ...
. It runs on
Unix-like A Unix-like (sometimes referred to as UN*X, *nix or *NIX) operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification. A Uni ...
operating system An operating system (OS) is system software that manages computer hardware and software resources, and provides common daemon (computing), services for computer programs. Time-sharing operating systems scheduler (computing), schedule tasks for ...
s, as well as
Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
.


Introduction

Magma is produced and distributed by th
Computational Algebra Group
within the Sydney School of Mathematics and Statistics at the
University of Sydney The University of Sydney (USYD) is a public university, public research university in Sydney, Australia. Founded in 1850, it is the oldest university in both Australia and Oceania. One of Australia's six sandstone universities, it was one of the ...
. In late 2006, the boo
Discovering Mathematics with Magma
was published by
Springer Springer or springers may refer to: Publishers * Springer Science+Business Media, aka Springer International Publishing, a worldwide publishing group founded in 1842 in Germany formerly known as Springer-Verlag. ** Springer Nature, a multinationa ...
as volume 19 of the Algorithms and Computations in Mathematics series. The Magma system is used extensively within pure mathematics. The Computational Algebra Group maintain a list of publications that cite Magma, and as of 2010 there are about 2600 citations, mostly in pure mathematics, but also including papers from areas as diverse as economics and geophysics.


History

The predecessor of the Magma system was named Cayley (1982–1993), after
Arthur Cayley Arthur Cayley (; 16 August 1821 – 26 January 1895) was a British mathematician who worked mostly on algebra. He helped found the modern British school of pure mathematics, and was a professor at Trinity College, Cambridge for 35 years. He ...
. Magma was officially released in August 1993 (version 1.0). Version 2.0 of Magma was released in June 1996 and subsequent versions of 2.X have been released approximately once per year. In 2013, the Computational Algebra Group finalized an agreement with the
Simons Foundation The Simons Foundation is an American private foundation established in 1994 by Marilyn and James Harris Simons, Jim Simons with offices in New York City. As one of the largest charitable organizations in the United States with assets of over $5 ...
, whereby the Simons Foundation will underwrite all costs of providing Magma to all U.S.
nonprofit A nonprofit organization (NPO), also known as a nonbusiness entity, nonprofit institution, not-for-profit organization, or simply a nonprofit, is a non-governmental (private) legal entity organized and operated for a collective, public, or so ...
,
non-governmental A non-governmental organization (NGO) is an independent, typically nonprofit organization that operates outside government control, though it may get a significant percentage of its funding from government or corporate sources. NGOs often focus ...
scientific research or educational institutions. All students, researchers and faculty associated with a participating institution will be able to access Magma for free, through that institution.


Mathematical areas covered by the system

*
Group theory In abstract algebra, group theory studies the algebraic structures known as group (mathematics), groups. The concept of a group is central to abstract algebra: other well-known algebraic structures, such as ring (mathematics), rings, field ( ...
: Magma includes
permutation In mathematics, a permutation of a set can mean one of two different things: * an arrangement of its members in a sequence or linear order, or * the act or process of changing the linear order of an ordered set. An example of the first mean ...
,
matrix Matrix (: matrices or matrixes) or MATRIX may refer to: Science and mathematics * Matrix (mathematics), a rectangular array of numbers, symbols or expressions * Matrix (logic), part of a formula in prenex normal form * Matrix (biology), the m ...
, finitely presented,
soluble In chemistry, solubility is the ability of a substance, the solute, to form a solution with another substance, the solvent. Insolubility is the opposite property, the inability of the solute to form such a solution. The extent of the solubi ...
, abelian (finite or infinite), polycyclic,
braid A braid (also referred to as a plait; ) is a complex structure or pattern formed by interlacing three or more strands of flexible material such as textile yarns, wire, or hair. The simplest and most common version is a flat, solid, three-strand ...
and
straight-line program In computer science, a straight-line program is, informally, a program that does not contain any loop or any test, and is formed by a sequence of steps that apply each an operation to previously computed elements. This article is devoted to the c ...
groups A group is a number of persons or things that are located, gathered, or classed together. Groups of people * Cultural group, a group whose members share the same cultural identity * Ethnic group, a group whose members share the same ethnic iden ...
. Several databases of groups are also included. *
Number theory Number theory is a branch of pure mathematics devoted primarily to the study of the integers and arithmetic functions. Number theorists study prime numbers as well as the properties of mathematical objects constructed from integers (for example ...
: Magma contains asymptotically fast algorithms for all fundamental integer and polynomial operations, such as the
Schönhage–Strassen algorithm The Schönhage–Strassen algorithm is an asymptotically fast multiplication algorithm for large integers, published by Arnold Schönhage and Volker Strassen in 1971. It works by recursively applying fast Fourier transform (FFT) over the intege ...
for fast multiplication of integers and polynomials.
Integer factorization In mathematics, integer factorization is the decomposition of a positive integer into a product of integers. Every positive integer greater than 1 is either the product of two or more integer factors greater than 1, in which case it is a comp ...
algorithms include the
Elliptic Curve Method The Lenstra elliptic-curve factorization or the elliptic-curve factorization method (ECM) is a fast, sub-exponential running time, algorithm for integer factorization, which employs elliptic curves. For general-purpose computer, general-purpose ...
, the
Quadratic sieve The quadratic sieve algorithm (QS) is an integer factorization algorithm and, in practice, the second-fastest method known (after the general number field sieve). It is still the fastest for integers under 100 decimal digits or so, and is consider ...
and the
Number field sieve In number theory, the general number field sieve (GNFS) is the most efficient classical algorithm known for factoring integers larger than . Heuristically, its complexity for factoring an integer (consisting of bits) is of the form : \begin & ...
. *
Algebraic number theory Algebraic number theory is a branch of number theory that uses the techniques of abstract algebra to study the integers, rational numbers, and their generalizations. Number-theoretic questions are expressed in terms of properties of algebraic ob ...
: Magma includes the
KANT Immanuel Kant (born Emanuel Kant; 22 April 1724 – 12 February 1804) was a German philosopher and one of the central Enlightenment thinkers. Born in Königsberg, Kant's comprehensive and systematic works in epistemology, metaphysics, et ...
computer algebra system for comprehensive computations in algebraic number fields. A special type also allows one to compute in the
algebraic closure In mathematics, particularly abstract algebra, an algebraic closure of a field ''K'' is an algebraic extension of ''K'' that is algebraically closed. It is one of many closures in mathematics. Using Zorn's lemmaMcCarthy (1991) p.21Kaplansky ...
of a field. *
Module theory In mathematics, a module is a generalization of the notion of vector space in which the field of scalars is replaced by a (not necessarily commutative) ring. The concept of a ''module'' also generalizes the notion of an abelian group, since t ...
and
linear algebra Linear algebra is the branch of mathematics concerning linear equations such as :a_1x_1+\cdots +a_nx_n=b, linear maps such as :(x_1, \ldots, x_n) \mapsto a_1x_1+\cdots +a_nx_n, and their representations in vector spaces and through matrix (mathemat ...
: Magma contains asymptotically fast algorithms for all fundamental dense matrix operations, such as Strassen multiplication. *
Sparse matrices In numerical analysis and scientific computing, a sparse matrix or sparse array is a matrix (mathematics), matrix in which most of the elements are zero. There is no strict definition regarding the proportion of zero-value elements for a matrix ...
: Magma contains the structured
Gaussian elimination In mathematics, Gaussian elimination, also known as row reduction, is an algorithm for solving systems of linear equations. It consists of a sequence of row-wise operations performed on the corresponding matrix of coefficients. This method can a ...
and Lanczos algorithms for reducing sparse systems which arise in index calculus methods, while Magma uses Markowitz pivoting for several other sparse linear algebra problems. * Lattices and the
LLL algorithm LLL may refer to: Businesses and organisations * L3 Technologies, an American defense contractor formerly with the NYSE stock symbol LLL * La Leche League, an organization that promotes breastfeeding Education * LL.L (''Legum Licentiatus''), a ...
: Magma has a provable implementation of ''fp''LLL, which is an LLL algorithm for integer matrices which uses floating point numbers for the Gram–Schmidt coefficients, but such that the result is rigorously proven to be LLL-reduced. *
Commutative algebra Commutative algebra, first known as ideal theory, is the branch of algebra that studies commutative rings, their ideal (ring theory), ideals, and module (mathematics), modules over such rings. Both algebraic geometry and algebraic number theo ...
and Gröbner bases : Magma has an efficient implementation of the Faugère F4 algorithm for computing Gröbner bases. *
Representation theory Representation theory is a branch of mathematics that studies abstract algebra, abstract algebraic structures by ''representing'' their element (set theory), elements as linear transformations of vector spaces, and studies Module (mathematics), ...
: Magma has extensive tools for computing in representation theory, including the computation of
character tables In group theory, a branch of abstract algebra, a character table is a two-dimensional table whose rows correspond to irreducible representations, and whose columns correspond to conjugacy classes of group elements. The entries consist of charact ...
of finite groups and the Meataxe algorithm. *
Invariant theory Invariant theory is a branch of abstract algebra dealing with actions of groups on algebraic varieties, such as vector spaces, from the point of view of their effect on functions. Classically, the theory dealt with the question of explicit descr ...
: Magma has a type for invariant rings of finite groups, for which one can primary, secondary and fundamental invariants, and compute with the module structure. *
Lie theory In mathematics, the mathematician Sophus Lie ( ) initiated lines of study involving integration of differential equations, transformation groups, and contact (mathematics), contact of spheres that have come to be called Lie theory. For instance, ...
*
Algebraic geometry Algebraic geometry is a branch of mathematics which uses abstract algebraic techniques, mainly from commutative algebra, to solve geometry, geometrical problems. Classically, it studies zero of a function, zeros of multivariate polynomials; th ...
*
Arithmetic geometry In mathematics, arithmetic geometry is roughly the application of techniques from algebraic geometry to problems in number theory. Arithmetic geometry is centered around Diophantine geometry, the study of rational points of algebraic varieties. ...
* Finite
incidence structure In mathematics, an incidence structure is an abstract system consisting of two types of objects and a single relationship between these types of objects. Consider the Point (geometry), points and Line (geometry), lines of the Euclidean plane as t ...
s *
Cryptography Cryptography, or cryptology (from "hidden, secret"; and ''graphein'', "to write", or ''-logy, -logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of Adversary (cryptography), ...
*
Coding theory Coding theory is the study of the properties of codes and their respective fitness for specific applications. Codes are used for data compression, cryptography, error detection and correction, data transmission and computer data storage, data sto ...
*
Optimization Mathematical optimization (alternatively spelled ''optimisation'') or mathematical programming is the selection of a best element, with regard to some criteria, from some set of available alternatives. It is generally divided into two subfiel ...


See also

*
Comparison of computer algebra systems The following tables provide a comparison of computer algebra systems (CAS). A CAS is a package comprising a set of algorithms for performing symbolic manipulations on algebraic objects, a language to implement them, and an environment in which to ...


References


External links

*
Magma Free Online CalculatorMagma's High Performance for computing Gröbner Bases
(2004)

* ttp://magma.maths.usyd.edu.au/users/allan/gcdcomp.html Magma V2.12 is apparently "Overall Best in the World at Polynomial GCD" :-)br>Magma example codeListe
von Publikationen, die Magma zitieren {{DEFAULTSORT:Magma Computer Algebra System Computer algebra system software for Linux Computer algebra system software for macOS Computer algebra system software for Windows Cross-platform software Functional languages Numerical programming languages Proprietary commercial software for Linux