Macaulay2 » Documentation
Packages » Divisor :: isEffective
next | previous | forward | backward | up | index | toc

isEffective -- whether a divisor is effective

Synopsis

Description

This function returns true if the divisor is effective (all coefficients nonnegative), otherwise it returns false.

i1 : R = ZZ/31[x, y, u, v] / ideal(x * y - u * v);
i2 : D1 = divisor({1, -2, 3, -4}, {ideal(x, u), ideal(x, v), ideal(y, u), ideal(y, v)})

o2 = -4*Div(y, v) + Div(x, u) + -2*Div(x, v) + 3*Div(y, u)

o2 : WeilDivisor on R
i3 : D2 = divisor({1, 39, 5, 27}, {ideal(x, v), ideal(y, v), ideal(x, u), ideal(x, u)})

o3 = Div(x, v) + 39*Div(y, v) + 32*Div(x, u)

o3 : WeilDivisor on R
i4 : isEffective( D1 )

o4 = false
i5 : isEffective( D2 )

o5 = true

Ways to use isEffective :

For the programmer

The object isEffective is a method function.