ベクトル同士の「かけ算」には複数の種類があり、それぞれ異なる記号で表記されます。内積(ドット積)は2つのベクトルの「類似度」を測る基本的な道具で、機械学習のコサイン類似度や量子力学の遷移振幅など、応用範囲は極めて広いです。外積(クロス積)は3次元空間でのトルクや角運動量の計算に欠かせません。テンソル積は量子力学の合成系や有限要素法で登場します。
これらの積をLaTeXで正しく書き分けることは、理工系の文書作成において重要なスキルです。
本記事の内容
- 内積(ドット積)の表記法
- 角括弧記法($\langle \cdot, \cdot \rangle$)
- 外積(クロス積)の表記法
- テンソル積の表記法
- ディラックのブラケット記法
前提知識
この記事を読む前に、以下の記事を読んでおくと理解が深まります。
- ベクトルの太字・矢印記号をLaTeXで書く — ベクトルの表記法
- 行列をLaTeXで書く方法を徹底解説 — 行列式による外積の表現
内積(ドット積)
内積とは
内積は2つのベクトルの間の「近さ」や「方向の一致度」を測るスカラー量です。日常のイメージで言えば、力のベクトルと移動のベクトルの内積が「仕事」(エネルギー)になります。力が移動方向に沿っているほど仕事が大きく、直交していると仕事は0です。
ドット記号 \cdot
最も一般的な内積の表記は、中央の点(ドット)を使います。
$$ \bm{a} \cdot \bm{b} $$
$$
\bm{a} \cdot \bm{b}
$$
\cdot で中央の点を出力します。この表記は物理学や工学で広く使われています。
成分表示
$$ \bm{a} \cdot \bm{b} = \sum_{i=1}^{n} a_i b_i = a_1 b_1 + a_2 b_2 + \cdots + a_n b_n $$
$$
\bm{a} \cdot \bm{b} = \sum_{i=1}^{n} a_i b_i
$$
行列表記
内積は行列の積としても書けます。
$$ \bm{a} \cdot \bm{b} = \bm{a}^\mathrm{T} \bm{b} $$
$$
\bm{a} \cdot \bm{b} = \bm{a}^\mathrm{T} \bm{b}
$$
$\bm{a}^\mathrm{T}$ は行ベクトル(1行$n$列)、$\bm{b}$ は列ベクトル($n$行1列)なので、積の結果はスカラー(1行1列)になります。
幾何学的な表現
$$ \bm{a} \cdot \bm{b} = \|\bm{a}\| \|\bm{b}\| \cos\theta $$
$$
\bm{a} \cdot \bm{b} = \|\bm{a}\| \|\bm{b}\| \cos\theta
$$
$\theta$ は2つのベクトルのなす角度です。この式から、直交するベクトル($\theta = 90°$)の内積は $\cos 90° = 0$ であることがわかります。
内積のドット記法を理解しました。次に、数学や物理学で使われる角括弧記法を見ていきましょう。
角括弧記法
\langle と \rangle
数学では内積を角括弧 $\langle \cdot, \cdot \rangle$ で表すことがよくあります。関数解析や線形代数の教科書ではこの記法が標準的です。
$$ \langle \bm{a}, \bm{b} \rangle $$
$$
\langle \bm{a}, \bm{b} \rangle
$$
\langle で左の山括弧 $\langle$、\rangle で右の山括弧 $\rangle$ を出力します。
なぜ角括弧を使うか
ドット記法 $\bm{a} \cdot \bm{b}$ は見た目が簡潔ですが、抽象的な内積空間では「内積がどの空間のものか」を明示したい場合があります。
$$ \langle f, g \rangle_{L^2} = \int_a^b f(x) g(x) \, dx $$
$$
\langle f, g \rangle_{L^2} = \int_a^b f(x) g(x) \, dx
$$
下付き文字 $L^2$ で「$L^2$ 空間の内積」であることを明示しています。
重み付き内積
$$ \langle \bm{a}, \bm{b} \rangle_{\bm{W}} = \bm{a}^\mathrm{T} \bm{W} \bm{b} $$
$$
\langle \bm{a}, \bm{b} \rangle_{\bm{W}} = \bm{a}^\mathrm{T} \bm{W} \bm{b}
$$
重み行列 $\bm{W}$ による内積です。マハラノビス距離の計算で使われます。
エルミート内積
複素ベクトル空間のエルミート内積では、第1引数に共役をとります。
$$ \langle \bm{u}, \bm{v} \rangle = \sum_{i=1}^{n} \bar{u}_i v_i = \bm{u}^\dagger \bm{v} $$
$$
\langle \bm{u}, \bm{v} \rangle = \sum_{i=1}^{n} \bar{u}_i v_i = \bm{u}^\dagger \bm{v}
$$
$\bar{u}_i$ は複素共役、$\bm{u}^\dagger$ はエルミート転置です。
サイズ調整
内容が大きい場合は \left\langle と \right\rangle でサイズを自動調整します。
$$ \left\langle \frac{\partial f}{\partial x}, \frac{\partial g}{\partial x} \right\rangle $$
$$
\left\langle \frac{\partial f}{\partial x}, \frac{\partial g}{\partial x} \right\rangle
$$
角括弧記法の書き方を理解しました。次に、3次元空間に固有の外積(クロス積)の書き方を見ていきましょう。
外積(クロス積)
外積とは
外積は3次元空間で定義される演算で、2つのベクトルに直交する新しいベクトルを生成します。トルク(力のモーメント)や角運動量の計算で欠かせません。
書き方
$$ \bm{a} \times \bm{b} $$
$$
\bm{a} \times \bm{b}
$$
\times でクロス記号 $\times$ を出力します。
行列式による定義
$$ \bm{a} \times \bm{b} = \begin{vmatrix} \bm{e}_x & \bm{e}_y & \bm{e}_z \\ a_x & a_y & a_z \\ b_x & b_y & b_z \end{vmatrix} $$
$$
\bm{a} \times \bm{b} = \begin{vmatrix}
\bm{e}_x & \bm{e}_y & \bm{e}_z \\
a_x & a_y & a_z \\
b_x & b_y & b_z
\end{vmatrix}
$$
成分表示
$$ \bm{a} \times \bm{b} = \begin{pmatrix} a_y b_z – a_z b_y \\ a_z b_x – a_x b_z \\ a_x b_y – a_y b_x \end{pmatrix} $$
$$
\bm{a} \times \bm{b} = \begin{pmatrix}
a_y b_z - a_z b_y \\
a_z b_x - a_x b_z \\
a_x b_y - a_y b_x
\end{pmatrix}
$$
幾何学的な大きさ
$$ \|\bm{a} \times \bm{b}\| = \|\bm{a}\| \|\bm{b}\| \sin\theta $$
$$
\|\bm{a} \times \bm{b}\| = \|\bm{a}\| \|\bm{b}\| \sin\theta
$$
外積の大きさは、2つのベクトルが張る平行四辺形の面積に等しくなります。
反交換性
$$ \bm{a} \times \bm{b} = -\bm{b} \times \bm{a} $$
外積は交換法則が成り立たず、順序を入れ替えると符号が反転します。
物理学での応用:ローレンツ力
$$ \bm{F} = q(\bm{E} + \bm{v} \times \bm{B}) $$
$$
\bm{F} = q(\bm{E} + \bm{v} \times \bm{B})
$$
荷電粒子に働くローレンツ力です。速度 $\bm{v}$ と磁場 $\bm{B}$ の外積が磁気力を表します。
外積の書き方を理解しました。次に、テンソル積と関連する積の書き方を見ていきましょう。
テンソル積とその他の積
テンソル積(クロネッカー積)
テンソル積は \otimes で表します。量子力学の複合系や有限要素法で登場します。
$$ \bm{a} \otimes \bm{b} $$
$$
\bm{a} \otimes \bm{b}
$$
2つのベクトルのテンソル積は行列になります。
$$ \bm{a} \otimes \bm{b} = \bm{a} \bm{b}^\mathrm{T} = \begin{pmatrix} a_1 b_1 & a_1 b_2 \\ a_2 b_1 & a_2 b_2 \end{pmatrix} $$
$$
\bm{a} \otimes \bm{b} = \bm{a} \bm{b}^\mathrm{T}
$$
ウェッジ積(外積代数)
微分形式で使われるウェッジ積は \wedge で表します。
$$ d\bm{x} \wedge d\bm{y} $$
$$
d\bm{x} \wedge d\bm{y}
$$
\wedge で $\wedge$ 記号を出力します。
アダマール積(要素ごとの積)
行列やベクトルの要素ごとの積は \circ や \odot で表します。
$$ \bm{A} \circ \bm{B}, \quad \bm{A} \odot \bm{B} $$
$$
\bm{A} \circ \bm{B}, \quad \bm{A} \odot \bm{B}
$$
ニューラルネットワークのゲート機構(LSTMなど)でアダマール積が使われます。
スカラー三重積
3つのベクトルのスカラー三重積は次のように書きます。
$$ \bm{a} \cdot (\bm{b} \times \bm{c}) = \begin{vmatrix} a_x & a_y & a_z \\ b_x & b_y & b_z \\ c_x & c_y & c_z \end{vmatrix} $$
これは3つのベクトルが張る平行六面体の体積に等しい値です。
各種の積の書き方を紹介しました。次に、量子力学で使われるブラケット記法を見ていきましょう。
ディラックのブラケット記法
ブラケット記法とは
量子力学では、ディラック(Dirac)が考案した「ブラ」と「ケット」を使った独特の記法で内積を表現します。抽象的な状態ベクトルと内積を簡潔に書くための体系です。
ケットベクトル
$$ |\psi\rangle, \quad |0\rangle, \quad |n\rangle $$
$$
|\psi\rangle, \quad |0\rangle, \quad |n\rangle
$$
| と \rangle で「ケット」(ket)を作ります。
ブラベクトル
$$ \langle\psi|, \quad \langle 0|, \quad \langle n| $$
$$
\langle\psi|, \quad \langle 0|, \quad \langle n|
$$
\langle と | で「ブラ」(bra)を作ります。
ブラケット(内積)
$$ \langle\phi|\psi\rangle $$
$$
\langle\phi|\psi\rangle
$$
ブラとケットを組み合わせた $\langle\phi|\psi\rangle$ が内積を表します。これが「ブラケット」(bracket)の名前の由来です。
期待値
$$ \langle\psi|\hat{A}|\psi\rangle $$
$$
\langle\psi|\hat{A}|\psi\rangle
$$
演算子 $\hat{A}$ の量子力学的期待値です。
射影演算子
$$ \hat{P} = |\psi\rangle\langle\psi| $$
$$
\hat{P} = |\psi\rangle\langle\psi|
$$
ケットとブラの積(外積)は射影演算子になります。
LaTeX vs KaTeX の注意点
| コマンド | KaTeX対応 | 備考 |
|---|---|---|
\cdot |
対応 | ドット積 |
\times |
対応 | クロス積 |
\otimes |
対応 | テンソル積 |
\wedge |
対応 | ウェッジ積 |
\circ |
対応 | アダマール積 |
\odot |
対応 | アダマール積 |
\langle, \rangle |
対応 | 角括弧 |
すべてのコマンドがKaTeXでサポートされています。
よくある間違いとTips
間違い1:内積と乗算の区別
% ドット積(内積)
$\bm{a} \cdot \bm{b}$
% スカラーの乗算
$a \cdot b$ または $ab$
ベクトル同士では $\cdot$ は内積、スカラー同士では通常の乗算を意味します。
間違い2:< > を山括弧に使う
% NG: 不等号として解釈される
$<\bm{a}, \bm{b}>$
% OK: 専用コマンド
$\langle \bm{a}, \bm{b} \rangle$
Tips:コサイン類似度
機械学習で頻出するコサイン類似度は内積で定義されます。
$$ \cos\theta = \frac{\bm{a} \cdot \bm{b}}{\|\bm{a}\| \|\bm{b}\|} = \frac{\langle \bm{a}, \bm{b} \rangle}{\|\bm{a}\| \|\bm{b}\|} $$
まとめ
本記事では、LaTeXで内積・外積・テンソル積を書く方法を解説しました。
- 内積:
\cdot(ドット)または\langle...\rangle(角括弧) - 外積:
\times(クロス記号) - テンソル積:
\otimes - ウェッジ積:
\wedge - アダマール積:
\circまたは\odot - ブラケット記法:
\langle\phi|\psi\rangle
ベクトルの積の書き方は分野によって異なるため、適切な記法を選ぶことが大切です。
次のステップとして、以下の記事も参考にしてください。
- ベクトルの太字・矢印記号をLaTeXで書く — ベクトルの表記法
- ノルム・絶対値をLaTeXで書く — 内積とノルムの関係
- 行列をLaTeXで書く方法を徹底解説 — 外積の行列式表現