deltakit.explorer.codes.StabiliserCode#

class deltakit.explorer.codes.StabiliserCode(stabilisers: Sequence[Iterable[Stabiliser]], x_logical_operators: Sequence[Collection[PauliGate]] | None = None, z_logical_operators: Sequence[Collection[PauliGate]] | None = None, use_ancilla_qubits: bool = True, check_logical_operators_are_independent: bool = False)#

Bases: ABC

Class representing an abstract stabiliser code.

This class also contains methods that help set up circuits for memory experiments.

Methods#

StabiliserCode.encode_logical_pluses

Set up the CSSStage which represents the encoding of a logical \(\ket{+}\dots\ket{+}\)

StabiliserCode.encode_logical_zeroes

Set up the CSSStage which represents the encoding of a logical \(\ket{0}\dots\ket{0}\).

StabiliserCode.measure_stabilisers

Set up the CSSStage which represents measuring the stabilisers for num_rounds rounds.

StabiliserCode.measure_x_logicals

Set up the CSSStage which represents measuring all logical X operators simultaneously.

StabiliserCode.measure_z_logicals

Set up the CSSStage which represents measuring all logical Z operators simultaneously.

StabiliserCode.overwrite_logicals

Method to allow for updating both X and Z logicals simultaneously.