BIT Numerical Mathematics

, Volume 20, Issue 2, pp 176–184 | Cite as

An improved Monte Carlo factorization algorithm

  • Richard P. Brent
Part II Numerical Mathematics


Pollard's Monte Carlo factorization algorithm usually finds a factor of a composite integerN inO(N1/4) arithmetic operations. The algorithm is based on a cycle-finding algorithm of Floyd. We describe a cycle-finding algorithm which is about 36 percent faster than Floyd's (on the average), and apply it to give a Monte Carlo factorization algorithm which is similar to Pollard's but about 24 percent faster.


Computational Mathematic Arithmetic Operation Factorization Algorithm 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    M. Beeler, R. W. Gosper and R. Schroeppel,Hakmem, M.I.T. Artificial Intelligence Lab. Memo No. 239, Feb. 1972, item 132, pg. 64.Google Scholar
  2. 2.
    W. Diffie and M. Hellman,New directions in cryptography, IEEE Trans. Information Theory IT-22 (1976), 644–654.CrossRefGoogle Scholar
  3. 3.
    D. E. Knuth,The Art of Computer Programming, vol. 2, Addison-Wesley, Reading, Mass., 1969.Google Scholar
  4. 4.
    G. L. Miller,Riemann's hypothesis and a test for primality, Proc. Seventh Annual ACM Symposium on Theory of Computing, ACM, New York, 1975, 234–239.Google Scholar
  5. 5.
    M. A. Morrison and J. Brillhart,A method of factoring and the factorization of F 7, Math. Comp. 29 (1975), 183–208.Google Scholar
  6. 6.
    J. M. Pollard,Theorems on factorization and primality testing, Proc. Camb. Phil. Soc. 76 (1974), 521–528.Google Scholar
  7. 7.
    J. M. Pollard,A Monte Carlo method for factorization, BIT 15 (1975), 331–334. MR50#6992.CrossRefGoogle Scholar
  8. 8.
    J. M. Pollard,Monte Carlo methods for index computation (mod p), Math. Comp. 32 (1978), 918–924. MR52#13611.Google Scholar
  9. 9.
    M. Rabin,Probabilistic algorithms, inAlgorithms and Complexity (J. F. Traub, ed.), Academic Press, New York, 1976, 31–40.Google Scholar
  10. 10.
    R. L. Rivest, A. Shamir and L. Adleman,A method for obtaining digital signatures and public-key cryptosystems, Comm. ACM 21 (1978), 120–126.CrossRefGoogle Scholar
  11. 11.
    R. Sedgewick and T. G. Szymanski,The complexity of finding periods, Proc. Eleventh Annual ACM Symposium on Theory of Computing, ACM, New York, 1979, 74–80.Google Scholar
  12. 12.
    D. Shanks,Class number, a theory of factorization, and genera, Proc. Sympos. Pure Math., vol. 20, Amer. Math. Soc., Providence, Rhode Island, 1970, 415–440. MR47#4932.Google Scholar
  13. 13.
    R. Solovay and V. Strassen,A fast Monte-Carlo test for primality, SIAM J. Computing 6 (1977), 84–85.CrossRefGoogle Scholar
  14. 14.
    M. C. Wunderlich and J. L. Selfridge,A design for a number theory package with an optimized trial division routine, Comm. ACM 17 (1974), 272–276.CrossRefGoogle Scholar
  15. 15.
    Anonymous,ML-15,Random number generator, TI Programmable 58/59 Master Library, Texas Instruments Inc., 1977, 52–54.Google Scholar

Copyright information

© BIT Foundations 1980

Authors and Affiliations

  • Richard P. Brent
    • 1
  1. 1.Department of Computer ScienceAustralian National UniversityCanberraAustralia

Personalised recommendations