Skip to main contentIBM Quantum Documentation
You are viewing the API reference for an old version of Qiskit SDK. Switch to latest version

FasterAmplitudeEstimation

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

GitHub(opens in a new tab)

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(opens in a new tab)

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

arXiv:1912.05559(opens in a new tab)

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

arXiv:quant-ph/0005055(opens in a new tab)

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.