FasterAmplitudeEstimation
class FasterAmplitudeEstimation(delta, maxiter, rescale=True, quantum_instance=None, sampler=None)
Bases: qiskit.algorithms.amplitude_estimators.amplitude_estimator.AmplitudeEstimator
The Faster Amplitude Estimation algorithm.
The Faster Amplitude Estimation (FAE) [1] algorithm is a variant of Quantum Amplitude Estimation (QAE), where the Quantum Phase Estimation (QPE) by an iterative Grover search, similar to [2].
Due to the iterative version of the QPE, this algorithm does not require any additional qubits, as the originally proposed QAE [3] and thus the resulting circuits are less complex.
References
[1]: K. Nakaji. Faster Amplitude Estimation, 2020;
[2]: D. Grinko et al. Iterative Amplitude Estimation, 2019;
[3]: G. Brassard et al. Quantum Amplitude Amplification and Estimation, 2000;
Parameters
- delta (float) – The probability that the true value is outside of the final confidence interval.
- maxiter (int) – The number of iterations, the maximal power of Q is 2 ** (maxiter - 1).
- rescale (bool) – Whether to rescale the problem passed to estimate.
- quantum_instance (QuantumInstance |Backend | None) – Pending deprecation: The quantum instance or backend to run the circuits.
- sampler (BaseSampler | None) – A sampler primitive to evaluate the circuits.
This algorithm overwrites the number of shots set in the quantum_instance
argument, but will reset them to the initial number after running.
Methods
construct_circuit
FasterAmplitudeEstimation.construct_circuit(estimation_problem, k, measurement=False)
Construct the circuit .
The A operator is the unitary specifying the QAE problem and Q the associated Grover operator.
Parameters
- estimation_problem – The estimation problem for which to construct the circuit.
- k – The power of the Q operator.
- measurement – Boolean flag to indicate if measurements should be included in the circuits.
Returns
The circuit .
estimate
FasterAmplitudeEstimation.estimate(estimation_problem)
Run the amplitude estimation algorithm on provided estimation problem.
Parameters
estimation_problem (EstimationProblem
) – The estimation problem.
Return type
FasterAmplitudeEstimationResult
Returns
An amplitude estimation results object.
Raises
- ValueError – A quantum instance or Sampler must be provided.
- AlgorithmError – Sampler run error.
Attributes
quantum_instance
Pending deprecation; Get the quantum instance.
Return type
QuantumInstance | None
Returns
The quantum instance used to run this algorithm.
sampler
Get the sampler primitive.
Return type
BaseSampler | None
Returns
The sampler primitive to evaluate the circuits.