sagemath_eclib: Elliptic curves over the rationals with eclib/mwrank¶
This pip-installable distribution passagemath-eclib
provides the
Cython interface to John Cremona’s programs for enumerating and computing
with elliptic curves defined over the rational numbers.
What is included¶
Examples¶
A quick way to try it out interactively:
$ pipx run --pip-args="--prefer-binary" --spec "passagemath-eclib[test]" ipython
In [1]: from sage.all__sagemath_eclib import *
In [2]: M = CremonaModularSymbols(43, cuspidal=True); M
Out[2]: Cremona Cuspidal Modular Symbols space of dimension 6 for Gamma_0(43) of weight 2 with sign 0
Finding the installation location of the mwrank program:
$ pipx run --pip-args="--prefer-binary" --spec "passagemath-eclib" python
>>> from sage.features.eclib import Mwrank
>>> Mwrank().absolute_filename()
'.../bin/mwrank'
Use with sage.schemes.elliptic_curves:
$ pipx run --pip-args="--prefer-binary" --spec "passagemath-eclib[test]" ipython
In [1]: from sage.all__sagemath_eclib import *
In [2]: x = polygen(ZZ, 'x')
In [3]: K = NumberField(x**2 + 23, 'a'); a = K.gen()
In [4]: E = EllipticCurve(K, [0,0,0,101,0])
In [5]: E.gens()
Development¶
$ git clone --origin passagemath https://github.com/passagemath/passagemath.git
$ cd passagemath
passagemath $ ./bootstrap
passagemath $ python3 -m venv eclib-venv
passagemath $ source eclib-venv/bin/activate
(eclib-venv) passagemath $ pip install -v -e pkgs/sagemath-eclib
Type¶
standard
Dependencies¶
$(PYTHON)
$(PYTHON_TOOLCHAIN)
cython: C-Extensions for Python, an optimizing static compiler
eclib: Enumerating and computing with elliptic curves defined over the rational numbers
memory_allocator: An extension class to allocate memory easily with Cython
sagemath_categories: Sage categories, basic rings, polynomials, functions
sagemath_linbox: Linear Algebra with Givaro, fflas-ffpack, LinBox, IML, m4ri(e)
Version Information¶
package-version.txt:
10.6.3
version_requirements.txt:
passagemath-eclib ~= 10.6.3.0
Equivalent System Packages¶
(none known)