deltakit.decode.noise_sources.UniformErasureNoise#

class deltakit.decode.noise_sources.UniformErasureNoise(erasure_probability: float, pauli_noise_model: IndependentMatchingNoise | None = None, edge_filter: Callable[[HyperMultiGraph], Sequence[EdgeT]] | None = None)#

Bases: MonteCarloNoise[HyperMultiGraph, tuple[OrderedDecodingEdges, OrderedDecodingEdges]]

Noise model that simulates a simple erasure channel. Edges are selected for erasure independently at random with given probability. Independently at random, each erased edge has a 50% chance of also causing a pauli error. This noise source returns tuples of all pauli error edges and erased edges.

Methods#

UniformErasureNoise.as_exhaustive_sequential_model

Return the equivalent exhaustive model for this noise model.

UniformErasureNoise.build_batch_error_generator

Given some representation of a code, return a generator of batches of errors for that code.

UniformErasureNoise.build_split_batch_error_generators

Given some representation of a code, return num_splits number of batch generators of errors for that code and the respective sizes for those generators.

UniformErasureNoise.error_generator

Given some representation of a code, return a generator of errors for that code.

UniformErasureNoise.field_values

Return the values of data that characterises this noise model.

UniformErasureNoise.get_rng

Return a numpy random number generator, using the member data seed.

UniformErasureNoise.importance_sampling_decomposition

Expresses the independent error distribution as a statistical mixture of other error distributions.

UniformErasureNoise.split_error_generator

Given some representation of a code, return num_splits number of generators of errors for that code and the respective sizes for those generators.