(57)【要約】  ハイブリッド古典−量子コンピューティング・システムを使用して分子系の励起状態特性を計算する方法は、量子プロセッサおよびメモリを使用して、量子論理ゲートの組合せの基底状態波動関数を決定することを含む。一実施形態では、この方法が、一組の励起演算子を形成することを含む。一実施形態では、この方法が、一組の励起演算子およびハミルトン演算子から一組の交換子を形成することを含む。一実施形態では、この方法が、一組の交換子を一組のキュービット状態にマップすることを含み、一組のキュービット状態が、量子プロセッサの一組のキュービットに対応する。一実施形態では、この方法が、量子プロセッサおよびメモリを使用して、一組の交換子を評価することを含む。  一実施形態では、この方法が、計算された一組の交換子から励起状態エネルギーを測定することを、量子読出し回路に実行させることを含む。
2022500743.tif 000002
【特許請求の範囲】
【請求項１】
方法であって、
量子プロセッサおよびメモリを使用して、量子論理ゲートの組合せの基底状態波動関数を決定すること
を含み、前記量子プロセッサが、単一のキュービット回転を実行するように構成された一組の量子論理ゲートを備え、前記方法がさらに、
一組の励起演算子を形成すること
を含み、前記一組の励起演算子が、前記基底状態波動関数から励起状態波動関数を決定するように構成されており、前記方法がさらに、
前記一組の励起演算子およびハミルトン演算子から一組の交換子を形成すること
を含み、前記ハミルトン演算子が、波動関数の基底状態エネルギーを決定するように構成されており、前記方法がさらに、
前記一組の交換子を一組のキュービット状態にマップすること
を含み、前記一組のキュービット状態が、前記量子プロセッサの一組のキュービットに対応し、前記方法がさらに、
前記量子プロセッサおよびメモリを使用して、前記一組の交換子を評価すること、ならびに
計算された前記一組の交換子から励起状態エネルギーを測定することを、量子読出し回路に実行させること
を含む、方法。
【請求項２】
一組のパウリ・ストリングを抽出すること
をさらに含み、前記一組のパウリ・ストリングのうちのそれぞれのパウリ・ストリングが一組のパウリ演算子を含む、
請求項１に記載の方法。
【請求項３】
前記一組のパウリ・ストリングを評価して、前記一組の交換子を計算すること
をさらに含む、請求項２に記載の方法。
【請求項４】
前記一組のパウリ・ストリングの部分集合をグループ化すること
をさらに含み、前記部分集合が、前記一組の交換子のうちの少なくとも１つの交換子に対応する、
請求項２に記載の方法。
【請求項５】
ヨルダン−ウィグナー変換を使用して前記一組の励起演算子をマップすること
をさらに含む、請求項１に記載の方法。
【請求項６】
前記一組の交換子がヨルダン−ウィグナー変換を使用してマップされる、請求項１に記載の方法。
【請求項７】
一組の励起エネルギーの固有値方程式に対応する永年行列方程式の一組の行列要素を計算すること
をさらに含む、請求項１に記載の方法。
【請求項８】
１つまたは複数のコンピュータ可読ストレージ・デバイスと、前記１つまたは複数のストレージ・デバイスのうちの少なくとも１つのストレージ・デバイスに記憶されたプログラム命令とを含むコンピュータ使用可能プログラム製品であって、前記記憶されたプログラム命令が、
量子プロセッサおよびメモリを使用して、量子論理ゲートの組合せの基底状態波動関数を決定するためのプログラム命令であり、前記量子プロセッサが、単一のキュービット回転を実行するように構成された一組の量子論理ゲートを備える、前記プログラム命令と、
一組の励起演算子を形成するためのプログラム命令であり、前記一組の励起演算子が、前記基底状態波動関数から励起状態波動関数を決定するように構成された、前記プログラム命令と、
前記一組の励起演算子およびハミルトン演算子から一組の交換子を形成するためのプログラム命令であり、前記ハミルトン演算子が、波動関数の基底状態エネルギーを決定するように構成された、前記プログラム命令と、
前記一組の交換子を一組のキュービット状態にマップするためのプログラム命令であり、前記一組のキュービット状態が、前記量子プロセッサの一組のキュービットに対応する、前記プログラム命令と、
前記量子プロセッサおよびメモリを使用して、前記一組の交換子を評価するためのプログラム命令と、
計算された前記一組の交換子から励起状態エネルギーを測定することを、量子読出し回路に実行させるためのプログラム命令と
を含む、コンピュータ使用可能プログラム製品。
【請求項９】
前記プログラム命令が、データ処理システム内のコンピュータ可読ストレージ・デバイスに記憶されており、前記プログラム命令が、ネットワークを横切ってリモート・データ処理システムから転送される、請求項８に記載のコンピュータ使用可能プログラム製品。
【請求項１０】
前記プログラム命令が、サーバ・データ処理システム内のコンピュータ可読ストレージ・デバイスに記憶されており、前記プログラム命令が、リモート・データ処理システムに関連したコンピュータ可読ストレージ・デバイス内で使用されるために、ネットワークを横切って前記リモート・データ処理システムにダウンロードされる、請求項８に記載のコンピュータ使用可能プログラム製品。
【請求項１１】
一組のパウリ・ストリングを抽出するためのプログラム命令であり、前記一組のパウリ・ストリングのうちのそれぞれのパウリ・ストリングが一組のパウリ演算子を含む、前記プログラム命令
をさらに含む、請求項８に記載のコンピュータ使用可能プログラム製品。
【請求項１２】
前記一組のパウリ・ストリングを評価して、前記一組の交換子を計算するためのプログラム命令
をさらに含む、請求項１１に記載のコンピュータ使用可能プログラム製品。
【請求項１３】
前記一組のパウリ・ストリングの部分集合をグループ化するためのプログラム命令であり、前記部分集合が、前記一組の交換子のうちの少なくとも１つの交換子に対応する、前記プログラム命令
をさらに含む、請求項１１に記載のコンピュータ使用可能プログラム製品。
【請求項１４】
ヨルダン−ウィグナー変換を使用して前記一組の励起演算子をマップするためのプログラム命令
をさらに含む、請求項８に記載のコンピュータ使用可能プログラム製品。
【請求項１５】
前記一組の交換子がヨルダン−ウィグナー変換を使用してマップされる、請求項８に記載のコンピュータ使用可能プログラム製品。
【請求項１６】
一組の励起エネルギーの固有値方程式に対応する永年行列方程式の一組の行列要素を計算するためのプログラム命令
をさらに含む、請求項８に記載のコンピュータ使用可能プログラム製品。
【請求項１７】
１つまたは複数のプロセッサと、１つまたは複数のコンピュータ可読メモリと、１つまたは複数のコンピュータ可読ストレージ・デバイスと、前記１つまたは複数のプロセッサのうちの少なくとも１つのプロセッサが前記１つまたは複数のメモリのうちの少なくとも１つのメモリを介して実行するための前記１つまたは複数のストレージ・デバイスのうちの少なくとも１つのストレージ・デバイスに記憶されたプログラム命令とを備えるコンピュータ・システムであって、前記記憶されたプログラム命令が、
量子プロセッサおよびメモリを使用して、量子論理ゲートの組合せの基底状態波動関数を決定するためのプログラム命令であり、前記量子プロセッサが、単一のキュービット回転を実行するように構成された一組の量子論理ゲートを備える、前記プログラム命令と、
一組の励起演算子を形成するためのプログラム命令であり、前記一組の励起演算子が、前記基底状態波動関数から励起状態波動関数を決定するように構成された、前記プログラム命令と、
前記一組の励起演算子およびハミルトン演算子から一組の交換子を形成するためのプログラム命令であり、前記ハミルトン演算子が、波動関数の基底状態エネルギーを決定するように構成された、前記プログラム命令と、
前記一組の交換子を一組のキュービット状態にマップするためのプログラム命令であり、前記一組のキュービット状態が、前記量子プロセッサの一組のキュービットに対応する、前記プログラム命令と、
前記量子プロセッサおよびメモリを使用して、前記一組の交換子を評価するためのプログラム命令と、
計算された前記一組の交換子から励起状態エネルギーを測定することを、量子読出し回路に実行させるためのプログラム命令と
を含む、コンピュータ・システム。
【請求項１８】
一組のパウリ・ストリングを抽出するためのプログラム命令であり、前記一組のパウリ・ストリングのうちのそれぞれのパウリ・ストリングが一組のパウリ演算子を含む、前記プログラム命令
をさらに含む、請求項１７に記載のコンピュータ・システム。
【請求項１９】
前記一組のパウリ・ストリングを評価して、前記一組の交換子を計算するためのプログラム命令
をさらに含む、請求項１８に記載のコンピュータ・システム。
【請求項２０】
前記一組のパウリ・ストリングの部分集合をグループ化するためのプログラム命令であり、前記部分集合が、前記一組の交換子のうちの少なくとも１つの交換子に対応する、前記プログラム命令
をさらに含む、請求項１８に記載のコンピュータ・システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、量子コンピューティングを使用した最適化に関する。より詳細には、本発明は、ハイブリッド古典−量子コンピューティング・システム（hybrid classical-quantum computing system）を使用して分子系（molecular system）の励起状態特性を計算するシステムおよび方法に関する。
【背景技術】
【０００２】
使用されている箇所で明示的に区別されていない限り、以降、語または句の中の接頭辞「Ｑ」が、量子コンピューティングの文脈でその語または句に言及していることを示す。
【０００３】
分子および亜原子粒子（subatomic particle）は量子力学の法則に従う。量子力学は、物質界（physical world）がどのように機能しているのかを最も基本的なレベルで探究する物理学の一部門である。このレベルにおいて、粒子は奇妙な振舞いを示し、同時に２つ以上の状態をとり、非常に遠く離れた別の粒子と相互作用する。量子コンピューティングはこれらの量子現象を利用して情報を処理する。
【０００４】
今日我々が一般的に使用しているコンピュータは、古典コンピュータ（本明細書では「従来型」コンピュータまたは従来型ノード（conventional node）ないし「ＣＮ」とも呼ぶ）として知られている。従来型コンピュータは、半導体材料および半導体技術を使用して製造された従来型プロセッサ、半導体メモリ、ならびに磁気または固体状態ストレージ・デバイスを、フォン・ノイマン型アーキテクチャとして知られているアーキテクチャで使用する。具体的には、従来型コンピュータのプロセッサは、２値プロセッサ、すなわち１および０で表された２値データに対して演算を実行するプロセッサである。
【０００５】
量子プロセッサ（ｑプロセッサ）は、エンタングルされた（entangled）キュービット・デバイス（本明細書では簡潔に「キュービット」（「qubit」、複数形は「qubits」）と呼ぶ）の独特の性質を使用して、計算タスクを実行する。量子力学が機能する特定の領域において、物質の粒子は、例えば「オン」状態、「オフ」状態、および「オン」と「オフ」の両方を同時にとる状態など、複数の状態で存在し得る。半導体プロセッサを使用する２値コンピューティングは、（２値コードの１および０と等価の）オンおよびオフ状態だけを使用することに限定されているが、量子プロセッサは、物質のこれらの量子状態を利用して、データ・コンピューティングで使用可能な信号を出力する。
【０００６】
従来型コンピュータは、情報をビットとしてコード化する。それぞれのビットは１または０の値をとることができる。これらの１および０は、コンピュータ機能を最終的に駆動するオン／オフ・スイッチの働きをする。一方、量子コンピュータはキュービットに基づき、キュービットは、量子物理学の鍵となる２つの原理、すなわち重ね合わせ（superposition）およびエンタングルメント（entanglement）に従って動作する。重ね合わせは、事象に対する可能な結末間で、それぞれのキュービットが１推論（inference）と０推論の両方を表すことができることを意味する。エンタングルメントは、重ね合わせの状態にあるキュービットを非古典的手法で互いに相関させることができること、すなわち、１つの状態（それが１なのかもしくは０なのかまたはその両方であるのかは問わない）が別の状態に依存し得ること、および２つのキュービットがエンタングルされているときの方が、２つの個別のキュービットとしてよりも、それらの２つのキュービットにより多くの情報が含まれることを意味する。
【０００７】
これらの２つの原理を使用して、キュービットは、従来型コンピュータを使用することによっては扱えないある種の難しい問題を量子コンピュータが解決することを可能にする手法で量子コンピュータが機能することを可能にする、情報処理装置として動作する。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
最適化問題と呼ばれる種類の問題が存在する。最適化問題は、いくつかの可能な解を有する異なる問題の最良のまたは最適な解を決定する計算問題である。例えば、この異なる問題は、有名な巡回セールスマン問題（traveling salesman problem）であり得る。巡回セールスマン問題では、巡回セールスマンが、どの都市も再訪することなくそれぞれの都市をカバーするように、いくつかの都市間でルートを決定しなければならない。この問題は、多くの可能な解、すなわち都市間のルートを有する。巡回セールスマン問題に関係した最適化問題は、巡回セールスマン問題の要件をそれぞれが満たす多数の可能なルートの中から、最短のルート、すなわち最良のまたは最適なルートを見つけ出すことである。
【０００９】
コンピュータ上で実行するための最適化問題を、そのコンピュータが有限の時間で最適な解を計算することができるように構成することは、それ自体が難しい問題である。本明細書に記載されている通り、最近まで、最適化問題を実行するのに使用可能な唯一のコンピューティング・リソースは従来型コンピュータであった。多くの最適化問題は、従来型コンピュータが合理的なリソースを用いて有限の時間で計算するにはあまりに難しいか、またはあまりに複雑である。一般に、そのような場合、合理的なリソースを用いて合理的な時間で計算することができる近似の解は、近最適解として受け入れられる。
【００１０】
量子コンピューティングの出現は、最適化問題の計算を含む多くのコンピューティング領域における進歩の可能性を示した。量子コンピューティング・システムは、解空間からの多くの解を一度に評価することができるため、例示的な実施形態は、このようなシステムが最適化問題を解くのに特に適していることを認識している。
【００１１】
例示的な実施形態は、分子系の電子構造を解明するためにいくつかの量子コンピューティング方法が提案されていることを認識している。分子系の電子構造は、分子の電子軌道間の相互作用によって支配されている。分子系の状態は、分子内の電子の波のような振舞いを記述する分子軌道の配列である。基底状態は、分子系の最も低いエネルギー状態に対応する。励起エネルギー状態は、基底状態よりも大きい離散的なエネルギー差に対応する。
【００１２】
例示的な実施形態は、現在使用可能な従来型プロセッサが実行することができないか、または望ましくない正確さもしくは計算リソース消費を伴わずには実行することができない変分アルゴリズム（variational algorithm）を、量子プロセッサが実行することができることを認識している。変分アルゴリズムは、量子系の基底状態エネルギーの上限を決定するために変更される試験波動関数（trial wavefunction）を使用する。波動関数は、数学的記述、例えば量子系の量子状態の数学的記述である。量子プロセッサ上では、量子状態が、キュービットに作用している一連の量子論理ゲートとして表される。量子系のそれぞれの量子状態は、対応するエネルギー値を含む。
【００１３】
量子系の基底状態のエネルギーは、量子系の基底状態エネルギーの可能な最小値に対応する。ハミルトン演算子（Hamiltonian）は、量子状態の基底状態エネルギーを記述する行列演算子である。波動関数に作用するハミルトン演算子（Hamiltonian operator）は、量子状態の基底状態エネルギーに対応する値を決定する。
【００１４】
量子系の基底状態エネルギーの上限を計算するため、変分アルゴリズムは、初期波動関数から始まる多数の評価を実行する。それぞれの評価は、評価対象の波動関数に対応する量子状態の基底状態エネルギーを計算する。変分アルゴリズムは次いで、一組の量子論理ゲートのうちの少なくとも１つの量子論理ゲートを変更してキュービット上で回転を実行するなど、評価された波動関数のパラメータを変更して新たな波動関数を生成することができる。新たな波動関数の評価は、新たな波動関数に対応する新たな量子状態の基底状態エネルギーを計算する。変分アルゴリズムは、以前の波動関数の基底状態エネルギーを新たな波動関数の基底状態エネルギーと比較する。
【００１５】
従来型プロセッサは、波動関数のパラメータを変更する最適化アルゴリズムを実行する。量子プロセッサは、波動関数の対応する基底状態エネルギーを計算する。新たな波動関数の基底状態エネルギーと以前の波動関数との比較に基づいて、最適化アルゴリズムは、量子系の計算された基底状態エネルギー（以後、計算基底状態エネルギー）を最小化するために波動関数のパラメータをどのように変更すべきかを決定する。
【００１６】
変分アルゴリズムは、計算基底状態エネルギーが比較的安定するまで、例えば引き続く評価がしきい百分率内の基底状態エネルギーを計算するまで、評価を実行し続けることができる。最終的な評価による安定した計算基底状態エネルギーが、量子系の基底状態の最小エネルギーの上限に対応する。対応する波動関数は、量子系の固有関数（eigenfunction）の近似を表す。
【００１７】
例示的な実施形態は、量子系の励起状態エネルギーを決定する現在使用可能な方法が不正確であることを認識している。量子部分空間展開（quantum subspace expansion）（ＱＳＥ）は、量子系の励起状態エネルギーを計算する方法である。例示的な実施形態は、ＱＳＥが摂動理論（perturbation theory）に基づくことを認識している。摂動理論は、既知の数学的解を有する単純な系から開始し、その後に追加の要素を追加して、より複雑なシステムを近似することを含む。例示的な実施形態は、ＱＳＥがある種の欠点を示すことを認識している。例示的な実施形態は、同様の単純な系がない場合、ある種の量子系に対してはＱＳＥを使用することができないことを認識している。例示的な実施形態はさらに、必要な測定数に関してＱＳＥの費用が計算的にひどく高いことを認識している。
【００１８】
ウィットネス支援変分固有スペクトル・ソルバ（Witness-Assisted Variational Eigenspectra Solver）（ＷＡＶＥＳ）は、量子系の励起状態エネルギーを決定する別の方法である。ＷＡＶＥＳは、量子系の基底状態の変分探索（variational search）、励起状態に対する第２の変分探索、および励起状態エネルギーを近似するための反復的位相推定アルゴリズム（Iterative Phase Estimation Algorithm）（ＩＰＥＡ）を含む。例示的な実施形態は、ＷＡＶＥＳがある種の欠点を示すことを認識している。例示的な実施形態は、ＷＡＶＥＳが、それぞれの励起状態の時間のかかる変分最適化を必要とすることを認識している。
【課題を解決するための手段】
【００１９】
例示的な実施形態は、ハイブリッド古典−量子コンピューティング・システムを使用して分子系の励起状態特性を計算する方法、システムおよびコンピュータ・プログラム製品を提供する。この方法の一実施形態は、量子プロセッサおよびメモリを使用して、量子論理ゲートの組合せの基底状態波動関数を決定することを含み、量子プロセッサは、単一のキュービット回転を実行するように構成された一組の量子論理ゲートを備える。
【００２０】
一実施形態では、この方法が、一組の励起演算子を形成することを含み、一組の励起演算子は、基底状態波動関数から励起状態波動関数を決定するように構成されている。一実施形態では、この方法が、一組の励起演算子およびハミルトン演算子から一組の交換子（commutator）を形成することを含み、ハミルトン演算子は、波動関数の基底状態エネルギーを決定するように構成されている。
【００２１】
一実施形態では、この方法が、一組の交換子を一組のキュービット状態にマップすることを含み、一組のキュービット状態は、量子プロセッサの一組のキュービットに対応する。一実施形態では、この方法が、量子プロセッサおよびメモリを使用して、一組の交換子を評価することを含む。一実施形態では、この方法が、計算された一組の交換子から励起状態エネルギーを測定することを、量子読出し回路に実行させることを含む。
【００２２】
一実施形態では、この方法が、一組のパウリ・ストリング（Pauli string）を抽出することを含み、一組のパウリ・ストリングのうちのそれぞれのパウリ・ストリングは一組のパウリ演算子を含む。一実施形態では、この方法が、一組のパウリ・ストリングを評価して、一組の交換子を計算することを含む。
【００２３】
一実施形態では、この方法が、一組のパウリ・ストリングの部分集合をグループ化することを含み、この部分集合は、一組の交換子のうちの少なくとも１つの交換子に対応する。一実施形態では、この方法が、ヨルダン−ウィグナー変換（Jordan-Wigner transformation）を使用して一組の励起演算子をマップすることを含む。
【００２４】
一実施形態では、一組の交換子がヨルダン−ウィグナー変換を使用してマップされる。一実施形態では、この方法が、一組の励起エネルギーの固有値方程式（eigenvalue equation）に対応する永年行列方程式（secular matrix equation）の一組の行列要素（matrix element）を計算することを含む。
【００２５】
一実施形態は、コンピュータが使用可能なプログラム製品（以後、コンピュータ使用可能プログラム製品）を含む。このコンピュータ使用可能プログラム製品は、コンピュータ可読ストレージ・デバイスと、ストレージ・デバイスに記憶されたプログラム命令とを含む。
【００２６】
一実施形態は、コンピュータ・システムを含む。このコンピュータ・システムは、プロセッサと、コンピュータ可読メモリと、コンピュータ可読ストレージ・デバイスと、プロセッサがメモリを介して実行するためのストレージ・デバイスに記憶されたプログラム命令とを含む。
【００２７】
添付の特許請求の範囲には、本発明の特徴と考えられる新規の特徴が記載されている。しかしながら、本発明自体、ならびに本発明の好ましい使用形態、さらに本発明の目的および利点は、例示的な実施形態の以下の詳細な説明を添付図面とともに読んだときに、その説明を参照することによって最もよく理解されるであろう。
【図面の簡単な説明】
【００２８】
【図１】例示的な実施形態を実施することができるデータ処理システムのネットワークのブロック図である。
【図２】例示的な実施形態を実施することができるデータ処理システムのブロック図である。
【図３】一例示的な実施形態による、古典プロセッサおよび量子プロセッサを使用して組合せ最適化問題を解くための一例示的なハイブリッド量子／古典最適化アルゴリズムのブロック図である。
【図４】一例示的な実施形態による、ハイブリッド古典−量子コンピューティング・システム上で混合整数最適化問題（mixed integer optimization problem）を解くための一例示的な構成のブロック図である。
【図５】一例示的な実施形態による、ハイブリッド古典−量子コンピューティング・システムを使用して励起状態エネルギーを計算するための一例示的な一般的量子回路のブロック図である。
【図６】一例示的な実施形態による、ハイブリッド古典−量子コンピューティング・システム上で分子系の励起状態エネルギーを計算するための一例示的な構成のブロック図である。
【図７】ハイブリッド古典−量子コンピューティング・システム上で一例示的な実施形態の方式で計算された励起エネルギーのグラフである。
【図８】一例示的な実施形態による、ハイブリッド古典−量子コンピューティング・システム上で分子系の励起状態エネルギーを計算するための一例示的な方法の流れ図である。
【発明を実施するための形態】
【００２９】
本発明を説明するために使用される例示的な実施形態は一般に、量子コンピューティングを使用して計算問題を解く上述の課題に対処し、それらの課題を解決する。例示的な実施形態は、ハイブリッド古典−量子コンピューティング・システムを使用して分子系の励起状態特性を計算する方法およびシステムを提供する。
【００３０】
解の最適化は、よく認識された技術的努力分野（technological field of endeavor）である。量子キュービットから形成されたプロセッサを使用した量子コンピューティングは、よく認識された別の技術的努力分野である。これらの２つの努力分野の組合せの技術の現在の状態は、ある種の欠点および限界を有する。例示的な実施形態の動作もしくは構成、またはその両方は、これらの技術的努力分野において、特に量子コンピューティング環境で実行するように最適化問題を構成する際に、既存の技術を向上させる追加の能力または新たな能力を与える。
【００３１】
量子コンピューティングで最適化問題を解く際には通常、最適化問題をその入力とともにハミルトン演算子に変換し、次いで、そのハミルトン演算子を、変分量子固有値ソルバ（Variational Quantum Eigensolver）（ＶＱＥ）アルゴリズムおよび量子近似最適化アルゴリズム（Quantum Approximate Optimization Algorithm）（ＱＡＯＡ）などの量子変分アルゴリズムに渡すことが必要であることを、例示的な実施形態は認識している。
【００３２】
一実施形態は、ハイブリッド古典−量子コンピューティング・システムを使用して分子系の励起状態特性を計算する方法を提供する。別の実施形態は、コンピュータ可読ストレージ・デバイスと、ストレージ・デバイスに記憶されたプログラム命令とを含む、従来型コンピュータまたは量子コンピュータが使用可能なプログラム製品であって、記憶されたプログラム命令が、ハイブリッド古典−量子コンピューティング・システムを使用して分子系の励起状態特性を計算する方法を含む、プログラム製品を提供する。この命令は、従来型プロセッサまたは量子プロセッサを使用して実行可能である。別の実施形態は、従来型プロセッサまたは量子プロセッサと、コンピュータ可読メモリと、コンピュータ可読ストレージ・デバイスと、プロセッサがメモリを介して実行するためのストレージ・デバイスに記憶されたプログラム命令とを備えるコンピュータ・システムであって、記憶されたプログラム命令が、ハイブリッド古典−量子コンピューティング・システムを使用して分子系の励起状態特性を計算する方法を含む、コンピュータ・システムを提供する。
【００３３】
例示的な実施形態は、量子プロセッサは、変分アルゴリズムを実行して、量子系の基底状態エネルギーの近似値、例えば所与の原子間間隔を有する分子の電子軌道構成を計算することができることを認識している。変分量子固有値ソルバ（ＶＱＥ）は、量子プロセッサを用いて実行される変分アルゴリズムの一例である。ＶＱＥは、量子状態を準備するためのパラメータを変更し、準備された量子状態の特性を決定する。量子プロセッサ上では、量子状態が、キュービットに作用している一連の量子論理ゲートとして準備される。
【００３４】
量子系の固有関数は未知であるかまたはあまりに複雑であるかのどちらかであるため、初期量子状態（波動関数）をランダムに選択することができることを、例示的な実施形態は認識している。変分アルゴリズムは、量子状態の評価を実行して基底状態エネルギーなど初期量子状態の特性を決定し、一組の単一キュービット量子論理回転ゲートの回転角などのパラメータを変更して新たな量子状態を準備し、新たな量子状態の特性を決定し、初期量子状態の特性と新たな量子状態の特性とを比較する。
【００３５】
新たな量子状態を生成し、それらの量子状態に対応する特性を最小化するために、変分アルゴリズムを繰り返す。変分アルゴリズムは、量子状態に対応する特性を最小化するためのオプティマイザ（optimizer）を含む。変分アルゴリズムによって実行されるそれぞれの評価は、単一キュービット回転などのパラメータを変更して新たな量子状態を生成すること、新たな量子状態の特性を計算すること、新たな量子状態と以前の量子状態の特性を比較すること、およびこの比較に基づいて、量子系の基底状態エネルギーを計算するための引き続く評価においてパラメータをどのように変更するのかを決定することを含む。例えば、変分アルゴリズムは、量子系の基底状態エネルギーの上限を決定するための評価を実行することができる。
【００３６】
変分アルゴリズムは、１つまたは複数のパラメータを変更して１つまたは複数の新たな量子状態を生成し、新たな量子状態の基底状態エネルギーを以前の１つまたは複数の量子状態の基底状態エネルギーと比較する。オプティマイザは、生成された量子状態の計算基底状態エネルギーを低減させるために、どのパラメータを変更するのか、もしくはパラメータをどのように変更するのか、またはその両方を決定する。変分アルゴリズムは、計算基底状態エネルギーが最小値に到達し、比較的安定するまで評価を実行し続ける。最終的な評価の計算基底状態エネルギーが、量子系の基底状態エネルギーの上限に対応する。
【００３７】
量子系の基底状態｜０＞に励起行列演算子
【数１】
2022500743.tif 000003
を適用することによって、励起状態｜ｎ＞を生み出すことができる。励起行列演算子は
【数２】
2022500743.tif 000004
と定義される。同様に、脱励起演算子（de-excitation operator）はＯｎ＝｜０＞＜ｎ｜と定義される。励起演算子とハミルトン演算子との交換子は
【数３】
2022500743.tif 000005
と定義される。ハミルトン演算子と励起演算子との交換子をとることは、系の励起エネルギーΔＥ０ｎ＝Ｅｎ−Ｅ０の表現式を、
【数４】
2022500743.tif 000006
として与える。
【００３８】
励起エネルギーの有用な形式ΔＥ０ｎは、上記の方程式の励起演算子を用いて左側から演算することによって得られる
【数５】
2022500743.tif 000007
。励起演算子は、基底演算子（basis operator）の線形展開（linear expansion）として、展開係数（expansion coefficient）を最適化して表現することができる。最も単純な基底演算子は、フェルミオン（Fermionic）生成および消滅演算子ａ†、ａからなり、ここで
【数６】
2022500743.tif 000008
、ａｉは、被占軌道ｉから虚の軌道ｍへの単一の電子の励起を表す。ヨルダン−ウィグナー変換によってフェルミオン演算子をパウリ演算子にマップすることができる。ヨルダン−ウィグナー変換は、
【数７】
2022500743.tif 000009
によって定義され、ここでＮはキュービットの総数である。
【００３９】
次いで、励起演算子を、
【数８】
2022500743.tif 000010
と表現することができる。上式で、αは、励起の程度であり、
【数９】
2022500743.tif 000011
である。
【数１０】
2022500743.tif 000012
パラメータに関する変分δ（Ｅ０ｎ）＝０は、分子系の固有値（励起エネルギー）を決定するための永年行列方程式
【数１１】
2022500743.tif 000013
につながる。上式で、
【数１２】
2022500743.tif 000014
であり、ωｎは、励起エネルギーである。
【００４０】
１つまたは複数の実施形態は、分子系の励起状態特性を計算する混合古典および量子方法論を提供する。１つまたは複数の実施形態では、パラメータを最適化し、行列方程式を評価するために古典コンピュータが使用され、行列要素を計算するために量子コンピュータが使用される。
【００４１】
一実施形態では、ハミルトン演算子と励起演算子との交換子が一組のキュービット状態にマップされる。特定の実施形態では、これらの交換子が、ヨルダン−ウィグナー変換を使用してフェルミオン演算子からパウリ演算子にマップされる。この実施形態では、基底状態波動関数が決定される。この実施形態では、基底状態波動関数が一組の角度にパラメータ化されている。
【００４２】
説明を明瞭にするため、その説明に限定されることをなんら暗示することなく、例示的な実施形態は、いくつかの例示的な構成を使用して説明される。この開示から、当業者は、記載された目的を達成するための記載された構成の多くの改変、適合および変更を考案することができることとなり、それらは、例示的な実施形態の範囲内で企図される。
【００４３】
さらに、図および例示的な実施形態では、データ処理環境の簡略図が使用される。実際のコンピューティング環境には、例示的な実施形態の範囲を逸脱することなく、本明細書に示されていないもしくは本明細書に記載されていない追加の構造体もしくは構成要素、または、示された構造体もしくは構成要素とは異なるが本明細書に記載された機能と同様の機能を有する構造体もしくは構成要素が存在することがある。
【００４４】
さらに、実際のまたは仮定の特定の構成要素に関して、例示的な実施形態は単なる例として記載されている。例示的なさまざまな実施形態によって説明されたステップを、データ処理環境内の記載された機能を提供することを目的とし得る、またはそのような機能を提供するために転用し得るさまざまな構成要素を使用して分子系の励起状態エネルギーを計算するように適合させることができ、そのような適合は、例示的な実施形態の範囲に含まれることが企図される。
【００４５】
例示的な実施形態は、あるタイプのステップ、アプリケーション、古典プロセッサ、量子プロセッサ、量子状態、古典特徴空間、量子特徴空間およびデータ処理環境に関して、単なる例として説明される。これらのアーチファクトおよび他の同様のアーチファクトのいずれか特定の表現物（manifestation）が本発明を限定することは意図されていない。例示的な実施形態の範囲内で、これらのアーチファクトおよび他の同様のアーチファクトのいずれか適当な表現物を選択することができる。
【００４６】
本開示の例は、説明を明瞭にするためだけに使用され、例示的な実施形態を限定するものではない。本明細書に挙げられたいずれかの利点は単なる例であり、それらの利点が例示的な実施形態を限定することは意図されていない。特定の例示的な実施形態によって追加の利点または異なる利点を実現することができる。さらに、特定の例示的な一実施形態は、上に挙げた利点の一部もしくは全部を有することがあり、または上に挙げた利点を１つも持たないことがある。
【００４７】
図、具体的には図１および図２を参照すると、これらの図は、例示的な実施形態を実施することができるデータ処理環境の例示的な図である。図１および図２は単なる例であり、これらの図が、異なる実施形態を実施することができる環境に関するいかなる限定も主張または暗示することは意図されていない。特定の一実施態様は、以下の説明に基づいて図示の環境に多くの変更を加えることができる。
【００４８】
図１は、例示的な実施形態を実施することができるデータ処理システムのネットワークのブロック図を示している。データ処理環境１００は、例示的な実施形態を実施することができる、コンピュータのネットワークである。データ処理環境１００はネットワーク１０２を含む。ネットワーク１０２は、データ処理環境１００内で一緒に接続されたさまざまなデバイスおよびコンピュータ間の通信リンクを提供するために使用される媒体である。ネットワーク１０２は、有線通信リンク、無線通信リンク、または光ファイバ・ケーブルなどの接続を含むことができる。
【００４９】
クライアントまたはサーバは、ネットワーク１０２に接続されたある種のデータ処理システムの役割の単なる例であり、クライアントまたはサーバが、これらのデータ処理システムの他の構成または役割を排除することは意図されていない。ネットワーク１０２には古典処理システム１０４が結合している。古典処理システム１０４は古典処理システムである。データ処理環境１００内のいずれかの量子データ処理システム上でソフトウェア・アプリケーションを実行することができる。図１の古典処理システム１０４内で実行されると記載されたソフトウェア・アプリケーションはいずれも、別のデータ処理システム内で同様に実行されるように構成することができる。図１の古典処理システム１０４内に記憶されたまたは古典処理システム１０４内で生成されたデータまたは情報はいずれも、別のデータ処理システム内に同様に記憶されるように、または別のデータ処理システム内で同様に生成されるように構成することができる。古典処理システム１０４などの古典データ処理システムはデータを含むことができ、古典コンピューティング・プロセスをその上で実行するソフトウェア・アプリケーションまたはソフトウェア・ツールを有することができる。
【００５０】
ネットワーク１０２には、ストレージ・ユニット１０８とともにサーバ１０６が結合している。ストレージ・ユニット１０８は、量子状態のパラメータを記憶するように構成されたデータベース１０９を含む。サーバ１０６は従来型データ処理システムである。ネットワーク１０２には量子処理システム１４０が結合している。量子処理システム１４０は量子データ処理システムである。データ処理環境１００内のいずれかの量子データ処理システム上でソフトウェア・アプリケーションを実行することができる。図１の量子処理システム１４０内で実行されると記載されたソフトウェア・アプリケーションはいずれも、別の量子データ処理システム内で同様に実行されるように構成することができる。図１の量子処理システム１４０内に記憶されたまたは量子処理システム１４０内で生成されたデータまたは情報はいずれも、別の量子データ処理システム内に同様に記憶されるように、または別の量子データ処理システム内で同様に生成されるように構成することができる。量子処理システム１４０などの量子データ処理システムはデータを含むことができ、量子コンピューティング・プロセスをその上で実行するソフトウェア・アプリケーションまたはソフトウェア・ツールを有することができる。
【００５１】
ネットワーク１０２にはさらにクライアント１１０、１１２および１１４が結合されている。サーバ１０６またはクライアント１１０、１１２もしくは１１４などの従来型データ処理システムはデータを含むことができ、従来型コンピューティング・プロセスをその上で実行するソフトウェア・アプリケーションまたはソフトウェア・ツールを有することができる。
【００５２】
このようなアーキテクチャに限定されることをなんら暗示することなく、図１は、一実施形態の例示的な一実施態様で使用可能なある種の構成要素を示している。例えば、サーバ１０６およびクライアント１１０、１１２、１１４は、単なる例としてサーバおよびクライアントとして示されており、このことは、クライアント−サーバ・アーキテクチャに限定されることを暗示しない。別の例として、図示されているように、いくつかの従来型データ処理システム、量子データ処理システムおよびデータ・ネットワークを横断して一実施形態を分散させることができ、一方で、例示的な実施形態の範囲内で、単一の従来型データ処理システム上または単一の量子データ処理システム上で別の実施形態を実施することもできる。従来型データ処理システム１０６、１１０、１１２および１１４はさらに、一実施形態を実施するのに適したクラスタ、パーティションおよび他の構成の例示的なノードを表す。
【００５３】
デバイス１３２は、本明細書に記載された従来型コンピューティング・デバイスの一例である。例えば、デバイス１３２は、スマートフォン、タブレット・コンピュータ、ラップトップ・コンピュータ、固定もしくは携帯可能形式のクライアント１１０、ウェアラブル・コンピューティング・デバイス、または他のいずれかの適当なデバイスの形態をとることができる。図１の別の従来型データ処理システム内で実行されると記載されたソフトウェア・アプリケーションはいずれも、デバイス１３２内で同様に実行されるように構成することができる。図１の別の従来型データ処理システム内に記憶されたまたは図１の別の従来型データ処理システム内で生成されたデータまたは情報はいずれも、デバイス１３２内に同様に記憶されるように、またはデバイス１３２内で同様に生成されるように構成することができる。
【００５４】
サーバ１０６、ストレージ・ユニット１０８、古典処理システム１０４、量子処理システム１４０、クライアント１１０、１１２、１１４およびデバイス１３２は、有線接続、無線通信プロトコルまたは他の適当なデータ接続性を使用してネットワーク１０２に結合することができる。クライアント１１０、１１２および１１４は例えばパーソナル・コンピュータまたはネットワーク・コンピュータとすることができる。
【００５５】
図示の例では、サーバ１０６が、ブート・ファイル、オペレーティング・システム・イメージおよびアプリケーションなどのデータをクライアント１１０、１１２および１１４に提供することができる。この例では、クライアント１１０、１１２および１１４を、サーバ１０６に対するクライアントとすることができる。クライアント１１０、１１２、１１４またはこれらのクライアントのある組合せは、それら自体のデータ、ブート・ファイル、オペレーティング・システム・イメージおよびアプリケーションを含むことができる。データ処理環境１００は、図示されていない追加のサーバ、クライアントおよび他のデバイスを含むことができる。
【００５６】
図示の例では、メモリ１２４が、ブート・ファイル、オペレーティング・システム・イメージおよびアプリケーションなどのデータを古典プロセッサ１２２に提供することができる。古典プロセッサ１２２は、それ自体のデータ、ブート・ファイル、オペレーティング・システム・イメージおよびアプリケーションを含むことができる。データ処理環境１００は、図示されていない追加のメモリ、量子プロセッサおよび他のデバイスを含むことができる。メモリ１２４は、ハイブリッド古典−量子コンピューティング・システム上で分子系の励起状態エネルギーを計算するための本明細書に記載された古典プロセッサ機能のうちの１つまたは複数の機能を１つまたは複数の実施形態に従って実施するように構成されていてもよいアプリケーション１０５を含む。
【００５７】
図示の例では、メモリ１４４が、ブート・ファイル、オペレーティング・システム・イメージおよびアプリケーションなどのデータを量子プロセッサ１４２に提供することができる。量子プロセッサ１４２は、それ自体のデータ、ブート・ファイル、オペレーティング・システム・イメージおよびアプリケーションを含むことができる。データ処理環境１００は、図示されていない追加のメモリ、量子プロセッサおよび他のデバイスを含むことができる。メモリ１４４は、本明細書に記載された量子プロセッサ機能のうちの１つまたは複数の機能を１つまたは複数の実施形態に従って実施するように構成されていてもよいアプリケーション１４６を含む。
【００５８】
図示の例では、データ処理環境１００をインターネットとすることができる。ネットワーク１０２は、伝送制御プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ）および他のプロトコルを使用して互いに通信するネットワークおよびゲートウェイの集合を表すことができる。インターネットの中心には、主要なノードまたはホスト・コンピュータ間のデータ通信リンクのバックボーンであって、データおよびメッセージの経路を指定する数千の商用、政府、教育およびその他のコンピュータ・システムを含むバックボーンが存在する。当然ながら、データ処理環境１００も、例えばイントラネット、ローカル・エリア・ネットワーク（ＬＡＮ）またはワイド・エリア・ネットワーク（ＷＡＮ）などのいくつかの異なるタイプのネットワークとして実施することができる。図１は、例であることが意図されており、図１が、異なる例示的な実施形態のアーキテクチャを限定することは意図されていない。
【００５９】
使用目的は他にもあるが、例示的な実施形態を実施することができるクライアント−サーバ環境を実施する目的にデータ処理環境１００を使用することができる。クライアント−サーバ環境は、従来型クライアント・データ処理システムと従来型サーバ・データ処理システムとの間のインタラクティブ性を使用することによってアプリケーションが機能するように、ソフトウェア・アプリケーションおよびデータをネットワークを横断して分散させることを可能にする。データ処理環境１００はさらにサービス指向アーキテクチャを使用することができ、サービス指向アーキテクチャでは、ネットワークを横断して分散した相互動作可能なソフトウェア構成要素を、コヒーレントなビジネス・アプリケーションとして一緒にパッケージングすることができる。データ処理環境１００はさらにクラウドの形態をとることができ、最小限の管理労力またはサービスのプロバイダとの最小限の対話ですばやく供給およびリリースすることができる構成可能なコンピューティング・リソース（例えばネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想機械およびサービス）の共用プールへの便利なオンデマンド・ネットワーク・アクセスを可能にするために、サービス送達のクラウド・コンピューティング・モデルを使用することができる。
【００６０】
図２を参照すると、この図は、例示的な実施形態を実施することができるデータ処理システムのブロック図を示している。データ処理システム２００は、図１の古典処理システム１０４、サーバ１０６もしくはクライアント１１０、１１２および１１４、または例示的な実施形態のためにプロセスを実施するコンピュータ使用可能プログラム・コードもしくは命令が置かれていてもよい別のタイプのデバイスなどの従来型コンピュータの一例である。
【００６１】
データ処理システム２００はさらに、例示的な実施形態のプロセスを実施するコンピュータ使用可能プログラム・コードまたは命令が置かれていてもよい図１の従来型データ処理システム１３２などの従来型データ処理システムまたはその構成を表している。データ処理システム２００は、単なる例としてコンピュータとして説明されるが、コンピュータに限定されるわけではない。図１のデバイス１３２など他のデバイスの形態の実施態様は、タッチ・インタフェースを追加することなどによってデータ処理システム２００を変更することができ、また、本明細書に記載されたデータ処理システム２００の動作および機能の全般的な説明を逸脱しない範囲で、データ処理システム２００から、図示されたある種の構成要素を排除することもできる。
【００６２】
図示の例では、データ処理システム２００が、ノース・ブリッジおよびメモリ・コントローラ・ハブ（ＮＢ／ＭＣＨ）２０２ならびにサウス・ブリッジおよび入力／出力（Ｉ／Ｏ）コントローラ・ハブ（ＳＢ／ＩＣＨ）２０４を含むハブ・アーキテクチャを使用する。ノース・ブリッジおよびメモリ・コントローラ・ハブ（ＮＢ／ＭＣＨ）２０２には、処理ユニット２０６、主メモリ２０８およびグラフィックス・プロセッサ２１０が結合されている。処理ユニット２０６は、１つまたは複数のプロセッサを含むことができ、１つまたは複数の異種プロセッサ・システムを使用して実施することができる。処理ユニット２０６はマルチコア・プロセッサとすることができる。ある種の実施態様では、アクセラレーテッド・グラフィックス・ポート（accelerated graphics port）（ＡＧＰ）を通してグラフィックス・プロセッサ２１０をＮＢ／ＭＣＨ２０２に結合することができる。
【００６３】
図示の例では、サウス・ブリッジおよびＩ／Ｏコントローラ・ハブ（ＳＢ／ＩＣＨ）２０４にローカル・エリア・ネットワーク（ＬＡＮ）アダプタ２１２が結合されている。サウス・ブリッジおよびＩ／Ｏコントローラ・ハブ２０４には、バス２３８を通して、オーディオ・アダプタ２１６、キーボードおよびマウス・アダプタ２２０、モデム２２２、リード・オンリー・メモリ（ＲＯＭ）２２４、ユニバーサル・シリアル・バス（ＵＳＢ）およびその他のポート２３２、ならびにＰＣＩ／ＰＣＩｅデバイス２３４が結合されている。サウス・ブリッジおよびＩ／Ｏコントローラ・ハブ２０４には、バス２４０を通して、ハード・ディスク・ドライブ（ＨＤＤ）または固体状態ドライブ（ＳＳＤ）２２６およびＣＤ−ＲＯＭ２３０が結合されている。ＰＣＩ／ＰＣＩｅデバイス２３４は、例えばイーサネット（Ｒ）・アダプタ、アドイン・カード、およびノートブック・コンピュータ用のＰＣカードを含むことができる。ＰＣＩはカード・バス・コントローラを使用するが、ＰＣＩｅはカード・バス・コントローラを使用しない。ＲＯＭ２２４は例えば、フラッシュ・バイナリ入力／出力システム（ＢＩＯＳ）とすることができる。ハード・ディスク・ドライブ２２６およびＣＤ−ＲＯＭ２３０は例えば、インテグレーテッド・ドライブ・エレクトロニクス（ＩＤＥ）、シリアル・アドバンスト・テクノロジ・アタッチメント（ＳＡＴＡ）インタフェースまたはその変形、例えばエクスターナルＳＡＴＡ（ｅＳＡＴＡ）およびマイクロＳＡＴＡ（ｍＳＡＴＡ）を使用することができる。サウス・ブリッジおよびＩ／Ｏコントローラ・ハブ（ＳＢ／ＩＣＨ）２０４には、バス２３８を通してスーパーＩ／Ｏ（ＳＩＯ）デバイス２３６が結合されていてもよい。
【００６４】
主メモリ２０８、ＲＯＭ２２４またはフラッシュ・メモリ（図示せず）などのメモリは、コンピュータ使用可能ストレージ・デバイスのいくつかの例である。ハード・ディスク・ドライブまたは固体状態ドライブ２２６、ＣＤ−ＲＯＭ２３０および同様に使用可能な他のデバイスは、コンピュータ使用可能ストレージ媒体を含むコンピュータ使用可能ストレージ・デバイスのいくつかの例である。
【００６５】
処理ユニット２０６上ではオペレーティング・システムがランする。このオペレーティング・システムは、図２のデータ処理システム２００内のさまざまな構成要素の制御を調整および提供する。このオペレーティング・システムは、限定はされないがサーバ・システム、パーソナル・コンピュータおよびモバイル・デバイスを含む任意のタイプのコンピューティング・プラットホーム用の市販オペレーティング・システムとすることができる。オペレーティング・システムとともに、オブジェクト指向プログラミング・システムまたは他のタイプのプログラミング・システムが動作してもよく、これらのプログラミング・システムは、データ処理システム２００上で実行されているプログラムまたはアプリケーションからオペレーティング・システムに呼出しを提供することができる。
【００６６】
オペレーティング・システム、オブジェクト指向プログラミング・システム、および図１のアプリケーション１０５などのアプリケーションまたはプログラムに対する命令は、ストレージ・デバイス上に、例えばハード・ディスク・ドライブ２２６上のコード２２６Ａの形態で置かれており、処理ユニット２０６によって実行するために、主メモリ２０８など、１つまたは複数のメモリのうちの少なくとも１つのメモリにロードすることができる。例示的な実施形態のプロセスは、コンピュータ実施命令を使用して処理ユニット２０６によって実行されてもよく、コンピュータ実施命令は、例えば主メモリ２０８、リード・オンリー・メモリ２２４などのメモリまたは１つもしくは複数の周辺デバイスに置かれていてもよい。
【００６７】
さらに、１つのケースでは、ネットワーク２０１Ａを横切ってリモート・システム２０１Ｂからコード２２６Ａをダウンロードすることができ、リモート・システム２０１Ｂのストレージ・デバイス２０１Ｄには同様のコード２０１Ｃが記憶されている。別のケースでは、ネットワーク２０１Ａを横切ってリモート・システム２０１Ｂにコード２２６Ａをダウンロードすることができ、リモート・システム２０１Ｂのストレージ・デバイス２０１Ｄにはダウンロードされたコード２０１Ｃが記憶されている。
【００６８】
実施態様に応じて図１〜図２のハードウェアを変更することができる。図１〜図２に示されたハードウェアに加えて、または図１〜図２に示されたハードウェアの代わりに、フラッシュ・メモリ、等価の不揮発性メモリ、または光ディスク・ドライブなどの他の内部ハードウェアまたは周辺デバイスを使用することができる。さらに、例示的な実施形態のプロセスを、マルチプロセッサ・データ処理システムに適用することができる。
【００６９】
例示のためのいくつかの例では、データ処理システム２００をパーソナル・ディジタル・アシスタント（ＰＤＡ）とすることができる。オペレーティング・システム・ファイルもしくはユーザ生成データまたはその両方を記憶するための不揮発性メモリを提供するため、ＰＤＡは一般にフラッシュ・メモリを備えるように構成されている。バス・システムは、システム・バス、Ｉ／ＯバスおよびＰＣＩバスなどの１つまたは複数のバスを備えることができる。当然ながら、このバス・システムは、任意のタイプの通信ファブリックまたはアーキテクチャを使用して実施することができ、それらの通信ファブリックまたはアーキテクチャは、そのファブリックまたはアーキテクチャに接続された異なる構成要素またはデバイス間のデータ転送を提供する。
【００７０】
通信ユニットは、データを送受信するために使用される、モデムまたはネットワーク・アダプタなどの１つまたは複数のデバイスを含むことができる。メモリは例えば、主メモリ２０８、またはノース・ブリッジおよびメモリ・コントローラ・ハブ２０２内に見られるキャッシュなどのキャッシュとすることができる。処理ユニットは、１つもしくは複数のプロセッサまたはＣＰＵを含むことができる。
【００７１】
図１〜図２に示された例および上述の例は、アーキテクチャが限定されることを暗示するものではない。例えば、モバイル・デバイスまたはウェアラブル・デバイスの形態をとることに加えて、データ処理システム２００を、タブレット・コンピュータ、ラップトップ・コンピュータまたは電話機とすることもできる。
【００７２】
コンピュータまたはデータ処理システムが、仮想機械、仮想デバイスまたは仮想構成要素として説明されている場合、その仮想機械、仮想デバイスまたは仮想構成要素は、データ処理システム２００内に示された一部または全部の構成要素の仮想化された表現物を使用して、データ処理システム２００の方式で動作する。例えば、仮想機械、仮想デバイスまたは仮想構成要素では、処理ユニット２０６が、ホスト・データ処理システム内で使用可能な全部または一部のハードウェア処理ユニット２０６の仮想化事例として表現され、主メモリ２０８が、ホスト・データ処理システム内で使用可能であってもよい主メモリ２０８の全体または一部分の仮想化事例として表現され、ディスク２２６が、ホスト・データ処理システム内で使用可能であってもよいディスク２２６の全体または一部分の仮想化事例として表現される。このようなケースのホスト・データ処理システムは、データ処理システム２００によって表される。
【００７３】
図３を参照すると、この図は、古典プロセッサ３０２および量子プロセッサ３０４を使用して組合せ最適化問題を解くための一例示的なハイブリッド量子／古典最適化アルゴリズム３００のブロック図を示している。この例では、古典プロセッサ３０２が古典最適化スキームをランして、組合せ最適化問題の更新パラメータを生成し、それらの更新パラメータを量子プロセッサ３０４に送る。量子プロセッサ３０４は、解く対象である特定の組合せ問題および所与の更新パラメータに応じて量子状態を準備する。量子プロセッサ３０４は、準備された量子状態を実行し、量子状態を複数回測定し、解空間からサンプリングして、サンプルを生成する。古典プロセッサ３０２は、量子プロセッサ３０４からサンプルを受け取り、受け取ったサンプルを評価して、古典最適化スキームのパラメータを更新すべきかどうかを判定する。
【００７４】
組合せ最適化問題のパラメータを更新すべきと古典プロセッサ３０２が判定した場合、古典プロセッサ３０２は、更新されたパラメータを使用して古典最適化スキームをランして、さらに更新されたパラメータを生成する。次いで、古典プロセッサ３０２は、このさらに更新されたパラメータを量子プロセッサ３０４に送る。通常、このプロセスは、許容され得るしきい値内の収束が得られるまで繰り返される。
【００７５】
図４を参照すると、この図は、一例示的な実施形態による、ハイブリッド古典−量子コンピューティング・システム上で混合整数最適化問題を解くための一例示的な構成４００のブロック図を示している。この例示的な実施形態は、古典処理システム１０４および量子処理システム１４０を含む。古典処理システム１０４はアプリケーション４０２を含む。特定の一実施形態では、アプリケーション４０２が、図１のアプリケーション１０５の一例である。アプリケーション４０２は、古典オプティマイザ構成要素４０４、決定変数決定構成要素４０６、量子回路角度導出構成要素４０８、古典パラメータ導出構成要素４１０、および量子状態サンプル評価構成要素４１２を含む。
【００７６】
量子処理システム１４０は、量子プロセッサ１４２およびアプリケーション４１４を含む。特定の一実施形態では、アプリケーション４１４が、図１のアプリケーション１４６の一例である。アプリケーション４１４は、量子状態準備構成要素４１６および量子状態測定構成要素４１８を含む。
【００７７】
この実施形態では、古典オプティマイザ構成要素４０４が、古典最適化スキームを実行し、最適化パラメータ決定構成要素４０６を利用して組合せ最適化問題に関連した古典目的関数（classical objective function）の決定変数を生成するように構成されている。特定の一実施形態では、この決定変数が、少なくとも１つの離散決定変数（例えば２値決定変数）および少なくとも１つの連続決定変数を含む。量子回路角度導出構成要素４０８は、生成された決定変数のうちの１つまたは複数の決定変数から、量子処理システム１４０の量子プロセッサ１４２内の量子回路の量子角度を導出するように構成されている。特定の一実施形態では、量子回路角度導出構成要素４０８が、少なくとも１つの離散決定変数に基づいて量子回路の量子角度を導出する。
【００７８】
古典パラメータ導出構成要素４１０は、決定された決定変数のうちの１つまたは複数の決定変数から古典パラメータを導出するように構成されている。特定の一実施形態では、古典パラメータ導出構成要素４１０が、少なくとも１つの連続決定変数に基づいて古典パラメータを導出するように構成されている。アプリケーション４０２はさらに、角度パラメータを量子処理システム１４０に提供するように構成されている。
【００７９】
量子状態準備構成要素４１６は、問題の解空間としての量子角度に基づいて、量子プロセッサ１４２の量子回路の１つまたは複数の量子状態を準備するように構成されている。次いで、準備された量子状態をキュービットの初期状態として使用して、量子プロセッサ１４２が実行される。量子状態測定構成要素４１８は、中間量子状態を複数回測定して、中間量子状態を表すサンプルを生成するように構成されている。１つまたは複数の実施形態では、同じ量子状態を準備するのに、固定された一組の量子状態パラメータが使用されるが、量子状態の測定は、複数のサンプルに由来する確率的結果につながる。特定の実施形態では、サンプルが離散値（例えば−１または＋１）を含む。アプリケーション４１４はさらに、量子状態測定サンプルを古典処理システム１０４のアプリケーション４０２に送るように構成されている。
【００８０】
この実施形態では、量子状態サンプル評価構成要素４１２が、古典集約関数（classical aggregation function）を使用して量子状態測定サンプルを評価して、それらのサンプルから集約量子状態測定値を決定する。集約関数は、単一の値から複数の値を決定する。特定の一実施形態では、古典集約関数が量子状態測定サンプルを平均して、単一の集約値を決定する。１つまたは複数の実施形態では、量子状態サンプル評価構成要素４１２が複数のサンプルを評価して、量子状態の質の尺度、およびこのような量子状態からサンプリングすることができる混合整数最適化問題の解の尺度を得る。この実施形態では、量子状態サンプル評価関数が、この集約値を古典オプティマイザ４０４に返す。一実施形態では、アプリケーション４０２が、この集約値に基づいて、更新された決定変数を決定し、更新された決定変数から、更新された量子状態パラメータを生成し、新たな量子状態パラメータを量子処理システム１４０に提供する。そしてこのプロセスは、所定の許容可能なレベル内の解に到達するまで、例えば収束後まで反復的に継続される。
【００８１】
図５を参照すると、この図は、一例示的な実施形態による、ハイブリッド古典−量子コンピューティング・システムを使用して励起状態エネルギーを計算するための一例示的な一般的量子回路５００のブロック図を示している。量子回路５００は、最初のｎ個の励起エネルギーに対応するｎ個のキュービットからなる一組のキュービットを含む。ＶＱＥによって基底状態波動関数が決定される。基底状態波動関数は、一組の角度にパラメータ化されている。一組の角度にパラメータ化された回路によって一組のパウリ・ストリングが抽出および評価される。この一組のキュービット上で測定値がとられ、測定値は次いで、固有値および励起エネルギーを決定するために古典プロセッサに渡される。
【００８２】
図示の例では、量子回路５００が、励起状態エネルギーを計算する本明細書に記載されたような１つまたは複数の方法を実施するための量子回路の一般化された一例として示されている。特定の一実施態様では、１つまたは複数の実施形態に従って分子系の励起状態エネルギーを計算する対応する方法を実施するために、量子回路が、量子ゲートの任意の数の配列を含むことができる。
【００８３】
図６を参照すると、この図は、一例示的な実施形態による、ハイブリッド古典−量子コンピューティング・システム上で分子系の励起状態エネルギーを計算するための一例示的な構成６００のブロック図を示している。この例示的な実施形態は、古典処理システム１０４および量子処理システム１４０を含む。古典処理システム１０４はアプリケーション６０２を含む。特定の一実施形態では、アプリケーション６０２が、図１のアプリケーション１０５の一例である。アプリケーション６０２は、演算子準備構成要素６０４、交換子準備構成要素６０６、励起エネルギー決定構成要素６０８、および量子状態サンプル評価構成要素６１０を含む。
【００８４】
量子処理システム１４０は、量子プロセッサ１４２およびアプリケーション６１２を含む。特定の一実施形態では、アプリケーション６１２が、図１のアプリケーション１４６の一例である。アプリケーション６１２は、交換子構成要素６１４および量子状態測定構成要素６１６を含む。
【００８５】
この実施形態では、演算子準備構成要素６０４が、以前に決定された基底状態波動関数から励起状態を決定するための励起演算子および脱励起演算子を準備する。一実施形態では、交換子準備構成要素６０６が、励起演算子とハミルトン演算子とから交換子を準備する。特定の一実施形態では、構成要素６０６が、ヨルダン−ウィグナー変換を使用して励起演算子を一組のキュービット状態にマップする。アプリケーション６０２は、準備された交換子を、量子処理システム１４０のアプリケーション６１２に送る。
【００８６】
交換子評価構成要素６１４は、問題の解空間としての量子角度に基づいて、量子プロセッサ１４２の量子回路の一組の交換子を評価する。量子状態測定構成要素６１６は、中間量子状態を複数回測定して、中間量子状態を表すサンプルを生成する。アプリケーション６１２はさらに、量子状態測定サンプルを古典処理システム１０４のアプリケーション６０２に送るように構成されている。
【００８７】
この実施形態では、量子状態サンプル評価構成要素６１０が、古典集約関数を使用して量子状態測定サンプルを評価して、それらのサンプルから集約量子状態測定値を決定する。集約関数は、単一の値から複数の値を決定する。特定の一実施形態では、古典集約関数が量子状態測定サンプルを平均して、単一の集約値を決定する。１つまたは複数の実施形態では、量子状態サンプル評価構成要素６１０が複数のサンプルを評価して、行列要素に対する解を得る。この実施形態では、励起エネルギー決定構成要素６０８が、行列要素に対する解を使用して、一組の励起エネルギーを決定する。
【００８８】
図７を参照すると、この図は、ハイブリッド古典−量子コンピューティング・システム上で一例示的な実施形態の方式で計算された励起エネルギーのグラフを示している。見て分かる通り、所与の核間距離間隔において計算された励起エネルギーとベースライン・グラフにおいて予想される理論的励起エネルギーとの間の差（偏差）は大きくない。
【００８９】
図８を参照すると、この図は、一例示的な実施形態による、ハイブリッド古典−量子コンピューティング・システム上で分子系の励起状態エネルギーを計算する一例示的な方法の流れ図を示している。ブロック８０２で、量子プロセッサ１４２が、量子系の基底状態波動関数を決定する。特定の一実施形態では、基底状態波動関数が、一組の角度にパラメータ化されている。
【００９０】
ブロック８０４で、古典プロセッサ１２２が、量子系の励起状態を決定するための一組の励起演算子を準備する。ブロック８０６で、古典プロセッサ１２２が、励起演算子を一組のキュービット状態にマップする。特定の実施形態では、ヨルダン−ウィグナー変換を使用して励起演算子が一組のキュービット状態にマップされる。
【００９１】
ブロック８０８で、古典プロセッサ１２２が、マップされた一組の励起演算子とマップされたハミルトン演算子とから一組の交換子を計算する。特定の実施形態では、交換子が一組のパウリ・ストリングを形成し、それぞれのパウリ・ストリングが一組のパウリ演算子を含む。特定の実施形態では、ヨルダン−ウィグナー変換を使用してハミルトン演算子が一組のキュービット状態にマップされる。
【００９２】
ブロック８１０で、量子プロセッサ１４２が、この一組のパウリ・ストリングを抽出する。量子プロセッサ１４２は、この一組のパウリ・ストリングの部分集合をグループ化する。特定の実施形態では、一組のパウリ・ストリングの部分集合が、一組の交換子のうちの少なくとも１つの交換子に対応する。ブロック８１２で、量子プロセッサ１４２が、基底状態波動関数に対応する一組の角度にパラメータ化された量子回路によって、一組のパウリ・ストリングを評価する。
【００９３】
ブロック８１４で、古典プロセッサ１２２が、一組の交換子のセットから一組の行列要素を計算する。ブロック８１６で、古典プロセッサ１２２が、一組の行列要素から一組の励起エネルギーを決定する。特定の実施形態では、古典プロセッサ１２２が、一組の励起エネルギーを決定するための一組の固有値を計算する。
【００９４】
このように、ハイブリッド古典−量子コンピューティング・システムおよび他の関連特徴、機能または動作を使用して分子系の励起状態エネルギーを計算するこの例示的な実施形態では、コンピュータ実施方法、システムまたは装置およびコンピュータ・プログラム製品が提供される。一実施形態または一実施形態の一部分が、デバイスのタイプに関して説明されている場合、コンピュータ実施方法、システムもしくは装置、コンピュータ・プログラム製品、またはそれらの一部分は、そのデバイスのタイプの適当な匹敵する表現物とともに使用されるように適合または構成されている。
【００９５】
一実施形態がアプリケーションにおいて実施されると説明されている場合には、例示的な実施形態の範囲内で、そのアプリケーションのソフトウェア・アズ・ア・サービス（Software as a Service）（ＳａａＳ）モデルへの送達が企図される。ＳａａＳモデルでは、クラウド・インフラストラクチャ内でアプリケーションを実行することによって、一実施形態を実施するアプリケーションの能力がユーザに提供される。ユーザは、さまざまなクライアント・デバイスを使用して、ウェブ・ブラウザなどのシン・クライアント・インタフェース（例えばウェブ・ベースの電子メール）または他の軽量クライアント・アプリケーションを介して、そのアプリケーションにアクセスすることができる。ユーザは、クラウド・インフラストラクチャのネットワーク、サーバ、オペレーティング・システムまたはストレージを含め、基礎を成すクラウド・インフラストラクチャの管理または制御をしない。いくつかのケースでは、ユーザが、ＳａａＳアプリケーションの能力の管理または制御さえもしないことがある。他のいくつかのケースでは、アプリケーションのＳａａＳ実施態様が、限定されたユーザ特定アプリケーション構成設定の可能な例外を容認することがある。
【００９６】
本発明は、インテグレーションの任意の可能な技術的詳細レベルにおいて、システム、方法もしくはコンピュータ・プログラム製品、またはこれらの組合せであることができる。コンピュータ・プログラム製品は、本発明の諸態様をプロセッサに実行させるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読ストレージ媒体を含むことができる。
【００９７】
このコンピュータ可読ストレージ媒体は、命令実行デバイスが使用するための命令を保持および記憶することができる有形のデバイスとすることができる。このコンピュータ可読ストレージ媒体は例えば、限定はされないが、電子ストレージ・デバイス、磁気ストレージ・デバイス、光学ストレージ・デバイス、電磁気ストレージ・デバイス、半導体ストレージ・デバイスまたはこれらの任意の適当な組合せとすることができる。コンピュータ可読ストレージ媒体のより具体的な例の非網羅的なリストは、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ（ＲＡＭ）、リード・オンリー・メモリ（ＲＯＭ）、消去可能なプログラマブル・リード・オンリー・メモリ（ＥＰＲＯＭまたはフラッシュ・メモリ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、ポータブル・コンパクト・ディスク・リード・オンリー・メモリ（ＣＤ−ＲＯＭ）、ディジタル・バーサタイル・ディスク（ＤＶＤ）、メモリ・スティック、フロッピー（Ｒ）・ディスク、機械的にコード化されたデバイス、例えばパンチカードまたはその上に命令が記録された溝の中の一段高くなった構造体、およびこれらの任意の適当な組合せを含む。限定はされないが本明細書で使用されるようなコンピュータ可読ストレージ・デバイスを含む、コンピュータ可読ストレージ媒体は、それ自体が一過性の信号、例えば電波もしくは他の自由に伝搬する電磁波、ウェーブガイドもしくは他の伝送体内を伝搬する電磁波（例えば光ファイバ・ケーブル内を通る光パルス）、または電線を通して伝送される電気信号であると解釈されるべきではない。
【００９８】
本明細書に記載されたコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体から対応するそれぞれのコンピューティング／処理デバイスにダウンロードすることができ、またはネットワーク、例えばインターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワークもしくは無線ネットワークまたはそれらの組合せを介して外部コンピュータもしくは外部ストレージ・デバイスにダウンロードすることができる。このネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータもしくはエッジ・サーバ、またはこれらの組合せを含んでもよい。それぞれのコンピューティング／処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インタフェースは、コンピュータ可読プログラム命令をネットワークから受け取り、それらのコンピュータ可読プログラム命令を、対応するそれぞれのコンピューティング／処理デバイス内のコンピュータ可読ストレージ媒体に記憶するために転送する。
【００９９】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ（ＩＳＡ）命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、もしくは集積回路用の構成データであってもよく、またはＳｍａｌｌｔａｌｋ（Ｒ）、もしくはＣ＋＋などのオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語もしくは同種のプログラミング言語などの手続き型プログラミング言語を含む、１つまたは複数のプログラミング言語の任意の組合せで書かれた、ソース・コードもしくはオブジェクト・コードのいずれかであってもよい。このコンピュータ可読プログラム命令は、全体がユーザのコンピュータ上で実行されてもよく、一部がユーザのコンピュータ上で実行されてもよく、独立型ソフトウェア・パッケージとして実行されてもよく、一部がユーザのコンピュータ上で、一部がリモート・コンピュータ上で実行されてもよく、または全体がリモート・コンピュータもしくはサーバ上で実行されてもよい。上記の最後のシナリオでは、リモート・コンピュータが、ローカル・エリア・ネットワーク（ＬＡＮ）もしくはワイド・エリア・ネットワーク（ＷＡＮ）を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されてもよく、またはこの接続が、外部コンピュータに対して（例えばインターネット・サービス・プロバイダを使用してインターネットを介して）実施されてもよい。いくつかの実施形態では、本発明の諸態様を実施するために、例えばプログラム可能論理回路、フィールドプログラマブル・ゲート・アレイ（ＦＰＧＡ）またはプログラマブル論理アレイ（ＰＬＡ）を含む電子回路が、このコンピュータ可読プログラム命令の状態情報を利用してその電子回路をパーソナライズすることにより、このコンピュータ可読プログラム命令を実行してもよい。
【０１００】
本明細書では、本発明の諸態様が、本発明の実施形態による方法、装置（システム）およびコンピュータ・プログラム製品の流れ図もしくはブロック図またはその両方の図を参照して説明される。それらの流れ図もしくはブロック図またはその両方の図のそれぞれのブロック、およびそれらの流れ図もしくはブロック図またはその両方の図のブロックの組合せは、コンピュータ可読プログラム命令によって実施することができることが理解されよう。
【０１０１】
これらのコンピュータ可読プログラム命令は、機械を形成する汎用コンピュータ、専用コンピュータまたは他のプログラム可能データ処理装置のプロセッサに、それらのコンピュータまたは他のプログラム可能データ処理装置のプロセッサによって実行されるこれらの命令が、これらの流れ図もしくはブロック図またはその両方の図のブロックに指定された機能／動作を実施する手段を生成するような態様で提供することができる。これらのコンピュータ可読プログラム命令はさらに、特定の方式で機能するようにコンピュータ、プログラム可能データ処理装置もしくは他のデバイスまたはこれらの組合せに指図することができるコンピュータ可読ストレージ媒体に、その中に命令が記憶されたコンピュータ可読ストレージ媒体が、これらの流れ図もしくはブロック図またはその両方の図のブロックに指定された機能／動作の態様を実施する命令を含む製造物品を含むような態様で記憶することができる。
【０１０２】
コンピュータ可読プログラム命令はさらに、コンピュータ、他のプログラム可能装置または他のデバイス上で一連の動作ステップを実行させて、コンピュータによって実施されるプロセスを生み出すために、このコンピュータ、他のプログラム可能データ処理装置または他のデバイス上に、このコンピュータ、他のプログラム可能装置または他のデバイス上で実施されるこれらの命令が、これらの流れ図もしくはブロック図またはその両方の図のブロックに指定された機能／動作を実施するような態様でロードすることができる。
【０１０３】
添付図中の流れ図およびブロック図は、本発明のさまざまな実施形態によるシステム、方法およびコンピュータ・プログラム製品の可能な実施態様のアーキテクチャ、機能および動作を示す。この点に関して、それらの流れ図またはブロック図のそれぞれのブロックは、指定された論理機能を実施する１つまたは複数の実行可能命令を含む、命令のモジュール、セグメントまたは一部分を表すことがある。いくつかの代替実施態様では、ブロックに示された機能を、図に示された順序とは異なる順序で実施することができる。例えば、連続して示された２つのブロックが、実際は、実質的に同時に実行されることがあり、または、含まれる機能によってはそれらのブロックが逆の順序で実行されることもある。それらのブロック図もしくは流れ図またはその両方の図のそれぞれのブロック、ならびにそれらのブロック図もしくは流れ図またはその両方の図のブロックの組合せを、指定された機能もしくは動作を実行しまたは専用ハードウェアとコンピュータ命令の組合せを実施するハードウェアベースの専用システムによって実施することができることにも留意すべきであろう。
【図１】
2022500743.tif 000015
【図２】
2022500743.tif 000016
【図３】
2022500743.tif 000017
【図４】
2022500743.tif 000018
【図５】
2022500743.tif 000019
【図６】
2022500743.tif 000020
【図７】
2022500743.tif 000021
【図８】
2022500743.tif 000022
【手続補正書】
【提出日】令和3年7月2日(2021.7.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
単一のキュービット回転を実行するように構成された一組の量子論理ゲートを備える量子プロセッサを使用して、量子論理ゲートの組合せの基底状態波動関数を決定すること、
前記基底状態波動関数から励起状態波動関数を決定するように構成される一組の励起演算子を形成すること、
前記一組の励起演算子および波動関数の基底状態エネルギーを決定するように構成されるハミルトン演算子から一組の交換子を形成すること、
前記一組の交換子を前記量子プロセッサの一組のキュービットに対応する一組のキュービット状態にマップすること、
前記量子プロセッサおよび前記メモリを使用して、前記一組の交換子を評価すること、
評価された前記一組の交換子から励起状態エネルギーを測定することを、量子読出し回路に実行させること
を含む、コンピュータに実行させる方法。
【請求項２】
それぞれのパウリ・ストリングが一組のパウリ演算子を含む一組のパウリ・ストリングを抽出すること、
をさらに含む、請求項１に記載の方法。
【請求項３】
前記一組のパウリ・ストリングを評価して、前記一組の交換子を計算すること
をさらに含む、請求項２に記載の方法。
【請求項４】
前記一組のパウリ・ストリングの部分集合をグループ化すること
をさらに含み、前記部分集合が、前記一組の交換子のうちの少なくとも１つの交換子に対応する、
請求項２または３に記載の方法。
【請求項５】
ヨルダン−ウィグナー変換を使用して前記一組の励起演算子をマップすること
をさらに含む、請求項１乃至４のいずれかに記載の方法。
【請求項６】
前記一組の交換子がヨルダン−ウィグナー変換を使用してマップされる、請求項１乃至５のいずれかに記載の方法。
【請求項７】
一組の励起エネルギーの固有値方程式に対応する永年行列方程式の一組の行列要素を計算すること
をさらに含む、請求項１乃至６のいずれかに記載の方法。
【請求項８】
１つまたは複数のコンピュータ可読ストレージ・デバイスと、前記１つまたは複数のストレージ・デバイスのうちの少なくとも１つのストレージ・デバイスに記憶されたプログラム命令とを含むコンピュータ・プログラムであって、前記記憶されたプログラム命令が、
量子プロセッサおよびメモリを使用して、量子論理ゲートの組合せの基底状態波動関数を決定するためのプログラム命令であり、前記量子プロセッサが、単一のキュービット回転を実行するように構成された一組の量子論理ゲートを備える、前記プログラム命令と、
一組の励起演算子を形成するためのプログラム命令であり、前記一組の励起演算子が、前記基底状態波動関数から励起状態波動関数を決定するように構成された、前記プログラム命令と、
前記一組の励起演算子およびハミルトン演算子から一組の交換子を形成するためのプログラム命令であり、前記ハミルトン演算子が、波動関数の基底状態エネルギーを決定するように構成された、前記プログラム命令と、
前記一組の交換子を一組のキュービット状態にマップするためのプログラム命令であり、前記一組のキュービット状態が、前記量子プロセッサの一組のキュービットに対応する、前記プログラム命令と、
前記量子プロセッサおよびメモリを使用して、前記一組の交換子を評価するためのプログラム命令と、
計算された前記一組の交換子から励起状態エネルギーを測定することを、量子読出し回路に実行させるためのプログラム命令と
を含む、コンピュータ・プログラム。
【請求項９】
前記プログラム命令が、データ処理システム内のコンピュータ可読ストレージ・デバイスに記憶されており、前記プログラム命令が、ネットワークを横切ってリモート・データ処理システムから転送される、請求項８に記載のコンピュータ・プログラム。
【請求項１０】
前記プログラム命令が、サーバ・データ処理システム内のコンピュータ可読ストレージ・デバイスに記憶されており、前記プログラム命令が、リモート・データ処理システムに関連したコンピュータ可読ストレージ・デバイス内で使用されるために、ネットワークを横切って前記リモート・データ処理システムにダウンロードされる、請求項８または９に記載のコンピュータ・プログラム。
【請求項１１】
一組のパウリ・ストリングを抽出するためのプログラム命令であり、前記一組のパウリ・ストリングのうちのそれぞれのパウリ・ストリングが一組のパウリ演算子を含む、前記プログラム命令
をさらに含む、請求項８乃至１０のいずれかに記載のコンピュータ・プログラム。
【請求項１２】
前記一組のパウリ・ストリングを評価して、前記一組の交換子を計算するためのプログラム命令
をさらに含む、請求項１１に記載のコンピュータ・プログラム。
【請求項１３】
前記一組のパウリ・ストリングの部分集合をグループ化するためのプログラム命令であり、前記部分集合が、前記一組の交換子のうちの少なくとも１つの交換子に対応する、前記プログラム命令
をさらに含む、請求項１１に記載のコンピュータ・プログラム。
【請求項１４】
ヨルダン−ウィグナー変換を使用して前記一組の励起演算子をマップするためのプログラム命令
をさらに含む、請求項８乃至１３のいずれかに記載のコンピュータ・プログラム。
【請求項１５】
前記一組の交換子がヨルダン−ウィグナー変換を使用してマップされる、請求項８乃至１４のいずれかに記載のコンピュータ・プログラム。
【請求項１６】
一組の励起エネルギーの固有値方程式に対応する永年行列方程式の一組の行列要素を計算するためのプログラム命令
をさらに含む、請求項８乃至１５のいずれかに記載のコンピュータ・プログラム。
【請求項１７】
古典プロセッサおよび単一のキュービット回転を実行するように構成された一組の量子論理ゲートを備える量子プロセッサを有するコンピュータ・システムであり、
前記古典プロセッサおよび前記量子プロセッサが、
量子論理ゲートの組合せの基底状態波動関数を決定する手段、
前記基底状態波動関数から励起状態波動関数を決定するように構成される一組の励起演算子を形成する手段、
前記一組の励起演算子および波動関数の基底状態エネルギーを決定するように構成されるハミルトン演算子から一組の交換子を形成する手段、
前記一組の交換子を前記量子プロセッサの一組のキュービットに対応する一組のキュービット状態にマップする手段、
前記一組の交換子を評価する手段、
評価された前記一組の交換子から励起状態エネルギーを測定することを、量子読出し回路に実行させる手段、として機能する、
コンピュータ・システム。
【請求項１８】
一組のパウリ・ストリングを抽出する手段であり、前記一組のパウリ・ストリングのうちのそれぞれのパウリ・ストリングが一組のパウリ演算子を含む、前記手段
をさらに含む、請求項１７に記載のコンピュータ・システム。
【請求項１９】
前記一組のパウリ・ストリングを評価して、前記一組の交換子を計算する手段
をさらに含む、請求項１８に記載のコンピュータ・システム。
【請求項２０】
前記一組のパウリ・ストリングの部分集合をグループ化する手段であり、前記部分集合が、前記一組の交換子のうちの少なくとも１つの交換子に対応する、前記手段
をさらに含む、請求項１８または１９に記載のコンピュータ・システム。
【国際調査報告】
2022500743.tif 000023
2022500743.tif 000024
2022500743.tif 000025