SurfaceCode クラス

このクラスは、ゲート ベースの回転サーフェス コードをモデル化します。

ハイパー パラメーター: distance: int サーフェス コードのコード距離。

参考資料:

  • Dominic Horsman,Austin G. Fowler, Simon Devitt, Rodney Van Meter: Surface code quantum computing by lattice surgery, arXiv:1111.4022

  • Austin G. Fowler、Matteo Mariantoni、John M. Martinis、Andrew N. Cleland: Surface code: arXiv:1208.0928

  • David S. Wang、Austin G. Fowler、Lloyd C. L. Hollenberg: 1%上の最も近い近隣の相互作用とエラー率を持つ量子コンピューティング 、 arXiv:1009.3686

コンストラクター

SurfaceCode(crossing_prefactor: float = 0.03, error_correction_threshold: float = 0.01, one_qubit_gate_depth: int = 1, two_qubit_gate_depth: int = 4, code_cycle_override: int | None = None, code_cycle_offset: int = 0, *, distance: int = 3)

パラメーター

名前 説明
crossing_prefactor
規定値: 0.03
error_correction_threshold
規定値: 0.01
one_qubit_gate_depth
規定値: 1
two_qubit_gate_depth
規定値: 4
code_cycle_override
規定値: None
code_cycle_offset
規定値: 0

キーワードのみのパラメーター

名前 説明
distance
規定値: 3

メソッド

provided_isa
required_isa

provided_isa

provided_isa(impl_isa: ISA, ctx: ISAContext) -> Generator[ISA, None, None]

パラメーター

名前 説明
impl_isa
必須
ctx
必須

required_isa

static required_isa() -> ISARequirements

属性

crossing_prefactor

float エラー修正の交差による論理誤差率のプリファクター。 (既定値は 0.03 です。Eq を参照してください。 (11) in arXiv:1208.0928)

crossing_prefactor: float = 0.03

error_correction_threshold

float サーフェス コードのエラー修正しきい値。 (既定値は 0.01 (1%)、 arXiv:1009.3686 を参照)

error_correction_threshold: float = 0.01

one_qubit_gate_depth

int 各症候群抽出サイクルにおける1量子ビットゲートの深さ。 (既定値は 1、 arXiv:1009.3686 の図 2 を参照)

one_qubit_gate_depth: int = 1

two_qubit_gate_depth

int 各症候群抽出サイクルにおける2量子ビットゲートの深さ。 (既定値は 4、 arXiv:1009.3686 の図 2 を参照)

two_qubit_gate_depth: int = 4

code_cycle_override

Optional[int] 指定した場合、この値はゲート時間と深さに基づく既定の計算ではなく、各症候群抽出サイクルの時間として使用されます。 (既定値は None)

code_cycle_override: int | None = None

code_cycle_offset

int 症候群抽出サイクル時間に追加する追加の時間オフセット。 (既定値は 0)

code_cycle_offset: int = 0

distance

distance: int = 3