|
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 |
|
|
faa61cd911
|
[ci skip] It is *not* the case that a discrete log exists when the base and modulus are coprime. Take 4^x = 2 mod 5 as a counterexample. Change API accordingly.
|
2018-02-10 17:51:59 -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 |
|
|
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 |
|