A module or ideal M is said to be “of linear type” if the natural map from the symmetric algebra of M to the Rees algebra of M is an isomorphism. It is known, for example, that any complete intersection ideal is of linear type.
This routine computes the reesIdeal of M. Giving the element f computes the reesIdeal in a different manner, which is sometimes faster, sometimes slower.
i1 : S = QQ[x_0..x_4] o1 = S o1 : PolynomialRing |
i2 : i = monomialCurveIdeal(S,{2,3,5,6})
2 3 2 2 2 2
o2 = ideal (x x - x x , x - x x , x x - x x , x - x x , x x - x x , x x
2 3 1 4 2 0 4 1 2 0 3 3 2 4 1 3 0 4 0 3
------------------------------------------------------------------------
2 2 3 2
- x x , x x - x x x , x - x x )
1 4 1 3 0 2 4 1 0 4
o2 : Ideal of S
|
i3 : isLinearType i o3 = false |
i4 : isLinearType(i, i_0) o4 = false |
i5 : I = reesIdeal i
o5 = ideal (x w - x w + x w , x w - x w - w , x w - x w + x w , x w -
2 0 3 1 4 2 1 0 3 2 5 0 0 1 1 2 2 0 4
------------------------------------------------------------------------
2
x w - x w , x w - x w - x w , x w + x w - x w , x x w + x w -
1 5 4 7 0 3 3 5 4 6 4 2 1 3 3 4 0 4 2 1 6
------------------------------------------------------------------------
2 2
x w , x w - x w + x w + x w , x w + x w - x w , x x w - x x w -
3 7 3 2 2 4 3 5 4 6 1 2 0 6 2 7 1 4 1 2 4 2
------------------------------------------------------------------------
2 2
x w + x w , x x w - x x w - x w + x w - x w , x w - x w - x w +
1 4 3 6 0 4 1 1 3 2 1 5 2 6 4 7 3 0 4 1 2 3
------------------------------------------------------------------------
2 2
x w , x w w + w w - w w , x x w - w - x w w + w w , x x w w -
4 4 4 2 5 4 6 3 7 1 4 2 6 4 1 7 4 7 3 4 0 2
------------------------------------------------------------------------
2
x w w + w - w w )
4 1 4 4 3 6
o5 : Ideal of S[w , w , w , w , w , w , w , w ]
0 1 2 3 4 5 6 7
|
i6 : select(I_*, f -> first degree f > 1)
2 2
o6 = {x w w + w w - w w , x x w - w - x w w + w w , x x w w - x w w +
4 2 5 4 6 3 7 1 4 2 6 4 1 7 4 7 3 4 0 2 4 1 4
------------------------------------------------------------------------
2
w - w w }
4 3 6
o6 : List
|
i7 : S = ZZ/101[x,y,z] o7 = S o7 : PolynomialRing |
i8 : for p from 1 to 5 do print isLinearType (ideal vars S)^p true false false false false |