JP7125825B2 - エンタングルした測定を用いたパウリ文字列のグループ化 - Google Patents

エンタングルした測定を用いたパウリ文字列のグループ化 Download PDF

Info

Publication number
JP7125825B2
JP7125825B2 JP2019010284A JP2019010284A JP7125825B2 JP 7125825 B2 JP7125825 B2 JP 7125825B2 JP 2019010284 A JP2019010284 A JP 2019010284A JP 2019010284 A JP2019010284 A JP 2019010284A JP 7125825 B2 JP7125825 B2 JP 7125825B2
Authority
JP
Japan
Prior art keywords
pauli
strings
measurable
observables
generating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019010284A
Other languages
English (en)
Other versions
JP2020144400A (ja
Inventor
一航 ▲浜▼村
貴司 今道
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2019010284A priority Critical patent/JP7125825B2/ja
Priority to US16/739,822 priority patent/US11010514B2/en
Publication of JP2020144400A publication Critical patent/JP2020144400A/ja
Priority to US17/225,691 priority patent/US11954418B2/en
Application granted granted Critical
Publication of JP7125825B2 publication Critical patent/JP7125825B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Artificial Intelligence (AREA)
  • Computational Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Complex Calculations (AREA)
  • Optical Modulation, Optical Deflection, Nonlinear Optics, Optical Demodulation, Optical Logic Elements (AREA)

Description

本発明は、量子コンピューティングを可能にする量子回路を設計するための、エンタングルした測定を用いたパウリ文字列のグループ化に関する。
計算量を飛躍的に増加させる計算装置として、量子コンピュータが注目されている。例えば、量子化学における固有値を計算する量子・古典コンピュータのハイブリッドアルゴリズムとして、VQE(Variational Quantum Eigensolver)が知られている(非特許文献1~2)。
VQEでは、量子ハミルトニアンを構成するパウリ文字列(Pauli String)のそれぞれの期待値を計算している。VQEの効率化のために、テンソル積基底(Tensor Product Basis:TPB)に基づいて、複数種類のパウリ行列の処理をまとめる手法等が知られている(非特許文献3~6)。また、パウリ行列をまとめた結果に基づいて、量子回路を設計する手法等が知られている(非特許文献7~8)。
[非特許文献1]Alberto Peruzzo, et al., A variational eigenvalue solver on a photonic quantum processor, Nat. Commun. 5 (2014), 4213
[非特許文献2]Nikolaj Moll, et al., Quantum optimization using variational algorithms on near-term quantum devices, Quantum Sci. Technol. 3 (2018), 030503
[非特許文献3]J. R. McClean, et al., New J. Phys. 18 023023 (2016)
[非特許文献4]S. Bravyi, et al., Tapering off Qubits to Simulate Fermionic Hamiltonians, arXiv:1701.08213
[非特許文献5]Abhinav Kandala, et al., Hardware-efficient variational quantum eigensolver for small molecules and quantum magnets, Nature 549 (2017), 242-246
[非特許文献6]Daochen Wang, et al., A Generalised Variational Quantum Eigensolver, arXiv:1802.00171
[非特許文献7]Cardoso, J. F., & Souloumiac, A. Jacobi angles for simultaneous diagonalization. SIAM J. Matrix Anal. & Appl., 17(1), 161-164 (1996)
[非特許文献8]V. V. Shende, S. S. Bullock and I. L. Markov, Synthesis of quantum-logic circuits, in IEEE TCAD, vol. 25, no. 6, pp. 1000-1010 (2006)
VQEを更に効率化する、コンピュータにより実装される方法、装置、コンピュータプログラム製品を提供することが望まれる。
本発明の第1の態様においては、コンピュータにより実装される方法であって、量子ハミルトニアンに含まれる複数のパウリ文字列を取得する段階と、複数のパウリ文字列が、少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量であるかの判断に少なくとも部分的に基づいて、複数のパウリ文字列の少なくとも一部をグループ化する段階と、グループ化する段階から得られた結果に基づいて量子回路を設計する段階と、を備える方法を提供する。本態様によれば、複数のパウリ文字列をグループ化することにより、VQEの処理を効率化することができる。
本発明の第2の態様においては、第1の態様において、複数のパウリ文字列はK文字のパウリ文字列を含み、方法は、k文字(kはK以下の自然数)のパウリ文字列を要素とし、要素数が2のセットを複数生成する段階と、生成した複数のセットから、エンタングルした測定により一緒に測定可能な観測可能量であるものを特定する段階と、を更に備え、グループ化する段階は、特定する段階において特定されたセットにより行う。本態様によれば、事前にグループ化可能なパウリ文字列の候補を網羅的に準備しておくことができる。
本発明の第3の態様においては、第1又は第2の態様において、グループ化する段階は、複数のパウリ文字列のそれぞれをノードとして含むパウリグラフを生成する段階と、複数のパウリ文字列の少なくとも一部のノードに対応するパウリ文字列が、少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量であるかの判断に基づいて、パウリグラフにおける前記少なくとも一部のノードを統合して、統合パウリグラフを生成する段階と、を有する。本態様によれば、パウリグラフを利用することにより、VQEの処理を更に効率化することができる。
なお、上記の発明の概要は、本発明の特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
VQEの処理の一例を示す。 VQEの処理フローの一例を示す。 本実施形態において効率化されたVQEの処理の一例を示す。 本実施形態における装置10の一例を示す。 本実施形態の装置10の処理フローの一例を示す。 量子ハミルトニアンに含まれる複数のパウリ文字列の一例を示す。 パウリグラフの一例を示す。 統合パウリグラフの一例を示す。 グループ分けされた統合パウリグラフの一例を示す。 パウリグラフのみに基づいて行ったグループ分けの結果の例を示す。 パウリ文字列XXに対応する量子回路の一例を示す。 パウリ文字列YYに対応する量子回路の一例を示す。 パウリ文字列ZZに対応する量子回路の一例を示す。 XX、YYおよびZZに対応する量子回路の一例を示す。 コンピュータ1200のハードウェア構成の一例を示す。
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、VQE(Variational Quantum Eigensolver)における計算処理の一例を示す。VQEは、シュレディンガー方程式における量子ハミルトニアンの固有値及び/又は固有ベクトルを計算することを目的とする。このために、VQEでは、量子ハミルトニアンHの期待値<ψ(θ)|H|ψ(θ)>を最小化するθを特定する。なお、以下で「量子コンピュータ」を言うときは、量子回路を古典コンピュータに組み込んだ量子古典ハイブリッド型コンピュータも含むものとする。
例えば、VQEでは、まず最初のθであるθに対し、期待値<ψ(θ)|H|ψ(θ)>が計算される。量子ハミルトニアンHは、恒等演算子Iとパウリ演算子(σ、σ及びσ)のテンソル積の線形結合として表記される。このようなテンソル積はパウリ文字列(Pauli String)とも呼ばれる。
ここで、パウリ文字列IZXZ、パウリ文字列ZXZI、パウリ文字列XXXX、パウリ文字列ZIZX、及び、パウリ文字列IZXZを含む量子ハミルトニアンHを例にする。本例では、量子ハミルトニアンHは、
=aIZXZ+bZXZI+cXXXX+dZIZX+eIZXZ …数式1
と表記される。ここで、X、Y及びZは、それぞれパウリ演算子σ、σ及びσを表し、a~eは係数を示す。
VQEでは、期待値<ψ(θ)|H|ψ(θ)>を、パウリ文字列ごとに分けて計算する。例えば、θから得られる期待値を計算するために、図1に示すように、<ψ(θ)|IZXZ|ψ(θ)>、<ψ(θ)|ZXZI|ψ(θ)>、<ψ(θ)|XXXX|ψ(θ)>、<ψ(θ)|ZIZX|ψ(θ)>、及び、<ψ(θ)|XZIZ|ψ(θ)>をそれぞれ計算する。
<ψ(θ)|IZXZ|ψ(θ)>の計算は、θに対して、多数回(例えば100回)行う。<ψ(θ)|IZXZ|ψ(θ)>の計算は、量子コンピュータが量子計算により実行するが、各試行の結果は確率的に得られる。このため、パウリ文字列IZXZに対する多数回の計算により、<ψ(θ)|IZXZ|ψ(θ)>の結果が統計的に得られる。
図1の例では、量子コンピュータが、θに対して、5種類のパウリ文字列の計算をそれぞれ100回実行する(すなわち、計500回)。次に、θを更新して得られたθに対しても同様に多数回の量子計算が実行され、期待値が算出される。更に、θを逐次更新して、対応する期待値が算出される。このようにVQEでは、θを更新しながら、期待値<ψ(θ)|H|ψ(θ)>の最小値を探索する。
すなわち、VQEにおいては、3層構造のループを実行しているものとみなすことができる。3層構造において、最外層の第1ループはθの更新を実行し、中層の第2ループはパウリ文字列ごとの期待値を統計的に算出し、内層の第3ループは1回ごとのパウリ文字列の量子計算を行う。
図2にVQEの処理フローの一例を示す。量子コンピュータは、図2に示すS210~S270の処理を行うことにより、VQEを実行してよい。ここで、S210~S260は最外層の第1ループに対応し、S230~S250は中層の第2ループに対応し、S230は内層の第3ループに対応する。
まず、S210において、量子コンピュータはθを更新する。θは、波動関数ψを特定するパラメータであってよい。例えば、θは、ψに含まれる1又は複数の関数の種類、及び、各関数の係数、及び、調整項などを指定する数値を含む。例えば、θは、整数及び/又は実数を含むベクトルであってよい。
初回のS210において、量子コンピュータは指定されたθを設定するか、又は、ランダムにθを決定してよい。2回目以降のS210において、量子コンピュータは、導関数を用いない最適化手法等の既知のアルゴリズムに基づいて、期待値の減少が予想されるθを設定してよい。
S220において、量子コンピュータはαを初期化する。ここで、αはパウリ文字列Pαを指定する変数であってよい。例えば、α=1のときに対応するパウリ文字列PはIZXZであってよく、α=2~5のときに対応するパウリ文字列P2~5はそれぞれZXZI、XXXX、ZIZX、及びXZIZであってよい。
次にS230において、量子コンピュータはαに対応するパウリ文字列の量子計算を実行する。例えば、量子コンピュータは、期待値<Pα>=<ψ(θ)|Pα|ψ(θ)>の量子計算を1回実行する。例えば、α=1の時にS230で、量子コンピュータは、<ψ(θ)|IZXZ|ψ(θ)>の計算を1回実行する。量子コンピュータは、第3ループにおいて、S230の量子計算を予め定められたN回(例えば100回)実行する。
第3ループの処理の後、S240において、量子コンピュータはαに対応するパウリ文字列の期待値を統計的に決定する。例えば、α=1のときに、量子コンピュータは、N回の<ψ(θ)|IZXZ|ψ(θ)>の計算結果の統計量(例えば、平均値、中央値、又は、最多数値)を計算し、これを期待値<Pα>の計算結果として出力する。
次にS250において、量子コンピュータはαを更新する。例えば、量子コンピュータはαに1を加える。その後、量子コンピュータは、αが予め定められた数(例えば5)以下である場合、第3ループの処理を再度実行し、そうでない場合は、第2ループの処理を終え、S260の処理を実行してよい。
S260において、量子コンピュータは、現在のθに対する量子ハミルトニアンの期待値を算出する。例えば、量子コンピュータは、期待値<H>をΣ(hα<Pα>)により算出する。ここで、hαは各パウリ文字列に対する係数であってよく、例えば、数式1のa~eに対応する。その後、量子コンピュータは、終了条件(例えば、所定回数のθの更新を終えた、又は、期待値<H>の改善がなくなった等)を満たしていれば、S270の処理を実行し、そうでなければS210の処理に戻る。
S270において、量子コンピュータは最小の期待値<H>と、当該最小の期待値<H>を与えるθを決定し、これらを出力する。
このように、VQEにおいては、第1ループ~第3ループの3階層の処理を行うことにより、最小の期待値<H>とθを決定する。ここで、複数のパウリ文字列をまとめて処理することができれば、第2ループの処理を効率化することができる。
そこで、本実施形態における装置は、エンタングルした測定により一緒に測定可能な観測可能量を利用して、VQEの第2ループの計算を更に効率化する。
図3は、本実施形態において効率化されたVQEの処理の一例を示す。図3の例では、量子コンピュータが、θに対して、2種類のパウリ文字列の計算をそれぞれ100回実行する(すなわち、計200回)。ここで、本例では、IZXZの量子計算とXZIZの量子計算とを一緒に取得している。また、ZXZIの量子計算、XXXXの量子計算及びZIZXの量子計算を一緒に取得している。
これにより、本例によれば、図1に示される例と比較して、θあたりの量子計算の回数を2/5に削減でき、必要な量子回路の数も縮小できる。具体的な実現方法について、以下で説明する。
図4は、本実施形態に係る装置10のブロック図を示す。装置10は、一緒に処理可能なパウリ文字列をグループ化することにより、効率化されたVQEを実現する情報処理装置(例えば、コンピュータ)である。具体的には、装置10は、エンタングルした測定により一緒に測定可能な観測可能量を利用して、パウリ文字列をグループ化する。装置10は、記憶部105、取得部110、セット生成部120、特定部130、グループ化部140、及び、設計部150を備える。
記憶部105は、装置10の処理に用いられる情報を記憶する。例えば、記憶部105は、装置10の動作に用いられる種々のデータ/命令を記憶する。装置10の他の1又は複数の要素(例えば、取得部110、セット生成部120、特定部130、グループ化部140、及び、設計部150)は、必要に応じて、直接または記憶部105を介して、データを通信してよい。
取得部110は、量子ハミルトニアンHに含まれる複数のパウリ文字列を取得する。例えば、取得部110は、数式1に示される量子ハミルトニアンHに含まれるパウリ文字列IZXZ、ZXZI、XXXX、ZIZX、及び、XZIZを取得する。
セット生成部120は、複数のパウリ文字列を含むセットを、複数生成する。例えば、取得部110が取得したパウリ文字列の文字数がK文字(例えば、K=4)であるときに、セット生成部120は、k文字(kはK以下の自然数)のパウリ文字列を要素とするセットを複数生成する。セット生成部120によるセット生成の詳細は後述する。
特定部130は、セット生成部120が生成した複数のセットから、エンタングルした測定により一緒に測定可能な観測可能量であるものを特定する。エンタングルした測定は、例えば、ベル測定(Bell Measurement)であってよい。特定部130による特定の詳細は後述する。
グループ化部140は、量子ハミルトニアンに含まれる複数のパウリ文字列の少なくとも一部をグループ化する。例えば、グループ化部140は、特定部130に特定されたセットにより、グループ化を行う。これにより、グループ化部140は、複数のパウリ文字列がエンタングルした測定により一緒に測定可能な観測可能量であるか、の判断に少なくとも部分的に基づいて、グループ化を実行する。グループ化部140は、グラフ生成部142、統合部144、及び、カラーリング部146を有する。
グラフ生成部142は、取得部110が取得した量子ハミルトニアンに含まれる複数のパウリ文字列のそれぞれをノードとして含むパウリグラフを生成する。パウリグラフは、量子ハミルトニアン中のパウリ文字列のそれぞれをノードとするグラフである。パウリグラフ生成の詳細は後述する。
統合部144は、パウリグラフにおいて、少なくとも一部のノードを統合して、統合パウリグラフを生成する。例えば、統合部144は、複数のパウリ文字列のうち統合されるノードに対応するパウリ文字列が、エンタングルした測定により一緒に測定可能な観測可能量であるかの判断に基づいて、ノードの統合を実行してよい。統合部144は、特定部130に特定されたセットにより、パウリ文字列がエンタングルした測定により一緒に測定可能な観測可能量であるかの判断を行ってよい。
カラーリング部146は、エッジで接続されないノード同士が同じグループに属するように、統合パウリグラフに含まれるノードをグループ分けする。例えば、カラーリング部146は、統合パウリグラフに、カラーリングアルゴリズムを適用して、グループ分けを実行する。この結果、カラーリング部146は、2以上のパウリ文字列を含むグループを生成する。これにより、カラーリング部146は、量子ハミルトニアンに含まれる複数のパウリ文字列の少なくとも一部をグループ化する。
設計部150は、グループ化部140によりグループ化された結果に基づいて、量子回路を設計する。例えば、設計部150は、グループ化部140により生成された同一グループにおけるパウリ文字列の計算が、量子回路において共有されるように、量子回路を設計する。これにより、VQEにおいて、同一グループのパウリ文字列に対する期待値<Pα>の算出が一緒にできる。量子回路の設計の詳細は後述する。
このように、装置10によれば、エンタングルした測定により一緒に測定可能な観測可能量であるかの判断に少なくとも部分的に基づいて、複数のパウリ文字列をグループ化する。このグループ化より、装置10によれば、VQEにおける第2ループの処理を効率化することができる。
なお、装置10は、プロセッサ又はプログラム可能回路を有してよい。例えば、記憶部105は、命令を含むコンピュータプログラム、又は、命令を集合的に格納する1又は複数のコンピュータ可読媒体であってよい。当該命令は、プロセッサ又はプログラム可能回路に実行されると、プロセッサ又はプログラム可能回路に、取得部110、セット生成部120、特定部130、グループ化部140、及び、設計部150の少なくとも一部の動作を実行させてよい。
図5は、本実施形態の装置10の処理フローの一例を示す。本実施形態において、装置10は、S710~S790の処理を実行することにより、量子ハミルトニアンに含まれるパウリ文字列をグループ化し、これによりVQEを効率化する。
S710において、セット生成部120は、複数のパウリ文字列を含むセットを生成する。例えば、S725において取得される量子ハミルトニアンがK文字のパウリ文字列を含む場合、セット生成部120はK以下となるk文字のパウリ文字列のセットを複数生成する。セット生成部120は、要素数が2となるようにセットを生成する。ここで、セット生成部120は、恒等演算子Iのみのパウリ文字列(例えば、II、III、IIII)を要素に含むようにセットを生成する。
セット生成部120は、上記条件を満たすセット(すなわち、k文字のパウリ文字列を要素とし、要素数が2で、Iのみのパウリ文字列を要素の1つとして含むセット)を全て生成してよい。これに代えて、セット生成部120は、上記条件を満たすセットの一部のみを生成してよい。セット生成部120は、1<k≦Kを満たす全てのk又は一部のkについて、セットを生成してよい。
具体的には、セット生成部120は、まず、A種類のパウリ演算子をk個並べたパウリ文字列を全通り(すなわちA通り)列挙する。一例として、k=2でパウリ演算子がI、X、Y及びZの場合(すなわちA=4)、セット生成部120は、II、IX、IY、IZ、XI、XX、XY、XZ、YI、YX、YY、YZ、ZI、ZX、ZY、ZZを列挙できる。
その後、セット生成部120は、これら列挙したパウリ文字列を2個含むセットを生成する。ただし、セット生成部120は、各セットに、恒等演算子のみがk個含まれるパウリ文字列(例えばII)を含むようにする。一例として、セット生成部120は、k=2に対して、4個の要素を含むセット(II、IX、IY、IZ)、セット(II、IX、IY、XI)、セット(II、IX、IY、XX)・・・セット(II、ZX、ZY、ZZ)を生成する。
次にS720において、特定部130は、S710でセット生成部120が生成した複数のセットから、エンタングルした測定により一緒に測定可能な観測可能量であるものを特定する。例えば、特定部130は、パウリ文字列Pとパウリ文字列Pとが可換(Commutative)である場合に、PとPとを、エンタングルした測定により一緒に測定可能な観測可能量であるとしてよい。なお、パウリ文字列Pとパウリ文字列PとがP-P=0を満たす場合に、パウリ文字列Pとパウリ文字列Pとが可換となる。
エンタングルした測定の具体例として、ベル測定(Bell Measurement)、オメガ測定(Omega Measurement)、シグマ測定(Sigma Measurement)、及び、クサイ測定(Xi Measurement)が挙げられる。ここで、オメガ測定は以下の数式4に示されるオメガ状態を利用した測定であり、シグマ測定は以下の数式6に示されるシグマ状態を利用した測定であり、クサイ測定は以下の数式8に示されるクサイ状態を利用した測定である。
例えば、ベル測定において、パウリ文字列XXは、パウリ文字列II、パウリ文字列YY及びパウリ文字列ZZのいずれとも可換である。このため、例えば、特定部130は、S710で列挙したk=2のセットのうち(II、XX、YY、ZZ)をベル測定により一緒に測定可能な観測可能量であるものとして特定する。同様に、特定部130は、ベル測定に加え、(II、ZZ、XY、YX)、(II、XX、YZ、ZY)、(II、YY、XZ、ZX)、(II、XX、YZ、ZY)等を、オメガ測定、シグマ測定、クサイ測定等のエンタングルした測定により一緒に測定可能な観測可能量であるものとして特定してよい。
特定部130は、1<k≦Kを満たす全てのk又は一部のkについて、セットを特定してよい。例えば、特定部130は、k=2と同様に、k=3について(III、XXX、IZZ、ZIZ、ZZI、XYY、YXY、YYX)等を特定し、k=4について(IIII、XXXX、IXXZ、ZXZI、ZIZX、XZIZ、XYIY、YIYX、YXYI、IYXY、ZYYZ、ZZYY、XIXI、XIXI、YYZZ、YZZY)等を特定してよい。
S725において、取得部110が量子ハミルトニアンHを取得する。例えば、取得部110は、量子ハミルトニアンHに含まれる複数のパウリ文字列を取得する。複数のパウリ文字列の各々は、1又は複数の演算子(例えば、I、X、Y又はZ)を含んでよい。
図6は、量子ハミルトニアンに含まれる複数のパウリ文字列の一例を示す。例えば、取得部110は、図示するように、ZXZI、IZXZ、XXXX、XZIZ及びZIZXを、量子ハミルトニアンに含まれる複数のパウリ文字列として取得してよい。
S730において、グラフ生成部142は、パウリグラフを生成する。例えば、グラフ生成部142は、S725で取得された量子ハミルトニアンに含まれる複数のパウリ文字列のそれぞれをノードとして含むパウリグラフを生成する。
図7は、パウリグラフの一例を示す。グラフ生成部142は、図6に示される複数のパウリ文字列から、図7に示されるパウリグラフを生成してよい。グラフ生成部142は、対応する位置にある演算子が同一である(例えば、2つのパウリ文字列における1つ目の演算子におけるXとX、2つのパウリ文字列における2つ目の演算子におけるYとY、又は、2つのパウリ文字列における3つ目の演算子におけるZとZ)、または、対比する演算子の少なくとも一方がIである場合(例えば、IとX)に、当該対比される演算子において、テンソル積基底で一緒に測定可能な観測可能量であると判断してよい。一実施形態において、グラフ生成部142は、パウリ文字列の全ての演算子がそれぞれの対応する位置において一緒に測定可能な観測可能量であるときに、当該パウリ文字列がテンソル積基底で一緒に測定可能であると決定してよい。
例えば、ZXZI及びIZXZは、第1演算子(Z、I)及び第4演算子(I、Z)においてテンソル積基底で一緒に測定可能な観測可能量であるが、第2演算子(X、Z)及び第3演算子(Z、X)においてテンソル積基底で一緒に測定可能な観測可能量でない。TPBによりパウリ文字列が一緒に測定可能でないときに、グラフ生成部142は、当該パウリ文字列を接続してよい。従って、グラフ生成部142は、ZXZI及びIZXZをエッジで接続してよい。
一方で、例えば、ZXZI及びZIZXは、第1演算子(Z、Z)、第2演算子(X、I)、第3演算子(Z、Z)及び第4演算子(I、X)の全てにおいて、テンソル積基底で一緒に測定可能な観測可能量である。TPBによりパウリ文字列が一緒に測定可能であるときに、グラフ生成部142は、当該パウリ文字列を接続しなくてよい。従って、グラフ生成部142は、ZXZI及びZIZXをエッジで接続しなくてよい。
このように、グラフ生成部142は、複数のパウリ文字列に含まれる第1のパウリ文字列と第2のパウリ文字列が、少なくとも一部の演算子において、テンソル積基底で一緒に測定可能な観測可能量でない場合に、第1のパウリ文字列と第2のパウリ文字列とをエッジで接続することにより、パウリグラフの生成を行う。グラフ生成部142は、複数のパウリ文字列に含まれる全ての演算子に基づいて、パウリグラフを生成してよい。
次にS740で、統合部144は、S730で生成したパウリグラフにおいて、少なくとも一部のノードを統合して、統合パウリグラフを生成する。例えば、統合部144は、少なくとも一部の演算子において、統合されるノードに対応するパウリ文字列が、エンタングルした測定により一緒に測定可能な観測可能量であるかの判断に基づいて、ノードを統合してよい。
一例として、統合部144は、少なくとも一部のパウリ文字列が、一部の演算子においてエンタングルした測定により一緒に測定可能な観測可能量であり、かつ、残りの演算子において、テンソル積基底で一緒に測定可能な観測可能量である場合に、当該少なくとも一部のパウリ文字列に対応するノードを統合してよい。ここで、当該一部の演算子と他の演算子は、連続する演算子か、又は、離れた演算子であってよい。例えば、4文字のパウリ文字列において、当該一部の演算子は、第1演算子及び第3演算子であってよく、他の演算子は第2演算子と第4演算子であってよい。
図8は、統合パウリグラフの一例を示す。統合部144は、図7に示すパウリグラフから図8に示す統合パウリグラフを生成してよい。統合部144は、対比される演算子の一部が、S720で生成した複数のセットの同じ1つに含まれる場合に、対比される演算子がエンタングルした測定で一緒に測定可能な観測可能量であると判断してよい。パウリ文字列の任意の位置における一部の演算子を統合することにより、対比される演算子がそれぞれ準備されることに留意されたい。以下、当該演算子の一部を含む複数のセットの同じ一つを「ターゲットセット」ともいう。また、統合部144は、残りの演算子が、S730のパウリグラフ生成時に用いたのと同様の方法によりテンソル積基底で一緒に測定可能な観測可能量であるか、の判断を行ってよい。
例えば、ZXZI、XXXX、ZIZXの第1演算子及び第3演算子の結合がZZ、XX、ZZであり、これらの結合はS720で生成したセットの1つ(II、XX、YY、ZZ)に一緒に含まれる。また、ZXZI、XXXX、ZIZXは、2文字目及び4文字目(XI、XX、IX)において、テンソル積基底で一緒に測定可能な観測可能量である。
従って、統合部144は、ZXZI、XXXX、ZIZXに対応する3つのノードを統合してよい。その結果、統合パウリグラフは、XZIZに対応するノードと、ZXZI、XXXX及びZIZXに対応する統合ノードと、IZXZに対応するノードと、を含むものとなる。
なお、パウリグラフの統合対象となる複数のノードで、他のノードとのエッジ接続状態が異なる場合も想定される(例えば、ZXZIはIZXZと接続されるが、XXXXとIZXZとは接続されない場合等)。このような場合は、統合部144は、統合ノードと他のノードとの間を接続してよい。
次にS760で、カラーリング部146は、エッジで互いに接続されるノードが異なるグループに属し、かつ、エッジで接続されないノード同士が同じグループに属してよいように、統合パウリグラフに含まれるノードをグループ分けする。また、カラーリング部146は、統合されたノードに含まれる複数のパウリ文字列を同一のグループに属させてよい。
カラーリング部146は、生成されるグループ数が最小となるように、グループ分けを実行してよい。例えば、カラーリング部146は、グラフ彩色問題を厳密又は近似的に、解くカラーリングアルゴリズムを実装してよい。これにより、カラーリング部146は、統合パウリグラフに、カラーリングアルゴリズムを適用して、グループ分けを実行する。
図9は、グループ分けされた統合パウリグラフの一例を示す。カラーリング部146は、図8に示す統合パウリグラフから図9に示すグループ分けを実行してよい。例えば、統合パウリグラフにおいて、IZXZとXZIZとはエッジで接続されていない。また、ZXZI、XXXX及びZIZXは単一ノードに含まれる。これにより、カラーリング部146は、IZXZ及びXZIZを含む第1グループ910と、ZXZI、XXXX及びZIZXを含む第2グループ920とを生成してよい。
図10に、パウリグラフのみに基づいて行ったグループ分けの結果の例を示す。パウリグラフのノードを統合せずに、パウリグラフのみに基づいて、複数のパウリ文字列をグループ化する場合、生成されるグループの数が多くなってしまう場合がある。
例えば、図7に示すパウリグラフをカラーリングアルゴリズムでグループ分けした場合、図10に示すように、カラーリング部146は、IZXZ及びXZIZを含む第1グループ1010と、ZXZI及びZIZXを含む第2グループ1020と、XXXXを含む第3グループ1030とを生成することになる。
この結果、グループ分けする前と比べてVQEの第2ループの処理量は3/5となり、一定程度の効率化は可能になる。しかし、この場合、図9に示したグループ分けを行った場合と比較して、第2ループの処理量は3/2となる。従って、本実施形態よれば、パウリ文字列がエンタングルした測定で一緒に測定可能な観測可能量であるかの判断を用いることにより、VQEを更に効率化することができる。
次に、S770において、設計部150が、S740のノードの統合に使用されたターゲットセットを一緒に対角化する。例えば、S740でターゲットセット(II、XX、YY、ZZ)が使用された場合、設計部150は、ターゲットセット(II、XX、YY、ZZ)のパウリ文字列を一緒に対角化する。
ここで、ターゲットセット(II、XX、YY、ZZ)はベル測定により一緒に測定可能な観測可能量であるので、設計部150は、下記のベル状態に基づいて当該セットのパウリ文字列を対角化する。
Figure 0007125825000001
・・(数式2)
対角化の結果は、以下の通りとなる。
Figure 0007125825000002
・・(数式3)
ここで、ターゲットセットがオメガ測定により一緒に測定可能な観測可能量であるとき、設計部150は、ベル状態に代えて、オメガ状態に基づいて当該セットのパウリ文字列を対角化してもよい。例えば、設計部150は、セット(II、YY、XZ、ZX)のパウリ文字列を以下のオメガ状態に基づいて、対角化してよい。
Figure 0007125825000003
・・(数式4)
対角化の結果は、以下の通りとなる。
Figure 0007125825000004
・・(数式5)
更に設計部150は、ベル状態に代えてシグマ状態に基づいて、セットのパウリ文字列を対角化してもよい。ターゲットセットがシグマ測定により一緒に測定可能な観測可能量であるとき、設計部150は、ベル状態に代えて、シグマ状態に基づいて当該セットのパウリ文字列を対角化してもよい。例えば、設計部150は、セット(II、ZZ、XY、YX)のパウリ文字列を以下のシグマ状態に基づいて、対角化してよい。
Figure 0007125825000005
・・(数式6)
対角化の結果は、以下の通りとなる。
Figure 0007125825000006
・・(数式7)
更に設計部150は、ベル状態に代えてクサイ状態に基づいて、セットのパウリ文字列を対角化してもよい。ターゲットセットがクサイ測定により一緒に測定可能な観測可能量であるとき、設計部150は、ベル状態に代えて、クサイ状態に基づいて当該セットのパウリ文字列を対角化してもよい。例えば、設計部150は、セット(II、ZZ、XY、YX)のパウリ文字列を以下のクサイ状態に基づいて、対角化してよい。
Figure 0007125825000007
・・(数式8)
対角化の結果は、以下の通りとなる。
Figure 0007125825000008
・・(数式9)
次に、S780において、設計部150は、S770において得られた対角化の基底からユニタリ行列を生成する。例えば、数式3から得られるユニタリ行列は、以下のように示される。
Figure 0007125825000009
・・(数式6)
次に、S790において、設計部150は、S760のグループ分けの結果と、S780において得られたユニタリ行列とから量子回路を設計する。ここで、図11~図14を用いて、設計部150が生成する量子回路の例を説明する。
図11は、パウリ文字列XX、IX、XIに対応する量子回路1110の一例を示す。図中において|0>は量子状態を示し、Hはアダマール(Hadamard)ゲートと呼ばれる量子ゲートを示し、1112で示される記号は測定を示し、qは1ビット目の量子ビットを示し、qは2ビット目の量子ビットを示し、cはサイズ2の出力の古典ビットを示す。同様に図12は、パウリ文字列YY、IY、YIに対応する量子回路1120の一例を示し、図13は、パウリ文字列ZZ、IZ、ZIに対応する量子回路1130の一例を示す。図12において、Sダガー(Sの右上の十字様記号)は、入力量子ビットをZ軸周りに-π/2回転させる量子ゲートを示す。
図14は、XX、YYおよびZZに対応する量子回路1400の一例を示す。図14において1402に示される演算子は制御NOTゲートを示す。例えば、設計部150は、数式6のユニタリ行列から、量子回路1400を設計する。ユニタリ行列によれば、量子回路1400の1ビット目の出力をxとし、2ビット目の出力をxとすると、x=00は|Φ>に対応し、x=10は|Φ>に対応し、x=01は|Ψ>に対応し、x=11は|Ψ>に対応する。
従って、px0x1をxの結果の確率とすると、パウリ文字列XX,YY、ZZ及びIIのそれぞれの期待値<XX>、<YY>、<ZZ>及び<II>について、下記数式が成立する。
Figure 0007125825000010
・・数式(7)
従って、量子回路1400の出力x及びxを得てpx0x1を集計し、これを操作することにより、XX、YYおよびZZからの出力の期待値を全て取得することができる。すなわち、単一の量子回路1400により、パウリ文字列XX、YY、ZZ及びIIの出力を全て取得することができる。
設計部150は、S760で生成されたグループごとに、図14に示す量子回路1400のような共用される量子回路を設計してよい。更に設計部150は、グループ内の各パウリ文字列に対応する結果が得られるように、量子回路の出力を集計、操作する古典回路を設計してよい。
なお、上記では、特定のターゲットセット(II、XX、YY、ZZ)に対応する回路を生成する方法を説明した。しかし、どのようなセットに対しても、設計部150はS770で対角化を行い、S780でユニタリ行列を生成し、そしてS790で量子回路を設計し得る。また上記説明では、エンタングルした測定により一緒に測定可能な観測可能量であるかの判断に基づいてグループ化されるパウリ文字列の部分(すなわち、II、XX、YY、ZZ等)に対応する回路を生成する方法について説明したが、テンソル積基底で一緒に測定可能な観測可能量に基づいてグループ化されるパウリ文字列の部分(例えば、II、IX、XI、XX等)に対応する回路については、共用される量子回路を生成する必要はなく、出力を操作すれば所望の結果が得られることは明らかである。
図5~14に示すように、本実施形態の装置10は、パウリ文字列がエンタングルした測定により一緒に測定可能な観測可能量であるかの判断を利用する。これにより、装置10は、量子ハミルトニアンに含まれるパウリ文字列をグループにまとめ、VQEの処理を効率化する。
上記では、一般的な処理の流れについて説明したが、具体例としてH分子に本実施形態を適用した例を説明する。例えば、Jordan-Wigner変換を利用して、第2量子化されたH分子のフェルミハミルトニアンを量子ハミルトニアンに変換する。H分子の量子ハミルトニアンに含まれるパウリ文字列は、IIII、ZIII、IZII、IIZI、IIIZ、ZZII、ZIZI、YYXX、YYYY、XXXX、XXYY、ZIIZ、IZZI、IZIZ及びIIZZである。
ここで、この15個のパウリ文字列からパウリグラフを生成して、これにカラーリングアルゴリズムを適用した場合は、5個のグループを生成することができる。一方で、本実施形態のようにエンタングルした測定を利用して、パウリグラフから統合パウリグラフを生成して、これにカラーリングアルゴリズムを適用した場合は、2個のグループを生成することができる。従って、本実施形態によれば、エンタングルした測定を利用しない場合と比較して、処理を5/2倍に早めることができる。これにより、本実施形態によれば、必要な量子回路の数も縮小することができる。
このように、本実施形態の方法によれば、エンタングルした測定により一緒に測定可能な観測可能量を利用して、精度を落とすことなく、VQEの第2ループの処理の一部を省略することができる。これにより、本実施形態によれば、効率化されたVQEを実行可能な量子回路を提供することができる。
本発明の様々な実施形態は、フローチャートおよびブロック図を参照して記載されてよく、ここにおいてブロックは、(1)操作が実行されるプロセスの段階または(2)操作を実行する役割を持つ装置のセクションを表わしてよい。特定の段階およびセクションが、専用回路、コンピュータ可読媒体上に格納されるコンピュータ可読命令が供給されるプログラマブル回路、および/またはコンピュータ可読媒体上に格納されるコンピュータ可読命令が供給されるプロセッサによって実装されてよい。専用回路は、デジタルおよび/またはアナログハードウェア回路を含んでよく、集積回路(IC)および/またはディスクリート回路を含んでよい。プログラマブル回路は、論理AND、論理OR、論理XOR、論理NAND、論理NOR、および他の論理操作、フリップフロップ、レジスタ、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックアレイ(PLA)等のようなメモリ要素等を含む、再構成可能なハードウェア回路を含んでよい。
実施形態に係る発明は、任意の可能な統合された技術詳細レベルにおけるシステム、方法、及び/又は、コンピュータプログラム製品であってよい。コンピュータプログラム製品は、プロセッサに実施形態に係る発明の各側面を実行させるためのコンピュータ可読プログラム命令を包含する、1又は複数のコンピュータ可読記録媒体を有してよい。
コンピュータ可読記録媒体は、命令実行装置による使用のための命令を保持し、格納する有体の装置であってよい。コンピュータ可読記録媒体は、これらに限定されないが、例えば、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体、又はこれらの適切な組み合わせが含まれてよい。コンピュータ可読記録媒体のより具体的な例の非限定的なリストは、下記のものを含んでよい:ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、イレーサブルプログラマブルリードオンリーメモリ(EPROM又はフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスクリードオンリーメモリ(CD-ROM)、デジタルバーサタイルディスク(DVD)、メモリスティック、フロッピーディスク、パンチカード又は命令がその上に記録された溝における隆起構造等の機械的エンコード装置、及び、これらの任意の適切な組み合わせ。ここで使用されるコンピュータ可読記録媒体は、電波又は他の自由に伝搬する電磁波、導波路又は他の伝送媒体を通じて伝搬する電磁波(例えば、ファイバ光ケーブルを通る光パルス)、又は、配線を通じて伝送される電子信号のように、それ自体が一時的な信号であると解釈されるものではない。
ここに記述されるコンピュータ可読プログラム命令は、外部のコンピュータ、又は、外部の記憶装置のコンピュータ可読記憶媒体から、計算/処理装置の各々に、ネットワーク(例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、及び/又は、ワイヤレスネットワーク)を通じてダウンロードされてよい。ネットワークは、銅伝送ケーブル、光学伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、及び/又は、エッジサーバを有してよい。各計算/処理装置のネットワークアダプタカード又はネットワークインタフェースは、コンピュータ可読プログラム命令をネットワークから受信し、当該コンピュータ可読プログラム命令を、各計算/処理装置内のコンピュータ可読記録媒体のストレージに転送する。
実施形態の発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械語命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路のためのコンフィギュレーションデータ、又は、オブジェクト指向プログラミング言語(例えば、Smalltalk、C++等)、及び、手続き型プログラミング言語(例えば、"C"プログラミング言語または類似のプログラミング言語)を含む、1又は複数のプログラミング言語の任意の組み合わせにより記述されたオブジェクトコード若しくはソースコードであってよい。コンピュータ可読プログラム命令は、スタンドアローンソフトウェアパッケージとして、部分的にユーザのコンピュータで実行されてよく、又は完全にユーザのコンピュータで実行されてよい。また、コンピュータ可読プログラム命令は、部分的にユーザのコンピュータで実行されかつ部分的に遠隔コンピュータで実行されてよく、又は完全に遠隔コンピュータまたはサーバに実行されてよい。
後者の場合においては、遠隔コンピュータは、ユーザのコンピュータと、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意の種類のネットワークで接続されていてよい。または、当該接続は、(例えば、インターネットサービスプロバイダを用いたインターネットを介して)外部のコンピュータとされていてもよい。いくつかの実施形態において、例えば、プログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)、又は、プログラマブルロジックアレイ(PLA)を含む電子回路は、コンピュータ可読プログラム命令の状態情報を活用してコンピュータ可読プログラム命令を実行して、電子回路をパーソナライズし、これにより実施形態に係る発明の各側面を実行してよい。
本発明の各側面は、発明の実施形態における方法、装置(システム)、及び、コンピュータプログラム製品に係る、フローチャート図および/またはブロック図への参照と共にここに記述される。フローチャート図および/またはブロック図の各ブロック、及び、フローチャート図および/またはブロック図の複数のブロックの組み合わせは、コンピュータ可読プログラム命令により実装され得ることが理解されるだろう。
これらのコンピュータ可読プログラム命令は、汎用コンピュータ、専用コンピュータ、又は、他のプログラム可能なデータ処理装置のプロセッサに提供されて機械を形成してよく、これにより、コンピュータまたは他のプログラム可能なデータ処理装置のプロセッサを介して実行される命令が、フローチャート又はブロック図の一又は複数のブロックに特定される機能/動作を実装するための手段を形成する。
同様にこれらのコンピュータ可読プログラム命令は、コンピュータ、プログラム可能なデータ処理装置、及び/又は、他の装置に特定の態様で機能するように指示することができるコンピュータ可読記録媒体に格納されてよく、これにより、命令を内部に格納するコンピュータ可読記録媒体は、フローチャート又はブロック図の一又は複数のブロックに特定される機能/動作の各側面を実装する命令を含む製造物品を有する。
コンピュータ、他のプログラム可能な装置、又は他の装置で実行された命令がフローチャート又はブロック図の一又は複数のブロックに特定される機能/動作を実現するように、コンピュータ可読プログラム命令は、コンピュータ、他のプログラム可能なデータ処理装置、又は他の装置に読みだされ、一連の動作ステップがコンピュータ、他のプログラム可能な装置、又は他の装置において実行されて、コンピュータに実現されるプロセスが形成されてよい。
図面におけるフローチャート及びブロック図は、本発明の様々な実施形態におけるシステム、方法、及び、コンピュータプログラム製品の可能な実装におけるアーキテクチャ、機能、及び、動作を記述する。この点について、フローチャート及びブロック図における各ブロックは、特定された一又は複数のロジック機能を実装するための1又は複数の実行可能命令を有する、命令のモジュール、セグメント、又は部分を表すものであってよい。
他のいくつかの代替的な実装においては、ブロックにおいて記述される機能は、図面に記載された順番とは異なって生じてよい。例えば、連続で表された2つのブロックは、実際には、実質的に同時に実行されてよく、または、これらのブロックは、内包する機能に応じて、ある場合に逆の順番で実行されてよい。ブロック図および/またはフローチャート図の各ブロック、及び、ブロック図および/またはフローチャート図の複数ブロックの組み合わせは、特定の機能又は動作を実行する専用ハードウェアに基づくシステム、又は、専用ハードウェア及びコンピュータ命令の組み合わせにより実装されてよいことに同様に留意されたい。
図15は、本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ1200の例を示す。コンピュータ1200にインストールされたプログラムは、コンピュータ1200に、本発明の実施形態に係る装置に関連付けられる操作または当該装置の1または複数のセクションとして機能させることができ、または当該操作または当該1または複数のセクションを実行させることができ、および/またはコンピュータ1200に、本発明の実施形態に係るプロセスまたは当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ1200に、本明細書に記載のフローチャートおよびブロック図のブロックのうちのいくつかまたはすべてに関連付けられた特定の操作を実行させるべく、CPU1212によって実行されてよい。
本実施形態によるコンピュータ1200は、CPU1212、RAM1214、グラフィックコントローラ1216、およびディスプレイデバイス1218を含み、それらはホストコントローラ1210によって相互に接続されている。コンピュータ1200はまた、通信インタフェース1222、ハードディスクドライブ1224、DVD-ROMドライブ1226、およびICカードドライブのような入/出力ユニットを含み、それらは入/出力コントローラ1220を介してホストコントローラ1210に接続されている。コンピュータはまた、ROM1230およびキーボード1242のようなレガシの入/出力ユニットを含み、それらは入/出力チップ1240を介して入/出力コントローラ1220に接続されている。
CPU1212は、ROM1230およびRAM1214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ1216は、RAM1214内に提供されるフレームバッファ等またはそれ自体の中にCPU1212によって生成されたイメージデータを取得し、イメージデータがディスプレイデバイス1218上に表示されるようにする。
通信インタフェース1222は、ネットワークを介して他の電子デバイスと通信する。ハードディスクドライブ1224は、コンピュータ1200内のCPU1212によって使用されるプログラムおよびデータを格納する。DVD-ROMドライブ1226は、プログラムまたはデータをDVD-ROM1201から読み取り、ハードディスクドライブ1224にRAM1214を介してプログラムまたはデータを提供する。ICカードドライブは、プログラムおよびデータをICカードから読み取り、および/またはプログラムおよびデータをICカードに書き込む。
ROM1230はその中に、アクティブ化時にコンピュータ1200によって実行されるブートプログラム等、および/またはコンピュータ1200のハードウェアに依存するプログラムを格納する。入/出力チップ1240はまた、様々な入/出力ユニットをパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入/出力コントローラ1220に接続してよい。
プログラムが、DVD-ROM1201またはICカードのようなコンピュータ可読媒体によって提供される。プログラムは、コンピュータ可読媒体から読み取られ、コンピュータ可読媒体の例でもあるハードディスクドライブ1224、RAM1214、またはROM1230にインストールされ、CPU1212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ1200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置または方法が、コンピュータ1200の使用に従い情報の操作または処理を実現することによって構成されてよい。
例えば、通信がコンピュータ1200および外部デバイス間で実行される場合、CPU1212は、RAM1214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インタフェース1222に対し、通信処理を命令してよい。通信インタフェース1222は、CPU1212の制御下、RAM1214、ハードディスクドライブ1224、DVD-ROM1201、またはICカードのような記録媒体内に提供される送信バッファ処理領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、またはネットワークから受信された受信データを記録媒体上に提供される受信バッファ処理領域等に書き込む。
また、CPU1212は、ハードディスクドライブ1224、DVD‐ROMドライブ1226(DVD-ROM1201)、ICカード等のような外部記録媒体に格納されたファイルまたはデータベースの全部または必要な部分がRAM1214に読み取られるようにし、RAM1214上のデータに対し様々なタイプの処理を実行してよい。CPU1212は次に、処理されたデータを外部記録媒体にライトバックする。
様々なタイプのプログラム、データ、テーブル、およびデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU1212は、RAM1214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプの操作、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM1214に対しライトバックする。また、CPU1212は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU1212は、第1の属性の属性値が指定される、条件に一致するエントリを当該複数のエントリの中から検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。
上で説明したプログラムまたはソフトウェアモジュールは、コンピュータ1200上またはコンピュータ1200近傍のコンピュータ可読媒体に格納されてよい。また、専用通信ネットワークまたはインターネットに接続されたサーバーシステム内に提供されるハードディスクまたはRAMのような記録媒体が、コンピュータ可読媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ1200に提供する。
本発明の実施形態が記述されたが、発明の技術的範囲は、上記記述された実施形態に限定されるものではない。当業者にとって、様々な代替及び改良が上記された実施形態に対してなされることが明らかである。そのような代替及び改良がなされた実施形態が本発明の技術的範囲に含まれることも、特許請求の範囲から明らかである。
特許請求の範囲、実施形態、又は、図面に示される装置、システム、プログラム、及び、方法により実行される各プロセスにおける動作、手続き、ステップ、及び、段階は、「先だって」、「前に」等により順番が示されず、前のプロセスの出力が後のプロセスで使用されない限り、任意の順番で実行され得る。特許請求の範囲、実施形態、又は、図面において、プロセスのフローが「最初に」または「次に」等の語句を用いて記述されていた場合であっても、必ずしも当該プロセスがこの順番で実行されなければならないことを意味しない。
10 装置
105 記憶部
110 取得部
120 セット生成部
130 特定部
140 グループ化部
142 グラフ生成部
144 統合部
146 カラーリング部
150 設計部
910 第1グループ
920 第2グループ
1010 第1グループ
1020 第2グループ
1030 第3グループ
1110 量子回路
1120 量子回路
1130 量子回路
1200 コンピュータ
1201 DVD-ROM
1210 ホストコントローラ
1212 CPU
1214 RAM
1216 グラフィックコントローラ
1220 入/出力コントローラ
1222 通信インタフェース
1224 ハードディスクドライブ
1226 DVD-ROMドライブ
1230 ROM
1240 入/出力チップ
1242 キーボード
1400 量子回路

Claims (25)

  1. コンピュータにより実装される方法であって、
    量子ハミルトニアンに含まれる複数のパウリ文字列を取得する段階と、
    複数のパウリ文字列が、少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量であるかの判断に少なくとも部分的に基づいて、前記複数のパウリ文字列の少なくとも一部をグループ化する段階と、
    前記グループ化する段階から得られた結果に基づいて量子回路を設計する段階と、
    を備える方法。
  2. 前記複数のパウリ文字列はK文字のパウリ文字列を含み、
    前記方法は、
    k文字(kはK以下の自然数)のパウリ文字列を要素とし、要素数が2のセットを複数生成する段階と、
    生成した複数の前記セットから、エンタングルした測定により一緒に測定可能な観測可能量であるものを特定する段階と、
    を更に備え、
    前記グループ化する段階は、前記特定する段階において特定されたセットに従って行う、
    請求項1に記載の方法。
  3. 前記セットを複数生成する段階は、
    k文字のパウリ文字列を要素とし、要素数が2のセットを全て生成する段階である、
    請求項2に記載の方法。
  4. 前記グループ化する段階は、
    前記複数のパウリ文字列のそれぞれをノードとして含むパウリグラフを生成する段階と、
    前記複数のパウリ文字列のうち少なくとも一部のノードに対応するパウリ文字列が、少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量であるかの判断に基づいて、前記パウリグラフにおける前記少なくとも一部のノードを統合して、統合パウリグラフを生成する段階と、
    を有する請求項1に記載の方法。
  5. 前記パウリグラフを生成する段階は、
    前記複数のパウリ文字列に含まれる第1のパウリ文字列と第2のパウリ文字列が、少なくとも一つの演算子において、テンソル積基底で一緒に測定可能な観測可能量でない場合に、前記第1のパウリ文字列と前記第2のパウリ文字列とをエッジで接続することにより行う、
    請求項4に記載の方法。
  6. 前記グループ化する段階は、
    前記統合パウリグラフに、カラーリングアルゴリズムを適用して、前記統合パウリグラフに含まれるノードをグループ分けする段階を更に有する、
    請求項4に記載の方法。
  7. 前記統合パウリグラフを生成する段階は、
    前記少なくとも一部のパウリ文字列が、対応する位置にある少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量である場合に、前記一部のパウリ文字列に対応するノードを統合する段階を有する、
    請求項4に記載の方法。
  8. 前記統合パウリグラフを生成する段階は、
    前記少なくとも一部のパウリ文字列が、対応する位置にある少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量であり、かつ
    前記少なくとも一部のパウリ文字列が、残りの演算子において、テンソル積基底で一緒に測定可能な観測可能量である場合に、
    前記少なくとも一部のパウリ文字列に対応するノードを統合する段階を有する、
    請求項4に記載の方法。
  9. 前記量子回路を設計する段階は、前記グループ化により生成された同一グループにおけるパウリ文字列の計算が、量子回路において共有されるように行われる、
    請求項1に記載の方法。
  10. プロセッサ又はプログラム可能回路と、
    命令を集合的に格納する1又は複数のコンピュータ可読媒体と、
    を備える装置であって、
    前記命令は、前記プロセッサ又は前記プログラム可能回路に実行されると、前記プロセッサ又は前記プログラム可能回路に、
    量子ハミルトニアンに含まれる複数のパウリ文字列を取得する段階と、
    複数のパウリ文字列が、少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量であるかの判断に基づいて、前記複数のパウリ文字列の少なくとも一部をグループ化する段階と、
    前記グループ化する段階から得られた結果に基づいて量子回路を設計dsする段階と、
    を含む動作を実行させる装置。
  11. 前記複数のパウリ文字列はK文字のパウリ文字列を含み、
    前記命令は、前記プロセッサ又は前記プログラム可能回路に、
    k文字(kはK以下の自然数)のパウリ文字列を要素とし、要素数が2のセットを複数生成する段階と、
    生成した複数の前記セットから、エンタングルした測定により一緒に測定可能な観測可能量であるものを特定する段階と、
    を含む動作を更に実行させ、
    前記グループ化する段階は、前記特定する段階において特定されたセットにより行う、
    請求項10に記載の装置。
  12. 前記セットを複数生成する段階は、
    k文字のパウリ文字列を要素とし、要素数が2のセットを全て生成する段階である、
    請求項11に記載の装置。
  13. 前記グループ化する段階は、
    前記複数のパウリ文字列のそれぞれをノードとして含むパウリグラフを生成する段階と、
    前記複数のパウリ文字列のうち少なくとも一部のノードに対応するパウリ文字列が、少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量であるかの判断に基づいて、前記パウリグラフにおける前記少なくとも一部のノードを統合して、統合パウリグラフを生成する段階と、
    を有する請求項10に記載の装置。
  14. 前記パウリグラフを生成する段階は、
    前記複数のパウリ文字列に含まれる第1のパウリ文字列と第2のパウリ文字列が、少なくとも一つの演算子において、テンソル積基底で一緒に測定可能な観測可能量でない場合に、前記第1のパウリ文字列と前記第2のパウリ文字列とをエッジで接続することにより行う、
    請求項13に記載の装置。
  15. 前記グループ化する段階は、
    前記統合パウリグラフに、カラーリングアルゴリズムを適用して、前記統合パウリグラフに含まれるノードをグループ分けする段階を更に有する、
    請求項13に記載の装置。
  16. 前記統合パウリグラフを生成する段階は、
    前記少なくとも一部のパウリ文字列が、対応する位置にある少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量である場合に、前記一部のパウリ文字列に対応するノードを統合する段階を有する、
    請求項13に記載の装置。
  17. 前記統合パウリグラフを生成する段階は、
    前記少なくとも一部のパウリ文字列が、対応する位置にある少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量であり、かつ
    前記少なくとも一部のパウリ文字列が、残りの演算子において、テンソル積基底で一緒に測定可能な観測可能量である場合に、
    前記少なくとも一部のパウリ文字列に対応するノードを統合する段階を有する、
    請求項13に記載の装置。
  18. 命令を内部に有するコンピュータ可読記憶媒体を含むコンピュータプログラム製品であって、
    前記命令は、プロセッサ又はプログラム可能回路に実行されると、前記プロセッサ又は前記プログラム可能回路に、
    量子ハミルトニアンに含まれる複数のパウリ文字列を取得する段階と、
    複数のパウリ文字列が、少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量であるかの判断に基づいて、前記複数のパウリ文字列の少なくとも一部をグループ化する段階と、
    前記グループ化する段階から得られた結果に基づいて量子回路を設計する段階と、
    を含む動作を実行させる、
    コンピュータプログラム製品。
  19. 前記複数のパウリ文字列はK文字のパウリ文字列を含み、
    前記命令は、前記プロセッサ又は前記プログラム可能回路に、
    k文字(kはK以下の自然数)のパウリ文字列を要素とし、要素数が2のセットを複数生成する段階と、
    生成した複数の前記セットから、エンタングルした測定により一緒に測定可能な観測可能量であるものを特定する段階と、
    を含む動作を更に実行させ、
    前記グループ化する段階は、前記特定する段階において特定されたセットにより行う、
    請求項18に記載のコンピュータプログラム製品。
  20. 前記セットを複数生成する段階は、
    k文字のパウリ文字列を要素とし、要素数が2のセットを全て生成する段階である、
    請求項19に記載のコンピュータプログラム製品。
  21. 前記グループ化する段階は、
    前記複数のパウリ文字列のそれぞれをノードとして含むパウリグラフを生成する段階と、
    前記複数のパウリ文字列のうち少なくとも一部のノードに対応するパウリ文字列が、少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量であるかの判断に基づいて、前記パウリグラフにおける前記少なくとも一部のノードを統合して、統合パウリグラフを生成する段階と、
    を有する請求項18に記載のコンピュータプログラム製品。
  22. 前記パウリグラフを生成する段階は、
    前記複数のパウリ文字列に含まれる第1のパウリ文字列と第2のパウリ文字列が、少なくとも一つの演算子において、テンソル積基底で一緒に測定可能な観測可能量でない場合に、前記第1のパウリ文字列と前記第2のパウリ文字列とをエッジで接続することにより行う、
    請求項21に記載のコンピュータプログラム製品。
  23. 前記グループ化する段階は、
    前記統合パウリグラフに、カラーリングアルゴリズムを適用して、前記統合パウリグラフに含まれるノードをグループ分けする段階を更に有する、
    請求項21に記載のコンピュータプログラム製品。
  24. 前記統合パウリグラフを生成する段階は、
    前記少なくとも一部のパウリ文字列が、対応する位置にある少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量である場合に、前記一部のパウリ文字列に対応するノードを統合する段階を有する、
    請求項21に記載のコンピュータプログラム製品。
  25. 前記統合パウリグラフを生成する段階は、
    前記少なくとも一部のパウリ文字列が、対応する位置にある少なくとも一部の演算子において、エンタングルした測定により一緒に測定可能な観測可能量であり、かつ
    前記少なくとも一部のパウリ文字列が、残りの演算子において、テンソル積基底で一緒に測定可能な観測可能量である場合に、
    前記少なくとも一部のパウリ文字列に対応するノードを統合する段階を有する、
    請求項21に記載のコンピュータプログラム製品。
JP2019010284A 2019-01-24 2019-01-24 エンタングルした測定を用いたパウリ文字列のグループ化 Active JP7125825B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019010284A JP7125825B2 (ja) 2019-01-24 2019-01-24 エンタングルした測定を用いたパウリ文字列のグループ化
US16/739,822 US11010514B2 (en) 2019-01-24 2020-01-10 Grouping of Pauli strings using entangled measurements
US17/225,691 US11954418B2 (en) 2019-01-24 2021-04-08 Grouping of Pauli strings using entangled measurements

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019010284A JP7125825B2 (ja) 2019-01-24 2019-01-24 エンタングルした測定を用いたパウリ文字列のグループ化

Publications (2)

Publication Number Publication Date
JP2020144400A JP2020144400A (ja) 2020-09-10
JP7125825B2 true JP7125825B2 (ja) 2022-08-25

Family

ID=71731452

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019010284A Active JP7125825B2 (ja) 2019-01-24 2019-01-24 エンタングルした測定を用いたパウリ文字列のグループ化

Country Status (2)

Country Link
US (2) US11010514B2 (ja)
JP (1) JP7125825B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11301770B2 (en) * 2018-05-31 2022-04-12 Oti Lumionics Inc. Methods and systems for solving a problem on a quantum computer
CN117529735A (zh) 2021-06-21 2024-02-06 富士通株式会社 多个量子比特可观察量的划分方法、多个量子比特可观察量的划分程序和信息处理装置
JP2023028166A (ja) * 2021-08-18 2023-03-03 株式会社QunaSys 量子情報処理方法、古典コンピュータ、ハイブリッドシステム、及び量子情報処理プログラム
EP4390778A4 (en) 2021-08-19 2024-09-25 Fujitsu Ltd INFORMATION PROCESSING DEVICE, QUANTUM CIRCUIT GENERATION METHOD, AND QUANTUM CIRCUIT GENERATION PROGRAM
US20230101547A1 (en) * 2021-09-30 2023-03-30 Robert Bosch Gmbh Method of preventing capture of an ai module and an ai system thereof
WO2023148806A1 (ja) 2022-02-01 2023-08-10 富士通株式会社 情報処理プログラム、情報処理方法、および情報処理装置
JPWO2023209828A1 (ja) * 2022-04-26 2023-11-02
CN115688930B (zh) * 2022-10-13 2024-09-24 南通大学 一种模拟量子电路解决图染色问题的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170351967A1 (en) 2016-06-02 2017-12-07 Google Inc. Training quantum evolutions using sublogical controls
WO2018212789A1 (en) 2017-05-15 2018-11-22 Google Llc Operator averaging within quantum computing systems

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101233860B1 (ko) * 2012-02-08 2013-02-15 고려대학교 산학협력단 양자 부호 설계 장치 및 방법
KR101768066B1 (ko) * 2016-06-13 2017-08-14 고려대학교 산학협력단 그래프 상태를 이용한 양자 오류 정정 부호의 생성 방법 및 장치
US10296352B2 (en) * 2016-06-15 2019-05-21 University Of Southern California Nested quantum annealing correction
US10074056B2 (en) * 2016-08-01 2018-09-11 Northrop Grumman Systems Corporation Quantum operations with passive noise suppression
AU2016427834C1 (en) 2016-10-24 2020-10-29 Google Llc Simulating materials using quantum computation
US11580000B2 (en) * 2017-07-23 2023-02-14 Keysight Technologies Canada Inc. Systems and methods for local randomized benchmarking
GB201801517D0 (en) * 2018-01-30 2018-03-14 River Lane Res Ltd A method of determining a state energy
GB201807973D0 (en) * 2018-05-16 2018-07-04 River Lane Res Ltd Estimating an energy level of a physical system
WO2020037253A1 (en) * 2018-08-17 2020-02-20 Zapata Computing, Inc. Quantum computer with improved quantum optimization by exploiting marginal data
CN112789629A (zh) * 2018-10-02 2021-05-11 札帕塔计算股份有限公司 用于对线性系统求解的混合量子经典计算机
US11636370B2 (en) * 2018-10-12 2023-04-25 Zapata Computing, Inc. Quantum computer with improved continuous quantum generator
WO2020106955A1 (en) * 2018-11-21 2020-05-28 Zapata Computing, Inc. Hybrid quantum-classical computer for packing bits into qubits for quantum optimization algorithms

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170351967A1 (en) 2016-06-02 2017-12-07 Google Inc. Training quantum evolutions using sublogical controls
WO2018212789A1 (en) 2017-05-15 2018-11-22 Google Llc Operator averaging within quantum computing systems

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Abhinav Kandala, et al.,Hardware-efficient Variational Quantum Eigensolver for Small Molecules and Quantum Magnets,arXiv [online],2017年10月13日,https://arxiv.org/pdf/1704.05018.pdf,[2022年7月26日検索]

Also Published As

Publication number Publication date
US20200242290A1 (en) 2020-07-30
US11954418B2 (en) 2024-04-09
US11010514B2 (en) 2021-05-18
US20210224447A1 (en) 2021-07-22
JP2020144400A (ja) 2020-09-10

Similar Documents

Publication Publication Date Title
JP7125825B2 (ja) エンタングルした測定を用いたパウリ文字列のグループ化
JP2022003576A (ja) 制御パルス生成方法、装置、システム、電子デバイス、記憶媒体及びプログラム
US11636175B2 (en) Selection of Pauli strings for Variational Quantum Eigensolver
US20230196202A1 (en) System and method for automatic building of learning machines using learning machines
CN113168575A (zh) 微型机器学习
CN114207635A (zh) 使用元建模对机器学习和深度学习模型进行快速准确的超参数优化
WO2023130918A1 (zh) 用于管理量子系统的状态的方法、设备、装置和介质
JP7562508B2 (ja) 情報処理装置、情報処理システム、情報処理方法、記憶媒体およびプログラム
CN115965061A (zh) 通过实时代理评估反馈增强的深度神经网络模型设计
US12033090B2 (en) Information processing device, PUBO solver, information processing method and non-transitory storage medium
US20200342343A1 (en) Grouping of pauli observables using bell measurements
CN114418103B (zh) 基态能量的确定方法、装置、设备及存储介质
US20170132531A1 (en) Analysis device, analysis method, and program
JP7499540B2 (ja) 開放量子系のための量子情報処理方法、古典コンピュータ、量子コンピュータ、量子情報処理プログラム、及びデータ構造
CN113614752A (zh) 量子算法的验证和估计运行时间
US20240054379A1 (en) Parallel Data Processing using Hybrid Computing System for Machine Learning Applications
CN115759269B (zh) 特征信息的确定方法、装置、设备以及存储介质
WO2023138202A1 (zh) 量子线路模拟方法、装置、设备、存储介质及程序产品
JP2022068327A (ja) ノードグループ化方法、装置及び電子機器
Liu et al. Rsc: accelerate graph neural networks training via randomized sparse computations
KR20230132369A (ko) 양자 회로에서의 리소스 감소
WO2023117795A1 (en) Hamiltonian decomposition using mid-circuit operations
CN115829040A (zh) 处理参数的确定方法、装置、设备以及存储介质
US20230409667A1 (en) Selection of pauli strings for variational quantum eigensolver
KR102641629B1 (ko) 설명 가능한 인공지능 기반의 트랜스포머를 활용한 데이터 처리 방법 및 시스템

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20190128

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210623

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20220512

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220802

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20220803

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220810

R150 Certificate of patent or registration of utility model

Ref document number: 7125825

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150