Adding Divisors on hyperelliptic curves via interpolation polynomials

An effective procedure to reduce any non-special divisor to an equivalent divisor composed of the number of points equal to the genus of a curve is suggested. The hyperelliptic case is considered as the simplest model. The advantage of the proposed procedure is its explicitness: all steps are realized through arithmetic operations on polynomials. The resulting reduced divisor is obtained in the form of Jacobi inversion problem which unambiguously defines the divisor, at the same time values of Abelian functions on the divisor are obtained.


Introduction
Before stating the goal of this note we introduce the notion of reduced divisor corresponding to any non-special divisor on an algebraic curve. Suppose g is genus of the curve. Any non-special divisor can be represented by a collection of points of number greater or equal to the genus, that is D = g+m k=1 P k , m 0. A reduced divisor is composed of g points: D = g k=1 P k . It follows from the Riemann-Roch theorem that every non-special divisor of the form D − (deg D)∞ is equivalent to D − g∞, where D is a reduced divisor. This immediately leads to the following Reduction Problem. Given a non-special divisor D of degree g + m, m > 0, on an algebraic curve of genus g find the corresponding reduced divisor D such that D − (g + m)∞ is equivalent to D − g∞.
The reduction problem has a close relation to Addition Problem. Given two non-special divisors D 1 and D 2 of degrees g+m 1 and g+m 2 , m 1 , m 2 0 respectively find a reduced divisor D such that D 1 + D 2 − (2g + m 1 + m 2 )∞ ∼ D − g∞.
Note that solving the reduction problem we immediately solve the addition problem since we can assume that D 1 , D 2 together compose a non-special divisor D of degree 2g + m 1 + m 2 , and then come to the reduction problem for the new divisor D. On the other hand, the standard addition problem arises when the both divisors D 1 , D 2 are Date: January 3, 2020. firstly reduced to divisors D 1 , D 2 of degree g each, then addition of D 1 , D 2 can be accomplished by any approach to addition law.
Much work has been done on the reduction problem starting with the classical work [1], where the Jacobi inversion problem was solved in hyperelliptic case [1, p. 32 § 216] (briefly recalled in Preliminaries). The problem consists in finding a reduced divisor whose points are roots of two rational functions on a curve. Coefficients of the rational functions are expressed through multiply periodic functions ℘ evaluated at the point u of Jacobian of the curve, such that u corresponds to the reduced divisor. Note that the solution of the inversion problem provides in principle the solution to the reduction problem. Indeed, any non-special divisor D has the corresponding reduced divisor D of degree g such that D − (deg D)∞ ∼ D − g∞, and the reduced divisor is described by two rational functions on the curve.
The first solution of reduction problem was given in [2]. This algorithm was inspired by reduction of quadratic forms. For low genera (g = 2, 3) many authors worked on giving more explicit solutions to the reduction problem due to potential application in cryptography, see [3] and [4] and the literature cited there. The explicit realization of addition law should also have applications to the theory of heights on hyperelliptic Jacobians. In [5] ℘ functions are used to produce formulas for division polynomials on hyperelliptic curves of low genera which was later applied in [6] to compute canonical heights on genus 2 curves. Though the question of division polynomials isn't treated explicitly in the present paper it is strongly related to the reduction algorithm we propose as it is essentially equivalent to reduced divisors of the form nP on the curve.
The main advantage of the algorithm proposed below is that starting with an arbitrary non-special divisor D it produces explicit rational functions of the Jacobi inversion problem which are satisfied by the coordinates of g points of the reduced divisor D equivalent to D. For practical applications producing explicit functions speeds up the reduction algorithm proposed by Cantor. Our method involves only direct division of polynomials of degrees up to 2g + 1, no Euclidean algorithm is used.
As mentioned above the proposed solution for the reduction problem has an application to Abelian functions. It allows to obtain values of any Abelian function on an arbitrary non-special divisor D on the curve, since the Jacobi inversion problem produces values ℘ u(D) of 2g functions which form a basis of the differential field of Abelian functions on the Jacobian of the curve. Until now these formulas for ℘ functions have not appeared in the literature.

Preliminaries
2.1. Hyperelliptic curve and Sato weights. In the paper we deal with the family of hyperelliptic curves with a branch point at infinity. A genus g curve is defined by the equation where λ k are parameters of the curve. We use Sato weights as indices, since they are respected by the theory of rational functions, that simplifies many considerations. Sato weight shows the opposite to the leading power of local parameter ξ in the expansion near infinity: . Therefore, Sato weights are wgt x = 2, wgt y = 2g + 1.

2.2.
Jacobi inversion problem. The Jacobi inversion problem gives the answer how to find g points {(x k , y k )} g k=1 on a curve which unambiguously maps into a point u of Jacobian of the curve, which we denote by Jac. Solution of the Jacobi inversion problem for a hyperelliptic curve is given by two rational functions Here multiply periodic ℘ functions are defined through g-variable σ function, see [7] for more detail, Components of u ∈ Jac are indexed by Sato weights: u = (u 1 , u 3 , . . . , u 2g−1 ), which is implied by the standard holomorphic differentials Function R 2g is a polynomial in x and has g roots {x k } g k=1 . At the same time, R 2g is a rational function on the curve (1) with 2g roots, and serves as the preimage of u Note that R 2g+1 has 2g + 1 roots on the curve, but we are not interested in the other g + 1 roots.
On the other hand, R 2g and R 2g+1 can be obtained from determinant formulas and coefficients α n , β n are expressed in terms of coordinates of points 3. Addition on a curve 3.1. A divisors equivalent to g + 1 degree one.
is a divisor of g + 1 distinct points, is given by the solution of the system and h n denotes the homogeneous symmetric polynomial of degree n in {x k } g+1 k=1 .
Proof. Define a rational function R 2g+1 with g + 1 fixed roots at points From R 2g+1 one finds the interpolation polynomial G of degree g, namely: y = G(x), whose intersection with the curve produces the remaining g roots of R 2g+1 . That is where i =k . Next, substitute y from (7) into (1), and take into account that

Taking into account that with arbitrary natural
where h n is the homogeneous symmetric polynomial of degree n in {x k } N k=1 . Then one finds Finally, Note that coefficient at x g is 1 and arises from Q.
Polynomial H has g roots, say {x k } g k=1 , and points { x k ,ỹ k = G(x k ) } g k=1 serve as the remaining g roots of R 2g+1 defined by (6). Let Then I is a polynomial of degree g − 1 and y − I(x) vanishes at the same g points as H(x). These points { x k ,ỹ k } g k=1 map into −u ∈ Jac, which is opposite to u = g k=1 A(P k ). Therefore, the reduced divisor D corresponding to D g+1 consists fo points { P k = x k , −ỹ k }. Therefore, polynomials H and I allow to compute ℘ functions at divisor D g+1 .
is a divisor of g + 2 distinct points, is given by the solution of the system x n g−1−n j=0 λ 2g−2−2n−2j h j , and h n denotes the homogeneous symmetric polynomial of degree n in {x k } g+2 k=1 . Proof. Define a rational function R 2g+2 with g + 2 fixed roots at points Intersection with the curve produces the remaining g roots of R 2g+2 . So one can obtain the interpolation polynomial G in the form y = G(x), that is where .
Next, substitute y from (12) into (1). Computation similar to the given in subsection 3.1 leads to In this case coefficient at x g is and the coefficient at x g−1 is are the remaining g roots of R 2g+2 . In this case G is a polynomial of degree g + 1, and with the help of polynomial H it is reduced to I of degree g − 1: where

Remark 2.
Similarly to the above case of g + 1 points, problem (11) coincides with the solution of Jacobi inversion problem (2), and coefficients of polynomials H and I provide values of ℘ functions at divisor D g+2 .

The reduction algorithm
Now we describe the algorithm how to reduce a g + m degree divisor step by step. Recall that we deal with the hyperelliptic curve defined by (1). Let D g+m = g+m k=1 P k be the divisor to reduce, where m ≥ 1, and P k = (x k , y k ). Reduction consists in finding a divisor D g = g k=1 P k such that D g − g∞ is equivalent to D g+m − (g + m)∞. As mentioned in Introduction the reduced divisor is defined by • a polynomial H(x) of degree g, vanishing at P k = (x k ,ỹ k ), that is • and an interpolation polynomial I(x) of degree g − 1, such that The pair of polynomials H, I define divisor D g uniquely.
In [8] and [9] the close addition problem is solved by means of the determinant construction. Here we suggest a more effective solution.
Let a divisor D of degree g + m with m > 0 is given. The recursive procedure is the following. Starting at a divisor D of degree g + m with m > 2, one performs the following steps: (1) Start with any g + 1 points, say {P k = (x k , y k )} g+1 k=1 , and find polynomials H (1) , I (1) by formulas (5b) and (5c). Then relations (1), which replace the chosen g + 1 points of the divisor D. In this way a new divisor D g+m−1 of degree g + m − 1 is constructed.
(2) Suppose that a divisor D g+m−l of degree g+m−l is found, which consists of g points { P (l) of degrees g + 1 and g, respectively. Evidently, the system has g + 1 solutions at points { P (l) and I (l+1) of degrees g and g − 1 where g 0 is the coefficient of x g in G (l) (x). Note that P(x) − G (l) (x) 2 is divisible by F (l) (x) due to (16) and the fact that { P (l) k } g k=1 ∪ {P g+l+1 } are points of the curve y 2 = P(x). The relations , which together with the remaining m − l − 1 points of D form a new divisor D g+m−l−1 . If l + 1 < m, return to Step (2). We described above the recursive procedure using reduction by g + 1 points at each step. One can use a different strategy, for example with m = 2κ the shortest recursive process is to apply reduction by g + 2 points κ times, and with m = 2κ + 1 is to apply one reduction by g + 1 points and κ reductions by g + 2 points in arbitrary order.

Conclusion
In this note we proposed a reduction algorithm for any non-special divisor on a hyperelliptic curve. As explained in Introduction the reduction algorithm allows to solve the addition problem, that is to add two arbitrary non-special divisors on the curve. Our algorithm is recursive and is based on the ideas of [8] and [9]. Using this recursive procedure we bypass the use of Euclidean algorithm as was done in [2]. Note that the most time-consuming part of the algorithm is the division of polynomials roughly of degree g, which is genus of the curve, so the performance of the division is O(g ln g) with the use of FFT. In the case of g + 1 and g + 2 points in a divisor solutions to the reduction problem are found explicitly. At the same time, they give solutions to the Jacobi inversion problem and provide values of ℘ functions at the image of Abel's map of the divisors. The proposed algorithm can be generalized to the case of arbitrary plain algebraic curve. We will present these results in subsequent paper.