ショアのアルゴリズムとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > ショアのアルゴリズムの意味・解説 

ショアのアルゴリズム

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/11/02 23:30 UTC 版)

ショアのアルゴリズム: Shor's algorithm)は、1994年にアメリカの数学者ピーター・ショアによって考案された[1][2][3][4]、素因数分解問題を高速に(多項式時間で)解くことができるアルゴリズムのことである。いまのところ古典コンピュータでは非現実的な時間(分解したい整数の桁数についての準指数時間)で解くアルゴリズムしか知られていない[5]。一方で、実用的に使用されるような素因数分解が解けるようになるには、将来的にさらなる量子ビットが必要である[6]。ショアは本件で、ネヴァンリンナ賞ゲーデル賞を受賞した。また、2001年12月にIBMアルマデン研究所にて7量子ビットの量子コンピュータで15 (= 3×5) の素因数分解に成功した[7]

実現可能性とその影響

現在の量子コンピューターには、量子ノイズや、量子力学的干渉の破壊といった課題が存在する。しかし、それらの課題を克服し、ある程度の量子ビット数の量子コンピューターを、操作することができるようになったとすると、RSA暗号ディフィー・ヘルマン鍵共有楕円曲線ディフィー・ヘルマン鍵共有などの公開鍵暗号の解読ができてしまうと考えられている[8]。なぜなら、例えばRSA暗号は、大きな素数同士の合成数を機械で素因数分解するのは、膨大な時間がかかり困難であるという推定のもとで基づいているからである。

アルゴリズムを少し変更することで離散対数問題(DLP, ElGamal暗号楕円曲線暗号の安全性の根拠)も多項式時間で解くことができる。このアルゴリズムの基本的なアイデアを拡張したものが、可換隠れ部分群問題についての量子アルゴリズムである。現在は、これをさらに非可換隠れ部分群問題に拡張する研究が進展している。

アルゴリズム

ショアのアルゴリズムは、量子コンピュータが離散フーリエ変換を高速に実行できることを用いている。また、アルゴリズム全体は確率的 (BQP) であるので、正しい答えが得られるまで、何度も試行をする必要がある。

  1. 素因数分解したいNと互いに素な整数xを用意する。
  2. Nの二進数表記の桁数をLとし、位相推定の精度tは2L+1とする。
  3. 第一レジスタにアダマールゲート操作を施し、第二レジスタに制御ユニタリゲートUn,xを作用させる。ここで、Un,xとは以下の計算過程集合である。Un,x|α⟩=|αx mod N⟩と変換するようなxとNを引数とするユニタリ演算子Un,xを考え、その固有値を取り出す。(量子位相推定)
  4. 適切な位数rが見つかったら、p=gcd(xr/2+1,N),q=gcd(xr/2-1,N)がNの素因数である[9]
量子位相測定のサブルーチン

位数を求める具体例

例えば、N = 15, a = 7 とする。

70 = 1 (mod 15)
71 = 7 (mod 15)
72 = 4 (mod 15)
73 = 13 (mod 15)
74 = 1 (mod 15)
75 = 7 (mod 15)
76 = 4 (mod 15)
77 = 13 (mod 15)
78 = 1 (mod 15)
79 = 7 (mod 15)

1,7,4,13,1,7,4,13,1,7,…という周期 4 の数列が生成される。

よって、周期 r = min{x > 0|7x = 1 (mod 15)} = 4

出典

  1. ^ 竹内薫『量子コンピューターが本当にすごい: Google、NASAで実用が始まった“夢の計算機”』PHP研究所、2015年6月、241頁。ISBN 978-4-569-82498-7https://www.google.co.jp/books/edition/%E9%87%8F%E5%AD%90%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E3%83%BC%E3%81%8C%E6%9C%AC%E5%BD%93%E3%81%AB/dq7ZpOuPkB8C 
  2. ^ Shor, P.W. (1994). “Algorithms for quantum computation: Discrete logarithms and factoring”. Proceedings 35th Annual Symposium on Foundations of Computer Science. pp. 124–134. doi:10.1109/sfcs.1994.365700. ISBN 978-0-8186-6580-6 
  3. ^ Shor, P.W. (1994). Algorithms for quantum computation: discrete logarithms and factoring (Report). Proceedings 35th Annual Symposium on Foundations of Computer Science. IEEE. pp. 124–134. doi:10.1109/SFCS.1994.365700. ISBN 0-8186-6580-7 (ショアのアルゴリズムの論文)]
  4. ^ Shor, Peter W. (1997-10). “Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer”. SIAM Journal on Computing (Society for Industrial & Applied Mathematics (SIAM)) 26 (5): 1484-1509. doi:10.1137/s0097539795293172. ISSN 1095-7111. https://arxiv.org/abs/quant-ph/9508027. 
  5. ^ 長橋賢吾『図解入門よくわかる最新量子コンピュータの基本と仕組み』秀和システム、2018年9月、82頁。 ISBN 978-4-7980-5455-1https://www.google.co.jp/books/edition/%E5%9B%B3%E8%A7%A3%E5%85%A5%E9%96%80%E3%82%88%E3%81%8F%E3%82%8F%E3%81%8B%E3%82%8B%E6%9C%80%E6%96%B0%E9%87%8F%E5%AD%90/Bpx2DwAAQBAJ 
  6. ^ Gidney, Craig; Ekerå, Martin (2021). “How to factor 2048 bit RSA integers in 8 hours using 20 million noisy qubits”. Quantum 5: 433. arXiv:1905.09749. Bibcode2021Quant...5..433G. doi:10.22331/q-2021-04-15-433. 
  7. ^ Experimental realization of Shor's quantum factoring algorithm using nuclear magnetic resonance”. 2016年6月17日閲覧。
  8. ^ Roetteler, Martin; Naehrig, Michael; Svore, Krysta M.; Lauter, Kristin E. (2017). "Quantum resource estimates for computing elliptic curve discrete logarithms". In Takagi, Tsuyoshi; Peyrin, Thomas (eds.). Advances in Cryptology – ASIACRYPT 2017 – 23rd International Conference on the Theory and Applications of Cryptology and Information Security, Hong Kong, China, December 3–7, 2017, Proceedings, Part II. Lecture Notes in Computer Science. Vol. 10625. Springer. pp. 241–270. arXiv:1706.06752. doi:10.1007/978-3-319-70697-9_9. ISBN 978-3-319-70696-2
  9. ^ 嶋田義皓『量子コンピューティング 基本アルゴリズムから量子機械学習まで』オーム社、2020年11月、80頁。 ISBN 978-4-274-22621-2 

参考文献

関連項目


ショアのアルゴリズム

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/05/19 00:40 UTC 版)

量子コンピュータ」の記事における「ショアのアルゴリズム」の解説

ショアのアルゴリズム(英語版)(英: Shor's factorizationとも)とは、素因数分解問題高速に(多項式時間で)解くことができるアルゴリズムのことである。古典コンピュータでは非現実的な時間(準指数時間)で解くアルゴリズムしか知られていない1994年ピーター・ショアによって発見された。ショア本件で、ネヴァンリンナ賞ゲーデル賞受賞した2001年12月IBMアルマデン研究所にて7量子ビット量子コンピュータ15 (= 3×5) の素因数分解成功したNature, 12月20日発行号)。 少し改造することで離散対数問題DLP, ElGamal暗号楕円曲線暗号安全性根拠)も多項式時間で解くことができる。このアルゴリズム基本的なアイデア拡張したものが、可換隠れ部分群問題についての量子アルゴリズムである。現在は、これをさらに非可換隠れ部分群問題拡張する研究進展している。 ショアのアルゴリズムは、量子コンピュータ離散フーリエ変換高速実行できることによるまた、アルゴリズム全体確率的 (BQP) であり、正し答え得られるまで、何度も試行する。 N を素因数分解するにあたり、a は N に対して素な数とし、a の mod N に関する位数min{x > 0|ax = 1 (mod N)} を求める。つまり、ax周期 r を求める。位数高速求められれば、因数分解高速行える。 例えば、N = 15, a = 7 とする。 70 = 1 (mod 15) 71 = 7 (mod 15) 72 = 4 (mod 15) 73 = 13 (mod 15) 74 = 1 (mod 15) 75 = 7 (mod 15) 76 = 4 (mod 15) 77 = 13 (mod 15) 78 = 1 (mod 15) 79 = 7 (mod 15) ⋮ 1,7,4,13,1,7,4,13,1,7,…という周期 4 の数列生成される。 よって、周期 r = min{x > 0|7x = 1 (mod 15)} = 4 手順の概略は以下の2つ全ての x に対して均等な確率となるように初期化する。そして、それを ax mod N のみ確率持ち、それらは均等になるように変換する。この計算量子コンピュータ的であるものの、基本的な考え古典コンピュータ変わらない。そのために、2進数足し算引き算や、ビットによる条件分岐などを用意するax mod N は周期 r を持つ。この周期求め位数である。従って、1で得られ結果離散フーリエ変換する。すると、周波数 1/r のところの確率大きくなるので、観測すると、高い確率で r が得られる失敗した場合は、成功するまで繰り返す

※この「ショアのアルゴリズム」の解説は、「量子コンピュータ」の解説の一部です。
「ショアのアルゴリズム」を含む「量子コンピュータ」の記事については、「量子コンピュータ」の概要を参照ください。

ウィキペディア小見出し辞書の「ショアのアルゴリズム」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「ショアのアルゴリズム」の関連用語

ショアのアルゴリズムのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



ショアのアルゴリズムのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのショアのアルゴリズム (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの量子コンピュータ (改訂履歴)、量子超越性 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS