mirror of
https://github.com/uutils/coreutils
synced 2024-11-16 01:38:04 +00:00
6c4e967fc6
This commit builds upon @wikol's Pollard rho implementation. It adds the following: 1. A generator for prime inverse tables. With these, we can do very fast divisibility tests (a single multiply and comparison) for small primes (presently, the first 1000 primes are in the table, which means all numbers of ~26 bits or less can be factored very quickly. 2. Always try prime inverse tables before jumping into Pollard's rho method or using trial division. 3. Since we have eliminated all small factors by the time we're done with the table division, only use slow trial division when the number is big enough to cause overflow issues in Pollard's rho, and jump out of trial division and into Pollard's rho as soon as the number is small enough. 4. Updates the Makefile to regenerate the prime table if it's not up-to-date.
13 lines
136 B
Text
13 lines
136 B
Text
/src/*/gen_table
|
|
/build/
|
|
/target/
|
|
/tmp/
|
|
/busybox/
|
|
/deps/regex/
|
|
/deps/rust-crypto/
|
|
/deps/target/
|
|
/deps/time/
|
|
*~
|
|
.*.swp
|
|
.*.swo
|
|
Cargo.lock
|