メインコンテンツへスキップ

トーリック符号

次に、Alexei Kitaevが1997年に発見した、トーリック符号として知られる特定のCSS符号について説明します。 実際、トーリック符号は単一の符号ではなく、2以上の各正整数に対して一つずつ存在する符号族です。 これらの符号はいくつかの重要な特性を持っています。

  • 安定化生成元は低重みであり、特にすべての重みが4です。符号理論の用語では、トーリック符号は量子低密度パリティ検査符号、すなわち量子LDPC符号の一例です(ここでのは4を意味します)。各安定化生成元の測定に関与する量子ビット数が少なくて済むため、これは望ましい特性です。

  • トーリック符号は幾何学的局所性を持ちます。これは、安定化生成元が低重みであるだけでなく、各安定化生成元の測定が近接した量子ビットのみを含むように、量子ビットを空間的に配置できることを意味します。原理的に、これは空間的に離れた量子ビットを含む場合と比べて、測定の実装を容易にします。

  • トーリック符号族のメンバーは、より大きな距離を持ち、比較的高いエラー率に耐えることができます。

トーリック符号の説明

L2L\geq 2 を正整数とし、いわゆる周期的境界を持つ L×LL\times L 格子を考えます。 たとえば、次の図は L=9L=9 の場合の L×LL\times L 格子を示しています。

周期的境界を持つ9×9格子

右側と下側の線が点線であることに注目してください。 これは、右側の点線が左端の線と同一の線であること、同様に下側の点線が最上部の線と同一の線であることを示しています。

このような配置を物理的に実現するには3次元が必要です。 具体的には、まず左右の辺を合わせて格子を円柱状に丸め、次に円柱の両端(元々は格子の上辺と下辺だった円)が接するように円柱を曲げることで実現できます。 または、先に上下を合わせてから左右を合わせることもできます。どちらの順番でも同じ結果が得られ、この説明では順番は重要ではありません。

こうして得られるのがトーラスです。言い換えれば、ドーナツのような形状です(ただし、これは中身のある物体ではなく格子がトーラスの表面になったものなので、タイヤのチューブをイメージするほうがより適切かもしれません)。「トーリック符号」という名前はここから来ています。

9×9格子をトーラスに巻き付けた図

このようなトーラス上での移動方法、すなわち格子上の隣接する点間の移動は、昔ながらのビデオゲームに親しんだ方には馴染み深いでしょう。画面の上端から外に出ると下端から現れ、左右の端についても同様です。 3次元空間のトーラスについて具体的に述べるのではなく、周期的境界を持つ格子として見ていきます。

次に、量子ビットをこの格子のに配置します。次の図のように、量子ビットは青の塗りつぶし円で示されています。

9×9周期格子の辺上の量子ビット

点線上に置かれた量子ビットが塗りつぶされていないのは、それらが格子の最上部と最左部の線上ですでに表現されているためです。 全体で 2L22L^2 個の量子ビットがあります。水平線上に L2L^2 個、垂直線上に L2L^2 個です。

トーリック符号自体を説明するために、安定化生成元を記述します。

  • 格子の線が作る各タイルに対して、ZZ 安定化生成元が一つあります。これは、そのタイルに接する4つの量子ビット上に ZZ 行列をテンソル積し、他のすべての量子ビット上に恒等行列をテンソル積したものです。

  • 格子の線が作る各頂点に対して、XX 安定化生成元が一つあります。これは、その頂点に隣接する4つの量子ビット上に XX 行列をテンソル積し、他のすべての量子ビット上に恒等行列をテンソル積したものです。

いずれの場合も、重み4のパウリ演算が得られます。個々の安定化生成元は次のように図示できます。

トーリック符号の安定化生成元の種類

次の図は、格子の文脈で安定化生成元の例をいくつか示しています。 周期的境界をまたぐ安定化生成元も含まれていることに注目してください。 周期的境界をまたぐ生成元は、特別なものでも、またがない生成元と区別されるものでもありません。

格子上の安定化生成元の例

これが有効な安定化符号であるためには、安定化生成元が互いに可換でなければなりません。 通常通り、ZZ 安定化生成元はすべて互いに可換です。ZZ は自身と可換であり、恒等行列はすべてのものと可換です。XX 安定化生成元についても同様です。 ZZXX の安定化生成元は、非自明に作用する量子ビットの集合が互いに素である場合、すなわち前の図に示した例のような場合には明らかに可換です。 残る可能性は、ZZ 安定化生成元と XX 安定化生成元が非自明に作用する量子ビット上で重なる場合ですが、これが起きるときは常に次の図のように2つの量子ビット上で重なります。

トーリック符号の重なり合う安定化生成元

したがって、このような2つの安定化生成元は可換です。ZZZ\otimes ZXXX\otimes X が可換であるのと同様です。 以上より、すべての安定化生成元は互いに可換です。

安定化符号の安定化生成元に要求される2番目の条件は、それらが最小生成系を構成することです。 この条件は、実はこの集合では満たされていません。すべての ZZ 安定化生成元の積は恒等演算になり、XX 安定化生成元についても同様です。 したがって、任意の ZZ 安定化生成元は残りのすべての積として表すことができ、同様に任意の XX 安定化生成元も残りの XX 安定化生成元の積として表すことができます。 しかし、ZZ 安定化生成元のうちの一つと XX 安定化生成元のうちの一つをそれぞれ除外すれば、最小生成系が得られます。

念のため確認しておくと、実際にはすべての安定化生成元を等しく重視しており、厳密な運用上の意味では一方の型の生成元を除外する必要はありません。 しかし、符号を解析する目的、特に生成元の数を数える目的では、各型から一つの安定化生成元が除外されたと想定して最小生成系を得ることができます。除外された生成元(観測量として捉えると)の測定結果は、同じ型の他のすべての安定化生成元の観測量の結果から常に推論できることを念頭に置いておけばよいのです。

これにより、各型について L21L^2 - 1 個の安定化生成元、すなわち合計 2L222L^2 - 2 個が(仮想的な)最小生成系に残ります。 全体で 2L22L^2 個の量子ビットがあるため、トーリック符号が符号化する量子ビットの数は 2L22(L21)=22L^2 - 2(L^2 - 1) = 2 個です。

安定化生成元に要求される最後の条件は、少なくとも一つの量子状態ベクトルがすべての安定化生成元によって固定されることです。 符号の解析を進める中でこれが成り立つことを確認しますが、安定化生成元から 2L22L^2 個すべての量子ビット上の恒等演算の 1-1 倍を生成することはできないと推論することも可能です。

エラーの検出

トーリック符号はシンプルでエレガントな記述を持ちますが、その量子誤り訂正特性は一見しただけでは明確ではないかもしれません。 実は、これは素晴らしい符号です! なぜ、どのように機能するかを理解するために、まずさまざまなエラーとそれらが生成するシンドロームについて考えてみましょう。

トーリック符号はCSS符号です。すべての安定化生成元が ZZ または XX のいずれかの安定化生成元であるためです。 つまり、XX エラーと ZZ エラーは独立して検出(および訂正)できます。 実際、ZZXX の安定化生成元の間には単純な対称性があり、XX エラーと ZZ エラーを本質的に同じ方法で解析できます。 そこで、ZZ 安定化生成元によって検出される XX エラーに注目します。ただし、以下の議論全体は、XX エラーから ZZ エラーへ(そして ZZ エラーを検出する XX 安定化生成元へ)対称的に翻訳できます。

次の図は、単一の量子ビットに対する XX エラーの効果を示しています。 ここでは、2L22L^2 個の量子ビットがトーリック符号の符号空間に含まれる状態にあり、すべての安定化生成元の測定が +1+1 を出力すると仮定します。 ZZ 安定化生成元は XX エラーを検出し、各タイルに対応する安定化生成元が一つあるため、対応するタイルの色でその安定化生成元の測定結果を示すことができます。 +1+1 の結果は白いタイルで、1-1 の結果はグレーのタイルで示されます。 あるビット反転エラーが一つの量子ビットに発生すると、その影響を受けた量子ビットに接する2つのタイルに対応する安定化生成元の測定が 1-1 を出力するようになります。

トーリック符号における単一ビット反転エラーの効果

これは、ZZ 安定化生成元の動作を考えれば直感的に理解できます。 本質的に、各 ZZ 安定化生成元は対応するタイルに接する4つの量子ビットの(標準基底に関する)パリティを測定します。 したがって、+1+1 の結果はこれら4つの量子ビット上で XX エラーが発生していないことを示すのではなく、偶数個の XX エラーが発生したことを示します。一方、1-1 の結果は奇数個の XX エラーが発生したことを示します。 単一の XX エラーは接する2つのタイルの4ビットのパリティを反転させ、その安定化生成元の測定が 1-1 を出力するようになります。

次に、複数の XX エラーを導入してどうなるかを見てみましょう。 特に、隣接する XX エラーの連鎖を考えます。ここで2つの XX エラーが隣接するとは、同じタイルに接する量子ビットに影響を与えることを意味します。

トーリック符号におけるビット反転エラーの連鎖の効果

この場合、連鎖の両端の2つの ZZ 安定化生成元はいずれも 1-1 の結果を与えます。それぞれのタイルに接する量子ビット上で奇数個の XX エラーが発生しているためです。 一方、連鎖に接しているが端点でない生成元を含む他のすべての ZZ 安定化生成元は +1+1 の結果を与えます。対応するタイルに接する量子ビット上で偶数個の XX エラーが発生しているためです。

したがって、端点を持つ XX エラーの連鎖がある限り、トーリック符号はエラーの発生を検出します。連鎖の端点に対応する ZZ 安定化生成元が 1-1 の測定結果を示します。 実際の連鎖は明らかにならず、端点のみが判明することに注意してください! これで問題ありません。次のサブセクションで、XX エラーを訂正するためにどの量子ビットが影響を受けたかを正確に知る必要はないことを説明します。 (トーリック符号は高度に縮退した符号の例であり、一般的に訂正するエラーを一意には特定しません。)

ただし、隣接する XX エラーの連鎖が端点を持たないことも可能で、エラーの連鎖が次の図のように閉ループを形成する場合があります。

トーリック符号におけるビット反転エラーの閉ループ

このような場合、すべてのタイルで偶数個の XX エラーが発生するため、すべての安定化生成元の測定結果が +1+1 になります。 したがって、隣接する XX エラーの閉ループは符号によって検出されません。

これは失望させるように見えるかもしれません。閉ループを形成するのに必要な XX エラーは4つだけであり(距離4の符号よりはるかに優れたものを期待しているため)。 しかし、前の図のような形の XX エラーの閉ループは実際にはエラーではありません。なぜなら、それは安定化子の中にあるからです! ZZ 安定化生成元に加えて、格子の各頂点に対する XX 安定化生成元もあることを思い出してください。 そして、隣接する XX 安定化生成元を掛け合わせると、XX 演算の閉ループが得られます。 たとえば、前の図の閉ループは次の図に示す XX 安定化生成元を掛け合わせることで得られます。

X安定化生成元から生成されるビット反転エラーの閉ループ

しかし、これは XX エラーの閉ループの唯一の種類ではありません。すべての XX エラーの閉ループが安定化子に含まれるわけではありません。 特に、ループの種類は次のように分類できます。

  1. すべての水平量子ビット列とすべての垂直量子ビット列上に偶数個XX エラーを持つ閉ループ。(上記の例はこのカテゴリに属します。)この形のループは常に安定化子に含まれており、XX 安定化生成元を掛けることで実質的に縮小させることができます。

  2. 少なくとも一つの水平量子ビット列または少なくとも一つの垂直量子ビット列上に奇数個XX エラーを持つ閉ループ。この形のループは安定化子に含まれることはなく、符号が検出しない非自明なエラーを表します。

第2のカテゴリの XX エラーの閉ループの例を次の図に示します。

安定化子に含まれないビット反転エラーの閉ループ

このエラーの連鎖は、すべての XX 安定化生成元がすべての水平量子ビット列とすべての垂直量子ビット列上に偶数個の XX 演算を配置するため、安定化子に含まれません。 したがって、これは符号が検出できない非自明なエラーの実際の例です。

重要なのは、第2の種類のループを形成する唯一の方法は、トーラスの周囲をまわること、つまりトーラスの穴の周り、穴を通り抜ける方向、またはその両方にまたがることだという点です。 直感的に言えば、このような XX エラーの連鎖は XX 安定化生成元を掛けることで縮小することができません。トーラスのトポロジーがそれを妨げるためです。 このことから、トーリック符号はトポロジカル量子誤り訂正符号として分類されることがあります。 このようなループの最短長は LL であり、これがトーリック符号の距離です。長さが LL より短い XX エラーの閉ループは必ず第1のカテゴリに属し、安定化子に含まれます。また、端点を持つ XX エラーの連鎖は符号によって検出されます。

トーリック符号が 2L22L^2 個の量子ビットを使って2量子ビットを符号化し、距離 LL を持つことから、[[2L2,2,L]][[2L^2,2,L]] 安定化符号であることがわかります。

エラーの訂正

トーリック符号のエラー検出について説明しましたが、次にエラーの訂正について簡単に説明します。 トーリック符号はCSS符号であるため、XX エラーと ZZ エラーは独立して検出・訂正できます。 XX エラーを検出する ZZ 安定化生成元に引き続き注目し、XX エラーの連鎖がどのように訂正できるかを考えます。 (ZZ エラーは対称的な方法で訂正されます。)

ZZ 安定化生成元を測定したときに (+1,,+1)(+1,\ldots,+1) 以外のシンドロームが現れた場合、1-1 の結果が一つ以上の XX エラーの連鎖の端点を示します。 1-1 の結果をペアにして、その間に XX 訂正の連鎖を形成することでエラーを訂正しようとすることができます。 この際、訂正を行う最短経路を選択することが合理的です。

たとえば、次の図はマゼンタの線と円で示された XX エラーの連鎖によって引き起こされた2つの 1-1 結果(グレーのタイルで示す)を持つシンドロームを示しています。 すでに述べたように、連鎖自体はシンドロームによって明らかにはされません。端点のみが見えます。

最短経路によるXエラーの訂正

この連鎖のエラーを訂正するため、1-1 の測定結果の間の最短経路を選択し、その経路に沿った量子ビットに訂正として XX ゲートを適用します(図では黄色で示す)。 訂正が実際のエラーの連鎖と一致しない場合でも、エラーと訂正を合わせると、符号の安定化子に含まれる XX 演算の閉ループが形成されます。 したがって、この場合は訂正が成功します。エラーと訂正の合成効果は符号化された状態に何もしないことになります。

この戦略が常に成功するわけではありません。 たとえば、前の図と同じシンドロームに対する別の説明が次の図に示されています。

訂正によって論理エラーを完成させる場合

今度は、前回と同じ訂正の連鎖がこのエラーの連鎖を訂正できません。エラーと訂正の合成効果として、トーラスの周囲をまわる XX 演算の閉ループが得られ、符号空間に対して非自明な効果をもたらすためです。 したがって、2つの 1-1 シンドローム測定結果の間の最短の XX 訂正経路を選択するという先述の戦略が、このシンドロームを引き起こしたエラーを正しく訂正するという保証はありません。

ノイズモデルによっては、次の図が示すように、2つ以上の 1-1 エントリを持つシンドロームが測定される可能性が高いかもしれません。

複数の訂正連鎖

このような場合、いくつかの異なる訂正戦略が知られています。 一つの自然な戦略は、1-1 の測定結果をペアにし、図で黄色に示すように、ペアを結ぶ最短経路に沿って訂正を行うことです。 特に、1-1 の測定結果間の最小重み完全マッチングを計算し、最短の XX 訂正の経路でペアを結ぶことができます。 最小重み完全マッチングの計算は、1960年代にEdmondsが発見したブロッサムアルゴリズムとして知られる古典的なアルゴリズムで効率的に行えます。

このアプローチは最もよく研究されているノイズモデルに対して一般的に最適ではありませんが、数値シミュレーションに基づくと、X,X, Y,Y, ZZ が等確率で発生する独立なパウリエラーを仮定した場合、ノイズ率が約10%以下であれば実際には非常にうまく機能します。 LL を大きくしても符号が効果を発揮し始める損益分岐点にはほとんど影響しませんが、エラー率が損益分岐点を下回るにつれて論理エラーの確率がより急速に低下します。