sagemath_macaulay2: Computing in commutative algebra, algebraic geometry and related fields with Macaulay2¶
This pip-installable distribution passagemath-macaulay2
provides an interface to
Macaulay2.
What is included¶
The binary wheels published on PyPI include a prebuilt copy of Macaulay 2.
Examples¶
Using Macaulay 2 on the command line:
$ pipx run --pip-args="--prefer-binary" --spec "passagemath-macaulay2" sage -sh -c 'M2'
Finding the installation location of Macaulay 2:
$ pipx run --pip-args="--prefer-binary" --spec "passagemath-macaulay2[test]" ipython
In [1]: from sage.features.macaulay2 import Macaulay2
In [2]: Macaulay2().absolute_filename()
Out[2]: '.../bin/M2'
Using the Python interface:
$ pipx run --pip-args="--prefer-binary" --spec "passagemath-macaulay2[test]" ipython
In [1]: from sage.all__sagemath_macaulay2 import *
In [2]: R = macaulay2('QQ[x, y]'); R
Out[2]: QQ[x..y]
In [3]: S = R / macaulay2('ideal {x^2 - y}'); S
Out[3]:
QQ[x..y]
--------
2
x - y
In [4]: S.gens()
Out[4]: {x, y}
Available as extras, from other distributions¶
Jupyter kernel¶
pip install "passagemath-macaulay2[jupyterkernel]"
installs the kernel for use in the Jupyter notebook and JupyterLab
pip install "passagemath-macaulay2[notebook]"
installs the kernel and the Jupyter notebook
pip install "passagemath-macaulay2[jupyterlab]"
installs the kernel and JupyterLab
Type¶
optional
Dependencies¶
$(PYTHON)
$(PYTHON_TOOLCHAIN)
cython: C-Extensions for Python, an optimizing static compiler
macaulay2: System for computing in commutative algebra, algebraic geometry and related fields
mpc: Arithmetic of complex numbers with arbitrarily high precision and correct rounding
mpfr: Multiple-precision floating-point computations with correct rounding
sagemath_categories: Sage categories, basic rings, polynomials, functions
sagemath_objects: Sage objects, elements, parents, categories, coercion, metaclasses
Version Information¶
package-version.txt:
10.6.29
version_requirements.txt:
passagemath-macaulay2 ~= 10.6.29.0
Installation commands¶
$ pip install passagemath-macaulay2~=10.6.29.0
$ sage -i sagemath_macaulay2
However, these system packages will not be used for building Sage
because spkg-configure.m4
has not been written for this package;
see upstream Issue #27330 for more information.