Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
高専カンファレンス新春 in 大阪
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Hiroki Nomura
January 12, 2019
Programming
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
高専カンファレンス新春 in 大阪
『2019-01-12 高専カンファレンス新春 in 大阪』で発表した資料です。
Hiroki Nomura
January 12, 2019
More Decks by Hiroki Nomura
See All by Hiroki Nomura
blockchain.pdf
nomunomu0504
0
140
Other Decks in Programming
See All in Programming
SREの越境 / SRE Collaboration
y0hgi
0
190
LL言語やWebフレームワークのPostgreSQL対応 〜DBの機能がユーザーに届くまで〜
kentaroutakeda
1
150
LoopHub - ローカルで動く GitHub で、AI と共同開発
jugyo
1
550
新卒PdEのリアル
ryu1013
1
500
What We Talk About When We Talk About XP
m_seki
2
630
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
250
Webの地図
yosuke_furukawa
PRO
6
4.5k
アクセシビリティから考える情報設計
high_g_engineer
0
380
AgentCore CLI で進化した AWS での AI エージェントの作り方 : 必要な機能を必要な時に
icoxfog417
PRO
3
340
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
3
550
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
140
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
0
510
Featured
See All Featured
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
280
Thoughts on Productivity
jonyablonski
76
5.4k
Everyday Curiosity
cassininazir
0
320
How STYLIGHT went responsive
nonsquared
100
6.3k
ラッコキーワード サービス紹介資料
rakko
1
4.9M
How to Think Like a Performance Engineer
csswizardry
28
2.8k
30 Presentation Tips
portentint
PRO
1
400
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
300
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.8k
Making Projects Easy
brettharned
120
6.8k
Transcript
৽य़ɾߴઐΧϯϑΝ in େࡕ 2019/01/12 kosenconf-123shinshun ͷΉͷΉʢ@nomunomu0504ʣ
ڈʹҾ͖ଓ͖… • ڈͷ৽य़ΧϯϑΝʹࢀՃͯ͠·ͨ͠ • @John_bardera ͔Β࣮ߦҕһΛ͍·ͨ͠ ʢϞϯΤφϑϧηοτʣ
πΠʔτ͢Δͱ͖ʹ… #ͷΉͷΉ
ࠓͷൃද༰ • ྔࢠίϯϐϡʔλʹ͍ͭͯ - ྔࢠίϯϐϡʔλͱݹయతίϯϐϡʔλͱͷҧ͍ - ͲͷΑ͏ʹԋࢉΛߦͳ͍ͬͯΔͷ͔
ࠓͷൃද༰ ྔࢠίϯϐϡʔλΛઐͱ͞Ε͍ͯΔํ • ྔࢠίϯϐϡʔλʹ͍ͭͯ - ྔࢠίϯϐϡʔλͱݹయతίϯϐϡʔλͱͷҧ͍ - ͲͷΑ͏ʹԋࢉΛߦͳ͍ͬͯΔͷ͔
ࠓͷൃද༰ ྔࢠɾྔࢠྗֶઐ߈ͷํ • ྔࢠίϯϐϡʔλʹ͍ͭͯ - ྔࢠίϯϐϡʔλͱݹయతίϯϐϡʔλͱͷҧ͍ - ͲͷΑ͏ʹԋࢉΛߦͳ͍ͬͯΔͷ͔ ྔࢠίϯϐϡʔλΛઐͱ͞Ε͍ͯΔํ
ࠓͷൃද༰ • ྔࢠίϯϐϡʔλʹ͍ͭͯ - ྔࢠίϯϐϡʔλͱݹయతίϯϐϡʔλͱͷҧ͍ - ͲͷΑ͏ʹԋࢉΛߦͳ͍ͬͯΔͷ͔ ྔࢠɾྔࢠྗֶઐ߈ͷํ ྔࢠίϯϐϡʔλΛઐͱ͞Ε͍ͯΔํ झຯൣғͰֶश͍ͯ͠Δ༰Ͱ͢
ʢߨٛҰऔ͍ͬͯ·ͤΜɻऔΓͨͯ͘ߴઐʹ͋Γ·ͤΜʣ ؒҧ͍͕͋Γ·ͨ͠Β%.ૹ͍͚ͬͯͨͩΔͱ ϓϨθϯλʔتͼ·͢
ྔࢠίϯϐϡʔλͱ • ྔࢠྗֶͷੑ࣭ΛͬͯߴʹܭࢉͰ͖Δίϯϐϡʔλ • ͋ΔఔͷαΠζͷྔࢠίϯϐϡʔλ͕͋Ε ʹΑͬͯεύίϯΑΓߴʹܭࢉͰ͖Δ • ྔࢠίϯϐϡʔλͷ࣮ݱํ๏̎छྨ͋Δ • ྔࢠήʔτํࣜ
• ྔࢠΞχʔϦϯάํࣜ > ࠓճઆ໌͢Δͷʰྔࢠήʔτํࣜʱ
ྔࢠίϯϐϡʔλͰߴܭࢉͰ͖Δ͜ͱ 1. ܥ • Ҽղ • ࢄର • ϕϧํఔࣜ •
Ψε • ߹ಉθʔλؔ 2. زԿܥ • ݁ͼෆมྔ • Persistent Homology 3. ઢܗܥ • ߦྻͷྦྷ • ߦྻͷ֊ ͳͲ
1. ܥ • Ҽղ • ࢄର • ϕϧํఔࣜ • Ψε
• ߹ಉθʔλؔ ޙͰ࣮ࡍʹ ಋग़ͬͯΈ·͢ʂ ྔࢠίϯϐϡʔλͰߴܭࢉͰ͖Δ͜ͱ 2. زԿܥ • ݁ͼෆมྔ • Persistent Homology 3. ઢܗܥ • ߦྻͷྦྷ • ߦྻͷ֊ ͳͲ
Ͳͷ͙Β͍ૣ͘ܭࢉͰ͖Δͷ͔ • nϏοτͷҼղ • ݹయతίϯϐϡʔλ(Ұൠମ;Δ͍๏) (e1.9(ln n) 1 3(ln ln
n) 2 3) • ྔࢠίϯϐϡʔλ(ShorΞϧΰϦζϜ) ((log n)2(log log n)(log log log n)) • 1024ϏοτͷҼղʹ͔͔Δܭࢉྔ • ݹయతίϯϐϡʔλɿ • ྔࢠίϯϐϡʔλɹɿ (10278) (1061)
• 1024ϏοτͷҼղʹ͔͔Δܭࢉྔ • ݹయతίϯϐϡʔλɿ • ྔࢠίϯϐϡʔλɹɿ Ͳͷ͙Β͍ૣ͘ܭࢉͰ͖Δͷ͔ • nϏοτͷҼղ •
ݹయతίϯϐϡʔλ(Ұൠମ;Δ͍๏) (e1.9(ln n) 1 3(ln ln n) 2 3) • ྔࢠίϯϐϡʔλ(ShorΞϧΰϦζϜ) ((log n)2(log log n)(log log log n)) (10278) (1061)
ͲͷΑ͏ͳܭࢉΛ͍ͯ͠Δͷ͔ • ݹయతίϯϐϡʔλͳΒɺ͋Δॲཧܥ͓͍ͯ ೖྗ͕ಉ͡ͳΒৗʹಉ݁͡Ռ͕ಘΒΕΔɻ • ྔࢠίϯϐϡʔλͰɺ͋Δԋࢉࢠܥʹ͓͍ͯ ೖྗ͕ಉ͡Ͱʰԋࢉ݁ՌʱҟͳΔՄೳੑ͕͋Δɻ ྔࢠίϯϐϡʔλܭࢉͷਖ਼֬͞ʢ֬ʣΛग़ྗ͢Δ
֤ίϯϐϡʔλͷ جૅԋࢉʹ͍ͭͯ
ݹయతίϯϐϡʔλͷجૅ • Β͕͍ͭར༻͍ͯ͠ΔίϯϐϡʔλΛ ʮݹయతίϯϐϡʔλʯͱݺͿ • ݹయతίϯϐϡʔλͷܭࢉ୯Ґʮbitʯ 0 ͔ 1 ͷͲͪΒ͔ͷঢ়ଶΛऔΓ͏Δɻ2ਐͰද͢
• bitͷঢ়ଶిѹͷ on/off Ͱอ࣋͞Ε͍ͯΔɻ
ݹయతίϯϐϡʔλͷԋࢉ • ཧήʔτʢAND, OR, NOTʣͰԋࢉճ࿏ΛΉ • AND, NOTήʔτͷ2छྨ (͘͠NANDήʔτͳΒ1छྨ) ͕͋Ε
ҙͷཧճ࿏Λ࣮ݱͰ͖Δ
ྔࢠίϯϐϡʔλͷجૅ • ྔࢠྗֶతͳঢ়ଶͷॏͶ߹ΘͤͰฒྻੑΛ࣮ݱ͢Δ • ܭࢉ୯ҐʮQubit (Quantum bit) ʯ ˠ 0
͔ 1 ʹͳΔʮ֬Λอ࣋ʯͯ͠ԋࢉΛߦ͏ • ྔࢠϏοτʮϒϥɾέοτه๏ʯͰදݱ͞ΕΔ جຊతʹྔࢠྗֶʮγϡϨσΟϯΨʔܗࣜʢඍੵʣʯ͕ͩίϯϐϡʔλͰ ѻ͏ͨΊʮσΟϥοΫܗࣜʢߦྻʣʯΛ༻͍Δ ԋࢉͰʮςϯιϧੵʯΛଟ༻͢Δ
ྔࢠίϯϐϡʔλͷԋࢉʢςϯιϧੵʣ • ߦྻੵ ( 0 0 0 1) ⋅ (
1 0 0 1) = ( 0 0 0 1) ֤ߦྻͷཁૉಉ࢜ͷԋࢉʢੵɾʣ ͦΕͧΕͷߦྻͷαΠζ n×m, m×p Ͱͳ͚ΕͳΒͳ͍ ԋࢉޙͷߦྻͷαΠζ n×p ͱͳΔ
• ςϯιϧੵ ཁૉͱߦྻͷԋࢉ ͦΕͧΕͷߦྻͷαΠζΛ n×m, p×q ͱ͢Ε ԋࢉޙͷߦྻαΠζnp × mq
ͱͳΔ ςϯιϧੵߦྻͷ֦ு ( 0 0 0 1) ⊗ ( 1 0 0 1) = 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 ྔࢠίϯϐϡʔλͷԋࢉʢςϯιϧੵʣ
ཁૉͱߦྻͷԋࢉ ͦΕͧΕͷߦྻͷαΠζΛ n×m, p×q ͱ͢Ε ԋࢉޙͷߦྻαΠζnp × mq ͱͳΔ ςϯιϧੵߦྻͷ֦ு
ྔࢠίϯϐϡʔλͷԋࢉʢςϯιϧੵʣ • ςϯιϧੵ ( 0 0 0 1) ⊗ ( 1 0 0 1) = 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 ⋅ ( 1 0 0 1) 0 ⋅ ( 1 0 0 1) 1 ⋅ ( 1 0 0 1) 0 ⋅ ( 1 0 0 1)
ྔࢠίϯϐϡʔλͷԋࢉʢϒϥɾέοτه๏ʣ • ϒϥɾέοτه๏ α, β Λෳૉͱ͢Ε |⟩ ɿϒϥ ⟨| |A⟩
= ( α β) ⟨A| = (α* β*) ɹɹɿɹͷෳૉڞ X* X γ, δ Λෳૉͱ͢Ε |B⟩ = ( γ δ) ⟨B| = (γ* δ*) ɿέοτ
ྔࢠίϯϐϡʔλͷԋࢉʢϒϥɾέοτه๏ͷܭࢉྫʣ |A⟩ = ( α β) ⟨A| = (α* β*)
⟨B| = (γ* δ*) |B⟩ = ( γ δ)
ྔࢠίϯϐϡʔλͷԋࢉʢϒϥɾέοτه๏ͷܭࢉྫʣ ⟨A|B⟩ = (α* β*) ( γ δ) = α*γ
+ β*δ ← ߦྻA, Bͷੵ |A⟩ = ( α β) ⟨A| = (α* β*) ⟨B| = (γ* δ*) |B⟩ = ( γ δ)
ྔࢠίϯϐϡʔλͷԋࢉʢϒϥɾέοτه๏ͷܭࢉྫʣ |A⟩ ⊗ |B⟩ = ( α β) ⊗ (
γ δ) = αγ αδ βγ βδ |A⟩ ⊗ ⟨B| = ( α β) ⊗ (γ* δ*) = ( αγ* αδ* βγ* βδ*) ⟨A|B⟩ = (α* β*) ( γ δ) = α*γ + β*δ ← ߦྻA, Bͷੵ |A⟩ = ( α β) ⟨A| = (α* β*) ⟨B| = (γ* δ*) |B⟩ = ( γ δ)
ྔࢠίϯϐϡʔλͷԋࢉʢϒϥɾέοτه๏ͷܭࢉྫʣ |A⟩ ⊗ |B⟩ = ( α β) ⊗ (
γ δ) = αγ αδ βγ βδ |A⟩ ⊗ ⟨B| = ( α β) ⊗ (γ* δ*) = ( αγ* αδ* βγ* βδ*) ⟨A|B⟩ = (α* β*) ( γ δ) = α*γ + β*δ ← ߦྻA, Bͷੵ |A⟩ = ( α β) ⟨A| = (α* β*) ⟨B| = (γ* δ*) |B⟩ = ( γ δ) ߦྻA, Bͷςϯιϧੵ ˠ ԋࢉࢠʢߦྻʣ
ྔࢠίϯϐϡʔλͷԋࢉʢϒϥɾέοτه๏ͷܭࢉྫʣ |B⟩ ⟨B| ͷ Τϧϛʔτڞͱ͍͏ ߦྻA, Bͷςϯιϧੵ ˠ ԋࢉࢠʢߦྻʣ
|A⟩ ⊗ |B⟩ = ( α β) ⊗ ( γ δ) = αγ αδ βγ βδ |A⟩ ⊗ ⟨B| = ( α β) ⊗ (γ* δ*) = ( αγ* αδ* βγ* βδ*) ⟨A|B⟩ = (α* β*) ( γ δ) = α*γ + β*δ ← ߦྻA, Bͷੵ |A⟩ = ( α β) ⟨A| = (α* β*) ⟨B| = (γ* δ*) |B⟩ = ( γ δ)
• ςϯιϧੵͷলུ ෳͷςϯιϧੵͰද͞Ε͍ͯΔϕΫτϧ·ͱΊΔ͜ͱ͕Ͱ͖Δɻ έοτɺϒϥಉ࢜লུͰ͖Δ͕ɺࠞࡏ͍ͯ͠Δͱ͖ҙ͕ඞཁ ྔࢠίϯϐϡʔλͷԋࢉʢςϯιϧੵʣ |0⟩ ⊗ |1⟩ ⊗ |1⟩
⊗ |0⟩ ⊗ |1⟩ = |0⟩|1⟩|1⟩|0⟩|1⟩ = |01101⟩ (⟨A| ⊗ ⟨B|) (|X⟩ ⊗ |Z⟩) = ⟨A|X⟩⟨B|Z⟩ ߹ʹΑͬͯςϯιϧੵΛؚΜͰͯܭࢉ݁ՌੵʹͳΔͱ͔ 1 1 2 2 1 1 2 2
• ԋࢉࢠUΛఆٛ͢Δ ྔࢠίϯϐϡʔλͷԋࢉʢΤϧϛʔτڞʣ → సஔͷෳૉڞ U = ( α β)
ԋࢉࢠUͷసஔ tU = (α β) ԋࢉࢠUͷసஔͷෳૉڞ tU* = (α* β*) ຖճɹ Λॻ͘ͷ໘ → লུه߸͋Γ·͢ tU* U† = tU* ɿUͷΤϧϛʔτڞ( ɿ μΨʔ ) U† †
• nྔࢠϏοτͷঢ়ଶɹɹ͕͋Δͱ͖ ྔࢠίϯϐϡʔλͷԋࢉʢྔࢠࢄతϑʔϦΤมʣ |j⟩ |j⟩ = 1 2n 2n−1 ∑
k=0 ei 2πkj 2n |k⟩ |j⟩ = 1 2n 2n−1 ∑ k=0 e−i 2πkj 2n |k⟩ • ٯྔࢠࢄతϑʔϦΤม
• nྔࢠϏοτͷঢ়ଶɹɹ͕͋Δͱ͖ |j⟩ |j⟩ = 1 2n 2n−1 ∑ k=0
ei 2πkj 2n |k⟩ |j⟩ = 1 2n 2n−1 ∑ k=0 e−i 2πkj 2n |k⟩ • ٯྔࢠࢄతϑʔϦΤม ྔࢠίϯϐϡʔλͷԋࢉʢྔࢠࢄతϑʔϦΤมʣ
• nྔࢠϏοτͷঢ়ଶɹɹ͕͋Δͱ͖ |j⟩ |j⟩ = 1 2n 2n−1 ∑ k=0
ei 2πkj 2n |k⟩ |j⟩ = 1 2n 2n−1 ∑ k=0 e−i 2πkj 2n |k⟩ • ٯྔࢠࢄతϑʔϦΤม ྔࢠίϯϐϡʔλͷԋࢉʢྔࢠࢄతϑʔϦΤมʣ ʂपظղੳʹ༻͍Δʂ
ྔࢠͷੑ࣭ʹ͍ͭͯ
• ࢄੑ • ෆ֬ఆੑ − ෆ֬ఆੑݪཧ( ϋΠθϯϕϧάͷݪཧ ) • ೋॏੑ
ྔࢠίϯϐϡʔλͷجૅʲྔࢠͷੑ࣭ʳ
ྔࢠίϯϐϡʔλͷجૅʲྔࢠͷੑ࣭ʳ • ࢄੑ ྔࢠ࿈ଓతͳΤωϧΪʔͰͳ͘ࢄతͳΤωϧΪʔΛ࣋ͭ ϚΫϩʢڊࢹతʣͰ࿈ଓతͰ͋Δ͕ɺϛΫϩʢඍࢹతʣͰಛఆͷ߹ʹࢄ తͳΤωϧΪʔ४Ґ͔࣋ͯ͠ͳ͘ͳΔ • ཻࢠ̍ݸ͕࣋ͭΤωϧΪʔ ℏω (
∵ ℏ = h 2π ) hɿϓϥϯΫఆ
ྔࢠίϯϐϡʔλͷجૅʲྔࢠͷੑ࣭ʳ • ෆ֬ఆੑ − ෆ֬ఆੑݪཧʢϋΠθϯϕϧάͷݪཧʣ Δx ⋅ Δpx ≥ ℏ
2 ΔxɿҐஔͷෆ֬ఆੑ Δpx ɿӡಈྔͷෆ֬ఆੑ ిࢠͷӡಈྔʢʣͱҐஔΛಉ࣌ʹਖ਼֬ʹΔ͜ͱͰ͖ͳ͍ ɾӡಈྔ͕͔Εʢɹɹ = 0 ʣɺҐஔ͕ෆ໌ʢɹɹ= ∞ ʣ ɾҐஔ͕͔Εʢɹɹ = 0 ʣɺӡಈྔ͕ෆ໌ʢɹɹ = ∞ ʣ Δpx Δx Δx Δpx υΠπͷཧֶऀ ϋΠθϯϕϧάʹΑͬͯఏҊ͞Εͨ
ྔࢠίϯϐϡʔλͷجૅʲྔࢠͷੑ࣭ʳ • ೋॏੑ − ೋॏεϦοτͷ࣮ݧ • ཻࢠͳΒεϦοτΛ௨ͬͯ ਅ͙ͬεΫϦʔϯʹͿ͔ͭΔ ͞Βཻࢠ̍ͭ̍ͭͷ͕Δ •
ͳΒεϦοτΛ௨ΔͷͰ ׯবࣶ͕εΫϦʔϯʹͰ͖Δ
ྔࢠίϯϐϡʔλͷجૅʲೋॏੑʳ • ిࢠΛೋॏεϦοτʹ௨͢ͱʁ ཻࢠͷੑ࣭͕εΫϦʔϯʹΈΒΕΔʢཻࢠͷʣ ͷੑ࣭͕εΫϦʔϯʹΈΒΕΔʢׯবࣶʣ ͲͪΒͩͱࢥ͍·͔͢ʁ
ྔࢠίϯϐϡʔλͷجૅʲೋॏੑʳ • ిࢠΛೋॏεϦοτʹ௨͢ͱʁ • ʮཻࢠͷੑ࣭ʹݟΒΕΔిࢠͷিಥͷʯ ʮͷੑ࣭ʹݟΒΕΔׯবࣶʯͷ྆ํ͕εΫϦʔϯʹΈΒΕΔ ͭ·Γʮిࢠʯ ˠʮʯͷΑ͏ʹׯব͠߹͍ ʮཻࢠʯͷΑ͏ʹεΫϦʔϯʹিಥͨ͠ͱ͍͏͜ͱʹͳΔ ʮʯͱʮཻࢠʯͷೋॏੑ
ྔࢠίϯϐϡʔλͷجૅʲೋॏੑʳ • ిࢠΛೋॏεϦοτͷલͰ؍ଌͨ͠Βʁ ʮʯͷੑ࣭͚ͩΛ͍࣋ͬͯΔͷ͔ ʮཻࢠʯͷੑ࣭͚ͩΛ͍࣋ͬͯΔͷ͔ ిࢠׂ͕͞Ε͍ͯΔͷͰͳ͍͔
ྔࢠίϯϐϡʔλͷجૅʲೋॏੑʳ • ిࢠΛೋॏεϦοτͷલͰ؍ଌͨ͠Βʁ • ʮ؍ଌʯͱ͍͏ߦҝΛߦ͏ͱʮཻࢠʯͷੑ࣭͔͠ΈΒΕͳ͔ͬͨ ˠʮ؍ଌʯΛߦ͏ͱঢ়ଶ่͕Εͯ͠·͏ ޙड़ɿʮྔࢠॏͶ߹Θͤͷঢ়ଶʯʹؔ࿈͍ͯ͠Δ
ྔࢠίϯϐϡʔλͷجૅʲྔࢠঢ়ଶʹ͍ͭͯʳ • ྔࢠॏͶ߹Θͤঢ়ଶ • ྔࢠׯবޮՌ • ྔࢠͭΕঢ়ଶʢΤϯλϯάϧϝϯτʣ
ྔࢠίϯϐϡʔλͷجૅʲྔࢠॏͶ߹Θͤঢ়ଶʳ • ྔࢠॏͶ߹Θͤঢ়ଶ ࢄతͳঢ়ଶ͕ࠞ͟Γ߹ͬͨঢ়ଶɻ ؍ଌʹΑͬͯͲͪΒ͔ͷঢ়ଶʹऩॖ͠ɺॏͶ߹Θͤঢ়ଶ่͕ΕΔ
ྔࢠίϯϐϡʔλͷجૅʲྔࢠॏͶ߹Θͤঢ়ଶʳ • ྔࢠॏͶ߹Θͤঢ়ଶ ࢄతͳঢ়ଶ͕ࠞ͟Γ߹ͬͨঢ়ଶɻ ؍ଌʹΑͬͯͲͪΒ͔ͷঢ়ଶʹऩॖ͠ɺॏͶ߹Θͤঢ়ଶ่͕ΕΔ
ྔࢠίϯϐϡʔλͷجૅʲྔࢠॏͶ߹Θͤঢ়ଶʳ |α|2 % |β|2 % |0⟩ |1⟩ α|0⟩ + β|1⟩
• ྔࢠॏͶ߹Θͤঢ়ଶ ࢄతͳঢ়ଶ͕ࠞ͟Γ߹ͬͨঢ়ଶɻ ؍ଌʹΑͬͯͲͪΒ͔ͷঢ়ଶʹऩॖ͠ɺॏͶ߹Θͤঢ়ଶ่͕ΕΔ
ྔࢠίϯϐϡʔλͷجૅʲྔࢠॏͶ߹Θͤঢ়ଶʳ ϧϏϯͷᆵ • ྔࢠॏͶ߹Θͤঢ়ଶ ࢄతͳঢ়ଶ͕ࠞ͟Γ߹ͬͨঢ়ଶɻ ؍ଌʹΑͬͯͲͪΒ͔ͷঢ়ଶʹऩॖ͠ɺॏͶ߹Θͤঢ়ଶ่͕ΕΔ
ྔࢠίϯϐϡʔλͷجૅʲྔࢠׯবޮՌʳ • ྔࢠׯবޮՌ ৭ʑͳঢ়ଶ͕ڧΊ߹ͬͨΓऑΊ߹ͬͨΓ͢Δ͜ͱ ͷׯবͱࣅͨΑ͏ͳݱ
ྔࢠίϯϐϡʔλͷجૅʲྔࢠͭΕঢ়ଶʳ • ྔࢠͭΕঢ়ଶʢΤϯλϯάϧϝϯτʣ ৭ʑͳঢ়ଶؒͰ૬ޓ͕ؔ͋ΓͰ͖ͳ͍ ˠ ʰγϡϨσΟϯΨʔͷೣͷύϥυοΫεʱ͕༗໊ |0⟩ |1⟩ ෳ߹ܥͷঢ়ଶΛςϯιϧੵΛ ༻͍ͯද͢͜ͱ͕Ͱ͖ͳ͍࣌
ྔࢠͭΕঢ়ଶͱ͍͏ |0⟩ ⊗ |1⟩ ≠ |0⟩ + |1⟩
ྔࢠίϯϐϡʔλͷجૅʲྔࢠͭΕঢ়ଶʳ • ྔࢠͭΕঢ়ଶʢΤϯλϯάϧϝϯτʣ ৭ʑͳঢ়ଶؒͰ૬ޓ͕ؔ͋ΓͰ͖ͳ͍ ˠ ʰγϡϨσΟϯΨʔͷೣͷύϥυοΫεʱ͕༗໊ |0⟩ |1⟩ |0⟩ ⊗
|1⟩ ≠ |0⟩ + |1⟩ ͲΏ͜ͱʁ ෳ߹ܥͷঢ়ଶΛςϯιϧੵΛ ༻͍ͯද͢͜ͱ͕Ͱ͖ͳ͍࣌ ྔࢠͭΕঢ়ଶͱ͍͏
ྔࢠίϯϐϡʔλͷجૅʲྔࢠͭΕঢ়ଶʳ • Τϯλϯάϧϝϯτঢ়ଶͱඇΤϯλϯάϧϝϯτঢ়ଶ ࣍ͷ̎ͭͷঢ়ଶA, Bʢ ɹɹɹɹ ɹʣΛߟ͑Δ |ψA ⟩, |ψB
⟩ |ψA ⟩ = 1 2 (|00⟩ + |01⟩) |ψB ⟩ = 1 2 (|00⟩ + |11⟩)
ྔࢠίϯϐϡʔλͷجૅʲྔࢠͭΕঢ়ଶʳ → ঢ়ଶAςϯιϧੵͰද͢͜ͱ͕Ͱ͖Δ͕ঢ়ଶBͰ͖ͳ͍ • Τϯλϯάϧϝϯτঢ়ଶͱඇΤϯλϯάϧϝϯτঢ়ଶ ࣍ͷ̎ͭͷঢ়ଶA, Bʢ ɹɹɹɹ ɹʣΛߟ͑Δ |ψA
⟩, |ψB ⟩ |ψA ⟩ = 1 2 (|00⟩ + |01⟩) |ψB ⟩ = 1 2 (|00⟩ + |11⟩)
ྔࢠίϯϐϡʔλͷجૅʲྔࢠͭΕঢ়ଶʳ |ψA ⟩ = |0⟩ ⊗ 1 2 (|0⟩ +
|1⟩) • Τϯλϯάϧϝϯτঢ়ଶͱඇΤϯλϯάϧϝϯτঢ়ଶ → ঢ়ଶAςϯιϧੵͰද͢͜ͱ͕Ͱ͖Δ͕ঢ়ଶBͰ͖ͳ͍ ࣍ͷ̎ͭͷঢ়ଶA, Bʢ ɹɹɹɹ ɹʣΛߟ͑Δ |ψA ⟩, |ψB ⟩ |ψA ⟩ = 1 2 (|00⟩ + |01⟩) |ψB ⟩ = 1 2 (|00⟩ + |11⟩)
ྔࢠίϯϐϡʔλͷجૅʲྔࢠͭΕঢ়ଶʳ ঢ়ଶAɿඇΤϯλϯάϧϝϯτঢ়ଶʢͭΕঢ়ଶʹͳ͍ʣ ঢ়ଶBɿɹΤϯλϯάϧϝϯτঢ়ଶʢͭΕঢ়ଶʹ͋Δʣ • Τϯλϯάϧϝϯτঢ়ଶͱඇΤϯλϯάϧϝϯτঢ়ଶ |ψA ⟩ = |0⟩ ⊗
1 2 (|0⟩ + |1⟩) → ঢ়ଶAςϯιϧੵͰද͢͜ͱ͕Ͱ͖Δ͕ঢ়ଶBͰ͖ͳ͍ ࣍ͷ̎ͭͷঢ়ଶA, Bʢ ɹɹɹɹ ɹʣΛߟ͑Δ |ψA ⟩, |ψB ⟩ |ψA ⟩ = 1 2 (|00⟩ + |01⟩) |ψB ⟩ = 1 2 (|00⟩ + |11⟩)
͔͜͜Βຊ൪ ౖ౭ͷֶ & ྔࢠྗֶ
࣌ؒͷ߹্ ༷ʑͳ݅ͷղઆলུ͠·͢ ✨ ϒϩάͰߦؒຒΊ͠·͢ ✨
1. ܥ • Ҽղ • ࢄର • ϕϧํఔࣜ • Ψε
• ߹ಉθʔλؔ ͜ΕΓ·͢ ྔࢠίϯϐϡʔλͰߴܭࢉͰ͖Δ͜ͱ 2. زԿܥ • ݁ͼෆมྔ • Persistent Homology 3. ઢܗܥ • ߦྻͷྦྷ • ߦྻͷ֊ ͳͲ
• ֬తΞϧΰϦζϜʢෳճ࣮ߦ͢Εɺߴ֬ͰͨΔʣ 1. NΛҼղ͢Δͱ͖ɺࣗવ p < N ΛϥϯμϜʹܾΊΔ 2. gcd(p,
N)Λܭࢉ͢Δ → ݁Ռ͕ > 1 ͳΒɺඇࣗ໌ͳNͷҼ 3. ɹɹɹɹɹɹɹɹɹͷपظTΛݟ͚ͭΔʢྔࢠΞϧΰϦζϜʣ 1. T͕حͳΒɺ1.͔ΒΓ͢ 2. ɹɹɹɹɹɹɹɹɹ ͳΒɺ1.͔ΒΓ͢ 4. ɹɹɹɹɹɹɹ͕ඇࣗ໌ͳNͷҼ → ShorͷΞϧΰϦζϜʹΑΔҼղ fN (x) = px mod N pT 2 + 1 ≡ 0 mod N gcd(pT 2 ± 1,N) pT ≡ 1 mod N ⇔ (pT 2 + 1)(pT 2 − 1) ≡ 0 mod N ≠ 0 ≠ 0 p, Nͷ࠷େެ ҐൃݟΞϧΰϦζϜ ɾҐਪఆ ɾҐൃݟ ɾؔपظൃݟ ݁Ռ͕ͳΒ ʰޓ͍ʹૉʱͰ͋Δ
• N = 57ͱ͢Δɻp = 5ͩͬͨͱ͖ 1. ɹɹɹɹɹɹɹͱͳΔΑ͏ͳɹɹɹɹΛબͿ ɹɹɹɹɹɹɹɹ ΑΓ
2. ྔࢠϏοτΛ࡞͢Δɿ 3. ྔࢠϑʔϦΤมΛ࡞༻ͤ͞Δɿ ShorͷΞϧΰϦζϜʹΑΔҼղ N2 ≤ q < 2N2 q = 2k 572 ≤ q < 2 ⋅ 572 q = 212 = 4096 1 q q−1 ∑ x=0 |x⟩ ⊗ |f(x)⟩ ( 1 q ) 2 q−1 ∑ y=0 q−1 ∑ x=0 ei 2πxy q |y⟩ ⊗ |f(x)⟩ 4. ɹͷӈϏοτΛଌఆ͠ɺ ࠨϏοτΛଌఆ͢Δͱ࣍ͷ֬Ͱ yΛಘΒΕΔ ⊗ 1 q⌊q r ⌋ ⌊ q r ⌋−1 ∑ x=0,f(x)=z ei 2πrxy q 2 f57 (x) = 5x mod 57
• N = 57ͱ͢Δɻp = 5ͩͬͨͱ͖ 1. ɹɹɹɹɹɹɹͱͳΔΑ͏ͳɹɹɹɹΛબͿ ɹɹɹɹɹɹɹɹ ΑΓ
2. ྔࢠϏοτΛ࡞͢Δɿ 3. ྔࢠϑʔϦΤมΛ࡞༻ͤ͞Δɿ ShorͷΞϧΰϦζϜʹΑΔҼղ N2 ≤ q < 2N2 q = 2k 572 ≤ q < 2 ⋅ 572 q = 212 = 4096 1 q q−1 ∑ x=0 |x⟩ ⊗ |f(x)⟩ ( 1 q ) 2 q−1 ∑ y=0 q−1 ∑ x=0 ei 2πxy q |y⟩ ⊗ |f(x)⟩ 4. ɹͷӈϏοτΛଌఆ͠ɺ ࠨϏοτΛଌఆ͢Δͱ࣍ͷ֬Ͱ yΛಘΒΕΔ ⊗ 1 q⌊q r ⌋ ⌊ q r ⌋−1 ∑ x=0,f(x)=z ei 2πrxy q 2 f57 (x) = 5x mod 57
2. ྔࢠϏοτͷ࡞ ShorͷΞϧΰϦζϜʹΑΔҼղ 1 q q−1 ∑ x=0 |x⟩ ⊗
|f(x)⟩ = 1 q (|0⟩ ⊗ |50⟩ + |1⟩ ⊗ |51⟩ + |2⟩ ⊗ |52⟩ + . . . +|18⟩ ⊗ |50⟩ + |19⟩ ⊗ |51⟩ + |20⟩ ⊗ |52⟩ + . . . +|4086⟩ ⊗ |50⟩ + |4087⟩ ⊗ |51⟩ + |4088⟩ ⊗ |52⟩ + . . . + |4095⟩ ⊗ |59⟩)
ShorͷΞϧΰϦζϜʹΑΔҼղ 1 q q−1 ∑ x=0 |x⟩ ⊗ |f(x)⟩ =
1 q (|0⟩ ⊗ |50⟩ + |1⟩ ⊗ |51⟩ + |2⟩ ⊗ |52⟩ + . . . +|18⟩ ⊗ |50⟩ + |19⟩ ⊗ |51⟩ + |20⟩ ⊗ |52⟩ + . . . +|4086⟩ ⊗ |50⟩ + |4087⟩ ⊗ |51⟩ + |4088⟩ ⊗ |52⟩ + . . . + |4095⟩ ⊗ |59⟩) 2. ྔࢠϏοτͷ࡞
2. ྔࢠϏοτͷ࡞ ShorͷΞϧΰϦζϜʹΑΔҼղ 1 q q−1 ∑ x=0 |x⟩ ⊗
|f(x)⟩ = 1 q (|0⟩ ⊗ |50⟩ + |1⟩ ⊗ |51⟩ + |2⟩ ⊗ |52⟩ + . . . +|18⟩ ⊗ |50⟩ + |19⟩ ⊗ |51⟩ + |20⟩ ⊗ |52⟩ + . . . +|4086⟩ ⊗ |50⟩ + |4087⟩ ⊗ |51⟩ + |4088⟩ ⊗ |52⟩ + . . . + |4095⟩ ⊗ |59⟩) ((|0⟩ + |18⟩ + . . . + |4086⟩)|50⟩ +(|1⟩ + |19⟩ + |37⟩ + . . . + |4087⟩)|51⟩ + . . . +(|17⟩ + |35⟩ + |53⟩ + . . . + |4085⟩)|517⟩) ཧ͢Δͱ…
ShorͷΞϧΰϦζϜʹΑΔҼղ ((|0⟩ + |18⟩ + . . . + |4086⟩)|50⟩
+(|1⟩ + |19⟩ + |37⟩ + . . . + |4087⟩)|51⟩ + . . . 4. पظTͷಋग़ͱҼղ
Λࣔ͢ɻ͜ͷͱ͖ࠨϏοτͷ0Λআ͘ ࠷খۮ͕ʰҐʱʹͳΔɻ Αͬͯ T=18 ͱͳΔ ShorͷΞϧΰϦζϜʹΑΔҼղ ((|0⟩ + |18⟩ +
. . . + |4086⟩)|50⟩ +(|1⟩ + |19⟩ + |37⟩ + . . . + |4087⟩)|51⟩ + . . . |50⟩ = f57 (x) = 5x mod 57 = 1 4. पظTͷಋग़ͱҼղ
ShorͷΞϧΰϦζϜʹΑΔҼղ ((|0⟩ + |18⟩ + . . . + |4086⟩)|50⟩
+(|1⟩ + |19⟩ + |37⟩ + . . . + |4087⟩)|51⟩ + . . . |50⟩ = f57 (x) = 5x mod 57 = 1 gcd(pT 2 ± 1,N) ͕ඇࣗ໌ͳҼͳͷͰ… Λࣔ͢ɻ͜ͷͱ͖ࠨϏοτͷ0Λআ͘ ࠷খۮ͕ʰҐʱʹͳΔɻ Αͬͯ T=18 ͱͳΔ 4. पظTͷಋग़ͱҼղ
4. पظTͷಋग़ͱҼղ ShorͷΞϧΰϦζϜʹΑΔҼղ ((|0⟩ + |18⟩ + . . .
+ |4086⟩)|50⟩ +(|1⟩ + |19⟩ + |37⟩ + . . . + |4087⟩)|51⟩ + . . . |50⟩ = f57 (x) = 5x mod 57 = 1 gcd(518 2 + 1,57) = gcd(1953126,57) = 3 gcd(518 2 − 1,57) = gcd(1953124,57) = 19 ҼղͰ͖ͨʂ gcd(pT 2 ± 1,N) ͕ඇࣗ໌ͳҼͳͷͰ… Λࣔ͢ɻ͜ͷͱ͖ࠨϏοτͷ0Λআ͘ ࠷খۮ͕ʰҐʱʹͳΔɻ Αͬͯ T=18 ͱͳΔ
·ͱΊ • ྔࢠίϯϐϡʔλ͢ΕͱΜͰͳ͍Խ͚ ˠ ݱࡏͷPCੑೳΛӽ͑ΔͨΊʹ·ͩ·͕͔͔ͩ࣌ؒΔ • ܭࢉ݁Ռ͋͘·Ͱʰ֬ʱͰ͋Γɺ෮ܭࢉΛߦ͏ඞཁ͋Γ ˠ ܭࢉʹલճͷ֬Λ༻͍ͯܭࢉ͞ΕΔͨΊ •
Q#͍ͬͯ͏ྔࢠϓϩάϥϛϯάݴޠ͋ΔͷͰݕࡧͯ͠ΈͯͶʂ ˠ ϓϩάϥϜͰ͜ͷΞϧΰϦζϜ͕؆୯ʹ͔͚Δʂ
͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ εϥΠυɾղઆ ϒϩάʹUp͠·͢ͷͰੋඇΈ͍ͯͩ͘͞ ✨