Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
量子位相推定とショアのアルゴリズム
Search
seiya-sugo
May 24, 2019
Science
2
1.4k
量子位相推定とショアのアルゴリズム
量子位相推定 ショアのアルゴリズム
seiya-sugo
May 24, 2019
Tweet
Share
More Decks by seiya-sugo
See All by seiya-sugo
Review of Scalable Quantum Simulation of Molecular Energies
seiyasugo
2
93
第二量子化ハミルトニアンから量子回路への変換
seiyasugo
1
1.4k
Review of Simulated Quantum Computation of Molecular Energies
seiyasugo
0
190
Other Decks in Science
See All in Science
MCMCのR-hatは分散分析である
moricup
0
410
モンテカルロDCF法による事業価値の算出(モンテカルロ法とベイズモデリング) / Business Valuation Using Monte Carlo DCF Method (Monte Carlo Simulation and Bayesian Modeling)
ikuma_w
0
220
サイゼミ用因果推論
lw
1
7.4k
データから見る勝敗の法則 / The principle of victory discovered by science (open lecture in NSSU)
konakalab
1
100
Celebrate UTIG: Staff and Student Awards 2025
utig
0
110
CV_5_3dVision
hachama
0
140
Machine Learning for Materials (Challenge)
aronwalsh
0
320
データマイニング - グラフ構造の諸指標
trycycle
PRO
0
160
局所保存性・相似変換対称性を満たす機械学習モデルによる数値流体力学
yellowshippo
1
300
How To Buy, Verified Venmo Accounts in 2025 This year
usaallshop68
2
230
academist Prize 4期生 研究トーク延長戦!「美は世界を救う」っていうけど、どうやって?
jimpe_hitsuwari
0
150
オンプレミス環境にKubernetesを構築する
koukimiura
0
310
Featured
See All Featured
Faster Mobile Websites
deanohume
308
31k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Docker and Python
trallard
45
3.5k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
KATA
mclloyd
32
14k
The Language of Interfaces
destraynor
158
25k
Documentation Writing (for coders)
carmenintech
73
5k
Building Adaptive Systems
keathley
43
2.7k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
450
YesSQL, Process and Tooling at Scale
rocio
173
14k
Facilitating Awesome Meetings
lara
54
6.5k
Transcript
量子位相推定と ショアのアルゴリズム 株式会社Quemix 須郷聖也
はじめに謝辞 この資料の作成にあたり、 blueqat株式会社 湊 雄一郎さん 理化学研究所 中田 真秀さん のご協力をいただきました。ありがとうございました。
まずショアのアルゴリズムについて 素因数分解を高速に解くためのアルゴリズム • 素因数分解を高速に解く古典アルゴリズムは知られていない • RSA暗号はここに依存している • 1994年にPeter Shorが高速に解く量子計算アルゴリズムを発見 •
位数推定問題に帰着させることがポイント 全体像を把握するにはいくつかの知識が必要 • 合同式と位数 • 量子フーリエ変換 • 量子位相推定(位数推定問題はこの一種) • 連分数展開
まずショアのアルゴリズムについて 素因数分解を高速に解くためのアルゴリズム • 素因数分解を高速に解く古典アルゴリズムは知られていない • RSA暗号はここに依存している • 1994年にPeter Shorが高速に解く量子計算アルゴリズムを発見 •
位数推定問題に帰着させることがポイント 全体像を把握するにはいくつかの知識が必要 • 合同式と位数 • 量子フーリエ変換 • 量子位相推定(位数推定問題はこの一種) • 連分数展開 量子アルゴリズムである この二つから見ましょう
量子位相推定と量子フーリエ変換
量子位相推定 ユニタリー演算子をUとすると、その固有値は絶対値が1であり、 以下のように書ける。 このθを量子計算で求めるのが量子位相推定である 注: ユニタリー演算子Uの固有状態|u>は既知で、これを作る必要がある。 (ショアではここに工夫が必要)
量子位相推定の量子回路 H H H H
量子位相推定の量子回路 H H H H
量子フーリエ変換 量子位相推定のアルゴリズムの中には量子フーリエ変換が登場する 簡単に量子フーリエ変換について結果を確認しておく QFT 量子位相推定では途中でこの式の右の形が登場するので 逆量子フーリエ変換で左の形に変形する
量子フーリエ変換の量子回路 H H H H S W A P
2進数表記と10進数表記について 量子計算を表記する際に、2進数で表記している場合と10進数で表記し ている場合があり、たまに混乱するので、注意しておく。 n qubit全てにアダマール変換をする時の例は以下の通り。
量子位相推定の計算詳細 n qubitの測定ビット(0にセット)とユニタリー行列U の固有状態ビット(|u>)を用意し、 測定ビットをアダマール変換 (次スライドへ続く) k番目のqubitをcontrolビットとして固有状態ビットにUkを作用 (2進法表記から始める)
量子位相推定の計算詳細 n qubitの測定ビット(0にセット)とユニタリー行列U の固有状態ビット(|u>)を用意し、 測定ビットをアダマール変換 (次スライドへ続く) k番目のqubitをcontrolビットとして固有状態ビットにUkを作用 (2進法表記から始める) =k(10進数)
量子位相推定の計算詳細(続き) 測定ビットから小数点以下n桁の精度でΦが求まる。 (←10進数に変換)
ショアのアルゴリズム
位数から素因数を求める 位数とは? →素因数分解したいNと互いに素な自然数x(0<x<N)に対して 以下の式が成り立つようなrを位数という(高速で見つけるのが困難) rが見つかり、かつ偶数だった場合、以下のように素因数を見つける 左辺の積のうち少なくとも片方はNと公約数を持つ
ショアのアルゴリズムのフロー Nが偶数またはab ? x(0<x<N)を選ぶ。gcd(x,N)=1 ? xr=1(mod N)となるrを量子位数推定 rは偶数 ? gcd(xr/2-1,N)またはgcd(xr/2+1,N)が1でない
? 終了 NO YES
位数計算のためのユニタリー演算子と固有状態 位数推定のために次のようなユニタリー演算子を考える このユニタリー演算子の固有状態は次のように書ける
固有状態であることの確認 末項(j = r-1)の値が 元のu s の初項(j = 0)の値と同じ j
+ 1の形が出てくるように変形
固有状態の和の形なら簡単に作れる この固有状態を作ろうと思うと今求めたいrの値が必要 固有状態の各々を用意することは出来ないが、それらの和なら可能
固有状態の和の形なら簡単に作れる(式変形の確認) 赤で囲った部分は等比数列の和になる(j=0のときのみ公比が1) もしくはjがnon-zeroの場 合、和の各項は複素平面 の単位円の内接正r角形 の頂点に対応するのでそ れらの和がその多角形の 重心(つまり0)になると考え てもOK
量子位相推定の量子回路 H H H H
前スライドのcontroled-Uの部分の計算を確認
量子位相推定の量子回路 H H H H
逆量子フーリエ変換を行う 測定ビットを測定することでs/rが得られる
連分数展開 s/rの値は少数点以下n桁で得られるが、我々はここからrを知らなければいけない。得 られた値をaとしてこれを以下のような連分数に展開することで、近似的にs/rの値を得 る。 s/rの値によっては連分数展開の結果得られたrが望ましい結果を与えない場合もある が、その場合はxを選ぶところからやり直す。(フローのスライド参照)
その他の補足
位数推定で測定用qubitはいくつ用意すればいいか 素因数分解する数Nを表現するのにL qubit必要な場合、2L+1個の測定用qubitがあ れば十分に高い確率で適切なrが求められるとされている。
位数推定の計算量について Shorのアルゴリズムのなかで位数推定以外の部分は古典的に高速に実行出来る(最 大公約数を求める等)。量子位数推定はO(L3)で計算出来、O(1)の確率で正しい解が 得られる
ご連絡先 本資料に関するご質問や、お客様の事業への適用検討、共同研究のご相談など ありましたら、お気軽に株式会社Quemix <
[email protected]
>まで ご連絡ください。