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.

PhaseEstimationCircuit

class PhaseEstimationCircuit(operator=None, state_in=None, iqft=None, num_time_slices=1, num_ancillae=1, expansion_mode='trotter', expansion_order=1, evo_time=6.283185307179586, state_in_circuit_factory=None, unitary_circuit_factory=None, shallow_circuit_concat=False, pauli_list=None)

GitHub

Quantum Phase Estimation Circuit.

Parameters

  • operator (WeightedPauliOperator) – the hamiltonian Operator object
  • state_in (InitialState) – the InitialState component
  • state (representing the initial quantum) –
  • iqft (Union[QuantumCircuit, IQFT]) – the Inverse Quantum Fourier Transform as circuit or Aqua component
  • num_time_slices (int) – the number of time slices
  • num_ancillae (int) – the number of ancillary qubits to use for the measurement
  • expansion_mode (str) – the expansion mode (trotter|suzuki)
  • expansion_order (int) – the suzuki expansion order
  • evo_time (float) – the evolution time
  • state_in_circuit_factory (CircuitFactory) – the initial state represented by
  • object (by a CircuitFactory) –
  • unitary_circuit_factory (CircuitFactory) – the problem unitary represented
  • object
  • shallow_circuit_concat (bool) – indicate whether to use shallow (cheap) mode
  • concatenation (for circuit) –
  • pauli_list (list[Pauli]) – the flat list of paulis for the operator

Raises

AquaError – Missing input


Attributes

ancillary_register

returns ancillary register

auxiliary_register

returns auxiliary register

state_register

returns state register


Methods

construct_circuit

PhaseEstimationCircuit.construct_circuit(state_register=None, ancillary_register=None, auxiliary_register=None, measurement=False)

Construct the Phase Estimation circuit

Parameters

  • state_register (QuantumRegister) – the optional register to use for the quantum state
  • ancillary_register (QuantumRegister) – the optional register to use for
  • qubits (the ancillary measurement) –
  • auxiliary_register (QuantumRegister) – an optional auxiliary quantum register
  • measurement (bool) – Boolean flag to indicate if measurement should be included
  • circuit. (in the) –

Returns

the QuantumCircuit object for the constructed circuit

Return type

QuantumCircuit

Raises

  • RuntimeError – Multiple identity pauli terms are present
  • ValueError – invalid mode
Was this page helpful?
Report a bug or request content on GitHub.