コーシー・ビネの公式
代数学におけるコーシー・ビネの公式 (こーしー・びねのこうしき、Cauchy–Binet formula)、あるいは、コーシー・ビネの定理、コーシー・ビネの展開とは、ジャック・フィリップ・マリー・ビネおよび オーギュスタン=ルイ・コーシーに由来する恒等式で、2つの行列の積から作られる正方行列の行列式を、元の行列から取り出せる最大の小行列式の積の和で表せるというものであり、行列の要素は実数や複素数だけでなく可換環としても成立する。
n を自然数とし、集合 1, …, n を [n ] と表記する。
m を非負の整数として、A をm ×n の行列、B をn ×m の行列とする。
S を要素数(|S| = )m の [n ]の部分集合とし、
AS をA のn 個の列からS に含まれる添字の列を取り出して得られたm ×m 行列、
BS をB のn 個の行からS に含まれる添字の行を取り出して得られたm ×m 行列とする。
m ×m 行列である積AB の行列式は
\det(AB) = \textstyle\sum\limits_{\scriptstyle S\subset[n]\atop\scriptstyle|S|=m} \det(A_S)\det(B^S)
で表せる。ただし、和において、S は{1,...,n } の要素数m の部分集合のすべてを取るとする。なお、m > n の場合は右辺は0である。
A:=\begin{pmatrix}
a_{1,1} &\cdots &a_{1,m} &\cdots &a_{1,n} \\
\vdots  &\ddots &\vdots  &\ddots &\vdots  \\
a_{m,1} &\cdots &a_{m,m} &\cdots &a_{m,n}
\end{pmatrix}, \quad B:= \begin{pmatrix}
b_{1,1} &\cdots &b_{1,m} \\
\vdots  &\ddots &\vdots  \\
b_{m,1} &\cdots &b_{m,m} \\
\vdots  &\ddots &\vdots  \\
b_{n,1} &\cdots &b_{n,m}
\end{pmatrix}
に対して、公式は
\begin{align}
\begin{vmatrix}
\sum\limits_{k=1}^n a_{1,k} b_{k,1} &\cdots &\sum\limits_{k=1}^n a_{1,k} b_{k,m} \\
\vdots                              &\ddots &\vdots \\
\sum\limits_{k=1}^n a_{m,k} b_{k,1} & \cdots & \sum\limits_{k=1}^n a_{m,k} b_{k,m}
\end{vmatrix}
&=\textstyle\sum\limits_{1\le k_1 < \cdots < k_m \le n} \begin{vmatrix}
a_{1,k_1} &\cdots &a_{1,k_m} \\
\vdots    &\ddots &\vdots    \\
a_{m,k_1} &\cdots &a_{m,k_m}
\end{vmatrix} \begin{vmatrix}
b_{k_1,1} &\cdots &b_{k_1,m} \\
\vdots    &\ddots &\vdots    \\
b_{k_m,1} &\cdots &b_{k_m,m}
\end{vmatrix}
\end{align}
と表現できる。ただし、右辺の総和において、1\le k_1 < \cdots < k_m \le n を満たす整数の組 \{k_1, k_2, \cdots, k_m\} の全てに対して和を取るとする。なお、m > n の場合は右辺は 0 である。
B\begin{pmatrix}
k_1 &\cdots &k_m \\
1   &\cdots &m
\end{pmatrix} \equiv \begin{vmatrix}
b_{k_1,1} &\cdots &b_{k_1,m} \\
\vdots    &\ddots & \vdots   \\
b_{k_m,1} &\cdots &b_{k_m,m}
\end{vmatrix}
(AB) \begin{pmatrix}
1 &\cdots &m \\
1 &\cdots &m
\end{pmatrix} = \textstyle\sum\limits_{1\le k_1 < \cdots < k_m \le n} A \begin{pmatrix}
1   &\cdots &m \\
k_1 &\cdots &k_m
\end{pmatrix} B \begin{pmatrix}
k_1 &\cdots &k_m \\
1   &\cdots &m
\end{pmatrix}
となる。ただし、右辺の総和において、1\le k_1 < \cdots < k_m \le n を満たす整数の組\{k_1, k_2, \cdots, k_m\} の全てに対して和を取るとする。なお、m > n の場合は右辺は 0 である。
\begin{align}
\det(AB) &= \begin{vmatrix}
\sum\limits_{p_1=1}^n a_{1,p_1} b_{p_1,1} &\cdots &\sum\limits_{p_m=1}^n a_{1,p_m} b_{p_m,m} \\
\vdots &\ddots &\vdots \\
\sum\limits_{p_1=1}^n a_{m,p_1} b_{p_1,1} &\cdots &\sum\limits_{p_m=1}^n a_{m,p_m} b_{p_m,m}
\end{vmatrix} \\
&= \textstyle\sum\limits_{p_1=1}^n \cdots \sum\limits_{p_m=1}^n \begin{vmatrix}
a_{1,p_1} &\cdots &a_{1,p_m} \\
\vdots    &\ddots &\vdots \\
a_{m,p_1} &\cdots &a_{m,p_m}
\end{vmatrix} \, b_{p_1,1} \cdots b_{p_m,m} \\
&= \textstyle\sum\limits_{p:[m]\to[n]} A \begin{pmatrix}
1    &\cdots &m \\
p(1) &\cdots &p(m)
\end{pmatrix}
b_{p(1),1} \cdots b_{p(m),m}
\end{align}
が導かれる。最後の式の p は 1, …, m から 1, …, n への写像である。
行列式の反対称性によりp が単射の場合のみ行列式は非零なので、p(i) = k(π(i))と置き換えられる。ここで、置換 π : [m ]→[m ] はm 次の対称群  \mathfrak{S}_m  の元であり、k :[m ]→[n ] は i < j ⇒ k(i) < k(j) を満たす関数である。これより
\begin{align}
\det (AB)
&= \sum_{\pi\in\mathfrak{S}_m}\sum_{k:[m]\to[n]\atop i<j \Rightarrow k(i)<k(j)}
A \begin{pmatrix}
1 &\cdots & m   \\
k(\pi(1)) &\cdots &k(\pi(m))
\end{pmatrix} b_{k(\pi(1)),1} \cdots b_{k(\pi(m)),m} \\
&= \sum_{\pi\in\mathfrak{S}_m} \sum_{k:[m]\to[n]\atop i<j \Rightarrow k(i)<k(j)}
\sgn(\pi)~
A \begin{pmatrix}
1     &\cdots &m \\
k(1) &\cdots &k(m)
\end{pmatrix} b_{k(\pi(1)),1} \cdots b_{k(\pi(m)),m} \\
&= \sum_{k:[m]\to[n]\atop i<j \Rightarrow k(i)<k(j)} A \begin{pmatrix}
1    &\cdots &m \\
k(1) &\cdots &k(m)
\end{pmatrix} B \begin{pmatrix}
k(1) &\cdots &k(m) \\
1    &\cdots &m
\end{pmatrix} \\
&= \sum_{1\le k_1 < \cdots < k_m \le n}
A \begin{pmatrix}
1   &\cdots &m \\
k_1 &\cdots &k_m
\end{pmatrix} B \begin{pmatrix}
k_1 &\cdots &k_m \\
1   &\cdots &m
\end{pmatrix}
\end{align}
が成り立つ。なお、sgn(π ) は置換π の符号であり、行列式の反対称性
A \begin{pmatrix}
1         &\cdots &m \\
k(\pi(1)) &\cdots &k(\pi(m))
\end{pmatrix} =
\sgn(\pi)~ A \begin{pmatrix}
1    &\cdots &m \\
k(1) &\cdots &k(m)
\end{pmatrix}
および、
B \begin{pmatrix}
k(1) &\cdots &k(m) \\
1    &\cdots &m
\end{pmatrix} = \sum_{\pi\in\mathfrak{S}_m} \sgn(\pi)~b_{k(\pi(1)),1} \cdots b_{k(\pi(m)),m}
を用いた。
(1) m = 1, n = 3 とし、行列を
A = \begin{pmatrix}
1& 1&  2
\end{pmatrix}
および B = \begin{pmatrix}
1\\
3\\
\end{pmatrix}
とする。AB =\begin{pmatrix}4\end{pmatrix}であり、S=\{1\},\{2\},\{3\}であるから、
\begin{align}
&\det(AB) = 4\\
& \sum_{\scriptstyle S\subset[n]\atop\scriptstyle|S|=m} \det(A_S)\det(B^S)
=\det(1)
\cdot
\det(1)
+
\det(1)
\cdot
\det(3)
+
\det(2)
\cdot
\det(0)
=4.\\
\end{align}
となる。
(2) m = 2, n = 3 とし、行列を
A = \begin{pmatrix}
1& 1&  2\\
3& 1& -1\\
\end{pmatrix}
および B = \begin{pmatrix}
1& 1\\
3& 1\\
0& 2
\end{pmatrix}
とする。AB =\begin{pmatrix}4&6\\6&2\end{pmatrix}であり、S=\{1,2\},\{2,3\},\{1,3\}であるから、
\begin{align}
&\det(AB) =\left|\begin{matrix}
4&6\\6&2
\end{matrix}\right| =-28\\
& \sum_{\scriptstyle S\subset[n]\atop\scriptstyle|S|=m} \det(A_S)\det(B^S)
=\left|\begin{matrix}1&1\\3&1\end{matrix}\right|
\cdot
\left|\begin{matrix}1&1\\3&1\end{matrix}\right|
+
\left|\begin{matrix}1&2\\1&-1\end{matrix}\right|
\cdot
\left|\begin{matrix}3&1\\0&2\end{matrix}\right|
+
\left|\begin{matrix}1&2\\3&-1\end{matrix}\right|
\cdot
\left|\begin{matrix}1&1\\0&2\end{matrix}\right|\\
&\qquad\qquad= (-2)\times (-2) + (-3)\times6 + (-7)\times2 =-28.\\
\end{align}
となる。
(3) m = 3, n = 3 とし、行列を
A = \begin{pmatrix}
1& 1&  2\\
3& 1& -1\\
1& -1& 0\\
\end{pmatrix}
および B = \begin{pmatrix}
1& 1& 0\\
3& 1& 0\\
0& 2& 1
\end{pmatrix}
とする。AB =\begin{pmatrix}4&6&2\\6&2&-1\\-2&0&0\end{pmatrix}であり、S=\{1,2,3\}であるから、
\begin{align}
&\det(AB) =\left|\begin{matrix}
4&6&2\\6&2&-1\\-2&0&0
\end{matrix}\right| =20\\
& \sum_{\scriptstyle S\subset[n]\atop\scriptstyle|S|=m} \det(A_S)\det(B^S)
=\left|\begin{matrix}
1& 1&  2\\
3& 1& -1\\
1& -1& 0\\
\end{matrix}\right|
\left|\begin{matrix}
1& 1& 0\\
3& 1& 0\\
0& 2& 1
\end{matrix}\right|
= (-10)\times (-2)=20.\\
\end{align}
となる。
(4) m = 4, n = 3 とし、行列を
A = \begin{pmatrix}
1& 1&  2\\
3& 1& -1\\
1& -1& 0\\
1&  0& 0
\end{pmatrix}
および B = \begin{pmatrix}
1& 1& 0& 1\\
3& 1& 0& 0\\
0& 2& 1& 0
\end{pmatrix}
とする。AB =\begin{pmatrix}4&6&2&1\\6&2&-1&3\\-2&0&0&1\\1&1&0&1\end{pmatrix}であり、Sは存在しないから、
\begin{align}
&\det(AB) =\left|\begin{matrix}
4&6&2&1\\6&2&-1&3\\-2&0&0&1\\1&1&0&1
\end{matrix}\right| =0\\
& \sum_{\scriptstyle S\subset[n]\atop\scriptstyle|S|=m} \det(A_S)\det(B^S)
=0.\\
\end{align}
となる。
以上より、コーシー・ビネの公式が具体的な例で確認できる。
A \doteq \begin{pmatrix}
\delta^{i_1}_{1} & \cdots & \delta^{i_1}_{m} & \cdots & \delta^{i_1}_{n}\\
\vdots           & \ddots & \vdots           & \ddots & \vdots          \\
\delta^{i_m}_{1} & \cdots & \delta^{i_m}_{m} & \cdots & \delta^{i_m}_{n}
\end{pmatrix}
, \quad
B \doteq \begin{pmatrix}
\delta^{1}_{j_1} & \cdots & \delta^{1}_{j_m}\\
\vdots           & \ddots & \vdots          \\
\delta^{m}_{j_1} & \cdots & \delta^{m}_{j_m}\\
\vdots           & \ddots & \vdots          \\
\delta^{n}_{j_1} & \cdots & \delta^{n}_{j_m}
\end{pmatrix}
\quad (i_k \in [n], j_k \in [n] \mathrm{~for~} k \in [m])
とする。ただし、δはクロネッカーのデルタ
\delta^{\mu}_{\nu} = \begin{cases} 1 & \quad (\mu=\nu)\\ 0 & \quad (\mu\ne\nu) \end{cases}
である。
これをコーシー・ビネの公式に代入し、一般化されたクロネッカーのデルタ
\begin{align}
\delta^{i_1 \cdots i_m}_{j_1 \cdots j_m}
&\equiv
\begin{vmatrix}
\delta^{i_1}_{j_1} & \cdots & \delta^{i_1}_{j_m}\\
\vdots             & \ddots & \vdots            \\
\delta^{i_m}_{j_1} & \cdots & \delta^{i_m}_{j_m}
\end{vmatrix}
\end{align}
を使えば、
\begin{align}
\delta^{i_1 \cdots i_m}_{j_1 \cdots j_m}
&=
\sum_{1\le k_1 < \cdots < k_m \le n}
\delta^{i_1 \cdots i_m}_{k_1 \cdots k_m}
\delta^{k_1 \cdots k_m}_{j_1 \cdots j_m}
\quad (i_p \in [n], j_p \in [n] \mathrm{~for~} p \in [m])
\end{align}
が得られる。逆にこの式からコーシー・ビネの公式を導くこともできる。
\begin{align}
\delta^{i}_{j}&=
\sum_{k=1}^{n}
\delta^{i}_{k}
\delta^{k}_{j}
\quad (i \in [n], j \in [n])
\end{align}
の一般化である。
m >n の場合 1≦k1< … <km≦n となる整数の組 {ki (i=1,…,m )} は存在しないから、公式の右辺は0となり、よって、det(AB )=0 が得られる。実際、A,B の階数はこの場合高々n だから、 m ×m 行列 AB の階数も高々n (<m )であるので、その行列式は0になる。
m = n のとき、A と B はともに正方行列になる。 1≦k1< … <km≦n となる整数の組 {ki (i=1,…,m )} は [n ] と等しいから、公式は
(AB) \begin{pmatrix} 1 & \cdots & m \\ 1 & \cdots & m \end{pmatrix}
=
A    \begin{pmatrix} 1 & \cdots & m \\ 1 & \cdots & n \end{pmatrix}
B    \begin{pmatrix} 1 & \cdots & n \\ 1 & \cdots & m \end{pmatrix}
すなわち det(AB )=det(A )det(B ) となる。
m = 0 のとき、 A と B そして AB は空行列 (ただし、n > 0 なら行列の型は異なる)。空行列の行列式は定義により1だから、公式は 1 = 1 を述べているに過ぎない。
m = 1 のとき、公式は \textstyle\det(\sum_{j=1}^nA_{1,j}B_{j,1})=\sum_{k=1}^n\det(A^{1}_{k})\det(B^{k}_{1}) となるが、1×1行列 A に対して det(A )=A だから、自明の式を述べているに過ぎない。
m = 2 のとき、非自明な公式を与える最小の m であり、そのときの公式
\begin{align}
\begin{vmatrix}
\sum_{k=1}^{n}a^{1}_{k}b^{k}_{1} & \sum_{k=1}^{n}a^{1}_{k}b^{k}_{2}\\
\sum_{k=1}^{n}a^{2}_{k}b^{k}_{1} & \sum_{k=1}^{n}a^{2}_{k}b^{k}_{2}
\end{vmatrix}
&=
\sum_{1\le k_1 < k_2 \le n}
\begin{vmatrix}
a^{1}_{k_1}& a^{1}_{k_2}\\
a^{2}_{k_1}& a^{2}_{k_2}
\end{vmatrix}
\begin{vmatrix}
b^{k_1}_{1}& b^{k_1}_{2}\\
b^{k_2}_{1}& b^{k_2}_{2}
\end{vmatrix}
\end{align}
はビネ・コーシーの恒等式と呼ばれる。
\boldsymbol{a}, \boldsymbol{b}, \boldsymbol{c}, \boldsymbol{d}, \boldsymbol{x}, \boldsymbol{y},\boldsymbol{z},\boldsymbol{w} は3次元ベクトルとする。
\begin{align}
1 &= 1 & (m = 0)\\
\boldsymbol{a}\cdot \boldsymbol{x} &=  a_1  x_1 + a_2 x_2 + a_3 x_3 & (m = 1)\\
\begin{vmatrix}
\boldsymbol{a}\cdot \boldsymbol{x} & \boldsymbol{a}\cdot \boldsymbol{y}\\
\boldsymbol{b}\cdot \boldsymbol{x} & \boldsymbol{b}\cdot \boldsymbol{y}
\end{vmatrix}
&=
\begin{vmatrix}
a_2 & a_3\\
b_2 & b_3
\end{vmatrix}
\begin{vmatrix}
x_2 & y_2\\
x_3 & y_3
\end{vmatrix}
+
\begin{vmatrix}
a_3 & a_1\\
b_3 & b_1
\end{vmatrix}
\begin{vmatrix}
x_3 & y_3\\
x_1 & y_1
\end{vmatrix}
+
\begin{vmatrix}
a_1 & a_2\\
b_1 & b_2
\end{vmatrix}
\begin{vmatrix}
x_1 & y_1\\
x_2 & y_2
\end{vmatrix}\\
&= (\boldsymbol{a}\times\boldsymbol{b})\cdot(\boldsymbol{x}\times\boldsymbol{y})& (m = 2)\\
\begin{vmatrix}
\boldsymbol{a}\cdot \boldsymbol{x} & \boldsymbol{a}\cdot \boldsymbol{y} & \boldsymbol{a}\cdot \boldsymbol{z}\\
\boldsymbol{b}\cdot \boldsymbol{x} & \boldsymbol{b}\cdot \boldsymbol{y} & \boldsymbol{b}\cdot \boldsymbol{z}\\
\boldsymbol{c}\cdot \boldsymbol{x} & \boldsymbol{c}\cdot \boldsymbol{y} & \boldsymbol{c}\cdot \boldsymbol{z}
\end{vmatrix}
&=
\begin{vmatrix}
a_1 & a_2 & a_3\\
b_1 & b_2 & b_3\\
c_1 & c_2 & c_3
\end{vmatrix}
\begin{vmatrix}
x_1 & y_1 & z_1 \\
x_2 & y_2 & z_2 \\
x_3 & y_3 & z_3
\end{vmatrix}\\
&= \{ \boldsymbol{a}\cdot (\boldsymbol{b} \times \boldsymbol{c}) \} \{ \boldsymbol{x}\cdot (\boldsymbol{y} \times \boldsymbol{z}) \}
& (m = 3)\\
\begin{vmatrix}
\boldsymbol{a}\cdot \boldsymbol{x} & \boldsymbol{a}\cdot \boldsymbol{y} & \boldsymbol{a}\cdot \boldsymbol{z} & \boldsymbol{a}\cdot \boldsymbol{w} \\
\boldsymbol{b}\cdot \boldsymbol{x} & \boldsymbol{b}\cdot \boldsymbol{y} & \boldsymbol{b}\cdot \boldsymbol{z} & \boldsymbol{b}\cdot \boldsymbol{w} \\
\boldsymbol{c}\cdot \boldsymbol{x} & \boldsymbol{c}\cdot \boldsymbol{y} & \boldsymbol{c}\cdot \boldsymbol{z} &
\boldsymbol{c}\cdot \boldsymbol{w} \\
\boldsymbol{d}\cdot \boldsymbol{x} & \boldsymbol{d}\cdot \boldsymbol{y} & \boldsymbol{d}\cdot \boldsymbol{z} &
\boldsymbol{d}\cdot \boldsymbol{w}
\end{vmatrix}
&= 0  & (m = 4)
\end{align}
m >3の場合、右辺は常に0である。なお、
m =2の式はスカラー四重積に対するビネ・コーシーの恒等式、
m =3の式はスカラー三重積の積に対する公式であり、
m =4の式より四重積 (ベクトル解析) の公式
\begin{align}
~  [ \boldsymbol{a},\boldsymbol{b},\boldsymbol{c} ] \boldsymbol{d}
&= [ \boldsymbol{d},\boldsymbol{b},\boldsymbol{c} ] \boldsymbol{a}
+  [ \boldsymbol{a},\boldsymbol{d},\boldsymbol{c} ] \boldsymbol{b}
+  [ \boldsymbol{a},\boldsymbol{b},\boldsymbol{d} ] \boldsymbol{c}
\quad ([ \boldsymbol{a},\boldsymbol{b},\boldsymbol{c} ] = \boldsymbol{a}\cdot(\boldsymbol{b}\times\boldsymbol{c}) )
\end{align}
が導かれる。