Intro to Amplitude Amplification
Overview
Intro to Amplitude Amplification
This PennyLane demo introduces amplitude amplification, the generalization of Grover's search algorithm that systematically increases the amplitude of a target state. It develops the geometric picture in which the initial state, prepared by a unitary that overlaps the target, is written in a two-dimensional plane spanned by the target and its orthogonal complement, so that the whole procedure can be visualized as motion inside a circle. The key insight is that two reflections, one about the orthogonal complement implemented by a phase oracle that marks the target and one about the initial state, together act as a rotation of twice the initial angle toward the target, and repeating this rotation the right number of times drives the state close to the target with roughly the square root of N oracle calls. The tutorial implements this using PennyLane's AmplitudeAmplification template, applying it to a zero-sum subset problem over a list of integers, and then discusses fixed-point amplitude amplification, which avoids overshooting the target when the number of iterations or the initial overlap is not known precisely. Because amplitude amplification underlies the quadratic speedup of Grover search and many other quantum routines, it is a foundational technique for quantum algorithm designers.
Run it
pip install -r requirements.txt
python demo.py
Source and license
Imported from demonstrations_v2/tutorial_intro_amplitude_amplification/demo.py in PennyLaneAI/demos at c52c0abeb5122218aa96b38eea848864cce7323f, under the Apache License 2.0. Original authors: Xanadu and the PennyLane community. The upstream LICENSE is included alongside this example.
This entry was created automatically from publicly available records. QCR links to public sources and only stores repository content where the license permits redistribution.
Versions
Cite all versions? Use the base QCR ID to always reference the latest version of this entry.
Join the Discussion
Comments (0)
No comments yet. Be the first to share your thoughts!