next | previous | forward | backward | up | index | toc

# nonCartierLocus -- the non-Cartier locus of a Weil divisor

## Synopsis

• Usage:
nonCartierLocus( D, IsGraded=>b)
• Inputs:
• Optional inputs:
• IsGraded => , default value false, specify that we are computing this locus on a projective variety
• Outputs:

## Description

This function returns an ideal which vanishes on the locus where D is not Cartier.

 i1 : R = QQ[x, y, u, v]/ideal(x * y - u * v); i2 : D = divisor({1, -3, -5, 8}, {ideal(x, u), ideal(y, v), ideal(x, v), ideal(y, u)}) o2 = 8*Div(y, u) + Div(x, u) + -3*Div(y, v) + -5*Div(x, v) o2 : WeilDivisor on R i3 : nonCartierLocus( D ) 5 4 4 4 2 3 3 3 2 3 2 3 3 2 o3 = ideal (v , u*v , y*v , x*v , u v , y*u*v , x*u*v , y v , x v , u v , ------------------------------------------------------------------------ 2 2 2 2 2 2 2 2 3 2 3 2 4 3 3 2 2 y*u v , x*u v , y u*v , x u*v , y v , x v , u v, y*u v, x*u v, y u v, ------------------------------------------------------------------------ 2 2 3 3 4 4 5 4 4 2 3 2 3 3 2 3 2 x u v, y u*v, x u*v, y v, x v, u , y*u , x*u , y u , x u , y u , x u , ------------------------------------------------------------------------ 4 4 5 5 y u, x u, y , x ) o3 : Ideal of R

If the option IsGraded is set to true (by default it is false), it saturates with respect to the homogeneous maximal ideal.

 i4 : R = QQ[x, y, u, v]/ideal(x * y - u * v); i5 : D = divisor({1, -3, -5, 8}, {ideal(x, u), ideal(y, v), ideal(x, v), ideal(y, u)}) o5 = 8*Div(y, u) + Div(x, u) + -3*Div(y, v) + -5*Div(x, v) o5 : WeilDivisor on R i6 : nonCartierLocus( D, IsGraded => true ) o6 = ideal 1 o6 : Ideal of R

The output value of this function is stored in the divisor's cache with the value of the last IsGraded option. If you change the IsGraded option, the value will be recomputed.