Primality testing with Gaussian periods
Hendrik W. Lenstra, Jr., Carl B. Pomerance
Source abstract
We exhibit a deterministic algorithm that, for some effectively computable real number c , decides whether a given integer n > 1 is prime within time \mathrm {log} n)^6\cdot(2+\mathrm {log\log} n)^c . The same result, with 21/2 in place of 6 , was proved by Agrawal, Kayal, and Saxena. Our algorithm follows the same pattern as theirs, performing computations in an auxiliary ring extension of \mathbb Z/n\mathbb Z . We allow our rings to be generated by Gaussian periods rather than by roots of unity, which leaves us greater freedom in the selection of the auxiliary parameters and enables us to obtain a better run time estimate. The proof depends on results in analytic number theory and on the following theorem from additive number theory, which was provided by D. Bleichenbacher: if t is a real number with 0 < t \le1 , and S is an open subset of the interval (0,t) with \int_S\mathrm d x/x > t , then each real number greater than or equal to 1 is in the additive semigroup generated by S . A byproduct of our main result is an improved algorithm for constructing finite fields of given characteristic and approximately given degree.
Evidence graph
No public relationships recorded yet.
Integrity note: This page is a factual metadata record created by deterministic ingestion. It is not a claim that the work moves a mathematical frontier or has been independently verified.