Quantum amplitude amplifica-tion and estimation
Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer