RcppBigIntAlgos: Factor Big Integers with the Parallel Quadratic Sieve
Features the multiple polynomial quadratic sieve (MPQS) algorithm
for factoring large integers and a vectorized factoring function that
returns the complete factorization of an integer. The MPQS is based off of
the seminal work of Carl Pomerance (1984) <doi:10.1007/3-540-39757-4_17>
along with the modification of multiple polynomials introduced by Peter
Montgomery and J. Davis as outlined by Robert D. Silverman (1987)
<doi:10.1090/S0025-5718-1987-0866119-8>. Utilizes the C library
GMP (GNU Multiple Precision Arithmetic) and 'RcppThread' for factoring
integers in parallel. For smaller integers, a simple Elliptic
Curve algorithm is attempted followed by a constrained version of
Pollard's rho algorithm. The Pollard's rho algorithm is the same algorithm
used by the factorize function in the 'gmp' package.
Version: |
1.0.1 |
Depends: |
gmp |
Imports: |
Rcpp |
LinkingTo: |
Rcpp, RcppThread |
Suggests: |
testthat, numbers, RcppAlgos |
Published: |
2021-01-08 |
Author: |
Joseph Wood [aut, cre],
Free Software Foundation, Inc. [cph],
Mike Tryczak [ctb] |
Maintainer: |
Joseph Wood <jwood000 at gmail.com> |
BugReports: |
https://github.com/jwood000/RcppBigIntAlgos/issues |
License: |
GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] |
URL: |
https://github.com/jwood000/RcppBigIntAlgos, https://gmplib.org/,
http://mathworld.wolfram.com/QuadraticSieve.html,
http://micsymposium.org/mics_2011_proceedings/mics2011_submission_28.pdf,
https://www.math.colostate.edu/~hulpke/lectures/m400c/quadsievex.pdf,
https://blogs.msdn.microsoft.com/devdev/2006/06/19/factoring-large-numbers-with-quadratic-sieve/ |
NeedsCompilation: |
yes |
SystemRequirements: |
C++11, gmp (>= 4.2.3) |
Materials: |
README NEWS |
In views: |
NumericalMathematics |
CRAN checks: |
RcppBigIntAlgos results |
Documentation:
Downloads:
Reverse dependencies:
Linking:
Please use the canonical form
https://CRAN.R-project.org/package=RcppBigIntAlgos
to link to this page.