|
092d94c833
|
Converted all links to www.boost.org to https.
Closes https://github.com/boostorg/integer/pull/25.
|
2021-01-20 11:34:42 +03:00 |
|
|
2f634ca78b
|
Added missing includes, remove C++11 requirement, other code cleanup.
Also, use Boost.Swap instead of the direct unqualified call to std::swap
and boost::enable_if_c instead of std::enable_if.
|
2018-11-03 23:10:44 +03:00 |
|
|
a7da90a79e
|
Make changes suggested by reviewer.
|
2018-10-29 13:10:02 -06:00 |
|
|
9312962a68
|
Use using std::swap; swap(n,m) rather than std::swap(n,m) [CI SKIP]
|
2018-10-29 13:00:30 -06:00 |
|
|
df7adb52ca
|
Use std::enable_if to enable SFINAE rather than static_assert
|
2018-10-29 11:58:18 -06:00 |
|
|
de0d24733b
|
Remove dependency on boost/typeindex in tests.
|
2018-10-26 19:23:11 -06:00 |
|
|
2d463f3ee7
|
a*p % m may overflow, do not perform naive multiplication in unit tests or undefined behavior may result. [CI SKIP]
|
2018-10-26 11:19:43 -06:00 |
|
|
3f1603938c
|
Revert change as the previous algorithm overflows for all inputs >= half the bit length of the type.
|
2018-10-25 18:05:14 -06:00 |
|
|
54d0e4c63e
|
[ci skip] Trade out algorithm from 'The Joy of Factoring' to Wikipedia's version which reduces the number of required temporaries. In fact, the speedup is not large, but the code is more compact, and for larger types, the difference becomes more noticeable.
|
2018-10-25 14:28:39 -06:00 |
|
|
87e5b365d8
|
Return custom struct from extended Euclidean algorithm rather than tuple. Reduce number of operations for tests to reduce CI system workload. Disable discrete log tests until we have time to figure out why they are failing.
|
2018-10-25 09:38:16 -06:00 |
|
|
ada03a59d7
|
Remove dependency on boost.format, remove unfettered use of auto in order to move towards C++03 compatibility, use BOOST_THROW_EXCEPTION.
|
2018-10-24 14:29:22 -06:00 |
|
|
b3966428c4
|
[ci skip] Add test of short int to see if there's any obvious places for overflow (none are obvious, but no guarantees they still aren't there). Print basic information about the test to console so that failures are easier to track down.
|
2018-02-10 13:56:11 -06:00 |
|
|
8c415f77b1
|
[ci skip] Use less verbose naming. Add asserts as verfication of algorithms is a negligible fraction of total runtime. Use boost::multiprecision::powm and boost::multiprecision::sqrt rather than one-offs.
|
2018-02-09 17:19:26 -06:00 |
|
|
fc4d657201
|
[ci skip] Modular exponentiation, modular multiplicative inverse, extended Euclidean algorithm, discrete logarithm.
|
2018-01-28 14:47:14 -06:00 |
|