Sieve algorithms for perfect power testing |
| |
Authors: | Eric Bach Jonathan Sorenson |
| |
Affiliation: | (1) Computer Sciences Department, University of Wisconsin-Madison, 1210 West Dayton Street, 53706 Madison, WI, USA;(2) Department of Mathematics and Computer Science, Butler University, 4600 Sunset Avenue, 46208 Indianapolis, IN, USA |
| |
Abstract: | A positive integern is a perfect power if there exist integersx andk, both at least 2, such thatn=xk. The usual algorithm to recognize perfect powers computes approximatekth roots forklog2n, and runs in time O(log3n log log logn).First we improve this worst-case running time toO(log3n) by using a modified Newton's method to compute approximatekth roots. Parallelizing this gives anNC2 algorithm.Second, we present a sieve algorithm that avoidskth-root computations by seeing if the inputn is a perfectkth power modulo small primes. Ifn is chosen uniformly from a large enough interval, the average running time isO(log2n).Third, we incorporate trial division to give a sieve algorithm with an average running time ofO(log2 n/log2 logn) and a median running time ofO(logn).The two sieve algorithms use a precomputed table of small primes. We give a heuristic argument and computational evidence that the largest prime needed in this table is (logn)1+O(1); assuming the Extended Riemann Hypothesis, primes up to (logn)2+O(1) suffice. The table can be computed in time roughly proportional to the largest prime it contains.We also present computational results indicating that our sieve algorithms perform extremely well in practice.This work forms part of the second author's Ph.D. thesis at the University of Wisconsin-Madison, 1991. This research was sponsored by NSF Grants CCR-8552596 and CCR-8504485. |
| |
Keywords: | Perfect powers Number theoretic algorithms Riemann hypothesis Newton's method Sieve algorithms Parallel algorithms Average-case analysis |
本文献已被 SpringerLink 等数据库收录! |
|