13. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
量子コンピュータの「性能」
について
23. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
logical qubitベースのアーキテクチャ
23
・ともあれ、logial qubit
ベースの処理が実現すると、
全体像はこうなるはず
・Physical layer、Logical
layer
資料: Building logical qubits in a superconducting quantum computing system (Gambetta et al.), 2017, Nature
24. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
量子コンピュータの性能指標: Quantum Volume
24
qubit数
depth
fidelity
1 stepの操作をどれだけの
精度で行えるか
gate操作を何回続けられるか
資料: https://www.qiskit.org/ibmqx-user-guides/full-user-guide/004-Quantum_Algorithms/070-Grover%27s_Algorithm.html
25. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. 25
量子的な重ね合わせをど
れだけ保っていられるか
• qubitの寿命
• これに比例してdepthが大
きくなる
コヒーレン時間の
向上
・方式を変えながら、ムーアの
法則ぽく、指数的に上昇
・15年間で 数十万倍に
資料: Materials in superconducting quantum bits (Oliver, Welander), 2013
26. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
FAQ: 量子コンピュータは、古典な演算をなんでも
こなせるというのは本当?
26
Yes!
• 少なくとも、ANDやOR、XORのような gateの組み合わせで
書けるロジックは実行可能
• ただし、量子的な状態のコピーは行えない
39. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
量子ビット、qubit
39
制約2: グローバル位相は意味を持たず、無視できる
• 位相差だけがリアル
• α の虚部は常に 0 とおいてよい
Re
Im
α
β
位相差
グローバル位相
Re
Im
Re
Im
Re
Im
40. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
量子ビット、qubit
40
制約2: グローバル位相は意味を持たず、無視できる
• 位相差だけがリアル
• α の虚部は常に 0 とおいてよい
Re
Im
α
β
位相差
グローバル位相
Re
Im
Re
Im
Re
Im
このパターンだけ考える、
Im(α) = 0
41. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
量子ビット、qubit
41
2つの束縛条件を満たすような 一般的な表式は?
• まずは制約条件 |α|2 + |β|2 = 1 を考慮
• cosθ、sinθ で 2乗和が1になる全てのケースを表しきれる
π/20
42. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
量子ビット、qubit
42
2つの束縛条件を満たすような 一般的な表式は?
• 諸事情あって θ = θ'/2 な θ' に変換
43. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
量子ビット、qubit
43
2つの束縛条件を満たすような 一般的な表式は?
• グローバル位相 eiγ を外に出しつつ・・・
45. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
量子ビット、qubit
45
Bloch sphere
• 制約条件 |α|2 + |β|2 = 1 を満たし、位相差が
0〜2π となるような状態の一般形
→ 球面上の点をあらわす式
46. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
量子ビット、qubit
46
Bloch sphere、いろいろな例
47. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
量子ビット、qubit
47
Bloch sphere、いろいろな例
48. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
量子ビット、qubit
48
Bloch sphere、いろいろな例
49. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
量子ビット、qubit
49
Bloch sphere、いろいろな例
50. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
量子ビット、qubit
50
Bloch sphere、いろいろな例
51. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
1 qubitに対する量子ゲート操作
51
X gate: x軸についての 180°回転
X gate
X gate
52. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
1 qubitに対する量子ゲート操作
52
X gate: x軸についての 180°回転
X gate
X gate
53. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
1 qubitに対する量子ゲート操作
53
X gate: x軸についての 180°回転
X gate
X gate
54. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
1 qubitに対する量子ゲート操作
54
X gate: x軸についての 180°回転
X gate
X gate
X gate → NOT演算
55. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
1 qubitに対する量子ゲート操作
55
Y gate: y軸についての 180°回転
Y gate
Y gate
56. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
1 qubitに対する量子ゲート操作
56
Z gate: z軸に対する 180°回転
Z gate
Z gate
57. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
1 qubitに対する量子ゲート操作
57
Z gate: z軸に対する 180°回転
Z gate
Z gate
Z gate → 位相の反転操作
58. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
1 qubitに対する量子ゲート操作
58
x, y, z 各軸まわりの回転について
• 90°、45°、(パラメータを与えての)任意の角度、などのバ
リエーションあり
恒等変換: I
59. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
1 qubitに対する量子ゲート操作
59
Hadamard gate: |0〉のみの状態、|1〉
のみの状態から、2つが重ね合わされた
状態を作る
• 読み方: アダマールゲート
H gate
H gate
60. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
1 qubitに対する量子ゲート操作
60
Hadamard gate: |0〉のみの状態、|1〉
のみの状態から、2つが重ね合わされた
状態を作る
• 読み方: アダマールゲート
H gate
H gate
61. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
1 qubitに対する量子ゲート操作
61
Hadamard gate: |0〉のみの状態、|1〉
のみの状態から、2つが重ね合わされた
状態を作る
• 読み方: アダマールゲート
H gate
H gate
H gateは大事:
量子ビットは決まった初期状態
が与えられていることが多く
(通常 |0〉)、そこから重ね
合わせを作るための基本操作
となる
63. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
2 qubitにすると?
63
電流やスピンなど、1 qubitをあらわすのに使っていた
ものを 2セット使うようになる
• qubit 0と qubit 1があったとすると、直交基底系は:
シンプルに書くと 状態は
64. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
2 qubitにすると?
64
ゲート操作・ユニタリ行列の掛け算
• 例として「下位qubitにだけ X gate(NOT演算)適用」
上位qubit、
素通し
下位qubit、
X gate
65. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
2 qubitにすると?
65
ゲート操作・ユニタリ行列の掛け算
• 例として「下位qubitにだけ X gate(NOT演算)適用」
66. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
2 qubitにすると?
66
ゲート操作・ユニタリ行列の掛け算
• 例として「下位qubitにだけ X gate(NOT演算)適用」
67. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
2 qubitにすると?
67
ゲート操作・ユニタリ行列の掛け算
• 例として「下位qubitにだけ X gate(NOT演算)適用」
68. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
zc
2 qubitにすると?
68
ゲート操作・ユニタリ行列の掛け算
• 「上位qubitが |1〉のときだけ、下位qubitにX gate(NOT演
算)適用」
• CNOT、controlled gateの例
69. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
zc
3 qubitにすると?
69
電流やスピンなど、1 qubitをあらわすのに使っていた
ものを 3セット使うようになる
• qubit 0、1、2があったとすると、直交基底系は:
シンプルに書くと 状態は
70. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
3 qubitにすると?
70
ゲート操作・ユニタリ行列の掛け算
• 例として「最上位qubitにだけY gate適用、他の下位qubitは
素通し」
zc
71. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
zc
3 qubitにすると?
71
ゲート操作・ユニタリ行列の掛け算
• 例として「最上位qubitにだけY gate適用、他の下位qubitは
素通し」
72. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
zc
3 qubitにすると?
72
ゲート操作・ユニタリ行列の掛け算
• 例として「最上位qubitにだけY gate適用、他の下位qubitは
素通し」
73. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
zc
3 qubitにすると?
73
ゲート操作・ユニタリ行列の掛け算
• 例として「上位2つのqubit 両方が |1〉のときだけ 最下位の
qubitに X gate(NOT演算)適用」
• CCNOT
74. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
zc
3 qubitにすると?
74
ゲート操作・ユニタリ行列の掛け算
• 例として「上位2つのqubit 両方が |1〉のときだけ 最下位の
qubitに X gate(NOT演算)適用」
• CCNOT
Toffoli gate!
NANDの可逆バージョン
これさえあれば、可逆な前提のもとでも
あらゆる古典的なロジックを組むこと
ができる
→(古典的な意味での)ユニバーサルな
コンピューティングが可能に
→ 状態のベクトルに対する ユニタリ
行列の掛け算であらわされ、
量子コンピューティングで利用可能
83. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
開発環境
84. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
MDR(オープンソース)
84
Blueqat
• https://blueqat.com/
85. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
IBM
85
IBM Q Experience
• https://quantumexperience.ng.bluemix.net/
• 5 qubitのシステムを誰でもすぐに使えるよう UI付きでWeb
上に公開
86. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
IBM
86
QISKit
• https://developer.ibm.com/code/open/projects/qiskit/
• DSLとして QASMを使用
• Python binding
ゲート回路図
DSL(QASM)
87. Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
Rigetti Computing
87
Forest SDK
• https://www.rigetti.com/forest
• DSLとして Quilを使用
• Python binding
DSL(Quil)
Python