様々な図面における同様の参照番号および名称は、同様の要素を示す。
量子コンピューティングシステムにおけるキュービットは、最近接相互作用を使用して、2次元グリッドにおいて配置され、動作させられ得る。ただし、そのようなグリッドでは、互いに対して斜めに対向するキュービット間の結合が、それらの隣接のために比較的大きい。そのような結合は寄生的であり-意図されず、制御されない。たとえば、2つの斜めのキュービットが寄生結合を形成する場合、キュービットは、たとえば、キュービットのうちの一方または両方において不要な遷移を引き起こすことによって、意図されず、制御されない方法で、互いに影響を及ぼすことがある。キュービットにおける不要な遷移は、キュービットの状態を、たとえば、ある計算状態から別の計算状態へとフリップさせるか、または、計算部分空間の外側のより高いキュービットレベルへの遷移を引き起こし得る。そのような遷移は、キュービットによって実行される計算に誤りを導入し得る。したがって、量子コンピュータを、特に大規模に動作させるとき、キュービット間の寄生結合を最小限に抑えることは、量子コンピューティングにおける重要な課題である。
例示的な動作環境
図1は、例示的な量子コンピューティングシステム100のブロック図である。例示的な量子コンピューティングシステム100は、(白抜きの円および塗りつぶされた円として表された)複数のキュービット102と、キュービットコントローラモジュール104とを含む。例示的な量子コンピューティングシステム100は、量子アルゴリズム的な動作、シミュレーション、または計算を実行するために使用され得る、システムの一例である。
複数のキュービット102が、2次元グリッド112として配置される。明快のために、図1に示された2次元グリッド112は、7×7のキュービットを含むが、いくつかの実装形態では、システム100は、より少数またはより多数のキュービットを含み得る。複数のキュービット102は、複数のキュービット結合器、たとえば、キュービット結合器114を通して、互いに相互作用する。複数のキュービット結合器は、複数のキュービット102の間の最近接相互作用を定義する。いくつかの実装形態では、複数のキュービット結合器の強度gは、調節可能なパラメータである。場合によっては、量子コンピューティングシステム100中に含まれた複数のキュービット結合器は、固定された結合強度をもつ結合器であり得る。
いくつかの実装形態では、複数のキュービット102は、データキュービット、たとえば、キュービット118などの白抜きの円と、測定キュービット、たとえば、キュービット116などの塗りつぶされた円とを含み得る。データキュービットは、システム100によって実行されている計算に関与するキュービットである。測定キュービットは、データキュービットによって実行された計算の結果を決定するために使用され得るキュービットである。すなわち、計算の間、データキュービットの未知の状態が、好適な物理的動作を使用して、測定キュービットに転送され、測定キュービット上で実行される好適な測定動作を介して測定される。
複数のデータキュービットは、それぞれの周波数領域からのキュービット周波数において動作するように各々構成される。たとえば、各データキュービットは、複数のデータキュービット周波数領域のうちの1つからのそれぞれのデータキュービット周波数において動作するように構成され得る。同様に、各測定キュービットは、複数の測定キュービット周波数領域のうちの1つからのそれぞれの測定キュービット周波数において動作するように構成され得る。
キュービット周波数領域は、計算キュービット周波数領域を含み得る。たとえば、各データまたは測定キュービットは、たとえば、キュービットが計算またはアルゴリズム的動作に関係するとき、それぞれの計算キュービット周波数領域からのキュービット周波数において動作するように構成され得る。キュービット計算基礎状態間の遷移が、キュービット周波数において起こる場合、キュービットは、計算キュービット周波数領域からのキュービット周波数において動作すると言われることがある。
キュービット周波数領域は、アイドリングキュービット周波数領域を含み得る。たとえば、各データまたは測定キュービットは、たとえば、キュービットがアイドリング中であり、相互作用または計算動作に関係しないとき、それぞれのアイドリングキュービット周波数領域からのキュービット周波数において動作するように構成され得る。キュービットのための所期のユニタリーが、設定された持続時間の間にユニティIIである場合、キュービットは、その持続時間の間、アイドリングキュービット周波数領域からのキュービット周波数において動作すると言われることがある。したがって、キュービットは、もつれ量子論理ゲート動作に関与しておらず-ユニティユニタリー(unity unitary)をもつエコーパルスのみがキュービットに印加され、その場合、エコーパルスは、環境に対するキュービットの感受性を低減するように設計される、X軸および/またはY軸の周りの定義された回転である。言い換えれば、他のキュービットが相互作用を実行するか、またはユニタリー演算を受ける間、キュービットは、そのキュービットと他のキュービットとの間の相互作用を最小限に抑える、アイドリングキュービット周波数領域からの周波数において休止中であると言われることがある。
キュービット周波数領域は、相互作用キュービット周波数領域を含み得る。たとえば、データおよび測定キュービットは、たとえば、データおよび測定キュービットが相互作用するとき、それぞれの相互作用周波数領域からのそれぞれのキュービット周波数において動作するように構成され得る。
キュービット周波数領域は、読出しおよびリセット周波数領域を含み得る。たとえば、測定キュービットは、たとえば、測定動作が測定キュービット上で実行されているとき、それぞれの読出しおよびリセット周波数領域からのキュービット周波数において動作するように構成され得る。キュービット周波数が、測定またはリセット動作をもたらすために、読出し共振器または他の測定デバイスの動作周波数に近いか、または整合している場合、キュービットは、読出しおよびリセットキュービット周波数領域からのキュービット周波数において動作すると言われることがある。
データキュービットおよび測定キュービットは、キュービット結合器がデータキュービットと測定キュービットとの間の最近接相互作用を定義するように配置される。すなわち、各データキュービットが、複数の測定キュービットに結合され、各測定キュービットが、複数のデータキュービットに結合される。
他の実装形態では、複数のキュービット102は、複数のデータキュービットおよび複数の測定キュービットに分離されないことがある。たとえば、システム100が、表面符号を実装していない量子コンピュータ、たとえば、スプレマシーアルゴリズムなど、1つまたは複数の量子アルゴリズムを実行するために使用される量子コンピュータを含む場合には、システムは、データキュービットと測定キュービットとを区別する必要がないことがある。これらの例では、開示するシステムおよび方法は、量子アルゴリズムを実行するために必要とされる量子論理ゲートのレイヤの数を低減し、したがって、アルゴリズムの速度を上げ、アルゴリズムの誤りを低減するために使用され得る。
データキュービットと測定キュービットとの間の区別がない場合には、本明細書で説明する同じプロセスが使用され得る。たとえば、キュービットは、それぞれの周波数領域内のキュービット周波数において動作するように構成され得る。いくつかのキュービットは、複数の異なる第1のキュービット周波数領域のうちの1つの中のそれぞれのキュービット周波数において動作するように構成され得る。他のキュービットは、複数の異なる第2のキュービット周波数領域のうちの1つの中のそれぞれのキュービット周波数において動作するように構成され得る。複数の第1のキュービット周波数領域および第2のキュービット周波数領域におけるキュービット周波数領域は、それぞれの計算周波数領域と、アイドリング周波数領域と、相互作用周波数領域と、読出し/リセット周波数領域とを含み得る。
本明細書で説明するように、例示的な2次元グリッド112は、互いに対して斜めに対向するキュービット間の寄生結合、たとえば、寄生結合120を含み得る。場合によっては、キュービット間の寄生結合は、非ゼロの寄生結合強度gdiagを含む。たとえば、場合によっては、寄生結合強度は、gdiag/π〜5MHzまでの値を取り得る。
2次元グリッド112における複数のキュービット102は、キュービットコントローラモジュール104を介して動作させられる。キュービットコントローラモジュール104は、たとえば、キュービット動作周波数108に従って、キュービット102の周波数を制御することによって、キュービット102を動作させ得る。キュービット動作周波数は、システム100中に含まれたキュービットのタイプ、およびシステムによって実行されている動作に依存する。斜めのキュービット間の寄生相互作用を低減するための例示的なキュービット動作周波数パターンについて、図2〜図4を参照しながら以下で詳細に説明する。
たとえば、キュービットコントローラモジュール104は、キュービットのうちの1つまたは複数の周波数が、励起駆動ライン124上で励起パルス発生器110によって発生させられた励起パルスの周波数、たとえば、もつれ動作周波数106の方に、またはそれから離れるように調整されるように、キュービット102の個々の周波数を制御し得る。励起パルス発生器110によって発生させられた励起パルスは、その周波数が量子演算、たとえば、量子論理ゲートを実装するパルスを含み得る。たとえば、励起パルス発生器110は、その周波数が1つまたは複数のキュービットにもつれ動作、たとえば、制御Zゲートを実行させる、励起パルスを発生するように構成され得る。キュービットの2次元グリッド上のもつれ動作の実行について、図2〜図5を参照しながら以下でより詳細に説明する。
複数のキュービットが、それぞれの結合器、たとえば、結合器126を介して、励起駆動ラインに結合され得る。場合によっては、結合器は、たとえば、キュービットキャパシタに隣接して走るマイクロ波ラインによって実現される、容量性結合器であり得る。便宜上、グローバル励起駆動ラインが図1に示されている。ただし、いくつかの実装形態では、システム100は、たとえば、複数のキュービットに対応する複数の励起駆動ラインを含み得る。
キュービットコントローラモジュール104は、1つまたは複数のキュービット周波数制御ライン、たとえば、キュービット周波数制御ライン122を通して、キュービット102の周波数を調整するように構成され得る。便宜上、1つのキュービット周波数制御ラインが、図1に示されている。ただし、いくつかの実装形態では、システム100は、たとえば、複数のキュービット102の各々に対応する複数のキュービット周波数制御ラインを含み得る。キュービット周波数制御ラインは、面内の配線または面外の配線によって供給され得る。
システム100が利用するキュービットコントローラ104のタイプは、システムが使用するキュービットのタイプに依存する。一例として、原子、分子、またはソリッドステート量子システムを介して実現されるキュービットは、典型的には、マイクロ波または光学領域における関連するキュービットレベルのエネルギー分離を有する。そのようなキュービットの状態は、マイクロ波または光場など、外部場を使用して操作および制御され得る。そのような場合、一例として、無線周波数とマイクロ波構造の両方を特徴付ける、それらのブロードバンド光学スペクトルのために、モードロックされたレーザーが、キュービットコントローラとして働き得る。別の例では、キュービットコントローラは、無線周波数発生器によって実現された個々のキュービットコントローラの集合、ならびに、無線周波数またはマイクロ波発生器によって実現されたグローバル励起コントローラの1つまたは集合を含み得る。どちらの場合も、キュービットコントローラは、手動で動作させられ得るか、またはコンピュータに接続され、必要とされたキュービット動作を指定し、自動的に実行することを可能にする、好適なソフトウェアを介して制御され得る。
ハードウェアのプログラミング:寄生相互作用を減らすための量子ビット周波数パターン
便宜上、図2〜図4を参照しながら以下で提供する本開示について、データキュービットと測定キュービットとの間の最近接相互作用を定義するキュービット結合器を介して相互作用する、複数のデータキュービットと複数の測定キュービットとを含む、複数のキュービットのシステムを参照しながら説明する。ただし、これは、本明細書で説明する技法を使用してプログラムされ、動作させられ得る、キュービットのシステムの一例である。たとえば、いくつかの実装形態では、以下の技法は、データまたは測定キュービットの間で区別しないキュービットのシステムをプログラムし、動作させるために使用され得る。たとえば、キュービットのシステムが、量子アルゴリズム、たとえば、スプレマシーアルゴリズムを実行するために使用される場合には、キュービットは区別不可能であり得る。データキュービットと測定キュービットとを区別することが必要とされない設定では、以下の配置およびプロセスが依然として使用され得る。
図2は、キュービットのシステムを動作させるための例示的なプロセス200のフロー図である。便宜上、プロセス200について、1つまたは複数の位置に位置する1つまたは複数の量子または古典的なコンピュータのシステムによって実行されるものとして説明する。たとえば、プロセス200は、図1を参照しながら上記で説明したシステム100のキュービットコントローラ104を使用して実施され得る。
キュービットのシステムは、最近接相互作用を定義するキュービット結合器を介して相互作用するキュービットを含む。いくつかの実装形態では、キュービットのシステムは、データキュービットと測定キュービットとの間の最近接相互作用を定義するキュービット結合器を介して相互作用する、複数のデータキュービットと複数の測定キュービットとを含み得る。キュービットのシステムは、2次元グリッドとして配置され、複数のデータキュービットのうちの各データキュービットは、複数のキュービット結合器を通して、複数の測定キュービットに結合される。各データキュービットは、複数のデータキュービット周波数領域のうちの1つからのデータキュービット周波数において動作するように構成される。各測定キュービットは、複数の測定キュービット周波数領域のうちの1つからの測定キュービット周波数において動作するように構成される。例示的なデータキュービット周波数領域および測定キュービット周波数領域について、ステップ202および204を参照しながら以下で説明する。例示的なキュービットのシステムについては、図1を参照しながら示している。
システムは、第1のデータキュービット周波数領域からの第1のデータキュービット周波数において、複数のデータキュービットからの第1のデータキュービットを動作させる(ステップ202)。たとえば、図3Aを参照しながら以下で説明する概略データキュービット周波数パターン300に示されているように、データキュービット302は、それぞれのデータキュービット周波数領域Bからのデータキュービット周波数bにおいて動作させられ得る。
システムは、第2のデータキュービット周波数領域からの第2のデータキュービット周波数において、複数のデータキュービットからの第2のデータキュービットを動作させる(ステップ204)。第2のデータキュービットは、2次元グリッドにおいて第1のデータキュービットに対して斜めであるデータキュービットである。たとえば、図3Aを参照しながら以下で説明する概略データキュービット周波数パターン300に示されているように、システムは、それぞれのデータキュービット周波数領域Aからのデータキュービット周波数aにおいて、第2のキュービット、たとえば、キュービット304を動作させ得る。
第2のデータキュービット周波数および第2のデータキュービット周波数領域は、それぞれ、第1のデータキュービット周波数および第1のデータキュービット周波数領域とは異なる。たとえば、図3Aを参照しながら以下で説明する概略データキュービット周波数パターン300に示されているように、第1のデータキュービット302は、それぞれのデータキュービット周波数領域Bからのデータキュービット周波数bにおいて動作させられ得、データキュービット302に対して斜めである第2のデータキュービット304は、異なるデータキュービット周波数領域Aからのデータキュービット周波数aにおいて動作させられ得る。
いくつかの実装形態では、システムは、第2のデータキュービット周波数において、複数のデータキュービットからの第3のデータキュービットをさらに動作させ得る。第3のデータキュービットは、第2のデータキュービットとは異なり、2次元において第1のデータキュービットに対して斜めである。たとえば、図3Aを参照しながら以下で説明する概略データキュービット周波数パターン300に示されているように、システムは、それぞれのデータキュービット周波数領域Bからのデータキュービット周波数bにおいて、第1のデータキュービット302を動作させ、異なるデータキュービット周波数領域Aからのデータキュービット周波数aにおいて、データキュービット302に対して斜めである第2のデータキュービット304を動作させ、第2のデータキュービット304とは異なり、第1のデータキュービット302に対して斜めである、第3のデータキュービット306を動作させ得る。
いくつかの実装形態では、システムは、第3のデータキュービット周波数領域からのそれぞれの第4のデータキュービット周波数、および第3のデータキュービット周波数領域からの第5のデータキュービット周波数において、複数のデータキュービットからの第4のデータキュービットおよび第5のデータキュービットをさらに動作させ得る。第3のデータキュービット周波数領域は、第1のデータキュービット周波数領域とは異なる。第4のデータキュービットおよび第5のデータキュービットは、第1のデータキュービットに対して斜めである。
たとえば、図3Aを参照しながら以下で説明する概略データキュービット周波数パターン300に示されているように、システムは、それぞれのデータキュービット周波数領域Bからのデータキュービット周波数bにおいて、第1のデータキュービット302を動作させ、データキュービット周波数領域Aからのデータキュービット周波数aにおいて、第2のデータキュービット304を動作させ、データキュービット周波数領域Aからのデータキュービット周波数a'において、第3のデータキュービット306を動作させ、データキュービット周波数領域Aからのデータキュービット周波数aにおいて、第4のデータキュービット310を動作させ、データキュービット周波数領域Aからのデータキュービット周波数a'において、第5のデータキュービット308を動作させ得る。いくつかの実装形態では、第3のデータキュービット周波数領域は、第2のデータキュービット周波数領域と同じであり得る。他の実装形態では、第3のデータキュービット周波数領域は、第2のデータキュービット周波数領域とは異なり得、たとえば、データキュービット308および310は、それぞれ、データキュービット周波数c'およびcにおいて動作し得る。
図3Aの概略データキュービット周波数パターン300に示されているように、いくつかの実装形態では、複数のデータキュービット周波数領域は、2つのデータキュービット周波数領域、たとえば、第1の領域Aと第2の領域Bとを含む。これらの実装形態では、各領域からのデータキュービット周波数は、-2ηだけオフセットされ得、ただし、ηは、システムの非線形性を表す。たとえば、データキュービット周波数a∈Aおよびb∈Bは、2ηだけ異なり得る。なぜ周波数差がシステムの非線形性に依存するかの1つの説明は、次の通りである。アイドリングしているキュービットは、斜めのキュービットからの寄生相互作用によって影響を受け得る。これらの影響を最小限に抑えるために、斜めのキュービット間の周波数差が最適に選択される。斜めのキュービットの影響は、システムの非線形性によって表され得る。したがって、システムの非線形性を解析することによって、斜めのキュービットの影響を局所的に最小限に抑える様々な周波数値の範囲を発見することができる。すなわち、システム非線形性は、どのようにキュービット間の寄生相互作用を最小限に抑えるか、および、したがって、どのようにシステムにおける誤りを最小限に抑えるかの指示をもたらす。単一のキュービットについての、斜めのキュービットからの寄生相互作用に起因する周波数シフトからのアイドリングZZ誤り(y軸)、対、キュービット周波数をシステム非線形性で除算したもの(x軸)を示す例示的なプロットが、図3Bに示される。
加えて、いくつかの実装形態では、特定のデータキュービット周波数領域からのデータキュービット周波数は、あらかじめ決定された周波数領域、たとえば、幅10MHzのあらかじめ決定された周波数領域内の周波数を含み得る。たとえば、図3Aのデータキュービット304および306は、それぞれ、データキュービット周波数aおよびa'において動作し得、ただし、aおよびa'は、約10MHzだけ異なる。
さらに、いくつかの実装形態では、あらかじめ決定された周波数領域内のデータキュービット周波数間の差が、次近接結合定数gよりも大きいことを保証することによって、スワッピングが回避され得る。たとえば、キュービット302に対して斜めであるキュービット304および306のデータキュービット周波数a、a'の間の差は、gよりも大きくなり得、たとえば、(a-a')>>gである。次近接結合定数g=1MHzでは、10MHzのaとa'との間の離調が許容可能である。
図3Aの概略データキュービット周波数パターン350に示されているように、いくつかの実装形態では、複数のデータキュービット周波数領域は、4つのデータキュービット周波数領域、たとえば、領域A、B、CおよびDを含む。複数の周波数領域によって、たとえば、グローバルXY励起駆動ラインを使用して、キュービットが「パーク」され、個々に制御されることが可能になる。たとえば、η=200MHzでは、データキュービットは、6GHzと7GHzとの間の周波数において、たとえば、6.7GHz、6.3GHz、6.8GHz、および6.2GHzにおいて、パークされるか、または動作させられ得る。
これらの実装形態では、複数のデータキュービット周波数領域は、第1のアイドリング周波数領域を含み得る。データキュービットが、キュービットのシステムによって実行されているアルゴリズム的計算に能動的に関係しておらず、アイドリング中であるとき、データキュービットは、アイドリング周波数において動作するように構成され得る。
複数のデータキュービット周波数領域は、第1のエコー動作周波数領域をさらに含み得る。データキュービットは、エコー動作がデータキュービット上で実行されているとき、エコー動作周波数において動作するように構成され得る。
複数のデータ周波数領域は、第1のシングルキュービットゲート周波数領域をさらに含み得る。シングルキュービット量子ゲート、たとえば、アダマール量子論理ゲート、またはパウリX、YもしくはZ量子論理ゲートが、データキュービット上で実行されているとき、データキュービットは、シングルキュービットゲート周波数領域において動作するように構成され得る。
複数のデータ周波数領域は、相互作用周波数領域をさらに含み得る。データキュービットが近隣の測定キュービットと相互作用中であるとき、たとえば、もつれ動作が、ペアリングされたデータおよび近隣の測定キュービット上で実行されるとき、データキュービットは、相互作用周波数領域において動作するように構成され得る。例示的なデータキュービット周波数領域については、図4を参照しながら示す。
複数のデータキュービット周波数領域が4つのデータキュービット周波数領域を含む実装形態では、キュービットのシステムを動作させることは、各データキュービットについて、データキュービット周波数領域からのデータキュービット周波数において、データキュービットを動作させることを含み得、その場合、データキュービットに対して斜めである各他のデータキュービットが、異なるデータキュービット周波数領域からのそれぞれの他のデータキュービット周波数において動作させられ、データキュービットに対して斜めである対向する他のデータキュービットが、異なるデータキュービット周波数領域からのそれぞれの他のデータキュービット周波数において動作させられる。
たとえば、図3Aの概略データキュービット周波数パターン350に示されているように、データキュービット352は、それぞれのデータキュービット周波数領域Bからのデータキュービット周波数bにおいて動作させられ得、データキュービット352に対して斜めである各他のデータキュービット、たとえば、データキュービット354、356、358、および360は、異なるデータキュービット周波数領域AおよびCからのデータキュービット周波数a、a'、c、またはc'において動作させられ得る。データキュービット352に対して斜めである対向する他のデータキュービット、たとえば、データキュービット356および358、またはデータキュービット354および360は、異なるデータキュービット周波数領域からのそれぞれのデータキュービット周波数において動作する。すなわち、データキュービット356は、データキュービット周波数領域Aからの周波数において動作し、データキュービット358は、異なるデータキュービット周波数領域Cからの周波数において動作する。同様に、データキュービット354は、データキュービット周波数領域Aからの周波数において動作し、データキュービット360は、異なるデータキュービット周波数領域Cからの周波数において動作する。
これらの実装形態では、斜めのデータキュービットに対応するデータキュービット周波数は、-2ηだけオフセットされ得、たとえば、(a-b)/η≧2である。たとえば、概略データキュービット周波数パターン350では、データキュービット周波数は、a=0、b=-2η、c=0.5η、d=-2.5ηとして設定され得る。いくつかの実装形態では、η=0.2GHzであり、同様のキュービット-データまたは測定キュービット-がパークされ得る周波数領域では、約0.8〜1.0GHzの周波数範囲を与える。たとえば、すべてのデータキュービットが、6〜7GHzの間の周波数、たとえば、0.8〜1GHzの範囲においてパークされ、すべての測定キュービットが、4〜5GHzの間でパークされる場合、相互作用は、5GHzと6GHzとの間で起こり得る。ただし、他のレイアウトも可能である。
加えて、いくつかの実装形態では、特定のデータキュービット周波数領域からのデータキュービット周波数は、あらかじめ決定された周波数領域、たとえば、幅10MHzのあらかじめ決定された周波数領域内の周波数を含み得る。たとえば、図3Aのデータキュービット354および356は、それぞれ、データキュービット周波数aおよびa'において動作し得、ただし、aおよびa'は、約10MHzだけ異なる。
さらに、いくつかの実装形態では、キュービットに対して斜めである他のデータキュービット周波数、たとえば、データキュービット周波数a、a'、またはc、c'の間の差は、最近接結合定数gよりも大きくなり得、たとえば、(a-a')>>gである。
たとえば、図4を参照しながら本明細書で説明するように、上記で説明したデータキュービット周波数パターンは、もつれ動作、たとえば、制御Z量子論理ゲートにおける稠密なパターンが、同じ周波数における最近接-斜めを含む-キュービットなしに実行されることを容易にする。したがって、寄生相互作用が低減され得る。
上記で説明したデータキュービットの性質はまた、キュービットのシステムにおける複数の測定キュービットにも当てはまり得る。たとえば、キュービットのシステムを動作させることは、各測定キュービットについて、測定キュービット周波数領域からの測定キュービット周波数において、測定キュービットを動作させることをさらに含み得、その場合、測定キュービットに対して斜めである各他の測定キュービットが、異なる測定キュービット周波数領域からのそれぞれの他の測定キュービット周波数において動作させられる。
いくつかの実装形態では、複数の測定キュービット周波数領域は、2つの測定キュービット周波数領域を含む。測定キュービット周波数および他の測定キュービット周波数は、2ηだけ異なり得る。他の測定キュービット周波数は、場合によっては、幅10MHzのあらかじめ決定された周波数領域を含む、あらかじめ決定された周波数領域内の周波数を含み得る。あらかじめ決定された周波数領域内の他の測定キュービット周波数の間の差は、最近接結合定数gよりも大きくなり得る。
いくつかの実装形態では、複数の測定キュービット周波数領域は、場合によっては、第2のアイドリング周波数領域と、第2のエコー動作周波数領域と、第2のシングルキュービットゲート周波数領域と、第2の相互作用周波数領域とを含む、4つの測定キュービット周波数領域を含み得る。たとえば、データキュービットは、6GHzと7GHzとの間の周波数において、パークされるか、または動作させられ得、測定キュービットは、4GHzと5GHzとの間の周波数において、パークされるか、または動作させられ得、キュービット間の相互作用は、5GHzと6GHzとの間で起こり得る。
これらの例では、キュービットのシステムを動作させることは、各測定キュービットについて、測定キュービット周波数領域からの測定キュービット周波数において、測定キュービットを動作させることをさらに含み得、その場合、測定キュービットに対して斜めである各他の測定キュービットが、異なる測定キュービット周波数領域からのそれぞれの他の測定キュービット周波数において動作させられ、測定キュービットに対して斜めである対向する他の測定キュービットが、異なる測定キュービット周波数領域からのそれぞれの他の測定キュービット周波数において動作させられる。
いくつかの実装形態では、斜めの測定キュービットが、2ηだけオフセットされ得、場合によっては、η=0.2GHzである。同じ測定キュービット周波数領域からの他の測定キュービット周波数は、場合によっては、幅10MHzのあらかじめ決定された周波数領域を含む、あらかじめ決定された周波数領域内の周波数を含み得る。同じ測定キュービット周波数領域からの他の測定キュービット周波数の間の差は、gよりも大きい。
いくつかの実装形態では、複数の測定キュービット周波数領域のうちの1つに隣接する読出しおよびリセット周波数領域が含まれ得る。測定キュービット周波数領域に隣接する読出しおよびリセット周波数領域を配置することによって、大きい分散、およびしたがって大きい測定信号を得るために、キュービットの周波数が、読出し共振器に近いように調整されることが可能になる。加えて、測定キュービット周波数領域に隣接する読出しおよびリセット周波数領域を配置することによって、読出し共振器を用いた測定キュービットのリセット動作が可能になる。さらに、測定キュービット周波数領域に隣接する読出しおよびリセット周波数領域を配置することによって、読出し共振器を越える測定キュービットの移動が可能になり、測定キュービットに悪影響を与えることなしに、大きい分散、および大きい信号を得るために、読出し共振器に近いデータキュービットの移動が可能になる。
図3Aは、例示的な概略データキュービット周波数パターン300および350を示す。例示的な概略データキュービット周波数パターン300は、最近接相互作用を介して複数の測定キュービットに結合された、複数のデータキュービット、たとえば、データキュービット302、304、306、308、および310を示す。例示的な概略データキュービット周波数パターン300は、2つのデータキュービット周波数領域AおよびBからのデータキュービット周波数a、a'、b、b'において動作させられたデータキュービットを示す。例示的な概略データキュービット周波数パターン300における各データキュービットは、斜めに隣接するデータキュービットがそれにおいて動作するデータキュービット周波数とは異なるデータキュービット周波数において動作させられる。たとえば、データキュービット302は、周波数領域Bからのデータキュービット周波数bにおいて動作するが、その斜めに隣接するデータキュービット304、306、308、および310は、周波数領域Aからの、それぞれ、データキュービット周波数a、a'、a'、およびaにおいて動作する。
例示的な概略データキュービット周波数パターン350は、最近接相互作用を介して複数の測定キュービットに結合された、複数のデータキュービット、たとえば、データキュービット352、354、356、358、および360を示す。例示的な概略データキュービット周波数パターン350は、データキュービット周波数a、a'、b、b'、c、c'、およびd、d'において動作させられたデータキュービットを示す。データキュービット周波数は、4つのそれぞれのデータキュービット周波数領域、たとえば、領域A、B、C、およびDからの周波数であり得る。例示的な概略データキュービット周波数パターン350における各データキュービットは、斜めに隣接するデータキュービットがそれにおいて動作するデータキュービット周波数とは異なるデータキュービット周波数において動作させられる。加えて、データキュービットに対して斜めに隣接し、互いに対して斜めに対向するキュービット、たとえば、キュービット356および358は、異なるデータキュービット周波数において動作する。たとえば、データキュービット352は、周波数領域Bからのデータキュービット周波数bにおいて動作するが、その斜めに隣接するデータキュービット354および360は、互いに対して斜めに対向するので、それぞれ、周波数領域AおよびCからの、データキュービット周波数aおよびc'において動作する。同様に、その斜めに隣接するデータキュービット356および358は、互いに対して斜めに対向するので、それぞれ、周波数領域AおよびCからの、データキュービット周波数a'およびcにおいて動作する。
図4は、例示的なデータキュービット周波数および測定キュービット周波数400を示す。例示的なデータキュービット周波数および測定キュービット周波数は、周波数範囲410、412、および414に及ぶ、9つの異なる周波数を含む。4つの周波数は、データキュービット周波数402である。4つの周波数は、測定キュービット周波数406である。データキュービット周波数のうちの1つは、相互作用周波数404である。同様に、測定キュービット周波数のうちの1つは、相互作用周波数404である。1つの周波数は、読出しおよびリセット周波数408である。この周波数の構成によって、もつれ動作、たとえば、制御Z量子論理ゲートにおける稠密なパターンが、同じ周波数における近隣の-斜めを含む-キュービットなしに実行されることが可能になる。したがって、キュービットが幾何学的に十分に分離されるので、寄生相互作用が低減され得る。
周波数範囲410におけるデータキュービット周波数1、2は、アイドリングデータキュービット周波数である。同様に、周波数範囲412における測定キュービット周波数3、4は、アイドリング測定キュービット周波数である。周波数範囲414におけるデータキュービット周波数3、4および測定キュービット周波数1、2は、操作されているキュービットのためのキュービット周波数である。いくつかの実装形態では、周波数範囲410および412における、または周波数範囲414における1つまたは複数の周波数はまた、グローバルに適用されたシングルキュービットゲートのためにも選択され得る。
例示的なデータキュービット周波数および測定キュービット周波数400は、データキュービットのための追加の読出しおよびリセット周波数416をさらに含む。追加の読出しおよびリセット周波数416は、データキュービット周波数402よりも高い周波数に位置する、すなわち、例示400を参照すると、データキュービット周波数402を上回るものとして示されている。追加の読出しおよびリセット周波数416は、データキュービットが、他のキュービットのペアと相互作用する間に読み出されるか、またはリセットされることを可能にし得る。これは、様々な設定において有益であり得る。例示的な設定は、超電導ハードウェアにおいて表面符号誤り検出を実行することを含み、その理由は、過剰に励起された(漏れた)状態が除去されるとき、測定キュービットがデータキュービットになり、その逆も同様であるからである。この設定では、他のキュービットのペアと相互作用する間にデータキュービットを測定することは、極めて有益であり得る。
ハードウェアのプログラミング:寄生相互作用を低減するための同時量子ビット離調
便宜上、図5〜図8を参照しながら説明する技法は、データキュービットと測定キュービットとの間の最近接相互作用を定義するキュービット結合器を介して相互作用する、複数のデータキュービットと複数の測定キュービットとを含む、複数のキュービットのシステムに関する。ただし、これは、以下の技法を使用してプログラムされ、動作させられ得る、キュービットのシステムの一例である。たとえば、いくつかの実装形態では、以下の技法は、データまたは測定キュービットの間で区別しないキュービットのシステムをプログラムし、動作させるために使用され得る。たとえば、キュービットのシステムが、量子アルゴリズム、たとえば、スプレマシーアルゴリズムを実行するために使用される場合には、キュービットは区別不可能であり得る。データキュービットと測定キュービットとを区別することが必要とされない設定では、以下の技法および配置が依然として使用され得る。
図5は、キュービットのシステムを使用して、もつれ動作を実行するための例示的なプロセス500のフロー図である。便宜上、プロセス500について、1つまたは複数の位置に位置する1つまたは複数の量子または古典的なコンピュータのシステムによって実行されるものとして説明する。たとえば、プロセス500は、図1を参照しながら上記で説明したシステム100のキュービットコントローラモジュール104を使用して実施され得る。いくつかの実装形態では、プロセス500は、図2〜図4を参照しながら上記で説明した周波数パターンとともに実行され得る。
キュービットのシステムは、複数のキュービットと、複数のキュービット間の最近接相互作用を定義する複数のキュービット結合器とを含む。いくつかの実装形態では、複数のキュービットは、複数のデータキュービットと、複数の測定キュービットと、データキュービットと測定キュービットとの間の最近接相互作用を定義する複数のキュービット結合器とを含み得る。キュービットのシステムは、2次元グリッドとして配置され、複数のデータキュービットのうちの各データキュービットは、それぞれのキュービット結合器を通して、複数の測定キュービットに結合される。例示的な2次元グリッドについては、図1を参照しながら上記で示されている。
システムは、複数のデータキュービットを、それぞれの近隣の測定キュービットとペアリングする(ステップ502)。いくつかの実装形態では、システムは、複数のデータキュービットおよび測定キュービットを、重複しないペアにペアリングし得る。たとえば、それぞれの近隣の測定キュービットとペアリングされる各データキュービットは、別の近隣の測定キュービットとペアリングされないことがある。同様に、それぞれの近隣のデータキュービットとペアリングされる各測定キュービットは、別の近隣のデータキュービットとペアリングされないことがある。データキュービットおよび近隣の測定キュービットを重複しないペアにする例示的なペアリングが、図6の例示的な2次元キュービットグリッド600において示される。
代替的にまたは追加として、システムは、複数のデータキュービットおよびそれぞれの近隣の測定キュービットを、並列のキュービット結合器をもつペアにペアリングし得る。たとえば、図1を参照しながら上記で示された2次元グリッド112を参照すると、システムは、データキュービットを、それらのデータキュービットの真上または真下である測定キュービットとペアリングし得る。この構成では、ペアリングされたデータおよび測定キュービットは、北-南の並列結合器を有するものとして説明され得る。
システムが、複数のデータキュービットをそれぞれの近隣の測定キュービットと、重複しないペアにペアリングする場合には、並列結合器は同じ方向を有する。すなわち、各測定キュービットは、その北(または、その南)のそれぞれの近隣のデータキュービットとペアリングされ得る。データキュービットおよび近隣の測定キュービットを、北-南の並列結合器をもつ重複しないペアにする例示的なペアリングが、図6の例示的な2次元グリッド600において示される。場合によっては、たとえば、システムが、複数のデータキュービットをそれぞれの近隣の測定キュービットと、重複するペアにペアリングする場合には、並列結合器は異なる方向を有し得る。すなわち、いくつかの測定キュービットが、北からの方向における第1のデータキュービット、および南からの方向における第2のデータキュービットとペアリングされ得る。例示的な2次元グリッド600では、キュービットは、矢印626によって示されるように、北からの方向のみにおける結合器と結合される。
別の例として、図1を参照しながら上記で示された2次元グリッド112を参照すると、システムは、データキュービットを、それらのデータキュービットのすぐ右または左である測定キュービットとペアリングし得る。この構成では、ペアリングされたデータおよび測定キュービットは、東-西の並列結合器を有するものとして説明され得る。
システムが、複数のデータキュービットをそれぞれの近隣の測定キュービットと、重複しないペアにペアリングする場合には、並列結合器は同じ方向を有する。すなわち、各測定キュービットは、その西(または、その東)のそれぞれの近隣のデータキュービットとペアリングされ得る。システムが、複数のデータキュービットをそれぞれの近隣の測定キュービットと、重複するペアにペアリングする場合には、並列結合器は、異なる方向を有し得る。すなわち、いくつかの測定キュービットが、西からの方向における第1のデータキュービット、および東からの方向における第2のデータキュービットとペアリングされ得る。データキュービットおよび近隣の測定キュービットを、異なる方向の東-西の並列結合器をもつ重複するペアにする例示的なペアリングが、図6の例示的な2次元グリッド650において示される。例示的な2次元グリッド650では、キュービットは、矢印628および630によって示されるように、東からの方向と西からの方向の両方における結合器と結合される。
いくつかの実装形態では、システムは、複数のデータキュービットのサブセットを、それぞれの近隣の測定キュービットとペアリングし得る。たとえば、システムは、各ペアリングされたデータキュービットおよび測定キュービットが、他のペアリングされたデータキュービットおよび測定キュービットと隣接しないように、複数のデータキュービットをそれぞれの近隣の測定キュービットとペアリングし得る。例示的な隣接しないペアのデータキュービットおよびそれぞれの近隣の測定キュービットが、図6の例示的な2次元グリッド600において示される。
いくつかの実装形態では、システムは、複数のデータキュービットをそれぞれの近隣の測定キュービットと、複数のサブセットのペアリングされたデータおよび測定キュービットにペアリングし得る。たとえば、システムは、複数のサブセットにわたって、たとえば、キュービットのシステムにおける各キュービットが、少なくとも1つの他のキュービットとペアリングされるまで、上記で説明したペアリングプロセスを繰り返し得る。
場合によっては、複数のサブセットのペアリングされたデータおよび測定キュービットは、重複しないサブセットのペアリングされたデータおよび測定キュービットを含み得る。たとえば、図6の例示的な2次元グリッド600は、複数の重複しないサブセットのペアリングされたデータおよびそれぞれの近隣の測定キュービットを示す。例示的な2次元グリッド600では、各サブセットは、隣接しないペアのペアリングされたデータおよびそれぞれの近隣の測定キュービットを含む。他の場合には、複数のサブセットのペアリングされたデータおよび測定キュービットは、重複するサブセットのペアリングされたデータおよび測定キュービットを含み得る。たとえば、図6の例示的な2次元グリッド650は、複数の重複するサブセットのペアリングされたデータおよびそれぞれの近隣の測定キュービットを示す。
システムは、各ペアリングされたデータおよび測定キュービット上で並列に、もつれ動作を実行する(ステップ504)。たとえば、システムは、2キュービット量子論理ゲート、たとえば、制御Z量子論理ゲートを、各ペアリングされたデータおよび測定キュービットに並列に適用し得る。適用されたもつれ動作の周波数振幅における変動が起こり得るので、各ペアリングされたデータおよび測定キュービット上で並列にもつれ動作を実行することは、プロセス500を実行するために使用されるハードウェアが可能にする程度まで、各ペアリングされたデータおよび測定キュービット上で並列にもつれ動作を実行することを意味するものと理解される。例示的な変動について、以下でより詳細に説明する。
システムが、複数のサブセットのペアリングされたデータキュービットおよびそれぞれの近隣の測定キュービットを発生させる場合には、ステップ504を参照しながら上記で説明したように、システムは、それぞれのサブセット内の各ペアリングされたデータおよび測定キュービット上で並列に、もつれ動作を実行し得る。キュービットのシステムにおける各データおよび測定キュービット上で、もつれ動作を実行するために、システムは、各サブセット内のペアリングされたデータおよび測定キュービット上で、もつれ動作を順次実行し得る。いくつかの実装形態では、システムがそれにおいてもつれ動作を実行するためのサブセットを選択する順序は、任意であり得る。
ステップ504を参照しながら上記で説明したように、ペアリングされたキュービットの構成のために、もつれ動作に関係する各キュービット(または、サブセットのペアリングされたキュービット上のもつれ動作の1つの順次の適用に関係する各キュービット)は、もつれ動作に関係する他のキュービットに隣接しないか、または斜めに同じタイプを有するかのいずれかである。たとえば、データキュービットおよび近隣の測定キュービットが、図6のグループ602に示されるように、隣接しないペアのデータおよび近隣の測定キュービットにペアリングされた場合には、1つのもつれ動作に関係するキュービットは、他のもつれ動作に関係するキュービットに隣接しない。別の例として、データキュービットおよび近隣の測定キュービットが、図6のグループ608に示されるように、並列結合器をもつ重複するサブセットのペアリングされたデータおよび測定キュービットにペアリングされた場合には、1つのもつれ動作に関係するキュービットは、たとえば、キュービット610および612など、斜めに同じタイプを有する。
したがって、もつれ動作が、各ペアリングされたデータおよび測定キュービット上で並列に実行されるとき、各測定キュービットが、その対応するデータキュービット上で同様の周波数軌跡を実行中である別の測定キュービットの共振と交差することなしに離調され得る。実際には、もつれ動作が並列に実行されるので、斜めのキュービット間の離調Δfは一定(または、ほぼ一定、以下を参照)であり、したがって、斜めの相互作用からの占有移動は生じないことになる。加えて、各データキュービットは、軌跡の一部を実行することができ-一定周波数のままである必要はない。たとえば、データキュービットは、測定キュービットの方に移動する周波数軌跡を実行し得る。システムによって実行される方法の利点は変わらない。
各ペアリングされたデータおよび測定キュービットのもつれ動作を並列に実行するために、システムは、ペアリングされたデータおよび測定キュービットにおける各測定キュービットを並列に離調する。本明細書で説明するように、ペアリングされたデータおよび測定キュービットにおける各測定キュービットを並列に離調することは、ペアリングされたデータおよび測定キュービットにおける測定キュービット間で一定の、またはほぼ一定の、離調Δfを維持することを含み得る。たとえば、システムは、あらかじめ決定された範囲の周波数、たとえば、500MHzと400MHzとの間など、100MHz範囲内、または700MHzと500MHzとの間など、200MHz範囲内の周波数からの離調周波数を維持し得る。システムが、複数のデータキュービットをそれぞれの近隣の測定キュービットと、複数の重複しないサブセットのペアリングされたデータおよび測定キュービットにペアリングする場合には、システムは、複数のサブセットの各々について、サブセットにおける各ペアリングされたデータおよび測定キュービット上でほぼ並列に、もつれ動作を実行し得る。
いくつかの実装形態では、システムは、ペアリングされたデータおよび測定キュービットにもつれ動作周波数軌跡を適用することによって、各ペアリングされたデータおよび測定キュービット上で、もつれ動作を実行し得る。1つまたは複数のペアリングされたデータおよびそれぞれの近隣の測定キュービットに適用され得る、例示的な制御Z量子ゲート周波数軌跡については、図7を参照しながら示す。
いくつかの実装形態では、システムは、異なるペアリングされたデータおよび測定キュービットに、それぞれのもつれ動作周波数軌跡を適用し得る。これらの実装形態では、それぞれのもつれ動作周波数軌跡の間の変動が、あらかじめ決定されたしきい値を下回るように維持され得る。そのような変動は、たとえば、図1を参照しながら本明細書で説明した励起駆動ラインによって除外されるような、たとえば、制御パルス振幅における変動のために起こり得る。
図6は、第1のキュービットの2次元アレイ600および第2のキュービットの2次元アレイ650上でもつれ動作を実行するためのデータおよび測定キュービットの例示的なペアリングを示す。両方のキュービットの2次元アレイ600および650は、複数のデータキュービット、たとえば、データキュービット614および616と、複数の測定キュービット、たとえば、測定キュービット618および620とを含む。複数のデータキュービットのうちの各データキュービットが、図1を参照しながら本明細書で説明するように、それぞれのキュービット結合器を通して、複数の近隣の測定キュービットに結合される。
2次元アレイ600における各ペアリングされたデータおよび近隣の測定キュービットは、別のペアリングされたデータおよび近隣の測定キュービットと重複しない。加えて、各ペアリングされたデータおよび近隣の測定キュービットは、同じ方向の並列の北-南のキュービット結合器を有し-すなわち、各測定キュービットが、南からのデータキュービットに結合される。便宜上、各ペアリングされたデータおよび測定キュービットにおける結合器は、北-南の結合器として示されているが、結合器はまた、南-北の結合器(その場合、各測定キュービットが北からのデータキュービットに結合される)、東-西の結合器(その場合、各測定キュービットが西からのデータキュービットに結合される)、または西-東の結合器(その場合、各測定キュービットが東からのデータキュービットに結合される)であり得る。
第1の例示的なキュービットの2次元アレイ600は、3つの重複しないサブセットを含む。各サブセットは、複数のペアリングされたデータおよび近隣の測定キュービットを含む。図6を参照すると、第1のサブセットは、たとえば、キュービットペア602、624、および622を含む、実線によってカプセル化されたすべてのキュービットを含む。第2のサブセットは、たとえば、キュービットペア604を含む、太い破線によってカプセル化されたすべてのキュービットを含む。第3のサブセットは、たとえば、キュービットペア606を含む、細い破線によってカプセル化されたすべてのキュービットを含む。場合によっては、キュービットアレイ600に示されるように、データおよび近隣の測定キュービットのペアリングは、網羅的ではないことがある。たとえば、グリッドの境界におけるいくつかのキュービットは、他のキュービットとペアリングされないことがある。
各サブセットは、隣接しないペアのデータキュービットおよび近隣の測定キュービットを含み、その場合、キュービットは、別のキュービットに結合されるか、または別のキュービットに対して斜めである場合、別のキュービットに隣接すると言われる。すなわち、各サブセットにおけるペアは、サブセットにおける他のペアに隣接しない。したがって、もつれ動作が、それぞれのサブセット内の各ペアのデータおよび近隣の測定キュービット上でほぼ並列に実行されるとき、それぞれのもつれ動作に関係する各キュービットは、他のそれぞれのもつれ動作に関係する他のキュービットに隣接しない。たとえば、もつれ動作が、実線によって表されたサブセット中に含まれたペア上で並列に実行されるとき、ペア622における測定キュービットは、同様の周波数軌跡を実行中である別の測定キュービットの共振に交差することなしに、その周波数を変動させることができ、その理由は、ペア622における測定キュービットに対して斜めの測定キュービットが、太い破線および細い破線によって表された他のサブセットのメンバーであるからである。上記で説明したように、この構成は、寄生占有キュービット漏れ(parasitic occupation qubit leakage)の確率を低減する。
2次元アレイ650における各ペアリングされたデータおよび測定キュービットは、異なる方向の並列キュービット結合器、すなわち、東-西の結合器(その場合、各測定キュービットが西からのデータキュービットに結合される)、または西-東の結合器(その場合、各測定キュービットが東からのデータキュービットに結合される)を有する。言い換えれば、アレイ650における各測定キュービットは、東-西の結合器を介してデータキュービットに結合されるか、西-東の結合器を介してデータキュービットに結合されるかのいずれかであるか、または両方であり得る。同様に、アレイ650における各データキュービットは、東-西の結合器を介して測定キュービットに結合されるか、西-東の結合器を介して測定キュービットに結合されるかのいずれかであるか、または両方であり得る。便宜上、各ペアリングされたデータおよび測定キュービットにおける結合器が、東-西および西-東の結合器として示されるが、結合器はまた、北-南および南-北の結合器でもあり得る。
いくつかの実装形態では、上記で説明したパターンが、北-南または南-北の結合器を使用してさらに反復され、すべての最近接データキュービットおよび測定キュービットペアが相互作用を受けることができるようになり得る。
第2の例示的なキュービットの2次元アレイ650は、4つの重複するサブセットを含む。各サブセットは、複数のペアリングされたデータおよび近隣の測定キュービットを含む。図6を参照すると、第1のサブセットは、たとえば、キュービットペア654を含む、実線によってカプセル化されたすべてのキュービットを含む。第2のサブセットは、たとえば、キュービットペア658など、太い破線によってカプセル化されたすべてのキュービットを含む。第3のサブセットは、たとえば、キュービットペア656など、細い破線によってカプセル化されたすべてのキュービットを含む。第4のサブセットは、たとえば、キュービットペア652など、点線によってカプセル化されたすべてのキュービットを含む。場合によっては、キュービットアレイ650に示されるように、データおよび測定キュービットのペアリングは、網羅的であり得、すなわち、各キュービットが、少なくとも1つの他のキュービットとペアリングされ得る。
各サブセットは、隣接するペアのデータキュービットおよび近隣の測定キュービットを含む。たとえば、それぞれのサブセットにおけるデータキュービットは、サブセットにおける少なくとも1つの他のデータキュービットに対して斜めであるか、または、それぞれのサブセットにおける測定キュービットは、サブセットにおける少なくとも1つの他の測定キュービットに対して斜めであるかのいずれかである。したがって、もつれ動作が、それぞれのサブセット内の各ペアのデータおよび近隣の測定キュービット上でほぼ並列に実行されるとき、それぞれのもつれ動作に関係する各キュービットは、他のそれぞれのもつれ動作に関係する同じタイプの他のキュービットに隣接する(に対して斜めである)。しかしながら、サブセットにおける各測定キュービットを並列に離調することによって、たとえば、ペアリングされたデータおよび測定キュービットにおける測定キュービット間でほぼ一定の離調Δfを維持することによって、各測定キュービットは、その対応するデータキュービット上で同様の周波数軌跡を実行中である別の測定キュービットの共振に交差することなしに離調され得る。上記で説明したように、この構成は、寄生占有キュービット漏れの確率を低減する。
図7は、例示的な制御Z量子ゲート周波数軌跡702のプロット700である。プロット700は、図5を参照しながら上記で説明したような、断熱制御Z量子ゲートの適用の間の、例示的な制御周波数振幅(ΔHZ)、対、正規化時間を示す。たとえば、制御周波数振幅は、上記の図1の励起パルス発生器110によって発生させられ、励起駆動ライン124によって発せられるような、制御Z量子ゲートのための制御パルスの振幅を表し得る。
例示的な周波数軌跡702は、もつれ動作、たとえば、制御Z量子ゲートを実行するために、ペアリングされたデータキュービットおよび測定キュービットに適用され得る。図5を参照しながら上記で説明したように、いくつかの実装形態では、それぞれのペアのデータおよび測定キュービットにほぼ並列に適用された周波数軌跡は、制御パルス振幅における変動を含み得る。たとえば、制御周波数振幅(ΔHZ)の値は、プロット700に示されたものまで、たとえば、100MHzの倍率で変動し得る。
図8は、図5を参照しながら上記で説明したように、ペアリングされたデータおよび測定キュービット上で並列にもつれ動作を実行するときの、寄生占有漏れの確率、対、斜め結合強度の例示的なプロット800である。
ペアリングされたデータおよび測定キュービット上の標準のもつれ動作、たとえば、本開示で説明するものとは異なるもつれ動作の間の寄生占有キュービット漏れの確率は、ランダウ-ツェナー遷移のフレームワークを使用して推定され得る。ランダウ-ツェナー遷移のフレームワークは、たとえば、「Fast adiabatic qubit gates using only σZ control」、J. MartinisおよびM. Geller、Phys. Rev. A 90, 022307(2014)に記載されており、その開示の全文が参照により本明細書に組み込まれる。このフレームワーク内で、占有漏れの確率は、以下の式によって与えられ得る。
上記の式において、Hxは、キュービット結合強度を表し、
は、標準のもつれ動作を実施する制御パルスを表す。
を取ると、もつれ動作周波数軌跡の間の周波数変化のレートは、
として推定され得、制御パルスの変化のレートは、
として推定され得る。これらの値を上記の式に挿入すると、P=0.04が与えられる。この寄生占有キュービット漏れの確率は、著しく有害な占有漏れである。
本明細書によって説明するような、もつれ動作の間の寄生占有漏れの確率Pは、以下であるとして推定され得る。
上記の式において、θ=arctan(Hx/Hz)は、もつれ動作を実施する制御パルスに関連付けられた位相であり、
であり、gが、データキュービットと測定キュービットとの間の結合強度を表し、Hzは制御パルスを表し、θmrは、移動および回転するフレームにおける誤り角度を表し、
である。
このフレームワークを使用して、本開示によるもつれ動作の間の寄生占有漏れの確率が、プロット800において、寄生結合強度の関数としてプロットされる。プロット800では、離調周波数Δfは、図5を参照しながら上記で説明したように、たとえば、キュービット間の制御パルス振幅における変動のために、500MHzから400MHzまで変動し、η=200MHzである。プロット800は、寄生占有漏れの確率が、105と107との間の斜め結合強度gdiag/2π(MHz)について、<10-11のままであることを示す。これによって、斜めのキュービットのエネルギー準位が交差する設定における確率の明確な改善-約109の改善がもたらされる。
ハードウェアのプログラミング:表面符号サイクル
いくつかの設定では、量子コンピュータは、従来の古典的なコンピュータを使用して効率的に解決されないことがあるいくつかの問題を効率的に解決するための手段を提供することができる。例示的な問題は、極めて大きい数をそれらの素数に因数分解すること、および、大きい、構築されていないデータセットを探索することを含む。しかしながら、イオンのシステム、半導体におけるスピン、および超電導回路などの物理的なシステムは、量子コンピューティングデバイスにおける計算キュービットとして直接働くために、常に十分に良好に実行するとは限らないことがある。
量子コンピューティングデバイスを構築するための1つの手法は、表面符号に基づく。表面符号は、量子コンピューティングデバイスにおいて情報を表すための誤り耐性のある方法を提供する。論理キュービットは、論理キュービットが個々の物理キュービットよりも良好に実行することができるような方法で、物理キュービットの集合から構築される。
場合によっては、表面符号は、スタビライザ符号-誤りが生じるときに、誤りを検出するために、スタビライザが測定される方法として動作させられ得る。スタビライザ測定の好適な選択肢を選択することによって、キュービットが、論理演算を実行するために動作させられ得る。したがって、キュービットのシステムにわたってスタビライザを測定することは、量子コンピュータのための基本的な反復サイクルを構成し、すべてのより高い機能がその上に構築され得る。
図9は、表面符号誤り検出サイクルの間にスタビライザを測定するための例示的な量子回路900を示す。例示的な量子回路900は、5つのキュービットレジスタを含む。5つのキュービットレジスタは、|0>として表された測定キュービットと、測定キュービット最近接を表す4つのデータキュービットとを含む。例示的な量子回路では、測定キュービットは、図1を参照しながら説明したように、2次元グリッド内に位置すると仮定される。したがって、4つの最近接データキュービットは、南からのデータキュービット|S>、西からのデータキュービット|W>、東からのデータキュービット|E>、および北からのデータキュービット|N>に対応する。
場合によっては、たとえば、測定キュービットがより少ない近隣のデータキュービットを有する場合には、量子回路は、より小さいキュービットレジスタを有し得る。たとえば、測定キュービットが2次元グリッドの角にある場合、測定キュービットは、2つの近隣のデータキュービットのみを有し得る。この例では、対応する量子回路は、3つのキュービットレジスタを有し得る。
例示的な量子回路900は、図10を参照しながら本明細書で説明する、表面符号誤り検出サイクル1000を実行するために必要とされた量子論理ゲートのシーケンスを示す。図10を参照しながら本明細書で説明するように、例示的な量子回路900は、測定キュービット|0>に適用される第1のアダマールゲート952を含む。続いて、第1のもつれ動作956が、測定キュービットレジスタ|0>および南からのデータキュービットレジスタ|S>上で実行される。続いて、第2のアダマールゲート958が、西からのデータキュービットレジスタ|W>に適用される。次いで、第2のもつれ動作960が、測定キュービットレジスタ|0>および西からのデータキュービットレジスタ|W>に適用される。
例示的な量子回路900は、第3および第4のアダマールゲート972および974を含む。アダマールゲート972および974が、それぞれ、西からのキュービット|W>および東からのキュービット|E>に順次適用される。例示的な量子回路900が、図1を参照しながら上記で説明したような、測定キュービットおよびデータキュービットのシステムに適用されるとき、(第1の測定キュービットと西からのデータキュービットとの間のもつれ動作の後に)西からのデータキュービットに適用されたアダマールゲートが、(第2の測定キュービットと東からのデータキュービットとの間のもつれ動作の前に)東からのデータキュービットに適用されたアダマールゲートによってキャンセルされる。
第3のもつれ動作962が、測定キュービットレジスタ|0>および東からのデータキュービットレジスタ|E>に適用される。続いて、第5のアダマールゲート964が、東からのデータキュービットレジスタ|E>に適用される。第4のもつれ動作966が、測定キュービットレジスタ|0>および北からのデータキュービットレジスタ|N>に適用される。第6のアダマールゲート968が、測定キュービットレジスタ|0>に適用され、その後に測定動作970が続く。
もつれ動作956、960、962、および966は、制御Z量子論理ゲートを含み得る。たとえば、アダマール量子論理ゲート958および972、または974および964など、アダマール量子論理ゲートが、制御Z量子論理ゲートの前および後に適用されるとき、3つのゲートが一緒に(アダマール、制御Z、アダマール)制御X量子論理ゲートとして動作する。したがって、まとめて取られると、図9に示されたもつれ動作は、測定キュービットが|1>状態である場合、演算子ZXXZ(制御Z、制御X、制御X、制御Z)の適用を表し得る。
図10は、複数の量子回路、たとえば、図9に示された量子回路上で、表面符号誤り検出サイクルを実行するための例示的なプロセス1000のフロー図である。便宜上、プロセス1000について、1つまたは複数の位置に位置する1つまたは複数の量子または古典的なコンピュータのシステムによって実行されているものとして説明する。たとえば、プロセス1000は、図1を参照しながら上記で説明したシステム100のキュービットコントローラ104を使用して実施され得る。いくつかの実装形態では、プロセス1000は、図2〜図8を参照しながら上記で説明した技法とともに実行され得る。
例示的なプロセス1000について、2次元グリッド、たとえば、図1のグリッド112として配置された、複数のデータキュービットおよび複数の測定キュービット上で、システムによって実行されるものとして説明し、複数のデータキュービットのうちの各データキュービットが、図1を参照しながら上記で説明したように、それぞれのキュービット結合器を通して、近隣の測定キュービットに結合される。
システムは、複数の測定キュービットを初期化する(ステップ1002)。たとえば、図9の例示的な量子回路900に示されるように、複数の測定キュービットを初期化することは、測定キュービットを|0>計算基礎状態において準備することを含み得る。
システムは、初期化された測定キュービットに、アダマール量子論理ゲートを適用する(ステップ1004)。測定キュービットを|0>計算基礎状態において初期化すること、および初期化された測定キュービットに、アダマール量子論理ゲートを適用することによって、測定キュービットが、|0>および|1>の50/50重ね合わせ状態にされる。初期化された測定キュービットへのアダマール量子論理ゲート952の適用は、図9を参照しながら上記で示されている。
システムは、第1のセットのペアリングされた測定およびデータキュービット上で、複数のもつれ動作を実行する(ステップ1006)。たとえば、もつれ動作は、制御Z量子論理ゲートを含み得る。ペアリングされた測定およびデータキュービットへの制御Z量子論理ゲートの適用は、測定キュービットが状態|1>である場合、データキュービットにZ演算子を適用することを含む。
第1のセットのペアリングされた測定およびデータキュービットにおける各ペアは、第1の方向における近隣のデータキュービットに結合された測定キュービットを含む。たとえば、各ペアは、測定キュービットの下にある、たとえば、南からの方向における、近隣のデータキュービットに、それぞれのキュービット結合器を介して結合された、測定キュービットを含み得る。南からの方向におけるそれぞれの近隣のデータキュービットに結合された測定キュービットの例示的なペアについては、図6の2次元キュービットグリッド600を参照しながら示し、本明細書で説明している。南からのデータキュービットとペアリングされた測定キュービットへのもつれ動作956の適用については、図9を参照しながら示している。
いくつかの実装形態では、第1のセットのペアリングされた測定およびデータキュービット上で、複数のもつれ動作を実行することは、ペアリングされた測定およびデータキュービットを、複数のサブセットのペアリングされたキュービットに分離することであって、複数のサブセットが、重複および隣接しないペアを含む、分離することを含む。これらの実装形態では、隣接しないことが、斜めに隣接しないペアを含むように理解される。例示的な複数のサブセットのペアリングされたキュービットについては、図6の2次元キュービットグリッド600を参照しながら上記で示し、説明している。図6の2次元キュービットグリッド600に示されているように、いくつかの実装形態では、複数のサブセットは、3つのサブセット602、604、および606を含み得る。
次いで、システムは、複数のサブセットの各々におけるキュービットのペア上で並列に、もつれ動作を実行し得る。たとえば、図5を参照しながら説明したように、複数のサブセットの各々におけるキュービットのペア上で並列にもつれ動作を実行することは、各サブセットにおける各測定キュービットを並列に離調することを含み得る。
システムは、第2の方向における複数のデータキュービットに、アダマール量子論理ゲートを適用する(ステップ1008)。たとえば、システムは、測定キュービットから西からの方向における複数のデータキュービットに、アダマール量子論理ゲートを適用し得る。西からのデータキュービットへのアダマール量子論理ゲート958の適用については、図9を参照しながら示している。
システムは、第2のセットのペアリングされた測定およびデータキュービット上で、複数のもつれ動作を実行する(ステップ1010)。動作は、制御Z量子論理ゲートと、アダマール量子論理ゲートとを含み得る。たとえば、システムは、第2の方向におけるデータキュービットとペアリングされた測定キュービット上で、制御Z量子論理ゲートを実行し、その後に続いて、第2の方向におけるデータキュービット上で、アダマール量子論理ゲートを実行し得る。次いで、システムは、第3の方向におけるデータキュービット上で、アダマール量子論理ゲートを実行し、その後に続いて、第3の方向におけるデータキュービットとペアリングされた測定キュービット上で、制御Z量子ゲートを実行し得る。
第2のセットのペアリングされた測定およびデータキュービットにおける各ペアは、第2または第3の方向における近隣のデータキュービットに結合された、測定キュービットを含み、第2および第3の方向が、第1の方向に直交し、第2の方向が、第3の方向に対向する。たとえば、各ペアは、測定キュービットの右または左にある、すなわち、東からの方向または西からの方向における、近隣のデータキュービットに、それぞれのキュービット結合器を介して結合された、測定キュービットを含み得る。西からのもつれ動作および東からのもつれ動作は交換可能であるので、システムは、西からのもつれ動作および東からのもつれ動作の混合を実行し得る。
東からの方向および西からの方向におけるそれぞれの近隣のデータキュービットに結合された測定キュービットの例示的なペアについては、図6の2次元キュービットグリッド650を参照しながら上記で示し、説明している。それぞれ、西からのデータキュービットおよび東からのデータキュービットとペアリングされた測定キュービットに適用される、もつれ動作960および962の適用については、図9を参照しながら示している。
いくつかの実装形態では、第2のセットのペアリングされた測定およびデータキュービット上で、複数のもつれ動作を実行することは、ペアリングされた測定およびデータキュービットを、複数のサブセットのペアリングされたキュービットに分離することであって、複数のサブセットが、重複および隣接するペアを含む、分離することを含む。これらの実装形態では、隣接は、斜めに隣接するペアを含むように理解される。例示的な複数のサブセットのそのようなペアリングされたキュービットについては、図6の2次元キュービットグリッド650を参照しながら上記で示し、説明している。図6の2次元キュービットグリッド650に示されているように、いくつかの実装形態では、複数のサブセットは、4つのサブセット652、654、656、および658を含み得る。
次いで、システムは、複数のサブセットの各々におけるキュービットのペア上で並列に動作を実行し得る。たとえば、図5を参照しながら説明したように、複数のサブセットの各々におけるキュービットのペア上で並列にもつれ動作を実行することは、各サブセットにおける各測定キュービットを並列に離調することを含み得る。
システムは、第3の方向における複数のデータキュービットに、アダマール量子論理ゲートを適用する(ステップ1012)。たとえば、システムは、測定キュービットから東からの方向における複数のデータキュービットに、アダマール量子論理ゲートを適用し得る。東からのデータキュービットへのアダマール量子論理ゲート964の適用については、図9を参照しながら示している。図9を参照しながら説明したように、アダマール量子論理ゲートが、たとえば、ステップ1010および1012を参照しながら説明したように、制御Z量子論理ゲートの前および後に適用されるとき、3つのゲートが一緒に制御X量子論理ゲートとして作用する。
システムは、第3のセットのペアリングされた測定およびデータキュービットに対して、複数のもつれ動作を実行する(ステップ1014)。上記で説明したように、もつれ動作は、制御Z量子論理ゲートを含み得る。第3のセットのペアリングされた測定およびデータキュービットにおける各ペアは、第4の方向における近隣のデータキュービットに結合された測定キュービットを含み、第4の方向が第1の方向に対向する。たとえば、各ペアは、測定キュービットの上である、すなわち、北からの方向における、近隣のデータキュービットに、それぞれのキュービット結合器を介して結合された、測定キュービットを含み得る。北からの方向におけるそれぞれの近隣のデータキュービットに結合された測定キュービットの例示的なペアは、図6の2次元キュービットグリッド600の簡単な修正から得ることができる。北からのデータキュービットとペアリングされた測定キュービットへのもつれ動作966の適用については、図9を参照しながら示している。
いくつかの実装形態では、第3のセットのペアリングされた測定およびデータキュービット上で、複数のもつれ動作を実行することは、ペアリングされた測定およびデータキュービットを、複数のサブセットのペアリングされたキュービットに分離することであって、複数のサブセットが、重複および隣接しないペアを含む、分離することを含む。これらの実装形態では、隣接しないことが、斜めに隣接しないペアを含むように理解される。いくつかの実装形態では、複数のサブセットは、3つのサブセットを含み得る。
次いで、システムは、複数のサブセットの各々におけるキュービットのペア上で並列に、もつれ動作を実行し得る。たとえば、図5を参照しながら説明したように、複数のサブセットの各々におけるキュービットのペア上で並列にもつれ動作を実行することは、各サブセットにおける各測定キュービットを並列に離調することを含み得る。
システムは、複数の測定キュービットに、アダマール量子論理ゲートを適用する(ステップ1016)。測定キュービットへのアダマール量子論理ゲート968の適用については、図9を参照しながら示している。
システムは、誤りを検出するために、複数の測定キュービットを測定する(ステップ1018)。例示的な測定動作970については、図9を参照しながら示している。
上記で説明したように、第1のセットのペアリングされた測定およびデータキュービット上で複数のもつれ動作を実行することは、もつれ動作のアレイの3回の順次の適用-サブセットごとに1回の適用が必要である。この方式が、最近接相互作用のすべての4つの方向、たとえば、北、南、東および西について、個々に適用された場合、完全な表面符号誤り検出サイクル1000には、12回のもつれ動作の適用が必要となる。しかしながら、たとえば、図5および図6を参照しながら上記で説明した技法に従って、幾何学的に斜めの測定キュービットを並列に離調することによって、より稠密なパターンのもつれ動作によって、第1の方向に直交するすべての相互作用、たとえば、東および西が、CZゲートの4つのレイヤのみ-サブセットごとに1回の適用-において完了されることが可能となり、合計10回のみのもつれ動作の適用になる。
場合によっては、システムは、漏れ除去をさらに実行し得る。たとえば、システムは、各測定キュービットの最後のもつれ動作と並行して、たとえば、上記で説明したステップ1014と並行して、漏れ除去を実行し得る。たとえば、システムは、各タイプのキュービットが代替的にリセットされるように、測定キュービットおよびデータキュービットをスワップし得る。これは、計算基礎状態|0>および|1>において相互作用し、情報を転送するが、状態|2>以上において情報を転送しない、制御Z+スワップ量子論理ゲートを適用することによって達成され得る。
いくつかの実装形態では、後続の表面符号誤り検出サイクルが、上記のステップ1002〜1018において説明したサイクルとは逆の順序で実行され得る。たとえば、上記で説明したように、南-西/東-北の検出サイクルを実行するのではなく、システムは、北-西/東-南の検出サイクルを実行し得る。すなわち、システムは、複数の測定キュービットを初期化し、初期化された測定キュービットにアダマール量子論理ゲートを適用し、第3のサブセットのペアリングされたデータおよび測定キュービット上で並列にもつれ動作を実行し、複数のデータキュービットにアダマール量子論理ゲートを適用し、第2のサブセットのペアリングされたデータおよび測定キュービット上で並列にもつれ動作を実行し、複数のデータキュービットにアダマール量子論理ゲートを適用し、第1のサブセットのペアリングされたデータおよび測定キュービット上で並列にもつれ動作を実行し、複数の測定キュービットにアダマール量子論理ゲートを適用し、誤りを検出するために、複数の測定キュービットを測定し得る。この順序で後続の表面符号誤り検出サイクルを実行することによって、データが局所的なままであること、たとえば、各ペアリングされた測定キュービットから読み出された情報が、それぞれのデータキュービットのみに対応することを保証することができる。
図11は、表面符号の例示的な実装形態1100を示す。例示的な実装形態1100は、図1を参照しながら上記で説明したような、キュービットの2次元アレイを示す。キュービットの2次元アレイにおけるキュービットの各々は、白抜きの円、たとえば、キュービット1104、または塗りつぶされた円、たとえば、1106として表される。いくつかの実装形態では、白抜きの円は、図1を参照しながら上記で説明したような、データキュービットを表す。これらの実装形態では、塗りつぶされた円は、図1を参照しながら上記で説明したような、測定キュービットを表す。明快のために、キュービットの2次元アレイは、5×5キュービットを含むが、場合によっては、表面符号の実装形態は、より少数またはより多数のキュービットを含み得る。
図1を参照しながら上記で説明したように、キュービットは、便宜上、例示的な実装形態1100において図示しない、複数の最近接キュービット結合器を通して、互いに相互作用する。したがって、アレイ境界から離れると、各データキュービットは、4つの測定キュービットに接触し、各測定キュービットは、4つのデータキュービットに接触する。したがって、測定キュービットは、4つの測定を実行する。アレイ境界において、測定キュービットは、3つのデータキュービットに接触し、3つの測定を実行し、データキュービットは、2つまたは3つのいずれかの測定キュービットに接触する。
例示的な実装形態1100は、複数の一様なスタビライザ、たとえば、スタビライザ1102を含む。スタビライザは、キュービットのアレイの量子状態を維持するために使用される。一般に、交換可能であるスタビライザの完全なセットを使用して、量子システムを繰り返し測定することによって、量子システムは、強制的にすべてのスタビライザの同時および一意の固有状態にされる。スタビライザは、システムを混乱させることなしに測定され得る。測定結果が変化するとき、これは、1つまたは複数のキュービット誤りに対応し、量子状態が、測定によって、異なるスタビライザ固有状態に投影される。表面符号スタビライザは、たとえば、「Surface codes: Towards practical large-scale quantum computation」、A. Fowlerら、Phys. Rev. A 86, 032324(2012)に記載されており、その開示の全文が参照により本明細書に組み込まれる。
例示的な実装形態1102における各スタビライザは、
および
演算子の積を含む。たとえば、スタビライザ1102は、
として表され得、ただし、添え字n、w、e、およびsは、その上でスタビライザが動作するデータキュービットに関する北、西、東、および南の方向を表す。このようにして
演算子を結合することによって、対向する相互作用、たとえば、東-西の相互作用が同時に実行され得-ただし、同時にとは、表面符号を実装するために使用されるハードウェアが可能にする程度まで同時にを意味するように理解される-その理由は、東-西の演算子が交換可能であるからである。
本明細書で説明するデジタルおよび/または量子の主題、ならびにデジタル機能的動作および量子演算の実施形態は、本明細書で開示する構造およびそれらの構造的等価物を含む、デジタル電子回路、好適な量子回路、またはより一般には量子計算システムにおいて、有形に実施されたデジタルおよび/または量子コンピュータソフトウェアまたはファームウェアにおいて、デジタルおよび/または量子コンピュータハードウェアにおいて、あるいはそれらのうちの1つまたは複数の組合せにおいて実装され得る。「量子計算システム」という用語は、限定はしないが、量子コンピュータ、量子情報処理システム、量子暗号システム、または量子シミュレータを含み得る。
本明細書で説明するデジタルおよび/または量子の主題の実施形態は、1つまたは複数のデジタルおよび/または量子コンピュータプログラム、すなわち、データ処理装置による実行のために、またはデータ処理装置の動作を制御するために、有形の非一時的記憶媒体上に符号化されたデジタルおよび/または量子コンピュータプログラム命令の1つまたは複数のモジュールとして実装され得る。デジタルおよび/または量子コンピュータ記憶媒体は、機械可読記憶デバイス、機械可読記憶基板、ランダムもしくは順次アクセスメモリデバイス、1つもしくは複数のキュービット、またはそれらのうちの1つもしくは複数の組合せであり得る。代替または追加として、プログラム命令は、デジタルおよび/または量子情報を符号化することが可能である、人工的に生成された伝搬信号、たとえば、データ処理装置による実行のために好適な受信機装置に送信するためのデジタルおよび/または量子情報を符号化するために生成される、機械により生成された電気信号、光信号、または電磁信号上で符号化され得る。
量子情報および量子データという用語は、量子システムによって搬送されるか、量子システムにおいて保持または記憶される情報またはデータを指し、そこで、最小の非自明なシステムがキュービット、すなわち、量子情報の単位を定義するシステムである。「キュービット」という用語は、対応する文脈において二準位系として好適に近似され得る、すべての量子システムを包含することは理解されよう。そのような量子システムは、たとえば、2つ以上の準位をもつ、多準位系を含み得る。例として、そのようなシステムは、原子、電子、光子、イオン、または超電導キュービットを含み得る。多数の実装形態では、計算基礎状態は、基底状態および第1の励起状態を用いて識別されるが、計算状態がより高い準位の励起状態を用いて識別される、他のセットアップが可能であることは理解されよう。
「データ処理装置」という用語は、デジタルおよび/または量子データ処理ハードウェアを指し、例として、プログラマブルデジタルプロセッサ、プログラマブル量子プロセッサ、デジタルコンピュータ、量子コンピュータ、複数のデジタルおよび量子プロセッサまたはコンピュータ、ならびにそれらの組合せを含む、デジタルおよび/または量子データを処理するためのすべての種類の装置、デバイス、および機械を包含する。装置はまた、専用論理回路、たとえば、FPGA(フィールドプログラマブルゲートアレイ)、ASIC(特定用途向け集積回路)、または、量子シミュレータ、すなわち、特定の量子システムについての情報をシミュレートもしくは作成するように設計される量子データ処理装置であり得るか、またはそれをさらに含み得る。具体的には、量子シミュレータは、ユニバーサル量子計算を実行するための能力を有していない専用量子コンピュータである。装置は、場合によっては、ハードウェアに加えて、デジタルおよび/または量子コンピュータプログラムのための実行環境を作成するコード、たとえば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらのうちの1つもしくは複数の組合せを構成するコードを含み得る。
プログラム、ソフトウェア、ソフトウェアアプリケーション、モジュール、ソフトウェアモジュール、スクリプト、またはコードと呼ばれることもあるか、またはそのように説明されることもある、デジタルコンピュータプログラムは、コンパイラ型言語もしくはインタープリタ型言語、または宣言型言語もしくは手続き型言語を含む、任意の形式のプログラミング言語において記述され得、スタンドアロンプログラムとして、またはモジュール、コンポーネント、サブルーチン、もしくはデジタルコンピューティング環境において使用するのに好適な他のユニットとしてを含む、任意の形態において展開され得る。プログラム、ソフトウェア、ソフトウェアアプリケーション、モジュール、ソフトウェアモジュール、スクリプト、またはコードと呼ばれることもあるか、またはそのように説明されることもある、量子コンピュータプログラムは、コンパイラ型言語もしくはインタープリタ型言語、または宣言型言語もしくは手続き型言語を含む、任意の形式のプログラミング言語において記述され得、好適な量子プログラミング言語に変換されるか、または、量子プログラミング言語、たとえば、QCLもしくはQuipperにおいて記述され得る。
デジタルおよび/または量子コンピュータプログラムは、ファイルシステムにおけるファイルに対応し得るが、そうである必要はない。プログラムは、他のプログラムもしくはデータ、たとえば、マークアップ言語文書中に記憶された1つもしくは複数のスクリプトを保持するファイルの一部分において、問題になっているプログラム専用の単一のファイルにおいて、または、複数の協調されたファイル、たとえば、1つもしくは複数のモジュール、サブプログラム、もしくはコードの部分を記憶するファイルにおいて記憶され得る。デジタルおよび/または量子コンピュータプログラムは、1つのデジタルまたは1つの量子コンピュータ上で、あるいは1つのサイトに位置するか、または複数のサイトにわたって分散され、デジタルおよび/もしくは量子データ通信ネットワークによって相互接続される、複数のデジタルおよび/または量子コンピュータ上で実行されるように展開され得る。量子データ通信ネットワークは、量子システム、たとえば、キュービットを使用して、量子データを送信し得るネットワークであると理解される。一般に、デジタルデータ通信ネットワークは、量子データを送信することができないが、量子データ通信ネットワークは、量子データとデジタルデータの両方を送信し得る。
本明細書で説明するプロセスおよび論理フローは、入力デジタルおよび量子データにおいて動作すること、ならびに出力を生成することによって、機能を実行するために、1つまたは複数のデジタルおよび/または量子プロセッサとともに動作する1つまたは複数のプログラマブルなデジタルおよび/または量子コンピュータが、適宜、1つまたは複数のデジタルおよび/または量子コンピュータプログラムを実行することによって実行され得る。プロセスおよび論理フローは、専用論理回路、たとえば、FPGAもしくはASIC、または量子シミュレータとして、あるいは、専用論理回路または量子シミュレータと、1つまたは複数のプログラムされたデジタルおよび/または量子コンピュータとの組合せによっても実行され得、装置は、それらとしても実装され得る。
1つまたは複数のデジタルおよび/または量子コンピュータのシステムが、特定の動作またはアクションを実行する「ように構成される」ことは、システムが、動作中に動作またはアクションをシステムに実行させるソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せをインストールしていることを意味する。1つまたは複数のデジタルおよび/または量子コンピュータプログラムが、特定の動作またはアクションを実行するように構成されることは、1つまたは複数のプログラムが、デジタルおよび/または量子データ処理装置によって実行されると、動作またはアクションを装置に実行させる命令を含むことを意味する。量子コンピュータは、量子コンピューティング装置によって実行されると、動作またはアクションを装置に実行させる、デジタルコンピュータからの命令を受信し得る。
デジタルおよび/または量子コンピュータプログラムの実行に好適なデジタルおよび/または量子コンピュータは、汎用もしくは専用のデジタルおよび/もしくは量子プロセッサ、または両方、あるいは任意の他の種類の中央デジタルおよび/または量子処理ユニットに基づき得る。一般に、中央デジタルおよび/または量子処理ユニットは、読取り専用メモリ、ランダムアクセスメモリ、もしくは、量子データ、たとえば、光子を送信するのに好適な量子システム、またはそれらの組合せから、命令ならびにデジタルおよび/または量子データを受信することになる。
デジタルおよび/または量子コンピュータの本質的な要素は、命令を実施または実行するための中央処理ユニットと、命令ならびにデジタルおよび/または量子データを記憶するための1つまたは複数のメモリデバイスとである。中央処理ユニットおよびメモリは、専用論理回路もしくは量子シミュレータによって補足されるか、または専用論理回路もしくは量子シミュレータ中に組み込まれ得る。一般に、デジタルおよび/または量子コンピュータはまた、デジタルおよび/または量子データを記憶するための1つまたは複数の大容量記憶デバイス、たとえば、磁気ディスク、光磁気ディスク、光ディスク、または量子情報を記憶するのに好適な量子システムを含むか、あるいはそれからデジタルおよび/もしくは量子データを受信するため、またはそれにデジタルおよび/もしくは量子データを転送するため、またはその両方のために動作可能に結合されることになる。ただし、デジタルおよび/または量子コンピュータは、そのようなデバイスを有する必要はない。
デジタルおよび/または量子コンピュータプログラム命令、ならびにデジタルおよび/または量子データを記憶するのに好適な、デジタルおよび/または量子コンピュータ可読媒体は、例として、半導体メモリデバイス、たとえば、EPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、たとえば、内蔵ハードディスクまたはリムーバブルディスク、光磁気ディスク、CD-ROMおよびDVD-ROMディスク、ならびに量子システム、たとえば、トラップ原子または電子を含む、すべての形態の不揮発性デジタルおよび/または量子メモリ、媒体、およびメモリデバイスを含む。量子メモリは、量子データを高い忠実度および効率で長期間にわたって記憶することができるデバイス、たとえば、光が送信のために使用される光-物質インターフェース、および重ね合わせまたは量子コヒーレンスなど、量子データの量子特徴を記憶し、保存するための物質であることは理解されよう。
本明細書で説明する様々なシステム、またはそれらの一部の制御は、1つまたは複数の非一時的機械可読記憶媒体上に記憶され、1つまたは複数のデジタルおよび/または量子処理デバイス上で実行可能である命令を含む、デジタルおよび/または量子コンピュータプログラム製品において実装され得る。本明細書で説明するシステム、またはそれらの一部は、それぞれ、1つまたは複数のデジタルおよび/または量子処理デバイスと、本明細書で説明する動作を実行するための実行可能命令を記憶するためのメモリとを含み得る、装置、方法、またはシステムとして実装され得る。
本明細書は、多数の特定の実装詳細を含むが、これらは、請求され得るものの範囲の限定として解釈されるべきではなく、むしろ、特定の実施形態に固有であり得る特徴の説明として解釈されるべきである。別個の実施形態との関連で本明細書で説明するいくつかの特徴はまた、単一の実施形態において組み合わせて実装され得る。逆に、単一の実施形態との関連で説明する様々な特徴もまた、複数の実施形態において別個に、または任意の好適な部分組合せにおいて実装され得る。その上、特徴は、いくつかの組合せにおいて作用するとして上記で説明されることがあり、最初にそのようなものとして請求されることさえあるが、請求される組合せからの1つまたは複数の特徴は、場合によっては、その組合せから削除され得、請求される組合せは、部分組合せ、または部分組合せの変形形態を対象とし得る。
同様に、動作は、特定の順序で図面において図示されるが、これは、そのような動作が、図示された特定の順序で、もしくは連続した順序で実行されること、または、望ましい結果を達成するために、すべての図示された動作が実行されることを必要とするものとして理解されるべきではない。いくつかの状況では、マルチタスキングおよび並列処理が有利であり得る。その上、上記で説明した実施形態における様々なシステムモジュールおよび構成要素の分離は、すべての実施形態においてそのような分離を必要とするものとして理解されるべきではなく、説明したプログラム構成要素およびシステムは、一般に単一のソフトウェア製品にともに統合され得るか、または、複数のソフトウェア製品にパッケージ化され得ることを理解されたい。
主題の特定の実施形態について説明した。他の実施形態は、以下の特許請求の範囲の範囲内である。たとえば、特許請求の範囲に記載されているアクションは、異なる順序で実行され、なお、望ましい結果を達成することが可能である。一例として、添付の図面に図示したプロセスは、望ましい結果を達成するために、必ずしも図示の特定の順序、または連続した順序を必要とするとは限らない。場合によっては、マルチタスキングおよび並列処理が有利であり得る。