Commit Graph

4121 Commits

Author SHA1 Message Date
Jeroen van Rijn
cd0ce7b76e big: Add choose. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
320387c4ee big: Add gcd_lcm fast path in wrapper. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
6424a5a8dd big: Refactored gcm and lcm to use a common function. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
06f5a6c785 big: Special case gcd(0,0) + lcm(0,0). 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
8b1d8c8453 big: Add lcm and its test. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
0028cb0258 big: Test gcd. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
b15ee059ad big: Add gcd. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
50feeaa285 big: Add test for factorial. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
e80ac18324 big: Add factorial, have tests use hex strings. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
db0196abc7 big: Test root_n. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
149c7b88df big: Fix sqrt, div, add with certain inputs. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
7afd1b15a8 big: test_pow for larger ints. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
f12672727d big: Add test_pow and some more switches. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
2179cc2bc7 big: Improved test driver. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
961adfedd9 big: Test negative inputs as well. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
385b9c9922 big: Add tests for log. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
922df6a438 big: Add more exhaustive tests. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
c1a001c331 big: Add randomized testing. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
13fab36639 big: Fix mul. 2021-08-11 20:59:52 +02:00
Jeroen van Rijn
708389a7ee big: Improve test driver. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
fb6c9af1ae big: Improve tests. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
85aa4dd670 big: Start test suite. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
74258a170a big: fix itoa base PoT other than 16. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
2fbff25a18 big: Improve int_bitfield_extract. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
9c150381bf big: Add rand. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
531c4936dd big: Add root_n. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
2aae1016ab big: Add sqrt. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
9c2468ecf7 big: Add atoi. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
0a431eef19 big: Add another way to estimate radix size. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
9646d1f2b8 big: Add submod, mulmod, sqrmod. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
5f7aeb3045 big: Add mod and addmod. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
1ebaa9fb3b big: itoa now works for arbitrary radixes. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
c2255c6c19 big: Add div. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
2884fa5506 big: add div by 3. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
31c94bd7f8 big: Finish log, fix sqr. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
5f63e3952e big: Correct pow bugs from the original. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
d953e40fb3 big: Add pow. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
c3a4d7dda2 big: Fast square method. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
b4a29844e9 big: Add multiplication. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
0254057f1b big: Add swap. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
f34ba44bf8 big: Add shl, shr and shrmod. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
d4d863c4db big: Add mod_power_of_two. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
78c0877994 big: Add get(a, type) and get_float. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
1d0b37c1d8 big: add shl1, shr1. 2021-08-11 20:59:51 +02:00
Jeroen van Rijn
7648f2e655 big: Finish big ZII refactor. 2021-08-11 20:59:50 +02:00
Jeroen van Rijn
d9efa6c8b5 big: More ZII refactoring. 2021-08-11 20:59:50 +02:00
Jeroen van Rijn
2e372b33a3 big: More ZII refactoring. 2021-08-11 20:59:50 +02:00
Jeroen van Rijn
687c211a58 big: ZII. 2021-08-11 20:59:50 +02:00
Jeroen van Rijn
4eadd0867d big: Continuing to refactor. 2021-08-11 20:59:50 +02:00
Jeroen van Rijn
9dba17cf87 bigint: refactor to big.Int instead of bigint.Int. 2021-08-11 20:59:50 +02:00