Skip to content

maelhos/ecq

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ECQ

ECQ is a library based on FLINT to do arithmetic with elliptic curves over $\mathbb Q$. In particular, computing rational points on the curve.

$2$-descent

Complete $2$-descent is work in progress and is the first goal of this project.

Basic setup

  • Basic data structure
  • Minimal model (expect at $p = 2$ to keep $a_1 = a_3 = 0$)
  • Computation of the possible value for $b_i$
  • The $2$-descent itself for full $2$-torsion

Ternary quadratic forms

  • Reduction of TQF
  • Finding primitive solution with LLL
  • Parameterization of the solution space

Quartics

  • Equivalence of quartics
  • Minimal model and reduction

Hyper-elliptic curve of genus $2, 3$

  • Local solubility criterion
  • Basic enumeration
  • Sieving for rational points
  • Higher order descent

General $2$-descent

  • Finding quartics in full $2$-torsion case
  • Finding quartics in $2$-isogeny case
  • Finding quartics without $2$-torsion

Installation

For now, ECQ is dependent on FLINT, specifically on this PR, I might just add the full content of the PR to factor_addition is it ends up not being merged.

To make the current demo :

make

and run it with :

./ecq

Performance

For performance we consider the following curve :

$$y^2 = (x - 7265)(x - 649)(x + 7557)$$

which as of last build find the point (-6591312805886080952551/905772661979601025 : 154861252810623357814342127836368/862042768525758359255917375) in :

real    0m0,674s
user    0m0,662s
sys     0m0,009s

About

A Fast C Library for Elliptic Curve Over Rationals

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages