next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
StatePolytope :: StatePolytope

StatePolytope -- computes state polytopes of ideals


StatePolytope computes state polytopes of ideals using the programs gfan, M2, and polymake. Specifically, it computes Statem(I) or State(I) as defined in Sturmfels's book Groebner bases and convex polytopes, page 14. There is also a function for testing GIT stability of an ideal in a polynomial ring with respect to action of the maximal torus scaling the variables.

We assume that the user has gfan version 0.3 or higher on his or her system. The default assumption is that the command to run gfan is gfan, but this can be changed in the package configuration if necessary. The user also needs polymake version 2.3-1 or higher installed on his or her system, and it must be run by this command. Finally, the user is responsible for making sure the ideal of study is supported by gfan. In version 0.3 this means the ideal must be in a polynomial ring over QQ or ZZ/p with p < 32749, and no variable's name should be a substring of another's.



This documentation describes version 1.2 of StatePolytope.

Source code

The source code from which this documentation is derived is in the file StatePolytope.m2. The auxiliary files accompanying it are in the directory StatePolytope/.


  • Functions and commands
    • initialIdeals -- calls gfan and returns the list of initial ideals
    • isStable -- determines whether the mth Hilbert point of I is GIT stable
    • statePolytope -- computes state polytopes of ideals