UniformPauliSubset¶
- class samplomatic.distributions.UniformPauliSubset(num_subsystems: int, paulis: ndarray)[source]¶
Bases:
DistributionThe uniform distribution over a subset of virtual Pauli gates.
Here,
paulisis an array with elements corresponding to Paulis as enumerated inPauliRegister. The length of an individual Pauli should be a divisor ofnum_subsystems. The outputPauliRegisteris partitioned contiguously such that each part samples independently frompaulis.>>> import numpy as np >>> from samplomatic.distributions import UniformPauliSubset >>> >>> # Create a distribution that samples a random phase on each qubit >>> z_distribution = UniformPauliSubset(3, np.array([[0], [1]])) >>> >>> # Create a correlated phase distribution >>> z_corr_distribution = UniformPauliSubset(3, np.array([[0, 0, 0], [1, 1, 1]]))
- Parameters:
num_subsystems – The number of subsystems this distribution samples.
paulis – The subset of Paulis to sample from.
- Raises:
ValueError – If the number of subsystems is not divisible by the length of an element of
paulis.
Attributes Summary
The subset of Paulis to sample from.
The virtual gate type being sampled.
Methods Summary
sample(size, rng)Sample the distribution.
Attributes Documentation
- paulis¶
The subset of Paulis to sample from.
- register_type¶
Methods Documentation