Algebraic Curves in Sage

People

Some motivating remarks

Michael Stoll and I recently did some computations to classify torsion orders for elliptic curves over quartic fields. We did part in Sage, but ran into serious trouble, which forced us to switch to Magma. Here's Michael's assessment of what would need to be in Sage to make this computation possible:

affine/projective schemes
  (essentially an interface to the Gröbner basis machinery).
  For example, I define the curve X_1(29) as an intersection of a bunch of
quadrics in P^21 (IIRC), or its genus 8 quotient in a similar way in P^7,
together with the map from the former to the latter.

 * for curves in particular:
  + function field
  + places and divisors (also in terms of points on the curve)
  + Riemann-Roch spaces (==> reduction of divisors, ...)
  + class groups (including discrete logs)
  + differentials (necessary for Chabauty, for example)

Some parts of the computation you can probably easily emulate in SAGE without
all the machinery at hand, like finding the F_{11^e}-points on X_1(29) and
their images on the genus 8 curve. What is likely to be hard is to get the
class group over F_11 of the genus 8 curve, to determine the image of the
cuspidal group and to find the image of the prime divisors of degree at most
4 on X_1(29)/F_11 (the latter two use the discrete log in the class group).

Project: Computation of Riemann-Roch spaces