-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
ornew
committed
Jul 6, 2019
0 parents
commit 4156b84
Showing
84 changed files
with
3,367 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,144 @@ | ||
{ | ||
"cells": [ | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"<img src=\"./images/Logo1.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"700 px\" align=\"center\">" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"# 第一章 量子情報理論の三つの基本原理 <a id='postulate'></a>\n", | ||
"\n", | ||
"**本章の内容** [全体目次](./Contents.ipynb)\n", | ||
"\n", | ||
"- [量子情報理論の三つの基本原理](#postulate )\n", | ||
" - [重ね合わせの原理](#superposition )\n", | ||
" - [観測の原理](#measurement)\n", | ||
" - [ユニタリ発展の原理](#unitary)\n", | ||
" \n", | ||
"- [数学的準備1 ](#math1)\n", | ||
"\n", | ||
"\n", | ||
"### 量子情報理論には、次の三つの基本原理がある。\n", | ||
"\n", | ||
"1. #### 重ね合わせの原理\n", | ||
"1. #### 観測の原理\n", | ||
"1. #### ユニタリ発展の原理\n", | ||
"\n", | ||
"\n", | ||
"## 1. 重ね合わせの原理 <a id='superposition'></a>\n", | ||
"### qubitの状態は、互いに直交する二つのベクトルの和として、列ベクトルで表される。\n", | ||
"\n", | ||
"### x-y平面との類似で考える\n", | ||
"- それは、x-y平面上の任意の点を表すベクトルが、x軸方向のベクトルとy軸方向のベクトルの和として表されるのと同じである。\n", | ||
"- x-y平面で、二つのx軸方向の長さ1のベクトル(1,0) をx、y軸方向の長さ1のベクトル(0,1)をyとすると、原点から点P(m,n)に向かうベクトルPは、P=mx+ny=m(1,0)+n(0,1) と表すことができる。\n", | ||
"- この時、mをPの「x成分」、nをPの「y成分」という。\n", | ||
"- また、二つの単位ベクトル x(1,0), y(0,1)を、**「基底」ベクトル**と呼ぶ。\n", | ||
"<img src=\"./images/basic/XY.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">\n", | ||
" " | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"### qubitの場合の重ね合わせ\n", | ||
"- x-y平面の場合ベクトルの成分は実数だが、qubitの重ね合わせの場合には、その成分は **複素数** となる。qubitの状態は、二つの複素数のペアで定義される。\n", | ||
"- x-y平面の場合、基底 x(1,0), y(0,1)は、行ベクトルとして表現されるが、qubitの基底は、$\\begin{pmatrix} 1 \\\\ 0 \\\\\\end{pmatrix}$ と$\\begin{pmatrix} 0 \\\\ 1 \\\\\\end{pmatrix}$ と、**列ベクトル** で表現される。\n", | ||
"- x-y平面の成分(m,n)を持つ任意のベクトルが、二つの基底ベクトル x(1,0), y(0,1)を用いて、(m,n)=m(1,0)+n(0,1)と表すことができるように、qubitの成分を$\\begin{pmatrix} \\alpha \\\\ \\beta \\\\\\end{pmatrix}$とする時、$\\begin{pmatrix} \\alpha \\\\ \\beta \\\\\\end{pmatrix}= \\alpha \\begin{pmatrix} 1 \\\\ 0 \\\\\\end{pmatrix} + \\beta \\begin{pmatrix} 0 \\\\ 1 \\\\\\end{pmatrix}$と表すことができる。\n", | ||
"- ただし、qubitの成分 $\\alpha, \\beta$は、次の条件を満たす。$|\\alpha|^2+|\\beta|^2=1$\n", | ||
"\n", | ||
"### ket記法\n", | ||
"- Aが列ベクトルの時、それを$|A\\rangle$と表す。これを **ket記法** と呼ぶ。\n", | ||
"- qubitの基底である二つの列ベクトルを、$|0\\rangle, |1\\rangle$と表す。すなわち、$|0\\rangle=\\begin{pmatrix} 1 \\\\ 0 \\\\\\end{pmatrix}, |1\\rangle=\\begin{pmatrix} 0 \\\\ 1 \\\\\\end{pmatrix}$とする。\n", | ||
"- この時、任意のqubitの状態$|\\psi\\rangleは、|\\psi\\rangle=\\alpha |0\\rangle+\\beta|1\\rangle (ただし|\\alpha|^2+|\\beta|^2=1)$と表される。\n", | ||
"\n", | ||
"### 一般化\n", | ||
"- qubitの状態は、二つの複素数を成分とする列ベクトルで表現されるが、任意の量子状態$|\\psi\\rangle$は、n個の基底$|0\\rangle, |1\\rangle, |2\\rangle, \\cdots, |n-1\\rangle$を持つn個の複素数$\\alpha_0, \\alpha_1, \\alpha_{n-1}$を成分とする列ベクトルで表現される。$|\\psi\\rangle=\\alpha_0|0\\rangle+\\alpha_1|1\\rangle+\\alpha|2\\rangle+ \\cdots + \\alpha_{n-1}|n-1\\rangle$\n", | ||
"- この時、各成分の絶対値の二乗を全て加えた値は、1に等しくなければならない。$|\\alpha_0|^2+|\\alpha_1|^2+|\\alpha|_2|^2+\\cdots + |\\alpha_{n-1}|^2=1$\n", | ||
"\n", | ||
"<img src=\"./images/basic/qubit1.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"600 px\" align=\"left\">" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"## 2. 観測の原理 <a id='measurement'></a>\n", | ||
"### qubitを観測すると、重ね合わせの状態は失われて、古典bit 0か1が観測される\n", | ||
"一般に、n個の基底からなる量子の状態を観測すると、重ね合わせの状態は失われて、その基底の一つが観測される。\n", | ||
"\n", | ||
"### qubit $|\\psi\\rangle=\\alpha |0\\rangle+\\beta|1\\rangle$を観測した時、$|0\\rangle$ (古典bit 0に対応)が観測される確率は$|\\alpha|^2$、$|1\\rangle$ (古典bit 1に対応)が観測される確率は$|\\beta|^2$に等しい\n", | ||
"一般に、先の量子の状態 $|\\psi\\rangle$を観測した時、重ね合わせの状態が失われて、基底$|i\\rangle$が観測される確率は、$|\\alpha_i|^2$に等しい。\n", | ||
"$|\\alpha_0|^2+|\\alpha_1|^2+|\\alpha|_2|^2+\\cdots + |\\alpha_{n-1}|^2=1$という条件は、観測によって、いずれかの基底が観測されるという条件と等しい。\n", | ||
"\n", | ||
"<img src=\"./images/basic/measure1.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">\n", | ||
"<img src=\"./images/basic/measure2.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"## 3. ユニタリ発展の原理 <a id='unitary'></a>\n", | ||
"### 量子の状態$|\\psi_0\\rangle$が$|\\psi_1\\rangle$に変化したとする。この時、$|\\psi_1\\rangle=U|\\psi_1\\rangle$となるユニタリ行列$U$が存在する\n", | ||
"<img src=\"./images/basic/unitary1.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">\n" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"\n", | ||
"\n", | ||
"# 数学的準備 1 <a id='math1'></a>\n", | ||
"\n", | ||
"<img src=\"./images/basic/why1.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">\n", | ||
"<img src=\"./images/basic/why2.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">\n", | ||
"\n", | ||
"<img src=\"./images/simulation/math/scalar1.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">\n", | ||
"<img src=\"./images/simulation/math/scalar+sum.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">\n", | ||
"<img src=\"./images/simulation/math/innerprod1.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">\n", | ||
"<img src=\"./images/simulation/math/prod1.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">\n", | ||
"<img src=\"./images/simulation/math/prod2.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">\n", | ||
"<img src=\"./images/simulation/math/trans1.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">\n", | ||
"<img src=\"./images/simulation/math/trans2.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">\n", | ||
"<img src=\"./images/simulation/math/daggar.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"550 px\" align=\"left\">\n" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"\n", | ||
"### [前の章へ](./0_index.ipynb) [全体目次](./Contents.ipynb) [次の章へ](./2_circuit.ipynb)" | ||
] | ||
} | ||
], | ||
"metadata": { | ||
"anaconda-cloud": {}, | ||
"kernelspec": { | ||
"display_name": "Python 3", | ||
"language": "python", | ||
"name": "python3" | ||
}, | ||
"language_info": { | ||
"codemirror_mode": { | ||
"name": "ipython", | ||
"version": 3 | ||
}, | ||
"file_extension": ".py", | ||
"mimetype": "text/x-python", | ||
"name": "python", | ||
"nbconvert_exporter": "python", | ||
"pygments_lexer": "ipython3", | ||
"version": "3.6.7" | ||
} | ||
}, | ||
"nbformat": 4, | ||
"nbformat_minor": 2 | ||
} |
Oops, something went wrong.