#### D.12.3.10 cantorred

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

Usage:
  cantorred(D,h,f);

Return:
  list N

Note:
  Cantor's algorithm - reduction.
  important: Divisor D has to be semireduced!
  Computes reduced divisor div(N[1],N[2])= div(D[1],D[2]).
  The divisors are defined over the basering.
  Curve C: y^2+h(x)y=f(x) is defined over the 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;
    // semireduced divisor
    list D=2x4+3x3-3x-2, -x3-2x2+3x+1;
    cantorred(D,h,f);
    ==> [1]:
    ==>    x2-2x+2
    ==> [2]:
    ==>    2x-2

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