2,177 research outputs found
A deterministic version of Pollard's p-1 algorithm
In this article we present applications of smooth numbers to the
unconditional derandomization of some well-known integer factoring algorithms.
We begin with Pollard's algorithm, which finds in random polynomial
time the prime divisors of an integer such that is smooth. We
show that these prime factors can be recovered in deterministic polynomial
time. We further generalize this result to give a partial derandomization of
the -th cyclotomic method of factoring () devised by Bach and
Shallit.
We also investigate reductions of factoring to computing Euler's totient
function . We point out some explicit sets of integers that are
completely factorable in deterministic polynomial time given . These
sets consist, roughly speaking, of products of primes satisfying, with the
exception of at most two, certain conditions somewhat weaker than the
smoothness of . Finally, we prove that oracle queries for
values of are sufficient to completely factor any integer in less
than deterministic
time.Comment: Expanded and heavily revised version, to appear in Mathematics of
Computation, 21 page
Optimal ancilla-free Clifford+T approximation of z-rotations
We consider the problem of approximating arbitrary single-qubit z-rotations
by ancilla-free Clifford+T circuits, up to given epsilon. We present a fast new
probabilistic algorithm for solving this problem optimally, i.e., for finding
the shortest possible circuit whatsoever for the given problem instance. The
algorithm requires a factoring oracle (such as a quantum computer). Even in the
absence of a factoring oracle, the algorithm is still near-optimal under a mild
number-theoretic hypothesis. In this case, the algorithm finds a solution of
T-count m + O(log(log(1/epsilon))), where m is the T-count of the
second-to-optimal solution. In the typical case, this yields circuit
approximations of T-count 3log_2(1/epsilon) + O(log(log(1/epsilon))). Our
algorithm is efficient in practice, and provably efficient under the
above-mentioned number-theoretic hypothesis, in the sense that its expected
runtime is O(polylog(1/epsilon)).Comment: 40 pages. New in v3: added a section on worst-case behavio
Five Quantum Algorithms Using Quipper
Quipper is a recently released quantum programming language. In this report,
we explore Quipper's programming framework by implementing the Deutsch's,
Deutsch-Jozsa's, Simon's, Grover's, and Shor's factoring algorithms. It will
help new quantum programmers in an instructive manner. We choose Quipper
especially for its usability and scalability though it's an ongoing development
project. We have also provided introductory concepts of Quipper and
prerequisite backgrounds of the algorithms for readers' convenience. We also
have written codes for oracles (black boxes or functions) for individual
algorithms and tested some of them using the Quipper simulator to prove
correctness and introduce the readers with the functionality. As Quipper 0.5
does not include more than \ensuremath{4 \times 4} matrix constructors for
Unitary operators, we have also implemented \ensuremath{8 \times 8} and
\ensuremath{16 \times 16} matrix constructors.Comment: 27 page
- β¦