2023年2月19日日曜日

しっかり学べる量子コンピューティング入門書二部作

 量子コンピュータ関係の洋書の新刊は増え続けている。和書はまだ少ないが、こちらも徐々に増えてきた感がある。どの書もそれぞれ特色があるのだが、今回は以下の2冊を(出版から2、3年経過しているのだが)簡単にご紹介したい。
 高校数学程度から出発して、(著者が言っているとおり)ゆっくり丁寧に説明されていて、実際とても分かりやすい。それでいて、量子コンピューティングの基本がしっかり身に付くと実感できる。素晴らしい!多くの人々に推奨したい本である!

 「はじめに」に書かれている以下の文言にも同感できる:
"国際的な量子コンピュータの開発競争は激しくなっており、日本でも国として「ムーンショット型研究開発制度」「統合イノベーション戦略推進会議」等により量子コンピューティング関連技術を支援することが決まりました。量子コンピュータを学ぶ動機は大きくなる一方です。

(A)束野仁政、高校数学からはじめる量子コンピュータ第2版
・量子コンピュータへの誘い
・1量子ビットの世界
・1量子ビットの量子回路
・2量子ビットの世界
・2量子ビットの量子回路
・量子プログラミング入門編
・量子プログラミング実機編
・数学に関する補足
(B)束野仁政、高校数学からはじめる量子コンピュータ2
・n量子ビットの世界
・n量子ビットの量子回路
・量子プログラミング
・ドイチェのアルゴリズム
・量子テレポーテーション
・量子誤り訂正入門
 これら2冊に含まれる内容は、(既にこのブログに何度も登場した)Prof. Chris Bernhardtの書籍(C)の一部とほぼ同程度の詳しさであり、叙述のコンセプトも似ているように思われる。実際、(A)(B)の著者、束野仁政氏は巻末に、「書籍(C)は、本書を読まれた方が次のステップで読むのにも向いています。」と記している。

 この2冊(A)(B)のもう一つの特色として、Qiskitによるプログラミングを行なって理解を確かめられる点が挙げられる。すなわち、IBMの量子回路シミュレータ、またはIBM Quantum 実機を動かせる楽しみ、嬉しさは読者の学習意欲を大いに鼓舞することになろう。Qiskit (Python) ソースコードはGitHubで提供されているので、すぐに動かせる。

 初心者は、量子の性質に戸惑うことが多いだろう。それは色々あるのだが、(A)では、例えば「量子状態の区別」という章が早めに設けられているのはとても良い。具体的には、2つの量子状態
 (|0⟩+|1⟩)/√2と(|0⟩-|1⟩)/√2は
一見、異なるように思えるが区別はできない。しかしアダマール変換後は区別できること。
また、(|0⟩+|1⟩)/√2と-(|0⟩+|1⟩)/√2
も一見、異なるように思えるが、これは区別できない。などの理由が丁寧に説明されている。区別できる/できない、とは、量子の測定結果(の確率)がどうなるかということである。

 書籍Vol.2である(B)では、ドイチェの量子アルゴリズムがある。そこで使われるオラクル論理ゲートの仕組みとアダマール変換、テンソル積、排他的論理和を使った説明もとても詳しいのでフォローしやすい。そして、それをQiskitプログラム作成へ無理なく導いている。
 
 また、量子テレポーテーションは、「量子もつれ」が効果的に利用されているのだが、その、CNOTやアダマールゲートを使った計算式はかなり混み入ったものになるが、これもドイチェアルゴリズムの場合と同様、丁寧な説明に助けられるのである。

 書籍(B)の最後の項目である「量子誤り訂正入門」では、ビット反転の訂正に加えて、位相反転の訂正、さらにそれら同時発生の訂正についても解説している。入門レベルの書としては、かなり頑張っていると感じられる。

#本書の購入について
(A)と(B)はAmazonや紀伊國屋Webでは買えません。下記から購入できます。電子版と紙版があります。ただし、(A)の紙版は売り切れのようです。
https://snuffkin.booth.pm/
両方とも100ページ程度、価格1,000円となっています。

(補足)------------------------------------------------------
 同じ著者、束野仁政氏による第3作目の書籍も発売されていました。ただし、pdf版のみであり、紙版は無いようです。これは、第1作、第2作を読まなくても、これだけで閉じていますので、この第3作から学び始めることもできます。前の2作では、Qiskitにより、IBM量子回路シミュレーション、またはIBM Quantum実機による実行を行なっていたのですが、この第3作では、Amazon Braket(Python SDK)を利用します。Qiskitの場合と同様に、同じプログラムでシミュレータでも実機でも動かせます。AWSの他のサービスとの連携もしやすいようです。
 Amazon Braketでは、シミュレータ2種の他に、D-Wave、IonQ、Rigettiという量子コンピュータ実機を利用できます。ただし、利用時間に応じて課金されますので、それは意識しておく必要があります。

0 件のコメント:

コメントを投稿