量子ビットをイメージで捉えられるよう、Python(Jupyter notebook)コードを作ってみました。
https://github.com/sin-gee/ImageOfQuantumBit
$ cd ~/Desktop
$ git clone https://github.com/sin-gee/ImageOfQuantumBit
$ jupyter notebook
モチベーション
通常、ブロッホ球をベースに説明されるのですが、以下の点で納得できない部分があり、波として捉えられるようにしたい、というのがモチベーションです。
- |0> - |1> の意味が分からない ( |0> + |1>と何が違うのかわからない )
- ゲート行列との対応がつかない
- |0>と|1>、|+>と|->、|i>と|-i>が直交しているように見えない
遊び方
最初に|0>と|1>の混合比(1.0の場合、|0>のみ)と、位相のずれ(単位はπ)を設定してください。
次に光子(の波)に見立てた場合の、|0>(ブルーのx軸方向の振動)と|1>(オレンジのz軸方向の振動)の様子を表示します。
最後に、y=0からy軸方向に見た場合の挙動(アニメーション)を表示します。
2025/01/20追記
HゲートとYゲートの操作を追加しました。操作後、ブロッホ球から繰り返してもらえると何がどう変化したのか、理解しやすいかと思います。
付録
Pythonのインストールは、こちら
Windows
Mac
Jupyter notebookのインストールは、こちら
Gitのインストールは、こちら
Windows
Mac
Git cloneは、こちら