Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Magma (computer algebra system)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Infobox software | name = Magma | logo = Magma-logo.png | screenshot = | caption = | developer = Computational Algebra Group, [[Sydney School of Mathematics and Statistics|School of Mathematics and Statistics]], [[University of Sydney]] | ver layout = simple | latest release version = {{wikidata|property|preferred|references|edit|P348|P548=Q2804309}} | latest release date = {{wikidata|qualifier|preferred|single|P348|P548=Q2804309|P577}} | programming language = C (kernel), Magma (libraries)<ref>{{Cite web|url=https://mathstats.uncg.edu/sites/number-theory/summerschool/2016/magma-general/magma-general-4.pdf|title=What is Magma?}}</ref> | operating_system = [[Cross-platform]] | genre = [[Computer algebra system]] | license = Cost recovery (non-commercial proprietary) | website = {{URL|magma.maths.usyd.edu.au}} }} '''Magma''' is a [[computer algebra system]] designed to solve problems in [[abstract algebra|algebra]], [[number theory]], [[algebraic geometry|geometry]] and [[combinatorics]]. It is named after the [[algebraic structure]] [[magma (algebra)|magma]]. It runs on [[Unix-like]] [[operating system]]s, as well as [[Microsoft Windows|Windows]]. == Introduction == Magma is produced and distributed by the [http://magma.maths.usyd.edu.au/magma/CayMagCAG/CayMagCAG.html Computational Algebra Group] within the [[University of Sydney School of Mathematics and Statistics|Sydney School of Mathematics and Statistics]] at the [[University of Sydney]]. In late 2006, the book [https://www.springer.com/math/cse/book/978-3-540-37632-3 Discovering Mathematics with Magma] was published by [[Springer Science+Business Media|Springer]] as volume 19 of the Algorithms and Computations in Mathematics series.<ref>{{Cite web|url=http://magma.maths.usyd.edu.au/magma/dmwm/|title=Discovering Mathematics with Magma}}</ref> 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.<ref>{{Cite web|url=http://magma.maths.usyd.edu.au/magma/citations/|title=Published Research Citing Magma}}</ref> ==History== The predecessor of the Magma system was named Cayley (1982–1993), after [[Arthur Cayley]]. 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]], whereby the Simons Foundation will underwrite all costs of providing Magma to all U.S. [[Nonprofit organization|nonprofit]], [[Non-governmental organization|non-governmental]] 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.<ref>{{Cite web |title=Simons Foundation Scheme for the Provision of Magma at US Educational and Scientific Research Organizations |url=http://magma.maths.usyd.edu.au/magma/simons_details |website=Magma Computer Algebra}}</ref> == Mathematical areas covered by the system == * [[Group theory]] : Magma includes [[permutation group|permutation]], [[matrix (mathematics)|matrix]], [[finitely presented group|finitely presented]], [[solvable group|soluble]], [[abelian group|abelian]] (finite or infinite), [[polycyclic group|polycyclic]], [[braid group|braid]] and [[straight-line program]] [[group (mathematics)|groups]]. Several databases of groups are also included. * [[Number theory]] : Magma contains [[Big O notation|asymptotically fast]] algorithms for all fundamental integer and polynomial operations, such as the [[Schönhage–Strassen algorithm]] for fast multiplication of integers and polynomials. [[Integer factorization]] algorithms include the [[Lenstra elliptic curve factorization|Elliptic Curve Method]], the [[Quadratic sieve]] and the [[General number field sieve|Number field sieve]]. * [[Algebraic number theory]] : Magma includes the [[KANT (software)|KANT]] computer algebra system for comprehensive computations in algebraic number fields. A special type also allows one to compute in the [[algebraic closure]] of a field. * [[Module theory]] and [[linear algebra]] : Magma contains [[Big O notation|asymptotically fast]] algorithms for all fundamental dense matrix operations, such as [[Strassen algorithm|Strassen multiplication]]. * [[Sparse matrices]] : Magma contains the structured [[Gaussian elimination]] and [[Lanczos]] algorithms for reducing sparse systems which arise in [[index calculus]] methods, while Magma uses [[Harry Markowitz|Markowitz]] [[Pivot element|pivoting]] for several other sparse linear algebra problems. * [[Lattice (group)|Lattices]] and the [[LLL algorithm]] : Magma has a provable implementation of [[fpLLL|''fp''LLL]],<ref>{{cite web |author=John Cannon |url=http://magma.maths.usyd.edu.au/magma/releasenotes/2/13/#section_13 |title=Magma 2.13 release notes |date=July 2006 }}</ref> which is an LLL algorithm for integer matrices which uses floating point numbers for the [[Gram–Schmidt process|Gram–Schmidt coefficients]], but such that the result is rigorously proven to be LLL-reduced. * [[Commutative algebra]] and [[Gröbner bases]] : Magma has an efficient implementation of the [[Faugère F4 algorithm]] for computing [[Gröbner bases]]. * [[Representation theory]] : Magma has extensive tools for computing in representation theory, including the computation of [[character tables]] of finite groups and the [[Meataxe]] algorithm. * [[Invariant theory]] : 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]] * [[Algebraic geometry]] * [[Arithmetic geometry]] * Finite [[incidence structure]]s * [[Cryptography]] * [[Coding theory]] * [[Optimization (mathematics)|Optimization]] ==See also== *[[Comparison of computer algebra systems]] ==References== {{Reflist}} ==External links== *{{Official website|magma.maths.usyd.edu.au}} *[http://magma.maths.usyd.edu.au/calc/ Magma Free Online Calculator] *[http://magma.maths.usyd.edu.au/users/allan/gb/ Magma's High Performance for computing Gröbner Bases] (2004) *[http://magma.maths.usyd.edu.au/users/allan/mat/hermite.html Magma's High Performance for computing Hermite Normal Forms of integer matrices] *[http://magma.maths.usyd.edu.au/users/allan/gcdcomp.html Magma V2.12 is apparently "Overall Best in the World at Polynomial GCD" :-)] *[https://web.archive.org/web/20160224063934/http://www.math.harvard.edu/computing/magma/ Magma example code] *[http://magma.maths.usyd.edu.au/magma/citations/ Liste] von Publikationen, die Magma zitieren {{Computer algebra systems}} {{Authority control}} {{DEFAULTSORT:Magma Computer Algebra System}} [[Category:Computer algebra system software for Linux]] [[Category:Computer algebra system software for macOS]] [[Category:Computer algebra system software for Windows]] [[Category:Cross-platform software]] [[Category:Functional languages]] [[Category:Numerical programming languages]] [[Category:Proprietary commercial software for Linux]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Authority control
(
edit
)
Template:Cite web
(
edit
)
Template:Computer algebra systems
(
edit
)
Template:Infobox
(
edit
)
Template:Infobox software
(
edit
)
Template:Main other
(
edit
)
Template:Official website
(
edit
)
Template:Reflist
(
edit
)
Template:Template other
(
edit
)