量子状態のブラケット記法:完全リファレンス

量子コンピュータ

量子プログラミングとは、突き詰めれば「量子状態を操作する」ことです。
量子プログラミングシリーズ記事【入門編】および【実践編】では、回路図や量子ゲートのコードを扱っていますが、その操作の対象となる「状態」が何であるかを正確に理解していなければ、回路設計の意図やシミュレーション結果を深く解析することはできません。

量子状態を記述するために、量子力学ではブラケット記法(\(\langle\psi|\psi\rangle\))と呼ばれる独自の記述法を用います。

このブラケット記法は、単なる記号ではなく、量子ビットが持つ重ね合わせ確率といった、古典コンピュータにはない性質を表現するための数学的な言語です。

本記事は、このブラケット記法を完全にマスターするための「完全なリファレンス」となることを目標として作成しています。

I. 量子状態の基本的な記述(ブラケット記法)

1-1. 基礎概念:ケットベクトルとブラベクトル

量子力学では、量子ビットの状態を表現するためにブラケット記法を用います。
これは、ノーベル賞受賞者ポール・ディラックによって考案されたため、ディラック記法とも呼ばれますが、本記事ではブラケット記法として統一的に扱います。

この表記は、状態を「ベクトル」として捉える線形代数の考え方に基づいています。

1-1-1. ケットベクトル(状態の表現)

量子状態そのものを記述するのがケットベクトル (\(|\psi\rangle\)) です。

  • 記号: \(\mid\) と \(\rangle\) で囲まれます。
  • 意味: 量子ビットの状態ベクトルを表します。これは、縦に並んだ数字の行列(列ベクトル)として表現されます。
  • : \(|\psi\rangle\) は、一般的な量子状態を指します。一般的なプログラミング言語の変数とは異なり初期化はされているため、内部的には特定の状態を持ちます。

1-1-2. ブラベクトル(観測と確率)

ケットベクトルと対になり、観測確率の計算に使用されるのがブラベクトル (\(\langle\psi|\)) です。

  • 記号: \(\langle\) と \(\mid\) で囲まれます。
  • 意味: ケットベクトル \(|\psi\rangle\) の共役転置(行ベクトル)を意味します。
  • 名前の由来: 「ブラ」と「ケット」は、二つを組み合わせるとブラケット(Bracket: 括弧 \(\langle \mid \rangle\))になることに由来します。

1-1-3. ブラケットの結合(内積)

ブラベクトル \(\langle\phi|\) とケットベクトル \(|\psi\rangle\) を結合することで、内積(\(\langle\phi|\psi\rangle\))を計算できます。

  • \(\langle\phi|\psi\rangle\):これはスカラー(単なる数)となり、量子状態がどれだけ似ているかを示す値(確率振幅)が得られます。
  • 正規化条件: 同じ状態のブラケットを結合した \(\langle\psi|\psi\rangle\) は、確率の総和が 1 であるという条件(正規化条件)から、必ず 1 になります。

1-2. 単一量子ビットの状態表現

ケットベクトルやブラベクトルの基礎を学んだ上で、実際に量子ビットの状態をどのように記述するかを見ていきます。
量子ビットの状態は、基底状態重ね合わせ状態という2つの形式で表現されます。

量子状態は、単一量子ビット多量子ビットで記述形式が異なりますが、本項(1-2.)ではまず、単一量子ビットが取り得る状態に焦点を当てます。
多量子ビットの状態表現(形式3)は、1-3. で解説します。

単一量子ビットの状態は、以下の2つの形式で表現されます。

  1. 基底状態
  2. 重ね合わせ状態

これら2つの形式について順次説明していきます。

1-2-1. 基底状態の表記(形式1)

量子ビットが古典的な情報(0または1)と確定している状態を、基底状態として記述します。
これらは、量子状態を構成する最小単位です。

\(|0\rangle\) と \(|1\rangle\) は、全ての量子状態の土台となる固定された状態を指し示すため、量子情報科学における「固有名詞」として扱われます。

  • \(|0\rangle\): 量子ビットが0である状態(状態ベクトル \(\begin{pmatrix} 1 \\ 0 \end{pmatrix}\) に対応)。
  • \(|1\rangle\): 量子ビットが1である状態(状態ベクトル \(\begin{pmatrix} 0 \\ 1 \end{pmatrix}\) に対応)。

量子ビットは、古典ビットと異なり、0と1の状態を同時に持つため、その状態は2つの成分を持つ1列のベクトル(列ベクトル)で表現されます。

量子状態をベクトルで表現する際、上側の成分(1行目)を \(|0\rangle\) の係数に対応させ、下側の成分(2行目)を \(|1\rangle\) の係数に対応させるというルール(計算基底の定義)があります。

以上の理由から、
\(\begin{pmatrix} 1 \\ 0 \end{pmatrix}\) 👈これは「この量子ビットの状態は、上側の成分(\(|0\rangle\) の係数)が \(1\) であり、下側の成分(\(|1\rangle\) の係数)が \(0\) である」ことを意味します。つまり、100%の確率で \(0\) の状態にあることを示します。

1-2-2. 重ね合わせ状態の表記(形式2)

量子ビットが \(|0\rangle\) と \(|1\rangle\) の両方の状態を同時に持っている状態を、重ね合わせ状態として次の数式で記述します。

\(|\psi\rangle = \alpha|0\rangle + \beta|1\rangle\)

  • \(\alpha\) と \(\beta\): 確率振幅と呼ばれる複素数です。この値の大きさによって、測定時に \(|0\rangle\) や \(|1\rangle\) が得られる確率が決まります。
  • 正規化条件: 常に \(|\alpha|^2 + |\beta|^2 = 1\) を満たします。
  • 具体例:
    • \(|+\rangle\) 状態: \(|+\rangle = \frac{1}{\sqrt{2}}|0\rangle + \frac{1}{\sqrt{2}}|1\rangle\)
      この状態を測定すると、50%の確率で0、50%の確率で1が得られます。

確率振幅 \(\alpha\) や \(\beta\) が複素数であることは、量子力学の最大の特徴の一つです。
物理的な確率(\(0\) から \(1\) の実数)には直接現れない虚数(\(i\))の成分は、量子状態の「位相(Phase)」を記述します。
この位相は、量子ゲート操作や干渉効果(例:量子フーリエ変換)で非常に重要な役割を果たします。ただし、確率を計算する際は、その虚数成分を打ち消すために絶対値の2乗(\(|\alpha|^2\))を取る必要があります。

【重要な重ね合わせ状態(固有名詞)】

量子プログラミングで頻繁に使用される特定の重ね合わせ状態には、それぞれ固有名詞が割り当てられています。
ここでは主要な4種類を紹介します。

  • \(|+\rangle\) (プラス基底状態)
    • 表現: \(\frac{1}{\sqrt{2}}|0\rangle + \frac{1}{\sqrt{2}}|1\rangle\)
    • 用途: アダマールゲートで生成される、基本的な均等重ね合わせ。
  • \(|-\rangle\) (マイナス基底状態)
    • 表現: \(\frac{1}{\sqrt{2}}|0\rangle – \frac{1}{\sqrt{2}}|1\rangle\)
    • 用途: \(|+\rangle\) と直交する状態。位相反転テストなどに使用。
  • \(|i\rangle\) (虚数位相状態きょすういそうじょうたい)
    • 表現: \(\frac{1}{\sqrt{2}}|0\rangle + \frac{i}{\sqrt{2}}|1\rangle\)
    • 用途: 量子フーリエ変換など、複素数位相が重要な操作で使用。
  • \(|-i\rangle\) (負の虚数位相状態)
    • 表現: \(\frac{1}{\sqrt{2}}|0\rangle – \frac{i}{\sqrt{2}}|1\rangle\)
    • 用途: \(|i\rangle\) と対になる状態。

1-3. 多量子ビットの状態表現

量子プログラミングでは、単一量子ビットの操作に加えて、複数の量子ビットを同時に操作することで、初めて量子の特性(エンタングルメントなど)を活用できるようになります。

複数の量子ビットの状態をまとめて記述するためのルールは、以下の2つの形式に分けられます。

1-3-1. 多量子ビット表記のルール(形式3:テンソル積)

複数の量子ビットの状態は、それぞれの量子ビットの状態をテンソル積(\(\otimes\))で結合することで表現されます。

テンソル積とは、行列やベクトルの要素一つ一つに、別の行列やベクトル全体を掛け合わせるという特殊な掛け算です。

  • 2量子ビットの状態:
    • 量子ビット \(q_1\) が \(|a\rangle\)、 \(q_0\) が \(|b\rangle\) のとき、全体の状態は \(|a\rangle \otimes |b\rangle\) と記述されます。
    • 状態(ベクトル)の表記では、簡略化のためテンソル積の記号 \(\otimes\) は省略され、単純に隣り合わせに記述されます(例:\(|ab\rangle\))。ただし、ゲート(行列/演算子)の表記では省略されないことに注意してください。
  • 状態の順序:
    • Qiskitなどの多くのフレームワークでは、ビットの順序は通常 \(|q_{n-1} \dots q_1 q_0\rangle\)(\(q_0\)が最下位ビット)となります。したがって、\(|10\rangle\) は \(q_1=|1\rangle\) かつ \(q_0=|0\rangle\) の状態を指します。

ビット順序の流儀(リニアオーダーとリバースオーダー)

前述の通り、多くのフレームワーク(Qiskitなど)で採用されている \(|q_{n-1} \dots q_0\rangle\) の順序は、リバースオーダーと呼ばれ、古典的なビット表記の習慣(右側が最下位ビット \(q_0\))に従っています。

しかし、量子力学の教科書や一部の理論的な文脈では、これとは逆に左側を最下位ビット (\(q_0\))とするリニアオーダー \(|q_0 q_1 \dots q_{n-1}\rangle\) が採用されることがあります。

本記事では、プログラミング環境との整合性を重視し、リバースオーダー(右側が \(q_0\))を標準として解説を進めますが、異なる文献を参照する際は、この順序の違いに注意が必要です。

1-3-2. 多量子ビットの重ね合わせ(形式4)

単一量子ビットの状態と同様に、多量子ビットの状態も重ね合わせで記述されます。

\(|\psi\rangle = \)
\(\alpha_{00}|00\rangle + \alpha_{01}|01\rangle + \alpha_{10}|10\rangle + \alpha_{11}|11\rangle\)

  • 確率振幅: \(\alpha_{00}, \alpha_{01}, \alpha_{10}, \alpha_{11}\) がそれぞれの基底状態の確率振幅です。
  • 正規化条件: 常に \(|\alpha_{00}|^2 + |\alpha_{01}|^2 + |\alpha_{10}|^2 + |\alpha_{11}|^2 = 1\) を満たします。

【重要な多量子ビットの重ね合わせ状態(固有名詞)】

多量子ビット状態の中で最も重要であり、固有名詞が割り当てられているのがエンタングルメント(量子もつれ)状態です。
本リファレンスで、固有名詞として紹介する最後の4種類は、このベル状態(Bell States)です。

  • ベル状態(Bell States): 2量子ビットで可能な、最大のエンタングルメントを持つ4つの状態。
    • \(|\Phi^+\rangle = \frac{1}{\sqrt{2}}(|00\rangle + |11\rangle)\)
    • \(|\Psi^+\rangle = \frac{1}{\sqrt{2}}(|01\rangle + |10\rangle)\)
    • \(|\Phi^-\rangle = \frac{1}{\sqrt{2}}(|00\rangle – |11\rangle)\)
    • \(|\Psi^-\rangle = \frac{1}{\sqrt{2}}(|01\rangle – |10\rangle)\)

ベル状態(Bell States)の表記において \(\Phi\) (\(\text{Phi}\)) と \(\Psi\) (\(\text{Psi}\)) が使い分けられているのは、主に基底状態のパリティ(偶数性・奇数性)と量子ビットの状態の同期という2つの要素に基づいた慣習的な分類です。

これは、数学的な定義というよりも、量子情報科学における分類のしやすさを目的としています。

ルールは至ってシンプルで、\(\Phi\) と \(\Psi\) の分類は、2つの基底状態完全に同期しているか(\(|00\rangle\) と \(|11\rangle\))、または完全に反転しているか(\(|01\rangle\) と \(|10\rangle\))重ね合わせであるかによって決まります。

  • \(\Phi\) (\(\Phi^+, \Phi^-\)): \(|00\rangle\) と \(|11\rangle\) のペア(同じ状態)を含む。
  • \(\Psi\) (\(\Psi^+, \Psi^-\)): \(|01\rangle\) と \(|10\rangle\) のペア(異なる状態)を含む。

1-4. ブラベクトル表記(形式5)

これまでに学習したケットベクトル \(|\psi\rangle\) は量子状態そのものを表しますが、量子力学では観測(測定)の確率状態の内積を計算するために、ケットベクトルと対になるブラベクトル \(\langle\psi|\) を使用します。

1-4-1. ブラベクトル \(\langle\psi|\) の定義

ブラベクトル \(\langle\psi|\) は、ケットベクトル \(|\psi\rangle\) のエルミート共役(Hermitian Conjugate)を取ることで定義されます。

エルミート共役とは、行列やベクトルに対して行われる操作で、「共役転置 (Conjugate Transpose)」とも呼ばれます。

エルミート共役の操作は、以下の2つのステップで構成されます。

  • 転置 (Transpose)
    行列やベクトルの行と列を入れ替えます
    • ケットベクトル(列ベクトル)\(|\psi\rangle\) を、行ベクトル(ブラベクトル)\(\langle\psi|\) に変換します。
  • 複素共役 (Complex Conjugate)
    元の行列やベクトルの全ての成分の複素共役を取ります。複素共役 (\(\alpha^*\)) とは、成分に含まれる虚数部分の符号を反転させる操作です。
    • 例: 複素数 \(\alpha = a + bi\) の複素共役は \(\alpha^* = a – bi\) です。

\(\text{ケット}: |\psi\rangle = \begin{pmatrix} \alpha \\ \beta \end{pmatrix} \quad\)

\( \longrightarrow \quad \text{ブラ}: \langle\psi| = \begin{pmatrix} \alpha^* & \beta^* \end{pmatrix}\)

※ 式内で使用されているアスタリスク \(*\) は、「虚数部分の符号を反転させる」という操作を示す記号です。

1-4-2. ブラケットによる計算(内積)

ブラベクトル \(\langle\psi|\) とケットベクトル \(|\phi\rangle\) を結合すると、内積 \(\langle\psi|\phi\rangle\) となり、これは状態 \(\langle\psi|\) に状態 \(|\phi\rangle\) が含まれる確率振幅を意味するスカラー値(複素数)となります。

\(\langle\psi|\phi\rangle = \begin{pmatrix} \alpha^* & \beta^* \end{pmatrix} \begin{pmatrix} \gamma \\ \delta \end{pmatrix}\)
\( = \alpha^*\gamma + \beta^*\delta\)

  • 観測の確率: 量子状態 \(|\psi\rangle\) を観測して、ある状態 \(|0\rangle\) である確率 \(P(0)\) は、内積の絶対値の2乗で計算されます。

\(P(0) = |\langle 0|\psi\rangle|^2\)

1-4-3. ブラケットの基本的な計算規則

ケットとブラによる内積の計算においては、基底状態(\(|0\rangle\)と\(|1\rangle\))の正規直交性という以下の規則が適用されます。
この規則が、計算を成立させる数学的基盤です。極めて重要で、規則もシンプルなので、しっかりと理解・記憶しておきましょう。

  • 直交性: 異なる基底状態の内積は \(0\) になります。
    • \(\langle 0|1\rangle = \langle 1|0\rangle = 0\)
  • 正規性: 同じ基底状態の内積は \(1\) になります。
    • \(\langle 0|0\rangle = \langle 1|1\rangle = 1\)

1-5. 密度行列表記(形式6)

これまでの形式は「純粋状態」と呼ばれる、状態が完全に既知である場合を扱いましたが、密度行列「混合状態」を扱います。

1-5-1. 定義と必要性

密度行列 \(\rho\) は、外積 \(| \psi \rangle \langle \psi |\) の形式を用いて定義されます。

\(\rho = \sum_i p_i |\psi_i\rangle \langle \psi_i|\)

  • 混合状態: 状態 \(|\psi_i\rangle\) が確率 \(p_i\) で存在する場合(例:ノイズや不確実性を含む状態)を記述する際に不可欠です。
  • 純粋状態: 状態が完全に既知の場合、密度行列は \(\rho = |\psi\rangle \langle \psi|\) の単一の外積で表されます。

1-5-2. 測定確率との関係

密度行列 \(\rho\) を用いた測定確率 \(P(k)\) の計算は、量子測定を記述する最も厳密な方法章II 2-2.で説明するボルンの規則)として、以下の形式で記述されます。

\(P(k) = \mathrm{Tr}(\rho P_k)\)

  • \(\mathrm{Tr}\): トレース(行列の対角成分の和)を意味します。
  • \(P_k\): 基底状態 \(|k\rangle\) への射影演算子 \(P_k = |k\rangle \langle k|\) を意味します。

II. 測定の種類と解析の原理

前章「I. 量子状態の基本的な記述(ブラケット記法)」では、量子状態を記述するための5つの形式と、基礎となる固有名詞を網羅しました。
本章では、そのブラケット記法の知識を応用し、量子状態を観測した際に、どのようなルール(原理)で結果が決定され、その確率をどう解析するのかを解説します。

まず、測定の基本分類を理解した上で、最も重要なボルンの規則へと進みます。

2-1. 量子測定の基本的な種類

量子ビットの状態を読み出す操作である量子測定には、大きく分けて次の2種類があります。

  1. 基底測定(Projection Measurement):
    • 状態ベクトルを、定義された基底(例:\(|0\rangle, |1\rangle\))に射影することで行う測定です。
    • 量子コンピューティングで最も頻繁に使用される測定であり、単に「測定」という場合はこの「基底測定」を指す場合が多いです。
    • 本記事の後の解説(ボルンの規則など)は、この基底測定を前提とします。
  2. 一般化された測定(POVM: Positive Operator-Valued Measure):
    • 基底測定を特殊なケースとして含む、全ての量子測定を数学的に記述できる最も広い概念です。

2-2. ボルンの規則:測定確率の計算

本セクションでは、ボルンの規則について解説します。

ボルンの規則とは、ブラベクトル \(\langle\psi|\) を応用して基底測定を行ったとき、特定の測定結果が得られる確率を計算する基本的なルールです。

2-2-1. 規則の定義

量子状態 \(|\psi\rangle\) を測定したとき、特定の基底状態 \(|k\rangle\) (例: \(|0\rangle\) や \(|1\rangle\))が観測される確率 \(P(k)\) は、状態の内積 \(\langle k|\psi\rangle\) の絶対値の2乗に等しいと定義されます。

\(P(k) = |\langle k|\psi\rangle|^2\)

  • 内積(確率振幅): \(\langle k|\psi\rangle\) は、状態 \(|\psi\rangle\) が状態 \(|k\rangle\) を含む確率振幅と呼ばれ、複素数です。
  • 測定結果 \(k\) の意味: \(k\) は、測定によって確定した古典的なビット列の値を表します。
    • 単一量子ビットの場合、\(k\) は \(0\) または \(1\) です。
    • 多量子ビットの場合、 \(k\) は \(00\) 、\(10\)、\(01\)、\(11\) のいずれかの値となるビット列全体を指します。
    • 測定結果の構成要素として、\(0\) と \(1\) 以外の数値(例:\(2, 0.5\) など)が使われることはありません。
  • 絶対値の2乗: 確率 \(P(k)\) は常に実数で、 \(0 \le P(k) \le 1\) の範囲を取ります。

2-2-2. 計算例

最もシンプルな単一量子ビットの重ね合わせ状態 \(|\psi\rangle\) を例に、ボルンの規則を適用します。

\(|\psi\rangle = \alpha|0\rangle + \beta|1\rangle\)

\( \quad \left(|\alpha|^2 + |\beta|^2 = 1\right)\)

結果 \(0\) が得られる確率をボルンの規則で計算すると、次のとおりです。

ボルンの規則 \(P(0) = |\langle 0|\psi\rangle|^2\) に、状態 \(|\psi\rangle\) を代入します。

\(P(0) = \left| \langle 0| (\alpha|0\rangle + \beta|1\rangle) \right|^2\)

ブラベクトル \(\langle 0|\) を分配し、ブラケットの計算規則(章I 1-4-3.)を適用します。

\(\langle 0| (\alpha|0\rangle + \beta|1\rangle) = \alpha \langle 0|0\rangle + \beta \langle 0|1\rangle\)

  • \(\langle 0|0\rangle = 1\)(正規性)
  • \(\langle 0|1\rangle = 0\)(直交性)

したがって、残るのは \(\alpha\) の項のみになります。

\(P(0) = \left| \alpha(1) + \beta(0) \right|^2 = |\alpha|^2\)

続いて、結果 \(1\) が得られる確率をボルンの規則で計算すると、次のとおりです。

ボルンの規則 \(P(1) = |\langle 1|\psi\rangle|^2\) に代入します。

\(P(1) = \left| \langle 1| (\alpha|0\rangle + \beta|1\rangle) \right|^2\)

ブラベクトル \(\langle 1|\) を分配し、ブラケットの計算規則(章I 1-4-3.)を適用します。

\(\langle 1| (\alpha|0\rangle + \beta|1\rangle) = \alpha \langle 1|0\rangle + \beta \langle 1|1\rangle\)

  • \(\langle 1|0\rangle = 0\)(直交性)
  • \(\langle 1|1\rangle = 1\)(正規性)

したがって、残るのは \(\beta\) の項のみになります。

\(P(1) = \left| \alpha(0) + \beta(1) \right|^2 = |\beta|^2\)

2-3. 測定後の状態

ボルンの規則で「確率」を計算した後、実際に測定が行われた結果、量子状態がどのように変化するのかを解説します。

2-3-1. 量子状態の収縮(Collaps)

量子測定の最も重要な特徴は、重ね合わせの状態にある量子ビットが、測定が行われた瞬間に、観測された基底状態へと不可逆的に変化(収縮)することです。

不可逆性:

この収縮は、量子情報が古典情報(\(0\) または \(1\))に変換されるプロセスであり、元に戻すことはできません。

例えば、重ね合わせの状態 \(|\psi\rangle = \alpha|0\rangle + \beta|1\rangle\) を測定し、結果が \(0\) であると確定した場合、測定後の状態 \(|\psi’\rangle\) は、その観測された基底状態 \(|0\rangle\) へと変化します。

\(|\psi\rangle \to |0\rangle \quad \text{(測定結果 } 0 \text{のとき})\)

また、結果が \(1\) であると確定した場合、状態は \(|1\rangle\) へと変化します。

\(|\psi\rangle \to |1\rangle \quad \text{(測定結果 } 1 \text{のとき})\)

Note: より厳密な測定後の状態の定義について

本文で解説した「状態が \(|k\rangle\) に収縮する」という現象は、基底測定(章II 2-1.)という最もシンプルな測定に限定した場合の簡略的な説明です。

より高度な物理学では、測定後の状態は、一般化された測定(POVM)の枠組みにおいて、測定演算子 \(M_k\) を用いた以下の数式で定義されます。

\(|\psi’\rangle = \displaystyle\frac{M_k |\psi\rangle}{\sqrt{\langle \psi | M_k^\dagger M_k |\psi \rangle}}\)

  • \(M_k\): 測定結果 \(k\) に対応する測定演算子(Measurement Operator)です。
  • 分母: これは状態を正規化する役割を果たしており、実はボルンの規則 \(P(k)\) の平方根に等しくなります。

この数式は、基底測定だけでなく、部分的な情報しか得られない「弱測定」を含む全ての測定を記述するために使われますが、その詳細な解説は本記事の範囲を超えます。
この一般化された定義においても、基底測定は最もシンプルなケースとして内包されています。

まとめ

本記事では、量子プログラミングにおける基盤知識である量子状態のブラケット記法と、その最終目的である測定結果の解析について、完全リファレンスとして網羅的な解説を行いました。

ブラケット記法は、単なる数学的な記号ではなく、量子ゲートの動作原理や回路設計の意図を深く理解するための基礎的な言語です。

本記事で習得した知識を土台として、今後は「ブラケット記法を量子ゲートの作用として理解し、多量子ビット回路の設計に応用する」という、より実践的なステップに進むことを推奨します。

コメント

タイトルとURLをコピーしました