Let M be an R = k[x1,...,xn]/J-module (for example an ideal), and let mm=ideal vars R = (x1,...,xn), and suppose that M is a homomorphic image of the free module F. Let T be the Rees algebra of M. The call specialFiberIdeal(M) returns the ideal J⊂ Sym(F) such that Sym(F)/J ≅ T/mm*T; that is, specialFiberIdeal(M) = reesIdeal(M)+mm*Sym(F).
The name derives from the fact that Proj(T/mm*T) is the special fiber of the blowup of Spec R along the subscheme defined by I.
With the default Trim => true, the computation begins by computing minimal generators, which may result in a change of generators of M
i1 : R=QQ[a..h] o1 = R o1 : PolynomialRing |
i2 : M=matrix{{a,b,c,d},{e,f,g,h}} o2 = | a b c d | | e f g h | 2 4 o2 : Matrix R <--- R |
i3 : analyticSpread minors(2,M) o3 = 5 |
i4 : specialFiberIdeal minors(2,M) o4 = ideal(Z Z - Z Z + Z Z ) 2 3 1 4 0 5 o4 : Ideal of QQ[Z , Z , Z , Z , Z , Z ] 0 1 2 3 4 5 |
If M is an n x n+1 matrix in n variables, and all generators have the same degree d, with ell = n as expected, then the special fiber is a rational hypersurface of degree D := dn, and the reduction number is D-1.
i5 : n = 2 o5 = 2 |
i6 : x = symbol x o6 = x o6 : Symbol |
i7 : S = ZZ/32003[x_1..x_n] o7 = S o7 : PolynomialRing |
i8 : M = matrix{{x_1,x_2,0},{0,x_1,x_2}} o8 = | x_1 x_2 0 | | 0 x_1 x_2 | 2 3 o8 : Matrix S <--- S |
i9 : I = minors(n,M) 2 2 o9 = ideal (x , x x , x ) 1 1 2 2 o9 : Ideal of S |
i10 : specialFiber(I,I_0) ZZ -----[w , w , w ] 32003 0 1 2 o10 = ----------------- 2 w - w w 1 0 2 o10 : QuotientRing |
Special fiber is here defined to be the fiber of the blowup over the subvariety defined by the vars of the original ring. Note that if the original ring is a tower ring, this might not be the fiber over the closed point! To get the closed fiber, flatten the base ring first.