|
D.12.4.8 semidiv
Procedure from library hyperel.lib (see hyperel_lib).
- Usage:
- semidiv(D,h,f);
- Return:
- list P
- Note:
- important: Divisor D has to be semireduced!
Computes semireduced divisor P[1][3]*(P[1][1], P[1][2]) +...+ P[size(P)][3]*
*(P[size(P)][1], P[size(P)][2]) - (*)infty=div(D[1],D[2])
Curve C:y^2+h(x)y=f(x) is defined over basering.
Example:
| LIB "hyperel.lib";
ring R=7,x,dp;
// hyperelliptic curve y^2 + h*y = f
poly h=x;
poly f=x5+5x4+6x2+x+3;
// Divisor
list D=x2-1,2x-1;
semidiv(D,h,f);
==> [1]:
==> [1]:
==> 1
==> [2]:
==> 1
==> [3]:
==> 1
==> [2]:
==> [1]:
==> -1
==> [2]:
==> -3
==> [3]:
==> 1
|
|