【Qiskit】Hゲートで重ね合わせ状態を作ろう!1量子ビットの確率実験
前回は、何も操作しない初期状態の量子ビットを測定すると、必ず 0(100%)になることを確認しました。今回はついに、量子コンピュータの真骨頂である「Hゲート(アダマールゲート)」を使って、量子を「確率の波(重ね合わせ状態)」に変換する実験をしてみます!
1. サンプルコード
量子ビットにHゲートを適用し、確率の波を作ってから測定するコードです。
from qiskit import QuantumCircuit
from qiskit.providers.basic_provider import BasicSimulator
# 1量子ビット、1古典ビットを準備
qc = QuantumCircuit(1, 1)
# Hゲート(アダマールゲート)を適用して「確率の波」にする
qc.h(0)
# 測定
qc.measure(0, 0)
# 回路図をテキスト形式で出力
print("--- 回路図 ---")
print(qc.draw(output='text'))
# シミュレータで1000回実行
simulator = BasicSimulator()
result = simulator.run(qc, shots=1000).result()
counts = result.get_counts()
print("\n--- 実行結果 ---")
print(f"実行結果: {counts}")
2. 実行結果と回路図
上記のコードを実行すると、次のような回路図と結果が得られます。
--- 回路図 ---
┌───┐┌─┐
q: ┤ H ├┤M├
└───┘└╥┘
c: 1/══════╩═
0
--- 実行結果 ---
実行結果: {'1': 463, '0': 537}
3. 解説:ついに重ね合わせ状態ができた!
実行結果を見ると、先ほどまで 100% だった 0 だけでなく、1 もほぼ半々の確率(この時は463回と537回)で出現しています!
- Hゲートの物理的効果:極低温で静止していた純粋な
|0>の状態に対し、外部から絶妙なエネルギー(パルス)を加えることで、状態をぐるっと回転させました。 - 確率の波の誕生:これにより、量子は「
0でもあるし1でもある」という確率の波(重ね合わせ状態)に変換されます。 - 測定による収縮:その波の状態のまま測定器にかけることで、毎回ランダムに
0か1が決定されるようになります。
この確率の波こそが、量子コンピュータが並列計算を行える最大の原動力です。