Recent Releases of eclib

eclib - 20250627

No change since 20250616 except that configure.ac now requires libc++-17 (was libc++-14). There are currently two places where the STL function transform_reduce() is used, and this requires version 17 at least.

- C++
Published by JohnCremona 9 months ago

eclib -

Minor change for compatibility with FLINT-3.3.0

- C++
Published by JohnCremona 10 months ago

eclib - 20250530

Added various utility functions and functions to find elliptic curves with fixed j-invariant and conductor or primes of bad reduction.

- C++
Published by JohnCremona 10 months ago

eclib - 20250122

Only trivial changes compared with 20241112:
- minor reversion to avoid 32-bit test eror - rename one variable to avoid clang complaint - explicitly include gmp.h before flint.h.

- C++
Published by JohnCremona about 1 year ago

eclib - 20241112

  • vector/matrix/subspace templates now used for multiprecision integer versions mvector, mmatrix, msubspace instead of these being coded separately.
  • vec and mat template classes now based on vector for scalar=int, long, bigint
  • improve precision handling for special L-value computations
  • added some utilities
  • improvements to Compute_Euler()
  • many (mostly minor) changes suggested by cppcheck
  • switched more C-style arrays to STL vectors
  • much code simplification using newer C++ idioms e.g. auto

- C++
Published by JohnCremona over 1 year ago

eclib - 20240408

Fixed a bug in curve pointers in Point; small change in putput to h1bsd and h1bsdcurisog; more use of STL idioms and auto, removing almost all explicit iterators.

- C++
Published by JohnCremona almost 2 years ago

eclib - 20231212

Minor update since 20231211, removing use of std::ptr_fun

- C++
Published by JohnCremona over 2 years ago

eclib - 20231211

  • Better use of FLINT when FLINT3 is available
  • Elliptic curve torsion computation no longer uses floating point

- C++
Published by JohnCremona over 2 years ago

eclib - 20230424

Implement class bigcomplex for multiprecision complex floating point based on NTL's RR, instead of using the template comlex.

No changes in functionality.

- C++
Published by JohnCremona almost 3 years ago

eclib - 20221012

Enhanced cubic forms code, including bug fixes in reduction.

- C++
Published by JohnCremona over 3 years ago

eclib - 20220621

This is a bugfix release. Following 20220620 there were two more bugs in the saturation code. Fixing these resulted in some minor interface changes.

- C++
Published by JohnCremona almost 4 years ago

eclib - 20220620

This release fixes three bugs:

  1. [cosmetic] pari output of points sometimes did not reduce fractions;
  2. [substantial] a sign error could cause incorrect quartic reduction;
  3. [substantial] a logic error could lead to incomplete saturation;

but a further bugfix release will follow shortly, so ignore this one.

- C++
Published by JohnCremona almost 4 years ago

eclib - minor bugfix

Fixed a minor issue causing overflow in saturation.

- C++
Published by JohnCremona almost 5 years ago

eclib - 20210503

A small bugfix and change of default PARI_SIZE

- C++
Published by JohnCremona almost 5 years ago

eclib - 20210415

Since the last release 20210408, two similar bugs have been fixed in the local height computation and the egr index of a set of points on elliptic curves which are not minimal models.

- C++
Published by JohnCremona almost 5 years ago

eclib - 20210408

The main change is to fix a bug in the computation of saturation index bounds for elliptic curves.

- C++
Published by JohnCremona almost 5 years ago

eclib - 20210318

Not very different from the previous release in terms of functionality, but it knows its own version so tha for example "mwrank -V" returns "20210318".

- C++
Published by JohnCremona about 5 years ago

eclib - v20210308

Do not use this release, it will be superceded by v20210310.

Many improvements to saturation code for elliptic curves, including more efficient sieving and better division of points using division polynomials instead of elliptic log/exp. The latter is still available and has better automatic precision handling. Also improved construction of newforms from an elliptic curve, using more ap (depending on the conductor) to fix normalisation of the modular symbol.

- C++
Published by JohnCremona about 5 years ago

eclib - v20190909

Remove all calls to abort(), and make sure all error/warning messages to cout and cerr are flushed. Added pkg-config support. make with-flint="" consistent with ntl and pari. increased default PARI stack size to 10^9 bytes (was only 100k).

- C++
Published by JohnCremona over 6 years ago

eclib -

Changes since last release: - fix modular symbol scaling bug introduced in v20170815 - checkgens now reads files including torsion points as in ecdata - binder support (work in progress)

- C++
Published by JohnCremona about 7 years ago

eclib - v20190205

No new functionality.

  • Precision setting now uses bits not digits.
  • Cleaned up use of multiprecision compiler switches.
  • Tweaked build system to insert pthread flags as needed.

Note that v20190110 and v20190205 are identical except for minor updates to some documentation.

- C++
Published by JohnCremona about 7 years ago

eclib - v20180710

  1. Reorganised all include files so each may be included by itself.
  2. Reorganised management of precision to use bit precision, not decimal.
  3. Made various adjustments so tests pass with clang as well as gcc, both with multiprecision floating point and without.
  4. Added some functions for listing binary cubics up to GL(2,Z)-equivalence.
  5. Fixed some issues caused by using #define instead of #typedef in handling types.

- C++
Published by JohnCremona over 7 years ago

eclib - v20171002

Adds Travis support and fixed some Xcode issues

- C++
Published by JohnCremona over 8 years ago

eclib - v20170815

Release notes for eclib-20170815

Since release 20160720:

  1. Modular symbols programs can use elliptic curve files instead of newform files at lower levels to eliminate oldforms.

  2. fixed some memory leaks

  3. fixed modular symbol scaling and improved handling of minus symbols, also allow basing of symbols at oo or 0. Also handle modular symbols for non-optimal curves. (These changes go hand-in-hand with changes in the Sage interface).

    1. c++11 is now mandatory.
    2. some fixes for clang (not yet complete).
  4. Improved equivalence testing of quartics.

  5. Improved handling of environment variables to set filenemes and change default settings, e.g. PARI_SIZE can now be used to handle larger integer factorizations.

- C++
Published by JohnCremona over 8 years ago

eclib - Minor update for C++-11 compatibility

- C++
Published by JohnCremona over 9 years ago

eclib -

Changes to be compatible with C++98, C++11, and C++14.

- C++
Published by JohnCremona about 10 years ago

eclib -

No non-trivial changes to code, and none to the library interface. Various obsolete compiler flags have been removed, and documentation updated (see github issue #10). A new configure option --disable-mpfp has been added but the beaviour with the default is unchanged. The shared library revision has been incremented so the library is now named libec.so.2.0.3 instead of libec.so.2.0.2.

- C++
Published by JohnCremona over 10 years ago

eclib - v.20150827

Only change from previous is that the REVISION part of the shared library name was incremented (as it should be for a 100% backward-compatible bugfix). I also made the git tag v20150827.

- C++
Published by JohnCremona over 10 years ago

eclib - bug fix

Fixes a bug in mwrank relevant for curves with trivial 2-torsion and non-trivial Sha[2], as reported by William Stein and Jennifer Balakrishnan.

- C++
Published by JohnCremona over 10 years ago

eclib -

The only change since 20150423 is that --with-boost=no now works when configuring for no boost support.

- C++
Published by JohnCremona almost 11 years ago

eclib - eclib-20150423

Small bugfixes and more linear algebra speedups after profiling.

- C++
Published by JohnCremona almost 11 years ago

eclib -

Significant speedups in the xsplit module (not used in Sage), interface not backward-compatible.

- C++
Published by JohnCremona almost 11 years ago

eclib -

Bugfix release

- C++
Published by JohnCremona about 11 years ago

eclib -

First version with aversion number (1.0.0) on the shared library.

- C++
Published by JohnCremona about 11 years ago