Path to this page:
Subject: CVS commit: pkgsrc/math/ntl
From: Alistair G. Crooks
Date: 2013-05-18 20:32:19
Message id: 20130518183219.397AC84@ivanova.netbsd.org
Log Message:
Update math/ntl to version 6.0.0
Differences from previous version (5.5.2):
2013.02.15: Changes between NTL 5.5.2 and 6.0
Replaced the old template-like macros for vectors, matrices, and pairs
with true template classes: Vec<T>, Mat<T>, and Pair<S,T>. For
backwards compatibilty, all the names that were used in previous
versions (e.g., vec_ZZ_p, mat_ZZ_p) have been replaced with
appropriate typedefs.
For many years, I resisted the temptation of using templates, because
compiler support was very inconsistent. But that no longer seems to
be the case.
This change, while rather sweeping, should create very few, if any,
incompatibilities with existing software. The biggest issue would be
for software that uses the old template-like macros: such macro
invocations can simply be replaced with appropriate typedefs.
Made the conversion interface more complete and uniform. Also, using
template notation, one can and should now write conv<ZZ>(a) instead of
to_ZZ(a) (for backward compatibility, all the old names to_XXX are
still there, but many new conversions are not available under these
old names). There are many new conversions provided. Moreover,
whenever there is a conversion from a ring R to a ring S, there is a
corresponding, coefficiet-wise conversion from the polynomial ring
R[X] to the polynomial ring R[X].
In addition, using the template mechanism, there are generic
conversions for vectors and matrices. For example, if there is a
conversion from S to T, then there is automatically a corresponding
component-wise conversion from Vec<S> to Vec<T>.
Introduced a more general mechanism for accessing GF2's in packed
structures via indexing (see the class ref_GF2 in the GF2 module).
Employed ideas from David Harvey to make the single-precision FFT
faster (about twice as fast in many cases). This speeds up many
higher-level operations.
Fixed all known bugs.
Files: