homogenize

homogenize(m,v) -- homogenize the ring element, vector, matrix, or module m using the variable v in the ring of m.

homogenize(m,v,w) -- homogenize m using the variable v, so that the result is homogeneous with respect to the given list w of integers provided as weights for the variables.

     i1 = R = ZZ/101[x,y,z,Degrees => {1,2,3}]
     
     o1 = R
     
     o1 : PolynomialRing
     
     i2 = f = 1 + y + z^2
     
           2
     o2 = z  + y + 1
     
     o2 : R
     
     i3 = homogenize(f,x)
     
           6    4      2
     o3 = x  + x  y + z 
     
     o3 : R
     
     i4 = homogenize(f,x,{1,0,-1})
     
           2  2
     o4 = x  z  + y + 1
     
     o4 : R
     

The weights that may be used are limited (roughly) to the range -2^30 .. 2^30.

Caveats and bugs: If the homogenization overflows the monomial, this is not reported as an error

Go to main index.

Go to concepts index.