+ M2 --no-readline --print-width 176 Macaulay 2, version 1.2 with packages: Elimination, IntegralClosure, LLLBases, PrimaryDecomposition, ReesAlgebra, SchurRings, TangentCone i1 : R=QQ[a..d]; i2 : I = ideal(a*c-b^2, a*d-b*c, b*d-c^2); i3 : loadPackage("StatePolytope"); i4 : toString initialIdeals(I) o4 = {{b*d, a*d, a*c}, {c^2, a*d, a*c}, {c^2, b*c, a*c, a^2*d}, {c^2, b*c, b^3, a*c}, {c^2, b*c, b^2}, {b*d, b^2, a*d}, {b*d, b*c, b^2, a*d^2}, {c^3, b*d, b*c, b^2}} --Notice: each of the initial ideals is generated in degrees <= 3 i5 : statePolytope(2,I) polymake: used package cddlib Implementation of the double description method of Motzkin et al. Copyright by Komei Fukuda. http://www.ifor.math.ethz.ch/~fukuda/cdd_home/cdd.html VERTICES 1 2 1 1 2 1 2 0 3 1 1 1 1 4 0 1 0 3 3 0 1 1 3 0 2 1 0 4 1 1 o5 = {{2, 1, 1, 2}, {2, 0, 3, 1}, {1, 1, 4, 0}, {0, 3, 3, 0}, {1, 3, 0, 2}, {0, 4, 1, 1}} o5 : List i6 : statePolytope(3,I) polymake: used package cddlib Implementation of the double description method of Motzkin et al. Copyright by Komei Fukuda. http://www.ifor.math.ethz.ch/~fukuda/cdd_home/cdd.html VERTICES 1 9 6 6 9 1 9 3 12 6 1 7 5 14 4 1 5 8 14 3 1 3 12 12 3 1 6 12 3 9 1 4 14 5 7 1 3 14 8 5 o6 = {{9, 6, 6, 9}, {9, 3, 12, 6}, {7, 5, 14, 4}, {5, 8, 14, 3}, {3, 12, 12, 3}, {6, 12, 3, 9}, {4, 14, 5, 7}, {3, 14, 8, 5}} o6 : List --To see State_m(I) for larger m, see Kapranov-Sturmfels-Zelevinsky, page 202. Note that they compute state polytopes using monomials outside the initial ideal rather than inside, but it is simple to convert between the two conventions: simply subtract each vertex from the vector ((m+N-1)!*m)/(m!*N!) (1,...,1)