IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ マイクロソフト テクノロジー ライセンシング,エルエルシーの特許一覧

特表2022-543384量子レジスタに復号器を結合するためのシステム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-10-12
(54)【発明の名称】量子レジスタに復号器を結合するためのシステム
(51)【国際特許分類】
   G06N 10/20 20220101AFI20221004BHJP
【FI】
G06N10/20
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022506581
(86)(22)【出願日】2020-06-09
(85)【翻訳文提出日】2022-02-01
(86)【国際出願番号】 US2020036844
(87)【国際公開番号】W WO2021025763
(87)【国際公開日】2021-02-11
(31)【優先権主張番号】62/883,514
(32)【優先日】2019-08-06
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/687,469
(32)【優先日】2019-11-18
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Blu-ray
2.HDMI
(71)【出願人】
【識別番号】314015767
【氏名又は名称】マイクロソフト テクノロジー ライセンシング,エルエルシー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ダス,ポウラミ
(72)【発明者】
【氏名】デルフォッセ,ニコラス,ギヨーム
(72)【発明者】
【氏名】パティソン,クリストファー,アナンド
(72)【発明者】
【氏名】マンネ,スリラサ
(72)【発明者】
【氏名】カルミアン,ダグラス
(72)【発明者】
【氏名】スヴォア,クリスタ,マリー
(72)【発明者】
【氏名】カッツグラバー,ヘルムート,ゴットフリード
(57)【要約】
量子計算装置が、l個の論理キュービットを含む少なくとも1つの量子レジスタを有する。lは正の整数である。量子計算装置は、前記少なくとも1つの量子レジスタに結合されたd個の復号器ブロックの集合を含む。d<2*lである。このようにして、復号器ブロックは、論理キュービットによって生成される復号要求を共有しうる。
【特許請求の範囲】
【請求項1】
量子計算装置であって:
l個の論理キュービットを含む少なくとも1つの量子レジスタであって、lは正の整数である、量子レジスタと;
前記少なくとも1つの量子レジスタに結合されたd個の復号器ブロックの集合であって、d<2*lである、復号器ブロックの集合とを有する、
量子計算装置。
【請求項2】
各復号器ブロックは、n個の論理キュービットの集合から復号要求を受領するように構成され、n>1である、請求項1に記載の量子計算装置。
【請求項3】
各復号器ブロックは、g個のグラフ生成器(Gr-Gen)モジュールを有し、0<g≦lである、請求項1に記載の量子計算装置。
【請求項4】
各復号器ブロックは、α*l個の深さ優先探索(DFS)エンジンを有し、0<α<1である、請求項3に記載の量子計算装置。
【請求項5】
2つ以上のGr-Genモジュールが、各DFSエンジンに、第1の集合のマルチプレクサのうちの1つを介して結合される、請求項4に記載の量子計算装置。
【請求項6】
各復号器ブロックは、β*l個の訂正(Corr)エンジンをさらに有し、0<β<1である、請求項5に記載の量子計算装置。
【請求項7】
2つ以上のDFSエンジンが、各Corrエンジンに、第2の集合のマルチプレクサのうちの1つを介して結合される、請求項6に記載の量子計算装置。
【請求項8】
各Corrエンジンによって生成されたメモリ要求は、一つまたは複数のデマルチプレクサを介してメモリ位置にルーティングされる、請求項6に記載の量子計算装置。
【請求項9】
戻り信号は、ラウンドロビン調停に基づいて、前記第1および第2の集合のマルチプレクサの各マルチプレクサを通じてルーティングされる、請求項6に記載の量子計算装置。
【請求項10】
量子計算装置のための方法であって:
l個の論理キュービットを含む少なくとも1つの量子レジスタからシンドロームを生成する段階であって、lは正の整数である、段階と;
生成されたシンドロームを、前記少なくとも1つの量子レジスタに結合されたd復号器ブロックの集合にルーティングする段階であって、d<2*lである、段階とを含む、
方法。
【請求項11】
各復号器ブロックは、n個の論理キュービットの集合から復号要求を受領するように構成され、n>1である、請求項10に記載の方法。
【請求項12】
各復号器ブロックは、g個のグラフ生成器(Gr-Gen)モジュールを有し、0<g≦lであり、各Gr-Genモジュールは、受領されたシンドロームに基づいてスパニング木メモリ(STM)データを生成するように構成される、請求項10に記載の方法。
【請求項13】
各復号器ブロックは、α*l個の深さ優先探索(DFS)エンジンをさらに有し、0<α<1である、請求項12に記載の方法。
【請求項14】
各DFSエンジンにおいて、2つ以上のGr-Genモジュールによって生成されたSTMデータに第1の集合のマルチプレクサのうちの1つを介してアクセスする段階と;
前記STMデータに基づいてエッジ・スタックを生成する段階とをさらに含む、
請求項12に記載の方法。
【請求項15】
各復号器ブロックは、β*l個の訂正(Corr)エンジンをさらに有し、0<β<1である、請求項14に記載の方法。

【発明の詳細な説明】
【背景技術】
【0001】
量子誤り訂正のための復号器のスケーラビリティは、実用的な量子計算装置を生成することにおける課題であり続けている。誤り復号器に対する現在の研究の大半は、復号アルゴリズムの時間的複雑さおよび誤り訂正能力に焦点を当てている。実際上、量子コンピュータの各論理キュービットについて一つまたは複数の専用の復号器を設けることは、そのような装置のサイズおよびスケールを有意に制限する。
【発明の概要】
【課題を解決するための手段】
【0002】
この要約は、以下の詳細な説明でさらに記述される概念のセレクションを簡略化された形で導入するために提供される。この要約は、特許請求される主題事項の主要な特徴または本質的な特徴を特定することを意図したものではなく、また、特許請求される主題事項の範囲を限定するために使用されることを意図したものでもない。さらに、特許請求される主題事項は、本開示のいずれかの部分に記載されたいずれかのまたはすべての欠点を解決する実装に限定されない。
【0003】
量子計算装置は、l個の論理キュービットを含む少なくとも1つの量子レジスタを有する。ここで、lは正の整数である。量子計算装置はさらに、前記少なくとも1つの量子レジスタに結合されたd個の復号器ブロックの集合を含む。ここで、d<2*lである。このようにして、前記復号器ブロックは、前記論理キュービットによって生成される復号要求を共有しうる。
【図面の簡単な説明】
【0004】
図1】例示的な量子計算組織を概略的に示す。
【0005】
図2】例示的な量子コンピュータの諸側面を概略的に示す。
【0006】
図3】量子コンピュータの1キュービットの量子状態を図的に表すブロッホ球を示す。
【0007】
図4】交互のデータおよびパリティ・キュービットを有する、格子における論理キュービットを概略的に示す。
【0008】
図5】シンドローム測定の2つの連続するラウンドを概略的に示す。
【0009】
図6】さまざまな条件下でシンドローム測定データを記憶するために必要とされるメモリ容量を示すプロットである。
【0010】
図7】例示的な圧縮方式を概略的に示す。
【0011】
図8】幾何ベースの圧縮のための表面符号格子上の複数の領域を概略的に示す。
【0012】
図9】量子計算装置内のシンドローム・データを圧縮するための例示的な方法を示す。
【0013】
図10】幾何ベースの圧縮器を用いて量子計算装置内のシンドローム・データを圧縮するための例示的な方法を示す。
【0014】
図11】例示的な復号器設計を概略的に示す。
【0015】
図12】例示的なユニオン・ファインド復号器を概略的に示す。
【0016】
図13】例示的なグラフ生成器モジュールを概略的に示す。
【0017】
図14】グラフ生成中のグラフ生成器モジュールにおける主要な構成要素の状態を概略的に示す。
【0018】
図15】例示的なクラスターおよびルート・テーブル・エントリーを概略的に示す。
【0019】
図16】深さ優先の探索エンジンと、誤り訂正のための例示的なグラフとを概略的に示す。
【0020】
図17】訂正エンジンにおいて実行される、例示的な誤りグラフについての剥離の例を示す。
【0021】
図18】ハードウェア・ユニオン・ファインド復号器のパイプライン式バージョンを実装するための例示的な方法を示す。
【0022】
図19】L個の論理キュービットについてのベースライン組織を概略的に示す。
【0023】
図20】復号器・ブロックのための例示的な設計を示す。
【0024】
図21】スケーラブルなフォールトトレラント量子コンピュータの例示的なマイクロアーキテクチャーを概略的に示す。
【0025】
図22】量子計算装置内のシンドローム・データをルーティングするための例示的な方法を示す。
【0026】
図23】モンテカルロ・シミュレータ・フレームワークを概略的に示す。
【0027】
図24】符号距離にわたる異なる誤り率についての平均圧縮比を示すプロットである。
【0028】
図25】異なる誤り率および論理キュービットについての符号距離について平均クラスター直径を示すプロットである。
【0029】
図26】スパニング木メモリを実装するために必要とされる総メモリ容量を示すプロットである。
【0030】
図27】固定された符号距離および物理的誤り率についてクラスター内のエッジ数の分布を示すプロットである。
【0031】
図28】異なる符号距離および誤り率についてクラスター内のエッジの平均数を示すプロットである。
【0032】
図29】グラフ生成器モジュールと深さ優先探索エンジンにおける実行時間の間の相関を示すプロットである。
【0033】
図30】3Dグラフを復号するための実行時間の分布を示すプロットである。
【0034】
図31】例示的な古典的計算装置の概略図を示す。
【発明を実施するための形態】
【0035】
量子コンピュータにおける情報の基本単位であるキュービットは、誤り率が高い傾向がある。フォールトトレラント量子計算を可能にするために、これらのキュービットに能動誤り訂正が適用されてもよい。量子誤り訂正符号(Quantum Error Correction Codes、QECC)は冗長なデータとパリティ・キュービットとを用いて論理キュービットをエンコードする。誤り訂正は、誤り復号と呼ばれるプロセスを通じてパリティ・キュービットの測定を解析することによって、データ・キュービットの誤りを診断する。現在、ほとんどの復号手法は、アルゴリズム・レベルでキュービット誤りをターゲットとしており、それらを設計するために使用されるであろう基礎になる装置技術を考慮していない。
【0036】
本稿では、これらの復号器の設計に伴うアーキテクチャー上の課題をターゲットとし、ユニオン・ファインド復号器のハードウェア実装のための3段のパイプライン式マイクロアーキテクチャーが記載される。誤り訂正アルゴリズムは、ハードウェア実装に適合するように設計される。異なるノイズ領域のためのデータ圧縮の実現可能性が、実装のために必要とされる記憶量と帯域幅に関して評価される。提案される復号器設計を多数の論理キュービットのためにスケーリングし、実用的なフォールトトレラント量子計算を可能にするアーキテクチャーが開示される。そのような設計は、復号器の正確さおよび誤り閾値に影響を与えることなく、複数の論理キュービットにわたる資源共有を通じて、3つのパイプライン・ステージのそれぞれの総コストをそれぞれ2倍、4倍、および4倍だけ削減することができる。一例として、符号距離が11で、物理的誤り率が10-3のオーダーである場合、論理的誤り率は10-8である。
【0037】
量子計算は、量子力学的特性を使用して、通常の(すなわち、非量子式の)最先端のコンピュータ上では合理的な時間内に実行することが現実的でないであろう特定の用途のための計算を可能にする。例示的な用途は、素因数分解、データベース検索、物理、化学シミュレーションを含む。量子コンピュータにおける計算の基本的な単位は、キュービットである。キュービットは必然的に環境と相互作用し、その量子状態を失う。不完全な量子ゲート演算は、この問題を悪化させる。なぜなら、量子ゲートは、可能な値の連続体から選択されるユニタリー変換であり、よって、完全な精度で実装することはできないからである。量子状態をノイズから保護するために、QECCが開発された。どんなQECCにおいても、フォールトトレラント量子計算を可能にするために、論理キュービットは、いくつかの物理キュービットを用いて符号化される。フォールトトレランスは、資源オーバーヘッド(典型的には、論理キュービット当たり20倍~100倍)を生じ、現在利用可能な小型のプロトタイプマシンでは実際上は実現不可能である。しかしながら、量子誤り訂正は、完全に必要ではないにしても、フォールトトレラント量子コンピュータ上で有用なアプリケーションを実行するために非常に価値があると考えられている。
【0038】
QECCは、三重モジュール冗長性(Triple Modular Redundancy、TMR)または単一誤り訂正二重誤り検出(Single Error Correction Double Error Detection、SECDED)のような古典的な誤り訂正技法とは異なる。違いは、キュービットの基本特性と高い誤り率(典型的には10-2程度)から生じる。たとえば、キュービットはコピーできず(複製不能定理)、測定されるとその量子状態を失う。QECCは、データ・キュービットと相互作用する補助キュービット(ancilla qubit)を使用して符号空間を作成するために冗長キュービットを使用する。補助キュービットを測定することにより、復号器を用いてデータ・キュービットの誤りを検出し、訂正することが可能である。
【0039】
誤り復号アルゴリズムは、データ・キュービットの符号化ブロックにおける誤りを検出するためにシンドローム(補助測定(ancilla measurement)の結果)がどのように処理されるかを指定する。復号器の設計および性能は、復号アルゴリズム、QECC、物理的誤り率、ノイズ・モデル、および実装技術に依存する。実際的な目的のためには、復号器は誤りが発生するレートよりも速くシンドローム測定を処理しなければならない。復号器はまた、極低温環境内での動作のための技術固有の制約条件を考慮し、多数のキュービットにスケールする必要もある。
【0040】
完全な誤り復号は、指数関数的時間複雑性がありNP困難(non-deterministic polynomial-time[非決定論的多項式時間])である。よって、最適な復号アルゴリズムは、時間複雑性を低減するために、誤り訂正能力をトレードオフする。ほとんどの復号技法はアルゴリズム・レベルでのみ研究されており、たとえ復号器がフォールトトレラント量子計算の萌芽であっても、基礎となる実装技術を考慮しない。ルックアップテーブル・ベースまたはディープニューラル復号器のような他のアプローチは、多数のキュービットにスケーラブルではない。ユニオン・ファインド(Union-Find)復号器アルゴリズムは単純で、ほぼ線形の時間複雑性を有し、スケーラブルでフォールトトレラントな量子計算のための好適な候補となる。ここでは、ユニオン・ファインド復号器のハードウェア実装のためのマイクロアーキテクチャーが開示される。ここで、アルゴリズムは、ハードウェアの複雑さを低減し、多数の論理キュービットへのスケーリングを可能にするように再設計される。
【0041】
より高速な処理を可能にし、転送待ち時間を短縮するために、復号器は、室温(300K)ではなく、物理キュービットに非常に近いところ(77Kまたは4K)で動作するように設計される。温度勾配105を示す例示的な量子計算システム100が図1に示されている。量子計算システム100は、20mKで動作する一つまたは複数のキュービット・レジスタ110と、典型的には4Kまたは77Kで動作する復号器115およびコントローラ120と、300K(室温)で動作するホスト計算装置125およびエンド・ユーザー計算装置130とを含む。復号器115が77Kで動作するか4Kで動作するかに依存して、基礎となる実装技術および設計制約条件は、異なるトレードオフを提供する。4Kでの超伝導論理設計は、物理キュービットに非常に近く、かなりのエネルギー効率を提供するが、装置密度およびメモリ容量によって制限される。通常のCMOSを77Kで動作させることにより、より大きなメモリ・フットプリントを有するアプリケーションのための複雑な設計を容易にすることができるが、それは超伝導論理よりもエネルギー効率が低く、15~20mKで存在する物理キュービットからデータを行ったり来たり移動させることにおいてデータ伝送オーバーヘッドを被る。
【0042】
本稿では、ユニオン・ファインド復号器のハードウェア実装のためのマイクロアーキテクチャーが開示される。極低温環境での動作のためのメモリ容量および帯域幅に関連する実装課題が論じられる。他の実装が考慮されたが、基礎となるQECCおよびさまざまなノイズ・モデルのための例として表面符号〔サーフェス・コード〕(surface code)が使用される。表面符号は、交互のデータ・キュービットおよび補助キュービットをもってキュービットのグループを2次元レイアウトに配置する有望なQECC候補である。データ・キュービットに誤りがあれば、それは隣接する補助キュービットによって検出される可能性があり、それにより、最近接接続性(nearest neighbor connectivity)のみを必要とする。そのような設計の実現可能性とスケーラビリティは、大規模なフォールトトレラント量子コンピュータのために記述される。
【0043】
本稿では、量子計算の分野における多くの問題を解決するシステムおよび方法が開示される。たとえば、QEC復号器設計が、それらの熱領域における配置および設計複雑性をからめて、解析される。77Kで復号器を動作させることがより実用的であることを実証する、ユニオン・ファインド復号器のハードウェア実装のためのマイクロアーキテクチャーが提示される。
【0044】
シンドローム測定を記憶するために必要とされるメモリ容量が計算され、4Kの超伝導メモリに記憶することが現実的でないかもしれないことが示される。しかしながら、データを77Kに転送するには大きな帯域幅が必要である。これらの課題の両方を克服するために、シンドローム測定データを圧縮するために使用できる技法が提示される。動的ゼロ圧縮(dynamic zero compression)およびスパース表現(sparse representation)の実装が記載される。さらに、表面符号格子(lattice)の基礎となる構造を考慮に入れる幾何ベースの圧縮方式が提示される。さらに、圧縮方式とその適用可能性が、異なるノイズ領域について記述される。
【0045】
ユニオン・ファインド復号器アルゴリズムは、ハードウェア・コストを削減するため、および向上されたノイズ・モデルにおける改善された実装のために洗練される。もとのユニオン・ファインド復号アルゴリズムは、空間において対になるデータ・キュービットのゲート誤りを考慮に入れるだけである。本明細書に記載されるハードウェア・マイクロアーキテクチャーは、時間において対になり、数ラウンドのシンドローム測定を用いて復号される測定誤りを考慮に入れる。
【0046】
加えて、これらの復号器を多数の論理キュービットのためにスケーリングするハードウェア・システム・アーキテクチャーが記述される。そのような実装は、個々の復号ユニットにおけるパイプライン・ステージの利用の違いを考慮に入れることができ、複数の論理キュービットにわたる資源の最適な共有を可能にして、ハードウェア・コストを削減する。
【0047】
キュービットは、量子コンピュータ上の情報の基本単位である。量子計算の基本は、重ね合わせともつれ合い〔エンタングルメント〕という2つの量子力学的特性に依拠する。キュービットは、その2つの基底状態の線形結合として表現されうる。基底状態が|0〉および|1〉であれば、キュービット|ψ〉は|ψ〉=α|0〉+β|1〉と表現できる。ここで、α,β∈C〔複素数〕であり、|α|2+|β|2=1である。確率振幅α,βの絶対値または/および位相が変化すると、キュービットの状態が変化する。たとえば、絶対値フリップ(またはビット・フリップ)は、|ψ〉の状態をβ|0〉+α|1〉に変える。あるいはまた、位相フリップはその状態をα|0〉-β|1〉に変える。量子命令は、恒等行列(I)およびパウリ行列を用いて表現される量子ゲート演算を用いて確率振幅を修正する。パウリ行列X、Z、Yは、それぞれビット・フリップ、位相フリップ、またはその両方の効果を表す。
【0048】
いくつかの実施形態では、本明細書に記載される方法およびプロセスは、一つまたは複数の量子計算装置の量子計算システムに結び付けられてもよい。図2は、量子論理演算(後述)を実行するように構成された例示的な量子コンピュータ210の諸側面を示す。従来のコンピュータ・メモリは、デジタル・データをビットのアレイに保持し、ビットごとの論理演算を実施するが、量子コンピュータは、データをキュービットのアレイに保持し、所望の論理を実現するために、該キュービットに対して量子力学的に作用する。よって、図2の量子コンピュータ210は、キュービット214のアレイを有する少なくとも1つのレジスタ212を含む。図示されたレジスタは、長さが8キュービットであるが、より長いキュービット・アレイおよびより短いキュービット・アレイを含むレジスタや、任意の長さの2つ以上のレジスタを有する量子コンピュータも考えられている。
【0049】
レジスタ212のキュービットは、量子コンピュータ210の所望のアーキテクチャーに応じて、さまざまな形をとることができる。各キュービット214は、非限定的な例として、超伝導ジョセフソン接合、トラップされたイオン、高微細キャビティに結合されたトラップされた原子、フラーレン内に閉じ込められた原子または分子、ホスト格子内に閉じ込められたイオンまたは中性ドーパント原子、離散的な空間的またはスピン電子状態を示す量子ドット、静電トラップを介して連行される半導体接合内の電子正孔、結合された量子ワイヤ対、磁気共鳴によってアドレッシング可能な原子核、ヘリウム中の自由電子、分子磁石、または金属様カーボンナノスフェアを含みうる。より一般には、各キュービット214は、実験的に測定および操作されることのできる、2つ以上の離散的な量子状態で存在できる任意の粒子または粒子系を含みうる。たとえば、キュービットは、線形光学素子(たとえば、ミラー、ビームスプリッタ、および移相器)を通る光伝搬の異なるモードに対応する複数の処理状態、ならびにボーズ・アインシュタイン凝縮体内に蓄積された状態においても実現されうる。
【0050】
図3は、ブロッホ球216の図解であり、個々のキュービット214のいくつかの量子力学的側面の図的な記述を提供する。この記述では、ブロッホ球の北極と南極がそれぞれ標準的な基底ベクトル|0〉および|1〉――電子または他のフェルミオンのたとえば上向きおよび下向きスピン状態――に対応する。ブロッホ球の表面上の点の集合は、キュービットのあらゆる可能な純粋状態|ψ〉を含み、内側の点はあらゆる可能な混合状態に対応する。所与のキュービットの混合状態は、外部自由度に対する望ましくない結合のために生じうるデコヒーレンスから帰結しうる。
【0051】
ここで図2に戻ると、量子コンピュータ210はコントローラ218を含む。コントローラは、少なくとも1つのプロセッサ220および付随する記憶機械222を含む、通常の電子コンポーネントを含んでいてもよい。用語「通常」は、本明細書において、どの個々の粒子の量子状態も考慮することなく、粒子のアンサンブルとしてモデル化できる任意のコンポーネントに適用される。通常の電子コンポーネントは、たとえば、集積された、マイクロリソグラフィーで作成されたトランジスタ、抵抗器、およびキャパシタを含む。記憶機械222は、プロセッサ220にここに記載されるいずれかのプロセスを実行させるプログラム命令224を保持するように構成されうる。コントローラ218の追加的な諸側面は、後述される。
【0052】
量子コンピュータ210のコントローラ218は、複数の入力226を受領し、複数の出力228を提供するように構成される。入力および出力は、それぞれ、デジタルおよび/またはアナログ線を含んでいてもよい。入力および出力の少なくとも一部は、それを通じてデータが量子コンピュータに提供され、量子コンピュータから抽出されるデータ線であってもよい。他の入力は、それを介して量子コンピュータの動作が調節されうる、または他の仕方で制御されうる制御線を含んでいてもよい。
【0053】
コントローラ218は、インターフェース230を介してレジスタ212に動作上結合される。インターフェースは、コントローラと双方向的にデータを交換するように構成される。インターフェースは、データに対応する信号を双方向的にレジスタと交換するようにさらに構成される。量子コンピュータ210のアーキテクチャーに依存して、そのような信号は、電気信号、磁気信号、および/または光信号を含んでいてもよい。インターフェースを通じて伝送される信号を介して、コントローラは、キュービット214のアレイの集合的な量子状態によって定義されるところの、レジスタに保持される量子状態に問い合わせ、さもなくば影響することができる。この目的に向け、インターフェースは、少なくとも1つの変調器232および少なくとも1つの復調器234を含み、それぞれレジスタ212の一つまたは複数のキュービットに動作上結合される。各変調器は、コントローラから受領される変調データに基づいて、信号をレジスタに出力するように構成される。各復調器は、レジスタからの信号を感知し、該信号に基づいてコントローラにデータを出力するように構成される。復調器から受領されるデータは、いくつかのシナリオにおいて、レジスタ内に保持される量子状態の測定に対する観測可能量の推定値であってもよい。
【0054】
より具体的には、変調器232からの適切に構成された信号は、レジスタ212の一つまたは複数のキュービット214と物理的に相互作用して、一つまたは複数のキュービットに保持された量子状態の測定をトリガーすることができる。次に、復調器234は、該測定に従って前記一つまたは複数のキュービットによって放出された、結果的に得られる信号を感知してもよく、該結果として得られる信号に対応するデータをコントローラに提供することができる。言い換えると、復調器は、受領された信号に基づいて、レジスタの一つまたは複数のキュービットの量子状態を反映する観測可能量の推定値を明らかにし、該推定値をコントローラ218に提供するように構成されてもよい。ある非限定的な例では、変調器は、コントローラからのデータに基づいて、測定を開始するために、一つまたは複数のキュービットの電極に適切な電圧パルスまたはパルス列を提供してもよい。すぐに、復調器は、前記一つまたは複数のキュービットからの光子放出を感知してもよく、対応するデジタル電圧レベルを、インターフェース線上でコントローラ中にアサートすることができる。一般に、量子力学的状態の任意の測定は、測定されるべき観測可能量に対応する演算子
【数1】
〔^Oとも記す〕によって定義され、測定の結果Rは、^Oの許容される固有値の1つであることが保証される。量子コンピュータ210では、Rは、測定前のレジスタ状態に統計的に関連しているが、レジスタ状態によって一意的に決定されるわけではない。
【0055】
コントローラ218からの適切な入力に従って、インターフェース230は、レジスタ212に保持された量子状態に対して作用する一つまたは複数の量子論理ゲートを実装するようにさらに構成されてもよい。通常のコンピュータ・システムの各タイプの論理ゲートの機能は、対応する真理表に従って記述されるが、各タイプの量子ゲートの機能は、対応する演算子行列によって記述される。演算子行列は、レジスタ状態を表す複素ベクトルに作用し(すなわち乗算される)、ヒルベルト空間におけるそのベクトルの指定された回転を実施する。
【0056】
図2を続けると、インターフェース230の変調器232からの適切に構成された信号は、任意の所望される量子ゲート演算を呈するよう、レジスタ212の一つまたは複数のキュービット214と物理的に相互作用することができる。上述のように、所望される量子ゲート演算は、レジスタ状態を表す複素ベクトルの具体的に定義された回転である。所望される回転^Oを実施するために、インターフェース230の一つまたは複数の変調器は、所定の持続時間Tiにわたって所定の信号レベルSiを印加することができる。
【0057】
いくつかの例では、複数の信号レベルが、複数のシーケンスまたは他の仕方で関連する持続時間にわたって印加されてもよい。より具体的な例では、前記複数の信号レベルおよび持続時間は、レジスタの一つまたは複数のキュービットに印加されうる複合信号波形を形成するように構成される。一般に、各信号レベルSiおよび各持続時間Tiは、コントローラ218の適切なプログラミングによって調整可能な制御パラメータである。他の量子計算アーキテクチャーでは、調節可能な制御パラメータの異なるセットが、レジスタ状態に適用される量子演算を制御することができる。
【0058】
キュービットは、周囲の種々の自由度との相互作用を通じて、必然的にその量子状態を失う。たとえキュービットが環境ノイズから完全に隔離されることができたとしても、量子ゲート演算は不完全であり、正確な精度で適用することはできない。これは、量子コンピュータ上で任意のアプリケーションを実行する際に、さまざまな制限をもたらす。よって、量子コンピュータによって操作される量子状態は、量子誤り訂正符号(Quantum Error Correction Code、QECC)を用いて誤り訂正を受けなければならない。QECCは、論理キュービットの誤り率が物理的な誤り率より低いように、論理キュービットを物理キュービットの集合に符号化する。QECCは、物理キュービット数の増加を代償として、物理的誤り率が受け入れ可能な閾値を下回る限り、フォールトトレラント量子計算を可能にする。近年、いくつかの誤り訂正プロトコルが提案されている。ここでは、フォールトトレラント量子計算のための最も有望なQECCと考えられている表面符号が適用される。QECは任意のノイズを、量子演算の重ね合わせとしてモデル化する。よって、QECCは、誤りの効果を、パウリ行列を用いて、ビット・フリップ、位相フリップ、または両者の組み合わせとして捉える。
【0059】
表面符号はスケーラブルなフォールトトレラント量子計算に好適であると広く考えられている。これは、交互のデータおよびパリティ・キュービットをもつ格子において論理キュービットを符号化する。そのような格子の概略表現は、図4の400において示されており、格子400は、2Dの距離3(d=3)の表面符号を有する。各Xスタビライザ402およびYスタビライザ404は、その隣接するデータ・キュービット406に結合される。各データ・キュービット406は、その最近接パリティ・キュービット408とのみ相互作用し、よって、410で示されるように、ローカルにサポートされる演算子を測定することによって、データ・キュービット406上の誤りが診断されることができる。この例では、データ・キュービットA 414上のZ誤り412は、パリティ・キュービットP0 416およびP1 418によって捕捉される。同様に、データ・キュービットB 422上のX誤り420は、パリティ・キュービットP2 424およびP3 426によって捕捉される。最も簡単な実現では、距離dの表面符号は(2d-1)2個の物理キュービットを用いて単一の論理キュービットを記憶する。ここで、dは冗長性および誤り許容度(error tolerance)の指標である。符号距離が大きいほど、冗長性が増し、誤り許容度が高くなる。
【0060】
論理演算子は、2つの対向エッジ間の単一キュービット演算子のストリングを含む。符号空間は、すべてのスタビライザ生成子(図4に示される)が+1の固有値を有する部分空間である。構築により、論理状態はスタビライザ生成子の適用下で不変である。パウリ演算子の任意の閉ループの適用では、論理状態は不変のままになる。スタビライザ生成子の測定は、誤りの連鎖の端点を検出する。誤り訂正はこの情報に基づき、スタビライザ測定はシンドロームと称される。
【0061】
QECでは、適切なパウリ・ゲートを適用することにより、誤りの効果が逆転する。たとえば、キュービットがビット・フリップ誤りに遭遇する場合、パウリXゲートを適用すると、それは意図された状態に反転して戻る。クリフォード・ゲートがキュービット上に適用される限り、能動誤り訂正を行う必要がないことは、以前に示されている。代わりに、ソフトウェアでパウリ・フレームを追跡することで十分である。よって、量子誤り訂正の主な焦点は、誤り訂正ではなく、誤り復号である。最適な誤り復号は、計算上困難な問題である。量子誤り復号器は、シンドローム測定を入力とし、データ・キュービットにおける誤りの推定を返す。復号器は、誤りを検出する能力に加えて、誤りの累積を防止するために、高い動作速度に頼る。言い換えれば、誤りは、発生するよりも速く検出されなければならない。
【0062】
誤り復号は高速でなければならないので、復号器は高性能を提供し、物理キュービットに近いところで動作しなければならない。図1に関して説明したように、キュービットは、典型的には、15~20ミリケルビンで運用される。復号器が4Kでの動作のために設計されるか77Kでの動作のために設計されるかに依存して、実装技術は、表1に指定されているように異なるトレードオフを提供する。4Kで動作するように設計されたハードウェアは、物理キュービットに近いため、厳しい電力要求を満たさなければならない。これは、熱ノイズが制御下にあり続けることを保証するためである。さらに、これらの設計は、洗練された高価な液体ヘリウム冷却器を用いて冷却されなければならない。復号器は、4KでCMOSまたは超伝導論理のいずれかを用いて設計されうる。CMOSには電力散逸があるので、大規模な量子コンピュータにおいて使用することはできない。超伝導論理は、低い電力消費を提供するが、限られた装置密度および低いメモリ容量のような主要な欠点があり、複雑で大型の設計を製造することが極めて困難である。77Kで動作する伝統的なCMOSは、より大きなメモリおよび電力予算を有する複雑なシステムを設計する能力を提供する。77Kに関連する冷却オーバーヘッドは4Kの場合より一桁低い。しかしながら、77Kで動作するように設計された復号器は、転送待ち時間を考慮し、4Kと77Kの間でデータを行ったり来たり転送するのに必要とされる帯域幅を満たさなければならない。4Kでの超伝導技術と77KでのCMOSとの間のトレードオフが表1に挙げられている。
【表1】
【0063】
ここでは、現実的なノイズ・モデルの下で量子誤り訂正のための復号器のマイクロアーキテクチャーを設計する際の課題が検討される。キュービット誤りは、デコヒーレンス誤り、ゲート誤り、測定誤りの3つのタイプに大別される。キュービットは、デコヒーレンス誤りに至る短い持続時間(デコヒーレンス時間と呼ばれる)の間だけ、その量子状態を保持する。理想的でないゲート演算は、キュービット上のゲート誤りにつながる。キュービット測定における不完全さは、測定誤りにつながる。復号器は、シンドローム測定誤りをデータ・キュービット誤りとして誤解釈し、誤っていないデータ・キュービットを訂正し、それによって誤りを導入することがある。復号器は、誤りを復号する間に、そのようなシンドローム測定誤りを考慮しなければならない。これは、復号器のマイクロアーキテクチャーと設計の選択に直接影響を与える。
【0064】
図5が示す描画500は、シンドローム測定502および504の2つの連続するラウンドを示し、測定誤り506が時間においてどのように対をなし、データ・キュービット誤り508が空間においてどのように対をなすかを示す。描画500は、復号器がラウンド0 502の測定結果のみを検査する場合、パリティ・キュービットP0 510上の誤りを誤解釈し、誤りのないD0 512に対する訂正を強制することを示す。現在の復号器は、dが符号距離であるとして、dラウンドの測定を調べることによって、シンドローム測定誤りに対処する。復号器が正しく機能するためには、dラウンドのシンドローム測定によって生成されたデータと、データ・キュービットごとの誤りログが記憶されていなければならない。これは、最大数メガバイトのストレージを必要とする(符号距離と論理キュービットの数に依存する)。
【0065】
図6は、d(符号距離)ラウンドについてのシンドローム測定データおよびN論理キュービットについての誤りログを記憶するために必要とされるメモリ容量(KB単位)を示す例示的なプロット600を示す。必要な容量は、4Kでの超伝導論理における利用可能なメモリよりもはるかに高い。77Kで誤り復号を実行するためには、測定データは4Kから77Kに輸送されなければならない。L個の論理キュービットをもつ所与のキュービット平面と、距離dの表面符号を使って符号化された各キュービットについて、2d(d-1)Lビットが各シンドローム測定サイクルの終わりに送られる必要がある。論理キュービットの合理的な数と符号距離を仮定すると、4K-77Kリンクは、数Gb/sのオーダーの帯域幅を必要とする。より低い帯域幅でのデータ伝送は、それがdシンドローム測定サイクル内で誤りの推定を提供しなければならないので(たとえば、表面符号サイクルは、dシンドローム測定サイクル内で破壊されうる)、誤り復号のために残された有効時間を減少させる。よって、77Kで任意の復号器を設計する際の主な課題は、必要とされる非常に大きな帯域幅である。
【0066】
キャッシュおよびメインメモリにおける容量および帯域幅の要件に効率的に対処する1つのアプローチは、データ圧縮である。測定データのスパース性は、本明細書に記載されるように解析され、解析的に推定されうる。たとえば、pをデータ・キュービットのZ誤りの確率であり、uがn個のデータ・キュービットの誤りの指標ベクトルであるとする(Xシンドロームについても同じ解析が成立することに注意)。4つのデータ・キュービットがあり、最初の2つがZ誤りをもつ場合、u=1100である。誤りの同一独立分布(identical and independent distribution、iid)を仮定すると、シンドロームのハミング重みに対する上限は式(1)で与えられる。ここで、|u|は、誤差指示ベクトルuのハミング重み(たとえば、1の数)である。
【0067】
【数2】
【0068】
よって、m個以上の誤差が存在する確率は、式2によって与えられる。
【0069】
【数3】
【0070】
ユニオン・バウンド(union-bound)を用いて、シンドローム・ビットの総数の上限s(Zu)は、式3によって与えられる。
【0071】
【数4】
【0072】
符号距離11、誤り率10-3と仮定すると、10以上の誤り(与えられた符号距離に対してそこそこ多数の誤り)がある確率は6.2×10-14である。よって、大きなハミング重みをもつシンドロームを観察する確率は極めて低い。この解析は、記憶装置の記憶オーバーヘッドを低減する、および/または帯域幅要件を満たすために、シンドローム・データを圧縮することが可能であることを示す。シンドローム・データについての種々の圧縮技法が本稿に記載される。圧縮技法の有用性はデータのエントロピーに依存するからである。ここでは、他のものも考えられたが、3つの圧縮技法が記述される。それらが適用できる異なるノイズ領域が解析される。記述される例は、それぞれ、単純な符号化を使用し、大きなハードウェア複雑性を必要としない、特徴圧縮方式である。
【0073】
動的ゼロ圧縮(Dynamic Zero Compression、DZC)は、ゼロ値のバイトのキャッシュ・アクセスに必要とされるエネルギーを低減するためにもともと導入された。シンドローム・データを圧縮するために、同様の技法が採用されてもよい。一例は、図7の700に示されている。長さLのシンドローム705は、それぞれWビットのK個のブロックにグループ化され、ここで、Wは圧縮幅710である。最後のブロックがWビットより小さい場合、余分なパディング・ゼロが追加されてもよい。Kビット幅のゼロインジケータビット(Zero Indicator Bit、ZIB)ベクトル715は、ブロック当たり1ビットを含む。i番目のブロックのすべてのビットが0である場合、ZIBにおける対応するビット(ZIB[i])が1に設定されてもよい。それ以外の場合、該ビットは0に設定されてもよい。送信されるべきデータ720は、ZIBベクトルの終わりに非ゼロブロック725を付加することによって得られてもよい。
【0074】
スパース表現は、750に示されるように、スパース行列760のゼロでない要素が行および列インデックス765のみを記憶することによって記憶される、スパース行列を記憶する伝統的な技法と同様であると考えることができる。スパース表現ビット(Sparse Representation Bit、SRB)755は、すべてのシンドローム・ビットがゼロであるかどうかを示すために使用される。シンドローム内に一つまたは複数の非ゼロビットがある場合、SRBはセットされず、非ゼロ要素のインデックス755が送信されるデータ775内でSRBとともに送信されてもよい。
【0075】
幾何ベースの圧縮(Geometry-based compression、Geo-Comp)は、表面符号格子の幾何も考慮に入れるDZCの適応であると考えられてもよい。XおよびZシンドロームを別々に圧縮するのではなく、幾何ベースの圧縮方式は、XおよびZシンドロームの領域を一緒に圧縮してもよい。表面符号格子全体は、各領域がほぼ同数のシンドローム・ビット(DZCにおける圧縮幅に類似)を含む複数の領域に分割されてもよい。図8は、幾何ベースの圧縮のための複数領域(801、802、803、804;点線で示される)を含む表面符号格子800を概略的に示す。図8は、距離5の表面符号格子がどのようにして4つの領域に分割されうるかの一例を示す。各領域についてZIBを使用し、非ゼロ領域からのシンドローム・データのみを送信することで、シンドロームは圧縮されうる。データ・キュービットにY誤りが発生すると、XおよびZシンドローム・ビットの両方がフリップし、誤りを示す。該2つのタイプのシンドロームが独立して圧縮されると、所与の圧縮幅について、非ゼロブロックの総数がより多くなる。たとえば、図8に示されるデータ・キュービットD0 810がY誤りに遭遇する場合、Xシンドローム・ビットX0 811およびX1 812ならびにZシンドローム・ビットZ0 813およびZ1 814がフリップする。DZCのような圧縮方式では、(X0 811, X1 812)および(Z0 813, Z1 814)は異なるデータ・ブロック上にあり、別々に圧縮される。しかしながら、格子の幾何形状を考慮に入れると、ゼロでないシンドローム・ビットは、典型的には、データ・キュービットが領域境界上にある(たとえば、格子800におけるD1 815)のでない限り、同じ領域内に存在する。
【0076】
一般に、領域の数およびサイズは、自明な〔トリビアルな〕シンドローム(すべてゼロ)を含むブロックの期待される数を計算することによって、与えられたノイズ・モデルについて調整されうる。しかしながら、より大きなサイズの領域は、論理深さを増加させることによって、複雑なハードウェアにつながる。よって、小さな領域サイズ(符号距離に依存する)は、非常に低い誤り率に対してさえ解析されうる。領域は、サイズが同じである必要はなく、領域のサイズおよび/または数は、自明なシンドロームを含むデータ・ブロックの期待される数に基づいて決定されてもよい。
【0077】
図9は、量子計算装置内のシンドローム・データを圧縮するための例示的な方法900を示す。いくつかの例では、方法900は、図12に概略的に描かれる復号器などの、ユニオン・ファインド復号器のハードウェア実装を備える量子計算装置によって実装されてもよい。
【0078】
910において、方法900は、l個の論理キュービットを含む少なくとも1つの量子レジスタからシンドローム・データを生成することを含む。ここで、lは正の整数である。生成されたシンドローム・データは、少なくともXシンドローム・データおよびZシンドローム・データを含むことができる。
【0079】
920において、方法900は、各論理キュービットについて:生成されたシンドローム・データを圧縮エンジンにルーティングすることを含む。該圧縮エンジンは、シンドローム・データを圧縮するように構成されている。量子計算装置は、複数の圧縮エンジンを含んでいてもよい。いくつかの例では、圧縮エンジンの少なくとも1つは、動的ゼロ圧縮を使用してシンドローム・データを圧縮するように構成される。いくつかの例では、圧縮エンジンの少なくとも1つは、スパース表現を使用してシンドローム・データを圧縮するように構成される。いくつかの例では、圧縮エンジンの少なくとも1つは、幾何ベースの圧縮を使用してシンドローム・データを圧縮するように構成される。量子計算装置は、2つ以上のタイプの圧縮エンジンに結合された論理キュービットの2つ以上のセクタを含んでいてもよい。いくつかの例では、方法900は、4Kで圧縮エンジンを動作させることを含んでいてもよい。しかしながら、より高い温度(たとえば、8K)またはより低い温度(たとえば、2K)が使用されてもよい。
【0080】
引き続き930において、方法900は、圧縮されたシンドローム・データを圧縮解除エンジンにルーティングすることを含む。圧縮解除エンジンは、圧縮されたシンドローム・データを受領し、受領された圧縮されたシンドローム・データを圧縮解除するように構成される。940において、方法900は、圧縮解除されたシンドローム・データを復号器ブロックにルーティングすることを含む。いくつかの例では、圧縮解除されたシンドローム・データは、復号器ブロックのグラフ生成器モジュールにルーティングされてもよい。いくつかの例では、方法900は、77Kで圧縮解除エンジンおよび/または復号器ブロックを動作させることを含んでいてもよい。しかしながら、より高い温度(たとえば、85K)またはより低い温度(たとえば、70K)が使用されてもよい。いくつかの例では、量子計算装置は、d<2*lであるとして、d個の復号器ブロックの集合を含む。
【0081】
図10は、量子計算装置内で幾何ベースの圧縮を使用してシンドローム・データを圧縮するための例示的な方法1000を示す。いくつかの例において、方法1000は、図12に概略的に描かれる復号器のような、ユニオン・ファインド復号器のハードウェア実装を含む量子計算装置によって実装されてもよい。
【0082】
1010において、方法1000は、l個の論理キュービットを含む少なくとも1つの表面符号格子からシンドローム・データを生成することを含む。lは正の整数であり、表面符号格子は、たとえば図8に示されるように、格子幾何に基づいて2つ以上の領域に分割される。いくつかの例では、領域の数は、自明なシンドロームを含むデータ・ブロックの期待される数に基づいて決定されてもよい。
【0083】
1020において、方法1000は、各論理キュービットについて、生成されたシンドローム・データを圧縮エンジンにルーティングすることを含む。圧縮エンジンは、幾何ベースの圧縮を使用して、シンドローム・データを圧縮するように構成される。1030において、方法1000は、表面符号格子の2つ以上の領域の各領域について、ゼロインジケータビットを用いてシンドローム・データを圧縮することを含む。1040において、方法1000は、ゼロでない領域からのシンドローム・データのみを送信することを含む。言い換えれば、ある領域からデータが受信されない場合、その領域は、トリビアルな(たとえば、すべてゼロの)データのみを含むと仮定されてもよい。
【0084】
1050において、方法1000は、圧縮されたシンドローム・データを圧縮解除エンジンにルーティングすることを含み、圧縮解除エンジンは、圧縮されたシンドローム・データを受領し、受領された圧縮されたシンドローム・データを圧縮解除するように構成される。圧縮解除エンジンは、圧縮エンジンによって使用される幾何ベースの圧縮方式に基づいてプログラムされうる。
【0085】
QECにおける復号器は、シンドローム測定データを処理し、データ・キュービットを破損する誤りを識別するために使用される。ここでは、表面符号のためのユニオン・ファインド復号器のハードウェア実装のためのマイクロアーキテクチャーに対して改良がなされる。表面符号では、キュービットの格子上のローカル演算子の測定と、復号器を用いたシンドロームの処理が、データ・キュービット上で最も確からしい誤りの推定値を生成する。復号器マイクロアーキテクチャーは、極低温環境での動作の厳しい電力予算を満たすために、ハードウェア複雑性を低く保ちながら、誤りの累積を防止するように設計される。ここに提示されるアーキテクチャーは、フォールトトレラント量子計算を可能にするために、数千の論理キュービットまでのスケーリングをサポートするように設計される。
【0086】
量子誤り復号はNP困難な問題である。よって、ほとんどの復号アルゴリズムは、より低い時間およびアルゴリズム複雑性のために、誤り閾値をトレードオフする。一つの有望な誤り復号技法は、グラフベースの最小重み完全マッチング(Minimal Weight Perfect Matching、MWPM)復号器である。これは高い誤り閾値を提供するが、MWPM復号器は高い時間複雑性(O(n2))に悩まされる。あるいはまた、復号器を設計するための単純なアプローチは、ルックアップテーブルを使用することに基づいている。テーブルはシンドローム・ビットによってインデックス付けされ、対応するエントリーにはデータ・キュービットについての誤り情報を格納する。しかしながら、ルックアップテーブル復号器はスケーラブルではなく、小さな符号距離の場合でも数テラバイトのメモリを必要とする。ディープニューラル復号器は人気があり、トレーニングフェーズにおいて、測定されたシンドロームのシーケンスに対応する、可能な誤りの確率密度関数を学習する。推論を用いて、所与のシンドロームについての誤りパターンが評価される。しかしながら、ニューラル復号器は、計算のためにより多くのハードウェアを必要とし、符号距離が増加するとスケーラブルではない。最近提案されたユニオン・ファインド(Union-Find)復号器は、非自明なシンドローム(ゼロでないシンドローム)のまわりにクラスターを形成し、ほぼ線形時間で誤りを訂正するためにグラフ横断〔トラバーサル〕を使用するアルゴリズムを提示する。よって、ユニオン・ファインド復号器は、単純性、時間複雑性、および高い誤り閾値を提供する。
【0087】
ユニオン・ファインド復号器の動作は、図11に示されている。1100において、グラフ1102上の各エッジは、データ・キュービットを表し、各頂点は、パリティ・キュービット(たとえば、1104、1106)を表す。復号は、1110に示されるように、すべての誤ったシンドローム・ビットをカバーするようにスパニング・フォレスト1108を成長させて、一つまたは複数の均一な(even)クラスターを形成することによって始まる。データ・キュービットA 1112およびB 1114は、それぞれ、未知のパウリ誤り1116および1118を割り当てられることができる。1120に示されるように、フォレストをたどる〔トラバースする〕ことによって、誤りが検出できる。クラスター横断ステップ(1122、1124に示される)は、誤りを検出し、分類し(たとえば、Z誤り)、訂正するために使用されてもよい。
【0088】
このアルゴリズムの適応は、図12のブロック図 1200に示されるように、実施されてもよい。圧縮されたシンドローム・データ1210は、圧縮解除エンジン1215にルーティングされる。次いで、圧縮解除されたシンドローム・データ1220は、グラフ生成器(Gr-Gen)モジュール1225にルーティングされる。Gr-Genモジュール1225は、スパニング木メモリ(spanning tree memory、STM)データを生成するように構成されてもよい。深さ優先探索(Depth-First Search、DFS)エンジン1230は、STMデータにアクセスし、該STMデータに基づいてエッジ・スタックを生成するように構成されてもよい。訂正(Corr)エンジン1235は、エッジ・スタックにアクセスし、アクセスされたエッジ・スタックに基づいてメモリ要求を生成し、誤りログ1240を更新するように構成されてもよい。
【0089】
シンドローム測定誤りが無視される場合、復号は、単一ラウンドのシンドローム測定から生成された2Dグラフを使用して実行される。欠陥のある測定を考慮に入れるために、連続したdラウンドのシンドローム測定が、一緒に復号されなければならない。ここで、dは符号距離である。これは3Dグラフにつながる。ユニオン・ファインド復号器は、これらの場合の両方で使用されうる。主な違いは、必要とされるメモリの量であり、これは、表面符号の符号距離に伴って二次で(2Dの場合)または三次で(3Dの場合)に増大する。ユニオン・ファインド復号器のマイクロアーキテクチャーは、ここでは、単純化のために2Dに記載され、3Dのために一般化される。記載されたすべての関連する結果は、3Dグラフについて得られる。復号設計は、3つのパイプライン・ステージを含み、改善された設計スケーリングを可能にする。
【0090】
Gr-Genモジュールは、圧縮解除後の入力としてシンドロームを取り込み、自明でないシンドローム・ビット(ゼロでないシンドローム・ビット)のまわりにクラスターを成長させることにより、スパンニング・フォレストを生成する。スパニング・フォレストは、Union()〔ユニオン〕とFind()〔ファインド〕の2つの基本的なグラフ演算を使用して構築されうる。図13は、例示的なGr-Genモジュール1300を概略的に示す。モジュール1300は、スパニング木メモリ(STM)1310、ゼロ・データ・レジスタ(Zero Data Register、ZDR)1315、ルート・テーブル(root table)1320、サイズ・テーブル1325、パリティ・レジスタ1330、および融合エッジ・スタック1335を含む。この設計は、ハードウェア資源のコストを低減するために、前述のユニオン・ファインド・アルゴリズムとは若干異なっている。各コンポーネントのサイズは、符号距離dの関数である。STM 1310は、各頂点について1ビットを格納し、エッジ当たり2ビットを格納する。エッジ当たり2ビットが使用されるのは、もとのアルゴリズムによれば、クラスターが頂点または既存のクラスター境界のまわりで半エッジ幅だけ成長するからである。ZDR 1315は、STM行当たり1ビットを格納する。行の内容が0である場合、ビットは0を格納し、行内の少なくとも1つのビットが1である場合、対応する行についてのZDRビットは1を格納する。シンドローム・データは疎であり、スパニング・フォレスト内のエッジの総数は低いであろうから、ZDR 1315は、STM 1310横断を高速化する。FES 1335は、既存のクラスターに追加できるように、新しく成長したエッジを格納する。ルート・テーブル1320およびサイズ・テーブル1325は、それぞれ、クラスターのルートおよびサイズを格納する。ツリー横断レジスタ1340は、Find()操作において訪問された各クラスターの頂点を記憶する。Gr-GenモジュールとDFSエンジンとの間のインターフェース1345は、DFSエンジンがSTM 1310に記憶されたデータにアクセスすることを許容しうる。
【0091】
ルート・テーブル・エントリー(Root Table[i])は、図14に示されるように、インデックス(i)に初期化される。非自明なシンドローム・ビットについてのサイズ・テーブル・エントリーは、1400に示されるように、1に初期化される。これらのテーブルは、Union()およびFind()演算が、1410で示されるような成長フェーズの後に、クラスターを1420で示されるような最終状態にマージするのを支援する。それらはクラスター・インデックスでインデックス付けされる。これらのテーブルは、表面符号格子における頂点の総数に等しい、可能なクラスターの最大数のためのサイズにされる。各クラスターの境界リストが格納されてもよい。しかしながら、平均クラスター直径は、実際的な応用にとって重要なノイズ領域では、非常に小さい。クラスター直径は、クラスター境界上の2つの頂点間の最大距離として定義されうる。よって、境界リストは格納されなくてもよく、代わりに、境界インデックスはクラスター成長フェーズにおいて計算されてもよい。パリティが偶数になるまで、もとのアルゴリズムはすべての奇数クラスターを成長させる。よって、奇数クラスターが迅速に検出されなければならない。それをするために、図11に示されるように、パリティ・レジスタが使用されてもよい。パリティ・レジスタは、奇数であるか偶数であるかに依存して、クラスター当たり1ビットのパリティを格納することができる。妥当な符号距離11について、7つの32ビットレジスタが十分でありうる。より長い符号距離については、メモリ待ち時間を隠すために、追加的なパリティ情報がメモリに格納され、事前に読み込まれてもよい。
【0092】
制御論理は、パリティ・レジスタを読み込み、STM、ZDRに書き込み、他のクラスター境界に接触する新たに追加されたエッジをFESに追加することによって、奇数パリティをもつクラスターを成長させてもよい(成長フェーズと呼ばれる)。他のクラスターに接続するエッジについては、二重成長を防止するためにSTMを更新されなくてもよい。それは、FESからの読み込みによりクラスターがマージされる場合に更新されてもよい。論理は、エッジによって接続された頂点(これらを主頂点と呼ぶ)のルート・テーブル・エントリーを読み取ることによって、新たに追加されたエッジが2つのクラスターを接続しているかどうかをチェックしてもよい。これは、Find()演算と同等である。各主頂点のルートを見つけるために経路上で訪問される頂点は、図15の1500で示されるように、ツリー横断レジスタ上に格納される。これらの頂点のためのルート・テーブル・エントリーは、1510で示されるように、将来の横断のためのツリーの深さを最小化するために、クラスターのルートを直接指すように更新されてもよい。経路圧縮と呼ばれるこの演算は、ユニオン・ファインド・アルゴリズムに含まれ、木の深さを短く保つことを許容し、Find()演算のコストを弁済する(amortize)。たとえば、1500において、図15は、ある瞬間における2つのクラスターおよび1つのルート・テーブルの状態を示す。成長ステップの後、頂点0と6が接続されており、2つのクラスターがマージされる必要があると仮定する。ツリー横断レジスタは、1500で示されるように、頂点0のルートを更新するために使用されてもよい。ツリーの深さは連続的に圧縮されるので、少数のレジスタのみが十分である。一例では、主頂点当たり5つのレジスタが使用されるが、より多くのレジスタまたはより少ないレジスタが使用されてもよい。主頂点が異なるクラスターに属する場合、より小さいクラスターのルートは、より大きなクラスターのルートを指すように更新されてもよい。
【0093】
DFSエンジンは、成長した偶数クラスターの集合を格納するGr-Genによって生成されたSTMデータを処理することができる。それは、STM内の各クラスターについてスパニング木を形成するエッジのリストを生成するために、DFSアルゴリズムを使用してもよい。他の例では、DFSは一般にメモリ効率がより高いが、幅優先探索が使用されてもよい。例示的なDFSエンジンは、図16の1600に示されている。この論理は、有限状態マシン1610および2つのスタック1620および1622を使用して実装されてもよい。スパニング木内でエッジが訪問される順序を逆にして剥離(peeling)による訂正を実行することができるため、スタックが使用されてもよい。エッジ・スタック1620は、訪問されたエッジのリストを記憶することができ、ペンディング・エッジ・スタック1622は、進行中のDFSにおいて後に訪問されるエッジを記憶することができる。たとえば、図16の1630に示されるように、FSMがスパニング・フォレストの頂点1を訪問するとき、エッジaがエッジ・スタックにプッシュされ、エッジcがペンディング・エッジ・スタックにプッシュされる。現在の経路の末端に到達すると、ペンディング・エッジがポップされ、横断されてもよい。パイプライン化を可能にし、性能を改善するために、マイクロアーキテクチャーは、代替エッジ・スタック1632を含むように設計されてもよい。2つ以上のクラスターが存在する場合、訂正エンジンは、Corrエンジン・インターフェース1640を介して、横断されるクラスターのうちの1つのクラスターのエッジ・リスト上に対して作用してもよい。その間、DFSエンジンが他方のクラスターを横断する。1630に示されるように、エッジa、b、c、およびdがクラスターC0に属し、エッジeおよびfがクラスターC1に属する場合、CorrエンジンがC0についての訂正を処理するとき、DFSエンジン1600は、C1を横断してもよい。これは、最悪の場合のクラスター・サイズではなく、平均クラスター・サイズを扱うためにスタックのサイズを決定するのに役立ちうる。DFSエンジン1600が、1つのスタックに収まらない十分に大きなクラスターに遭遇する場合、代替スタック1632が使用されてもよく、オーバーフロー・ビットが設定されて、両方のスタック1620および1632が、単一のクラスターに対応するエッジを保持することを示すことができる。この提案される実装は、クラスターのサイズに直接比例する数のメモリ読み出しを含みうる。行ごとにSTM 1310を進むことによって、クラスターを生成する有効コストが低減される。ZDR 1315は、行ごとにSTM 1310を横断するコストを低減する。
【0094】
Corrエンジンは、復号器の剥離プロセスを実行してもよく、適用すべきパウリ訂正を識別してもよい。Corrエンジンは、エッジ・リスト(スタックに格納される)およびエッジ・リストに沿った諸頂点に対応する諸シンドローム・ビットにアクセスすることができる。シンドローム・ビットは、圧縮されたシンドロームを圧縮解除すること、および/またはSTMにアクセスすることによって、アクセスされうる。しかしながら、前者は、論理の複雑さおよび待ち時間を増加させる可能性があり、後者は、STMが処理することを要求されるメモリ要求の数を増加させる可能性がある。メモリ・トラフィックを低減し、追加的な圧縮解除論理の必要性をなくすために、エッジ・インデックス情報とともにシンドローム情報がDFSエンジンによって保存されてもよい。剥離によって引き起こされる一時的なシンドローム変化はローカル・レジスタに保存される。Corrエンジンにおいて実行される例示的な誤りグラフについての剥離の例が図17に示される。例示的なシンドローム保持レジスタ、誤りログ、エッジ・スタック、および誤りグラフが、ステップ1 1700、ステップ2 1710、およびステップ3 1720について、図17に示されている。Corrエンジンはまた、最後の表面符号サイクル誤りログを読んでもよく、現在のエッジについてのパウリ訂正を更新してもよい。たとえば、エッジe0の誤りが前の論理サイクルにおいてZであって、現在のサイクルでもZ誤りに遭遇する場合、e0についてのパウリ誤りは、1720で示されるようにIに更新されうる。
【0095】
図18は、量子計算装置のための例示的な復号方法1800を示す。いくつかの例では、復号方法1800は、図12に概略的に描かれる復号器などの、ユニオン・ファインド復号器のハードウェア実装を備える量子計算装置によって実装されてもよい。
【0096】
1805において、方法1800は、量子レジスタに存在する論理キュービットのような、複数のキュービットの一つまたは複数からシンドローム・データを受領することを含む。受領されたシンドローム・データは、Xシンドローム・データおよび/またはZシンドローム・データを含んでいてもよい。
【0097】
1810において、方法1800は、受領されたシンドローム・データを、2つ以上のパイプライン・ステージを含むハードウェア実装されたユニオン・ファインド復号器で復号することを含む。一例として、これは、図12に示されるハードウェア実装されたユニオン・ファインド復号器を含み、これは、3つのパイプライン・ステージ、すなわち、グラフ生成器モジュール・ステージ、深さ優先探索エンジン・ステージ、および訂正エンジン・ステージを含む。しかしながら、2つ以上のパイプライン・ステージの任意の数または組み合わせが使用されてもよい。
【0098】
任意的に、1820において、シンドローム・データの復号は、Gr-Genモジュールにおいて、非自明なシンドローム・ビットのまわりでクラスターを成長させることによって、スパニング・フォレストを生成することを含んでいてもよい。いくつかの例では、Union()およびFind()のグラフ演算を使ってスパニング・フォレストが生成されてもよい。
【0099】
任意的に、1825において、シンドローム・データの復号は、Gr-Genモジュールにおいて、スパニング木メモリ(STM)およびゼロ・データ・レジスタ内にスパニング・フォレストに関するデータを格納することを含んでいてもよい。いくつかの例では、新たに成長されたエッジが融合エッジ・スタックに格納されてもよい。
【0100】
任意的に、1830において、シンドローム・データの復号は、DFSエンジンにおいて、STMに記憶されたデータにアクセスすることを含んでいてもよい。任意的に、1835において、シンドローム・データの復号は、DFSエンジンにおいて、STMに記憶されたデータに基づいて、一つまたは複数のエッジ・スタックを生成することを含んでいてもよい。たとえば、図16に示されるように、STMに記憶されたデータに基づいて一つまたは複数のエッジ・スタックを生成することは、訪問されるエッジのリストを含む主エッジ・スタックを生成することを含んでいてもよい。追加的または代替的に、STMに記憶されたデータに基づいて一つまたは複数のエッジ・スタックを生成することは、訪問されるエッジのリストを含むペンディング・エッジ・スタックを生成することを含んでいてもよい。追加的または代替的に、STMに記憶されたデータに基づいて一つまたは複数のエッジ・スタックを生成することは、スパニング・フォレストのクラスターからの余分なエッジを保持するように構成された代替エッジ・スタックを生成することを含んでいてもよい。
【0101】
任意的に、1840において、シンドローム・データの復号は、Corrエンジンにおいて、生成されたエッジ・スタックの一つまたは複数にアクセスすることを含んでいてもよい。任意的に、1845において、シンドローム・データの復号は、Corrエンジンにおいて、アクセスされたエッジ・スタックに基づいてメモリ要求を生成することを含んでいてもよい。任意的に、1850において、シンドローム・データの復号は、Corrエンジンにおいて、各アクセスされたエッジ・スタック上で逐次反復的な剥離復号を実行することを含んでいてもよい。任意的に、1855において、シンドローム・データの復号は、Corrエンジンにおいて、逐次反復的な剥離復号の結果に基づいて、復号器の誤りログを更新することを含んでいてもよい。
【0102】
本明細書に記載されているように、単一ラウンドの測定に基づく復号は、シンドローム測定誤りを考慮に入れない。測定誤りを扱うために、復号器はd(符号距離)ラウンドの測定を調べる。このタイプの誤り訂正は、最小限の設計変更で扱うことができる。たとえば、2D平面上にグラフを形成する代わりに、復号器は3Dグラフを解析してもよい。各頂点は、最大4つの近傍に接続されうる。一方、3Dグラフについて、各頂点は、今や、前ラウンドおよび次ラウンドの測定に対応する2つまでの追加的なエッジを有していてもよい。記憶オーバーヘッドを減らすために、シンドローム測定ラウンド毎にSTMが記憶されてもよい。STMは、STMの各行が、表面符号格子の行の頂点、次の行の頂点についてのエッジ情報、および次のラウンドの表面符号格子内の対応する頂点を接続するエッジ情報を格納するように最適化されうる。
【0103】
本明細書に記載される圧縮技術は、データ・キュービットについてのシンドローム・データおよび誤りログを格納するために必要とされるメモリの量を減少させることができる。しかしながら、ユニオン・ファインド復号器のマイクロアーキテクチャーもメモリを使用し、必要とされる全容量は、超伝導メモリによって提供される全容量にはほど遠い。よって、この設計は、通常のCMOSを使用して77Kで動作させることによって実施することができる。これはまた、設計が量子基板から物理的に遠くに位置するので、量子基板に近い極低温環境で発生する熱ノイズを低減することができる。
【0104】
ベースライン設計のために、素朴な実装は、図19の1900に示されているように、各論理キュービットについて各XシンドロームおよびZシンドロームのための復号器を割り当てることができる。図19は、量子レジスタ1910内の多数(L)の論理キュービットについてのシステム編成を概略的に示す。量子レジスタ1910は、15~20mKで動作する代表的な論理キュービットとして、論理キュービット0 1910a、論理キュービット1 1910b、および論理キュービットl 1910lを含むように示されている。各論理キュービットは、制御論理1915から信号を受領し、シンドローム・データを圧縮エンジン(たとえば、1920a、1920b、…1920l)に出力するように構成される。制御論理1915および圧縮エンジン1920a…1920lの両方が、量子レジスタの場合よりも高い温度4Kで動作するとして示されている。しかしながら、より高い温度(たとえば、8K)またはより低い温度(たとえば、2K)が使用されてもよい。
【0105】
各圧縮エンジンは、圧縮されたシンドローム・データを77Kで動作する圧縮解除エンジン(1925a、1925b…1925l)にルーティングする。圧縮解除エンジンは、圧縮されたシンドローム・データを圧縮解除し、圧縮解除されたXおよびZシンドローム・データを復号ブロック1930に送る。この例では、各圧縮解除エンジンは、77Kで動作する一対のパイプライン式のユニオン・ファインド復号器(1935a、1935b、1935c、1935d…1935k、1935l)に結合される。各ユニオン・ファインド復号器は、圧縮解除エンジンから受領されたシンドローム・データを解析し、誤りログ1940を更新する。77Kで動作するように示されているが、より高い(たとえば、85K)またはより低い(たとえば、70K)温度が、圧縮解除エンジンおよび復号器を動作させるために使用されてもよい。ただし、圧縮解除エンジンおよび復号器の動作温度は、一般に、圧縮エンジンの動作温度よりも高くてもよい。
【0106】
このように、ベースライン設計のために、復号論理は、論理キュービット当たり2L個のユニオン・ファインド復号器を使用してもよい。この実装では、各論理キュービットは、それ自身の専用の復号器を使用する。しかしながら、各パイプライン・ステージの利用率は異なることがある。よって、1900に示されたアーキテクチャーは、資源の最適な配分を提供しない可能性がある。多数のキュービットについて、オンチップ・コンポーネントは十分に利用されず、熱を散逸する。システム全体が77Kで動作させられるので、電力散逸の増加は冷却コストを線形に増加させる。
【0107】
よって、減らされた数のパイプライン・ユニットを含む復号器ブロックのアーキテクチャーが使用されてもよい。そのような復号器ブロックについての例示的な設計は、図20の2000に示されている。複数の論理キュービットを含むキュービット・レジスタ2005は、シンドローム・データをGr-Genモジュールの集合に送信する。Gr-Genモジュール2010のグループは、一つまたは複数のDFSエンジン2020を共有することができ、DFSエンジン2020のグループは、一つまたは複数のCorrエンジン2030を共有することができる。ハードウェア・オーバーヘッドは、Gr-Genモジュール2010のグループを1つのDFSエンジン2020に結合する第1のセットのマルチプレクサ2035と、DFSエンジン2020のグループを1つのCorrエンジン2030に結合する第2のセットのマルチプレクサ2040を含む。Corrエンジン2030によって生成されるメモリ要求は、デマルチプレクサ2045を使用して正しいメモリ位置にルーティングされうる。選択論理2050は、最初に準備完了したコンポーネントを優先させてもよく、ラウンドロビン調停を使用して、マルチプレクサ2035および2040のための適切な選択信号を生成してもよい。たとえば、4つのGr-Genモジュール2010がDFSエンジン2020を共有し、第2のGr-Genモジュールが他のモジュールよりも早くクラスター形成を終了する場合、それが、対応するDFSエンジン2020へのアクセスを最初に得てもよい。このように、ラウンドロビン・ポリシーは、資源を共有しながら公平性を確保する。
【0108】
例示的なシステム・アーキテクチャーが、図21の2100に示される。キュービット・レジスタ2105は、制御論理2115に結合された複数の論理キュービット2110を含む。各論理キュービットは、圧縮エンジン2120に結合され、該圧縮エンジンはそれぞれ圧縮解除エンジン2125に結合される。N個の論理キュービット2110のブロックは、復号器ブロック2130を共有し、該復号器ブロックは、それぞれの結合された論理キュービット2110について誤りログ2135を更新する。図19に関して説明したように、動作温度は、示されている温度4Kおよび77Kとは変わってもよい。N個の論理キュービットが復号器ブロック2130を共有する場合、L個の論理キュービット2110をもつ量子レジスタ2105について、必要とされる復号器ブロック2130の総数はL/Nである。ある例示的なマイクロアーキテクチャーは、L個のGr-Genモジュール、(a)L個のDFSエンジン、および(b)L個のCorrエンジンを使用する。資源節約は、パラメータ(a)と(b)に依存する。(a)および(b)の値は、全体的なハードウェア・コストを最小化するために計算されてもよい。これは、制約条件を受ける最適化問題として枠付けできる。
【0109】
大規模システムのために復号を行う1つの方法は、各論理キュービットに1つの復号器を割り当てることである。しかしながら、このアプローチは、ハードウェアに関して、よって、電力コストにおいても線形な増大を被る。このように、この設計はあまり効率的ではなく、本質的にスケーラブルではない。ここでの設計は、復号器ブロックが多数の論理キュービットのためにスケーリングされるときに実際的なコストを低減するために、特定の設計コンポーネントの再使用を可能にする。
【0110】
資源は、諸復号ユニット内でおよび/または諸復号ユニット全体にわたって共有されてもよい。復号時間の分布を考慮すると、いくつかの非常に長いシンドローム・ベクトルが同時に復号される必要がある可能性は低く、よって資源が共有されてもよい。
【0111】
この共有は、復号アルゴリズムがシンドロームに依存するランタイムを有する場合を含め、復号器または復号アルゴリズムとは無関係であり、したがって、いくつかのシンドロームは、他のシンドロームよりも復号することがより困難である、またはより長い場合がある。たとえば、いくつかの機械学習に基づく復号器は、シンドロームに依存しない。機械学習復号器は、ニューラルネットワークの複数の層を有してもよい。ひとたび第1の層で1つのキュービットについて復号が実行されると、第1のキュービットがネットワークの第2の層ではたらいている間に、第2のキュービットが第1の層を使用することができる。
【0112】
図22は、量子計算装置のための例示的方法2200を示す。方法2200は、図20および図21に示される計算装置などの多重化された量子計算装置によって実行されてもよい。2205において、方法2200は、l個の論理キュービットを含む少なくとも1つの量子レジスタからシンドロームを生成することを含み、ここで、lは正の整数である。生成されるシンドロームは、XシンドロームおよびZシンドロームを含んでいてもよい。2210において、方法2200は、d<2*lであるとして、前記少なくとも1つの量子レジスタに結合されたd個の復号器ブロックのセットに、生成されたシンドロームをルーティングすることを含む。図20および図21に関して説明したように、これは、量子計算装置のスケーラビリティを許容する。これは、各論理キュービットについてXおよびZシンドロームの両方の処理を扱うために必要な復号器が2つ未満であるためである。
【0113】
いくつかの例では、各復号器ブロックは、n>1として、n個の論理キュービットのセットから復号要求を受領するように構成される。いくつかの例では、各復号器ブロックは、g個のGr-Genモジュールを含み、ここで、0<g≦lであり、各Gr-Genモジュールは、受領されたシンドロームに基づいて、スパニング木メモリ(STM)データを生成するように構成される。いくつかの例では、各復号器ブロックは、さらに、α*l個のDFSエンジンを含む。ここで、0<α<1である。いくつかの例では、2つ以上のGr-Genモジュールが、第1のセットのマルチプレクサのうちの1つを介して各DFSエンジンに結合される。
【0114】
任意的に、2215において、方法2200は、各DFSエンジンにおいて、2つ以上のGr-Genモジュールによって生成されたSTMデータに、第1のセットのマルチプレクサのうちの1つを介してアクセスすることを含む。任意的に、2220において、方法2200は、各DFSエンジンにおいて、STMデータに基づいてエッジ・スタックを生成することを含む。いくつかの例では、各復号器ブロックは、さらに、β*l個のCorrエンジンを含む。ここで、0<β<1である。いくつかの例では、2つ以上のDFSエンジンが、第2のセットのマルチプレクサのうちの1つを介して各Corrエンジンに結合される。
【0115】
任意的に、2225において、方法2200は、各Corrエンジンにおいて、第2のセットのマルチプレクサのうちの1つを介して、2つ以上のDFSエンジンによって生成されたエッジ・スタックにアクセスすることを含む。任意的に、2230において、方法2200は、アクセスされたエッジ・スタックに基づいてメモリ要求を生成することを含む。任意的に、2235において、方法2200は、一つまたは複数のデマルチプレクサを介して、各Corrエンジンによって生成されたメモリ要求をメモリ位置にルーティングすることを含む。任意的に、2240において、方法2200は、ラウンドロビン調停に基づいて、第1および第2のセットのマルチプレクサの各マルチプレクサを通じて戻り信号をルーティングすることを含む。
【0116】
誤り訂正は、シンドローム測定のdラウンドが論理サイクル(T)内で復号されるときに成功し、これは、復号器によって許容できる最大待ち時間を制限する。復号器が論理サイクル内のすべてのシンドロームを復号できない場合、誤りが検出されないことがある。このタイプの障害は、タイムアウト障害と呼ばれることがある。復号器は不完全で、閾値挙動を示すため、復号器によって生成された訂正がキュービットの論理状態を変化させるときに、論理誤りが発生する可能性もある。よって、復号器の障害は、タイムアウト障害または論理誤りのいずれかに起因しうる。誤り閾値を同じに保ち、システム障害率の増大を防止するために、タイムアウト障害(timeout failure)の確率(ptof)は、式(4)に示される論理誤りの発生確率(plog)よりも低くなければならない。最適化された設計のためには、ptofが十分に小さい限り、資源共有が可能である。
【0117】
ptof≦plog (Eq. 4)
【0118】
同一の誤り率をもつN個の論理キュービットがk個の復号ユニットを共有すると想定する。N個の論理キュービットを復号するための総実行時間(r)は式(5)によって与えられる。
【0119】
【数5】
【0120】
ここで、(τi)はi番目の論理キュービットのシンドロームを復号する実行時間を表す。この場合、タイムアウト障害の確率ptofは式(6)を満たさなければならない。
【0121】
【数6】
【0122】
最適化の目標は、式(4)によって与えられる制約条件が満たされるように、与えられた数Nの論理キュービットのための復号ユニットの数kを最小化することである。ptofは、シミュレータから得られた実行時間を用いてモデル化されてもよい。
【0123】
復号器の性能は、読みの数を調べることによってモデル化されうる。実行される書き込み動作は、読み取り‐変更‐書き込み(read-modify-write)であってもよく、書き戻しはクリティカル・パス上になくてもよい。メモリ・アクセスのために4サイクルの待ち時間が想定され、4GHzのクロック周波数とする。所与のシンドロームについてのGr-Genにおけるメモリ要求の総数は、クラスター直径(Di)に直接比例する。一方、それはDFSエンジンおよびCorrエンジンにおけるクラスターのサイズ(Si)に比例する。n個のクラスターをもつシンドロームのためにGr-Gen(TGG)、DFSエンジン(TDFS)、およびCorrエンジン(TCE)において費やされた実行時間は、式(7)および(8)によって与えられる。
【0124】
【数7】
【0125】
【数8】
【0126】
最適化された設計では、各Gr-Genユニットは、XおよびZシンドロームの両方についてクラスターを成長させる。2つ以上のGr-Genユニットが1つのDFSエンジン・モジュールを使用し、2つ以上のDFSエンジンが1つのCorrエンジンを使用する。これらの共有されるべきユニットの数は、各パイプライン・ステージで費やされる総実行時間の割合によって決定されうる。
【0127】
以下では、復号器マイクロアーキテクチャーにおいて設計選択を行うために使用されるシミュレーション・インフラストラクチャーについて論じる。このインフラストラクチャーは、ユニオン・ファインド復号器の主要な統計量の一部の推定を可能にし、さらに、本明細書に記載される圧縮技法の性能の研究を可能にする。
【0128】
モンテカルロ・シミュレータを用いて、種々の圧縮技法の性能を解析し、ユニオン・ファインド復号器の性能の統計量を得た。図23は、モンテカルロ・シミュレータ2300を概略的に示す。4つの異なる物理的誤り率、10の異なる符号距離、および4つのノイズ・モデルにまたがる異なる構成を、それぞれ100万回の試行のためにシミュレートした。選択された誤り率は、10-6(最も楽観的)、10-4、10-3、10-2(最も悲観的)であった。シミュレータ2300は、符号距離2302、ノイズ・モデル2304、および圧縮アルゴリズム2306を受け入れた。符号距離2302に基づいて、シミュレータ2300は、格子生成器(lattice generator)2308を介して表面符号格子を生成した。選択されたノイズ・モデル2304に依存して、シミュレータは、表面符号格子のデータ・キュービット上に誤り注入2310を介して誤りを注入し、出力シンドローム2312を生成した。次いで、出力シンドローム2312は、入力圧縮アルゴリズム2306に従って圧縮器2314を介して圧縮され、圧縮シンドローム2316を生成した。次いで、シミュレータ2300は、圧縮比を出力した。最も好適な圧縮方式を決定するための性能指数として、圧縮比(式(9)により決定される)および圧縮できない〔非圧縮性〕シンドロームの割合が使用された。シミュレーションを100万回繰り返し、平均の圧縮比および非圧縮性シンドロームの割合を計算した。
【0129】
【数9】
【0130】
シミュレータはまた、復号器2318を介して、シンドローム2312に対してユニオン・ファインド復号アルゴリズムを実行した。次いで、統計生成器2320が、ハードウェアをモデル化することによって、クラスター・サイズの分布、所与の格子上のクラスターの平均数、および復号器2318の各パイプライン・ステージ階で費やされた実行時間を解析した。これらの統計および性能数は、復号器のハードウェア実装のマイクロアーキテクチャーの設計に寄与し、スケーラブル設計を動機付けた洞察を提供した。
【0131】
復号器の性能は、基礎になるキュービットのノイズ・モデルに大きく依存する。そこで、4つの異なる誤りモデルを調べた。同一独立分布(iid)誤りを仮定し、脱分極ノイズ・モデル(depolarizing noise model)を最も基本的なノイズ・モデルとして選択した。脱分極ノイズ・モデルでは、誤り率がpである場合、各物理キュービットは確率pで誤りに遭遇し、確率(1-p)で誤りのないままである。さらに、この誤りモデルでは、X、Y、Z誤りはそれぞれ等しい確率p/3で生じる。他の3つのノイズ・モデルは、表2に示されるように、X誤りとZ誤りの異なる確率を想定する。
【表2】
【0132】
シンドローム圧縮、ベースラインのユニオン・ファインド復号器設計およびスケーラビリティ解析についての結果をここで論じる。ベースライン復号器およびスケーラビリティ解析についての結果は、本明細書に記載されているようなシンドローム測定のd(符号距離)回のラウンドに基づく。
【0133】
各圧縮方式の性能はノイズ・モデルに依存する。脱分極ノイズ・モデルについて、DZCおよびGeo-Compのような圧縮方式は、誤り率に依存する低い符号距離についての疎な表現と比較して、より良好な性能を提供する。DZCは、Px=10PzおよびPx=100Pzのような特定のタイプの誤りについての相対的バイアスを有するノイズ・モデルについてGeo-Compよりも良好に機能する。より低い符号距離については、疎な表現がより高い圧縮比を提供するものの、大きな誤り率について非圧縮性シンドロームの割合はより高い(6%まで)。一方のタイプの誤りの確率が他方のタイプよりもはるかに大きいノイズ・モデルについては、XおよびZシンドロームを別々に圧縮することにより、より大きなハードウェア複雑性の代償で、より良い圧縮比が得られる。ハードウェアの制約のため1つのタイプの圧縮のみを使用しなければならない場合、符号距離が低いほど、DZCのパフォーマンスは良くなる。表3は、異なるノイズ領域と、各領域で最も良好に機能する適切な圧縮方式を指定する。全体的に、誤り率が低い領域では、ほとんどの場合、スパース表現の方が良好に機能する。
【表3】
【0134】
図24は、異なる物理的誤り率およびノイズ領域について、選択された圧縮方式を使用する脱分極ノイズ・チャネルについてのXシンドロームの平均圧縮比を示すプロット2400を示す。脱分極ノイズ・チャネルは、代表的な候補として示されている。Zシンドロームについても同様の結果が観察された。
【0135】
諸シミュレーションからのクラスターの直径の分布が決定された。本明細書で定義されるように、クラスター直径は、クラスターの任意の2つの境界頂点間の最大距離である。図25は、論理キュービットについての異なる誤り率および符号距離についての平均クラスター直径を示すプロット2500を示す。平均クラスター直径は小さい。この結果は、もとのユニオン・ファインド・アルゴリズムにおいて使用される機能である、ハードウェアにおける各クラスターについての境界リストを維持する際に発生する記憶コストをなくすために使用される。これは、Gr-Genモジュールのハードウェア・コストを低減する。クラスター直径が小さい確率は、誤り率の減少とともに増加する。
【0136】
Gr-GenモジュールおよびDFSエンジンによって使用されるスパニング木メモリ(STM)は、記憶コストの大部分を占める。図26は、所与の符号距離(d)および論理キュービット数(N)についてのスパニング木メモリ(STM)に必要とされる総メモリ容量を示すプロット2600を示す。ここに示された結果は、dラウンドの測定を使用して構築された3Dグラフについてのものである。プロット2600は、1000のような多数の論理キュービットについてでさえ、XおよびZシンドロームの両方を復号するのに必要とされる総メモリは、非常に大きな符号距離(d)およびdラウンドの測定について、10MB未満であることを示す。復号器がdラウンドの測定を考慮する必要がない場合(将来、完全な測定が可能であると仮定する)、必要とされる総メモリ容量は、d倍減少する。
【0137】
ルート・テーブルおよびサイズ・テーブルについて可能なエントリーの最大数は、d(符号距離)ラウンドのシンドローム測定について、シンドローム・ビットの総数(2d(d-1)に等しい)である。各ルート・テーブル・エントリーは、log22d2(d-1)ビットを使用して一意的に識別できるルート(root)を含む。同様に、実現可能なクラスターの最大サイズは、すべてのシンドローム・ビットを含む。よって、ルート・テーブルおよびサイズ・テーブルの合計サイズは、各論理キュービットについて2d2(d-1)log2d2(d-1)ビットとなる。
【0138】
スタックのサイズは、モンテカルロ・シミュレーションからクラスター内のエッジの最大数を解析することによって決定されてもよい。クラスターにおけるエッジ数はポアソン分布に従う。図27は、符号距離d=11および物理的誤り率p=10-3についてのそのような分布を示す例示的なプロット2700を示す。よって、スタック・サイズは、エッジの最大数の半分であるように設計されてもよい。図28は、異なる符号距離および誤り率についてのクラスター内のエッジの平均数を示すプロット2800である。各スタックは、2つの頂点(log24d2(d-1)ビット)、成長方向(2ビット)、およびシンドロームの1ビットを格納する。各DFSエンジンがパイプラインのための2つのスタックを含むことは注目に値する。クラスターのサイズが各スタックが保持できるサイズよりも大きい場合、オーバーフロー・ビットが設定され、代替スタックが、利用可能な場合、使用されてもよい。
【0139】
図29は、Gr-GenおよびDFSエンジンにおける実行時間間の相関を示すプロット2900を示す。これは、復号の間、より多くの時間がGr-Genユニットにおいて費やされることを含意する。このデータは、本明細書に記載されるように、復号器ブロック内で共有される資源の数を選択するために使用される。図30は、符号距離(d)11および誤り率(p)0.5×10-3について、単一の復号器ブロック(たとえば、図20に示されるような)についての実行時間の分布を示すプロット3000を示す。影付きの領域は、タイムアウト障害の確率の増加につながる可能性があるイベントを示す。実装される資源の共有により、タイムアウト障害の確率ptofは、10-8である論理的誤り率の確率よりも低い。L個の論理キュービットについては、利用されるGr-Genモジュール、DFSエンジン、Corrエンジンの数は、このアーキテクチャーではそれぞれL、L/2、L/2である。よって、Gr-Genモジュール、DFSエンジン、Corrエンジンの総数は、それぞれ2×、4×、4×削減される。
【0140】
誤り訂正は、量子コンピュータに関連する古典的計算の一体的な部分である。誤り復号アルゴリズムは、より高い誤り訂正能力(閾値)を達成するように設計される。ここでは、ユニオン・ファインド復号器のハードウェア実装のマイクロアーキテクチャーが、77Kでの動作のためのCMOSを用いて開示される。シンドローム圧縮は、4K~77Kリンクの帯域幅要件を満たすために実現可能である。異なる圧縮方式は、異なるノイズ領域の下で異なる仕方で機能し、通例、スパース・データ表現は、より低い誤り率およびより大きな符号距離についてより良く機能する。開示されたマイクロアーキテクチャーは、復号器が数千の論理キュービットまでスケールアップする必要があることを念頭に設計される。このアーキテクチャーは、3つのパイプライン・ステージを含み、高い性能およびスループットならびに低いハードウェア複雑性のためにチューニングされる。この設計は、実用的なフォールトトレラント量子計算のために、より多数の論理キュービットのためにスケーリングされうる。各パイプライン・ステージで費やされる時間は異なり、よって各ステージの利用率は異なる。これを考慮することにより、複数の論理キュービットにわたる資源共有に依拠するアーキテクチャーが開示される。そのような資源共有は、論理的誤り率が影響を受けず、復号資源の不足のために誤りを復号することができないことによるシステム障害率が最小化されるように、有効にされる。
【0141】
いくつかの実施形態において、本明細書に記載される方法およびプロセスは、一つまたは複数の計算装置の計算システムに結び付けられてもよい。特に、そのような方法およびプロセスは、コンピュータ・アプリケーション・プログラムまたはサービス、アプリケーション・プログラミング・インターフェース(API)、ライブラリ、および/または他のコンピュータ・プログラム・プロダクトとして実装されてもよい。
【0142】
図31は、上述の方法およびプロセスのうちの一つまたは複数を実施できる計算システム3100の非限定的な実施形態を概略的に示す。計算システム3100は、簡略化された形で示される。計算システム3100は、上述し、図1に示されるホスト・コンピュータ装置を具現してもよい。計算システム3100は、一つまたは複数のパーソナルコンピュータ、サーバーコンピュータ、タブレットコンピュータ、家庭娯楽コンピュータ、ネットワーク計算装置、ゲーム装置、モバイル計算装置、モバイル通信装置(たとえば、スマートフォン)、および/または他の計算装置、ならびにスマート腕時計およびヘッドマウント式拡張現実装置などのウェアラブル計算装置の形をとってもよい。
【0143】
計算システム3100は、論理プロセッサ3102揮発性メモリ3104、および不揮発性記憶装置3106を含む。計算システム3100は、任意的に、表示サブシステム3108、入力サブシステム3110、通信サブシステム3112、および/または図31に示されない他の構成要素を含んでいてもよい。
【0144】
論理プロセッサ3102は、命令を実行するように構成された一つまたは複数の物理的な装置を含む。たとえば、論理プロセッサは、一つまたは複数のアプリケーション、プログラム、ルーチン、ライブラリ、オブジェクト、コンポーネント、データ構造、または他の論理構造体の一部である命令を実行するように構成されてもよい。そのような命令は、タスクを実行するため、データ・タイプを実装するため、一つまたは複数の構成要素の状態を変換するため、技術的効果を達成するため、または他の仕方で所望の結果に到達するために実装されうる。
【0145】
論理プロセッサは、ソフトウェア命令を実行するように構成された一つまたは複数の物理プロセッサ(ハードウェア)を含んでいてもよい。追加的または代替的に、論理プロセッサは、ハードウェアに実装された論理またはファームウェア命令を実行するように構成された一つまたは複数のハードウェア論理回路またはファームウェア装置を含んでいてもよい。論理プロセッサ3102のプロセッサは、シングルコアまたはマルチコアであってもよく、その上で実行される命令は、逐次、並列、および/または分散処理のために構成されてもよい。論理プロセッサの個々の構成要素は、任意的に、2つ以上の別個の装置間に分散されてもよく、これらの装置は、リモートに位置してもよく、および/または協調処理のために構成されてもよい。論理プロセッサの諸側面は、クラウドコンピューティング構成内に構成された遠隔アクセス可能なネットワーク化された計算装置によって仮想化され、実行されてもよい。そのような場合、これらの仮想化された側面は、さまざまな異なるマシンの異なる物理的な論理プロセッサ上で実行される。
【0146】
不揮発性記憶装置3106は、本明細書に記載される方法およびプロセスを実装するために論理プロセッサによって実行可能な命令を保持するように構成される一つまたは複数の物理的な装置を含む。そのような方法およびプロセスが実装される場合、不揮発性記憶装置3106の状態は、たとえば、異なるデータを保持するために変換されうる。
【0147】
不揮発性記憶装置3106は、取り外し可能および/または内蔵の物理的装置を含んでいてもよい。不揮発性記憶装置3106は、光メモリ(たとえば、CD、DVD、HD-DVD、Blu-Rayディスクなど)、半導体メモリ(たとえば、ROM、EPROM、EEPROM、フラッシュメモリなど)、および/または磁気メモリ(たとえば、ハードディスクドライブ、フロッピーディスクドライブ、テープドライブ、MRAMなど)、または他の大容量記憶装置技術を含んでいてもよい。不揮発性記憶装置3106は、不揮発性、動的、静的、読み取り/書き込み、読み出し専用、順次アクセス、位置アドレッシング可能、ファイルアドレッシング可能、および/またはコンテンツアドレッシング可能な装置を含んでいてもよい。不揮発性記憶装置3106は、不揮発性記憶装置3106への電力が遮断された場合でも、命令を保持するように構成されることが理解されるであろう。
【0148】
揮発性メモリ3104は、ランダムアクセスメモリを含む物理的な装置を含んでいてもよい。揮発性メモリ3104は、典型的には、ソフトウェア命令の処理中に情報を一時的に記憶するために論理プロセッサ3102によって利用される。揮発性メモリ3104は、典型的には、揮発性メモリ3104への電力が遮断される場合、命令を記憶し続けないことが理解されるであろう。
【0149】
論理プロセッサ3102、揮発性メモリ3104、および不揮発性記憶装置3106の諸側面は、一つまたは複数のハードウェア論理構成要素に一緒に統合されてもよい。そのようなハードウェア論理コンポーネントは、たとえば、フィールドプログラマブルゲートアレイ(FPGA)、プログラムおよびアプリケーション特有の集積回路(PASIC/ASIC)、プログラムおよびアプリケーション特有の標準製品(PSSP/ASSP)、システムオンチップ(SOC)、および複雑なプログラマブル可能論理デバイス(CPLD)を含むことができる。
【0150】
含まれる場合、表示サブシステム3108は、不揮発性記憶装置3106によって保持されるデータの視覚的表現を提示するために使用されてもよい。視覚的表現は、グラフィカル・ユーザー・インターフェース(GUI)の形をとることができる。本明細書に記載される方法およびプロセスが、不揮発性記憶装置によって保持されるデータを変更し、よって、不揮発性記憶装置の状態を変換すると、表示サブシステム3108の状態は、同様に、基礎になるデータの変化を視覚的に表すように変換されうる。表示サブシステム3108は、実質的に任意のタイプの技術を利用する一つまたは複数の表示装置を含んでいてもよい。そのような表示装置は、共有されるエンクロージャ内の論理プロセッサ3102、揮発性メモリ3104、および/または不揮発性記憶装置3106と組み合わされてもよく、またはそのような表示装置は、周辺表示装置であってもよい。
【0151】
含まれる場合、入力サブシステム3110は、キーボード、マウス、タッチスクリーン、またはゲームコントローラなどの一つまたは複数のユーザー入力装置を備えるか、またはそれらとインターフェースすることができる。いくつかの実施形態において、入力サブシステムは、選択された自然ユーザー入力(NUI)構成要素を備えるか、またはそれとインターフェースすることができる。そのような構成要素は、統合されていても、または周辺装置であってもよく、入力アクションのトランスダクションおよび/または処理は、オンボードまたはオフボードで処理されうる。例示的なNUI構成要素は、発話および/または声認識のためのマイクロフォン、機械視覚および/またはジェスチャー認識のための赤外線、カラー、立体視、および/または奥行きカメラ、動き検出および/または意図認識のためのヘッドトラッカー、アイトラッカー、加速度計、および/またはジャイロスコープ、ならびに脳活動を評価するための電界感知構成要素、および/または他の任意の好適なセンサーを含んでいてもよい。
【0152】
含まれる場合、通信サブシステム3112は、本明細書に記載されるさまざまな計算装置を互いに、および他の装置と通信的に結合するように構成されてもよい。通信サブシステム3112は、一つまたは複数の異なる通信プロトコルと互換性がある有線および/または無線通信装置を含んでいてもよい。非限定的な例として、通信サブシステムは、無線電話ネットワーク、または有線または無線のローカルまたは広域ネットワーク、たとえばWi-Fi接続上のHDMIを介した通信のために構成されてもよい。いくつかの実施形態において、通信サブシステムは、計算システム3100が、インターネットなどのネットワークを介して、他の装置との間で、および/または他の装置から、メッセージを送信および/または受信することを可能にしてもよい。
【0153】
一例では、量子計算装置は、l個の論理キュービットを含む少なくとも1つの量子レジスタであって、lは正の整数である、量子レジスタと;前記少なくとも1つの量子レジスタに結合されたd個の復号器ブロックの集合であって、d<2*lである、復号器ブロックの集合とを有する。そのような例または他の任意の例において、各復号器ブロックは、追加的または代替的に、n個の論理キュービットの集合から復号要求を受領するように構成される。ここで、n>1である。前述の例のいずれか、または他の任意の例において、各復号器ブロックは、追加的または代替的に、g個のグラフ生成器(Gr-Gen)モジュールを有する。ここで、0<g≦lである。前述の例のいずれか、または他の任意の例において、各復号器ブロックは、追加的または代替的に、α*l個の深さ優先探索(DFS)エンジンを有し、ここで、0<α<1である。前述の例のいずれか、または他の任意の例において、2つ以上のGr-Genモジュールが、追加的または代替的に、各DFSエンジンに、第1の集合のマルチプレクサのうちの1つを介して結合される。前述の例のいずれか、または他の任意の例において、各復号器ブロックは、追加的または代替的に、β*l個の訂正(Corr)エンジンを有し、ここで、0<β<1である。前述の例のいずれか、または他の任意の例において、2つ以上のDFSエンジンが、追加的または代替的に、各Corrエンジンに、第2の集合のマルチプレクサのうちの1つを介して結合される。前述の例のいずれか、または他の任意の例において、各Corrエンジンによって生成されたメモリ要求は、追加的または代替的に、一つまたは複数のデマルチプレクサを介してメモリ位置にルーティングされる。前述の例のいずれか、または他の任意の例において、戻り信号は、追加的または代替的に、ラウンドロビン調停に基づいて、前記第1および第2の集合のマルチプレクサの各マルチプレクサを通じてルーティングされる。
【0154】
別の例では、量子計算装置の方法は、l個の論理キュービットを含む少なくとも1つの量子レジスタからシンドロームを生成する段階であって、lは正の整数である、段階と;生成されたシンドロームを、前記少なくとも1つの量子レジスタに結合されたd復号器ブロックの集合にルーティングする段階であって、d<2*lである、段階とを含む。そのような例または他の任意の例において、各復号器ブロックは、追加的または代替的に、n個の論理キュービットの集合から復号要求を受領するように構成され、ここで、n>1である。前述の例のいずれか、または他の任意の例において、各復号器ブロックは、追加的または代替的に、g個のグラフ生成器(Gr-Gen)モジュールを有し、ここで、0<g≦lであり、各Gr-Genモジュールは、受領されたシンドロームに基づいてスパニング木メモリ(STM)データを生成するように構成される。前述の例のいずれか、または他の任意の例において、各復号器ブロックは、追加的または代替的に、α*l個の深さ優先探索(DFS)エンジンを含み、ここで、0<α<1である。前述の例のいずれか、または他の任意の例において、本方法は、追加的または代替的に、各DFSエンジンにおいて、2つ以上のGr-Genモジュールによって生成されたSTMデータに第1の集合のマルチプレクサのうちの1つを介してアクセスする段階と、前記STMデータに基づいてエッジ・スタックを生成する段階とを含む。前述の例のいずれか、または他の任意の例において、各復号器ブロックは、追加的または代替的に、β*l個の訂正(Corr)エンジンを含む。ここで、0<β<1である。前述の例のいずれか、または他の任意の例において、本方法は、追加的または代替的に、各Corrエンジンにおいて、第2の集合のマルチプレクサのうちの1つを介して、2つ以上のDFSエンジンによって生成されたエッジ・スタックにアクセスする段階と;アクセスされたエッジ・スタックに基づいてメモリ要求を生成する段階とを含む。前述の例のいずれか、または他の任意の例において、本方法は、追加的または代替的に、各Corrエンジンによって生成されたメモリ要求を、一つまたは複数のデマルチプレクサを介してメモリ位置にルーティングすることを含む。前述の例のいずれか、または他の任意の例において、本方法は、追加的または代替的に、ラウンドロビン・アーキテクチャーに基づいて、第1および第2の集合のマルチプレクサの各マルチプレクサを通じて戻り信号をルーティングすることを含む。
【0155】
さらに別の例では、量子計算装置は、l個の論理キュービットを含む少なくとも1つの量子レジスタであって、lは正の整数である、論理レジスタと;前記少なくとも1つの量子レジスタに結合されたd個の復号器ブロックの集合であって、d<2*lであり、各復号器ブロックは:g個のグラフ生成器(Gr-Gen)モジュールであって、0<g≦lであり、各Gr-Genモジュールは、前記論理キュービットのうちの2つ以上から受領されるシンドロームに基づいてスパニング木メモリ(STM)データを生成するように構成されている、Gr-Genモジュールと;α*l個の深さ優先探索(DFS)エンジンであって、0<α<1であり、各DFSエンジンは:第1の集合のマルチプレクサのうちの1つを介して、2つ以上のGr-Gen生成器によって生成されたSTMデータにアクセスし、STMデータに基づいてエッジ・スタックを生成するように構成されている、DFSエンジンと;β*l個の訂正(Corr)エンジンであって、0<β<1であり、各Corrエンジンは:第2の集合のマルチプレクサのうちの1つを介して、2つ以上のDFSエンジンによって生成されたエッジ・スタックにアクセスし;アクセスされたエッジ・スタックに基づいてメモリ要求を生成し;生成されたメモリ要求を一つまたは複数のデマルチプレクサを介してメモリ位置にルーティングするように構成されている、Corrエンジンとを有する。そのような例、または他の任意の例において、量子計算装置は、追加的または代替的に、各論理キュービットに結合された圧縮エンジンであって、前記圧縮エンジンは、シンドローム・データを圧縮するように構成されている、圧縮エンジンと;各圧縮エンジンに結合された圧縮解除エンジンとを有しており、各圧縮解除エンジンは:圧縮されたシンドローム・データを受け取り、受け取った圧縮されたシンドローム・データを圧縮解除し、圧縮解除されたシンドローム・データをd個の復号器ブロックの集合のうちのある復号器にルーティングするように構成されている。
【0156】
本明細書に記載された構成および/またはアプローチは、本質的に例示的なものであり、これらの特定の実施形態または例は、多くの変形が可能であるため、限定的な意味で考慮されるべきではないことが理解されよう。本明細書に記載される特定のルーチンまたは方法は、任意の数の処理戦略のうちの一つまたは複数を表すことができる。よって、図示されおよび/または記載されたさまざまな工程は、図示されおよび/または記載されたシーケンスで、他のシーケンスで、並列に実行されてもよく、または省略されてもよい。同様に、上述したプロセスの順序も変更されうる。
【0157】
本開示の主題は、さまざまなプロセス、システムおよび構成、ならびに本明細書に開示された他の特徴、機能、工程、および/または特性、ならびにそれらのすべての等価物の、すべての新規および非自明の組み合わせおよびサブコンビネーションを含む。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
【国際調査報告】