- class topqad_sdk.noiseprofiler.libprotocols.lattice_surgery.ModelLatticeSurgery(*, distance: int, bus_width: int, rounds: tuple[int, int, int], merge_observable: tuple[str, str], preparation_basis: tuple[str, str], measurement_basis: tuple[str, str], logical_observable: tuple[str, ...])[source]
A model for the Lattice Surgery protocol.
- distance
Distance of codes used for the two logical qubits.
- Type:
int
- bus_width
Number of rows/columns of data qubits added in the routing space.
- Type:
int
- rounds
Number of rounds of the pre-merge, merge, and split phases.
- Type:
tuple[int, int, int]
- merge_observable
Joint observable being measured.
- Type:
tuple[str, str]
- preparation_basis
Logical qubits’ initialization basis.
- Type:
tuple[str, str]
- measurement_basis
Logical qubits’ measurement basis.
- Type:
tuple[str, str]
- logical_observable
The observable used to validate the simulation.
- Type:
tuple[str, …]
- class topqad_sdk.noiseprofiler.libprotocols.magic_state_preparation_hook_injection.ModelMagicStatePreparationHookInjection(*, d_1: int, d_2: int, r_2: int, inject_state: str)[source]
A model for the Magic State Preparation using Hook Injection protocol.
- d_1
The distance of the injection patch created in stage I. Must be odd.
- Type:
int
- d_2
The distance of the target patch created during state II. Must be odd and larger than d_1.
- Type:
int
- r_2
The number of rounds during stage II.
- Type:
int
- inject_state
The injected state, currently only ‘X’ is supported.
- Type:
str
- class topqad_sdk.noiseprofiler.libprotocols.magic_state_preparation_rep_code.ModelMagicStatePreparationRepCode(*, distances: list[int], rounds: list[int], inject_state: str)[source]
A model for the Magic State Preparation using Repetition Code protocol.
- distances
List of two distances with the smaller value listed first. Each must be an odd integer greater than or equal to 3.
- Type:
list[int]
- rounds
List of two rounds. Each must be an integer greater than or equal to 1.
- Type:
list[int]
- inject_state
The injected state, either ‘X’ or ‘Y’.
- Type:
str
- class topqad_sdk.noiseprofiler.libprotocols.memory.ModelMemory(*, distance: int, rounds: int, basis: str)[source]
A model for the Memory protocol.
- distance
Distance of code. Must be odd.
- Type:
int
- rounds
Number of rounds.
- Type:
int
- basis
The memory basis. Defaults to ‘Z’.
- Type:
str, optional
- class topqad_sdk.noiseprofiler.libprotocols.stability.ModelStability(*, rounds: int, diameter: int | tuple[int, int])[source]
A model for the Stability protocol.
- rounds
Number of rounds. Must be an integer greater than or equal to 1.
- Type:
int
- diameter
Spatial distance of code. Must be even. Can separately specify (d_x, d_z).
- Type:
int | tuple[int, int]