量子計算編程實戰——基於IBM QX量子計算平台

量子計算編程實戰——基於IBM QX量子計算平台

《量子計算編程實戰——基於IBM QX量子計算平台》是清華大學出版社2020年出版的圖書,作者是克里斯丁· 科比特· 莫蘭。

基本介紹

  • 書名:量子計算編程實戰——基於IBM QX量子計算平台
  • 作者:克里斯丁· 科比特· 莫蘭
  • 出版社:清華大學出版社
  • 出版時間:2020年
內容簡介,作品目錄,

內容簡介

本書詳細闡述了與量子編程相關的基本解決方案,主要包括量子計算概述,量子比特,量子態、量子暫存器和測量,使用量子門演化量子態,量子電路,量子編輯器,OpenQASM,Qiskit和量子計算機模擬,量子AND門和量子OR門,Grover算法,量子傅立葉變換,Shor算法,量子錯誤和量子糾錯,以及量子計算的未來等內容。此外,本書還提供了相應的示例、代碼,以幫助讀者進一步理解相關方案的實現過程。 本書適合作為高等院校計算機及相關專業的教材和教學參考書,也可作為相關開發人員的自學教材和參考手冊。

作品目錄

第1章量子計算概述1
1.1技術要求1
1.2量子計算機1
1.2.1量子計算機的用途2
1.2.2專家觀點:量子計算的重要性3
1.3量子計算的歷史、現狀和未來4
1.3.1量子計算的歷史4
1.3.2量子計算的現狀4
1.3.3量子計算的未來5
1.3.4專家觀點:量子計算的未來前景5
1.4設定並運行Python代碼示例5
1.4.1獲取書籍代碼6
1.4.2設定JupyterNotebook6
1.5設定並運行IBMQX示例7
1.5.1簡單示例:HelloQuantumWorld7
1.5.2關於API密鑰9
1.6設定並運行Qiskit示例9
1.7小結10
1.8練習和問題11
第2章量子比特13
2.1技術要求13
2.2量子比特及其存儲13
2.3模擬量子比特14
2.3.1關於|"0">和|"1">15
2.3.2關於|"0">和|"1">的組合15
2.4量子比特的3種不同表示形式17
2.4.1零基態和一基態的補充說明18
2.4.2加和減基態18
2.4.3順時針和逆時針基態19
2.5布洛赫球面19
2.5.1在布洛赫球面上的|"0">和|"1">等基態20
2.5.2量子比特的布洛赫坐標20
2.5.3在布洛赫球面上繪製布洛赫坐標21
2.6量子比特的疊加和測量23
2.6.1量子比特的量子疊加23
2.6.2量子比特的量子測量23
2.6.3布洛赫球上單個量子比特的測量25
2.7小結26
2.8練習和問題26
第3章量子態、量子暫存器和測量27
3.1技術要求27
3.2量子態和暫存器27
3.3可分離狀態29
3.4量子糾纏31
3.5量子測量和糾纏32
3.6退相干,T1和T235
3.6.1退相干35
3.6.2關於T1和T236
3.7小結38
3.8練習和問題38
第4章使用量子門演化量子態39
4.1技術要求39
4.2門39
4.2.1經典門39
4.2.2量子門40
4.3在狀態上操作的門41
4.4單量子比特門42
4.4.1哈達瑪門(H)44
4.4.2泡利門(X,Y,Z)46
4.4.3相門(S)和π/8門(T)50
4.5多量子比特門55
4.5.1關於CNOT門55
4.5.2CNOT門的Python代碼57
4.5.3可以選擇控制量子比特和目標量子比特的CNOT58
4.6小結58
4.7練習和問題59
第5章量子電路61
5.1技術要求61
5.2量子電路和量子電路圖61
5.3使用Qiskit生成量子電路64
5.3.1在Qiskit中的單量子比特電路64
5.3.2關於Qiskit的QuantumCircuit類和通用門方法64
5.3.3在Qiskit中的多量子比特門65
5.3.4在Qiskit電路中的經典暫存器65
5.3.5在Qiskit電路中的測量66
5.4可逆計算66
5.5有用的量子電路68
5.5.1使用X門準備任何二進制輸入69
5.5.2交換兩個量子比特70
5.6小結71
5.7練習和問題71
第6章量子編輯器73
6.1技術要求73
6.2量子編輯器73
6.2.1硬體75
6.2.2門、操作和屏障76
6.3將量子電路轉換到量子編輯器中79
6.4通過模擬或在QuantumComposer硬體上執行量子電路81
6.4.1通過模擬執行量子電路82
6.4.2在量子計算機硬體上執行量子電路84
6.5小結85
6.6練習和問題85
第7章OpenQASM87
7.1技術要求87
7.2關於OpenQASM87
7.3將OpenQASM程式轉換為量子樂譜89
7.3.1使用OpenQASM取反一個量子比特89
7.3.2使用OpenQASM將門套用於兩個量子比特,並測量第一個量子比特90
7.4在OpenQASM2.0程式中表示量子樂譜91
7.5使用OpenQASM與IBMQX連線94
7.6關於OpenQASM的高級用法96
7.6.1重置量子比特96
7.6.2使用if語句97
7.6.3用戶定義的門和基本門97
7.7小結99
7.8練習和問題99
第8章Qiskit和量子計算機模擬103
8.1技術要求103
8.2安裝和使用Qiskit103
8.2.1測試Qiskit安裝104
8.2.2在Qiskit中使用OpenQASM105
8.2.3認識和安裝QiskitAqua107
8.3關於QiskitTerra頂點項目108
8.3.1關於MIDI規格109
8.3.2關於MIDI的量子計算109
8.4小結116
8.5練習和問題117
第9章量子AND門和量子OR門119
9.1技術要求119
9.2布爾可滿足性問題119
9.2.1關於3SAT經典實現122
9.2.2有趣的3SAT123
9.3量子AND和OR124
9.3.1關於Toffoli門—量子AND門124
9.3.2量子OR門127
9.3.3多個量子比特上的量子AND和量子OR131
9.4關於3SAT量子電路的實現132
9.5小結135
9.6練習和問題135
第10章Grover算法137
10.1技術要求137
10.2Grover算法概述和用例137
10.2.1Grover算法概述137
10.2.2Grover算法的步驟139
10.3使用3SAT作為Grover算法checker141
10.3.1在Qiskit中的2個和3個量子比特的量子AND142
10.3.2在Qiskit中的2個和3個量子比特的量子OR142
10.3.3測試門及其可逆性144
10.4使用Grover算法求解3SAT問題148
10.4.1在Qiskit中的oracle實現149
10.4.2關於mover步驟的實現157
10.4.3完整的算法設定160
10.4.4在Qiskit上運行算法160
10.5小結161
10.6練習和問題162
第11章量子傅立葉變換163
11.1經典傅立葉變換163
11.2傅立葉變換的作用167
11.3量子傅立葉變換的實現及其電路171
11.3.1量子傅立葉變換的實現172
11.3.2量子傅立葉變換電路174
11.4在IBMQX中實現QFT電路175
11.4.1在IBMQX中實現REV門175
11.4.2在IBMQX中實現Rk門175
11.4.3在IBMQX中實現1-qubit的QFT電路177
11.4.4在IBMQX中實現2-qubit的QFT電路177
11.4.5在IBMQX中實現3-qubit的QFT電路178
11.5泛化179
11.6小結179
11.7練習和問題179
第12章Shor算法181
12.1關於Shor算法181
12.1.1Shor算法的作用181
12.1.2被顛覆的現代密碼學182
12.2Shor算法概述183
12.2.1Shor算法描述185
12.2.2以符號/數學方式描述的Shor算法186
12.3Shor算法示例186
12.3.1示例:N為素數且N=7187
12.3.2示例:N是兩個素數的乘積,N較小且N=15187
12.3.3示例:N是兩個素數的乘積,N較大且N=2257187
12.3.4示例:N是一個素數和一個非素數的乘積且N=837188
12.4在Python中實現Shor算法188
12.4.1Shor算法的經典實現189
12.4.2Shor算法的量子實現190
12.4.3在量子計算機上的示例實現:N=15,a=2191
12.4.4在量子計算機上的示例實現:N=35,a=8205
12.5小結209
12.6練習和問題209
第13章量子錯誤和量子糾錯211
13.1量子錯誤211
13.1.1比特翻轉錯誤演示211
13.1.2在模擬器中模擬錯誤213
13.2量子糾錯215
13.2.1單比特翻轉的糾錯216
13.2.2單相位翻轉的量子糾錯221
13.2.3關於Shor代碼221
13.3小結221
13.4練習和問題222
第14章量子計算的未來223
14.1量子計算的關鍵概念225
14.2量子計算的實用領域226
14.3對量子計算的悲觀看法226
14.4對量子計算的樂觀看法226
14.5本書關於量子計算的結論227
附錄A229
A.1實用數學基礎229
A.1.1求和229
A.1.2複數230
A.1.3線性代數230
A.2從矩陣角度看量子比特、狀態和門236
A.2.1量子比特236
A.2.2門237
A.2.3量子測量240

相關詞條

熱門詞條

聯絡我們