SamplerProtocol

class SamplerProtocol

ベースクラス: Protocol, Generic[SamplingMeta_co, CircType_co]

Protocol for quantum circuit samplers.

Implement this protocol to add support for a new quantum backend. A conforming class must implement get_circuit_class() and sampling().

Methods

__init__

get_circuit_class

Return the circuit class this sampler operates on.

sampling

Execute the given quantum circuit and return measurement results.

__init__(*args, **kwargs)
abstract classmethod get_circuit_class() type[CircType_co]

Return the circuit class this sampler operates on.

abstract sampling(
qc: Any,
shots: int,
) tuple[list[tuple[list[int], int]], SamplingDurations, SamplingMeta_co]

Execute the given quantum circuit and return measurement results.

Measures all qubits. The circuit does not need to include explicit measurement gates. Results are listed in ascending qubit-index order.

パラメータ:
  • qc (Any) -- The circuit to execute. Must be an instance of the type returned by get_circuit_class().

  • shots (int) -- Number of times to execute the circuit.

戻り値:

A tuple of (counts, durations, meta) where counts is a list of (spin_sequence, frequency) pairs, durations is the timing breakdown, and meta is backend-specific metadata.

戻り値の型:

tuple[IsingSeqFreqList, SamplingDurations, SamplingMeta_co]