next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
Divisor :: isSNC

isSNC -- whether the divisor is simple normal crossings

Synopsis

Description

Returns true if the divisor is simple normal crossings, this includes checking that the ambient ring is regular.

i1 : R = QQ[x, y, z] / ideal(x * y - z^2 );
i2 : D = divisor({1, -2}, {ideal(x, z), ideal(y, z)})

o2 = -2*Div(y, z) + Div(x, z)

o2 : WeilDivisor on R
i3 : isSNC( D )

o3 = false
i4 : R = QQ[x, y];
i5 : D = divisor(x*y*(x+y))

o5 = Div(x+y) + Div(x) + Div(y)

o5 : WeilDivisor on R
i6 : isSNC( D )

o6 = false
i7 : R = QQ[x, y];
i8 : D = divisor(x*y*(x+1))

o8 = Div(x+1) + Div(x) + Div(y)

o8 : WeilDivisor on R
i9 : isSNC( D )

o9 = true

If IsGraded is set to true (default false), then the divisor is treated as if it is on the Proj of the ambient ring. In particular, non-SNC behavior at the origin in ignored.

i10 : R = QQ[x, y, z] / ideal(x * y - z^2 );
i11 : D = divisor({1, -2}, {ideal(x, z), ideal(y, z)})

o11 = -2*Div(y, z) + Div(x, z)

o11 : WeilDivisor on R
i12 : isSNC( D, IsGraded => true )

o12 = true
i13 : R = QQ[x, y];
i14 : D = divisor(x*y*(x+y))

o14 = Div(x) + Div(y) + Div(x+y)

o14 : WeilDivisor on R
i15 : isSNC( D, IsGraded => true )

o15 = true
i16 : R = QQ[x,y,z];
i17 : D = divisor(x*y*(x+y))

o17 = Div(y) + Div(x) + Div(x+y)

o17 : WeilDivisor on R
i18 : isSNC( D, IsGraded => true)

o18 = false

Ways to use isSNC :