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)[source]

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

PhaseEstimationCircuit.ancillary_register

returns ancillary register

PhaseEstimationCircuit.auxiliary_register

returns auxiliary register

PhaseEstimationCircuit.state_register

returns state register

Methods

PhaseEstimationCircuit.construct_circuit([…])

Construct the Phase Estimation circuit