Commit Graph

13 Commits

Author SHA1 Message Date
0af165bf6d Merge branch 'remove_optional' of https://github.com/NAThompson/integer into remove_optional 2018-12-04 11:31:12 -07:00
080f2bdfdc Take care of the case where integer type Z has explicit constructor. 2018-12-04 11:27:37 -07:00
289939a640 Merge branch 'develop' into remove_optional 2018-12-04 10:57:02 -07:00
51b259da19 Return integer with zero signaling common factor rather than boost::optional<Z>. 2018-12-04 10:55:03 -07: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
cd60c4c9f9 [CI SKIP] Disable multiprecision in certain compilers. 2018-10-29 08:52:20 -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
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
4f4f3eda37 [ci skip] Fix docs to use less verbose names for modular multiplicative inverse (mod_inverse) 2018-02-10 16:07:17 -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