A software system for research in
algebraic geometry.
Macaulay2 computes Gröbner bases, free resolutions, Betti numbers, Ext, sheaf cohomology, primary decomposition and integral closure. Free, open source, and supported by the National Science Foundation since 1992.
i1 : R = QQ[x,y,z] i2 : I = ideal(x^2-y*z, x*y-z^2) i3 : betti res(R^1/I)
o1 = R o1 : PolynomialRing o2 = ideal (x² - y z, x y - z²) o2 : Ideal of R o3 = 0 1 2 total: 1 2 1 0: 1 . . 1: . 2 . 2: . . 1 o3 : BettiTally
What it computes
Built for commutative algebra and algebraic geometry, not for everything.
A specialist system, thirty-four years deep in one domain.
Gröbner bases
Over quotient rings of graded and multigraded polynomial rings, with a monomial ordering of your choosing.
Free resolutions
Minimal resolutions of modules, with betti tables that read the way they read on paper.
Sheaf cohomology
Cohomology of coherent sheaves on projective varieties, plus Ext and Tor.
Decomposition
Primary decomposition of ideals, minimal primes, radicals, saturation, integral closure.
No install
Open a notebook and start computing.
A real Macaulay2 process, running your code, with results typeset the way a paper would set them. Cells keep their state, so a session is something you can come back to and send to a collaborator.
- EditorSyntax highlighting and completion over the full symbol table
- OutputTypeset mathematics, not terminal text
- SharingA notebook is a file and a link
- Formats
.m2, Jupyter.ipynb, PDF

Community
Built and maintained in the open.
Macaulay2 is directed by its Council and developed by mathematicians who use it in their own research.