dakk / qlasskit

A python-to-quantum compiler
https://dakk.github.io/qlasskit/
Apache License 2.0
53 stars 9 forks source link

QPE #47

Closed AbdullahKazi500 closed 1 month ago

AbdullahKazi500 commented 1 month ago

Quantum Phase Estimation (QPE) is a fundamental algorithm in quantum computing that estimates the phase (eigenvalue) associated with an eigenvector of a unitary operator. QPE is crucial for various quantum algorithms, including Shor's algorithm for integer factorization and quantum simulations.

How QPE Works QPE works by:

Initializing Qubits: It uses a set of qubits to represent the phase and another set to represent the eigenvector. Applying Hadamard Gates: Hadamard gates are applied to the qubits representing the phase to create a superposition. Controlled Unitary Operations: Controlled-U operations are applied, where each phase qubit controls the application of the unitary operator U. Inverse Quantum Fourier Transform (QFT): An inverse QFT is applied to the phase qubits to transform the phase information from the amplitude into the basis states. Measurement: The phase qubits are measured, providing an estimate of the phase. QPE Implementation in Qlasskit The implementation of QPE in Qlasskit uses QlassF functions to define the unitary operator and eigenvector. The QPE class inherits from QAlgorithm and integrates with Qlasskit's quantum circuit framework. Refernces https://journals.aps.org/prxquantum/abstract/10.1103/PRXQuantum.4.040341

AbdullahKazi500 commented 1 month ago

fixes #32