二項積

多重線型代数学における二項積（にこうせき、英: dyadic）あるいは二項テンソル (dyadic tensor) は、二つのベクトルのある種の積として得られる二階テンソルである。二項積はしばしば二つのベクトルを併置することで表され、しかしその振舞いは行列に対応する法則に従う。二項積に関する用語や概念は今日では比較的時代遅れのものであるが、連続体力学や電磁気学などの物理学において引き続き用例がある。 二項積の記法を確立した最初の人はジョサイア・ウィラード・ギブスで1884年の事である。 （本項では、大文字太字は二項積、小文字太字はベクトルを表すものとする。別な表記法として二項積およびベクトルのそれぞれに二重および一重の上付きまたは下付きのバーを付けるものがある。） 二項積テンソル、単純二項積あるいは単に二項積 (dyad; ダイアド) は二つの（一般には複素係数の）ベクトルに二項積を施した結果として得られる二次の二階テンソルである。一般に二次のテンソルを総称して二項積(dyadic) と呼ぶ。 同じ積を表すのにいくつか用語法と記法が存在する: 二項積 (dyadic product) ベクトル a, b の二項積はこれらを併置した ab で表される。 外積（直積） (outer product) 列ベクトル a, b の外積は a ⊗ b あるいは ab⊤ で表される（"⊤" は転置である）。 テンソル積 (tensor product) ベクトル a, b のテンソル積は a ⊗ b で表される。 本項で扱う文脈においてこれらは互いに同じものを定める同義語であるが、テンソル積はより一般の対象に対してより抽象的な意味でも用いられることに注意すべきである。また「外積」(outer product) は全く別の概念である交叉積やより抽象的な楔積に対しても用いられる。 これらの語法の等価性を見るために、三次元のユークリッド空間を例に取ろう。i, j, k（あるいは e1, e2, e3）を基本ベクトルとして、二つのベクトル a = a 1 i + a 2 j + a 3 k , {\displaystyle \mathbf {a} =a_{1}\mathbf {i} +a_{2}\mathbf {j} +a_{3}\mathbf {k} ,} b = b 1 i + b 2 j + b 3 k {\displaystyle \mathbf {b} =b_{1}\mathbf {i} +b_{2}\mathbf {j} +b_{3}\mathbf {k} } を考える。a, b の二項積は「九元数の形」(nonion form) と呼ばれる和 a b = a 1 b 1 i i + a 1 b 2 i j + a 1 b 3 i k + a 2 b 1 j i + a 2 b 2 j j + a 2 b 3 j k + a 3 b 1 k i + a 3 b 2 k j + a 3 b 3 k k {\displaystyle {\begin{alignedat}{6}\mathbf {ab} =&&a_{1}b_{1}&\;\mathbf {ii} &{}+a_{1}b_{2}&\;\mathbf {ij} &{}+a_{1}b_{3}&\;\mathbf {ik} \\&&{}+a_{2}b_{1}&\;\mathbf {ji} &{}+a_{2}b_{2}&\;\mathbf {jj} &{}+a_{2}b_{3}&\;\mathbf {jk} \\&&{}+a_{3}b_{1}&\,\mathbf {ki} &{}+a_{3}b_{2}&\,\mathbf {kj} &{}+a_{3}b_{3}&\,\mathbf {kk} \end{alignedat}}} や、列ベクトルや行ベクトルの（ベクトルを成分とするような）拡張を考えることにより 3 × 3 行列 a b ≡ ( a 1 b 1 a 1 b 2 a 1 b 3 a 2 b 1 a 2 b 2 a 2 b 3 a 3 b 1 a 3 b 2 a 3 b 3 ) = ( a 1 a 2 a 3 ) ( b 1 b 2 b 3 ) ≡ a ⊗ b ≡ a b ⊤ {\displaystyle \mathbf {ab} \equiv {\begin{pmatrix}a_{1}b_{1}&a_{1}b_{2}&a_{1}b_{3}\\a_{2}b_{1}&a_{2}b_{2}&a_{2}b_{3}\\a_{3}b_{1}&a_{3}b_{2}&a_{3}b_{3}\end{pmatrix}}={\begin{pmatrix}a_{1}\\a_{2}\\a_{3}\end{pmatrix}}{\begin{pmatrix}b_{1}&b_{2}&b_{3}\end{pmatrix}}\equiv \mathbf {a} \otimes \mathbf {b} \equiv \mathbf {ab} ^{\top }} で表現することができる（これが a, b のテンソル積の結果と同じであることに注意せよ）。 単純二項積 (dyad) は上記の和の項あるいは行列の成分を言う。つまり基底ベクトルの併置に係数をかけたものである。 基本ベクトル i, j, k が i = e 1 = ( 1 0 0 ) , j = e 2 = ( 0 1 0 ) , k = e 3 = ( 0 0 1 ) {\displaystyle \mathbf {i} =\mathbf {e} _{1}={\begin{pmatrix}1\\0\\0\end{pmatrix}},\mathbf {j} =\mathbf {e} _{2}={\begin{pmatrix}0\\1\\0\end{pmatrix}},\mathbf {k} =\mathbf {e} _{3}={\begin{pmatrix}0\\0\\1\end{pmatrix}}} で表される（転置をとる流儀もある）のと同様に、基本二項積テンソルは i i = ( 1 0 0 0 0 0 0 0 0 ) , … j i = ( 0 0 0 1 0 0 0 0 0 ) , … j k = ( 0 0 0 0 0 1 0 0 0 ) , … {\displaystyle \mathbf {ii} ={\begin{pmatrix}1&0&0\\0&0&0\\0&0&0\end{pmatrix}},\ldots \mathbf {ji} ={\begin{pmatrix}0&0&0\\1&0&0\\0&0&0\end{pmatrix}},\ldots \mathbf {jk} ={\begin{pmatrix}0&0&0\\0&0&1\\0&0&0\end{pmatrix}},\ldots } のような表現を持つ。例えば: A = 2 i j + 3 2 j i − 8 π j k + 2 2 3 k k = 2 ( 0 1 0 0 0 0 0 0 0 ) + 3 2 ( 0 0 0 1 0 0 0 0 0 ) − 8 π ( 0 0 0 0 0 1 0 0 0 ) + 2 2 3 ( 0 0 0 0 0 0 0 0 1 ) = ( 0 2 0 3 / 2 0 − 8 π 0 0 2 2 3 ) {\displaystyle {\begin{aligned}\mathbf {A} &=2\mathbf {ij} +{\frac {\sqrt {3}}{2}}\mathbf {ji} -8\pi \mathbf {jk} +{\frac {2{\sqrt {2}}}{3}}\mathbf {kk} \\&=2{\begin{pmatrix}0&1&0\\0&0&0\\0&0&0\end{pmatrix}}+{\frac {\sqrt {3}}{2}}{\begin{pmatrix}0&0&0\\1&0&0\\0&0&0\end{pmatrix}}-8\pi {\begin{pmatrix}0&0&0\\0&0&1\\0&0&0\end{pmatrix}}+{\frac {2{\sqrt {2}}}{3}}{\begin{pmatrix}0&0&0\\0&0&0\\0&0&1\end{pmatrix}}\\&={\begin{pmatrix}0&2&0\\{\sqrt {3}}/2&0&-8\pi \\0&0&{\frac {2{\sqrt {2}}}{3}}\end{pmatrix}}\end{aligned}}} 3-個より少ない数の単純二項積の和に簡約することのできない二項積は完全 (complete) であると言う。このとき、成分ベクトルは平面的でない (non-coplanar)[疑問点 – ノート] see Chen (1983)。 三次元の場合を容易に N-次元に拡張できる。標準基底 ei (i = 1, 2, 3, …, N) で表した二つのベクトル a = ∑ i = 1 N a i e i = a 1 e 1 + a 2 e 2 + ⋯ a N e N {\displaystyle \mathbf {a} =\sum _{i=1}^{N}a_{i}\mathbf {e} _{i}=a_{1}\mathbf {e} _{1}+a_{2}\mathbf {e} _{2}+\cdots a_{N}\mathbf {e} _{N}} b = ∑ j = 1 N b j e j = b 1 e 1 + b 2 e 2 + ⋯ b N e N {\displaystyle \mathbf {b} =\sum _{j=1}^{N}b_{j}\mathbf {e} _{j}=b_{1}\mathbf {e} _{1}+b_{2}\mathbf {e} _{2}+\cdots b_{N}\mathbf {e} _{N}} に対して、これらの二項積 (dyadic product) は代数的な和 A = a b = ∑ j = 1 N ∑ i = 1 N a i b j e i e j . {\displaystyle \mathbf {A} =\mathbf {ab} =\sum _{j=1}^{N}\sum _{i=1}^{N}a_{i}b_{j}{\mathbf {e} }_{i}\mathbf {e} _{j}.} であり、行列の形に書けば ( a 1 a 2 ⋮ a N ) ( b 1 b 2 ⋯ b N ) = ( a 1 b 1 a 1 b 2 ⋯ a 1 b N a 2 b 1 a 2 b 2 ⋯ a 2 b N ⋮ ⋮ ⋱ ⋮ a N b 1 a N b 2 ⋯ a N b N ) {\displaystyle {\begin{pmatrix}a_{1}\\a_{2}\\\vdots \\a_{N}\end{pmatrix}}{\begin{pmatrix}b_{1}&b_{2}&\cdots &b_{N}\end{pmatrix}}={\begin{pmatrix}a_{1}b_{1}&a_{1}b_{2}&\cdots &a_{1}b_{N}\\a_{2}b_{1}&a_{2}b_{2}&\cdots &a_{2}b_{N}\\\vdots &\vdots &\ddots &\vdots \\a_{N}b_{1}&a_{N}b_{2}&\cdots &a_{N}b_{N}\end{pmatrix}}} となる。（二次テンソル冪 ∧2(V) の元という意味での）一般の二項積テンソル (dyadic) A は二項積多項式 (dyadic polynomial) とも呼ばれ、複数のベクトル ai, bj の単純二項積の線型和 A = ∑ i a i b i = a 1 b 1 + a 2 b 2 + a 3 b 3 + ⋯ {\displaystyle \mathbf {A} =\sum _{i}\mathbf {a} _{i}\mathbf {b} _{i}=\mathbf {a} _{1}\mathbf {b} _{1}+\mathbf {a} _{2}\mathbf {b} _{2}+\mathbf {a} _{3}\mathbf {b} _{3}+\dotsb } である。次元と同じ数 N-個より少ない数の単純二項積の和に簡約することのできない二項積は完全 (complete) であると言う。 二項積の定義から直接に以下の等式が成り立つことが分かる スカラー倍と両立する: ( α a ) b = a ( α b ) = α ( a b ) {\displaystyle (\alpha \mathbf {a} )\mathbf {b} =\mathbf {a} (\alpha \mathbf {b} )=\alpha (\mathbf {a} \mathbf {b} )} . (α は任意のスカラー) ベクトルの加法に対して分配的: a ( b + c ) = a b + a c , {\displaystyle \mathbf {a} (\mathbf {b} +\mathbf {c} )=\mathbf {ab} +\mathbf {ac} ,} ( a + b ) c = a c + b c . {\displaystyle (\mathbf {a} +\mathbf {b} )\mathbf {c} =\mathbf {ac} +\mathbf {bc} .} ベクトル同士の演算に基づいて、（結果がまた二項積となるように）ベクトルと二項積の間に四種類の積を構成できる。 二項積同士の積がまた二項積となるように五種類の演算を以下のように定義する。a, b, c, d はベクトルとする。 一般二項積テンソル A = ∑ i a i b i , B = ∑ i c i d i {\displaystyle \mathbf {A} =\sum _{i}\mathbf {a} _{i}\mathbf {b} _{i},\quad \mathbf {B} =\sum _{i}\mathbf {c} _{i}\mathbf {d} _{i}} に対しては: ダブルドット積（二重点乗積）の定義には二通りあり、何れの意味で用いる規約になっているのかは文脈に注意すべきである。この二項積同士の積に対応する行列の演算はなく、このような定義を持ち出すことに疑問は無かろう。 通常のドット積（点乗積）が可換であるため、このダブルドット積（二重点乗積）もまたそうなる: A : B = B : A . {\displaystyle \mathbf {A} :\mathbf {B} =\mathbf {B} :\mathbf {A} .} ダブルドット積（二重点乗積）は転置に関して特別の性質を持つ: A : B ⊤ = A ⊤ : B . {\displaystyle \mathbf {A} :\mathbf {B} ^{\top }=\mathbf {A} ^{\top }:\mathbf {B} .} 他には: A : B = ( A ⋅ B ⊤ ) : I = ( B ⋅ A ⊤ ) : I . {\displaystyle \mathbf {A} :\mathbf {B} =(\mathbf {A} \cdot \mathbf {B} ^{\top }):\mathbf {I} =(\mathbf {B} \cdot \mathbf {A} ^{\top }):\mathbf {I} .} 任意の二つのベクトル a, b の二項積に対して、そのダブルクロス積（二重交叉平方、自身との二重交叉積）は必ず 0 になる: a b × × ⁡ a b = ( a × a ) ( b × b ) = 0. {\displaystyle \mathbf {ab} \mathop {_{\textstyle \times }} ^{\textstyle \times }\mathbf {ab} =(\mathbf {a} \times \mathbf {a} )(\mathbf {b} \times \mathbf {b} )=0.} しかし一般の二項積テンソルに対して、そのダブルクロス積（二重交叉平方）は一般には 0 でない。例えばどの二つも一致しないベクトルから得られる一般二項積 A = ∑ i = 1 3 a i b i {\displaystyle \mathbf {A} =\sum _{i=1}^{3}\mathbf {a} _{i}\mathbf {b} _{i}} に対して、積（平方） A × × ⁡ A = 2 [ ( a 1 × a 2 ) ( b 1 × b 2 ) + ( a 2 × a 3 ) ( b 2 × b 3 ) + ( a 3 × a 1 ) ( b 3 × b 1 ) ] {\displaystyle \mathbf {A} \mathop {_{\textstyle \times }} ^{\textstyle \times }\mathbf {A} =2[(\mathbf {a} _{1}\times \mathbf {a} _{2})(\mathbf {b} _{1}\times \mathbf {b} _{2})+(\mathbf {a} _{2}\times \mathbf {a} _{3})(\mathbf {b} _{2}\times \mathbf {b} _{3})+(\mathbf {a} _{3}\times \mathbf {a} _{1})(\mathbf {b} _{3}\times \mathbf {b} _{1})]} は 0 でない。 二項積を基本ベクトルで展開してベクトルの併置を点乗積に置き換えれば、蹟 (spur) あるいは展開因子 (expansion factor) が得られる。 | A | = A 11 i ⋅ i + A 12 i ⋅ j + A 13 i ⋅ k + A 21 j ⋅ i + A 22 j ⋅ j + A 23 j ⋅ k + A 31 k ⋅ i + A 32 k ⋅ j + A 33 k ⋅ k = A 11 + A 22 + A 33 . {\displaystyle {\begin{aligned}|\mathbf {A} |&=\quad A_{11}\,\mathbf {i\cdot i} +A_{12}\,\mathbf {i\cdot j} +A_{13}\,\mathbf {i\cdot k} \\&\quad +A_{21}\,\mathbf {j\cdot i} +A_{22}\,\mathbf {j\cdot j} +A_{23}\,\mathbf {j\cdot k} \\&\quad +A_{31}\mathbf {k\cdot i} +A_{32}\mathbf {k\cdot j} +A_{33}\mathbf {k\cdot k} \\&=A_{11}+A_{22}+A_{33}.\end{aligned}}} この二項積の縮約をアインシュタインの和の規約に従って添字記法で書けば | A | = A i i . {\displaystyle |\mathbf {A} |=A_{i}{}^{i}.} また三次元の場合に限られるが、併置をクロス積（交叉積）で置き換えれば回転因子 (rotation factor) が得られる: ⟨ A ⟩ = A 11 i × i + A 12 i × j + A 31 i × k + A 21 j × i + A 22 j × j + A 23 j × k + A 31 k × i + A 32 k × j + A 33 k × k = A 12 k − A 31 j − A 21 k + A 23 i + A 31 j − A 32 i = ( A 23 − A 32 ) i + ( A 31 − A 13 ) j + ( A 12 − A 21 ) k . {\displaystyle {\begin{aligned}\langle \mathbf {A} \rangle &=\quad A_{11}\,\mathbf {i} \times \mathbf {i} +A_{12}\,\mathbf {i} \times \mathbf {j} +A_{31}\,\mathbf {i} \times \mathbf {k} \\&\quad +A_{21}\,\mathbf {j} \times \mathbf {i} +A_{22}\,\mathbf {j} \times \mathbf {j} +A_{23}\,\mathbf {j} \times \mathbf {k} \\&\quad +A_{31}\mathbf {k} \times \mathbf {i} +A_{32}\mathbf {k} \times \mathbf {j} +A_{33}\mathbf {k} \times \mathbf {k} \\&=\quad A_{12}\mathbf {k} -A_{31}\mathbf {j} -A_{21}\mathbf {k} \\&\quad +A_{23}\,\mathbf {i} \,+A_{31}\mathbf {j} -A_{32}\mathbf {i} \\&=(A_{23}-A_{32})\mathbf {i} +(A_{31}-A_{13})\mathbf {j} +(A_{12}-A_{21})\mathbf {k} .\end{aligned}}} A のこの縮約をレヴィ–チヴィタテンソルで書けば: ⟨ A ⟩ = ϵ i j k A j k . {\displaystyle \langle \mathbf {A} \rangle ={\epsilon _{i}}^{jk}A_{jk}.} 単位二項積 (Unit dyadic) すなわち任意のベクトル a に対して以下を満たす二項積 I が存在する: I ⋅ a = a ⋅ I = a . {\displaystyle \mathbf {I} \cdot \mathbf {a} =\mathbf {a} \cdot \mathbf {I} =\mathbf {a} .} 三次元の場合に、基底ベクトル a, b, c およびその逆ベクトル ˆa, ˆb, ˆc を用いれば単位二項積は I = a a