# GroebnerStrata -- a package for creating families of ideals with the same initial ideal

## Description

The GroebnerStrata package is designed to compute, given a monomial ideal in a polynomial ring, (and a term order, coming from the polynomial ring), a family of homogeneous ideals all with the given monomial ideal as its lead term (initial) ideal.

The GroebnerStrata package is designed for computing homogeneous strata and parameter families for monomial ideals in polynomial rings. In certain instances homogeneous strata can be used to compute local coordinates on Hilbert Schemes.

Here is an example of the basic use of the package. We compute the Groebner family of the ideal $(a^2, ab, b^2, ac)$. This is an ideal in a polynomial ring with variables the same as $S$, and whose coefficient ring is a polynomial ring containing all of the parameters. The groebnerStratum(Ideal) function returns the ideal in the parameters of the locus of parameters, for which the given family is a Groebner basis.

 i1 : kk = ZZ/101; i2 : S = kk[a..d]; i3 : M = ideal"a2,ab,b2,ac"; o3 : Ideal of S i4 : F = groebnerFamily M; o4 : Ideal of kk[t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t ][a..d] 6 5 12 2 4 11 18 24 1 3 8 10 17 23 7 9 14 16 20 22 13 15 19 21 i5 : netList F_* +-------------------------------------------------------+ | 2 2 2 | o5 = |a + t b*c + t a*d + t c + t b*d + t c*d + t d | | 1 3 2 4 5 6 | +-------------------------------------------------------+ | 2 2 | |a*b + t b*c + t a*d + t c + t b*d + t c*d + t d | | 7 9 8 10 11 12 | +-------------------------------------------------------+ | 2 2 2 | |b + t b*c + t a*d + t c + t b*d + t c*d + t d | | 13 15 14 16 17 18 | +-------------------------------------------------------+ | 2 2| |a*c + t b*c + t a*d + t c + t b*d + t c*d + t d | | 19 21 20 22 23 24 | +-------------------------------------------------------+ i6 : J = trim groebnerStratum F o6 = ideal (t - t + t t , t t - t t t , t - t + t t - t t 7 20 13 19 22 15 15 19 21 10 23 22 13 9 19 ------------------------------------------------------------------------ 2 + t t - t t + t t - t t t , t + t t , t + 2t t - 16 19 15 19 20 21 13 19 21 8 14 19 1 20 19 ------------------------------------------------------------------------ 2 t t , t t + 50t t - 50t t t - t t t - 50t t t + 13 19 9 22 16 22 22 13 21 9 19 21 16 19 21 ------------------------------------------------------------------------ 2 50t t t , t + 50t t - t t - 50t t t - 50t t t + 13 19 21 24 16 22 23 21 22 13 21 16 19 21 ------------------------------------------------------------------------ 2 2 2 t t + 50t t t , t + t - t t - t t + t t + t t t - 20 21 13 19 21 18 9 9 16 3 15 23 15 9 15 19 ------------------------------------------------------------------------ 2 2 t t t + t t - t t + t t t - 2t t t + t t t t + 16 15 19 15 19 17 21 9 13 21 20 15 21 13 15 19 21 ------------------------------------------------------------------------ 2 t t , t - t t + t t + t t - t t t - t t t , t + 14 21 11 9 20 14 22 17 19 20 15 19 14 19 21 4 ------------------------------------------------------------------------ 2 3 2t t - t t + 2t t - 2t t t - t t + t t - 4t t t + 20 22 3 19 23 19 22 13 19 16 19 15 19 20 19 21 ------------------------------------------------------------------------ 2 2 2 2t t t , t + t - t t , t t + 50t t t - 2t t t - 13 19 21 2 20 14 19 17 22 16 22 13 14 22 21 ------------------------------------------------------------------------ 2 2 2 2 50t t t - t t t - 50t t t t + 2t t t + 50t t t , 22 13 21 17 19 21 16 13 19 21 14 19 21 13 19 21 ------------------------------------------------------------------------ 2 t t - 2t t + t t + t t t + 4t t t - t t t + 3 22 23 22 22 13 16 22 19 20 22 21 3 19 21 ------------------------------------------------------------------------ 2 2 2 2 2t t t - 3t t t t - t t t - 4t t t + 2t t t , t - 23 19 21 22 13 19 21 16 19 21 20 19 21 13 19 21 12 ------------------------------------------------------------------------ 2 t t - 50t t t - t t + t t t + t t t - 2t t t - 23 9 16 22 13 9 19 9 16 19 3 15 19 23 15 19 ------------------------------------------------------------------------ 2 2 2 3 2 t t t + t t t - t t + t t t + t t t + 50t t t + 9 15 19 16 15 19 15 19 9 20 21 14 22 21 22 13 21 ------------------------------------------------------------------------ 2 t t t - t t t t + 50t t t t + 3t t t t - t t t t 17 19 21 9 13 19 21 16 13 19 21 20 15 19 21 13 15 19 21 ------------------------------------------------------------------------ 2 2 2 2 - 2t t t - 50t t t , t - t t + 2t t - 2t t t - t t + 14 19 21 13 19 21 5 3 20 23 20 14 22 19 17 19 ------------------------------------------------------------------------ 2 2 2 2 2 t t t - 2t t + 2t t t , t - t t + t + t t t - t t 20 15 19 20 21 14 19 21 6 3 23 23 16 20 22 14 22 ------------------------------------------------------------------------ 2 2 2 2 2 3 - t t t t + t t - t t t - t t t + 2t t t + t t t - 16 22 13 19 9 19 9 16 19 3 15 19 23 15 19 9 15 19 ------------------------------------------------------------------------ 3 2 4 t t t + t t + t t t - 2t t t - t t t t - t t t t 16 15 19 15 19 3 20 21 23 20 21 20 22 13 21 16 20 19 21 ------------------------------------------------------------------------ 2 2 2 2 2 + t t t t - t t t + t t t t + t t t t - 3t t t t 22 13 19 21 17 19 21 9 13 19 21 16 13 19 21 20 15 19 21 ------------------------------------------------------------------------ 3 2 2 2 2 2 2 2 2 + t t t t + t t + t t t t + 2t t t - t t t ) 13 15 19 21 20 21 20 13 19 21 14 19 21 13 19 21 o6 : Ideal of kk[t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t , t ] 6 5 12 2 4 11 18 24 1 3 8 10 17 23 7 9 14 16 20 22 13 15 19 21

The ideal of the parameter space of all homogeneous ideals with this lead term ideal is an ideal in 24 variables. Often, these parameter ideals are in too many variables to easily analyze them. But in this case we can determine the irreducible components of the ideal $J$. There are two components, of dimensions 8 and 11. Note that they are both rational varieties.

 i7 : compsJ = decompose J; i8 : compsJ = compsJ/trim; i9 : compsJ/dim o9 = {11, 8} o9 : List i10 : netList compsJ_0_* +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ o10 = |t - t t | | 22 19 21 | +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ |t - t + t t | | 7 20 13 19 | +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 | |t - t - t t + t t - t t + t t | | 10 23 9 19 16 19 15 19 20 21 | +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ |t + t t | | 8 14 19 | +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 | |t + 2t t - t t | | 1 20 19 13 19 | +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 | |t - t t + t t | | 24 23 21 20 21 | +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 2 2 2 | |t + t - t t - t t + t t + t t t - t t t + t t - t t + t t t - 2t t t + t t t t + t t | | 18 9 9 16 3 15 23 15 9 15 19 16 15 19 15 19 17 21 9 13 21 20 15 21 13 15 19 21 14 21 | +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ |t - t t + t t - t t t | | 11 9 20 17 19 20 15 19 | +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 3 | |t - t t + 2t t - t t + t t - 2t t t | | 4 3 19 23 19 16 19 15 19 20 19 21 | +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 2 | |t + t - t t | | 2 20 14 19 | +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 2 2 2 3 2 2 | |t - t t - t t + t t t + t t t - 2t t t - t t t + t t t - t t + t t t + t t t - t t t t + 3t t t t - t t t t - t t t | | 12 23 9 9 19 9 16 19 3 15 19 23 15 19 9 15 19 16 15 19 15 19 9 20 21 17 19 21 9 13 19 21 20 15 19 21 13 15 19 21 14 19 21 | +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 2 2 | |t - t t + 2t t - t t + t t t - 2t t | | 5 3 20 23 20 17 19 20 15 19 20 21 | +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 2 2 2 2 2 3 3 2 4 2 2 2 3 2 2 2 2 | |t - t t + t + t t - t t t - t t t + 2t t t + t t t - t t t + t t + t t t - 2t t t - t t t + t t t t - 3t t t t + t t t t + t t + t t t | | 6 3 23 23 9 19 9 16 19 3 15 19 23 15 19 9 15 19 16 15 19 15 19 3 20 21 23 20 21 17 19 21 9 13 19 21 20 15 19 21 13 15 19 21 20 21 14 19 21| +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ i11 : netList compsJ_1_* +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ o11 = |t | | 15 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ |t + 50t - 50t t | | 9 16 13 21 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ |t - t + t t | | 7 20 13 19 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 | |t + 50t t - 2t t - 50t t | | 17 16 13 14 21 13 21 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ |t - t + t t - 50t t + t t + 50t t t | | 10 23 22 13 16 19 20 21 13 19 21 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ |t + t t | | 8 14 19 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ |t - 2t + t t + t t + 4t t - 2t t t | | 3 23 22 13 16 19 20 21 13 19 21 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 | |t + 2t t - t t | | 1 20 19 13 19 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 2 | |t + 50t t - t t - 50t t t - 50t t t + t t + 50t t t | | 24 16 22 23 21 22 13 21 16 19 21 20 21 13 19 21 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 2 2 2 | |t + 25t - t t - 25t t | | 18 16 14 21 13 21 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 | |t + 50t t + t t - 50t t t - 50t t t + t t t + 50t t t | | 11 16 20 14 22 16 13 19 20 13 21 14 19 21 13 19 21 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ |t + 2t t - t t t | | 4 20 22 22 13 19 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 2 | |t + t - t t | | 2 20 14 19 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 2 2 2 2 | |t + 50t t - 50t t t - 25t t - 50t t t + t t t - 50t t t + 50t t t + 50t t t t + 50t t t - 25t t t | | 12 23 16 16 22 13 16 19 16 20 21 14 22 21 23 13 21 22 13 21 16 13 19 21 20 13 21 13 19 21 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 2 2 2 | |t + t t t + t t t - 2t t t + 50t t t + 2t t - 2t t t t - 50t t t | | 5 20 22 13 16 20 19 14 22 19 16 13 19 20 21 20 13 19 21 13 19 21 | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | 2 2 2 2 2 2 2 2 2 2 2 2 | |t - t + t t t - t t + t t t + t t t - t t t t + 25t t + 4t t t - 2t t t t - 2t t t t - 2t t t t + t t t t + t t t t - 3t t + 3t t t t - 26t t t | | 6 23 16 20 22 14 22 23 22 13 23 16 19 16 22 13 19 16 19 23 20 21 20 22 13 21 16 20 19 21 23 13 19 21 22 13 19 21 16 13 19 21 20 21 20 13 19 21 13 19 21| +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

This tells us that there are 2 components (at least over the given field). Their dimensions are 11, 8.

We can find random points on each component, since these components are rational.

 i12 : pt1 = randomPointOnRationalVariety compsJ_0 o12 = | -14 48 41 -32 -39 30 48 36 2 -29 -30 -23 19 19 -10 -29 -8 -22 24 -13 ----------------------------------------------------------------------- -36 -30 -29 -10 | 1 24 o12 : Matrix kk <--- kk i13 : pt2 = randomPointOnRationalVariety compsJ_1 o13 = | -39 -22 11 26 -28 31 38 24 -31 -16 -16 -7 -41 -24 18 -17 19 34 -38 39 ----------------------------------------------------------------------- -16 0 -47 21 | 1 24 o13 : Matrix kk <--- kk i14 : F1 = sub(F, (vars S)|pt1) 2 2 2 o14 = ideal (a + 2b*c - 32c - 29a*d - 39b*d + 48c*d - 14d , a*b - 10b*c - ----------------------------------------------------------------------- 2 2 2 2 30c - 29a*d - 23b*d + 30c*d + 41d , b - 36b*c - 8c - 30a*d - 22b*d + ----------------------------------------------------------------------- 2 2 2 19c*d + 48d , a*c - 29b*c + 24c - 10a*d - 13b*d + 19c*d + 36d ) o14 : Ideal of S i15 : F2 = sub(F, (vars S)|pt2) 2 2 2 o15 = ideal (a - 31b*c + 26c - 16a*d - 28b*d - 22c*d - 39d , a*b + 18b*c - ----------------------------------------------------------------------- 2 2 2 2 16c - 17a*d - 7b*d + 31c*d + 11d , b - 16b*c + 19c + 34b*d - 41c*d + ----------------------------------------------------------------------- 2 2 2 38d , a*c - 47b*c - 38c + 21a*d + 39b*d - 24c*d + 24d ) o15 : Ideal of S i16 : decompose F1 2 2 2 o16 = {ideal (a - 29b + 24c - 44d, b - 36b*c - 8c + 17b*d + 32c*d + 41d ), ----------------------------------------------------------------------- ideal (c - 10d, b + 33d, a + 10d)} o16 : List i17 : decompose F2 o17 = {ideal (b - 42c + 10d, a + 8c - 3d), ideal (b + 26c + 24d, a - 28c - ----------------------------------------------------------------------- 29d)} o17 : List

Note, the general element of one component is a plane conic union a point. (The dimension of the locus of all such is: (choice of plane) + (choice of degree 2 in plane) + choice of point. This is 3 + 5 + 3 = 11.

The other component consists of two skew lines. This has dimension (choice of line) + (choice of line). This is 4 + 4 = 8. Also notice that the 2 skew lines do not have to be defined over the base field, as in this case.

## Version

This documentation describes version 0.9 of GroebnerStrata.

## Source code

The source code from which this documentation is derived is in the file GroebnerStrata.m2.

## Exports

• Functions and commands
• Methods
• "findWeightConstraints(Ideal,List)" -- see findWeightConstraints -- returns a matrix of weight constraints
• "findWeightVector(Ideal,List)" -- see findWeightVector -- returns a weight vector
• "groebnerFamily(Ideal)" -- see groebnerFamily -- computes families of ideals with a specified initial ideal
• "groebnerFamily(Ideal,List)" -- see groebnerFamily -- computes families of ideals with a specified initial ideal
• "groebnerStratum(Ideal)" -- see groebnerStratum -- compute the ideal where a given is a Groebner basis
• "nonminimalMaps(Ideal)" -- see nonminimalMaps -- find the degree zero maps in the Schreyer resolution of an ideal
• randomPointOnRationalVariety(Ideal) -- find a random point on a variety that can be detected to be rational
• randomPointsOnRationalVariety(Ideal,ZZ) -- find random points on a variety that can be detected to be rational
• "smallerMonomials(Ideal)" -- see smallerMonomials -- returns the standard monomials smaller but of the same degree as given monomial(s)
• "smallerMonomials(Ideal,RingElement)" -- see smallerMonomials -- returns the standard monomials smaller but of the same degree as given monomial(s)
• "standardMonomials(Ideal)" -- see standardMonomials -- computes standard monomials
• "standardMonomials(List,Ideal)" -- see standardMonomials -- computes standard monomials
• "standardMonomials(ZZ,Ideal)" -- see standardMonomials -- computes standard monomials
• "tailMonomials(Ideal)" -- see tailMonomials -- find tail monomials
• "tailMonomials(Ideal,RingElement)" -- see tailMonomials -- find tail monomials
• Symbols
• AllStandard -- boolean option for determining the use of all standard or smaller standard monomials
• Minimalize -- boolean option for determining whether excess parameters will be elimnated

## For the programmer

The object GroebnerStrata is .