Skip to main contentIBM Quantum Documentation
This page is from an old version of Qiskit SDK and does not exist in the latest version. We recommend you migrate to the latest version. See the release notes for more information.

FasterAmplitudeEstimation

class FasterAmplitudeEstimation(delta, maxiter, rescale=True, quantum_instance=None, sampler=None)

GitHub

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;

arXiv:2002.02417

[2]: D. Grinko et al. Iterative Amplitude Estimation, 2019;

arXiv:1912.05559

[3]: G. Brassard et al. Quantum Amplitude Amplification and Estimation, 2000;

arXiv:quant-ph/0005055

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.
Note

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 QkX0>Q^k X |0\rangle>.

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 QkX0Q^k X |0\rangle.

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.

Was this page helpful?
Report a bug or request content on GitHub.