Binomial Primary Decomposition


This is the homepage of Binomials.m2, a package for Macaulay2 to compute primary and other decompositions of binomial ideals. The current implementation is for pure difference ideals in characteristic zero.

The package was first described in Decomposing Binomial Ideals (AISM, 62(4), (2010), p. 727-745) arxiv:0906.4873. This paper in the Macaulay2 journal explains some of the implemented improvements.

You can send me your computational challenges: thomas.kahle (at)


Binomials and Cyclotomic are shipped together with Macaulay 2. No need to download anything if you have this version.


To use Binomials.m2 please install the latest version of Macaulay 2. It might work with earlier versions, please email me if you absolutely need to use an earlier version of M2. To use the package execute

load "Binomials.m2"

An online help is included in the package. It can be accessed from within M2 by typing

help "Binomials"


  • Binomial ideals (D. Eisenbud/B.Sturmfels, 1996).
  • Combinatorics of binomial primary decomposition (Dickenstein,Matusevich,Miller, 2008)
  • Cellular Binomial Ideals. Primary Decomposition of Binomial Ideals (I. Ojeda, R. Piedra-Sanchez, 2000)
  • The chain property for the associated primes of A-graded ideals (K. Altmann, 2000)
  • Decompositions of commutative monoid congruences and binomial ideals (Kahle/Miller, 2014)

Latest Source-Code

The very latest source code of Binomials is hosted on You can download it including the full history using the version control system git. Note: If you just want to use Binomials there is no need to download these files. Macaulay 2 version 1.4 or later brings everything you need.


(c) Thomas Kahle - 04 Sep 2023
Icons: CC-BY from Double J Design