メインコンテンツへスキップ
このプロジェクトはベータ版です。バグを見つけましたか?GitHub Issueを開く。質問やアイデアがありますか?Discussionsで質問する — フィードバックをお待ちしています!
このページの翻訳品質はいかがですか?

反復符号の再考

次に、3ビット反復符号を再度取り上げ、今回はパウリ演算の観点から説明します。 これがスタビライザー符号の最初の例となります。

反復符号のパウリオブザーバブル​

3ビット反復符号を量子ビットに適用すると、ある量子ビットの状態ベクトル α∣0⟩+β∣1⟩\alpha\vert 0\rangle + \beta\vert 1\rangle が次のように符号化されることを思い出してください。

∣ψ⟩=α∣000⟩+β∣111⟩.\vert\psi\rangle = \alpha\vert 000\rangle + \beta\vert 111\rangle.

この形の状態 ∣ψ⟩\vert\psi\rangle はいずれも、ある量子ビット状態の有効な3量子ビット符号化です。しかし、よくわからない状態があった場合、以下の2つの等式を確認することで有効な符号化であるかどうかを検証できます。

(Z⊗Z⊗I)∣ψ⟩=∣ψ⟩(I⊗Z⊗Z)∣ψ⟩=∣ψ⟩\begin{aligned} (Z \otimes Z \otimes \mathbb{I}) \vert\psi\rangle & = \vert\psi\rangle\\[1mm] (\mathbb{I} \otimes Z \otimes Z) \vert\psi\rangle & = \vert\psi\rangle \end{aligned}

最初の等式は、∣ψ⟩\vert\psi\rangle の左端の2量子ビットに ZZ 演算を適用しても何も変わらないことを述べており、すなわち ∣ψ⟩\vert\psi\rangle が固有値 11 を持つ Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} の固有ベクトルであることを意味します。 2番目の等式も同様ですが、ZZ 演算は右端の2量子ビットに適用されます。 ∣ψ⟩\vert\psi\rangle を標準基底状態の線形結合として考えると、最初の等式は左端の2ビットが偶数パリティ(すなわち等しい)を持つ標準基底状態にのみ非ゼロ係数を持てることを意味し、2番目の等式は右端の2ビットが偶数パリティを持つ標準基底状態にのみ非ゼロ係数を持てることを意味します。

同等に、2つのパウリ演算 Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} と I⊗Z⊗Z\mathbb{I}\otimes Z\otimes Z をオブザーバブルとして見て、前のセクションの末尾で示した回路を用いて両方を測定すると、∣ψ⟩\vert\psi\rangle が固有値 11 を持つ両方のオブザーバブルの固有ベクトルであるため、+1+1 固有値に対応する測定結果が必ず得られます。 しかし、両方のオブザーバブルを独立に測定するための(合成)回路の簡略版は、ここに示す通り、3ビット反復符号のパリティチェック回路に他なりません。

3ビット反復符号のパリティチェック回路

したがって、上記の2つの等式は、パリティチェック回路が 0000 を出力することを示唆しており、これはエラーが検出されなかったことを示すシンドロームです。

3量子ビットのパウリ演算 Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} と I⊗Z⊗Z\mathbb{I}\otimes Z\otimes Z は、この符号のスタビライザー生成元と呼ばれ、符号のスタビライザーはスタビライザー生成元によって生成される集合です。

⟨Z⊗Z⊗I,I⊗Z⊗Z⟩={I⊗I⊗I,Z⊗Z⊗I,Z⊗I⊗Z,I⊗Z⊗Z}\langle Z\otimes Z\otimes \mathbb{I}, \mathbb{I}\otimes Z\otimes Z\rangle = \{ \mathbb{I}\otimes\mathbb{I}\otimes\mathbb{I}, Z\otimes Z\otimes\mathbb{I}, Z\otimes\mathbb{I}\otimes Z, \mathbb{I}\otimes Z\otimes Z \}

スタビライザーはこの符号に関連する根本的に重要な数学的対象であり、それが果たす役割については、レッスンが進むにつれて説明します。 ここで、選択した生成元のいずれかの代わりに Z⊗I⊗ZZ\otimes\mathbb{I}\otimes Z を使って、生成元とそれに対応するパリティチェックとして別の選び方をすることもできましたが、その場合でもスタビライザー自体と符号は変わらなかったでしょう。

エラー検出​

次に、3ビット反復符号のビットフリップ検出を検討し、関与するパウリ演算(スタビライザー生成元とエラーそのもの)間の相互作用と関係に注目します。

3ビット反復符号を使って量子ビットを符号化し、左端の量子ビットにビットフリップエラーが発生したとします。 これにより、状態 ∣ψ⟩\vert\psi\rangle は XX 演算(または XX エラー)の作用によって変換されます。

∣ψ⟩↦(X⊗I⊗I)∣ψ⟩\vert\psi\rangle \mapsto (X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle

このエラーは、前のレッスンで説明した通り、3ビット反復符号のパリティチェックを実行することで検出できます。これは、スタビライザー生成元 Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} と I⊗Z⊗Z\mathbb{I}\otimes Z\otimes Z をオブザーバブルとして非破壊的に測定することと等価です。

最初のスタビライザー生成元から始めましょう。 状態 ∣ψ⟩\vert\psi\rangle は左端の量子ビットに XX エラーの影響を受けており、このスタビライザー生成元のオブザーバブルとしての測定がこのエラーによってどのように影響を受けるかを理解することが目標です。 XX と ZZ は反交換する一方、すべての行列は恒等行列と交換することから、Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} は X⊗I⊗IX\otimes\mathbb{I}\otimes\mathbb{I} と反交換します。 一方、∣ψ⟩\vert\psi\rangle は量子ビットの有効な符号化であるため、Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} は ∣ψ⟩\vert\psi\rangle に対して自明に作用します。

(Z⊗Z⊗I)(X⊗I⊗I)∣ψ⟩=−(X⊗I⊗I)(Z⊗Z⊗I)∣ψ⟩=−(X⊗I⊗I)∣ψ⟩\begin{aligned} (Z \otimes Z \otimes \mathbb{I})(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle & = -(X \otimes \mathbb{I} \otimes \mathbb{I})(Z \otimes Z \otimes \mathbb{I})\vert\psi\rangle \\ & = -(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle \end{aligned}

したがって、(X⊗I⊗I)∣ψ⟩(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle は固有値 −1-1 を持つ Z⊗Z⊗IZ \otimes Z \otimes \mathbb{I} の固有ベクトルです。 オブザーバブル Z⊗Z⊗IZ \otimes Z \otimes \mathbb{I} に関連する測定が状態 (X⊗I⊗I)∣ψ⟩(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle に対して行われると、その結果は必ず固有値 −1-1 に対応するものになります。

同様の推論を2番目のスタビライザー生成元にも適用できますが、今回はエラーがスタビライザー生成元と反交換するのではなく交換するため、この測定の結果は固有値 +1+1 に対応するものになります。

(I⊗Z⊗Z)(X⊗I⊗I)∣ψ⟩=(X⊗I⊗I)(I⊗Z⊗Z)∣ψ⟩=(X⊗I⊗I)∣ψ⟩\begin{aligned} (\mathbb{I} \otimes Z \otimes Z)(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle & = (X \otimes \mathbb{I} \otimes \mathbb{I})(\mathbb{I} \otimes Z \otimes Z)\vert\psi\rangle\\ & = (X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle \end{aligned}

これらの等式を考察すると、元の状態 ∣ψ⟩\vert\psi\rangle に関わらず、破損した状態は両方のスタビライザー生成元の固有ベクトルであり、固有値が +1+1 か −1-1 かはエラーが各スタビライザー生成元と交換するか反交換するかによって決まることがわかります。 パウリ演算で表されるエラーの場合、任意の2つのパウリ演算は交換するか反交換するかのどちらかであるため、常にどちらかになります。 一方、実際の状態 ∣ψ⟩\vert\psi\rangle は、スタビライザー生成元がこの状態に自明に作用するという事実を除けば、重要な役割を果たしません。

このため、一般的に作業している特定の符号化状態に注意を払う必要はありません。 重要なのは、エラーが各スタビライザー生成元と交換するか反交換するかだけです。 特に、この符号のこの特定のエラーに関して関係する等式は以下の通りです。

(Z⊗Z⊗I)(X⊗I⊗I)=−(X⊗I⊗I)(Z⊗Z⊗I)(I⊗Z⊗Z)(X⊗I⊗I)=(X⊗I⊗I)(I⊗Z⊗Z)\begin{aligned} (Z \otimes Z \otimes \mathbb{I})(X \otimes \mathbb{I} \otimes \mathbb{I}) & = -(X \otimes \mathbb{I} \otimes \mathbb{I})(Z \otimes Z \otimes \mathbb{I})\\[1mm] (\mathbb{I} \otimes Z \otimes Z)(X \otimes \mathbb{I} \otimes \mathbb{I}) & = (X \otimes \mathbb{I} \otimes \mathbb{I})(\mathbb{I} \otimes Z \otimes Z) \end{aligned}

以下の表は、各スタビライザー生成元を行、各エラーを列として示しています。 表の各エントリは、エラーとスタビライザー生成元が交換するか反交換するかに応じて +1+1 または −1-1 となります。 表には、1ビットフリップに対応するエラーの列と、エラーなし(恒等演算を3回テンソル積したもの)の列のみが含まれています。 他のエラーの列を追加することもできますが、今はこれらのエラーのみに注目します。

I⊗I⊗IX⊗I⊗II⊗X⊗II⊗I⊗XZ⊗Z⊗I+1−1−1+1I⊗Z⊗Z+1+1−1−1\begin{array}{c|cccc} & \mathbb{I}\otimes\mathbb{I} \otimes\mathbb{I} & X \otimes \mathbb{I} \otimes \mathbb{I} & \mathbb{I}\otimes X\otimes\mathbb{I} & \mathbb{I} \otimes\mathbb{I} \otimes X \\ \hline Z\otimes Z\otimes\mathbb{I} & +1 & -1 & -1 & +1 \\ \mathbb{I}\otimes Z\otimes Z & +1 & +1 & -1 & -1 \end{array}

表の各エラーについて、対応する列は、そのエラーが与えられた符号化を各スタビライザー生成元の+1+1または−1-1固有ベクトルにどのように変換するかを示しています。 同様に、これらの列は、スタビライザー生成元をオブザーバブルとして非破壊測定することと等価なパリティチェックから得られるシンドロームを表しています。 もちろん、表には00と11のエントリではなく+1+1と−1-1のエントリがあります——そして、シンドロームは+1+1と−1-1のエントリの列というよりも二進文字列として考えるのが一般的です——しかし、これらの+1+1と−1-1のエントリを持つベクトルを、スタビライザー生成元の固有値と直接結びつけるシンドロームとして考えることも同様に可能です。 一般に、シンドロームはどのようなエラーが発生したかについての情報を与えてくれます。表に挙げられた4つの可能なエラーのうちの1つが発生したことがわかっていれば、シンドロームはそれがどれであったかを示します。

シンドローム​

3ビット反復符号の符号化は3量子ビット状態であるため、8次元複素ベクトル空間の単位ベクトルです。 4通りのシンドロームは、実質的にこの8次元空間を4つの2次元部分空間に分割し、各部分空間内の量子状態ベクトルは常に同じシンドロームをもたらします。 以下の図は、2つのスタビライザー生成元によって8次元空間がどのように分割されるかを具体的に示しています。

3ビット反復符号の部分空間分割

各スタビライザー生成元は空間を等しい次元の2つの部分空間、すなわちそのオブザーバブルの +1+1 固有ベクトル空間と −1-1 固有ベクトル空間に分割します。 例えば、Z⊗Z⊗IZ\otimes Z\otimes\mathbb{I} の +1+1 固有ベクトルは左端の2ビットが偶数パリティを持つ標準基底状態の線形結合であり、−1-1 固有ベクトルは左端の2ビットが奇数パリティを持つ標準基底状態の線形結合です。 もう一方のスタビライザー生成元についても状況は同様ですが、こちらは左端の2ビットではなく右端の2ビットです。

4つの可能なシンドロームに対応する4つの2次元部分空間は、この場合、非常に単純な符号であることから容易に説明できます。 特に、シンドローム (+1,+1)(+1,+1) に対応する部分空間は ∣000⟩\vert 000\rangle と ∣111⟩\vert 111\rangle によって張られる空間であり、これは有効な符号化の空間(符号空間とも呼ばれます)です。一般に、各空間は対応する正方形に示された標準基底によって張られます。

シンドロームはまた、3量子ビットのパウリ演算すべてを、その演算がエラーとして引き起こすシンドロームに応じて、同じ大きさの4つの集合に分割します。 例えば、両方のスタビライザー生成元と交換する任意のパウリ演算はシンドローム (+1,+1)(+1,+1) をもたらし、64の可能な3量子ビットパウリ演算の中で、このカテゴリに属するものはちょうど16個あります(例えば I⊗I⊗Z\mathbb{I}\otimes \mathbb{I}\otimes Z、Z⊗Z⊗ZZ\otimes Z\otimes Z、X⊗X⊗XX\otimes X\otimes X などを含む)。他の3つのシンドロームについても同様です。

これらの2つの性質、すなわちシンドロームが符号化の存在する状態空間と、その空間上のすべてのパウリ演算の両方を等サイズのコレクションに分割するという性質は、スタビライザー符号一般に当てはまります。スタビライザー符号については次のセクションで正確に定義します。

この時点では主に余談になりますが、言及する価値があります。両方のスタビライザー生成元と交換する、すなわちシンドローム (+1,+1)(+1,+1) をもたらすパウリ演算のうち、それ自体がスタビライザーの要素に比例しないものは、この符号において符号化された量子ビット(つまり論理量子ビット)に対する1量子ビットパウリ演算と同様に振る舞います。 例えば、X⊗X⊗XX\otimes X \otimes X は両方のスタビライザー生成元と交換しますが、それ自体はスタビライザーのどの要素にも比例しておらず、この演算が符号化に与える効果は、符号化されている論理量子ビットへの XX ゲートの適用と等価です。

(X⊗X⊗X)(α∣000⟩+β∣111⟩)=α∣111⟩+β∣000⟩(X\otimes X \otimes X)(\alpha \vert 000\rangle + \beta \vert 111\rangle) = \alpha \vert 111\rangle + \beta \vert 000\rangle

繰り返しになりますが、これはすべてのスタビライザー符号に一般化される現象です。