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

IBM Quantum Platform is moving and this version will be sunset on July 1. To get started on the new platform, read the migration guide.

EigsQPE

class EigsQPE(operator, iqft, num_time_slices=1, num_ancillae=1, expansion_mode='trotter', expansion_order=1, evo_time=None, negative_evals=False, ne_qfts=None)

GitHub

Eigenvalues using Quantum Phase Estimation.

Specifically, this class is based on PhaseEstimationCircuit with no measurements and has additional handling of negative eigenvalues, e.g. for HHL. It depends on QFT and IQFT components.

Parameters

  • operator (LegacyBaseOperator) – The Hamiltonian Operator object
  • iqft (Union[QuantumCircuit, IQFT]) – The Inverse Quantum Fourier Transform component
  • num_time_slices (int) – The number of time slices, has a minimum value of 1.
  • num_ancillae (int) – The number of ancillary qubits to use for the measurement, has a minimum value of 1.
  • expansion_mode (str) – The expansion mode (‘trotter’ | ‘suzuki’)
  • expansion_order (int) – The suzuki expansion order, has a minimum value of 1.
  • evo_time (Optional[float]) – An optional evolution time which should scale the eigenvalue onto the range (0,1](0,1] (or (0.5,0.5](-0.5,0.5] for negative eigenvalues). Defaults to None in which case a suitably estimated evolution time is internally computed.
  • negative_evals (bool) – Set True to indicate negative eigenvalues need to be handled
  • ne_qfts (Optional[List]) – The QFT and IQFT components for handling negative eigenvalues

Methods

construct_circuit

EigsQPE.construct_circuit(mode, register=None)

Construct the eigenvalues estimation using the PhaseEstimationCircuit

Parameters

  • mode (str) – construction mode, ‘matrix’ not supported
  • register (QuantumRegister) – the register to use for the quantum state

Returns

object for the constructed circuit

Return type

QuantumCircuit

Raises

ValueError – QPE is only possible as a circuit not as a matrix

construct_inverse

EigsQPE.construct_inverse(mode, circuit)

Construct the inverse eigenvalue estimation quantum circuit.

Parameters

  • mode (str) – construction mode, ‘matrix’ not supported
  • circuit (QuantumCircuit) – the quantum circuit to invert

Returns

object for of the inverted eigenvalue estimation

circuit.

Return type

QuantumCircuit

Raises

  • NotImplementedError – not implemented for matrix mode
  • ValueError – Circuit was not constructed beforehand

get_register_sizes

EigsQPE.get_register_sizes()

get register sizes

get_scaling

EigsQPE.get_scaling()

get scaling

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