個人的に最近量子コンピュータに関して勉強しています。
そこで参考になった資料やサイト、書籍などに関して、リンクのみになりますがまとめておきます。
#前提知識
-
基礎的な量子力学
ある程度分かっていないと厳しいのでいくつか上げておきます。EMANの物理学
量子力学講義ノート 東邦大学理学部物理学科 関口 雄一郎
量子論におけるブラ・ケット表記
数学:物理を学び楽しむために -
基本的な線形代数
ある程度分かっていないと厳しいのでいくつか上げておきます。
線形代数入門
線形代数とその応用 | ギルバート ストラング, 山口 昌哉, 井上 昭
#総説
ざっくり俯瞰するだけならたくさんの資料があります。
そのなかでもよくまとまっているなと思ったものをここに貼っておきます。
【IT動向リサーチ】量子コンピュータの概説と動向~量子コンピューティング時代を見据えて~
#量子計算
量子計算って何か、量子回路とはなにかなど、我々が思い浮かべる古典的なコンピュータと量子回路との架け橋になってくれる資料。
量子計算基礎 / 東京工業大学 河内 亮周
#情報理論
何かと出てくる。量子誤り訂正とか出てくると、古典情報理論から詰めないと「何もわからん」となります。
情報理論 改訂2版 – 今井 秀樹
量子情報理論とその難しさ-より多くの人に知ってもらうために-
#量子アルゴリズム
##Shorの素因数分解
入力データの位数に着目して、べき乗剰余取って、最後に連分数法で最小の位数を見つけるアルゴリズム。
RSAは、大きな整数を因数分解することは計算上困難であるという仮定に基づいていて、知る限りでは,この仮定は古典的なコンピュータに対して有効であり,多項式時間で整数を因数分解できる古典的なアルゴリズムは知られていません。しかし、Shorのアルゴリズムは、理想的な量子コンピュータにおいて現実的な時間で素因数分解が可能であることを示しており、大型の量子コンピュータを構築することでRSAを打ち負かすことが可能になるかもしれないです。
Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer
3時間で学ぶShorのアルゴリズム
##Groverの探索アルゴリズム
データベース探索アルゴリズム。通常データ長$N$のデータベースから1つのデータを探す際、計算量は$O(N)$となるが、Groverのアルゴリズムを用いれば$O(\sqrt(N))$に落とせる。
このアルゴリズムを理解するには量子振幅増幅を理解が必須である。
A fast quantum mechanical algorithm for database search
Groverのアルゴリズム / Home Page of Math CM Nagoya Univ.
##量子フーリエ変換
高速フーリエ変換の計算量は入力データ長$2^n$に対して$O(n2^n)$であるが、
量子フーリエ変換は$O(n^2)$であるので$n$の大きなところで高速であると考えられるアルゴリズム。
下記のサイトでは離散フーリエ変換から出発して量子フーリエ変換を丁寧に導出してくださっています。。
量子フーリエ変換 (Quantum Fourier Transform) とは
実装に関してはQiskitのDocumentが詳しいです。
Quantum Fourier Transform - Qiskit
#量子コンピュータのコードの実装に役立つ
QunaSysという会社が量子アルゴリズム開発を行うエンジニアを広く育成するために、
無料の学習教材を作成・公開してくださっています。
Quantum Native Dojo
量子コンピュータのSDK,Qiskitの公式ドキュメントが大変充実しています。
Qiskit を使った量子計算の学習
#まとめ
量子コンピュータに関してまなぶ道標になればと参考にした・助かったサイトを列挙しました。
また有用なサイトが有れば更新予定です。
よろしくお願いいたします。