JP5204698B2 - 量子演算方法、量子演算装置、量子回路 - Google Patents
量子演算方法、量子演算装置、量子回路 Download PDFInfo
- Publication number
- JP5204698B2 JP5204698B2 JP2009067704A JP2009067704A JP5204698B2 JP 5204698 B2 JP5204698 B2 JP 5204698B2 JP 2009067704 A JP2009067704 A JP 2009067704A JP 2009067704 A JP2009067704 A JP 2009067704A JP 5204698 B2 JP5204698 B2 JP 5204698B2
- Authority
- JP
- Japan
- Prior art keywords
- qubit
- quantum
- control
- target
- qubits
- 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
Links
Images
Description
まず、図5および図13を参照して、加算のための量子回路100を説明する。以下、加算のための量子回路100を量子加算回路100と呼称する。
第1量子演算部は、これらの制御NOT演算を実行する(ステップS1)。これらの制御NOT演算は並列実行可能であり、計算ステップ数は1である。
ステージ1を経た時点での出力状態は式(7)で表される。
第2量子演算部は、これらの制御NOT演算を実行する(ステップS2)。これらの制御NOT演算はp=n−1,・・・,1の順番で実行されるため、計算ステップ数はn−1である。
ステージ2を経た時点での出力状態は式(8)で表される。
第3量子演算部は、これらのToffoli演算を実行する(ステップS3)。これらのToffoli演算はp=0,・・・,n−1の順番で実行されるため、計算ステップ数はnである。
ステージ3を経た時点での出力状態は式(9)で表される。
第4量子演算部は、これらの制御NOT演算とToffoli演算を実行する(ステップS4)。これらの制御NOT演算とToffoli演算はp=n−1,・・・,1の順番で実行されるため、計算ステップ数はそれぞれn−1であり計2n−2である。
ステージ4を経た時点での出力状態は式(10)で表される。
第5量子演算部は、これらの制御NOT演算を実行する(ステップS5)。これらの制御NOT演算はp=1,・・・,n−2の順番で実行されるため、計算ステップ数はそれぞれn−2である。
ステージ5を経た時点での出力状態は式(11)で表される。
第6量子演算部は、これらの制御NOT演算を実行する(ステップS6)。これらの制御NOT演算は並列実行可能であり、計算ステップ数は1である。
ステージ6を経た時点での出力状態は式(12)で表され、この出力状態が量子加算回路100の出力状態である。
次に、図6および図14を参照して、減算のための量子回路200を説明する。以下、減算のための量子回路200を量子減算回路200と呼称する。
第0量子演算部は、これらのNOT演算を実行する(ステップS0)。これらのNOT演算は並列実行可能であり、計算ステップ数は1である。
ステージ0を経た時点での出力状態は式(19)で表される。
第7量子演算部は、これらのNOT演算を実行する(ステップS7)。これらのNOT演算は並列実行可能であり、計算ステップ数は1である。
ステージ7を経た時点での出力状態は式(21)で表され、この出力状態が量子減算回路200の出力状態である。
次に、図7および図15を参照して、比較のための量子回路300を説明する。以下、比較のための量子回路300を量子比較回路300と呼称する。
第4a量子演算部は、これらのToffoli演算を実行する(ステップS4a)。これらのToffoli演算はp=n−1,・・・,1の順番で実行されるため、計算ステップ数はn−1である。
ステージ4aを経た時点での出力状態は式(23)で表される。
第6a量子演算部は、これらの制御NOT演算を実行する(ステップS6a)。これらの制御NOT演算は並列実行可能であり、計算ステップ数は1である。
ステージ6aを経た時点での出力状態は式(25)で表される。
第7a量子演算部は、これらのNOT演算を実行する(ステップS7a)。これらのNOT演算は並列実行可能であり、計算ステップ数は1である。
ステージ7aを経た時点での出力状態は式(26)で表され、この出力状態が量子比較回路300の出力状態である。
量子演算において、キュービットの状態が物理的な状態であるところ、隣り合うキュービットよりも離れたキュービットに基づく作用を受けるとすると、一般的に演算誤りのリスクが高まる。そこで、隣り合うキュービット間の量子演算である近傍2量子ビット演算を用いる量子回路が好ましい。
次に、本発明の量子回路に則って量子演算を行う量子演算装置について説明する。本発明の量子演算装置は、本発明の量子回路から明らかなように、実施形態に応じて、第0量子演算部、第1量子演算部、第2量子演算部、第3量子演算部、第4量子演算部、第5量子演算部、第6量子演算部、第7量子演算部、第4a量子演算部、第6a量子演算部、第7a量子演算部のいずれかを含む。さらに、各量子演算部は、実施形態に応じた基本量子演算部(NOT演算部、制御NOT演算部、Toffoli演算部)を含む。つまり、本発明の量子回路に示した量子ゲートが、量子演算装置の基本量子演算部に相当する。なお、全ての演算は単一量子ビットに対する1量子ビット演算と制御NOT演算に分解できる(上記非特許文献3参照)。
イオントラップ量子コンピュータでは、例えば、イオンの基底状態と励起状態を利用して量子ビットを実現する。また、核スピンを量子ビットとして用いる場合には、例えば、「T. D. Ladd, et al., "All-Silicon quantum computer," Phys. Rev. Lett., vol. 89, no. 1, 017901-1‐017901-4, July 1, 2002.」に記載されているようにSi(111)基板等に各量子ビットを生成する。なお、量子ビットの初期量子状態は、例えば、他の演算の量子回路による操作によって得られたものを用いてもよいし、各量子ビットが生成された基板をmK(ミリケルビン)オーダー以下に冷却してスピンの向きを揃えた後、所定の電磁波パルスを印加して生成してもよい。また、量子ビットとして光子の偏光を用いる場合には、例えば、パラメトリックダウンコンバージョン(PDC:parametric down conversion)(例えば、「P. G. Kwiat, K. Mattle, H. Weinfurter, A. Zeilinger, A. V. Sergienko, and Y. Shih, “New high-intensity source of polarization-entangled photon pairs,” Phys. Rev. Lett. ,75:4337-4341, 1995.」「P. G. Kwiat, E. Waks, A. G. White, I. Appelbaum, and P. H. Eberhard, “Ultrabright source of polarization-entangled photons,” Phys. Rev. A, 60:R773-R776, 1999.」等参照。)によって生成された複数個の単一光子を用いる。この場合、各量子ビットの初期量子状態は、例えば、他の演算の量子回路による操作によって得られたものを用いる。また、パラメトリックダウンコンバージョン等によって生成された単一光子に、ビームスプリッタや偏光回転素子等によって実現されるウォルシューアダマール変換、CNOT、回転等の操作を行い、上述の初期量子状態を生成することとしてもよい。
その他、上記の文献に記載された方法で量子ビットを用意することとしてもよい。
イオントラップ量子コンピュータでは、例えば、イオンを直線上に並べ、各イオンに狙いを定めたレーザービーム照射によってCNOT演算を実現する。また、量子ビットとして光子の偏光を用いる場合には、例えば、偏光ビームスプリッタ等を用い、「T.B. Pittman, M.J. Fitch, B.C. Jacobs, J.D. Franson: “Experimental Controlled-NOT Logic Gate for Single Photons in the Coincidence Basis,” quant-ph/0303095, http://arxiv.org/abs/quant-ph/0303095」記載のPittman et al. 方式によってCNOT演算を実現する。また、核スピンを量子ビットとして用いる場合には、例えば、所定の電磁波パルスを量子ビットに印加することによってCNOT演算を実現できる。
その他、上記の文献に記載された方法でCNOT演算を実現してもよい。
イオントラップ量子コンピュータでは、例えば、イオンを直線上に並べ、各イオンに狙いを定めたレーザービーム照射によって量子ビット単体の操作を実現する。核スピンを量子ビットとして用いる場合には、電磁波パルスやレーザービーム照射によって各処理を実現する。また、量子ビットとして光子の偏光を用いる場合には、例えば、偏光回転素子等によって実現する。
換言すれば、この古典コンピュータは、図13に示したステップS1−ステップS6の手順を決定して出力するものといえる。
この場合、例えば図5の例でステージ1からステージ6の各量子回路における量子演算を行う手順をそれぞれ決定するための各プログラム、量子回路の入力側から出力側に向かって順に手順を並べるためのプログラムを記憶装置に記憶しておき、必要に応じて演算処理装置がプログラムを読み込んで解釈実行することで、ステージ1からステージ6の各量子回路における量子演算を行う手順をそれぞれ決定する各機能、量子回路の入力側から出力側に向かって順に手順を並べる機能を実現する。また各プログラムは、コンピュータ読み取り可能な記録媒体(例えばCD−R、DVD−RAM、MO)に記録することもできる。
Claims (7)
- 2つの2進数a=an-1…a0〔ai∈{0,1},i∈{0,…,n−1}〕及びb=bn-1…b0〔bi∈{0,1},i∈{0,…,n−1}〕と、0または1のz〔z∈{0,1}〕とに対し、a+b=sn…s0〔sj∈{0,1},j∈{0,…,n}〕と、z(+XOR)sn〔(+XOR)は2を法とする加算を表す。〕とを算出する量子演算装置であって、
nを1以上の整数とし、n個のキュービットBi(i∈{0,…,n−1})と、n+1個のキュービットAj(j∈{0,…,n})を演算対象とし、キュービットBiの初期状態を|bi〉とし(i∈{0,…,n−1})、キュービットAiの初期状態を|ai〉とし(i∈{0,…,n−1})、キュービットAnの初期状態を|z〉として、
nが2以上の整数である場合には、p=1,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行う量子演算部と、
nが2以上の整数である場合には、p=n−1,・・・,1について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対する制御NOT演算を行う量子演算部と、
p=0,・・・,n−1について、順に、キュービットBpおよびキュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットBpとキュービットApとキュービットAp+1に対するToffoli演算を行う量子演算部と、
nが2以上の整数である場合には、p=n−1,・・・,1について、順に、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行い、さらに、キュービットBp-1およびキュービットAp-1を制御キュービットとし、キュービットApを標的キュービットとして、キュービットBp-1とキュービットAp-1とキュービットApに対するToffoli演算を行う量子演算部と、
nが3以上の整数である場合には、p=1,・・・,n−2について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対する制御NOT演算を行う量子演算部と、
p=0,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行う量子演算部と
を含む量子演算装置。 - 2つの2進数a=an-1…a0〔ai∈{0,1},i∈{0,…,n−1}〕及びb=bn-1…b0〔bi∈{0,1},i∈{0,…,n−1}〕と、0または1のz〔z∈{0,1}〕とに対し、a−b=sn-1…s0〔si∈{0,1},i∈{0,…,n−1}〕とその符号sn〔sn∈{0,1}〕とを算出する量子演算装置であって、
nを1以上の整数とし、n個のキュービットBi(i∈{0,…,n−1})と、n+1個のキュービットAj(j∈{0,…,n})を演算対象とし、キュービットBiの初期状態を|bi〉とし(i∈{0,…,n−1})、キュービットAiの初期状態を|ai〉とし(i∈{0,…,n−1})、キュービットAnの初期状態を|z〉として、
p=0,・・・,n−1について、キュービットApに対するNOT演算を行う量子演算部と、
nが2以上の整数である場合には、p=1,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行う量子演算部と、
nが2以上の整数である場合には、p=n−1,・・・,1について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対する制御NOT演算を行う量子演算部と、
p=0,・・・,n−1について、順に、キュービットBpおよびキュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットBpとキュービットApとキュービットAp+1に対するToffoli演算を行う量子演算部と、
nが2以上の整数である場合には、p=n−1,・・・,1について、順に、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行い、さらに、キュービットBp-1およびキュービットAp-1を制御キュービットとし、キュービットApを標的キュービットとして、キュービットBp-1とキュービットAp-1とキュービットApに対するToffoli演算を行う量子演算部と、
nが3以上の整数である場合には、p=1,・・・,n−2について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対する制御NOT演算を行う量子演算部と、
p=0,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行う量子演算部と、
p=0,・・・,nとr=0,・・・,n−1について、キュービットBrに対するNOT演算とキュービットApに対するNOT演算を行う量子演算部と
を含む量子演算装置。 - 2つの2進数a=an-1…a0〔ai∈{0,1},i∈{0,…,n−1}〕及びb=bn-1…b0〔bi∈{0,1},i∈{0,…,n−1}〕と、0または1のz〔z∈{0,1}〕とに対し、a−bの符号yを算出する量子演算装置であって、
nを1以上の整数とし、n個のキュービットBi(i∈{0,…,n−1})と、n+1個のキュービットAj(j∈{0,…,n})を演算対象とし、キュービットBiの初期状態を|bi〉とし(i∈{0,…,n−1})、キュービットAiの初期状態を|ai〉とし(i∈{0,…,n−1})、キュービットAnの初期状態を|z〉として、
p=0,・・・,n−1について、キュービットApに対するNOT演算を行う量子演算部と、
nが2以上の整数である場合には、p=1,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行う量子演算部と、
nが2以上の整数である場合には、p=n−1,・・・,1について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対する制御NOT演算を行う量子演算部と、
p=0,・・・,n−1について、順に、キュービットBpおよびキュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットBpとキュービットApとキュービットAp+1に対するToffoli演算を行う量子演算部と、
nが2以上の整数である場合には、p=n−1,・・・,1について、順に、キュービットBp-1およびキュービットAp-1を制御キュービットとし、キュービットApを標的キュービットとして、キュービットBp-1とキュービットAp-1とキュービットApに対するToffoli演算を行う量子演算部と、
nが3以上の整数である場合には、p=1,・・・,n−2について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対する制御NOT演算を行う量子演算部と、
p=1,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行う量子演算部と、
p=0,・・・,nについて、キュービットApに対するNOT演算を行う量子演算部と
を含む量子演算装置。 - 2つの2進数a=an-1…a0〔ai∈{0,1},i∈{0,…,n−1}〕及びb=bn-1…b0〔bi∈{0,1},i∈{0,…,n−1}〕と、0または1のz〔z∈{0,1}〕とに対し、a+b=sn…s0〔sj∈{0,1},j∈{0,…,n}〕と、z(+XOR)sn〔(+XOR)は2を法とする加算を表す。〕とを算出する量子演算方法であって、
nが1以上の整数とし、n個のキュービットBi(i∈{0,…,n−1})と、n+1個のキュービットAj(j∈{0,…,n})を演算対象とし、キュービットBiの初期状態を|bi〉とし(i∈{0,…,n−1})、キュービットAiの初期状態を|ai〉とし(i∈{0,…,n−1})、キュービットAnの初期状態を|z〉として、
nが2以上の整数である場合には、p=1,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行う第1量子演算ステップと、
nが2以上の整数である場合には、第1量子演算ステップに続いて、p=n−1,・・・,1について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対する制御NOT演算を行う第2量子演算ステップと、
第2量子演算ステップに続いて、p=0,・・・,n−1について、順に、キュービットBpおよびキュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットBpとキュービットApとキュービットAp+1に対するToffoli演算を行う第3量子演算ステップと、
nが2以上の整数である場合には、第3量子演算ステップに続いて、p=n−1,・・・,1について、順に、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行い、さらに、キュービットBp-1およびキュービットAp-1を制御キュービットとし、キュービットApを標的キュービットとして、キュービットBp-1とキュービットAp-1とキュービットApに対するToffoli演算を行う第4量子演算ステップと、
nが3以上の整数である場合には、第4量子演算ステップに続いて、p=1,・・・,n−2について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対する制御NOT演算を行う第5量子演算ステップと、
第5量子演算ステップに続いて、p=0,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行う第6量子演算ステップと
を含む量子演算方法。 - 2つの2進数a=an-1…a0〔ai∈{0,1},i∈{0,…,n−1}〕及びb=bn-1…b0〔bi∈{0,1},i∈{0,…,n−1}〕と、0または1のz〔z∈{0,1}〕とに対し、a−b=sn-1…s0〔si∈{0,1},i∈{0,…,n−1}〕とその符号sn〔sn∈{0,1}〕とを算出する量子演算方法であって、
nを1以上の整数とし、n個のキュービットBi(i∈{0,…,n−1})と、n+1個のキュービットAj(j∈{0,…,n})を演算対象とし、キュービットBiの初期状態を|bi〉とし(i∈{0,…,n−1})、キュービットAiの初期状態を|ai〉とし(i∈{0,…,n−1})、キュービットAnの初期状態を|z〉として、
p=0,・・・,n−1について、キュービットApに対するNOT演算を行う第0量子演算ステップと、
nが2以上の整数である場合には、第0量子演算ステップに続いて、p=1,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行う第1量子演算ステップと、
nが2以上の整数である場合には、第1量子演算ステップに続いて、p=n−1,・・・,1について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対する制御NOT演算を行う第2量子演算ステップと、
第2量子演算ステップに続いて、p=0,・・・,n−1について、順に、キュービットBpおよびキュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットBpとキュービットApとキュービットAp+1に対するToffoli演算を行う第3量子演算ステップと、
nが2以上の整数である場合には、第3量子演算ステップに続いて、p=n−1,・・・,1について、順に、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行い、さらに、キュービットBp-1およびキュービットAp-1を制御キュービットとし、キュービットApを標的キュービットとして、キュービットBp-1とキュービットAp-1とキュービットApに対するToffoli演算を行う第4量子演算ステップと、
nが3以上の整数である場合には、第4量子演算ステップに続いて、p=1,・・・,n−2について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対する制御NOT演算を行う第5量子演算ステップと、
第5量子演算ステップに続いて、p=0,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行う第6量子演算ステップと、
第6量子演算ステップに続いて、p=0,・・・,nとr=0,・・・,n−1について、キュービットBrに対するNOT演算とキュービットApに対するNOT演算を行う第7量子演算ステップと
を含む量子演算方法。 - 2つの2進数a=an-1…a0〔ai∈{0,1},i∈{0,…,n−1}〕及びb=bn-1…b0〔bi∈{0,1},i∈{0,…,n−1}〕と、0または1のz〔z∈{0,1}〕とに対し、a−bの符号yを算出する量子演算方法であって、
nを1以上の整数とし、n個のキュービットBi(i∈{0,…,n−1})と、n+1個のキュービットAj(j∈{0,…,n})を演算対象とし、キュービットBiの初期状態を|bi〉とし(i∈{0,…,n−1})、キュービットAiの初期状態を|ai〉とし(i∈{0,…,n−1})、キュービットAnの初期状態を|z〉として、
p=0,・・・,n−1について、キュービットApに対するNOT演算を行う第0量子演算ステップと、
nが2以上の整数である場合には、第0量子演算ステップに続いて、p=1,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行う第1量子演算ステップと、
nが2以上の整数である場合には、第1量子演算ステップに続いて、p=n−1,・・・,1について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対する制御NOT演算を行う第2量子演算ステップと、
第2量子演算ステップに続いて、p=0,・・・,n−1について、順に、キュービットBpおよびキュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットBpとキュービットApとキュービットAp+1に対するToffoli演算を行う第3量子演算ステップと、
nが2以上の整数である場合には、第3量子演算ステップに続いて、p=n−1,・・・,1について、順に、キュービットBp-1およびキュービットAp-1を制御キュービットとし、キュービットApを標的キュービットとして、キュービットBp-1とキュービットAp-1とキュービットApに対するToffoli演算を行う第4量子演算ステップと、
nが3以上の整数である場合には、第4量子演算ステップに続いて、p=1,・・・,n−2について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対する制御NOT演算を行う第5量子演算ステップと、
第5量子演算ステップに続いて、p=1,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対する制御NOT演算を行う第6量子演算ステップと、
第6量子演算ステップに続いて、p=0,・・・,nについて、キュービットApに対するNOT演算を行う第7量子演算ステップと
を含む量子演算方法。 - 2つの2進数a=an-1…a0〔ai∈{0,1},i∈{0,…,n−1}〕及びb=bn-1…b0〔bi∈{0,1},i∈{0,…,n−1}〕と、0または1のz〔z∈{0,1}〕とに対し、a+b=sn…s0〔sj∈{0,1},j∈{0,…,n}〕と、z(+XOR)sn〔(+XOR)は2を法とする加算を表す。〕とを算出する量子回路であって、
nを1以上の整数とし、n個のキュービットBi(i∈{0,…,n−1})と、n+1個のキュービットAj(j∈{0,…,n})を演算対象とし、キュービットBiの初期状態を|bi〉とし(i∈{0,…,n−1})、キュービットAiの初期状態を|ai〉とし(i∈{0,…,n−1})、キュービットAnの初期状態を|z〉として、
nが2以上の整数である場合には、p=1,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対して制御NOTゲートを適用する量子回路と、
nが2以上の整数である場合には、p=n−1,・・・,1について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対して制御NOTゲートを適用する量子回路と、
p=0,・・・,n−1について、順に、キュービットBpおよびキュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットBpとキュービットApとキュービットAp+1に対してToffoliゲートを適用する量子回路と、
nが2以上の整数である場合には、p=n−1,・・・,1について、順に、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対して制御NOTゲートを適用し、さらに、キュービットBp-1およびキュービットAp-1を制御キュービットとし、キュービットApを標的キュービットとして、キュービットBp-1とキュービットAp-1とキュービットApに対してToffoliゲートを適用する量子回路と、
nが3以上の整数である場合には、p=1,・・・,n−2について、順に、キュービットApを制御キュービットとし、キュービットAp+1を標的キュービットとして、キュービットApとキュービットAp+1に対して制御NOTゲートを適用する量子回路と、
p=0,・・・,n−1について、キュービットApを制御キュービットとし、キュービットBpを標的キュービットとして、キュービットBpとキュービットApに対して制御NOTゲートを適用する量子回路と
から構成された量子回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009067704A JP5204698B2 (ja) | 2009-03-19 | 2009-03-19 | 量子演算方法、量子演算装置、量子回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009067704A JP5204698B2 (ja) | 2009-03-19 | 2009-03-19 | 量子演算方法、量子演算装置、量子回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010218513A JP2010218513A (ja) | 2010-09-30 |
JP5204698B2 true JP5204698B2 (ja) | 2013-06-05 |
Family
ID=42977234
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009067704A Active JP5204698B2 (ja) | 2009-03-19 | 2009-03-19 | 量子演算方法、量子演算装置、量子回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5204698B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10922457B2 (en) * | 2017-10-19 | 2021-02-16 | University Of Maryland | Automated optimization of large-scale quantum circuits with continuous parameters |
KR102100368B1 (ko) | 2018-05-17 | 2020-04-14 | 한국과학기술원 | 양자 데이터베이스를 위한 효과적 양자 메모리 구조 |
CN111580782B (zh) * | 2019-07-09 | 2022-07-15 | 沈阳工业大学 | 量子n位全加器 |
KR102204081B1 (ko) * | 2020-07-24 | 2021-01-15 | 한양대학교 에리카산학협력단 | 효율적인 양자 모듈러 곱셈기 및 양자 모듈러 곱셈 방법 |
US20230316121A1 (en) * | 2020-07-24 | 2023-10-05 | Industry-University Cooperation Foundation Hanyang University Erica Campus | Efficient quantum modular multiplier and quantum modular multiplication method |
CN115936127B (zh) * | 2021-09-30 | 2024-06-14 | 本源量子计算科技(合肥)股份有限公司 | 一种基于量子技术的数值比较方法、装置及量子计算机 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4829623B2 (ja) * | 2006-01-27 | 2011-12-07 | 日本電信電話株式会社 | 量子演算方法及び量子演算装置 |
JP4847914B2 (ja) * | 2007-04-16 | 2011-12-28 | 日本電信電話株式会社 | 量子加算演算方法及び量子加算演算装置 |
JP5129646B2 (ja) * | 2008-05-01 | 2013-01-30 | 日本電信電話株式会社 | 量子回路、量子演算装置及び量子演算方法 |
-
2009
- 2009-03-19 JP JP2009067704A patent/JP5204698B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2010218513A (ja) | 2010-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Qudits and high-dimensional quantum computing | |
JP4847914B2 (ja) | 量子加算演算方法及び量子加算演算装置 | |
JP5204698B2 (ja) | 量子演算方法、量子演算装置、量子回路 | |
Mohammadi et al. | Design and optimization of reversible bcd adder/subtractor circuit for quantum and nanotechnology based systems | |
JP4700413B2 (ja) | 量子演算装置及び量子回路を用いた量子演算方法 | |
JP5227942B2 (ja) | 量子誤り推定装置、量子誤り推定方法、そのプログラム、量子誤り訂正装置、量子誤り訂正方法 | |
Swathi et al. | Implementation of reversible logic gates with quantum gates | |
Lin et al. | Optimized quantum gate library for various physical machine descriptions | |
JP4332167B2 (ja) | 近似量子フーリエ変換を行う量子回路、近似量子フーリエ変換演算方法および装置 | |
Liu | Comparisons of Conventional Computing and Quantum Computing Approaches | |
JP5129646B2 (ja) | 量子回路、量子演算装置及び量子演算方法 | |
Haghparast et al. | Optimization approaches for designing quantum reversible arithmetic logic unit | |
JP6182123B2 (ja) | 量子演算方法 | |
Noorallahzadeh et al. | A new design of parity-preserving reversible multipliers based on multiple-control toffoli synthesis targeting emerging quantum circuits | |
Mummadi et al. | Fundamentals of quantum computation and basic quantum gates | |
JP5351862B2 (ja) | 量子演算方法、量子演算装置 | |
Shafaei et al. | Reversible logic synthesis of k-input, m-output lookup tables | |
US11868848B2 (en) | Systems and methods for controlled quantum information processing with a trans-radix basis component | |
JP4366348B2 (ja) | 量子計算方法及び量子計算装置 | |
JP5496921B2 (ja) | 量子演算方法、量子演算装置 | |
Chen et al. | Quantum-dot cellular automata as a potential technology for designing nano-scale computers: Exploring the state-of-the-art techniques and suggesting the opportunities for the future | |
Tutul et al. | Shallow Depth Factoring Based on Quantum Feasibility Labeling and Variational Quantum Search | |
JP4829623B2 (ja) | 量子演算方法及び量子演算装置 | |
Abdollahi et al. | Reversible logic synthesis by quantum rotation gates | |
Moghimi et al. | Toward Designing High-Speed Cost-Efficient Quantum Reversible Carry Select Adders |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101207 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20110715 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121030 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121119 |
|
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: 20130205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130215 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5204698 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160222 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |