Hecke.jl icon indicating copy to clipboard operation
Hecke.jl copied to clipboard

List of things that should be implemented for elliptic curves

Open JHanselman opened this issue 2 years ago • 0 comments

General:

  • [x] Nicer printing for isogenies and isomorphisms
  • [ ] Formal group law (as in Silverman)
  • [x] Use formal group law to compute the dual isogeny properly
  • [x] Give back x and y coordinates of maps as multivariate polynomials
  • [ ] Write proper documentation for everything
  • [ ] Go over the code and improve comments
  • [ ] Try to attain and keep >90% coverage
  • [x] There is something dodgy for isogenies going on. We claim that we allow the construction of only cyclic isogenies using kernel polynomials, but the following works (it should not, since it is not cyclic):
    julia> E = EllipticCurve([1, 1, 1, -8, 192]);
    
    julia> Qx, x = PolynomialRing(QQ, "x");
    
    julia> g = 4*x^3 + 5*x^2 - 30*x + 769;
    
    julia> i = isogeny_from_kernel(E, g);
    
  • [ ] Make >= more rigorous in CPS Height Bounds

Q and Number fields

  • [x] (Semi)-global minimal models for elliptic curves over number fields (following Kraus or Cremona's implementation in Sage)
  • [ ] Silverman bound
  • [x] Cremona Pricket Siksek bound and bound by J.S. Müller und C. Stumpe
  • [x] Canonical heights for number fields
  • [x] Make a new type for Kodaira symbols
  • [x] Database for various modular polynomials
  • [ ] Elliptic curves using Cremona's database
  • [ ] Test for CM (Maybe: https://www.math.colostate.edu/~achter/math/isog.pdf)
  • [x] Improve rational point search (follow ratpoints by M. Stoll)
  • [ ] Implement simple 2-descent following Cremona (higher descent will be a longer project)
  • [ ] Compute Weierstrass functions
  • [ ] Reconstruct elliptic curve from period matrix
  • [ ] Elliptic logarithm

Finite Fields

  • [ ] Implement Schoof-Elkies-Atkin
  • [ ] Implement Satoh's algorithm
  • [ ] Implement function that computes generators/the group structure of E(F_q)
  • [ ] Implement Eta pairing and Ate pairing
  • [ ] Implement Methods for solving the Discrete Logarithm Problem
  • [ ] Compute endomorphism rings of elliptic curves (Maybe: https://arxiv.org/pdf/0902.4670.pdf)

Function Fields

  • [ ] Test all of the existing functionality for function fields.
  • [ ] Adapt some of the methods for number fields to function field versions
  • [ ] Tate's algorithm over function fields L-functions
  • [ ] Write simple method that computes the L-function of an elliptic curve

Optimizations

  • [ ] Canonical heights following Computing canonical heights on elliptic curves J. S. Müller and M. Stoll

JHanselman avatar May 25 '22 12:05 JHanselman