An inverse Jacobian algorithm for Picard curves


We study the inverse Jacobian problem for the case of Picard curves over \({\mathbb {C}}\). More precisely, we elaborate on an algorithm that, given a small period matrix \(\varOmega \in {\mathbb {C}}^{3\times 3}\) corresponding to a principally polarized abelian threefold equipped with an automorphism of order 3, returns a Legendre–Rosenhain equation for a Picard curve with Jacobian isomorphic to the given abelian variety. Our method corrects a formula obtained by Koike–Weng (Math Comput 74(249):499–518, 2005) which is based on a theorem of Siegel. As a result, we apply the algorithm to obtain equations of all the isomorphism classes of Picard curves with maximal complex multiplication by the maximal order of the sextic CM-fields with class number at most \(4\). In particular, we obtain the complete list of maximal CM Picard curves defined over \({\mathbb {Q}}\). In the appendix, Vincent gives a correction to the generalization of Takase’s formula for the inverse Jacobian problem for hyperelliptic curves given in [Balakrishnan–Ionica–Lauter–Vincent, LMS J. Comput. Math., 19(suppl. A):283-300, 2016].


Let \(J\) be the map from the set \({\mathsf {M}}_g\) of isomorphism classes of algebraic curves of genus \(g\) defined over \({\mathbb {C}}\) to the set \({\mathsf {A}}_g\) of isomorphism classes of complex principally polarized abelian varieties of dimension \(g\). In this context, the inverse Jacobian problem consists of identifying a model of the preimage via \(J\) of the class of a given principally polarized abelian variety, if it exists. This is a classic result in the case of curves of genus 1, and has also been solved for curves of genus 2 [26, 36] and genus 3 [2, 7, 14, 34, 38, 39].

In this paper we present an inverse Jacobian algorithm for the family of Picard curves. This was initially done by Koike and Weng in [14], but their exposition presents some gaps and mistakes that we fix here.

In Sect. 2 we give a formula to approximate the \(x\)-coordinates of the affine branch points of a Picard curve in terms of theta constants of its Jacobian, see Theorem 3. The given formula differs from the result in [14] by a third root of unity, see Remark 1.

In Sect. 3 we first characterize the image under \(J\) of this family of curves, and then develop the algorithm that takes the Jacobian of a Picard curve \(C\) and returns a Legendre–Rosenhain equation for \(C\), see Algorithm 5. The main step of the algorithm is applying the formula of Theorem 3, so we first identify the objects needed to apply said formula, mainly the Riemann constant and the images by the Abel-Jacobi map of the affine branch points. Our algorithm makes the process of identifying these points explicit in Theorem 4, see Remark 3 for a comparison with the approach of [14].

Our correction of the algorithm allows us to re-obtain the results of [14] and extend the list of known maximal CM Picard curves, that is, Picard curves such that their Jacobians have endomorphism ring isomorphic to the maximal order of a sextic CM number field \(K\). We obtain twenty-three new curves, displayed in Sect. 4, among which we include all maximal CM Picard curves defined over \({\mathbb {Q}}\). The corresponding CM-fields are collected from [23]. The computations have been performed using SageMath [35], and an implementation can be found at [31].

In the appendix, Vincent applies the tools introduced in Sect. 2 to correct a sign in the generalization of Takase’s formula for the inverse Jacobian problem for hyperelliptic curves, given in [2].

The present paper is an extension and clarification of our earlier work [16] to include further improvements of the algorithm, such as Theorem 4.

A Thomae-like formula for Picard curves

Let \(C\) be a Picard curve defined over \({\mathbb {C}}\), that is, a genus-3 smooth, plane, projective curve given by the affine equation \(y^3 = f(x)\) where \(f\) is a polynomial of degree 4. The curve \(C\) has an automorphism \(\rho \) of order 3 given by \((x,y)\mapsto (x,z_{3}y) \) with \(z_3 = \exp \left( \frac{2\pi i}{3}\right) \). This automorphism fixes the affine branch points \((t,0)\) with \(f(t) = 0\). The curve \(C\) has a unique point at infinity, with projective coordinates \((0:1:0)\), which is also fixed by the automorphism \(\rho \).

Up to isomorphism, we can (and do) assume that \(C\) is given by a Legendre–Rosenhain equation

$$\begin{aligned} y^3 = x(x-1)(x-\lambda )(x-\mu ). \end{aligned}$$

Let \(H^0(\omega _C)\) be the space of holomorphic differentials of \(C\), let \(H^0(\omega _C)^*\) be its dual and let \(H_1(C,{\mathbb {Z}})\) be the first homology group of \(C\). Following the literature, for example [4, Sect. 11.1], we define the Jacobian of \(C\) as \(J(C) = H^0(\omega _C)^*/H_1(C,{\mathbb {Z}})\), and for \(\omega = (\omega _1,\dots ,\omega _g)\) a basis of \(H^0(\omega _C)\) and the base point \(P_\infty = (0:1:0)\) we define the Abel-Jacobi map

$$\begin{aligned} \begin{aligned} \alpha :C \rightarrow J(C), \quad Q \mapsto \int _{P_\infty }^{Q} \omega , \end{aligned} \end{aligned}$$

and extend it additively to divisors of \(C\).

Choosing a symplectic basis of \(H_1(C,{\mathbb {Z}})\) gives rise to the isomorphism \(J(C) \simeq {\mathbb {C}}^3/(\varOmega {\mathbb {Z}}^3 + {\mathbb {Z}}^3),\) where \(\varOmega \) is a matrix in the Siegel upper half-space \({\mathbf {H}}_3 = \{ Z\in {\mathbb {C}}^{3\times 3} : Z = Z^t, {{\,\mathrm{Im}\,}}(Z)>0\}\), where \((\cdot )^t\) denotes transposition and \( (\cdot ) > 0\) denotes positive-definiteness. We say that \(\varOmega \) is a (small) period matrix for \(C\).

The following two classical theorems, due to Riemann and Siegel respectively, deal with the zero locus of the Riemann theta functions and the values of a function of an algebraic curve on non-special divisors. Recall that the Riemann theta function \(\theta :{\mathbb {C}}^g \times {\mathbf {H}}_g \rightarrow {\mathbb {C}}\) is given by

$$\begin{aligned} \theta (z, \varOmega ) = \sum _{n\in {\mathbb {Z}}^g} {\text {exp}}(\pi i n^t\varOmega n + 2\pi i n^tz), \end{aligned}$$

and that a non-special divisor \(D\) is a divisor with \(\ell (K-D) = 0\) for \(K\) a canonical divisor of \(C\).

Theorem 1

(Riemann’s Vanishing Theorem, see [21, Corollary 3.6]) Let \(C\) be a curve defined over \({\mathbb {C}}\) of genus \(g\), let \(J(C)\) be the Jacobian of \(C\) with period matrix \(\varOmega \in {\mathbf {H}}_g\) and let \(\alpha \) be an Abel-Jacobi map of \(C\). There is an element \(\varDelta \in J(C)\), called a Riemann constant with respect to \(\alpha \), such that the function \(\theta (\,\cdot \,, \varOmega )\) vanishes at \(z\in {\mathbb {C}}^g\) if and only if there exist \(Q_1,\dots ,Q_{g-1}\in C\) that satisfy

$$\begin{aligned}z \equiv \alpha (Q_1 + \dots + Q_{g-1}) - \varDelta \mod (\varOmega {\mathbb {Z}}^g + {\mathbb {Z}}^g).\end{aligned}$$

The choice of a base point determines uniquely the Riemann constant \(\varDelta \), as shown by Mumford in Theorem 3.10 and Corollary 3.11 of [21].

Theorem 2

(Siegel [30, Theorem 11.3]) Let \(C\) be a curve of genus \(g\) over \({\mathbb {C}}\), and let \(\phi \) be a function on \(C\) with

$$\begin{aligned}{{\,\mathrm{div}\,}}(\phi ) = \sum _{i=1}^m A_i - \sum _{i=1}^m B_i.\end{aligned}$$

Let \(P\in C\) and let \(\omega \) be a basis of \(H^0(\omega _C)\) for which the Jacobian \(J(C)\) has period matrix \(\varOmega \in {\mathbf {H}}_g\). Let \(\varDelta \) be the Riemann constant with respect to the Abel-Jacobi map \(\alpha \) with base point \(P\).

Choose paths from the base point \(P\) to \(A_i\) and \(B_i\) that satisfy

$$\begin{aligned} \sum _{i=1}^m \int _P^{A_i} \omega = \sum _{i=1}^m \int _P^{B_i} \omega . \end{aligned}$$

Then, given an effective non-special divisor \(D = P_1 + \dots + P_g\) of degree \(g\) that satisfies \(P_j\notin \{A_i,B_i : 1\le i \le m\}\), one has

$$\begin{aligned} \phi (D):=\phi (P_1) \cdots \phi (P_g) = E\prod _{i=1}^m \dfrac{\theta (\sum _{j=1}^g \int _P^{P_j} \omega - \int _P^{A_i} \omega - \varDelta , \varOmega )}{\theta (\sum _{j=1}^g \int _P^{P_j} \omega - \int _P^{B_i} \omega - \varDelta , \varOmega )}, \end{aligned}$$

where \(E\in {\mathbb {C}}^\times \) is independent of \(D\), and the integrals from \(P\) to \(P_j\) take the same paths both in the numerator and the denominator. \(\square \)

Observe that in (2) we are evaluating the Riemann theta functions at points of the Jacobian.

We shall need a version of Theorem 2 in terms of Riemann theta constants. Given \(c = (c_1, c_2)\) with \(c_i\in {\mathbb {R}}^{g}\), the Riemann theta constant (with characteristic \(c\)) is the function \(\theta [c]:{\mathbf {H}}_g \rightarrow {\mathbb {C}}\) given by

$$\begin{aligned} \theta \begin{bmatrix} c_1\\ c_2 \end{bmatrix}(\varOmega ) = {\text {exp}}(\pi i c_1^t\varOmega c_1 + 2\pi i c_1^tc_2) \theta (\varOmega c_1 + c_2, \varOmega ) \,. \end{aligned}$$

We use the following two elementary properties of the Riemann theta constants: They are even in \(c\), that is,

$$\begin{aligned} \theta [c](\varOmega ) = \theta [-c](\varOmega )\,, \end{aligned}$$

and they are quasi-periodic in \(c\), that is, for \(m=(m_1,m_2)\in {\mathbb {Z}}^{2g}\) one has

$$\begin{aligned} \theta [c+m](\varOmega ) = {\text {exp}}(2\pi i c_1 m_2) \theta [c](\varOmega )\,. \end{aligned}$$

Due to the quasi-periodicity of the Riemann theta constants, we must fix representatives in \({\mathbb {R}}^{2g}\) for the points of the Jacobian. Throughout, we consider the composition of the maps


where \(\alpha \) is the Abel-Jacobi map, the map \({\underline{\cdot }}\) identifies \(J(C)\) with \({\mathbb {R}}^{2g}/{\mathbb {Z}}^{2g}\) via \(\varOmega c_1 + c_2 \mapsto (c_1, c_2)\) and \({\widetilde{\cdot }}\) maps a class in \({\mathbb {R}}^{2g}/{\mathbb {Z}}^{2g}\) to its representative with entries in \([0,1)\). For \(P\in C\) we write \({\widetilde{P}}\) instead of \(\widetilde{\underline{\alpha (P)}}\); and in the case of a divisor \(D = \sum n_PP\), we define \({\widetilde{D}} := \sum n_P{\widetilde{P}} \in {\mathbb {R}}^{2g}\). Note that with this definition for most divisors \(D\) we get that \({\widetilde{D}}\) and \(\widetilde{\alpha (D)}\) are different.

With the definitions above, one can rewrite Theorem 2 in terms of Riemann theta constants as follows:

Corollary 1

With the notation of Theorem 2, let \(a_i = ((a_i)_1, (a_i)_2)\) (respectively \(b_i\)) be the element in \({\mathbb {R}}^{2g}\) that satisfies \(\int _P^{A_i}\omega = \varOmega (a_i)_1 + (a_i)_2\) (respectively \(\int _P^{B_i}\omega = \varOmega (b_i)_1 + (b_i)_2\)). We have

$$\begin{aligned} \phi (D) = E'\prod _{i=1}^m \dfrac{\theta \left[ {\widetilde{D}} - a_i - {{\widetilde{\varDelta }}}\right] (\varOmega )}{\theta \left[ {\widetilde{D}} - b_i - {{\widetilde{\varDelta }}}\right] (\varOmega )}, \end{aligned}$$

where \(E'\in {\mathbb {C}}^\times \) is also independent of \(D\).


Observe that the exponential factor in (3) for Riemann theta constants can be written as \(\exp (\pi i B(x,x))\) where \(B\) is the symmetric bilinear form given by

$$\begin{aligned} B(u,v) =\, u^t\begin{pmatrix} \varOmega &{}{{\,\mathrm{{id}}\,}}_g\\ {{\,\mathrm{{id}}\,}}_g&{}0 \end{pmatrix}v.\end{aligned}$$

Let \(Q(u) = B(u,u)\) and let \(c = {\widetilde{D}} - {{\widetilde{\varDelta }}}\). For \(j = 1, \dots , g\), let \(x_j = \widetilde{P_j}\) and choose a path from \(P\) to \(P_j\) that satisfies \(\int _P^{P_j}\omega = \varOmega (x_j)_1 + (x_j)_2\in {\mathbb {C}}^g.\)

Let \(E'\in {\mathbb {C}}^\times \) be defined by

$$\begin{aligned} E\prod _{i=1}^m \dfrac{\theta \left( \left( \sum _{j=1}^g \int _P^{P_j} \omega \right) - \int _P^{A_i} \omega - \varDelta , \varOmega \right) }{\theta \left( \left( \sum _{j=1}^g \int _P^{P_j} \omega \right) - \int _P^{B_i} \omega - \varDelta , \varOmega \right) } = E'\prod _{i=1}^m \dfrac{\theta \left[ {\widetilde{D}} - a_i - {{\widetilde{\varDelta }}}\right] (\varOmega )}{\theta \left[ {\widetilde{D}} - b_i - {{\widetilde{\varDelta }}}\right] (\varOmega )}. \end{aligned}$$

We want to prove that \(E'\) does not depend on \(D\). By (3) we get

$$\begin{aligned} \dfrac{E}{E'} = \exp \left( \pi i \sum _{i=1}^{m}(Q(c - a_i) - Q(c - b_i))\right) , \end{aligned}$$

so it suffices to show that \(\sum _{i=1}^{m}(Q(c - a_i) - Q(c - b_i))\) does not depend on \(D\). We have

$$\begin{aligned} \begin{aligned} \sum _{i=1}^{m}(Q(c - a_i) - Q(c - b_i))&= \sum _{i=1}^{m}(Q(a_i) - Q(b_i) - 2B(c, a_i - b_i)) \\&= \sum _{i=1}^{m}Q\left( a_i\right) - \sum _{i=1}^{m}Q\left( b_i\right) - 2B\left( c, \sum _{i=1}^{m} (a_i - b_i)\right) , \end{aligned} \end{aligned}$$

but we know

$$\begin{aligned} \sum _{i=1}^m \int _P^{A_i} \omega = \sum _{i=1}^m \int _P^{B_i} \omega , \end{aligned}$$

so in terms of characteristics we obtain \(\sum _{i=1}^{m} (a_i - b_i) = 0\) and then it follows that

$$\begin{aligned} \sum _{i=1}^{m}(Q(c - a_i) - Q(c - b_i)) = \sum _{i=1}^{m}Q\left( a_i\right) - \sum _{i=1}^{m}Q\left( b_i\right) \end{aligned}$$

does not depend on \(D\). \(\square \)

Lemma 1

Let \(C\) be a Picard curve defined over \({\mathbb {C}}\) given by \(y^3 = x(x-1)(x-\lambda )(x-\mu )\), and consider the branch points \(P_0=(0,0)\), \(P_1=(1,0)\), \(P_\lambda =(\lambda , 0)\), \(P_\mu =(\mu ,0)\), and \(P_\infty \) at infinity. Let \(J(C)\) be the Jacobian of \(C\) with period matrix \(\varOmega \), let \(\alpha \) be the Abel-Jacobi map with base point \(P_\infty \), and let \(\varDelta \in J(C)\) be the associated Riemann constant.

Then, for every non-special divisor \(D = R_1 + R_2 + R_3\), we have

$$\begin{aligned} x(D) = E\, \varepsilon (D) \left( \dfrac{\theta [{{\widetilde{D}}} - \widetilde{P_0} - {{\widetilde{\varDelta }}}](\varOmega )}{\theta [{{\widetilde{D}}} - {{\widetilde{\varDelta }}}](\varOmega )}\right) ^3, \end{aligned}$$

where \(\varepsilon (D) = \exp (6\pi i ({{\widetilde{D}}} - \widetilde{P_0} - {{\widetilde{\varDelta }}})_1(\widetilde{P_0})_2)\), \(E\in {\mathbb {C}}^\times \) is a constant independent of D and, as before, \(x(D)\) is the product of the \(x\)-coordinates of each point in the divisor.


Let \(\omega \) be the basis of holomorphic differentials for which \(J(C)\) has period matrix \(\varOmega \). The divisor of the function \(x\) on \(C\) is \({\text {div}}(x) = 3\,P_0 - 3\,P_\infty \), so in order to apply Corollary 1 for \(\phi =x\) and \(P=P_\infty \), we choose three times the zero path from \(P_\infty \) to itself, the path \(\gamma _1\) from \(P_\infty \) to \(P_0\) that for \(a_1 = \widetilde{P_0}\) satisfies

$$\begin{aligned} \int _{\gamma _1}\omega = \varOmega (a_1)_1 + (a_1)_2\in {\mathbb {C}}^3, \end{aligned}$$

and paths \(\gamma _2\), \(\gamma _3\) from \(P_\infty \) to \(P_0\) that satisfy

$$\begin{aligned} \sum _{k=1}^3\int _{\gamma _k} \omega = 0 \text { in } {\mathbb {C}}^3. \end{aligned}$$

Let \(a_2, a_3\) be the elements in \({\mathbb {R}}^6\) that satisfy

$$\begin{aligned} \int _{\gamma _k} \omega = \varOmega (a_k)_1 + (a_k)_2 \text { for } k = 2,3. \end{aligned}$$

Then, by Corollary 1, we have

$$\begin{aligned} \begin{aligned} x(D) = E'\prod _{k=1}^3\dfrac{\theta [{\widetilde{D}} - a_k - {\widetilde{\varDelta }}](\varOmega )}{\theta [{\widetilde{D}} - {\widetilde{\varDelta }}] (\varOmega )} \end{aligned} \end{aligned}$$

for some constant \(E'\in {\mathbb {C}}^\times \) independent of \(D\). Note that for \(k=1,2,3\) we have

$$\begin{aligned}\underline{P_0} = (a_k \,{\text {mod}} {\mathbb {Z}}^{6}),\end{aligned}$$

so the differences \(a_i-a_j\) for \(i\ne j\) are integer vectors. Applying the quasi-periodicity property (5), Eq. (8) becomes

$$\begin{aligned} \phi (D) = E' \dfrac{\exp (2\pi i ({\widetilde{D}} - \widetilde{P_0} - {\widetilde{\varDelta }})_1 (a_1 - a_2 + a_1 - a_3)_2)\,\theta [{\widetilde{D}} - \widetilde{P_0} - {\widetilde{\varDelta }}](\varOmega )^3}{\theta [{\widetilde{D}} - {\widetilde{\varDelta }}](\varOmega )^3}. \end{aligned}$$

But it follows from (7) that the sum \(a_1 + a_2 + a_3\) is zero, so we obtain \(a_1 - a_2 + a_1 - a_3 = 3a_1 = 3\widetilde{P_0}\) and the statement follows. \(\square \)

The final step is to choose the right non-special divisors.

Theorem 3

Let \(C\) be a Picard curve defined over \({\mathbb {C}}\) given by \(y^3 = x(x-1)(x-\lambda )(x-\mu )\), and consider the branch points \(P_0=(0,0)\), \(P_1=(1,0)\), \(P_\lambda =(\lambda , 0)\), \(P_\mu =(\mu ,0)\), and \(P_\infty \) at infinity. Let \(J(C)\) be the Jacobian of \(C\) with period matrix \(\varOmega \), let \(\alpha \) be the Abel-Jacobi map with base point \(P_\infty \), and let \(\varDelta \in J(C)\) be the associated Riemann constant. Then, for \(\eta \in \{\lambda , \mu \}\), we have

$$\begin{aligned} \eta = \varepsilon _\eta \left( \dfrac{\theta [\widetilde{P_1} + 2\widetilde{P_\eta } - \widetilde{P_0} - {{\widetilde{\varDelta }}}](\varOmega )}{\theta [2\widetilde{P_1} + \widetilde{P_\eta } - \widetilde{P_0} - {{\widetilde{\varDelta }}}](\varOmega )}\right) ^3, \end{aligned}$$

where \(\varepsilon _\eta = \exp (6\pi i ((\widetilde{P_\eta } - \widetilde{P_1})_1(\widetilde{P_0})_2 + {{\widetilde{\varDelta }}}_1(3\widetilde{P_1} + 3\widetilde{P_\eta } - 2{{\widetilde{\varDelta }}})_2))\).


We apply Lemma 1 twice, to the divisors \(D_1 = P_1 + 2P_\eta \) and \(D_2 = 2P_1 + P_\eta \), which are non-special as proven in [14, p. 506]. Then, we get

$$\begin{aligned} \begin{aligned} \eta = \dfrac{x(P_1)x(P_\eta )^2}{x(P_1)^2x(P_\eta )}&= \dfrac{E'\varepsilon (D_1)\left( \dfrac{\theta [\widetilde{P_1} + 2\widetilde{P_\eta } - \widetilde{P_0} - {{\widetilde{\varDelta }}}](\varOmega )}{\theta [\widetilde{P_1} + 2\widetilde{P_\eta }) - {{\widetilde{\varDelta }}}](\varOmega )}\right) ^3}{E'\varepsilon (D_2)\left( \dfrac{\theta [2\widetilde{P_1} + \widetilde{P_\eta } - \widetilde{P_0} - {{\widetilde{\varDelta }}}](\varOmega )}{\theta [2\widetilde{P_1} + \widetilde{P_\eta } - {{\widetilde{\varDelta }}}](\varOmega )}\right) ^3} \\&= \dfrac{\varepsilon (D_1)}{\varepsilon (D_2)}\left( \dfrac{\theta [\widetilde{P_1} + 2\widetilde{P_\eta } - \widetilde{P_0} - {{\widetilde{\varDelta }}}](\varOmega )}{\theta [\widetilde{P_1} + 2\widetilde{P_\eta } - {{\widetilde{\varDelta }}}](\varOmega )}\dfrac{\theta [2\widetilde{P_1} + \widetilde{P_\eta } - {{\widetilde{\varDelta }}}](\varOmega )}{\theta [2\widetilde{P_1} + \widetilde{P_\eta } - \widetilde{P_0} - {{\widetilde{\varDelta }}}](\varOmega )}\right) ^3. \end{aligned}\nonumber \\ \end{aligned}$$

Moreover, using the symmetry (4) and quasi-periodicity (5) of the Riemann theta constants we also obtain

$$\begin{aligned} \theta [\widetilde{D_2} - {{\widetilde{\varDelta }}}](\varOmega )&= \theta [-\widetilde{D_2} + {{\widetilde{\varDelta }}}](\varOmega )\\&= \theta [\widetilde{D_1} - {{\widetilde{\varDelta }}} + \underbrace{2{{\widetilde{\varDelta }}} - 3\widetilde{P_1} - 3\widetilde{P_\eta })}_{\in {\mathbb {Z}}^6}](\varOmega ) \\&= \exp (2\pi i(\widetilde{D_1} - {{\widetilde{\varDelta }}})_1(2{{\widetilde{\varDelta }}} - 3\widetilde{P_1} -3\widetilde{P_\eta })_2))\theta [\widetilde{D_1} - {{\widetilde{\varDelta }}}](\varOmega ) \end{aligned}$$

so that (10) becomes

$$\begin{aligned}\eta = \varepsilon _\eta \cdot \left( \dfrac{\theta [\widetilde{P_1} + 2\widetilde{P_\eta } - \widetilde{P_0} - {{\widetilde{\varDelta }}}](\varOmega )}{\theta [2\widetilde{P_1} + \widetilde{P_\eta } - \widetilde{P_0} - {{\widetilde{\varDelta }}}](\varOmega )}\right) ^3, \end{aligned}$$


$$\begin{aligned} \varepsilon _\eta&= \dfrac{\varepsilon (D_1)}{\varepsilon (D_2)}\exp (2\pi i(\widetilde{D_1} - {{\widetilde{\varDelta }}})_1(2{{\widetilde{\varDelta }}} - 3\widetilde{P_1} - 3\widetilde{P_\eta })_2)^3 \\&= \dfrac{\exp (6\pi i (\widetilde{P_1} + 2\widetilde{P_\eta } - \widetilde{P_0} - {{\widetilde{\varDelta }}})_1(\widetilde{P_0})_2)}{\exp (6\pi i (2\widetilde{P_1} + \widetilde{P_\eta } - \widetilde{P_0} - {{\widetilde{\varDelta }}})_1(\widetilde{P_0})_2)}\exp (6\pi i(\widetilde{D_1} - {{\widetilde{\varDelta }}})_1(2{{\widetilde{\varDelta }}} - 3\widetilde{P_1} - 3\widetilde{P_\eta })_2) \\&= \exp (6\pi i ((\widetilde{P_\eta } - \widetilde{P_1})_1(\widetilde{P_0})_2 + {{\widetilde{\varDelta }}}_1(3\widetilde{P_1} + 3\widetilde{P_\eta } - 2{{\widetilde{\varDelta }}})_2 )) \end{aligned}$$

as desired. \(\square \)

Remark 1

Compare the above formula in Theorem 3 with the ones given in [14, Eq. 9]. The formulas there are the same as in (9) replacing \(\varepsilon _\eta \) by 1, hence in general they do not hold due to the absence of the precise root of unity.

However, if we follow the original work by Picard [24, p. 131], then we obtain a particular form of the period matrix \(\varOmega \) (see also Shiga [27, Proposition I-3]) for which it is always the case that \(\varepsilon _\lambda = \varepsilon _\mu = 1\). In such case, the formulas in [14] hold.

The algorithm

In this section we explain how to use the formula in Theorem 3 to obtain an inverse Jacobian algorithm for Picard curves, that is, an algorithm that, given the Jacobian of a Picard curve \(C\), returns a model of \(C\).

The following result characterizes the Jacobian of a Picard curve based on work of Koike–Weng and Estrada.

Proposition 1

Let \(X\) be a simple principally polarized abelian variety of dimension 3 defined over an algebraically closed field \(k\). If \(X\) has an automorphism \(\varphi \) of order 3, then we have that \(X\) is the Jacobian of a Picard curve. Furthermore, let \(\rho \) be the curve automorphism \(\rho (x,y) = (x,z_{3}y)\), and let \(\rho _*\) be the automorphism of the Jacobian that it induces. Then we get \(\langle \varphi \rangle = \langle \rho _* \rangle \).


By Oort–Ueno [22], based on work by Matsusaka [18] and Hoyt [9], we have that since \(X\) is a simple principally polarized abelian variety of dimension \(3\) over an algebraically closed field, then it is the Jacobian of a curve. Let \(C\) be a curve with \(X\cong J(C)\).

By Torelli’s Theorem, see Milne [19, Sect. 12], there is some non-trivial automorphism \(\nu \) of \(C\) that satisfies \(\varphi = \pm \nu _*\). Then the automorphism \(\nu ^4\), which we call \(\eta \), satisfies \(\eta _* = (\nu ^4)_* = (\pm \nu )^4_* = \varphi ^4 = \varphi \), hence by the uniqueness in Torelli’s Theorem we obtain that \(\eta \) has order 3.

Therefore, the degree of the map \(\pi :C \rightarrow C/\langle \eta \rangle \) is also 3, and by the Riemann–Hurwitz formula one obtains that \(C/\langle \eta \rangle \) has either genus 0 or 1. But \(X\) is simple, so the curve \(C/\langle \eta \rangle \) is isomorphic to \({\mathbb {P}}^1\) and \(\pi \) has 5 ramification points.

Then \(k(C)/k(C/\langle \eta \rangle )\) is a Kummer extension of degree 3, hence \(C\) is given by an equation of the form \(y^3 = h(x)\) where \(h\) has 4 different roots. By Lemma 7.3 in Estrada [8, Appendix I], we obtain a model for \(C\) given by \(y^3 = f(x)\) where \(f\) has degree 4 and distinct roots and \(\eta \) is either the automorphism \(\rho \) given by \((x,y) \mapsto (x,z_3y)\) or its square. \(\square \)

Remark 2

While the idea behind the proof is the same in Proposition 1 and in [14, Lemma 1], the assumptions in [14] are in a way more restrictive, as Koike and Weng focus on maximal CM Picard curves. Moreover, the proof in [14] has a gap, which is fixed exactly by our reference to Estrada [8, Appendix I].

We provide the proof above as an homage to Koike–Weng, but one could alternatively use the classifications of plane quartics and genus-3 hyperelliptic curves by their automorphism group to prove the result: by Propositions 1.1 and 1.2 in [17] one concludes that the only genus-3 curves with order-3 automorphisms that have simple Jacobians are Picard curves.

It follows from Proposition 1 that one can think of the input of the inverse Jacobian algorithm for Picard curves to be a period matrix \(\varOmega \in {\mathbf {H}}_3\) together with the rational representation of an automorphism of order 3. To give the curve we will compute the values of \(\lambda \) and \(\mu \) in a Legrendre–Rosenhain equation of the curve.

First we want to determine the points in \({\mathbb {C}}^3/(\varOmega {\mathbb {Z}}^3 + {\mathbb {Z}}^3)\) that correspond to the Riemann constant \(\varDelta \) and the image of the branch points via \(\alpha \). The former is given by the following result due to Koike and Weng.

Proposition 2

(Koike–Weng [14, Lemma 10]) Let \(J(C)\) be the Jacobian of a Picard curve \(C\), let \(\rho _*\) be the automorphism of \(J(C)\) induced by the curve automorphism \(\rho (x,y) = (x,z_3y)\), and let \(N = \begin{pmatrix} n_{11}&{}n_{12}\\ n_{21}&{}n_{22} \end{pmatrix}\in {{\,\mathrm{Sp}\,}}(6,{\mathbb {Z}})\) be the transposed rational representation of \(\rho _*\). Then, the Riemann constant \(\varDelta \in J(C)\) is the unique 2-torsion point that satisfies

$$\begin{aligned}{{\underline{\varDelta }}} = (N^{-1})^t{{\underline{\varDelta }}} + \dfrac{1}{2}\begin{pmatrix} (n_{21}^t{n_{22}})_0\\ (n_{11}^t{n_{12}})_0 \end{pmatrix} =:N[{{\underline{\varDelta }}}], \end{aligned}$$

where \((\cdot )_0\) denotes the diagonal of the matrix as a column vector.

The following step is to identify the image under \(\alpha \) of the branch points.

Theorem 4

Let \(J(C)\) be the Jacobian of a Picard curve \(C\), let \(\rho _*\) be the automorphism of \(J(C)\) induced by the curve automorphism \(\rho (x,y) = (x,z_3y)\). Let \({\mathcal {B}}\) be the set of affine branch points of \(C\), let \(\alpha \) be the Abel-Jacobi map with base point \(P_\infty =(0:1:0)\), let \(\varDelta \) be the Riemann constant with respect to \(\alpha \) and define

$$\begin{aligned} \varTheta _3 := \left\{ x\in J(C)[1-\rho _*] : \theta [{\underline{x}}+{{\underline{\varDelta }}}](\varOmega ) = 0\right\} . \end{aligned}$$

Then \(\alpha ({\mathcal {B}})\) and \(-\alpha ({\mathcal {B}})\) are the only subsets \({\mathcal {T}}\subset J(C)\) of four elements such that:

  1. (i)

    the sum \(\sum _{x\in {\mathcal {T}}} x\) is zero,

  2. (ii)

    \({\mathcal {T}}\) is a set of generators of \(J(C)[1-\rho _*]\), and

  3. (iii)

    the set \({\mathcal {O}}({\mathcal {T}}) :=\{ \sum _{x\in {\mathcal {T}}} a_x{x} : a\in {\mathbb {Z}}^4_{\ge 0}, \sum _{x\in {\mathcal {T}}} a_x \le 2 \}\) satisfies

    $$\begin{aligned}{\mathcal {O}}({\mathcal {T}}) = \varTheta _3.\end{aligned}$$


We first show that \(\alpha ({\mathcal {B}})\) and \(-\alpha ({\mathcal {B}})\) satisfy (i)–(iii), and then we prove that these are the only possibilities.

That \(\alpha ({\mathcal {B}})\) satisfies (i) follows from \({{\,\mathrm{div}\,}}(y) = \sum _{P\in {\mathcal {B}}} P - 4P_\infty \). That \(\alpha ({\mathcal {B}})\) satisfies (ii) is proven by Koike and Weng in [14, Remark 8]. Next we prove that \(\alpha ({\mathcal {B}})\) satisfies (iii). On the one hand, given \(Q_1, Q_2\in {\mathcal {B}}\cup \{P_\infty \}\) we have \(\alpha ({Q_1} + {Q_2}) \in \varTheta _3\) by Riemann’s Vanishing Theorem 1, and since we have \(\alpha (P_\infty ) = 0\), this implies

$$\begin{aligned} \left\{ \sum _{P\in {\mathcal {B}}} a_P\alpha (P) : a\in {\mathbb {Z}}_{\ge 0}^{\mathcal {B}}, \sum _{P\in {\mathcal {B}}} a_P \le 2 \right\} \subseteq \varTheta _3. \end{aligned}$$

To prove the opposite inclusion, let \(x\in \varTheta _3\). Since \(x\) satisfies \(\theta [{\underline{x}}+{\underline{\varDelta }}](\varOmega ) = 0\), by Riemann’s Vanishing Theorem 1 there exist \(Q_1,Q_2\in C\) such that we have \(x = \alpha (Q_1 + Q_2)\). Moreover, since \(x\) is a \((1 - \rho _*)\)-torsion point, we get

$$\begin{aligned} \alpha (Q_1 + Q_2) = \rho _*(\alpha (Q_1 + Q_2)) = \alpha (\rho (Q_1)+\rho (Q_2)), \end{aligned}$$

hence there exists a function \(h\) on \(C\) such that \({{\,\mathrm{div}\,}}(h) = {\rho }(Q_1) + {\rho }(Q_2) - Q_1 - Q_2\). Note now that a Picard curve is non-hyperelliptic, since one checks that the canonical map is the embedding \((x:y:1) :C \rightarrow {\mathbb {P}}^2\). Then we conclude that \(h\) is constant, since otherwise it has degree at most 2, hence the curve would be hyperelliptic. Therefore we have \({\rho }(Q_1) + {\rho }(Q_2) = Q_1 + Q_2\), but since \(\rho \) has order 3, the cardinality of the orbit of \(Q_i\) has length 3 or 1, so we obtain \(\rho (Q_i) = Q_i\). Therefore \(Q_1\) and \(Q_2\) are branch points, so the other inclusion holds.

It is clear that \(-\alpha ({\mathcal {B}})\) satisfies (i) and (ii). To see that it satisfies (iii), it is enough to prove that \(\varTheta _3\) is invariant under the map \(x\mapsto -x\). But this follows from the symmetry of the Riemann theta constants, see (4).

Next we prove that \(\alpha ({\mathcal {B}})\) and \(-\alpha ({\mathcal {B}})\) are, in fact, all the subsets that satisfy (i)–(iii).

Let \(B\) denote an ordering of \(\alpha ({\mathcal {B}})\). Given a sequence \(T = (t_1,t_2,t_3,t_4)\) in \(J(C)^4\) of distinct elements such that the set \( \{t_1, t_2, t_3, t_4\} \) satisfies (i)–(iii), we define the map \(\gamma [T]:{\mathbb {F}}_3^3\rightarrow J(C)[1-{\rho _*}]\) given by \(r \mapsto \sum _{i=1}^{3}r_it_i\). By Remark 8 in Koike–Weng [14] we have \(J(C)[1-\rho _*]\cong ({\mathbb {Z}}/3{\mathbb {Z}})^3\), thus it follows from (i) and (ii) that \(\gamma [T]\) is a bijection.

Consider the diagram

where \(M(T)\) is the unique invertible matrix in \({\mathbb {F}}_3^{3\times 3}\) that makes the diagram commutative. Note that choosing a matrix \(M(T)\) determines \(T\) uniquely.

Let \(e_1, e_2, e_3\) be the standard basis vectors of \({\mathbb {F}}_3^3\), and let \(e_4 = -e_1-e_2-e_3\), so for \(i = 1, \dots , 4\) we have \(\gamma [T](e_i) = t_i\). Consider

$$\begin{aligned}{\mathcal {O}}_0 = \left\{ \sum _{i=1}^{4} a_ie_i : a\in {\mathbb {Z}}^4_{\ge 0}, \sum _{i=1}^{4}a_i \le 2\right\} \subset {\mathbb {F}}_3^3.\end{aligned}$$

One can check \(\#{\mathcal {O}}_0 = 15\), and moreover we have \(\gamma [T]({\mathcal {O}}_0) = {\mathcal {O}}(\{t_1, t_2, t_3, t_4\})\). If the set of elements of \(T\) satisfies (iii), then we have

$$\begin{aligned} \gamma [T]({\mathcal {O}}_0) = {\mathcal {O}}(\{t_1, t_2, t_3, t_4\})= \varTheta _3 = \gamma [B]({\mathcal {O}}_0), \end{aligned}$$

and thus \({\mathcal {O}}_0\) is stable under \(M(T)\).

We checked with SageMath [35] that there are exactly 48 invertible matrices in \({\mathbb {F}}_3^{3\times 3}\) that map \({\mathcal {O}}_0\) to itself. Since a matrix \(M(T)\) determines \(T\) uniquely, there are 48 sequences \(T\in J(C)^4\) that satisfy (i)–(iii). However, if we vary \(\sigma \) in the symmetric group of 4 letters and \(s\in \{\pm 1\}\), then \(s\sigma (B)\) gives 48 sequences, which are different. We conclude that \(\alpha ({\mathcal {B}})\) and \(-\alpha ({\mathcal {B}})\) are the only subsets of \(J(C)\) with 4 elements that satisfy (i)–(iii). \(\square \)

Remark 3

With Theorem 4, we make precise the idea hinted in Corollary 11 of Koike–Weng [14]. There, they claim the existence of a 4-element set that satisfies (i) and (ii), prove that \(\alpha ({\mathcal {B}})\) does satisfy (i) and (ii), and assume without further comments that when one finds such a set, it is \(\alpha ({\mathcal {B}})\).

This is problematic not only because they disregard the case where the set is \(-\alpha ({\mathcal {B}})\) but especially because they do not consider (iii), since there exist 4-element sets in \(J(C)\) that satisfy (i) and (ii) which are not \(\alpha ({\mathcal {B}})\) or even \(-\alpha ({\mathcal {B}})\).

In fact, there are \(\#{\text {GL}}_3({\mathbb {F}}_3) = 11,232\) possible sequences \(T\in J(C)^4\) that satisfy (i) and (ii), hence the probability of finding one that corresponds to a permutation of \(B\) is \(1/468 \approx 0.002\).

We now have all the tools to state the algorithm.


Remark 4

Algorithm 5 is a mathematical algorithm, but, because it involves infinite sums, complex numbers and exponentials, it cannot be run on a Turing machine or a physical computer. To do so one needs to truncate the sum on the Riemann theta constants, approximate complex numbers and keep track of the error propagation. For implementation details, we refer the reader to [32, Sect. 1.5].

Proof of Algorithm 5

Let \(\varDelta \in J(C)\) be the Riemann constant with respect to \(P_\infty = (0:1:0)\) and let \({\mathcal {B}}\) be the set of affine branch points of \(C\). By Proposition 2, the point \(\varDelta \) is the only one that satisfies \(N[{{\underline{\varDelta }}}] = {{\underline{\varDelta }}}\) and is a 2-torsion point, that is, it satisfies \({\underline{\varDelta }}\in \frac{1}{2}{\mathbb {Z}}^6/{\mathbb {Z}}^6\). We conclude \(D = {\underline{\varDelta }}\).

By Theorem 4, the sequence \((t_1,t_2,t_3,t_4)\) is an ordering of either \(\alpha ({\mathcal {B}})\) or \(-\alpha ({\mathcal {B}})\). In the former case, the values \(\lambda \), \(\mu \) obtained in Step 4 are the \(x\)-coordinates of the affine branch points different from \((0,0)\) and \((0,1)\). A quasi-periodicity argument similar to those in the proofs of Lemma 1 or Theorem 3 yields that in the latter case the same holds too. \(\square \)

Computing maximal CM Picard curves

In this section, we present how to use Algorithm 5 to compute maximal CM Picard curves, that is, Picard curves such that their Jacobians have an endomorphism ring isomorphic to the maximal order of a sextic CM-field \(K\).

Since \(\rho _*\) is an automorphism of order 3, the field \(K\) contains a primitive 3rd root of unity \(\zeta _3\in K\). In fact, the field \(K\) is determined by a totally real cubic field \(K_0\) that satisfies \(K = K_0(\zeta _3)\).

Van Wamelen [37] gives an algorithm that, given a CM-field \(K\), lists all the isomorphism classes of period matrices of principally polarized abelian varieties with complex multiplication by \({\mathcal {O}}_K\). This method is based on the CM theory due to Shimura and Taniyama (see [29]) and we use the implementation in [33].

Applying said method to a sextic CM-field containing a primitive third root of unity \(\zeta _3\in K\), we obtain a list, say \({\text {CM}}_K\), of period matrices \(\varOmega \) corresponding to principally polarized abelian threefolds with CM by \({\mathcal {O}}_K\) with an order-3 automorphism associated to \(\zeta _3\). By Proposition 1, they are Jacobians of Picard curves. To then obtain the rational representation \(N\) of the order-3 automorphism is a matter of keeping track of the changes of basis throughout van Wamelen’s method. We use the resulting list of pairs \((\varOmega ,N)\) as input for Algorithm 5.

When computing the Riemann theta constants in the algorithm implementation, we restrict the sum to a hypercube \([-B, B]\subset {\mathbb {Z}}^3\) for a certain value \(B\) that depends on the precision required and the minimum eigenvalue of the imaginary part of the period matrix. For efficiency, we would like the smallest eigenvalue of the imaginary part of \(\varOmega \) to be as big as possible, due to its role in the computation of the bound \(B\). Since the isomorphism class of a principally polarized abelian variety only depends on the orbit of \(\varOmega \) under the action of \({\text {Sp}}_{2g}({\mathbb {Z}})\), this can be achieved by choosing a representative in a certain fundamental domain of \({\mathbf {H}}_g\). For this we use the implementation due to Kılıçer–Streng [10] of Algorithm 2 in Labrande–Thomé [15, Sect. 4.1] on our period matrix before applying Algorithm 5. For more details we refer the reader to [32, Sect. 1.5].

After numerically approximating the \(x\)-coordinates of the branch points of \(C\) with Algorithm 5, we obtain a polynomial

$$\begin{aligned}f(x) = x(x-1)(x-\lambda )(x-\mu )\in {\mathbb {C}}[x] \end{aligned}$$

up to some precision, while the curve is actually isomorphic to \(y^3 = h(x)\) for a certain polynomial \(h\) over a number field.

Given the quartic polynomial

$$\begin{aligned}p(x) = x^4 + g_2x^2+g_3x+g_4\text { with } g_2, g_3\ne 0 \end{aligned}$$

we define the absolute invariants of \(p(x)\) as

$$\begin{aligned} j_1 = \dfrac{g_3^2}{g_2^3}, \qquad j_2 = \dfrac{g_4}{g_2^2}. \end{aligned}$$

In order to find \(h(x)\) from \(f(x)\), we compute the absolute invariants of \(C\) by computing \(j_1\) and \(j_2\) for an isomorphic curve of the form \(y^3 = x^4 + g_2x^2+g_3x+g_4\). We use them to obtain a numerical approximation of the class polynomials

$$\begin{aligned} H_{j_i}(x) = \prod _{\varOmega \in \text {CM}_{K}} (x - j_i(\varOmega )) \end{aligned}$$

which have coefficients in the ring of integers of the moduli field of the curve. Once we recognize the exact polynomials we recover the pairs \((j_1, j_2)\) by embedding the roots of \(H_{j_1}, H_{j_2}\) to \({\mathbb {C}}\) and comparing them with the numerical approximations obtained from \(f\).

We then reconstruct an exact model \(h(x)\) for each curve from the exact absolute invariants, obtaining

$$\begin{aligned} y^3 = h(x) = x^4 + j_1x^2 + j_1^2x + j_1^2j_2. \end{aligned}$$

Note that in order to be able to recognize the coefficients of \(H_{j_1}\) and \(H_{j_2}\) as algebraic numbers we have to compute \(\lambda \) and \(\mu \) with enough precision.

Finally, one can use the algorithm in [5] to compute the endomorphism algebra of the Jacobian of the curve, confirming that the obtained curves have CM by the maximal order of the initial CM-field.

The list below contains models for all maximal CM Picard curves whose CM-field has class number \(h\le 4\). We get the sextic fields from [23, Table 3]. The authors of [13], working off an earlier version of this paper [16], give supporting evidence of the correctness of our examples. We have now confirmed the correctness of the models using the implementation of the algorithm in [5].

The examples (1)–(8), (13)–(14) include all the maximal CM Picard curves defined over \({\mathbb {Q}}\). The completeness of the list follows from Kılıçer [11, Theorem 4.3.1], as well as the fact that in examples (13)–(14) we also obtain three conjugate curves defined over \(K_0\); see also [11, Table 3.1].

The examples (9)–(12) are defined over a cubic number field \(L\) such that the composition \(KL\) is the Hilbert class field of \(K\). This follows from Shimura–Taniyama [28, Main Theorem 1], since we have \(h_K = 3\) and the curves are not defined over \({\mathbb {Q}}\).

Remark 5

Examples (1)–(5) also appear in [14, Sect. 6.1]. Moreover, it is worth mentioning the existence of an algorithm to compute maximal CM plane quartics, see [12]. In particular, this algorithm can be used to compute maximal CM Picard curves, although less efficiently due to its more general scope. In fact, all the curves defined over \({\mathbb {Q}}\) that we give were independently found in [12].

Remark 6

It is also possible to use this algorithm to compute maximal CM Picard curves over finite fields, by obtaining first a rational model, and then reducing it modulo \(p\). An alternative approach to this problem is given in [1] using the Chinese Reminder Theorem. In particular, see [1, Sect. 7] for an example using the CM-field in Example (2) and a comparison of the performance of both algorithms.

  1. 1.

    \(y^3 = x^4 - x\), with \(K_0\) defined by \(\nu ^3 - 3\nu -1\).

  2. 2.

    \(y^3 = x^4 - 2\cdot 7^2 \, x^2 + 2^3\cdot 7^2\, x - 7^3\), with \(K_0\) defined by \(\nu ^3 - \nu ^2 - 2\nu +1\).

  3. 3.

    \(y^3 = x^4 - 2\cdot 7^2\cdot 13\, x^2 +2^3\cdot 5\cdot 13\cdot 47\, x - 5^2\cdot 13^2\cdot 31\), with \(K_0\) defined by \(\nu ^3 - \nu ^2 - 4\nu -1\).

  4. 4.

    \(y^3 = x^4 - 2\cdot 7\cdot 31\cdot 73\, x^2 + 2^{11}\cdot 31\cdot 47\, x - 7\cdot 31^2\cdot 11593\), with \(K_0\) defined by \(\nu ^3 + \nu ^2 - 10\nu -8\).

  5. 5.

    \(y^3 = x^4 -2\cdot 7\cdot 43^2\cdot 223\, x^2 + 2^7\cdot 11\cdot 41\cdot 43^2\cdot 59\, x- 11^2\cdot 43^3\cdot 419\cdot 431\), with \(K_0\) defined by \(\nu ^3 - \nu ^2 - 14\nu -8\).

  6. 6.

    \(y^3 = x^4 - 2 \cdot 3^{2} \cdot 5^{2} \cdot 7^{2}\, x^2 + 2^{9} \cdot 7^{2} \cdot 71\, x - 3^{2} \cdot 5 \cdot 7^{3} \cdot 2621 \), with \(K_0\) defined by \(\nu ^3 - 21\nu -28\).

  7. 7.

    \(y^3 = x^4 - 2^{2} \cdot 3^{2} \cdot 7^{2} \cdot 37\, x^2 + 5 \cdot 7^{2} \cdot 149 \cdot 257 \, x - 2 \cdot 3^{2} \cdot 5^{2} \cdot 7^{3} \cdot 2683\), with \(K_0\) defined by \(\nu ^3 - 21\nu +35\).

  8. 8.

    \(y^3 = x^4 -2 \cdot 3^{2} \cdot 5^{2} \cdot 7 \cdot 11 \cdot 13\, x^2 + 2^{7} \cdot 11 \cdot 13 \cdot 59 \cdot 149 \, x - 3^{2} \cdot 5 \cdot 7 \cdot 13^{2} \cdot 17 \cdot 17669\), with \(K_0\) defined by \(\nu ^3 - 39\nu +26\).

  9. 9.

    For \(K_0\) defined by \(\nu ^3 - \nu ^2 - 6\nu + 7\), and \(w^3 = 19\), we obtain the three conjugate curves

    $$\begin{aligned} y^3 = x^4 + (10w^2 - 2w-70)\, x^2 + (96w^2 - 7w-496)\, x + (235w^2 - 215w - 1101). \end{aligned}$$
  10. 10.

    For \(K_0\) defined by \(\nu ^3 - \nu ^2 - 12\nu - 11\), and \(w^3 = 37\), we obtain the three conjugate curves

    $$\begin{aligned} \begin{aligned} y^3 = \, \,&x^4 + (-2366w^2 + 490w + 24626) \, x^2 + (-257958w^2 - 686928w\\&+ 5152928)\, x + (1226851w^2 - 56922233w + 176054907). \end{aligned} \end{aligned}$$
  11. 11.

    For \(K_0\) defined by \(\nu ^3 - 109\nu - 436\), and \(w^3 = 109\), we obtain the three conjugate curves

    $$\begin{aligned} \begin{aligned} y^{3} =\, \,&x^{4} + \left( 1115888872 w^{2} - 4007074778 w - 6321528472\right) x^{2} \\ {}&+ \left( -39141169182336 w^{2} + 294349080537984 w - 512926132238464\right) x \\&+ 816342009554519305 w^{2} - 9276324622428605048 w\\ {}&+ 25684086855493144296. \end{aligned} \end{aligned}$$
  12. 12.

    For \(K_0\) defined by \(\nu ^3 - \nu ^2 - 42\nu - 80\), and \(w^3 = 127\), we obtain the three conjugate curves

    $$\begin{aligned} \begin{aligned} y^{3} =&\; x^{4} + \left( -92075757704 w^{2} + 319193013538 w + 721950578888\right) x^{2}\\&+ \big (-49404281036538240 w^{2} - 182817463505393280 w + \\ {}&2167183294305193600\big ) x + 21690511027003736433025 w^{2} - \\ {}&118803029086722205449800 w + 49134882128483485627800. \end{aligned} \end{aligned}$$
  13. 13.

    For \(K_0\) defined by \(v^3 - 61v - 183\), we have four curves. The first one is defined over \({\mathbb {Q}}\).

    $$\begin{aligned} \begin{aligned} y^3 =\, \,&x^{4} - 2 \cdot 3 \cdot 7 \cdot 61^{2} \cdot 1289 \, x^{2} + 2^{3} \cdot 3^{7} \cdot 11 \cdot 41 \cdot 53 \cdot 61^{2} \, x\\&- 3^{2} \cdot 7 \cdot 11^{2} \cdot 61^{3} \cdot 419 \cdot 4663, \end{aligned} \end{aligned}$$

    and the three conjugates

    $$\begin{aligned} \begin{aligned} y^{3} = \, \,&x^{4} + \left( 89264 v^{2} - 547484 v - 4059720\right) x^{2} + \big (-29558196 v^{2} + 49526073 v \\ {}&+ 772138494\big ) x + 88325678 v^{2} - 16281030326 v - 72348132021 \end{aligned} \end{aligned}$$
  14. 14.

    For \(K_0\) defined by \(v^3 - v^2 - 22v - 5\), similarly one gets:

    $$\begin{aligned} \begin{aligned} y^3 = \, \,&x^{4} + 2 \cdot 7 \cdot 67 \cdot 179 \, x^{2} + 2^3 \cdot 3^3 \cdot 5 \cdot 67 \cdot 137 \, x + 5^2 \cdot 7 \cdot 67^2 \cdot 71 \cdot 89 \end{aligned} \end{aligned}$$

    and the three conjugates

    $$\begin{aligned} \begin{aligned} y^{3} = \, \,&x^{4} + \left( 12222 v^{2} - 263088 v - 1290744\right) x^{2} + \big (-19721880 v^{2} + 232016400 v\\ {}&+ 1277237160\big ) x + 11453819175 v^{2} - 62791404525 v - 447679991475 \,. \end{aligned} \end{aligned}$$


  1. 1.

    Arora, S., Eisenträger, K.: Constructing Picard curves with complex multiplication using the Chinese remainder theorem. In: Proceedings of the Thirteenth Algorithmic Number Theory Symposium. Open Book Series, vol. 2, pp. 21–36. Mathematical Sciences Publishers, Berkeley (2019)

  2. 2.

    Balakrishnan, J.S., Ionica, S., Lauter, K., Vincent, C.: Constructing genus-3 hyperelliptic Jacobians with CM. LMS J. Comput. Math., 19(suppl. A):283–300 (2016)

  3. 3.

    Balakrishnan, J.S., Ionica, S., Lauter, K., Vincent, C.: Genus 3. (2016)

  4. 4.

    Birkenhake, C., Lange, H.: Complex Abelian Varieties. Grundlehren der Mathematischen Wissenschaften, 2nd edn, vol. 302. Springer, Berlin (2004)

  5. 5.

    Costa, E., Mascot, N., Sijsling, J., Voight, J.: Rigorous computation of the endomorphism ring of a Jacobian. Math. Comput. 88(317), 1303–1339 (2019). Implementation.

  6. 6.

    Dina, B.A., Ionica, S.: Genus \(3\) hyperelliptic curves with CM via Shimura reciprocity. Accepted for publication in the Proceedings of the ANTS 2020 Conference

  7. 7.

    Guàrdia, J.: On the Torelli problem and Jacobian Nullwerte in genus three. Mich. Math. J. 60(1), 51–65 (2011)

    MathSciNet  Article  Google Scholar 

  8. 8.

    Holzapfel, R.-P.: The Ball and Some Hilbert Problems. Lectures in Mathematics ETH Zürich. Birkhäuser Verlag, Basel. Appendix I by J. Estrada Sarlabous (1995)

  9. 9.

    Hoyt, W.L.: On products and algebraic families of Jacobian varieties. Ann. Math. 2(77), 415–423 (1963)

    MathSciNet  Article  Google Scholar 

  10. 10.

    Kılıçer, P., Streng, M.: LLL reduction of period matrices of genus 3 (2016).

  11. 11.

    Kılıçer, P.: The CM class number one problem for curves. PhD thesis, Leiden University (2016)

  12. 12.

    Kilicer, P., Labrande, H., Lercier, R., Ritzenthaler, C., Sijsling, J., Streng, M.: Plane quartics over \(\mathbb{Q}\) with complex multiplication. Acta Arith. 185(2), 127–156 (2018)

    MathSciNet  Article  Google Scholar 

  13. 13.

    Kılıçer, P., García, E.L., Streng, M.: Primes dividing invariants of CM Picard curves. Can. J. Math. 72(2), 480–504 (2020)

    MathSciNet  Article  Google Scholar 

  14. 14.

    Koike, K., Weng, A.: Construction of CM Picard curves. Math. Comput. 74(249), 499–518 (2005)

    MathSciNet  Article  Google Scholar 

  15. 15.

    Labrande, H., Thomé, E.: Computing theta functions in quasi-linear time in genus two and above. LMS J. Comput. Math. 19(suppl. AsupplSuppl. A), 163–177 (2016)

    MathSciNet  Article  Google Scholar 

  16. 16.

    Lario, J.-C., Somoza, A.: A note on Picard curves of CM-type. Unpublished (2016). arXiv:1611.02582v1

  17. 17.

    Lombardo, D., Lorenzo García, E., Ritzenthaler, C., Sijsling, J.: Decomposing Jacobians via Galois covers. Experimental Mathematics (2021, to appear)

  18. 18.

    Matsusaka, T.: On a characterization of a Jacobian variety. Mem. Coll. Sci. Univ. Kyoto Ser. A. Math. 32, 1–19 (1959)

  19. 19.

    Milne, J.S.: Jacobian varieties. In: Cornell, G., Silverman, J.H. (eds.) Arithmetic Geometry, pp. 167–212. Springer, New York (1986)

    Google Scholar 

  20. 20.

    Mumford, D.: Tata Lectures on Theta II. Progress in Mathematics, vol. 43. Birkhäuser Boston, Boston. Jacobian theta functions and differential equations. With the collaboration of C. Musili, M. Nori, E. Previato, M. Stillman and H. Umemura (1984)

  21. 21.

    Mumford, D.: Tata Lectures on Theta. I. Modern Birkhäuser Classics. Birkhäuser Boston, Boston (2007). With the collaboration of C. Musili, M. Nori, E. Previato and M. Stillman, Reprint of the 1983 edition

  22. 22.

    Oort, F., Ueno, K.: Principally polarized abelian varieties of dimension two or three are Jacobian varieties. J. Fac. Sci. Univ. Tokyo Sect. IA Math., 20:377–381, (1973)

  23. 23.

    Park, Y.-H., Kwon, S.-H.: Determination of all imaginary abelian sextic number fields with class number \(\le 11\). Acta Arith. 82(1), 27–43 (1997)

    MathSciNet  Article  Google Scholar 

  24. 24.

    Picard, E.: Sur des fonctions de deux variables indépendantes analogues aux fonctions modulaires. Acta Math. 2(1), 114–135 (1883)

    MathSciNet  Article  Google Scholar 

  25. 25.

    Poor, C.: The hyperelliptic locus. Duke Math. J. 76(3), 809–884 (1994)

    MathSciNet  Article  Google Scholar 

  26. 26.

    Rosenhain, G., Weber, H., Witting, A.: Abhandlung über die functionen zweier variabler mit vier perioden: welche die inversen sind der ultra-elliptischen integrale erster klasse. Ostwalds Klassiker der exakten Wissenschaften. W, Engelmann (1895)

  27. 27.

    Shiga, H.: On the representation of the Picard modular function by \(\theta \) constants. I, II. Publ. Res. Inst. Math. Sci. 24(3), 311–360 (1988)

  28. 28.

    Shimura, G., Taniyama, Y.: Complex Multiplication of Abelian Varieties and Its Applications to Number Theory. Publications of the Mathematical Society of Japan, vol. 6. The Mathematical Society of Japan, Tokyo (1961)

  29. 29.

    Shimura, G., Taniyama, Y.: Complex Multiplication of Abelian Varieties and Its Applications to Number Theory. Publications of the Mathematical Society of Japan, Tokyo (1961)

    MATH  Google Scholar 

  30. 30.

    Siegel, C.L.: Topics in Complex Function Theory, vol. II. Wiley Classics Library. Wiley, New York (1988)

  31. 31.

    Somoza, A.: Inverse Jacobian algorithms for Picard and CPQ curves (2018).

  32. 32.

    Somoza, A.: Inverse Jacobian and related topics for certain superelliptic curves. PhD thesis, Leiden University and Universitat Politècnica de Catalunya (2019)

  33. 33.

    Streng, M.: REpository of complex multIPlication SageMath code.

  34. 34.

    Takase, K.: A generalization of Rosenhain’s normal form for hyperelliptic curves with an application. Proc. Jpn. Acad. Ser. A Math. Sci. 72(7), 162–165 (1996)

    MathSciNet  Article  Google Scholar 

  35. 35.

    The Sage Developers: SageMath, the Sage Mathematics Software System (Version 8.2).

  36. 36.

    Thomae, J.: Beitrag zur Bestimmung von \(\vartheta (0,0,\dots 0)\) durch die Klassenmoduln algebraischer Functionen. J. Reine Angew. Math. 71, 201–222 (1870)

    MathSciNet  MATH  Google Scholar 

  37. 37.

    van Wamelen, P.: Examples of genus two CM curves defined over the rationals. Math. Comput. 68(225), 307–320 (1999)

    MathSciNet  Article  Google Scholar 

  38. 38.

    Weber, H.: Theorie der abel’schen functionen vom geschlecht 3 (1876)

  39. 39.

    Weng, A.: A class of hyperelliptic CM-curves of genus three. J. Ramanujan Math. Soc. 16(4), 339–372 (2001)

    MathSciNet  MATH  Google Scholar 

Download references


The first two authors would like to thank Marco Streng and Christelle Vincent for useful discussions. They also thank the reviewers for their very helpful comments. The author of this appendix wishes to thank first and foremost Sorina Ionica, who verified the result independently with a proof that follows Takase’s work more closely. She also thanks Marco Streng for first bringing to her attention the need to generalize Takase’s work, and Anna Somoza for pointing out that her work on Picard curves could be adapted to obtain the correct sign. In addition, she thanks Jeroen Sijsling for performing computations confirming the correctness of the sign as computed in this appendix. Finally, she would like to extend her warmest thanks to the referees for their helpful suggestions which have made the writing stronger.

Author information



Corresponding author

Correspondence to Anna Somoza.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendix A (by Christelle Vincent)

Appendix A (by Christelle Vincent)

Let C be a hyperelliptic curve of genus \(g\ge 2\) defined over \({\mathbb {C}}\), and denote by \(x :C \rightarrow {\mathbb {P}}^1\) a morphism of degree 2 from C to \({\mathbb {P}}^1\). Then x has \(2g+2\) branch points which do not depend on the choice of x. We fix once and for all an ordering of these branch points, and denote them by \(P_1, P_2, \ldots , P_{2g+2}\). Furthermore, for simplicity of notation in what follows we will denote

$$\begin{aligned} a_j = x(P_j). \end{aligned}$$

The significance of these quantities is the following: If \(x(P_j) \ne \infty \) for any j, then a model for C over \({\mathbb {C}}\) is given by

$$\begin{aligned} y^2 = \prod _{j=1}^{2g+2} (x-a_j), \end{aligned}$$

whereas if there is k with \(x(P_k) = \infty \), a model for C over \({\mathbb {C}}\) is given by

$$\begin{aligned} y^2 = \prod _{j \ne k} (x-a_j). \end{aligned}$$

Our goal in this appendix is to show the following proposition, which generalizes a formula given by Takase [34, Theorem 1.1]. In the statement we use the notation \([a_l,a_m,a_k,a_{\infty }]\) for the cross-ratio

$$\begin{aligned}{}[a_l,a_m,a_k,a_{\infty }] = \frac{a_k-a_l}{a_k-a_m} \cdot \frac{a_{\infty }-a_m}{a_{\infty }-a_l}. \end{aligned}$$

Proposition 3

Let C be a hyperelliptic curve defined over \({\mathbb {C}}\), \(x :C \rightarrow {\mathbb {P}}^1\) be a morphism of degree 2 with branch points \(P_1, \ldots , P_{2g+2}\), and \(\varOmega \) be a (small) period matrix for J(C), the Jacobian of C. Let k, l and m be distinct and belong to the set \(\{1,2, \ldots , 2g+2\}\), and fix \(P_\infty \) a distinguished branch point of x, \(\infty \ne k,l,m\). Then, for \(a_j = x(P_j)\) and \(\eta \) an eta-map associated to \(\varOmega \) and the base point \(P_\infty \) with corresponding U-set \(U_\eta \), we have

$$\begin{aligned}{}[a_l,a_m,a_k,a_{\infty }]= \exp (4 \pi i (\eta _{m}-\eta _{l})_1(\eta _k)_2)\left( \frac{\theta [\eta _{U_\eta \circ (V \cup \{k,l\})}](\varOmega )\theta [\eta _{U_{\eta } \circ (W \cup \{k,l\})}](\varOmega )}{\theta [\eta _{U_\eta \circ (V \cup \{k,m\})}](\varOmega )\theta [\eta _{U_{\eta } \circ (W \cup \{k,m\})}](\varOmega )}\right) ^2,\nonumber \\ \end{aligned}$$

where V and W are any sets that give a disjoint decomposition

$$\begin{aligned} \{1,2,\ldots , 2g+1,2g+2\} = V \cup W \cup \{k,l,m,\infty \}, \end{aligned}$$

with \(\#V = \#W = g-1\).

As an immediate corollary, if we denote by \(\lambda _i\) for \(i = 3, 4, \ldots , 2g+1\) the Rosenhain invariants of C, by which we mean the constants appearing in a choice of Rosenhain model

$$\begin{aligned} C : y^2 = x(x-1) \prod _{i = 3}^{2g+1} (x- \lambda _i) \end{aligned}$$

for the curve C, we obtain the following formula:

Corollary 2

Let C be a hyperelliptic curve defined over \({\mathbb {C}}\), and fix a choice of Rosenhain model for C. Let \(P_\infty \) denote the point of C that is “at infinity” in the Rosenhain model of C, \(\varOmega \) be a choice of period matrix for J(C), the Jacobian of C, and \(\eta \) be an eta-map associated to \(\varOmega \) and the base point \(P_\infty \) with corresponding U-set \(U_\eta \). Then for \(j \in \{3,4, \ldots , 2g+1\}\), the Rosenhain invariants of C are given by the expression

$$\begin{aligned} \lambda _j = \exp (4 \pi i (\eta _j-\eta _2)_1(\eta _1)_2)\left( \frac{\theta [\eta _{U_\eta \circ (V \cup \{1,2\})}](\varOmega )\theta [\eta _{U_{\eta } \circ (W \cup \{1,2\})}](\varOmega )}{\theta [\eta _{U_\eta \circ (V \cup \{1,j\})}](\varOmega )\theta [\eta _{U_{\eta } \circ (W \cup \{1,j\})}](\varOmega )}\right) ^2, \end{aligned}$$

where V and W are two sets of cardinality \(g-1\) such that

$$\begin{aligned} V \cup W = \{3, 4, \ldots , 2g+1\} \setminus \{j\}, \end{aligned}$$

and the notation \(\circ \) denotes the symmetric difference of two sets: For \(S,T \subseteq \{1,2, \ldots , 2g+2 \}\), we have

$$\begin{aligned} S\circ T = (S\cup T) \setminus (S \cap T). \end{aligned}$$

We now discuss briefly the history of this result and why this publication is necessary. In his work [34], Takase gives the formula presented in Proposition 3 in the special case where \(a_\infty = \infty \), and only for certain choices of period matrix \(\varOmega \) for the Jacobian of C. These period matrices are those given by Mumford [20], using his “traditional” choice of symplectic basis for the first homology group of the Jacobian. This work was notably used by Weng in [39] to give models of hyperelliptic curves whose Jacobian has complex multiplication. Since our software [3] did not allow us to make the same choice of period matrix, for our computations we needed a more general result. Our earlier article [2, Theorem 4.5] claimed to give the formula for all period matrices (retaining the assumption that \(a_\infty = \infty \)), but unfortunately we found out later that there remained a mistake in the sign of \(\lambda _i\), which had not been corrected to account for the general case.

The mistake was originally found by the authors of [12] as they worked to complete the list of curves of genus 3 defined over \({\mathbb {Q}}\) whose geometric endomorphism ring is a maximal order in a sextic field. For a specific period matrix in their list, the code provided in [3] did not yield a correct model for the hyperelliptic curve. Somoza, an author of this article, pointed out the “third root of unity” issue she had found and fixed in the Picard case, and after some trial and error we found that we had the same issue in the hyperelliptic case, with the exception that we were missing instead a second root of unity, or a sign.

The formula we finally give here is valid for all period matrices, and gives the correct value for \(\lambda _i\). We note that the software available at [3] has been updated to be correct. As mentioned before, in addition to correcting the sign of \(\lambda _i\), the formula given here is more general than that given by Takase, because here we do not assume that \(a_{\infty } = \infty \), which explains why we compute the cross-ratio \([a_l,a_m,a_k,a_{\infty }]\) rather than the simpler quotient \(\frac{a_k-a_l}{a_k-a_m}\) as Takase does. As far as the proof is concerned, our proof does not follow that given by Takase, though it is possible to follow his method to arrive at the same result (though still with the assumption that \(a_\infty = \infty \)) as was done independently by Ionica in unpublished work. We note that this is not simpler or shorter than the proof we give here. The corrected formula has since been used in [6] to compute hyperelliptic class polynomials in genus 3.

A.1 Preliminaries

Following the technique used in the body of the paper, we will use Siegel’s Theorem 2 applied to a suitable choice of function \(\phi :C \rightarrow {\mathbb {P}}^1\) to obtain our results. To apply Siegel’s Theorem, we first need a non-special divisor on C:

Lemma 2

Let C be a hyperelliptic curve defined over \({\mathbb {C}}\), \(x :C \rightarrow {\mathbb {P}}^1\) be a morphism of degree 2 from C to \({\mathbb {P}}^1\), and \(P_1,\ldots P_{2g+2}\) be the branch points of x. Let \(I \subset \{1, 2, \ldots , 2g+2\}\) be any subset of cardinality g. Then

$$\begin{aligned} D = \sum _{i \in I} P_i \end{aligned}$$

is a non-special divisor on C. In other words, any sum of g distinct branch points of x is a non-special divisor on C.


We recall that a divisor D is non-special if \(\ell (K-D) =0\), where K is a canonical divisor on the curve C.

Fix \(P_\infty \) a branch point that is not in the support of D, and a model

$$\begin{aligned} s^2 = f(t) \end{aligned}$$

for the hyperelliptic curve, where f is of degree \(2g+1\) and \(P_\infty \) is the point at infinity. Then

$$\begin{aligned} {{\,\mathrm{div}\,}}(s) = \sum _{i\ne \infty } P_i - (2g+1)P_\infty , \quad \text {and} \quad {{\,\mathrm{val}\,}}_{P_\infty }({{\,\mathrm{div}\,}}(t) )= -2. \end{aligned}$$

We may then use

$$\begin{aligned} {{\,\mathrm{div}\,}}(dt) = \sum _{i\ne \infty } P_i - 3 P_\infty \end{aligned}$$

as a canonical divisor. Now suppose by way of contradiction that \(\ell ({{\,\mathrm{div}\,}}(dt)-D) \ge 1\), so there exists a function f on C with

$$\begin{aligned} {{\,\mathrm{div}\,}}(f) \ge D - {{\,\mathrm{div}\,}}(dt). \end{aligned}$$

Then certainly we have

$$\begin{aligned} {{\,\mathrm{div}\,}}(sf) \ge D - {{\,\mathrm{div}\,}}(dt) + {{\,\mathrm{div}\,}}(s) = \sum _{i \in I}P_i - (2g-2)P_\infty . \end{aligned}$$

Now functions on C are rational functions in s and t, and functions on C with poles only at \(\infty \) must be polynomials in s and t. Since \({{\,\mathrm{val}\,}}_{P_\infty }(s) = -(2g+1)\), the function sf is a polynomial in t, of degree less than or equal to \(g-1\). However, such a polynomial cannot have g zeroes, one at each of the points in the support of D. From this contradiction we conclude that \(\ell (K-D) = 0\) and D is non-special. \(\square \)

Secondly, to connect our result to the established literature on hyperelliptic curves, we will need an eta-map associated to a period matrix \(\varOmega \) and a base point \(P_\infty \). We refer the interested reader to either Poor’s work [25] or our earlier work [2] for more details on these maps, and present here only the barest of facts necessary to keep this appendix readable. Let \(P_{\infty }\) be an arbitrary but fixed branched point of the degree 2 morphism \(x :C \rightarrow {\mathbb {P}}^1\) fixed above, and recall that we have labeled the branch points of x to be \(P_1, P_2, \ldots , P_{2g+2}\) (one of these is of course also labeled \(P_\infty \)). As in the body of the paper, fix \(\alpha \) an Abel-Jacobi map for C with base point \(P_{\infty }\). Then for \(j \in \{1,2, \ldots , 2g+2\}\), we write

$$\begin{aligned} \eta _j = \widetilde{P_j} \in \left\{ 0,\frac{1}{2}\right\} ^{2g} \end{aligned}$$

where \({\widetilde{\cdot }}\) is the map given in equation (6), and as in the body of the paper we denote the composition of the three maps by the last. The fact that the coordinates of \(\eta _j\) for each j are half-integers follows from the fact that \(P_j-P_{\infty }\) is two-torsion in J(C), see [20, Corollary 2.11]. Furthermore, for any subset \(S \subseteq \{1,2, \ldots , 2g+2\}\), we write

$$\begin{aligned} \eta _S = \sum _{j \in S} \eta _j. \end{aligned}$$

Note that we use the same convention as in the body of the paper regarding summation of characteristics; see the paragraph immediately following Eq. (6) for a discussion of this convention. Because of this, it follows that

$$\begin{aligned} \eta _S = \widetilde{D_S}, \end{aligned}$$


$$\begin{aligned} D_S = \sum _{j \in S} P_j. \end{aligned}$$

We note that the dependence of the eta-map on the period matrix \(\varOmega \) happens explicitly via the map \({\underline{\cdot }}\).

Under these assumptions, there exists a subset \(U_{\eta }\subseteq \{1,2,\ldots ,2g+2\}\) such that

$$\begin{aligned} \eta _{U_{\eta }} \equiv {\widetilde{\varDelta }} \pmod {{\mathbb {Z}}^{2g}} \end{aligned}$$

where \(\varDelta \) is the Riemann constant associated to the choice of Abel-Jacobi map \(\alpha \) that we made. We note that in fact there are several such sets; it is customary to choose one of even cardinality, and we have adopted in earlier work the convention that \(U_{\eta }\) should also contain \(\infty \). This determines the set \(U_{\eta }\) uniquely. We call this set a U-set corresponding to \(\eta \). Finally, one can show that if S is the complement of T inside of \(\{1,2,\ldots , 2g+2\}\), then

$$\begin{aligned} \eta _S = \eta _T. \end{aligned}$$

A.2 Proof of the formula

With this notation and preliminaries in place, we may begin the proof. We begin with an auxiliary result:

Lemma 3

Let \(P_j\) and \(P_{\infty }\) be two distinct branch points of the morphism x, \(\alpha \) be an Abel–Jacobi map with base point \(P_\infty \), and \(\gamma \) be a path from \(P_{\infty }\) to \(P_j\) such that if \({\widetilde{P}}_j = \eta _j\) (where the map \({\widetilde{\cdot }}\) is as in Eq. (6)), then

$$\begin{aligned} \int _{\gamma } \omega = \varOmega (\eta _j)_1 + (\eta _j)_2. \end{aligned}$$

In this case there exists a second path \({\widetilde{\gamma }}\) from \(P_{\infty }\) to \(P_j\) such that

$$\begin{aligned} \int _{\gamma } \omega + \int _{{\widetilde{\gamma }}} \omega = 0 \quad \text {in} \quad {\mathbb {C}}^g. \end{aligned}$$


We have that \({\widetilde{P}}_j = \eta _j \in \{0,\frac{1}{2}\}^{2g}\) (see Eq. (27) and the discussion surrounding it for this fact). From this it follows that if \(L_{\varOmega } = \varOmega {\mathbb {Z}}^{2g} +{\mathbb {Z}}^{2g}\) is the lattice attached to the period matrix \(\varOmega \), we have that

$$\begin{aligned} \int _{\gamma } \omega \in \frac{1}{2}L_{\varOmega }, \end{aligned}$$


$$\begin{aligned} 2\int _{\gamma } \omega \in L_{\varOmega }. \end{aligned}$$

As a consequence, \(\int _{\gamma } \omega \) and \(-\int _{\gamma } \omega \) differ by an element of \(L_{\varOmega }\), and since every \(L_{\varOmega }\)-translate of \(\int _{\gamma } \omega \) is \(\int _{{\widetilde{\gamma }}} \omega \) for some other path \({\widetilde{\gamma }}\) from \(P_{\infty }\) to \(P_j\), it follows that there is \({\widetilde{\gamma }}\) from \(P_{\infty }\) to \(P_j\) such that

$$\begin{aligned} -\int _{\gamma } \omega = \int _{{\widetilde{\gamma }}} \omega . \end{aligned}$$

\(\square \)

We can now give the crucial part of the proof:

Lemma 4

Let C be a hyperelliptic curve defined over \({\mathbb {C}}\), \(x :C \rightarrow {\mathbb {P}}^1\) be a morphism of degree 2 with branch points \(P_1, \ldots , P_{2g+2}\), and \(\varOmega \) be a period matrix for J(C), the Jacobian of C. Let k, l and m be distinct and belong to the set \(\{1,2, \ldots , 2g+2\}\), and fix \(P_\infty \) a distinguished branch point of x, with \(\infty \ne k,l,m\). Then, for \(a_j = x(P_j)\), and \(\eta \) an eta-map associated to \(\varOmega \) and to the base point \(P_\infty \) with corresponding U-set \(U_\eta \), we have

$$\begin{aligned}{}[a_l,a_m,a_k,a_{\infty }]=\epsilon (k,l,m)\left( \frac{\theta [\eta _{S_l \circ U_\eta }](\varOmega )\theta [\eta _{T_m \circ U_\eta }](\varOmega )}{\theta [\eta _{S_m \circ U_\eta }](\varOmega )\theta [\eta _{T_l \circ U_\eta }](\varOmega )}\right) ^2, \end{aligned}$$


$$\begin{aligned} \epsilon (k,l,m) = \exp (4 \pi i (\eta _{m}-\eta _{l})_1(\eta _k)_2), \end{aligned}$$

and for \(j = l,m\), we have

$$\begin{aligned} T_j = V \cup \{j\}, \end{aligned}$$


$$\begin{aligned} S_j = T_j \cup \{k\} = V\cup \{j,k\}, \end{aligned}$$

where V is any set of cardinality \(g-1\) such that \(V \subset \{1,2,\ldots ,2g+2\}\), \(k,l, m, \infty \not \in V\).


To begin, fix \(\infty \in \{1,2,\ldots ,2g+2\}\), \(\infty \ne k,l,m\), and let

$$\begin{aligned} x_k(P) :C \rightarrow {\mathbb {P}}^1 \end{aligned}$$

be given by

$$\begin{aligned} x_k(P) = \frac{x(P) - x(P_k)}{x(P)-x(P_{\infty })}. \end{aligned}$$

Then the cross-ratio we seek is given by

$$\begin{aligned}{}[a_l,a_m,a_k,a_{\infty }]= \frac{x_k(P_l)}{x_k(P_m)}. \end{aligned}$$

Next we fix a subset \(V \subset \{1,2,\ldots ,2g+2\}\) of cardinality \(g-1\) such that \(k,l, m, \infty \not \in V\). (Note that this is possible since \(2g-2\ge g-1\) for \(g \ge 1\).) Then the quantity which interests us is given by

$$\begin{aligned}{}[a_l,a_m,a_k,a_{\infty }]= \frac{x_k(P_l) \prod _{i \in V} x_k(P_i)}{x_k(P_m)\prod _{i \in V} x_k(P_i)}. \end{aligned}$$

In addition, for \(j = l,m\), the divisor

$$\begin{aligned} D_j = P_j + \sum _{i \in V} P_i \end{aligned}$$

is a sum of g distinct branch points of x, and therefore an effective non-special divisor by Lemma 2.

Using the notation of Siegel’s Theorem 2, we have

$$\begin{aligned}{}[a_l,a_m,a_k,a_{\infty }]= \frac{x_k(D_l)}{x_k(D_m)}, \end{aligned}$$

and now wish to apply Corollary 1 to compute the quantities \(x_k(D_l)\) and \(x_k(D_m)\).

To do so, we note that

$$\begin{aligned} {{\,\mathrm{div}\,}}(x_k) = 2P_k - 2P_{\infty } \end{aligned}$$

and that the supports of the divisors \(D_l\) and \(D_m\) avoid the support of \({{\,\mathrm{div}\,}}(x_k)\). As in the previous section, we denote by \(\varDelta \) the Riemann constant for the Abel-Jacobi map \(\alpha \) of C with base point \(P_{\infty }\). In the application of Siegel’s Theorem, we will choose the paths from \(P_{\infty }\) to \(P_{\infty }\) to be the trivial paths. As in Lemma 3, we fix a path \(\gamma \) from \(P_k\) to \(P_{\infty }\) such that

$$\begin{aligned} \int _{\gamma } \omega = \widetilde{P_k} = \varOmega (\eta _k)_1+(\eta _k)_2, \end{aligned}$$

and denote by \({\widetilde{\gamma }}\) the path from \(P_k\) to \(P_{\infty }\) such that

$$\begin{aligned} \int _{\gamma } \omega + \int _{{\widetilde{\gamma }}}\omega = 0. \end{aligned}$$

We have then that

$$\begin{aligned} \int _{{\widetilde{\gamma }}}\omega = -{\widetilde{P}}_k. \end{aligned}$$

Finally, to simplify the notation, we further let

$$\begin{aligned} T_j = V \cup \{j\}, \end{aligned}$$

for \(j = l,m\), and replace the notation \({\widetilde{P}}_i\) with the notation \(\eta _i\), using our convention for sums.

After these preliminaries, a straightforward application of Corollary 1 to \(x_k(D_l)\) and \(x_k(D_m)\) yields

$$\begin{aligned}{}[a_l,a_m,a_k,a_{\infty }]&= \frac{x_k(D_l)}{x_k(D_m)} \end{aligned}$$
$$\begin{aligned}&= \left( \frac{\theta [\eta _{T_l}-\eta _k-{\widetilde{\varDelta }}](\varOmega )\theta [\eta _{T_l}+\eta _k-{\widetilde{\varDelta }}] (\varOmega )}{\theta [\eta _{T_l}-{\widetilde{\varDelta }}](\varOmega )^2}\right) \nonumber \\&\quad \div \left( \frac{\theta [\eta _{T_m}-\eta _k-{\widetilde{\varDelta }}](\varOmega )\theta [\eta _{T_m}+ \eta _k-{\widetilde{\varDelta }}](\varOmega )}{\theta [\eta _{T_m}-{\widetilde{\varDelta }}](\varOmega )^2}\right) . \end{aligned}$$

To use the quasiperiodicity property of the theta function, we write

$$\begin{aligned} S_j = T_j \cup \{k\} = V\cup \{j,k\} \end{aligned}$$

for \(j = l,m\), so that we have

$$\begin{aligned} \eta _{T_j}+\eta _k = \eta _{S_j}, \end{aligned}$$

since \(k \not \in T_j\). Then for \(j = l,m\), the characteristics

$$\begin{aligned} \eta _{S_j}-{\widetilde{\varDelta }}-2\eta _k \quad \text {and} \quad \eta _{S_j}-{\widetilde{\varDelta }} \end{aligned}$$

differ by an integer vector, namely \(-2\eta _k\).

Applying the quasi-periodicity property of the Riemann theta constant with characteristic given in equation (5), we obtain

$$\begin{aligned} \theta [\eta _{S_j}-{\widetilde{\varDelta }}-2\eta _k](\varOmega )= \exp (4 \pi i ({\widetilde{\varDelta }}-\eta _{S_j})_1(\eta _k)_2)\theta [\eta _{S_j}-{\widetilde{\varDelta }}](\varOmega ). \end{aligned}$$

Therefore we have

$$\begin{aligned}{}[a_l,a_m,a_k,a_{\infty }]&= \left( \frac{\exp (4 \pi i ({\widetilde{\varDelta }}-\eta _{S_l})_1(\eta _k)_2)\theta [\eta _{S_l}-{\widetilde{\varDelta }}](\varOmega )^2}{\theta [\eta _{T_l}-{\widetilde{\varDelta }}](\varOmega )^2}\right) \nonumber \\&\quad \div \left( \frac{\exp (4 \pi i ({\widetilde{\varDelta }}-\eta _{S_m})_1(\eta _k)_2)\theta [\eta _{S_m}-{\widetilde{\varDelta }}](\varOmega )^2}{\theta [\eta _{T_m}-{\widetilde{\varDelta }}](\varOmega )^2}\right) \nonumber \\&= \exp (4 \pi i (\eta _{m}-\eta _{l})_1(\eta _k)_2) \left( \frac{\theta [\eta _{S_l}-{\widetilde{\varDelta }}](\varOmega )\theta [\eta _{T_m}-{\widetilde{\varDelta }}](\varOmega )}{\theta [\eta _{S_m}-{\widetilde{\varDelta }}](\varOmega )\theta [\eta _{T_l}-{\widetilde{\varDelta }}](\varOmega )}\right) ^2. \end{aligned}$$

We finally handle the quantity \({\widetilde{\varDelta }}\). First, we note that since \({\widetilde{\varDelta }}\) is a vector with half-integer entries, \({\widetilde{\varDelta }}\) and \(-{\widetilde{\varDelta }}\) differ by a vector with integer entries. Furthermore, as noted in Eq. (31), \(\eta _{U_{\eta }}\) and \({\widetilde{\varDelta }}\) differ by a vector with integer entries. Therefore \(-{\widetilde{\varDelta }}\) and \(\eta _{U_{\eta }}\) differ by a vector with integer entries, say n:

$$\begin{aligned} -{\widetilde{\varDelta }} = \eta _{U_{\eta }} + n. \end{aligned}$$

Recalling our notation for the symmetric difference of two sets given in Eq. (20), we have that

$$\begin{aligned} \eta _{S_j} - {\widetilde{\varDelta }} = \eta _{S_j}+ \eta _{U_\eta } +n = \eta _{S_j \circ U_\eta } + 2 \eta _{S_j \cap U_\eta } + n, \end{aligned}$$


$$\begin{aligned} \eta _{T_j} - {\widetilde{\varDelta }} = \eta _{T_j} + \eta _{U_\eta } +n= \eta _{T_j \circ U_\eta } + 2 \eta _{T_j \cap U_\eta }+n, \end{aligned}$$

for \(j = l,m\). Once again we thus apply the quasi-periodicity property of the Riemann theta constant with characteristic to remove the integer vectors appearing in each characteristic. This time around, we note that since all of characteristics appearing above are half-integers, the sign \(\exp (2\pi i x_1m_2)\) from the transformation formula will be \(\pm 1\). Since all of the theta constants are now squared in the formula, the signs vanish and we finally obtain:

$$\begin{aligned}{}[a_l,a_m,a_k,a_{\infty }]= \exp (4 \pi i (\eta _{m}-\eta _{l})_1(\eta _k)_2)\left( \frac{\theta [\eta _{S_l \circ U_\eta }](\varOmega )\theta [\eta _{T_m \circ U_\eta }](\varOmega )}{\theta [\eta _{S_m \circ U_\eta }](\varOmega )\theta [\eta _{T_l \circ U_\eta }](\varOmega )}\right) ^2. \end{aligned}$$

This completes the proof. \(\square \)

To finish the proof of Proposition 3, it remains now only to rewrite it so that the characteristics agree with Takase’s and to verify that the signs agree. Indeed, the cross-ratio we compute here in this article agrees with the quotient computed by Takase, since in his article, Takase assumes that \(a_{\infty } = \infty \). In that case, we have that

$$\begin{aligned}{}[a_l,a_m,a_k,a_{\infty }] = \frac{a_k-a_l}{a_k-a_m}. \end{aligned}$$

We therefore turn our attention to the characteristics: Following Takase’s notation, let W be the complement of \(V \cup \{k,l, m,\infty \}\) in \(\{1,2,\ldots , 2g+2\}\). Then from the definitions it follows that

$$\begin{aligned} S_j = V \cup \{k,j\}, \end{aligned}$$

for \(j = l,m\). We also have that \(T_l\cup \{\infty \}\) is the complement of \(W \cup \{k,m\}\) in \(\{1,2,\ldots , 2g+2\}\), and \(T_m\cup \{\infty \}\) is the complement of \(W \cup \{k,l\}\). As a result,

$$\begin{aligned} ((T_m\cup \{\infty \}) \circ U_{\eta })^c = U_{\eta } \circ (W \cup \{k,l\}), \end{aligned}$$


$$\begin{aligned} ((T_l\cup \{\infty \}) \circ U_{\eta })^c = U_{\eta } \circ (W \cup \{k,m\}). \end{aligned}$$

Now by definition, we have that

$$\begin{aligned} \eta _\infty = 0, \end{aligned}$$

since \(P_\infty \) is chosen to be the base point of the Abel-Jacobi map. Therefore we have

$$\begin{aligned} \eta _{(T_j \cup \{\infty \})\circ U_{\eta }} = \eta _{T_j\circ U_\eta }, \end{aligned}$$

for \(j = l,m\). By Eq. (32), we have that

$$\begin{aligned} \eta _{(T_l \cup \{\infty \})\circ U_{\eta }} = \eta _{U_{\eta } \circ (W \cup \{k,m\})} \end{aligned}$$


$$\begin{aligned} \eta _{(T_m \cup \{\infty \})\circ U_{\eta }} = \eta _{U_{\eta } \circ (W \cup \{k,l\})}. \end{aligned}$$

Putting all of this together, we obtain

$$\begin{aligned}{}[a_l,a_m,a_k,a_{\infty }]= \exp (4 \pi i (\eta _{m}-\eta _{l})_1(\eta _k)_2)\left( \frac{\theta [\eta _{U_\eta \circ (V \cup \{k,l\})}](\varOmega )\theta [\eta _{U_{\eta } \circ (W \cup \{k,l\})}](\varOmega )}{\theta [\eta _{U_\eta \circ (V \cup \{k,m\})}](\varOmega )\theta [\eta _{U_{\eta } \circ (W \cup \{k,m\})}](\varOmega )}\right) ^2.\nonumber \\ \end{aligned}$$

To verify that the signs agree, we first begin by noting that the sign that we obtain is equal to

$$\begin{aligned} \exp (4 \pi i (\eta _{m}-\eta _{l})_1(\eta _k)_2) = \exp (4 \pi i (\eta _{l}+\eta _{m})_1(\eta _k)_2), \end{aligned}$$

since both \(\eta _l\) and \(\eta _m\) have half-integer entries. We also note that before simplifying his expression, Takase has the sign written as

$$\begin{aligned} (-1)^{4 (\eta _k)_1 (\eta _l+\eta _m)_2} = \exp (4 \pi i (\eta _k)_1 (\eta _l+\eta _m)_2). \end{aligned}$$

We prove that the two expressions are equal by proving that their product is 1. To do this, we define

$$\begin{aligned} e_2(\xi ,\zeta ) = \exp (4 \pi i(\xi _1\zeta _2-\xi _2\zeta _1)); \end{aligned}$$

the significance of this function is that \(e_2(\eta _i,\eta _j) = -1\) whenever \(i\ne j\) (see [25, Lemma 1.4.13] or [2, Proposition 3.5]).

Then we have

$$\begin{aligned} \exp (4 \pi i (\eta _{l}+\eta _{m})_1(\eta _k)_2)&\exp (4 \pi i (\eta _k)_1 (\eta _l+\eta _m)_2)\\ \nonumber&= \exp (4 \pi i (\eta _{l}+\eta _{m})_1(\eta _k)_2)\exp (-4 \pi i (\eta _k)_1 (\eta _l+\eta _m)_2) \\ \nonumber&= e_2(\eta _l+\eta _m,\eta _k) \\ \nonumber&= e_2(\eta _l,\eta _k)e_2(\eta _m,\eta _k) = 1 \end{aligned}$$

This completes the proof of Proposition 3.

We now end with the proof of Corollary 2:

Proof of Corollary 2

To obtain the values \(\lambda _i\), we post-compose the degree 2 morphism \(x :C \rightarrow {\mathbb {P}}^1\) with a linear fractional transformation of \({\mathbb {P}}^1\) sending \(x(P_1)\) to 0, \(x(P_2)\) to 1 and \(x(P_{2g+2})\) to \(\infty \). This new map is again a degree 2 morphism \(C \rightarrow {\mathbb {P}}^1\), and so the result of Proposition 3 applies. In addition, we use that for this particular map, if \(\lambda _j = x(P_j)\), then we have

$$\begin{aligned} \lambda _j = \frac{0-\lambda _j}{0-1}= [\lambda _j,1,0,\infty ] =\frac{x(P_1) - x(P_j)}{x(P_1)-x(P_2)}. \end{aligned}$$

Therefore we fix \(k = 1\), \(l=2\) and \(m= j\) to obtain

$$\begin{aligned} \lambda _j = \exp (4 \pi i (\eta _j-\eta _2)_1(\eta _1)_2)\left( \frac{\theta [\eta _{U_\eta \circ (V \cup \{1,2\})}](\varOmega )\theta [\eta _{U_{\eta } \circ (W \cup \{1,2\})}](\varOmega )}{\theta [\eta _{U_\eta \circ (V \cup \{1,j\})}](\varOmega )\theta [\eta _{U_{\eta } \circ (W \cup \{1,j\})}](\varOmega )}\right) ^2. \end{aligned}$$

\(\square \)

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Lario, JC., Somoza, A. & Vincent, C. An inverse Jacobian algorithm for Picard curves. Res. number theory 7, 32 (2021).

Download citation


  • Picard curve
  • Hyperelliptic curves
  • Genus 3
  • Inverse Jacobian
  • Explicit algorithm

Mathematics Subject Classification

  • 14H25
  • 14H45
  • 14K25
  • 14Q05