以下の詳細な説明は、単なる例示であり、実施形態及び/又は実施形態の適用又は使用を限定することを意図するものではない。さらに、前述の「背景技術」又は「発明の概要」節、又は「発明を実施するための形態」節に示されている明示的又は黙示的な情報のいずれにも拘束されることを意図するものではない。
次に、1つ又は複数の実施形態を、図面を参照して説明し、図面では、同様の参照符号は、全体を通して同様の要素を指すために使用される。以下の説明では、説明の目的で、1つ又は複数の実施形態のより完全な理解を提供するために、多くの具体的な詳細が述べられている。しかし、様々な場合では、1つ又は複数の実施形態が、これらの具体的な詳細なしに実施することができることは明らかである。
量子コンピューティングは概して、コンピューティング及び情報処理の機能を実行する目的のために量子力学現象を使用する。量子コンピューティングは、概してトランジスタを使用して2進値で動作する古典的コンピューティングとは対照的に見なされ得る。すなわち、古典的コンピュータは、0又は1のいずれかのビット値で動作できるが、量子コンピュータは、0及び1の両方の重ね合わせを備えるキュビット(キュビット)で動作し、複数のキュビットをもつれさせ、干渉を使用できる。
上述した先行技術の問題を考えると、本開示は、第1の動作周波数及び第1の非調和性を有する第1のキュビット、及び/又は交差共鳴動作を実行するために第1のキュビットに結合する第2のキュビットであって、第2のキュビットは、第2の動作周波数及び第2の非調和性を有し、ここで、第1の動作周波数と第2の動作周波数との間の離調は、第1の非調和性及び第2の非調和性よりも大きい、第2のキュビットを備えるデバイスを使用することによって、ストラドリング領域において達成できるのと同じ又は同等の速度、性能、忠実度で、及び/又は分散領域においてZZ結合で交差共鳴ゲート動作を実行することを促進することができるデバイスもしくはコンピュータ実装方法、又はその組み合わせの形態でこれらの問題に対する解決策をもたらすために実装することができる。そのようなデバイスもしくはコンピュータ実装方法、又はその組み合わせの利点は、第1のキュビット又は第2のキュビットの少なくとも1つと、1つ又は複数の隣接キュビットとの間のクロストーク又は周波数衝突の少なくとも1つを軽減するために実装できることである。
いくつかの実施形態では、本開示は、格子状に編成された複数のキュビットであって、複数のキュビットは、第1のキュビット及び第2のキュビットに隣接するキュビットを含み、ここで、格子内の2つの結合されたキュビット間の第2の離調が、結合された2つのキュビットの非調和性よりも大きいことに基づいて、格子内の静的周波数衝突が軽減される、複数のキュビットを備えるデバイスを使用することによって、ストラドリング領域において達成できるのと同じ又は同等の速度、性能、忠実度で、及び/又は分散領域においてZZ結合で交差共鳴ゲート動作を実行することを促進することができるデバイスもしくはコンピュータ実装方法、又はその組み合わせの形態で、上述した問題に対する解決策をもたらすために実装することができる。そのようなデバイスもしくはコンピュータ実装方法、又はその組み合わせの利点は、第1のキュビット又は第2のキュビットの少なくとも1つと、1つ又は複数の隣接キュビットとの間のクロストーク又は周波数衝突の少なくとも1つを軽減するために実装できることである。
要素が別の要素に「結合されている」と言及される場合、それは、限定されないが、化学結合、通信結合、電気結合、電磁結合、動作結合、光結合、物理結合、熱結合、及び/又は別のタイプの結合を含む1つ又は複数の異なるタイプの結合を表すことができることを理解されたい。本明細書で言及する以下の用語は、以下のように定義することも理解されたい。
交差共鳴相互作用:超導電(固定周波数)キュビット用のマイクロ波のみのエンタングル2キュビットゲートを提供し、ここで、Qcで示される制御キュビットは、Qcとは非共鳴であるが、ターゲットキュビットQtの周波数と共鳴するポンプトーンを受ける。
エンタングルメント:制御キュビットの状態を条件とするターゲットキュビットの回転によって作成される。
ストラドリング領域:制御ターゲットの離調Δ=ωc-ωtが正であり、キュビットの非調和性δよりも小さい(すなわち、0<Δ=ωc-ωt<-δ)動作の領域である。制御ターゲットの離調は、制御キュビットQcとターゲットキュビットQtとの間のキュビット-キュビット周波数離調とも呼ばれる。
分散領域:キュビットでは、2キュビット間の離調が非調和性のいずれよりもはるかに大きく、それらの間の結合が離調よりもはるかに小さい場合のことである。
周波数衝突:交差共鳴ゲートの高忠実度動作に使用できないキュビット周波数空間内の点を指す。
本明細書で言及するように、エンティティは、人間、クライアント、ユーザ、コンピューティングデバイス、ソフトウェアアプリケーション、エージェント、機械学習モデル、人工知能、及び/又は別のエンティティを含むことができる。そのようなエンティティは、本明細書に記載の本主題の開示の1つ又は複数の実施形態の設計、製造、及び/又は実装(例えば、シミュレーション、テスト、など)を促進することができることを理解されたい。
図1は、本明細書に記載の1つ又は複数の実施形態による、キュビット周波数空間の分散領域における交差共鳴動作を促進することができる例示的で非限定的なデバイス100を示す。デバイス100は、量子デバイスに実装できる半導体デバイスもしくは超電導デバイス、又はその両方を含むことができる。例えば、デバイス100は、例えば、量子ハードウェア、量子プロセッサ、量子コンピュータもしくは別の量子デバイス、又はその組み合わせなどの量子デバイスに実装できる集積半導体もしくは超電導回路(例えば、量子回路)、又はその両方を備えることができる。デバイス100は、例えば、上記で定義されたような量子デバイスで実装できる固定周波数量子デバイスなどの半導体デバイスもしくは超電導デバイス、又はその両方を備えることができる。いくつかの実施形態では、デバイス100は、量子処理デバイスを備えることができる。
図1に示す例示的な実施形態に示すように、デバイス100は、制御キュビット102(図1では「制御」及び「Q0低」と示す)、ターゲットキュビット104(図1では「ターゲット」及び「Q2高2」と示す)、及び/又はスペクテイタキュビット106(図1では「スペクテイタ」及び「Q1高1」と示す)を備えることができる。この例示的な実施形態では、制御キュビット102は、ターゲットキュビット104及びスペクテイタキュビット106に結合することができる。例えば、制御キュビット102は、第1のバス共振器(図1には図示せず)を介してターゲットキュビット104に容量結合でき、そのような結合は図1において「J」と示す。この例では、制御キュビット102はまた、第2のバス共振器(図1には図示せず)を介してスペクテイタキュビット106に容量結合でき、そのような結合は図1において「J」と示す。
図1に示す例示的な実施形態に示す制御キュビット102、ターゲットキュビット104、及び/又はスペクテイタキュビット106はそれぞれ、例えば、トランスモンキュビット、固定周波数キュビット、固定周波数トランスモンキュビット、超電導キュビットもしくは別のキュビット、又はその組み合わせを有することができる。制御キュビット102は、図1において「ω0」と示す動作周波数(例えば、共鳴周波数)を有することができる。ターゲットキュビット104は、図1において「ω2」と示す動作周波数(例えば、共鳴周波数)を有することができる。スペクテイタキュビット106は、図1において「ω1」と示す動作周波数(例えば、共鳴周波数)を有することができる。様々な実施形態では、制御キュビット102、スペクテイタキュビット106、及び/又はターゲットキュビット104のそれぞれのそのような動作周波数ω0、ω1、及び/又はω2(例えば、共鳴周波数)は、デバイス100の設計中及び/又は製造中(例えば、そのようなキュビットのそれぞれにおけるジョセフソン接合の設計中及び/又は製造中)に設定することができる。
図1に示す例示的な実施形態に示すように、制御キュビット102は、ターゲットキュビット104の動作周波数ω2よりも低く、スペクテイタキュビット106の動作周波数ω1よりも低い、そのような動作周波数ω0を有することができ、これは、図1において「ω0<ω1、ω2」と示す。この実施形態では、制御キュビット102、スペクテイタキュビット106、及び/又はターゲットキュビット104のそれぞれの動作周波数ω0、ω1、及び/又はω2は、キュビット周波数空間の分散領域(例えば、量子情報を記憶できる
及び/又は
量子状態を含むキュビット計算空間の分散領域)にある動作周波数を含むことができる。簡潔にするために、そのような「キュビット周波数空間の分散領域」は、本明細書では「分散領域」と呼ばれ得る。
デバイス100もしくは制御キュビット102、又はその両方は、外部デバイス(図示せず)に結合することができる。例えば、デバイス100もしくは制御キュビット102、又はその両方は、例えば、パルス発生器デバイス及び/又はマイクロ波レーザデバイスなど、デバイス100の外部にあり得る外部デバイスに結合することができる。例示的な実施形態では、図1には示されていないが、デバイス100もしくは制御キュビット102、又はその両方は、限定されないが、デバイス100の外部にあり得、デバイス100もしくは制御キュビット102、又はその両方へ、及び/又はそれらからパルス(例えば、マイクロ波パルス、マイクロ波信号、制御信号、など)を送信及び/又は受信できる、任意波形発生器(AWG)、ベクトルネットワークアナライザ(VNA)もしくは別のパルス発生器デバイス、又はその組み合わせを含むパルス発生器デバイスに結合することができる。別の例示的な実施形態では、図1には示されていないが、デバイス100もしくは制御キュビット102、又はその両方は、限定されないが、デバイス100の外部にあり得、マイクロ波光のレーザをデバイス100もしくは制御キュビット102、又はその両方へ、及び/又はデバイス100もしくは制御キュビット102、又はその両方から送信及び/又は受信でき、メーザもしくは別のマイクロ波レーザデバイス、又はその両方を含むマイクロ波レーザデバイスに結合することができる。
本主題の開示の1つ又は複数の実施形態によれば、上述したような外部デバイス(例えば、AWG、VNA、メーザ、など)は、命令を記憶できるメモリ及び、そのような命令を実行できるプロセッサを有するコンピュータに結合することもできる。例えば、これらの実施形態では、上述したような外部デバイス(例えば、AWG、VNA、メーザ、など)は、図10を参照して以下に説明するコンピュータ1012にも結合することができ、コンピュータ1012は、命令を記憶できるシステムメモリ1016(例えば、ソフトウェア、ルーチン、処理スレッド、など)及び、そのような命令を実行できる処理ユニット1014を有することができる。これらの実施形態では、そのようなコンピュータを使用して、上述したような外部デバイス(例えば、AWG、VNA、メーザ、など)を(例えば、システムメモリ1016に記憶された命令を実行する処理ユニット1014を介して)操作及び/又は制御することができる。例えば、これらの実施形態では、そのようなコンピュータは、上述の外部デバイス(例えば、AWG、VNA、メーザ、など)が、a)デバイス100もしくは制御キュビット102、又はその両方へ、及び/又はそれらからパルス(例えば、マイクロ波パルス、マイクロ波信号、制御信号、など)を送信及び/又は受信すること、及び/又は、b)デバイス100もしくは制御キュビット102、又はその両方へ、及び/又はそれらからマイクロ波光のレーザを送信及び/又は受信することを可能にするために使用され得る。
上述の実施形態では、マイクロ波光のそのようなパルスもしくはレーザ、又はその両方は、駆動力108(図1では「Ω」と示す)を構成できる。図1に示す例示的な実施形態では、駆動力108は、矢印110によって視覚的に表される。この実施形態では、駆動力108は、(例えば、図1の「Ω、ω2」で示すように)ターゲットキュビット104の動作周波数ω2でデバイス100もしくは制御キュビット102、又はその両方に(例えば、AWG、VNA、メーザ、コンピュータ1012などを介して)印加され得る。この実施形態では、上述したようにデバイス100もしくは制御キュビット102、又はその両方に駆動力108を印加することに基づいて、デバイス100の制御キュビット102及びターゲットキュビット104は、以下に説明するように、キュビット周波数空間の分散領域における(例えば、キュビット計算空間の分散領域における)交差共鳴動作を実行することができる。
上記で定義するように、制御キュビット及びターゲットキュビット周波数空間の分散領域は、2キュビット間の離調が、それらの非調和性のいずれよりもはるかに大きく(例えば、Δct>>|δc|,|δt|と表される)、それらの間の結合が離調よりもはるかに小さい場合(例えば、Jct<<Δctで表される)である。本明細書で言及するように、「離調される」及び/又は「離調」(「Δ」と示す)は、制御キュビットの動作周波数ωcとターゲットキュビットの動作周波数ωtとの間の差(例えば、Δct=ωc-ωtで表される)として定義する。
図1に示す例示的な実施形態では、制御キュビット102及びターゲットキュビット104の離調は、制御キュビット102の動作周波数ω0とターゲットキュビット104の動作周波数ω2との間の差(例えば、Δ02=ω0-ω2で表される)として定義することができる。この実施形態では、ターゲットキュビット104及びスペクテイタキュビット106は、互いに大きく離調(例えば、|ω2-ω1|>>0)され得る。この実施形態では、制御キュビット102及びターゲットキュビット104(例えば、制御キュビット102及びターゲットキュビット104のキュビット計算空間)のキュビット周波数空間の分散領域における交差共鳴ゲート動作を促進するために、本明細書で定義するエンティティは、a)制御キュビット102及びターゲットキュビット104は、制御キュビット102の非調和性δ0及びターゲットキュビット104の非調和性δ2の両方よりも大きい(例えば、はるかに大きい)値に離調され(例えば、Δ02>>|δ0|,|δ2|と表される)、及びb)制御キュビット102とターゲットキュビット104との間の結合Jは、離調よりも小さい(例えば、はるかに小さい)(例えば、J<<Δ02と表される)ようにデバイス100を設計、製造、及び/又は実装(例えば、シミュレート、テスト、など)することができる。例えば、この実施形態では、そのような分散領域で交差共鳴ゲート動作を促進するために、そのようなエンティティは、条件J<<Δ02>>|δ0|,|δ2|が満たされるようにデバイス100を設計、製造、及び/又は実装することができる。例示的な実施形態では、分散領域における交差共鳴ゲートの実行を可能にするために、離調Δ02=2ギガヘルツ(GHz)、δ0=δ2=-0.3GHz、及びJは10メガヘルツ(MHz)にほぼ等しくなり得る(
)。
様々な実施形態では、制御キュビット102及びターゲットキュビット104の離調Δ02を、両方のキュビットの非調和性δ0、δ2よりも大きい(例えば、はるかに大きい)レベルまで増加させることは、制御キュビット102の動作周波数ω0及び/又はターゲットキュビット104の動作周波数ω2を、ストラドリング領域の外側に配置し、制御キュビット102とターゲットキュビット104との間の結合Jが離調Δ02よりも小さい(例えば、はるかに小さい)場合(例えば、J<<Δ02>>|δ0|,|δ2|として表される)、制御キュビット102及びターゲットキュビット104の周波数空間の分散領域内に配置することができる。これらの実施形態では、デバイス100が、上記で定義された条件J<<Δ02>>|δ0|,|δ2|を満たすように設計、製造、及び/又は実装される場合、制御キュビット102及びターゲットキュビット104は、そのような分散領域における交差共鳴ゲート動作を実行することができる。これらの実施形態では、デバイス100が、上記で定義された条件J<<Δ02>>|δ0|,|δ2|を満たすように設計、製造、及び/又は実装される場合、制御キュビット102及びターゲットキュビット104は、ストラドリング領域において実行される交差共鳴ゲート動作とまったく同じ速度、性能、及び/又はZZ結合で、そのような分散領域における交差共鳴ゲート動作を実行することができる。
いくつかの実施形態では、制御キュビット102及びターゲットキュビット104(例えば、制御キュビット102及びターゲットキュビット104のキュビット計算空間)のキュビット周波数空間の分散領域における交差共鳴ゲート動作を促進にするために、本明細書で定義するエンティティは、制御キュビット102及びターゲットキュビット104を互いに遠く離して離調させながら、制御キュビット102及びターゲットキュビット104に対応するZX交差共鳴率(本明細書では動的エンタングルメント率とも呼ばれる)及びZZ相互作用率(本明細書では、スプリアス静的エンタングルメント率とも呼ばれる)が維持(例えば、一定に保持)されるように、デバイス100を設計、製造、及び/又は実装することができる。本明細書で言及するように、「ZX交差共鳴」は、制御キュビット102及びターゲットキュビット104のエンタングルメント(例えば、動的エンタングルメント)を表し、「ZZ相互作用」は、制御キュビット102とターゲットキュビット104との間の残留静的ZZ相互作用(例えば、スプリアス静的エンタングルメント)を表す。上述の実施形態では、制御キュビット102及びターゲットキュビット104を互いに遠く離して離調させながら、制御キュビット102及びターゲットキュビット104に対応するZX交差共鳴率及びZZ相互作用率を維持(例えば、一定に保持)することは、それによって、周波数衝突を排除又は効果的に排除する(例えば、制御キュビット102及びターゲットキュビット104の即時レベルの衝突を排除又は効果的に排除する)ことができる。
本明細書に記載の実施形態のうちの1つ又は複数に従って本主題の開示によって克服される主な課題は、制御キュビット102及びターゲットキュビット104がそのような分散領域における交差共鳴ゲート動作を実行することを可能にするレベルで、ZX交差共鳴率及びZZ相互作用率をいかに維持(例えば、一定に保持)するかということであることを理解されたい。ZX交差共鳴率及びZZ相互作用率は、主に、制御キュビット102及びターゲットキュビット104を有する2キュビットシステムの単一パラメータによって制御される。交差エネルギ分配比(EPR)として知られるこのパラメータは、制御キュビット102とターゲットキュビット104との間の混成の量を特徴付ける。制御キュビット102及びターゲットキュビット104がより混成されているほど、ZX交差共鳴率及びZZ相互作用率が高くなる。交差エネルギ分配比は、ターゲットキュビット104のターゲット接合(例えば、ターゲットジョセフソン接合)が制御キュビット102のドレス制御キュビットモードにどの程度分配するかを反映し、制御キュビット102及びターゲットキュビット104のそれぞれの非調和性δ0、δ2及び動作周波数ω0、ω2は、交差エネルギ分配比から本質的に独立している。
ZZ相互作用率は交差エネルギ分配比に比例して変化するが、ZX交差共鳴率は交差エネルギ分配比の平方根にように変化する。しかし、遠離調領域では、例えば、分散領域では、以下に説明するように、及び/又は本主題の開示の1つ又は複数の実施形態に従って、任意の離調値に対して交差エネルギ分配比を一定に保つことができる。したがって、そのような遠離調領域(例えば、分散領域)では、上記で定義された条件J<<Δ02>>|δ0|,|δ2|を満たすようにデバイス100を設計、製造、及び/又は実装する、本明細書で定義するエンティティは、以下に説明するように、及び/又は本主題の開示の1つ又は複数の実施形態に従って、任意の離調値に対して交差エネルギ分配比を一定に保つことができる。
非ドレスキュビット(例えば、非ドレス制御キュビット102及びターゲットキュビット104)の観点から、交差エネルギ分配比は、キュビットの離調に対するそのようなキュビット間の結合の関数(例えば、以下で定義する式(1)でJ/Δとして表される)である。現在、キュビット周波数空間の分散領域は、Jを固定したままΔを変化させることにより、以下で式(1)として定義する摂動ZX交差共鳴率の式から推測されるように、「遅い」ゲート領域と考えられている。
式(1):
しかし、デルタを任意に変化させながら交差エネルギ分配比を固定したままにすることにより、以下で定義する式は、ZX交差共鳴率及びZZ相互作用率の比(「ZX/ZZ」と示す)を離調とは無関係に固定できることを示す。以下で定義する式はまた、ストラドリング領域で取得され得るZX交差共鳴率及びZZ相互作用率と同じ率が、分散領域でも取得され得ることを示す。
分散領域における、おおよそのZX交差共鳴率は、以下の式(2)として定義することができる。
式(2):
無次元交差エネルギ分配比pは、ZX交差共鳴率を設定する単一の自由パラメータである。比例定数は、以下の式(3)のように定義することができる。
式(3):
ここで、
は電磁作用の量子である換算プランク定数を示し、ωcはドレス制御キュビット102の周波数を示し、ωtはドレスターゲットキュビット104の周波数を示し、EJは制御キュビット102のジョセフソン接合エネルギを示す。
ZX交差共鳴率は本質的に離調とは無関係であり、すなわち、キュビットの周波数は無関係である。同じZX交差共鳴率の場合、より大きな離調では、より大きな駆動力が必要になる。無次元駆動パラメータは、以下の式(4)のように定義することができる。
式(4):
分散領域における、おおよそのZZ相互作用率(ZZクロストーク率とも呼ばれる)は、以下の式(5)として定義することができる。
式(5):
ZZ相互作用率(ZZクロストーク率)は、上述した同じ交差分配比pによって設定することができる。比例定数は、以下の式(6)のように定義することができる。
式(6):
いくつかの実施形態では、制御キュビット102及びターゲットキュビット104が分散領域における交差共鳴ゲート動作を実行することを可能にするレベルで、ZX交差共鳴率及びZZ相互作用率を維持(例えば、一定に保持)するために、本明細書で定義するエンティティは、レベル衝突を低減するために制御キュビット102及びターゲットキュビット104を、独立して遠く離して離調(例えば、Δ02<<0)させながら(例えば、0>>Δ02>>|δ0|,|δ2|となるように制御キュビット102及びターゲットキュビット104を離調させながら)、交差エネルギ分配比pが一定に保持されるように、デバイス100を設計、製造、及び/又は実装することができる。これらの実施形態では、そのようなエンティティは、例えば、現在、ストラドリング領域において行われているように、固定されたZX/ZZ比(例えば、固定されたエンタングルメント対スプリアスクロストークの比)を同時に維持することができ、ここで、ZX/ZZ比は、以下の式(7)で定義する交差エネルギ分配比pの逆平方根によって与えられる。これらの実施形態では、そのようなエンティティは、交差エネルギ分配比pの平方根を固定したままにすることによって、固定されたZX/ZZ比を維持することができる。
式(7):
上述の実施形態では、制御キュビット102及びターゲットキュビット104が、分散領域における交差共鳴ゲート動作の最大ゲート速度の達成を可能にするため、デバイス100を設計、製造、及び/又は実装できる、そのようなエンティティは、上記の式(4)で定義された無次元駆動パラメータξの値が1/2又はほぼ1/2(例えば、ξ=1/2又はξ≒1/2)となるように、駆動力108を調整することができる。これらの実施形態では、上述したように、制御キュビット102は、ターゲットキュビット104の動作周波数ω2よりも低く、大きく離調された(例えば、Δ02<<0)動作周波数ω0を有することができる。これらの実施形態では、制御キュビット102及びターゲットキュビット104のそれぞれの非調和性δ0、δ2及び動作周波数ω0、ω2は、デバイス100を設計、製造、及び/又は実装できる、そのようなエンティティによって独立して設定することができる。これらの実施形態では、交差エネルギ分配比pは、純粋に幾何学的な量であり、デバイス100のカプラ形状を調整することによって(例えば、制御キュビット102とターゲットキュビット104との間の実効キャパシタンスを調整することによって)そのようなエンティティによって設定することができる。
図1に示す例示的な実施形態では、上述したようにデバイス100もしくは制御キュビット102、又はその両方に、(例えば、AWG、VNA、メーザ、コンピュータ1012、などを介して)駆動力108を印加することに基づいて、周波数がより高い交差共鳴トーンから生じる制御キュビット102のシュタルクシフトは、制御キュビット102を、ターゲットキュビット104もしくはスペクテイタキュビット106、又はその両方からさらに遠ざけさせ、又はその逆にさらに近づけさせ、それによって、動的衝突(例えば、周波数衝突)を減少させることができる。例えば、以下に説明され、図3に示すグラフ300の領域304は、非共鳴トーンの範囲にわたって生じ得る制御キュビット102上のシュタルクシフトを示す。
上述したように、デバイス100が設計、製造、及び/又は実装されると、デバイス100は、制御キュビット102又はターゲットキュビット104の少なくとも1つと、隣接キュビット(例えば、制御キュビット102もしくはターゲットキュビット104、又はその両方に隣接するデバイス100上の場所に位置する隣接するキュビット)との間のクロストーク及び/又は周波数衝突の軽減を促進することができることを理解されたい。例えば、上述したように、デバイス100が、制御キュビット102及びターゲットキュビット104が分散領域における交差共鳴ゲート動作を実行できるように設計、製造、及び/又は実装される場合、デバイス100は、制御キュビット102又はターゲットキュビット104の少なくとも1つと、スペクテイタキュビット106との間のクロストーク及び/又は周波数衝突の軽減を促進することができる。
デバイス100の製造は、例えば、半導体もしくは超電導デバイス(例えば、集積回路)、又はその両方における電子ベースのシステム、デバイス、構成要素、及び/又は回路の段階的な作成を促進するフォトリソグラフィ工程及び/又は化学処理工程の多段階シーケンスを有することができる。例えば、デバイス100は、限定されないが、フォトリソグラフィ、マイクロリソグラフィ、ナノリソグラフィ、ナノインプリントリソグラフィ、フォトマスキング技術、パターニング技術、フォトレジスト技術(例えば、ポジ型フォトレジスト、ネガ型フォトレジスト、ハイブリッド型フォトレジスト、など)、エッチング技術(例えば、反応性イオンエッチング(RIE)、ドライエッチング、ウェットエッチング、イオンビームエッチング、プラズマエッチング、レーザアブレーション、など)、蒸着技術、スパッタリング技術、プラズマアッシング技術、熱処理(例えば、急速熱アニール、炉アニール、熱酸化、など)、化学気相成長(CVD)、原子層堆積(ALD)、物理気相成長(PVD)、分子線エピタキシ(MBE)、電気化学析出(ECD)、化学機械平坦化(CMP)、バックグラインド技術、及び/又は集積回路を製造するための別の技術を含む技術を使用することにより、基板(例えば、シリコン(Si)基板、など)上に製造することができる。
デバイス100は、様々な材料を使用して製造することができる。例えば、デバイス100は、限定されないが、導電性材料、半導体材料、超電導材料、誘電体材料、高分子材料、有機材料、無機材料、非導電性材料、及び/又は集積回路を製造するための上述した技術の1つ又は複数で利用できる別の材料を含む1つ又は複数の異なる材料区分の材料を使用して製造することができる。
図2は、本明細書に記載の1つ又は複数の実施形態による、キュビット周波数空間の分散領域における交差共鳴動作を促進することができる例示的で非限定的なデバイス200を示す。それぞれの実施形態で使用される同様の要素もしくはプロセス、又はその両方の繰り返しの説明は、簡潔にするために省略される。
デバイス200は、図1を参照して上述したデバイス100の例示的で非限定的な代替実施形態を有することができる。図2に示す例示的な実施形態では、デバイス200は、格子アーキテクチャで編成された複数のキュビットを有することができる。デバイス200は、量子デバイスに実装できる半導体デバイスもしくは超電導デバイス、又はその両方を含むことができる。例えば、デバイス200は、例えば、量子ハードウェア、量子プロセッサ、量子コンピュータもしくは別の量子デバイス、又はその組み合わせなどの量子デバイスに実装できる集積半導体もしくは超電導回路(例えば、量子回路)、又はその両方を備えることができる。デバイス200は、例えば、上記で定義されたような量子デバイスで実装できる固定周波数量子デバイスなどの半導体デバイスもしくは超電導デバイス、又はその両方を備えることができる。いくつかの実施形態では、デバイス200は、量子処理デバイスを備えることができる。
図2に示す例示的な実施形態に示すように、デバイス200は、デバイス100の制御キュビット102、ターゲットキュビット104、及びスペクテイタキュビット106を有することができる。図2に示す例示的な実施形態では、デバイス200は、スペクテイタキュビット202(図2では「スペクテイタ」及び「Q3高3」と示す)、スペクテイタキュビット204(図2では「スペクテイタ」及び「Q4高4」と示す)、キュビット206(図2では「Q5低」と示す)、キュビット208(図2では「Q6低」と示す)、及び/又はキュビット210(図2では「Q7低」と示す)をさらに有することができる。この例示的な実施形態では、デバイス200の制御キュビット102、キュビット206、キュビット208、及び/又はキュビット210は、第1の動作周波数(例えば、デバイス200のターゲットキュビット104、スペクテイタキュビット106、スペクテイタキュビット202、及び/又はスペクテイタキュビット204に対する低周波数)を有するキュビットの第1のセットを構成することができる。この例示的な実施形態では、デバイス200のターゲットキュビット104、スペクテイタキュビット106、スペクテイタキュビット202、及び/又はスペクテイタキュビット204は、第2の動作周波数(例えば、制御キュビット102、キュビット206、キュビット208、及び/又はキュビット210に対する高周波数)を有するキュビットの第2のセットを構成することができる。
図2に示す例示的な実施形態では、制御キュビット102は、ターゲットキュビット104、スペクテイタキュビット106、スペクテイタキュビット202、及び/又はスペクテイタキュビット204に結合することができる。例えば、制御キュビット102は、第1のバス共振器(図2には図示せず)を介してターゲットキュビット104に容量結合でき、そのような結合は図2において「J」と示す。この例では、制御キュビット102はまた、第2のバス共振器(図2には図示せず)を介してスペクテイタキュビット106に容量結合でき、そのような結合は図2において「J」と示す。この例では、制御キュビット102は、第3のバス共振器(図2には図示せず)を介してスペクテイタキュビット202にさらに結合でき、そのような結合は、図2で「J''」と示し、及び/又は第4のバス共振器(図2には図示せず)を介したスペクテイタキュビット204にさらに結合でき、そのような結合は、図2で「J'''」と示す。
図2に示す例示的な実施形態に示すように、キュビット206は、例えば、1つ又は複数のバス共振器(図2には図示せず)を介してスペクテイタキュビット106及び/又はスペクテイタキュビット204に結合することができる。この例示的な実施形態では、キュビット208は、例えば、1つ又は複数のバス共振器(図2には図示せず)を介してターゲットキュビット104及び/又はスペクテイタキュビット204に結合することができる。この例示的な実施形態では、キュビット210は、例えば、1つのバス共振器(図2には図示せず)を介してスペクテイタキュビット204に結合することができる。
図2に示す例示的な実施形態に示すスペクテイタキュビット202、スペクテイタキュビット204、キュビット206、キュビット208、及び/又はキュビット210はそれぞれ、例えば、トランスモンキュビット、固定周波数キュビット、固定周波数トランスモンキュビット、超電導キュビットもしくは別のキュビット、又はその組み合わせを有することができる。図1を参照して上述したように、制御キュビット102、ターゲットキュビット104、及びスペクテイタキュビット106は、デバイス200の設計中及び/又は製造中(例えば、そのようなキュビットのそれぞれにおけるジョセフソン接合の設計中及び/又は製造中)に設定できる動作周波数ω0、ω2、ω1をそれぞれ有することができる。デバイス200のスペクテイタキュビット202は、図2において「ω3」と示す動作周波数(例えば、共鳴周波数)を有することができる。デバイス200のスペクテイタキュビット204は、図2において「ω4」と示す動作周波数(例えば、共鳴周波数)を有することができる。様々な実施形態では、スペクテイタキュビット202及び/又はスペクテイタキュビット204のそれぞれのそのような動作周波数ω3及び/又はω4(例えば、共鳴周波数)は、デバイス200の設計中及び/又は製造中(例えば、そのようなキュビットのそれぞれにおけるジョセフソン接合の設計中及び/又は製造中)に設定することができる。
図2に示す例示的な実施形態に示すように、制御キュビット102は、スペクテイタキュビット106、ターゲットキュビット104、スペクテイタキュビット202、及びスペクテイタキュビット204のそれぞれの動作周波数ω1、ω2、ω3、及びω4よりも低いような動作周波数ω0を有することができ、これは、図2では「ω0<ω1,ω2,ω3,ω4」と示す。この実施形態では、制御キュビット102、スペクテイタキュビット106、ターゲットキュビット104、スペクテイタキュビット202、及び/又はスペクテイタキュビット204のそれぞれの動作周波数ω0、ω1、ω2、ω3、及び/又はω4は、キュビット周波数空間の分散領域(例えば、キュビット計算空間の分散領域)にある動作周波数を有することができる。この実施形態では、ターゲットキュビット104、スペクテイタキュビット106、スペクテイタキュビット202、及び/又はスペクテイタキュビット204は、互いに大きく離調(例えば、|ω2-ω1|>>0、|ω4-ω3|>>0、など)され得る。
図2に示す例示的な実施形態では、デバイス200もしくは制御キュビット102、又はその両方は、(例えば、図1を参照して上述したように)駆動力108を提供できる1つ又は複数の外部デバイス(例えば、AWG、VNA、メーザ、コンピュータ1012、など)にさらに結合することができる。この例示的な実施形態では、駆動力108は、(例えば、図2の「Ω、ω2」で示すように)ターゲットキュビット104の動作周波数ω2でデバイス200もしくは制御キュビット102、又はその両方に(例えば、AWG、VNA、メーザ、コンピュータ1012、などを介して)印加され得、駆動力108のそのような適用は、図2の矢印110によって視覚的に表される。この例示的な実施形態では、上述したようにデバイス200もしくは制御キュビット102、又はその両方に駆動力108を印加することに基づいて、デバイス200の制御キュビット102及びターゲットキュビット104は、キュビット周波数空間の分散領域における(例えば、キュビット計算空間の分散領域における)交差共鳴動作を実行することができる。例えば、図1を参照すると、デバイス200の制御キュビット102及びターゲットキュビット104は、デバイス100の制御キュビット102及びターゲットキュビット104が分散領域における交差共鳴ゲート動作を実行できるのと同じ方法で、分散領域における交差共鳴ゲート動作を実行することができる。
図2に示す例示的な実施形態では、上述したようにデバイス200もしくは制御キュビット102、又はその両方に、(例えば、AWG、VNA、メーザ、コンピュータ1012、などを介して)駆動力108を印加することに基づいて、周波数がより高い交差共鳴トーンから生じる制御キュビット102のシュタルクシフトは、制御キュビット102を、ターゲットキュビット104、スペクテイタキュビット106、スペクテイタキュビット202、もしくはスペクテイタキュビット204、又はその組み合わせからさらに遠ざけさせ、又はその逆にさらに近づけさせ、それによって、動的衝突(例えば、周波数衝突)を減少させることができる。例えば、以下に説明され、図3に示すグラフ300の領域304は、非共鳴トーンの範囲にわたって生じ得る制御キュビット102上のシュタルクシフトを示す。
上述したように、デバイス200が設計、製造、及び/又は実装されると、デバイス200は、制御キュビット102又はターゲットキュビット104の少なくとも1つと、1つ又は複数の隣接キュビット(例えば、制御キュビット102もしくはターゲットキュビット104、又はその両方に隣接するデバイス200上の場所に位置する1つ又は複数の隣接するキュビット)との間のクロストーク及び/又は周波数衝突の軽減を促進することができることを理解されたい。例えば、上述したように、デバイス200が、制御キュビット102及びターゲットキュビット104が分散領域における交差共鳴ゲート動作を実行できるように設計、製造、及び/又は実装される場合、デバイス200は、制御キュビット102又はターゲットキュビット104の少なくとも1つと、スペクテイタキュビット106、デバイス200のスペクテイタキュビット202、スペクテイタキュビット204、キュビット206、キュビット208、及び/又はキュビット210との間のクロストーク及び/又は周波数衝突の軽減を促進することができる。
デバイス200の製造は、例えば、半導体もしくは超電導デバイス(例えば、集積回路)、又はその両方における電子ベースのシステム、デバイス、構成要素、及び/又は回路の段階的な作成を促進するフォトリソグラフィ工程及び/又は化学処理工程の多段階シーケンスを有することができる。例えば、デバイス200は、限定されないが、フォトリソグラフィ、マイクロリソグラフィ、ナノリソグラフィ、ナノインプリントリソグラフィ、フォトマスキング技術、パターニング技術、フォトレジスト技術(例えば、ポジ型フォトレジスト、ネガ型フォトレジスト、ハイブリッド型フォトレジスト、など)、エッチング技術(例えば、反応性イオンエッチング(RIE)、ドライエッチング、ウェットエッチング、イオンビームエッチング、プラズマエッチング、レーザアブレーション、など)、蒸着技術、スパッタリング技術、プラズマアッシング技術、熱処理(例えば、急速熱アニール、炉アニール、熱酸化、など)、化学気相成長(CVD)、原子層堆積(ALD)、物理気相成長(PVD)、分子線エピタキシ(MBE)、電気化学析出(ECD)、化学機械平坦化(CMP)、バックグラインド技術、及び/又は集積回路を製造するための別の技術を含む技術を使用することにより、基板(例えば、シリコン(Si)基板、など)上に製造することができる。
デバイス200は、様々な材料を使用して製造することができる。例えば、デバイス200は、限定されないが、導電性材料、半導体材料、超電導材料、誘電体材料、高分子材料、有機材料、無機材料、非導電性材料、及び/又は集積回路を製造するための上述した技術の1つ又は複数で利用できる別の材料を含む1つ又は複数の異なる材料区分の材料を使用して製造することができる。
図3は、本明細書に記載の1つ又は複数の実施形態による、キュビット周波数空間の分散領域における交差共鳴動作を促進することができる例示的で非限定的なグラフ300を示す。それぞれの実施形態で使用される同様の要素もしくはプロセス、又はその両方の繰り返しの説明は、簡潔にするために省略される。
グラフ300には、本明細書に記載の本主題の開示の1つ又は複数の実施形態を実施することから得られる結果データが含まれ得る。例えば、グラフ300には、図1及び図2を参照して上述したように、及び/又は本明細書に記載の本主題の開示の1つ又は複数の他の実施形態に従って(例えば、それぞれ図5、図6,図7、図8、及び図9を参照して以下に説明するコンピュータ実装方法500、600、700、800、及び/又は900に従って)、デバイス100もしくはデバイス200、又はその両方を設計、製造、及び/又は実装すること(例えば、シミュレート、量子化、テスト、など)から得られる結果データが含まれ得る。
図3に示す非限定的なグラフ300の例では、上述した、そのような結果データは、離調によって生じ得る制御キュビット102上のシュタルクシフトを示すプロット302としてグラフ300上にレンダリングされ得る。例えば、プロット302は、非共鳴トーンの範囲にわたって生じ得る制御キュビット102のシュタルクシフトを示す。図3に示す非限定的なグラフ300の例では、グラフ300のY軸は、図3においてグラフ300のX軸に示され、「制御キュビット102及びシュタルク差Δ1s(GHz)」として示される非共鳴トーンの範囲にわたって生じ得る制御キュビット102のシュタルクシフト(ギガヘルツ(GHz))で表される)を示す。図3の破線の長方形によって視覚的に表される領域304は、非共鳴トーンの範囲にわたる制御キュビット102上のシュタルクシフトの方向を示し、領域304における制御キュビット102上のそのようなシュタルクシフトは、動的衝突(例えば、周波数衝突)を低減することができる。
図4は、本明細書に記載の1つ又は複数の実施形態による、キュビット周波数空間の分散領域における交差共鳴動作を促進することができる例示的で非限定的なグラフ400を示す。それぞれの実施形態で使用される同様の要素もしくはプロセス、又はその両方の繰り返しの説明は、簡潔にするために省略される。
グラフ400には、本明細書に記載の本主題の開示の1つ又は複数の実施形態を実施することから得られる結果データが含まれ得る。例えば、グラフ400には、図1及び図2を参照して上述したように、及び/又は本明細書に記載の本主題の開示の1つ又は複数の他の実施形態に従って(例えば、それぞれ図5、図6,図7、図8、及び図9を参照して以下に説明するコンピュータ実装方法500、600、700、800、及び/又は900に従って)、デバイス100もしくはデバイス200、又はその両方を設計、製造、及び/又は実装すること(例えば、シミュレート、量子化、テスト、など)から得られる結果データが含まれ得る。
グラフ400には、図1及び図2を参照して上述したデバイス100もしくはデバイス200、又はその両方に関連するように、キュビット計算空間からの漏出の例示が含まれ得る。本明細書で言及するように、「漏出」は、
量子状態、及び/又は
量子状態(例えば、キュビット計算空間)に記憶された量子情報のうち、そのような量子状態から漏出し、1つ又は複数の他の量子状態(例えば、
量子状態、
量子状態、など)内に漏出するパーセンテージ(%)を表す。
図4に示すように、グラフ400は、グラフ400のY軸においてメガヘルツ(MHz)で表される駆動力の関数として、及びグラフ400のX軸においてギガヘルツ(GHz)で表される制御キュビット及びターゲットキュビットの離調(図4ではΔctと示す)として、上述したような漏出を示す。いくつかの実施形態では、グラフ400は、グラフ400のY軸においてMHzで表される駆動力108、及びグラフ400のX軸においてGHzで表される制御キュビット102及びターゲットキュビット104の離調の関数として、上述したそのような漏出を示す。グラフ400はさらに、グラフ400のZ軸(例えば、ページの内外に延びるグラフ400の軸)の灰色の濃淡を変化させることによって表されるパーセンテージ(%)としてそのような漏出を示す。
グラフ400の領域402は、固定されたZX交差共鳴率で交差共鳴ゲート動作を実行するために使用できる離調パラメータ及び駆動力パラメータを表すマーカ404を示す(明確にするために、図4では単一のマーカ404のみに注釈が付けられている)。例えば、図1及び図2に示す例示的な実施形態の上記の説明を参照すると、本明細書で定義するエンティティは、制御キュビット102及びターゲットキュビット104が、固定されたZX交差共鳴率(例えば、図4に示す0.25MHz)で交差共鳴ゲート動作を実行できるように、デバイス100もしくはデバイス200、又はその両方を設計、製造、及び/又は実装するために、グラフ400のマーカ404によって表される離調及び/又は駆動力パラメータのうちの1つ又は複数を使用することができる。例えば、図1及び図2に示す例示的な実施形態の上記の説明を参照すると、本明細書で定義するエンティティは、制御キュビット102及びターゲットキュビット104が、図4に示すように、0.25MHzの固定されたZX交差共鳴率に基づいて、分散領域における交差共鳴ゲート動作を実行できるように、デバイス100もしくはデバイス200、又はその両方を設計、製造、及び/又は実装するために、グラフ400のマーカ404によって表される離調及び/又は駆動力パラメータのうちの1つ又は複数を使用することができる。
デバイス100もしくはデバイス200、又はその両方は、様々な技術に関連付けられ得る。例えば、デバイス100もしくはデバイス200、又はその両方は、量子コンピューティング技術、量子ゲート技術、量子交差共鳴ゲート動作技術、量子カプラ技術、量子ハードウェア及び/又はソフトウェア技術、量子回路技術、超電導回路技術、機械学習技術、人工知能技術、クラウドコンピューティング技術、及び/又はその他の技術に関連付けることができる。
デバイス100もしくはデバイス200、又はその両方は、上で識別された様々な技術に関連付けられたシステム、デバイス、構成要素、動作ステップもしくは処理ステップ、又はその組み合わせに技術的改善を提供することができる。例えば、デバイス100もしくはデバイス200、又はその両方は、制御キュビット102又はターゲットキュビット104の少なくとも1つと、例えば、スペクテイタキュビット106、スペクテイタキュビット202、スペクテイタキュビット204、キュビット206、キュビット208、キュビット210、及び/又はデバイス100もしくはデバイス200、又はその両方の別のキュビットなどの1つ又は複数の隣接キュビットとの間のクロストーク(例えば、ZZ相互作用)もしくは周波数衝突、又はその両方を軽減することができる。この例では、そのようなキュビット間のクロストークもしくは周波数衝突、又はその両方のそのような軽減は、それによって、(例えば、スペクテイタキュビット106、スペクテイタキュビット202、スペクテイタキュビット204、などに関連付けられた)動的スペクテイタエラーの削減、漏出エラーの削減、及び/又は制御キュビット102もしくはターゲットキュビット104、又はその両方に関連付けられた量子ゲートエラーの削減の少なくとも1つを促進することができる。
別の例では、これまで一般的に言われていた見解に反し、デバイス100もしくはデバイス200、又はその両方は、ストラドリング領域において達成できるのと同じ又は同等の速度(例えば、交差共鳴ゲートタイム)、性能(例えば、精度)、忠実度で、及び/又は分散領域においてZZ結合(例えば、ZZ相互作用率)で交差共鳴ゲート動作を実行することができる。これは、漏出エラーを削減するのに有益であるだけでなく、周波数混雑の問題も大幅に解消し、したがって、より高い性能及び拡張可能な交差共鳴アーキテクチャへの道を開く。デバイス100もしくはデバイス200、又はその両方は、ハードウェアを大きく変更することなく、新しいオーバヘッドなしで、非常に難しい周波数混雑問題に対する解決策を提供し、これは、量子プロセッサの規模が拡張するにつれて特に重要である。デバイス100もしくはデバイス200、又はその両方はさらに、そのようなデバイスの設計及び/又は製造におけるより大きな公差、及び異なるキュビット非調和性に対する柔軟性を可能にする(例えば、より小さなターゲットキュビット非調和性は、大きなキュビット離調限界がより容易に達成されることを意味する)。
デバイス100もしくはデバイス200、又はその両方は、デバイス100もしくはデバイス200、又はその両方に関連付けることができる処理ユニット(例えば、デバイス100もしくはデバイス200、又はその両方を有する量子プロセッサ)に技術的改善を提供することができる。上述したように、例えば、上述した複数のキュビット間のクロストーク(例えば、ZZ相互作用)及び/又は周波数衝突を軽減することにより、それによって、デバイス100もしくはデバイス200、又はその両方は、分散領域における交差共鳴ゲート動作を実行する制御キュビット102もしくはターゲットキュビット104、又はその両方を有する2キュビットシステムに関連付けられた量子ゲートエラーの削減、そのような2キュビットシステムに関連付けられた量子ゲート速度の向上、そのような2キュビットシステムに関連付けられた忠実度の向上、及び/又はそのような2キュビットシステムに関連付けられた性能の向上を促進することができる。この例では、そのような量子ゲートエラーを減少させ、量子ゲート速度を向上させ、忠実度を向上させ、及び/又は分散領域における交差共鳴ゲート動作を実行する、そのような2キュビットシステムの性能を向上させることによって、デバイス100もしくはデバイス200、又はその両方は、デバイス100もしくはデバイス200、又はその両方を有する量子プロセッサの精度、速度、忠実度、及び/又は性能の向上を促進することができる。
上述した複数のキュビット間のクロストーク(例えば、ZZ相互作用)及び/又は周波数衝突のそのような軽減に基づいて、デバイス100もしくはデバイス200、又はその両方の実際の適用は、それらを量子デバイス(例えば、量子プロセッサ、量子コンピュータ、など)に実装して、様々な分野(例えば、金融、化学、医学、など)の複雑さに及ぶ様々な問題(例えば、推定問題、最適化問題、など)に対する1つ又は複数の解を、向上した忠実度及び/又は精度で、より迅速かつ、より効率的に計算できる(例えば、ヒューリスティック、など)ことである。例えば、上述した複数のキュビット間のクロストーク(例えば、ZZ相互作用)及び/又は周波数衝突のそのような軽減に基づいて、デバイス100もしくはデバイス200、又はその両方の実際の適用は、それらを、例えば、量子プロセッサに実装して、向上した忠実度及び/又は精度で、化学、医学、及び/又は金融の分野における最適化問題に対する1つ又は複数の解を計算でき(例えば、ヒューリスティック、など)、そのような解を使用して、例えば、新しい化合物、新しい薬、及び/又は新しいオプション価格決定システム及び/又は方法を設計することができることである。
デバイス100もしくはデバイス200、又はその両方は、比較的新しい量子コンピューティング技術によって考え出される新しい手法を提供することを理解されたい。例えば、デバイス100もしくはデバイス200、又はその両方は、量子計算中に量子ゲートエラーをもたらす上述した複数のキュビット間のクロストーク(例えば、ZZ相互作用)及び/又は周波数衝突を軽減するための新しい手法を提供する。この例では、そのようなクロストーク(例えば、ZZ相互作用)及び/又は周波数衝突を軽減するためのそのような新しい手法は、デバイス100もしくはデバイス200、又はその両方を有する量子プロセッサを使用して、向上した忠実度及び/又は精度で、より迅速かつ、より効率的な量子計算を可能にすることができる。
デバイス100もしくはデバイス200、又はその両方は、本質的に高度に技術的であり、抽象的ではなく、人間が一連の精神的行動として実行できない問題を解決するために、ハードウェア及び/又はソフトウェアを使用することができる。いくつかの実施形態では、本明細書に記載のプロセスの1つ又は複数は、上記で識別された様々な技術に関連する定義されたタスクを実行するために、1つ又は複数の専用コンピュータ(例えば、専用処理ユニット、専用古典的コンピュータ、専用量子コンピュータ、など)によって実行することができる。デバイス100もしくはデバイス200、又はその両方を、上述の技術の進歩、量子コンピューティングシステム、クラウドコンピューティングシステム、コンピュータアーキテクチャもしくは別の技術又はその組み合わせの使用によって生じる新しい問題を解決するために使用することができる。
デバイス100もしくはデバイス200、又はその両方は、デバイス100もしくはデバイス200、又はその両方によって実行できる様々な動作は、人間の思考の能力を超える動作であるため、電気部品、機械部品、及び人間の思考の中で再現できない、又は人間によって実行できない回路の様々な組み合わせを利用できることを理解されたい。例えば、一定の期間にわたってデバイス100もしくはデバイス200、又はその両方によって処理されるデータの量、そのようなデータを処理する速度、又は処理されるデータのタイプは、同じ期間に人間の思考で処理できる量よりも多く、速度よりも速く、又はデータタイプと異なり得る。
複数の実施形態によれば、デバイス100もしくはデバイス200、又はその両方は、本明細書に記載の様々な動作も実行しながら、1つ又は複数の他の機能(例えば、完全に電源を入れる、完全に実行する、など)を実行するために完全に動作することもできる。そのような同時の複数動作の実行は、人間の思考の能力を超えていることを理解されたい。デバイス100もしくはデバイス200、又はその両方は、人間のユーザなどのエンティティによって手動で取得することが不可能な情報を含むことができることも理解されたい。例えば、デバイス100もしくはデバイス200、又はその両方に含まれる情報のタイプ、量もしくは種類、又はその組み合わせは、人間のユーザによって手動で取得される情報よりも複雑であり得る。
図5は、本明細書に記載の1つ又は複数の実施形態による、キュビット周波数空間の分散領域における交差共鳴動作を促進できる、例示的で非限定的なコンピュータ実装方法500のフロー図を示す。それぞれの実施形態で使用される同様の要素もしくはプロセス、又はその両方の繰り返しの説明は、簡潔にするために省略される。
502において、コンピュータ実装方法500は、プロセッサ(例えば、処理ユニット1014、など)に動作可能に結合されたシステム(例えば、コンピュータ1012に結合可能なAWG、VNA、もしくはメーザ、又はその組み合わせに結合されたデバイス100を有するシステム)によって、第1の動作周波数及び第1の非調和性(例えば、動作周波数ω0及び非調和性δ0を有する制御キュビット102)を有する第1のキュビットを、第2の動作周波数及び第2の非調和性(例えば、動作周波数ω2及び非調和性δ2を有するターゲットキュビット104)を有する第2のキュビットに結合することを備えることができる。
504において、コンピュータ実装方法500は、システム(例えば、コンピュータ1012に結合可能なAWG、VNA、及び/又はメーザに結合されたデバイス100を有するシステム)によって、結合に基づいて(例えば、図1を参照して上述した交差エネルギ分配比pに基づいて)交差共鳴動作(例えば、交差共鳴ゲート動作)を実行することを備えることができ、ここで、第1の動作周波数と第2の動作周波数との間の離調(例えば、離調Δ02)は、第1の非調和性及び第2の非調和性よりも大きい(例えば、Δ02>>|δ0|,|δ2|と表される)。
図6は、本明細書に記載の1つ又は複数の実施形態による、キュビット周波数空間の分散領域における交差共鳴動作を促進できる、例示的で非限定的なコンピュータ実装方法600のフロー図を示す。それぞれの実施形態で使用される同様の要素もしくはプロセス、又はその両方の繰り返しの説明は、簡潔にするために省略される。
602において、コンピュータ実装方法600は、プロセッサ(例えば、処理ユニット1014、など)に動作可能に結合されたシステム(例えば、コンピュータ1012に結合可能なAWG、VNA、もしくはメーザ、又はその組み合わせに結合されたデバイス100を有するシステム)によって、第1の動作周波数及び第1の非調和性(例えば、動作周波数ω0及び非調和性δ0を有する制御キュビット102)を有する第1のキュビットを、第2の動作周波数及び第2の非調和性(例えば、動作周波数ω2及び非調和性δ2を有するターゲットキュビット104)を有する第2のキュビットに結合することを備えることができる。
604において、コンピュータ実装方法600は、システム(例えば、コンピュータ1012に結合可能なAWG、VNA、及び/又はメーザに結合されたデバイス100を有するシステム)によって、結合に基づいて(例えば、図1を参照して上述した交差エネルギ分配比pに基づいて)交差共鳴動作(例えば、交差共鳴ゲート動作)を実行することを備えることができ、ここで、第1の動作周波数と第2の動作周波数との間の離調(例えば、離調Δ02)は、第1の非調和性及び第2の非調和性よりも大きい(例えば、Δ02>>|δ0|,|δ2|と表される)。
606において、コンピュータ実装方法600は、システム(例えば、コンピュータ1012に結合可能なAWG、VNA、及び/又はメーザに結合されたデバイス100有するシステム)によって、離調に対する結合の固定比に基づいて(例えば、J/Δの固定比に基づいて)、定義された動的エンタングルメント率(例えば、定義されたZX交差共鳴率)と、定義されたスプリアス静的エンタングルメント率(例えば、定義されたZZ相互作用率)との比が維持されるように、離調の関数として結合を調整(例えば、交差エネルギ分配比pの調整)することを備えることができる。
608において、コンピュータ実装方法600は、システム(例えば、コンピュータ1012に結合可能なAWG、VNA、及び/又はメーザに結合されたデバイス100もしくはデバイス200、又はその両方を有するシステム)によって、第1のキュビット及び第2のキュビットに隣接するキュビットを有する複数のキュビット(例えば、デバイス200のスペクテイタキュビット106、スペクテイタキュビット202、スペクテイタキュビット204、キュビット206、キュビット208、及び/又はキュビット210)の格子内の静的周波数衝突を軽減することを備えることができ、ここで、軽減は、結合された2つのキュビットの非調和性よりも大きい格子(例えば、スペクテイタキュビット106とキュビット206の間の離調)内の2つの結合されたキュビット間の第2の離調に基づいている。
610において、コンピュータ実装方法600は、システム(例えば、コンピュータ1012に結合可能なAWG、VNA、及び/又はメーザに結合されたデバイス100もしくはデバイス200、又はその両方を有するシステム)によって、第1のキュビット及び第2のキュビットに隣接するキュビットを有する複数のキュビット(例えば、デバイス200のスペクテイタキュビット106、スペクテイタキュビット202、スペクテイタキュビット204、キュビット206、キュビット208、及び/又はキュビット210)の格子内の動的衝突に起因するクロストークを軽減することを備えることができ、ここで、軽減は、結合された2つのキュビットの非調和性よりも大きい格子(例えば、スペクテイタキュビット106とキュビット206の間の離調)内の2つの結合されたキュビット間の第2の離調に基づいている。
図7は、本明細書に記載の1つ又は複数の実施形態による、キュビット周波数空間の分散領域における交差共鳴動作を促進できる、例示的で非限定的なコンピュータ実装方法700のフロー図を示す。それぞれの実施形態で使用される同様の要素もしくはプロセス、又はその両方の繰り返しの説明は、簡潔にするために省略される。
702において、コンピュータ実装方法700は、プロセッサ(例えば、処理ユニット1014、など)に動作可能に結合されたシステム(例えば、コンピュータ1012に結合可能なAWG、VNA、及び/又はメーザに結合されたデバイス100を有するシステム)によって、第1のキュビット(例えば、制御キュビット102)を第2のキュビット(例えば、ターゲットキュビット104)に結合することを備えることができる。
704において、コンピュータ実装方法700は、システム(例えば、コンピュータ1012に結合可能なAWG、VNA、及び/又はメーザに結合されたデバイス100を有するシステム)によって、(例えば、図1を参照して上述したように)結合に基づいて、キュビット周波数空間の分散領域における交差共鳴動作(例えば、交差共鳴ゲート動作)を実行することを備えることができる。
図8は、本明細書に記載の1つ又は複数の実施形態による、キュビット周波数空間の分散領域における交差共鳴動作を促進できる、例示的で非限定的なコンピュータ実装方法800のフロー図を示す。それぞれの実施形態で使用される同様の要素もしくはプロセス、又はその両方の繰り返しの説明は、簡潔にするために省略される。
802において、コンピュータ実装方法800は、プロセッサ(例えば、処理ユニット1014、など)に動作可能に結合されたシステム(例えば、コンピュータ1012に結合可能なAWG、VNA、及び/又はメーザに結合されたデバイス100を有するシステム)によって、第1のキュビット(例えば、制御キュビット102)を第2のキュビット(例えば、ターゲットキュビット104)に結合することを備えることができる。
804において、コンピュータ実装方法800は、システム(例えば、コンピュータ1012に結合可能なAWG、VNA、及び/又はメーザに結合されたデバイス100を有するシステム)によって、(例えば、図1を参照して上述したように)結合に基づいて、キュビット周波数空間の分散領域における交差共鳴動作(例えば、交差共鳴ゲート動作)を実行することを備えることができる。
806において、コンピュータ実装方法800は、システム(例えば、コンピュータ1012に結合可能なAWG、VNA、及び/又はメーザに結合されたデバイス100を有するシステム)によって、第1のキュビットの第1の動作周波数(例えば、動作周波数ω0)と第2のキュビットの第2の動作周波数(例えば、動作周波数ω2)との間の離調の関数としての結合(例えば、図1を参照して上述した交差エネルギ分配比p)を調整することを備えることができる。
808において、コンピュータ実装方法800は、システム(例えば、コンピュータ1012に結合可能なAWG、VNA、及び/又はメーザに結合されたデバイス100有するシステム)によって、離調に対する結合の固定比に基づいて(例えば、J/Δの固定比に基づいて)、定義された動的エンタングルメント率(例えば、定義されたZX交差共鳴率)と、定義されたスプリアス静的エンタングルメント率(例えば、定義されたZZ相互作用率)との比が維持されるように、第1のキュビットの第1の動作周波数(例えば、動作周波数ω0)と第2のキュビットの第2の動作周波数(例えば、動作周波数ω2)との間の離調の関数として結合を調整(例えば、図1を参照して上述した交差エネルギ分配比p)することを備えることができる。
810において、コンピュータ実装方法800は、システム(例えば、AWG、VNA、及び/又はコンピュータ1012に結合可能なメーザに結合されたデバイス100を有するシステム)によって、結合及び実行に基づく、第1のキュビット又は第2のキュビットの少なくとも1つと、隣接キュビットとの間のクロストーク又は周波数衝突の少なくとも1つを軽減することを備え得る。
図9は、本明細書に記載の1つ又は複数の実施形態による、キュビット周波数空間の分散領域における交差共鳴動作を促進できる、例示的で非限定的なコンピュータ実装方法900のフロー図を示す。それぞれの実施形態で使用される同様の要素もしくはプロセス、又はその両方の繰り返しの説明は、簡潔にするために省略される。
902において、コンピュータ実装方法900は、量子デバイス内の2キュビットシステムに対応する交差エネルギ分配比を(例えば、AWG、VNA、及び/又はコンピュータ1012に結合可能なメーザに結合されたデバイス100を有するシステムを介して)維持することを備えることができる。例えば、デバイス100を設計、製造、及び/又は実装できる本明細書で定義するエンティティは、図1を参照して上述したように、デバイス100の制御キュビット102及びターゲットキュビット104を備える2キュビットシステムに対応する交差エネルギ分配比pを維持することができる。
904において、コンピュータ実装方法900は、2キュビットシステムの2キュビットを、(例えば、AWG、VNA、及び/又はコンピュータ1012に結合可能なメーザに結合されたデバイス100を有するシステムを介して)離調することを備えることができる。例えば、図1を参照して上述したように、本明細書で定義するエンティティは、制御キュビット102の動作周波数ω0がターゲットキュビット104の動作周波数ω2よりも低くなるように、デバイス100を設計、製造、及び/又は実装することができる。この例では、そのようなエンティティは、制御キュビット102及びターゲットキュビット104が、互いに大きく離調(例えば、|ω0-ω2|>>0)されるように、及び/又はターゲットキュビット104及びスペクテイタキュビット106が、互いに大きく離調(例えば、|ω2-ω1|>>0)されるように、デバイス100をさらに設計、製造、及び/又は実装することができる。
906で、コンピュータ実装方法900は、離調が2キュビットのそれぞれの非調和性よりも大きく、2キュビット間の結合よりも大きいかどうかを、(例えば、AWG、VNA、及び/又はコンピュータ1012に結合可能なメーザに結合されたデバイス100を有するシステムを介して)判定することを備えることができる。例えば、図1を参照して上述したように、本明細書で定義するエンティティは、上記で定義された条件がJ<<Δ02>>|δ0|,|δ2|を満たすように、デバイス100を設計、製造、及び/又は実装することができる。
906において、離調が2キュビットのそれぞれの非調和性よりも大きく、2キュビット間の結合よりも大きいと判定された場合、908において、コンピュータ実装方法900は、ゲート動作の速度を最大化するために、2キュビットシステムに印加される(例えば、制御キュビット102に印加される)駆動力(例えば、駆動力108)を、(例えば、AWG、VNA、及び/又はコンピュータ1012に結合可能なメーザに結合されたデバイス100を有するシステムを介して)調整することを備えることができる。例えば、図1を参照して上述したように、制御キュビット102及びターゲットキュビット104が、分散領域における交差共鳴ゲート動作の最大ゲート速度を達成することを可能にするために、デバイス100を設計、製造及び/又は実装できる、そのようなエンティティは、上記の式(4)で定義された無次元駆動パラメータξの値が1/2又はほぼ1/2(例えば、ξ=1/2又はξ≒1/2)となるように、駆動力108を調整することができる。
910において、コンピュータ実装方法900は、分散領域における2キュビット間の交差共鳴ゲート動作を、(例えば、AWG、VNA、及び/又はコンピュータ1012に結合可能なメーザに結合されたデバイス100を有するシステムを介して)実行することを備えることができる。例えば、図1を参照して上述したように、上記で定義された条件J<<Δ02>>|δ0|,|δ2|を満たすように、デバイス100を設計、製造、及び/又は実装する、本明細書で定義するエンティティは、それによって、デバイス100の制御キュビット102及びターゲットキュビット104が、分散領域における交差共鳴ゲート動作を実行することを可能にすることができる。
906において、離調が2キュビットのそれぞれの非調和性よりも大きくなく、2キュビット間の結合よりも大きいと判定された場合、コンピュータ実装方法900は、902及び904に戻って、2キュビットシステムに対応する交差エネルギ分配比pを維持し、上記で定義された条件J<<Δ02>>|δ0|,|δ2|を満たすように、キュビットを離調することを備えることができる。いくつかの実施形態では、コンピュータ実装方法900は、上記で定義された条件J<<Δ02>>|δ0|,|δ2|を満たすまで、動作902、904、及び906を繰り返すことを備えることができ、それによって、制御キュビット102及びターゲットキュビット104が分散領域における交差共鳴ゲート動作を実行することを可能にすることができる。
開示される主題の様々な態様の文脈を提供するために、図10及び以下の考察は、開示される主題の様々な態様を実施できる適切な環境の一般的な説明を提供することを意図している。図10は、本明細書に記載の1つ又は複数の実施形態を促進することができる例示的な非限定的な動作環境のブロック図を示す。例えば、以下に説明するように、動作環境1000を使用して、本明細書に記載の本主題の開示の1つ又は複数の実施形態に従って、デバイス100もしくはデバイス200、又はその両方を製造するために実装できる、図1及び図2を参照して上述した例示的で非限定的な多段階製造シーケンスを実装することができる。別の例では、以下に説明するように、動作環境1000を使用して、それぞれ図5、図6、図7、図8、及び図9を参照して上述した、例示的で非限定的なコンピュータ実装方法500、600、700、800、及び/又は900の1つ又は複数を実装することができる。本明細書に記載の他の実施形態で使用される同様の要素及び/又はプロセスの繰り返しの説明は、簡潔にするために省略されている。
デバイス100もしくはデバイス200、又はその両方を製造するために実装できる、図1及び図2を参照して上述した非限定的な多段階製造シーケンスの例は、コンピューティングシステム(例えば、図10に示し、以下に説明する動作環境1000)もしくはコンピューティングデバイス(例えば、図10に示し、以下に説明するコンピュータ1012)、又はその両方によって実装することができる。非限定的な例示的な実施形態では、そのようなコンピューティングシステム(例えば、動作環境1000)もしくは、そのようなコンピューティングデバイス例えば、コンピュータ1012)、又はその両方は、1つ又は複数のプロセッサによって実行されると、図1及び図2を参照して上述した例示的で非限定的な多段階製造シーケンスの実行を促進できる実行可能命令を記憶することができる。1つ又は複数のプロセッサ及び1つ又は複数のメモリデバイスを備えることができる。非限定的な例として、1つ又は複数のプロセッサは、半導体及び/又は超電導デバイスの製造を実行するように動作可能な1つ又は複数のシステム及び/又は機器を指示及び/又は制御することによって、図1及び図2を参照して上述した例示的で非限定的な多段階製造シーケンスの実行を促進することができる。
別の例では、それぞれ図5、図6、図7、図8、及び図9を参照して上述した、例示的で非限定的なコンピュータ実装方法500、600、700、800、及び/又は900の1つ又は複数は、動作環境1000によって実装(例えば、実行)することもできる。非限定的な例として、そのようなコンピューティングデバイス(例えば、コンピュータ1012)の1つ又は複数のプロセッサは、そのようなコンピュータ実装方法の動作もしくはルーチン、又はその両方を実行するように動作可能な1つ又は複数のシステム及び/又は機器(例えば、AWG、VNA、メーザ、などのような本明細書で定義する、例えば、1つ又は複数のタイプの外部デバイス)を指示及び/又は制御することによって、それぞれ図5、図6、図7、図8、及び図9を参照して上述した、例示的で非限定的なコンピュータ実装方法500、600、700、800、及び/又は900の1つ又は複数の実行を促進することができる。
説明を簡潔にするために、コンピュータ実装方法論は、一連の行動として示され、説明される。主題のイノベーションは、示される行動によって、もしくは、行動の順序によって、又はその組み合わせによって限定されないことが理解され、認識されるべきである。例えば、行動は、本明細書に記載及び説明されない他の行動と共に、様々な順序で、及び/又は、同時に生じ得る。さらに、示されるすべての行動が、開示される主題によるコンピュータ実装方法論を実装するために必要であり得るわけではない。さらに、当業者であれば、コンピュータ実装方法論が代替的に、状態図又はイベントを介して、相互に関連のある一連の状態として表され得ることを理解し、認識するであろう。さらに、以下及び本明細書全体を通して開示されるコンピュータ実装方法論は、そのようなコンピュータ実装方法論をコンピュータへ移送及び転送することを促進するために製品に記憶されることが可能であることをさらに理解されたい。本明細書で使用される製品という用語は、任意のコンピュータ可読デバイス又は記憶媒体からアクセス可能なコンピュータプログラムを包含することを意図している。
図10を参照すると、本開示の様々な態様を実施するための適切な動作環境1000はまた、コンピュータ1012を含むことができる。コンピュータ1012はまた、処理ユニット1014、システムメモリ1016、及びシステムバス1018を含むことができる。システムバス1018は、限定されないが、システムメモリ1016を含むシステム構成要素を処理ユニット1014に結合する。処理ユニット1014は、利用可能な様々なプロセッサのいずれかであり得る。デュアルマイクロプロセッサ及び他のマルチプロセッサアーキテクチャもまた、処理ユニット1014として使用できる。システムバス1018は、メモリバス又はメモリコントローラ、ペリフェラルバス又は外部バス、及び/又は、限定されないが、工業標準アーキテクチャ(ISA)、マイクロチャネルアーキテクチャ(MSA)、拡張ISA(EISA)、インテリジェントドライブエレクトロニクス(IDE)、VESAローカルバス(VLB)、ペリフェラルコンポーネントインターコネクト(PCI)、カードバス、ユニバーサルシリアルバス(USB)、アドバンスドグラフィックスポート(AGP)、ファイヤワイヤ(IEEE1394)、及びスモールコンピュータシステムインターフェース(SCSI)を含む任意の様々な利用可能なバスアーキテクチャを使用するローカルバスを含むいくつかのタイプのバス構造のいずれかであり得る。
システムメモリ1016はまた、揮発性メモリ1020及び不揮発性メモリ1022を含むことができる。起動中など、コンピュータ1012内の要素間で情報を転送するための基本ルーチンを含む基本入力/出力システム(BIOS)は、不揮発性メモリ1022に記憶される。コンピュータ1012はまた、取り外し可能/取り外し不可能、揮発性/不揮発性コンピュータ記憶媒体を含むことができる。図10は、例えば、ディスクストレージ1024を示す。ディスクストレージ1024はまた、限定されないが、磁気ディスクドライブ、フロッピディスクドライブ、テープドライブ、Jazドライブ、Zipドライブ、LS-100ドライブ、フラッシュメモリカード、又はメモリスティックのようなデバイスを含むことができる。ディスクストレージ1024は、記憶媒体を別個に、又は他の記憶媒体と組み合わせて含むこともできる。ディスクストレージ1024のシステムバス1018への接続を促進するために、インターフェース1026などの取り外し可能又は取り外し不可能なインターフェースが通常、使用される。図10はまた、ユーザと適切な動作環境1000に記載されている基本的なコンピュータリソースとの間の仲介者として機能するソフトウェアを示す。そのようなソフトウェアはまた、例えば、オペレーティングシステム1028を含むことができる。ディスクストレージ1024に記憶できるオペレーティングシステム1028は、コンピュータ1012のリソースを制御し、割り当てるように機能する。
システムアプリケーション1030は、例えば、システムメモリ1016又はディスクストレージ1024のいずれかに記憶された、プログラムモジュール1032及びプログラムデータ1034を介してオペレーティングシステム1028によるリソースの管理を利用する。本開示は、様々なオペレーティングシステム又はオペレーティングシステムの組み合わせで実施できることを理解すべきである。ユーザは、入力デバイス1036を介してコンピュータ1012にコマンド又は情報を入力する。入力デバイス1036は、限定されないが、マウス、トラックボール、スタイラス、タッチパッド、キーボード、マイクロフォン、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナ、テレビチューナカード、デジタルカメラ、デジタルビデオカメラ、ウェブカメラ、及び同様のものなどのポインティングデバイスを含む。これら及び他の入力デバイスは、インターフェースポート1038を介してシステムバス1018を通じて処理ユニット1014に接続する。インターフェースポート1038は、例えば、シリアルポート、パラレルポート、ゲームポート、及びユニバーサルシリアルバス(USB)を含む。出力デバイス1040は、入力デバイス1036と同じタイプのポートのいくつかを使用する。したがって、例えば、USBポートを使用して、コンピュータ1012に入力を提供し、コンピュータ1012から出力デバイス1040に情報を出力できる。出力アダプタ1042は、出力デバイス1040の中でも、専用アダプタを必要とする、モニタ、スピーカ、及びプリンタのようないくつかの出力デバイス1040があることを示すために設けられたものである。出力アダプタ1042は、例示するものであり、限定するものではないが、出力デバイス1040とシステムバス1018との間の接続手段を提供するビデオカード及びサウンドカードを含む。他のデバイスもしくはデバイスのシステム又はその両方は、リモートコンピュータ1044などの入力及び出力機能の両方を提供することに留意されたい。
コンピュータ1012は、リモートコンピュータ1044などの1つ又は複数のリモートコンピュータへの論理接続を使用して、ネットワーク化された環境で動作できる。リモートコンピュータ1044は、コンピュータ、サーバ、ルータ、ネットワークPC、ワークステーション、マイクロプロセッサベースの機器、ピアデバイス又は他の一般的なネットワークノード及び同様のものであり得て、典型的には、コンピュータ1012に関連して説明された要素の多く又は、すべてを含むことができる。簡潔にするために、メモリストレージデバイス1046のみがリモートコンピュータ1044と共に示されている。リモートコンピュータ1044は、ネットワークインターフェース1048を通じてコンピュータ1012に論理的に接続され、次いで、通信接続1050を介して物理的に接続される。ネットワークインターフェース1048は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、セルラネットワークなどのような有線もしくは無線通信ネットワーク、又はその両方を包含する。LAN技術は、ファイバ分散データインターフェース(FDDI)、銅線分散データインターフェース(CDDI)、イーサネット(登録商標)、トークンリング及び同様のものを含む。WAN技術は、限定されないが、ポイントツーポイントリンク、統合サービスデジタルネットワーク(ISDN(登録商標))のような回線交換ネットワーク及びその変形、パケット交換ネットワーク、及びデジタル加入者線(DSL)を含む。通信接続1050は、ネットワークインターフェース1048をシステムバス1018に接続するために使用されるハードウェア/ソフトウェアを指す。通信接続1050は、例示的に明確にするため、コンピュータ1012の内部に示されているが、コンピュータ1012の外部でもあり得る。ネットワークインターフェース1048に接続するためのハードウェア/ソフトウェアはまた、例示的な目的のためにのみ、通常の電話グレードモデムを含むモデム、ケーブルモデム及びDSLモデム、ISDN(登録商標)アダプタ、及びイーサネット(登録商標)カードなどの内部及び外部技術を含むことができる。
本発明は、任意の可能な技術的詳細レベルの統合におけるシステム、方法、装置もしくはコンピュータプログラム製品、又はその組み合わせであり得る。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読記憶媒体(又は複数の媒体)を含むことができる。コンピュータ可読記憶媒体は、命令実行デバイスが使用するための命令を保持及び記憶できる有形のデバイスであり得る。コンピュータ可読記憶媒体は、例えば、限定されないが、電子ストレージデバイス、磁気ストレージデバイス、光ストレージデバイス、電磁ストレージデバイス、半導体ストレージデバイス、又は前述の任意の適切な組み合わせであり得る。コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストには、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROM又はフラッシュメモリ)、静的ランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピディスク、その上に命令が記録されたパンチカード又は溝に浮き彫りされた構造などの機械的にエンコードされたデバイス、及び前述の任意の適切な組み合わせも含まれ得る。本明細書で使用されるコンピュータ可読記憶媒体は、電波又は他の自由に伝播する電磁波、導波管又は他の伝送媒体を通って伝播する電磁波(例えば、光ファイバケーブルを通過する光パルス)、又は電線を通じて伝送される電気信号など、一時的な信号それ自体であると解釈されるべきではない。
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理デバイスに、又はネットワーク、例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、及び/又は無線ネットワークを介して外部コンピュータ又は外部ストレージデバイスにダウンロードできる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、及び/又はエッジサーバを含むことができる。各コンピューティング/処理デバイス内のネットワークアダプタカード又はネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に記憶するためにコンピュータ可読プログラム命令を転送する。本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路の構成データ、又は、Smalltalk(登録商標)、C++、又は同様のものなどのオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語などの手続型プログラミング言語を含む、1つ又は複数のプログラミング言語の任意の組み合わせで記述されたソースコード又はオブジェクトコードのいずれかであり得る。コンピュータ可読プログラム命令は、全部がユーザのコンピュータ上で、一部がユーザのコンピュータ上で、スタンドアロンのソフトウェアパッケージとして、一部がユーザのコンピュータ上で一部がリモートコンピュータ上で、又は全部がリモートコンピュータ上で又はサーバ上で実行され得る。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを介してユーザのコンピュータに接続され得るか、又は、(例えば、インターネットサービスプロバイダを使用してインターネットを介して)外部コンピュータに接続され得る。いくつかの実施形態では、例えば、プログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)、又はプログラマブルロジックアレイ(PLA)を含む電子回路は、本発明の態様を実行するために、電子回路をパーソナライズするためのコンピュータ可読プログラム命令の状態情報を利用することによって、コンピュータ可読プログラム命令を実行し得る。
本発明の態様は、本発明の実施形態による方法、装置(システム)、及びコンピュータプログラム製品のフローチャート図もしくはブロック図又はその両方を参照して本明細書に記載されている。フローチャート図もしくはブロック図又はその両方の各ブロック、及びフローチャート図もしくはブロック図又はその両方のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装できることが理解されたい。これらのコンピュータ可読プログラム命令は、汎用コンピュータ、専用コンピュータのプロセッサ、又は他のプログラマブルデータ処理装置に提供され、マシンを生成し得て、その結果、コンピュータ又は他のプログラマブルデータ処理装置のプロセッサを介して実行される命令が、フローチャートもしくはブロック図、又はその両方の1つ又は複数のブロックで指定された機能/行動を実施するための手段を作成する。これらのコンピュータ可読プログラム命令はまた、コンピュータ、プログラマブルデータ処理装置、もしくは他のデバイス、又はその両方に特定の方法で機能するように指示できるコンピュータ可読記憶媒体内に記憶され得て、その結果、その中に記憶された命令を有するコンピュータ可読記憶媒体は、フローチャートもしくはブロック図、又はその両方の1つ又は複数のブロックで指定された機能/行動の態様を実施する命令を含む製品を備える。コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブルデータ処理装置、又は他のデバイスにロードされ、コンピュータ、他のプログラマブル装置、又は他のデバイス上で一連の操作行為を実行させて、コンピュータ実装プロセスを生成し得て、その結果、コンピュータ、他のプログラマブル装置、又は他のデバイス上で実行される命令が、フローチャートもしくはブロック図、又はその両方の1つ又は複数のブロックで指定された機能/行動を実装する。
図中のフローチャート及びブロック図は、本発明の様々な実施形態によるシステム、方法、及びコンピュータプログラム製品の可能な実装のアーキテクチャ、機能、及び動作を示す。これに関して、フローチャート又はブロック図内の各ブロックは、指定された論理機能を実装するための1つ又は複数の実行可能命令を含む、モジュール、セグメント、又は命令の一部を表し得る。いくつかの代替的な実装では、ブロックに示される機能は、図に示される順序を外れて生じ得る。例えば、連続して示される2つのブロックは、実際には、実質的に同時に実行され得るか、又は、関連する機能に応じてブロックが逆の順序で実行されることがあり得る。また、ブロック図もしくはフローチャート図、又はその両方の各ブロック、及びブロック図もしくはフローチャート図、又はその両方のブロックの組み合わせは、指定された機能又は動作を実行する、又は専用ハードウェアとコンピュータ命令との組み合わせを実行する専用ハードウェアベースシステムによって実装できることにも留意されたい。
主題は、1つ又は複数のコンピュータ上で実行されるコンピュータプログラム製品のコンピュータ実行可能命令の一般的な文脈で上述されてきたが、当業者ならば、本開示が他のプログラムモジュールと組み合わせることもできること、又は組み合わせて実施できることを認識するであろう。一般に、プログラムモジュールは、特定のタスクを実行する、及び/又は特定の抽象データタイプを実施するルーチン、プログラム、構成要素、データ構造などを含む。さらに、当業者ならば、本発明のコンピュータ実装方法が、シングルプロセッサ又はマルチプロセッサコンピュータシステム、ミニコンピューティングデバイス、メインフレームコンピュータ、及びコンピュータ、ハンドヘルドコンピューティングデバイス(例えば、PDA、電話)、マイクロプロセッサベース又はプログラマブル家庭用電化製品又は産業用電子機器、及び同様のものを含む他のコンピュータシステム構成で実施できることを理解するであろう。示されている態様は、通信ネットワークを介してリンクされたリモート処理デバイスによってタスクが実行される分散コンピューティング環境でも実施できる。しかし、本開示のすべてではないにしても、一部の態様はスタンドアロンコンピュータで実施できる。分散コンピューティング環境では、プログラムモジュールはローカル及びリモートのメモリストレージデバイスの両方に配置できる。例えば、1つ又は複数の実施形態では、コンピュータ実行可能構成要素は、1つ又は複数の分散メモリユニットを含み得るか、又はそれからなり得るメモリから実行できる。本明細書で使用される場合、「メモリ」及び「メモリユニット」という用語は交換可能である。さらに、本明細書に記載の1つ又は複数の実施形態は、分散方式、例えば、1つ又は複数の分散メモリユニットからコードを実行するために組み合わせて、又は協調して動作する複数のプロセッサでコンピュータ実行可能構成要素のコードを実行できる。本明細書で使用される場合、「メモリ」という用語は、1つの場所にある単一のメモリ又はメモリユニット、又は1つ又は複数の場所にある複数のメモリ又はメモリユニットを包含できる。
本出願で使用される場合、「構成要素」、「システム」、「プラットフォーム」、「インターフェース」及び同様のもの用語は、コンピュータ関連のエンティティ、又は1つ又は複数の特定の機能を備えた動作マシンに関連するエンティティを指すことができる、及び/又は含むことができる。本明細書に開示されるエンティティは、ハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、又は実行中のソフトウェアのいずれかであり得る。例えば、構成要素は、限定されないが、プロセッサ上で実行されるプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、及び/又はコンピュータであり得る。例示として、サーバ上で実行されているアプリケーション及びサーバの両方を構成要素にできる。1つ又は複数の構成要素は、プロセスもしくは実行スレッド又はその両方内に存在し得て、構成要素は、1つのコンピュータ上にローカライズされ得るか、及び/又は2つ以上のコンピュータ間に分散され得る。別の例では、それぞれの構成要素は、その上に記憶された様々なデータ構造を有する様々なコンピュータ可読媒体から実行できる。構成要素は、1つ又は複数のデータパケット(例えば、ローカルシステム、分散システム、及び/又はインターネットなどのネットワークを介して他のシステムと信号を介して別の構成要素と相互作用する、ある構成要素からのデータ)を有する信号などに従って、ローカルプロセスもしくはリモートプロセス又はその両方を介して通信できる。別の例として、構成要素は、電気又は電子回路によって動作する機械部品によって提供される特定の機能を有する装置であり得て、プロセッサによって実行されるソフトウェア又はファームウェアアプリケーションによって動作する。そのような場合、プロセッサは、装置の内部又は外部にあり得て、ソフトウェア又はファームウェアアプリケーションの少なくとも一部を実行できる。さらに別の例として、構成要素は、機械部品なしで電子構成要素を介して特定の機能を提供する装置であり得て、電子構成要素は、電子構成要素の機能を少なくとも部分的に与えるソフトウェア又はファームウェアを実行するためのプロセッサ又は他の手段を含むことができる。1つの態様では、構成要素は、例えば、クラウドコンピューティングシステム内で、仮想マシンを介して電子構成要素をエミュレートできる。
さらに、「又は」という用語は、排他的な「又は」ではなく、包括的な「又は」を意味することを意図している。すなわち、特に明記しない限り、又は文脈から明らかでない限り、「XはA又はBを使用する」は、自然な包括的順列のいずれかを意味することを意図している。すなわち、XがAを使用する場合、XがBを使用する場合、又は、XがA及びBの両方を使用する場合、前述のいずれの場合でも、「XはA又はBを使用する」が満たされる。さらに、主題の明細書及び添付の図面で使用される冠詞「a」及び「an」は、特に明記しない限り、又は文脈から単数形を指すことが明らかでない限り、一般に「1つ又は複数」を意味すると解釈されるべきである。本明細書で使用される場合、「例」及び/又は「例示的」という用語は、例、実例、又は例示として機能することを意味するために使用される。誤解を避けるために記すと、本明細書に開示される主題は、そのような例によって限定されない。さらに、本明細書で「例」及び/又は「例示的」として説明される任意の態様又は設計は、必ずしも他の態様又は設計よりも好ましい又は有利であると解釈されるべきではなく、当業者に知られている同等の例示的な構造及び技術を排除することを意味するものでもない。
主題の明細書で使用されているように、「プロセッサ」という用語は、限定されないが、シングルコアプロセッサ、ソフトウェアマルチスレッド実行機能を有するシングルプロセッサ、マルチコアプロセッサ、ソフトウェアマルチスレッド実行機能を有するマルチコアプロセッサ、ハードウェアマルチスレッド技術を有するマルチコアプロセッサ、並列プラットフォーム、及び分散共有メモリを有する並列プラットフォームを有する実質的に任意のコンピューティング処理ユニット又はデバイスを指すことができる。さらに、プロセッサは、集積回路、特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックコントローラ(PLC)、複雑なプログラマブルロジックデバイス(CPLD)、ディスクリートゲート又はトランジスタロジック、ディスクリートハードウェア構成要素、又は本明細書に記載の機能を実行するように設計されたそれらの任意の組み合わせを指すことができる。さらに、プロセッサは、領域使用量の最適化又はユーザ機器の性能の向上のために、限定されないが、分子及び量子ドットベースのトランジスタ、スイッチ、ゲートなどのナノスケールアーキテクチャを活用できる。プロセッサは、コンピューティング処理ユニットの組み合わせとして実装することもできる。本開示では、「ストア」、「ストレージ」、「データストア」、「データストレージ」、「データベース」、及び構成要素の動作及び機能に関連する実質的に任意の他の情報ストレージ構成要素などの用語は、「メモリ構成要素」、「メモリ」で具現化されたエンティティ、又はメモリを有する構成要素を指すために使用される。本明細書に記載のメモリもしくはメモリ構成要素又はその両方は、揮発性メモリ又は不揮発性メモリのいずれかであり得るか、又は揮発性メモリ及び不揮発性メモリの両方を含み得ることを理解すべきである。例示として、限定されないが、不揮発性メモリは、読み取り専用メモリ(ROM)、プログラマブルROM(PROM)、電気的プログラマブルROM(EPROM)、電気的消去可能ROM(EEPROM)、フラッシュメモリ、又は不揮発性ランダムアクセスメモリ(RAM)(例えば、強誘電体RAM(FeRAM))を含むことができる。揮発性メモリは、例えば、外部キャッシュメモリとして機能できるRAMを含むことができる。例示として、限定されないが、RAMは、同期RAM(SRAM)、ダイナミックRAM(DRAM)、同期DRAM(SDRAM)、ダブルデータレートSDRAM(DDR SDRAM)、拡張SDRAM(ESDRAM)、シンクリンクDRAM(SLDRAM)、ダイレクトラムバスRAM(DRRAM)、ダイレクトラムバスダイナミックRAM(DRDRAM)、及びラムバスダイナミックRAM(RDRAM)などの多くの形態で利用可能である)。さらに、本明細書で開示されるシステム又はコンピュータ実装方法のメモリ構成要素は、これら及び他の任意の適切なタイプのメモリを含むことに限定されず、これらを含むことを意図している。
上述されてきたものは、システム及びコンピュータ実装方法の単なる例を含む。もちろん、本開示を説明する目的で、構成要素又はコンピュータ実装方法の考えられるすべての組み合わせを説明することは不可能であるが、当業者ならば、本開示のさらに多くの組み合わせ及び順列が可能であることを認識できる。さらに、詳細な説明、特許請求の範囲、付録及び図面において、「含む(includes)」、「有する(has)」、「所有する(possesse)」及び同様の用語が使用される範囲で、そのような用語は、特許請求の範囲の過渡的な単語として使用される場合に「備える(comprising)」と解釈されるので、「備える(comprising)」という用語と同様の方法で包括的であることを意図している。
様々な実施形態の説明は、例示の目的で提示されているが、網羅的であること、又は開示された実施形態に限定することを意図するものではない。多くの修正及び変形は、記載する実施形態の範囲及び趣旨から逸脱することなく、当業者に明らかになるであろう。本明細書で使用される用語は、実施形態の原理、実際の適用、又は市場で見られる技術を越える技術的改善を最適に説明するため、又は他の当業者が本明細書に開示される実施形態を理解できるようにするために選択されたものである。