eclib

The eclib package includes mwrank (for 2-descent on elliptic curves over Q) and modular symbol code used to create the elliptic curve database.

https://github.com/johncremona/eclib

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    5 of 24 committers (20.8%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.8%) to scientific vocabulary

Keywords from Contributors

closember
Last synced: 7 months ago · JSON representation ·

Repository

The eclib package includes mwrank (for 2-descent on elliptic curves over Q) and modular symbol code used to create the elliptic curve database.

Basic Info
  • Host: GitHub
  • Owner: JohnCremona
  • License: gpl-2.0
  • Language: C++
  • Default Branch: master
  • Size: 4.66 MB
Statistics
  • Stars: 24
  • Watchers: 6
  • Forks: 17
  • Open Issues: 1
  • Releases: 34
Created about 13 years ago · Last pushed 7 months ago
Metadata Files
Readme Changelog License Citation Authors

README

In addition to the generic installation instructions given in the
INSTALL file, note the following.  You can see all options to
configure by typing ./configure --help.

1. DEPENDENCIES

(a) Both NTL and PARI are required.  If they have not been installed
in a place where the system will find them automatically (such as
/usr/local) then you will need to specify where they are when you
configure, like this:

./configure --with-pari= --with-ntl=

If you have Sage installed in SAGE_ROOT then you can use
$SAGE_ROOT/local for both of these.  Note that when you specify these
locations, no check is done that a usable version exists in that
place: it will be assumed that /include and /lib contain
appropriate include files and libraries, and the build will fail if
not.

(b) FLINT is optional (from eclib-2013-01-01) and only used for one
part of sparse matrix reduction, which is used in the modular symbol
code but not mwrank or other elliptic curve programs.  If a suitable
FLINT version is found (which must be at least version 2.3, to contain
the nmod_mat module) it will be used.  If in addition you have the
optional FLINT module hmod_mat (which does modular matrix operations
using 32-bit data types) this can be activated by setting the
environment valriable FLINT_LEVEL to 2 before running configure, or
adding "FLINT_LEVEL=2" to the end of the configure invocation.  Both
of these have the effect of adding the compiler flag
"-DFLINT_LEVEL=2$.  The advantage of this is that the modular symbol
code will require less RAM to run.

(c) Boost is optional (from eclib-2013-09-00) and provides parallel
capabilities in the form_finder class. Configure with --with-boost
specifying location of a fully built version of Boost, i.e. not
just the header files. After initial configure, if an error occurs,
run autoreconf and configure again. Autotools will initiate the
macros in m4/ directory and look for Boost.asio, Boost.thread, and
Boost.system. Refer ti ./configure --help for more configuration
options.

2. By default a lot of programs, including test programs, are built
and will be installed by "make install".  But if you configure with

 --disable-allprogs

then the only program built will be mwrank.  (The whole eclib library
will always be built).

3. By default most of the real and complex floating point arithmetic
is done using NTL's RR class and a complex class CC built on that. But
if you configure with

 --disable-mpfp

("mpfp" = multi-precision floating point) then only standard C doubles
and complexes will be used.  This makes some code run much faster but
of course the results are different.  In future it is planned to
refactor the code so that both standard and multi-precision functions
are available simultaneously.

4. After running make, "make check" will build and run a lot of test
programs (in the subdirectory tests) and check that they give the
expected output (using test input files in tests/in and comparing with
the expected outputs in tests/out).   The test output (and in a few
cases input) differs slightly if the --disable-mpfp is used.

5. "make install" will install header files, library files, and test
program binaries in subdirectories include, lib, bin in /usr/local by
default, so that you would need to run "make install" with superuser
privileges).  You can specify an alternative place either by adding
--prefix= to the ./configure command line.

Owner

  • Name: John Cremona
  • Login: JohnCremona
  • Kind: user
  • Location: UK
  • Company: University of Warwick

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Cremona"
  given-names: "J E"
  orcid: "https://orcid.org/0000-0002-7212-0162"
title: "eclib"
version: 20250627
doi: "https://doi.org/10.5281/zenodo.593635"
date-released: 2025-06-27
url: "https://github.com/JohnCremona/eclib"

GitHub Events

Total
  • Create event: 8
  • Issues event: 8
  • Release event: 4
  • Watch event: 2
  • Issue comment event: 20
  • Push event: 19
  • Pull request event: 5
  • Fork event: 2
Last Year
  • Create event: 8
  • Issues event: 8
  • Release event: 4
  • Watch event: 2
  • Issue comment event: 20
  • Push event: 19
  • Pull request event: 5
  • Fork event: 2

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 557
  • Total Committers: 24
  • Avg Commits per committer: 23.208
  • Development Distribution Score (DDS): 0.235
Past Year
  • Commits: 21
  • Committers: 2
  • Avg Commits per committer: 10.5
  • Development Distribution Score (DDS): 0.095
Top Committers
Name Email Commits
John Cremona j****a@g****m 426
Marcus Mo m****8@g****m 59
Julien Puydt j****t@l****t 12
Isuru Fernando i****f@g****m 10
Fernando Perez F****z@b****u 9
William Stein w****n@g****m 7
François Bissey f****y@g****m 5
E. Madison Bray e****y@l****r 4
Dima Pasechnik d****e@g****m 3
François Bissey f****y@c****z 3
Mitesh Patel q****7@g****m 3
Giovanni Mascellani m****i@p****t 2
Michael Abshoff m****f@g****m 2
mabshoff m****f@s****u 2
Jerry James l****y@g****m 1
Arnaud Bergeron a****n@g****m 1
Ralf-Philipp Weinmann w****n@c****e 1
mabshoff m****f@b****l 1
mabshoff m****f@a****g 1
boothby b****y@e****u 1
Moritz Firsching f****g@g****m 1
Antonio Rojas a****s@a****g 1
Dima Pasechnik d****a@p****o 1
Keno Fischer k****r@c****u 1

Issues and Pull Requests

Last synced: 7 months ago

All Time
  • Total issues: 41
  • Total pull requests: 48
  • Average time to close issues: 5 months
  • Average time to close pull requests: 23 days
  • Total issue authors: 15
  • Total pull request authors: 14
  • Average comments per issue: 7.41
  • Average comments per pull request: 2.02
  • Merged pull requests: 40
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 5
  • Pull requests: 4
  • Average time to close issues: 17 days
  • Average time to close pull requests: 23 days
  • Issue authors: 5
  • Pull request authors: 2
  • Average comments per issue: 1.8
  • Average comments per pull request: 1.0
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • SnarkBoojum (8)
  • JohnCremona (7)
  • kiwifb (6)
  • dimpase (3)
  • antonio-rojas (3)
  • jdemeyer (3)
  • tornaria (2)
  • vbraun (1)
  • collares (1)
  • cicku (1)
  • dcb314 (1)
  • kcrisman (1)
  • thierry-FreeBSD (1)
  • kartikv (1)
  • isuruf (1)
Pull Request Authors
  • JohnCremona (14)
  • kiwifb (6)
  • isuruf (6)
  • dimpase (5)
  • jamesjer (4)
  • antonio-rojas (3)
  • embray (2)
  • mezzarobba (2)
  • SnarkBoojum (1)
  • rafaelcsn13 (1)
  • gobbledygook88 (1)
  • fperez (1)
  • Keno (1)
  • mo271 (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 8
  • Total downloads: unknown
  • Total dependent packages: 3
    (may contain duplicates)
  • Total dependent repositories: 1
    (may contain duplicates)
  • Total versions: 90
  • Total maintainers: 1
proxy.golang.org: github.com/JohnCremona/eclib
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Forks count: 5.6%
Stargazers count: 7.9%
Average: 8.5%
Dependent packages count: 9.6%
Dependent repos count: 10.8%
Last synced: over 1 year ago
proxy.golang.org: github.com/johncremona/eclib
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Forks count: 5.6%
Stargazers count: 7.9%
Average: 8.5%
Dependent packages count: 9.6%
Dependent repos count: 10.8%
Last synced: over 1 year ago
alpine-edge: eclib-libs

Tools for creating the elliptic curve databases (libraries)

  • Versions: 15
  • Dependent Packages: 1
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 6.0%
Average: 14.2%
Forks count: 23.9%
Stargazers count: 26.7%
Maintainers (1)
Last synced: 7 months ago
alpine-edge: eclib-dev

Tools for creating the elliptic curve databases (development files)

  • Versions: 15
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 14.6%
Average: 16.3%
Forks count: 23.9%
Stargazers count: 26.7%
Maintainers (1)
Last synced: 7 months ago
alpine-edge: eclib

Tools for creating the elliptic curve databases

  • Versions: 15
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 14.6%
Average: 16.3%
Forks count: 23.9%
Stargazers count: 26.7%
Maintainers (1)
Last synced: 7 months ago
alpine-edge: eclib-doc

Tools for creating the elliptic curve databases (documentation)

  • Versions: 15
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 14.6%
Average: 16.3%
Forks count: 23.9%
Stargazers count: 26.7%
Maintainers (1)
Last synced: 7 months ago
alpine-edge: eclib-static

Tools for creating the elliptic curve databases (static library)

  • Versions: 15
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 14.6%
Average: 16.3%
Forks count: 23.9%
Stargazers count: 26.7%
Maintainers (1)
Last synced: 7 months ago
conda-forge.org: eclib
  • Versions: 13
  • Dependent Packages: 2
  • Dependent Repositories: 1
Rankings
Dependent packages count: 19.6%
Dependent repos count: 24.4%
Average: 33.4%
Forks count: 41.0%
Stargazers count: 48.8%
Last synced: 7 months ago

Dependencies

.github/workflows/c-cpp.yml actions
  • actions/checkout v2 composite
.github/workflows/conda-c-cpp.yml actions
  • actions/checkout v2 composite
  • conda-incubator/setup-miniconda v2 composite
binder/environment.yml pypi