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.