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
2
o5 = ideal (x w - x w + x w , x w - x w + x w , x w + x w - x w ,
2 0 3 1 4 2 0 0 1 1 2 2 4 2 1 3 3 4
------------------------------------------------------------------------
2 2
x x w + x w - x w , x w + x w - x w , x w + x w - x w , x x w -
0 4 2 1 5 3 6 3 2 0 3 2 4 1 2 0 5 2 6 1 4 1
------------------------------------------------------------------------
2 2
x x w - x w + x w , x x w - x x w - x w + x w , x w - x w - x w
2 4 2 1 4 3 5 0 4 1 1 3 2 0 4 2 5 3 0 4 1 2 3
------------------------------------------------------------------------
2 2 2
+ x w , x x w - x w + x w , x w - x x w - x w + x w , x x w - w -
4 4 1 3 0 2 4 4 5 1 0 1 3 2 0 4 4 6 1 4 2 5
------------------------------------------------------------------------
2 2
x w w + w w , x x w w - x w w + w - w w , x x w w - x x w + w w -
4 1 6 4 6 3 4 0 2 4 1 4 4 3 5 1 4 0 2 3 4 2 4 5
------------------------------------------------------------------------
w w )
3 6
o5 : Ideal of S[w ..w ]
0 6
|
i6 : select(I_*, f -> first degree f > 1)
2 2 2
o6 = {x x w - w - x w w + w w , x x w w - x w w + w - w w , x x w w -
1 4 2 5 4 1 6 4 6 3 4 0 2 4 1 4 4 3 5 1 4 0 2
------------------------------------------------------------------------
2
x x w + w w - w w }
3 4 2 4 5 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 |
The object isLinearType is a method function with options.