Post a reply
Username:
Note:If not registered, provide any username. For more comfort, register here.
Subject:
Message body:
Enter your message here, it may contain no more than 60000 characters. 

Smilies
:D :) :( :o :shock: :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:
Font size:
Font colour
Options:
BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON
Disable BBCode
Disable smilies
Do not automatically parse URLs
Confirmation of post
To prevent automated posts the board requires you to enter a confirmation code. The code is displayed in the image you should see below. If you are visually impaired or cannot otherwise read this code please contact the %sBoard Administrator%s.
Confirmation code:
Enter the code exactly as it appears. All letters are case insensitive, there is no zero.
   

Topic review - Largest monomial subideal of an polynomial ideal
Author Message
  Post subject:  Re: Largest monomial subideal of an polynomial ideal  Reply with quote
By the reference, your question became clear.
There has not been a command yet.
Did you manage to implement it?

Multi-homogenization may be a bit tricky, so here is an proc.

Note that the library elim.lib has to be loaded.
Code:
proc monomid(ideal I)
"USAGE: monomid(I); I ideal 
RETURN: ideal, the largest monomial subideal in I
NOTE: implements Algorithm 4.4.2
        Saito, Sturmfels, Takayama,
        Groebner Deformations of Hypergeometric Differential Equations
EXAMPLE: example monomid; shows an example
"
{
  def d = basering;
  int n = nvars(basering);
  int i,j,k;
   
  intvec v,w;
 
  // step 0 extend ring

  list rl = ringlist(d);
  for (i=1;i<=n;i++)
  {
    rl[2]= insert(rl[2],"@u("+string(i) +")",n+i-1);
  }
  def rnew = ring(rl);
  setring rnew;
  poly g,h;
  ideal I = fetch(d,I);
 
  // step 1 multi-homogenize
   
  for (i=1;i<=ncols(I);i++)  // each ideal entry
  {
    h = I[i];
    v = 0:2*n;
   
    for (k=1;k<=n;k++)   // determine multidegree
    {
      v[k] = 1;
      w[k] = deg(h,v);   // deg w.r.t. e_k
      v = 0:2*n;
    }
    // w is the multi-degree
   
    for(j=1;j<=size(h);j++)    // each term
    {
      v = leadexp(h[j]);
      v = 0:n,intvec(w[1..n])-intvec(v[1..n]);  // exponent vector
      g = g + h[j]*monomial(v);
    }
    I[i] = g;
  }
  // step 2 saturated quotient

  option(redSB);
  h = 1;
  for (i=1;i<=n;i++) { h = h * var(n+i);}
  I = sat(I,h)[1];
 
  // step 3 select monomials
  ideal J;
  j=0;
 
  for (i=1;i<=ncols(I);i++)
  {
    if (size(I[i])==1 and deg(I[i])>0)
    {
      j++;
      J[j]=I[i];
    }
  }
  setring d;
  ideal J = fetch(rnew,J);
return(J);
}


Two examples:
Code:
> LIB "elim.lib";
> ring r=0,(x,y,z),dp;

> // The example in Saito' et al. book on p. 176
>  ideal J = x+y+z,x2+y2+z2,x3+y3+z3;
> momomid(J);
_[1]=z3
_[2]=xyz
_[3]=y3
_[4]=x3
_[5]=y2z2
_[6]=x2z2
_[7]=x2y2

> // The example discussed in this forum:
> ideal I = x^2+y, xy, x^2, z+y;
> monomid(I);
_[1]=z
_[2]=y
_[3]=x2


which shows that your answer is correct.
-----------------

Ch. Gorzel
Post Posted: Thu Mar 03, 2011 1:56 pm
  Post subject:  Re: Largest monomial subideal of an polynomial ideal  Reply with quote
gorzel wrote:
What do you intend to get?

Supposed I = <x^2+y, xy, x^2, z+y>

then the result should be <xy, x^2> ?


The largest monomial ideal in RR[x,y,z] which is contained in I=<x^2+y,xy,x^2,z+y> is J=<x^2,y,z>.
It can be calculated by Algorithm 4.4.2 of the book "Groebner deformations of hypergeometric differential equations" of Saito, Sturmfels and Takayama, which computes a multi-homogenization H of I (w.r.t. new variables u,v,w) and a reduced GB of the saturation ideal H : <u,v,w>.
Post Posted: Fri Feb 11, 2011 2:43 pm
  Post subject:  Re: Largest monomial subideal of an polynomial ideal  Reply with quote
What do you intend to get?

Supposed I = <x^2+y, xy, x^2, z+y>

then the result should be <xy, x^2> ?
Post Posted: Wed Feb 09, 2011 4:26 pm
  Post subject:  Largest monomial subideal of an polynomial ideal  Reply with quote
Hi,
given a polynomial ideal, is there a function that gives me the generators of the largest monomial subideal?
Thanks!
Post Posted: Fri Feb 04, 2011 1:53 pm


It is currently Fri May 13, 2022 10:59 am
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group