quri_parts.core.sampling package

MeasurementCounts

MeasurementCounts represents count statistics of repeated measurements of a quantum circuit. Keys are observed bit patterns encoded in integers and values are counts of observation of the corresponding bit patterns.

alias of Mapping[int, int | float]

ConcurrentSampler

ConcurrentSampler represents a function that samples specified (non-parametric) circuits concurrently.

alias of Callable[[Iterable[tuple[ImmutableQuantumCircuit, int]]], Iterable[Mapping[int, int | float]]]

ParametricSampler

ParametricSampler represents a sampler that samples from a parametric circuit with a fixed set of circuit parameters.

alias of Callable[[ParametricQuantumCircuitProtocol, int, Sequence[float]], Mapping[int, int | float]]

ConcurrentParametricSampler

ConcurrentParametricSampler represents a sampler that samples from a parametric circuit with a (shot, circuit parameter) pairs.

alias of Callable[[ParametricQuantumCircuitProtocol, Iterable[tuple[int, Sequence[float]]]], Iterable[Mapping[int, int | float]]]

StateSampler

StateSampler representes a function that samples a specific (non-parametric) state by specified times and returns the count statistics. In the case of an ideal StateSampler, the return value corresponds to probabilities multiplied by shot count.

alias of Callable[[_StateT, int], Mapping[int, int | float]]

ConcurrentStateSampler

ConcurrentSampler represents a function that samples specified (non-parametric) state by specified times and returns the count statistics concurrently.

alias of Callable[[Iterable[tuple[_StateT, int]]], Iterable[Mapping[int, int | float]]]

ParametricStateSampler

ParametricStateSampler represents a state sampler that samples from a parametric state with a fixed set of circuit parameters.

alias of Callable[[_ParametricStateT, int, Sequence[float]], Mapping[int, int | float]]

ConcurrentParametricStateSampler

ConcurrentParametricStateSampler represents a state sampler that samples from a parametric state with a sequence of (shot, circuit parameter) pairs.

alias of Callable[[_ParametricStateT, Iterable[tuple[int, Sequence[float]]]], Iterable[Mapping[int, int | float]]]

class GeneralSampler(sampler: 'Sampler', state_sampler: 'StateSampler[_StateT]')

Bases: Generic[_StateT, _ParametricStateT]

Parameters:
  • sampler (Sampler)

  • state_sampler (StateSampler[_StateT])

sampler: Sampler
state_sampler: StateSampler[_StateT]
parametric_sampler: ParametricSampler
parametric_state_sampler: ParametricStateSampler[_ParametricStateT]
create_parametric_sampler_from_sampler(sampler)

Create a ParametricSampler from a Sampler.

Parameters:

sampler (core.sampling.Sampler)

Return type:

core.sampling.ParametricSampler

create_concurrent_parametric_sampler_from_concurrent_sampler(concurrent_sampler)

Create a ConcurrentParametricSampler from a ConcurrentSampler.

Parameters:

concurrent_sampler (core.sampling.ConcurrentSampler)

Return type:

core.sampling.ConcurrentParametricSampler

create_parametric_state_sampler_from_state_sampler(state_sampler)

Create a ParametricStateSampler from a StateSampler.

Parameters:

state_sampler (StateSampler[_StateT])

Return type:

ParametricStateSampler[_ParametricStateT]

create_concurrent_parametric_state_sampler_from_concurrent_state_sampler(concurrent_state_sampler)

Create a ConcurrentParametricStateSampler from a ConcurrentStateSampler.

Parameters:

concurrent_state_sampler (ConcurrentStateSampler[_StateT])

Return type:

ConcurrentParametricStateSampler[_ParametricStateT]

sample_from_probability_distribution(n_sample, probability_distribution, seed=None)

Sample from a probibility distribution.

Parameters:
  • n_sample (int)

  • probability_distribution (Sequence[float] | ndarray[Any, dtype[float64]])

  • seed (int | None)

Return type:

core.sampling.MeasurementCounts

sample_from_state_vector(state_vector, n_shots)

Perform sampling from a state vector.

Parameters:
  • state_vector (ndarray[Any, dtype[complex128]])

  • n_shots (int)

Return type:

core.sampling.MeasurementCounts

ideal_sample_from_state_vector(state_vector, n_shots)

Perform ideal sampling from a state vector.

Parameters:
  • state_vector (ndarray[Any, dtype[complex128]])

  • n_shots (int)

Return type:

core.sampling.MeasurementCounts

sample_from_density_matrix(density_matrix, n_shots)
Parameters:
  • density_matrix (ndarray[Any, dtype[complex128]])

  • n_shots (int)

Return type:

core.sampling.MeasurementCounts

ideal_sample_from_density_matrix(density_matrix, n_shots)
Parameters:
  • density_matrix (ndarray[Any, dtype[complex128]])

  • n_shots (int)

Return type:

core.sampling.MeasurementCounts

create_sampler_from_sampling_backend(backend)

Create a simple Sampler using a SamplingBackend.

Parameters:

backend (SamplingBackend)

Return type:

core.sampling.Sampler

create_concurrent_sampler_from_sampling_backend(backend)

Create a simple ConcurrentSampler using a SamplingBackend.

Parameters:

backend (SamplingBackend)

Return type:

core.sampling.ConcurrentSampler

create_sampler_from_concurrent_sampler(concurrent_sampler)
Parameters:

concurrent_sampler (core.sampling.ConcurrentSampler)

Return type:

core.sampling.Sampler

class PauliSamplingSetting(pauli_set, n_shots)

Bases: NamedTuple

Parameters:
  • pauli_set (core.operator.pauli.CommutablePauliSet)

  • n_shots (int)

pauli_set: CommutablePauliSet

Alias for field number 0

n_shots: int

Alias for field number 1

PauliSamplingShotsAllocator

PauliSamplingShotsAllocator represents a function that distributes a given number of sampling shots to each CommutablePauliSet.

alias of Callable[[Operator, Collection[Set[PauliLabel]], int], Collection[PauliSamplingSetting]]

WeightedSamplingShotsAllocator

WeightedSamplingShotsAllocator represents a function that distributes a given number of sampling shots based on a set of weights.

alias of Callable[[Sequence[complex], int], Sequence[int]]

Submodules