#### D.12.3.6 divisor

Procedure from library `hyperel.lib` (see hyperel_lib).

Usage:
  divisor(a,b,h,f); optional: divisor(a,b,h,f,s); s=0,1

Return:
  list P

Note:
  P[1][3]*(P[1][1], P[1][2]) +...+ P[size(P)][3]*
  *(P[size(P)][1], P[size(P)][2]) - (*)infty=div(a(x)-b(x)y) if there is an optional parameter s!=0, then divisor additionally returns a parameter, which says, whether irreducible polynomials occurred during computations or not. Otherwise only warnings are displayed on the monitor. For s=0 nothing happens.
  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;
    poly a=(x-1)^2*(x-6);
    poly b=0;
    divisor(a,b,h,f,1);
    ==> [1]:
    ==>    [1]:
    ==>       -1
    ==>    [2]:
    ==>       -3
    ==>    [3]:
    ==>       2
    ==> [2]:
    ==>    [1]:
    ==>       1
    ==>    [2]:
    ==>       -2
    ==>    [3]:
    ==>       2
    ==> [3]:
    ==>    [1]:
    ==>       1
    ==>    [2]:
    ==>       1
    ==>    [3]:
    ==>       2
    ==> 0

User manual for Singular version 4.4.1, 2025, generated by texi2html.