qrunch.quantum.measurement.quantum_measurement
Module containing quantum measurements.
Functions
|
Convert counts to probability dict. |
Classes
Class for holding a measured state. |
|
Class for probabilities of states from a quantum measurement. |
- class MeasurementState
Bases:
objectClass for holding a measured state.
- __init__(*, state: int, num_qubits: int) None
Initiate a MeasurementState object.
- Parameters:
state (int) – Integer representing the measured state.
num_qubits (int) – Number of qubits measured.
- Return type:
None
- property as_binary: str
The state as a binary.
- property as_integer: int
The state as an integer.
- classmethod from_binary(*, state: str | str_) MeasurementState
Initiate MeasurementState from a binary representation of a measured state.
- Parameters:
state (str | str_) – Integer representing the measured state.
- Returns:
MeasurementState object for the measured state.
- Return type:
- classmethod from_integer(*, state: int, num_qubits: int) MeasurementState
Initiate MeasurementState from an integer representation of a measured state.
- Parameters:
state (int) – Integer representing the measured state.
num_qubits (int) – Number of measured qubits.
- Returns:
MeasurementState object for the measured state.
- Return type:
- property num_qubits: int
The number of qubits measured.
- class QuantumMeasurement
Bases:
objectClass for probabilities of states from a quantum measurement.
- __init__(probabilities: dict[MeasurementState, float], shots: int | None = None) None
Initiate a QuantumMeasurements object.
- Parameters:
probabilities (dict[MeasurementState, float]) – Dictionary containing the data for the probabilities.
shots (int | None) – number of shots
- Return type:
None
- as_counts() dict[MeasurementState, int]
Get the counts for the measurement.
- Returns:
Dictionary of Measurement state representing each count.
- Return type:
dict[MeasurementState, int]
- classmethod from_binary_dict(*, probabilities: dict[str, float], shots: int | None = None) QuantumMeasurement
Create a QuantumMeasurement from a dict of data with binary keys.
- Parameters:
probabilities (dict[str, float]) – dict of measurements with keys as binary
shots (int | None) – number of shots
- Returns:
QuantumMeasurement object
- Return type:
- classmethod from_int_dict(*, probabilities: dict[int, float], num_qubits: int, shots: int | None = None) QuantumMeasurement
Create a QuantumMeasurement from a dict of data with integers keys.
- Parameters:
probabilities (dict[int, float]) – dict of measurements with keys as integers
num_qubits (int) – Number of measured qubits.
shots (int | None) – number of shots
- Returns:
QuantumMeasurement object
- Return type:
- get(key: str | int | MeasurementState) float
Get probability associated with key. Defaults to 0.0.
- Parameters:
key (str | int | MeasurementState) – Bit-string, integer or measurement state to look up in the measurement.
- Return type:
float
- items() Iterable[tuple[MeasurementState, float]]
Get iterable over tuples of key and value.
- Return type:
Iterable[tuple[MeasurementState, float]]
- keys() Iterable[MeasurementState]
Get iterable over keys.
- Return type:
Iterable[MeasurementState]
- most_frequent() MeasurementState
Get the state with the most counts.
- Returns:
Key for the most frequently measured state.
- Return type:
- property num_qubits: int
The number of qubits measured.
- property shots: int | None
Total number of measurement shots.
- to_binary_dict() dict[str, float]
Return the measurements as a dict with the keys as binary.
- Return type:
dict[str, float]
- to_integer_dict() dict[int, float]
Return the measurements as a dict with the keys as integers.
- Return type:
dict[int, float]
- values() Iterable[float]
Get iterable over values.
- Return type:
Iterable[float]
- convert_counts_to_probabilities(counts: dict[str, int]) dict[str, float]
Convert counts to probability dict.
- Parameters:
counts (dict[str, int]) – Counts as a dict with binary str as keys.
- Return type:
dict[str, float]