|
D.15.8.9 linearlyEquivalent
Procedure from library divisors.lib (see divisors_lib).
- Usage:
- linearlyEquivalent(A,B); A = divisor, B = divisor.
- Assume:
- A and B are divisors on X.
- Return:
- list if A and B a linearly equivalent and int 0 otherwise.
- Theory:
- Checks whether A-B is principle. If yes, returns a list L=(f,g) where
A - B = (f/g).
Example:
| LIB "divisors.lib";
ring r=31991,(x,y,z),dp;
ideal I = y^2*z - x*(x-z)*(x+3*z);
qring Q = std(I);
divisor A = makeDivisor(ideal(x,z),ideal(1));
divisor B = makeDivisor(ideal(x,y),ideal(1));
linearlyEquivalent(A,B);
==> 0
linearlyEquivalent(multdivisor(2,A),multdivisor(2,B));
==> [1]:
==> x
==> [2]:
==> z
|
|