/genus3

This program contains algorithms for constructing simple principally polarized abelian varieties with CM by a given field K as well as algorithms for the reconstruction of curves in the hyperelliptic and the Picard case.

Primary LanguagePython

genus3

Here is a list of functionalities of this program, together with the publications that should be cited when you use them.

  • Construction of simple principally polarized abelian varieties with CM by a given field K (see [1],[2]),
  • Functions to verify if the principally polarized abelian variety is a hyperelliptic Jacobian and an reconstruction of its hyperelliptic equation via the computation of the Rosenhain invariants (see [2]),
  • Whenever K is a Galois sextic field containing the third roots of unity, the reconstruction of the curve whose Jacobian is the obtained abelian variety, i.e. a Picard curve y^3 = f(x), with deg f = 4 (see [1],[3]).

References:
[1] K. Koike and A. Weng. Construction of CM Picard curves. Math. Comp., 74(249):499–518 (electronic), 2005.
[2] J.S. Balakrishnan, S. Ionica, K. Lauter, and C. Vincent. Constructing genus-3 hyperelliptic jacobians with CM. LMS Journal of Computation and Mathematics, 19(A):283–300, 2016.
[3] J.-C. Lario and A. Somoza. A note on Picard curves of CM-type. arXiv:1611.02582, 2016.