baseLocusOfMap -- Computes base locus of a map from a projective variety to projective space

Synopsis

• Usage:
I = baseLocusOfMap(M)
I = baseLocusOfMap(L)
I = baseLocusOfMap(h)
• Inputs:
• M, , Row matrix whose entries correspond to the coordinates of your map to projective space.
• L, a list, A list whose entries correspond to the coordinates of your map to projective space.
• h, , A ring map corresponding to a map of projective varieties.
• Optional inputs:
• SaturateOutput => ..., default value true, If false, certain functions will not saturate their output.
• Outputs:
• I, an ideal, The saturated defining ideal of the baselocus of the corresponding maps.

Description

This defines the locus where a given map of projective varieties is not defined. If the option SaturateOutput is set to false, the output will not be saturated. The default value is true. Consider the following rational map from $P^2$ to $P^1$

 i1 : R = QQ[x,y,z]; i2 : S = QQ[a,b]; i3 : f = map(R, S, {x,y}); o3 : RingMap R <--- S i4 : baseLocusOfMap(f) o4 = ideal (y, x) o4 : Ideal of R

Observe it is not defined at the point [0:0:1], which is exactly what one expects. However, we can restrict the map to a curve on $P^2$ and then it will be defined everywhere.

 i5 : R=QQ[x,y,z]/(y^2*z-x*(x-z)*(x+z)); i6 : S=QQ[a,b]; i7 : f=map(R,S,{x,y}); o7 : RingMap R <--- S i8 : baseLocusOfMap(f) o8 = ideal 1 o8 : Ideal of R

Let us next consider the quadratic Cremona transformation.

 i9 : R=QQ[x,y,z]; i10 : S=QQ[a,b,c]; i11 : f=map(R,S,{y*z,x*z,x*y}); o11 : RingMap R <--- S i12 : J=baseLocusOfMap(f) o12 = ideal (y*z, x*z, x*y) o12 : Ideal of R i13 : minimalPrimes J o13 = {ideal (y, x), ideal (z, x), ideal (z, y)} o13 : List

The base locus is exactly the three points one expects.

Ways to use baseLocusOfMap :

• "baseLocusOfMap(List)"
• "baseLocusOfMap(Matrix)"
• "baseLocusOfMap(RingMap)"

For the programmer

The object baseLocusOfMap is .