代数学におけるコーシー・ビネの公式(こーしー・びねのこうしき、英: Cauchy–Binet formula)、あるいは、コーシー・ビネの定理、コーシー・ビネの展開とは、ジャック・フィリップ・マリー・ビネおよびオーギュスタン=ルイ・コーシーに由来する恒等式で、2つの行列の積から作られる正方行列の行列式は、元の行列から取り出せる最大の小行列式の積の和に等しいというものであり[1]、行列の成分が実数や複素数などの可換環において成立する。
n を自然数とし、集合 {1, …, n} を [n] と表記する。m を非負整数として、A を m × n行列、B を n × m行列とする。S を要素数 (|S| = )m の [n] の部分集合とする。AS を、A の n個の列から S に含まれる添字の列を取り出して得られた m次正方行列、BS を、B の n個の行から S に含まれる添字の行を取り出して得られた m次正方行列とする。
このとき積 AB は m × m行列となり、その行列式は
となる。ただし、総和について、S は、[n] の部分集合で要素数が m のものすべてを取るとする。なお、m > n の場合は右辺は 0 である。

と成分表示すると、公式は

と表現できる。ただし、右辺の総和は、1 ≤ k1 < … < km ≤ n を満たす整数の組 (k1, k2, …, km) の全てに対して取るとする。なお、m > n の場合は右辺は 0 である。
記法

を使えば
となる。ただし、右辺の総和は、1 ≤ k1 < … < km ≤ n を満たす整数の組 (k1, k2, …, km) の全てに対して和を取るとする。なお、m > n の場合は右辺は 0 である。
行列式の多重線型性により
![{\displaystyle {\begin{aligned}\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{aligned}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/7c262ca4ccc978a02e25e64356a1403d0a1baad0)
が導かれる。最後の式の p は {1, …, m} から {1, …, n} への写像である。
行列式の反対称性により p が単射の場合のみ行列式は非零なので、p(i) = k(π(i)) と置き換えられる。ここで、置換 π : [m] → [m] は m次対称群
の元であり、k : [m] → [n] は i < j ⇒ k(i) < k(j) を満たす関数である。これより
![{\displaystyle {\begin{aligned}\det(AB)&=\textstyle \sum \limits _{\scriptstyle \pi \in {\mathfrak {S}}_{m}}\sum \limits _{k:[m]\to [n] \atop \scriptstyle 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}\\&=\textstyle \sum \limits _{\scriptstyle \pi \in {\mathfrak {S}}_{m}}\sum \limits _{k:[m]\to [n] \atop \scriptstyle i<j\Rightarrow k(i)<k(j)}\operatorname {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}\\&=\textstyle \sum \limits _{\scriptstyle k:[m]\to [n] \atop \scriptstyle i<j\Rightarrow k(i)<k(j)}A{\begin{pmatrix}1&\cdots &m\\k(1)&\cdots &k(m)\end{pmatrix}}\sum \limits _{\pi \in {\mathfrak {S}}_{m}}\operatorname {sgn}(\pi )~b_{k(\pi (1)),1}\cdots b_{k(\pi (m)),m}\\&=\textstyle \sum \limits _{\scriptstyle k:[m]\to [n] \atop \scriptstyle 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}}\\&=\textstyle \sum \limits _{1\leq k_{1}<\cdots <k_{m}\leq 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{aligned}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/2e3c473814918ec4e5684ba8c51c9ed58225a2c4)
が成り立つ。なお、sgn(π) は置換 π の符号であり、行列式の反対称性

および、

を用いた。
コーシー・ビネの公式を具体例で確認してみる。
(例1)m = 1, n = 3 の場合として、行列
を考える。
である。
であるから、
![{\displaystyle \textstyle \sum \limits _{\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.}](https://wikimedia.org/api/rest_v1/media/math/render/svg/59076367004efca4d0e04698d262186ab313ef1c)
となる。
(例2)m = 2, n = 3 の場合として、行列
を考える。
である。
であるから、
![{\displaystyle {\begin{aligned}&\textstyle \sum \limits _{\scriptstyle S\subset [n] \atop \scriptstyle |S|=m}\det(A_{S})\det(B^{S})={\begin{vmatrix}1&1\\3&1\end{vmatrix}}\cdot {\begin{vmatrix}1&1\\3&1\end{vmatrix}}+{\begin{vmatrix}1&2\\1&-1\end{vmatrix}}\cdot {\begin{vmatrix}3&1\\0&2\end{vmatrix}}+{\begin{vmatrix}1&2\\3&-1\end{vmatrix}}\cdot {\begin{vmatrix}1&1\\0&2\end{vmatrix}}\\&\qquad \qquad =(-2)\times (-2)+(-3)\times 6+(-7)\times 2=-28.\\\end{aligned}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/844c202f786026a6606e5c03263e4b85d6a21710)
となる。
(例3)m = 3, n = 3 の場合として、行列
を考える。
である。
であるから、
![{\displaystyle \textstyle \sum \limits _{\scriptstyle S\subset [n] \atop \scriptstyle |S|=m}\det(A_{S})\det(B^{S})={\begin{vmatrix}1&1&2\\3&1&-1\\1&-1&0\end{vmatrix}}{\begin{vmatrix}1&1&0\\3&1&0\\0&2&1\end{vmatrix}}=(-10)\times (-2)=20.}](https://wikimedia.org/api/rest_v1/media/math/render/svg/2630fbce8962333dc783b7b32b8b8a32d8bc9d69)
となる。
(例4)m = 4, n = 3 の場合として、行列
を考える。
である。
は存在しないから、
![{\displaystyle \textstyle \sum \limits _{\scriptstyle S\subset [n] \atop \scriptstyle |S|=m}\det(A_{S})\det(B^{S})=0.}](https://wikimedia.org/api/rest_v1/media/math/render/svg/148eca6c3c2a3a11e4651c2dceb815d9527fbfa7)
となる。
![{\displaystyle A\doteq {\begin{pmatrix}\delta _{1}^{i_{1}}&\cdots &\delta _{m}^{i_{1}}&\cdots &\delta _{n}^{i_{1}}\\\vdots &\ddots &\vdots &\ddots &\vdots \\\delta _{1}^{i_{m}}&\cdots &\delta _{m}^{i_{m}}&\cdots &\delta _{n}^{i_{m}}\end{pmatrix}},\quad B\doteq {\begin{pmatrix}\delta _{j_{1}}^{1}&\cdots &\delta _{j_{m}}^{1}\\\vdots &\ddots &\vdots \\\delta _{j_{1}}^{m}&\cdots &\delta _{j_{m}}^{m}\\\vdots &\ddots &\vdots \\\delta _{j_{1}}^{n}&\cdots &\delta _{j_{m}}^{n}\end{pmatrix}}\quad (i_{k}\in [n],j_{k}\in [n]\mathrm {~for~} k\in [m])}](https://wikimedia.org/api/rest_v1/media/math/render/svg/8a602129897066f02da6585f35fc38b2176d3d62)
とする。ただし、δはクロネッカーのデルタ

である。
これをコーシー・ビネの公式に代入し、一般化されたクロネッカーのデルタ

を使えば、
が得られる。逆にこの式からコーシー・ビネの公式を導くこともできる。
これは単位行列の基本的性質
![{\displaystyle \delta _{j}^{i}=\sum _{k=1}^{n}\delta _{k}^{i}\delta _{j}^{k}\quad (i\in [n],j\in [n])}](https://wikimedia.org/api/rest_v1/media/math/render/svg/49bb39866962739b390c699e7bc68f82135c41dd)
の一般化である。
m > n の場合、1 ≤ k1 < … < km ≤ n となる整数の組 (k1, k2, …, km) は存在しないから、公式の右辺は 0 となる。このとき A, B の階数はこの場合高々 n だから、m × m 行列 AB の階数も高々 n (< m) であるので、公式の左辺 det(AB) は 0 となり、公式が成り立つ。
m = n のとき、A, B は正方行列である。1 ≤ k1 < … < km ≤ n となる整数の組 (k1, k2, …, km) は [n] に等しいから、公式は

すなわち det(AB) = det(A)det(B) となる。
m = 0 のとき、A, B そして AB は空行列(ただし、n > 0 なら行列の型は異なる)であり、空行列の行列式は定義により 1 だから、公式は 1 = 1 を述べているに過ぎない。
m = 1 のとき、公式は
となるが、1×1行列 A に対して det(A) = A だから、自明の式を述べているに過ぎない。
m = 2 は非自明な公式を与える最小の m であり、そのときの公式
はビネ・コーシーの恒等式と呼ばれる。
などは3次元ベクトルとする。
m > 3 の場合、右辺は常に0である。なお、
- m = 2 の式はスカラー四重積に対するビネ・コーシーの恒等式、
- m = 3 の式はスカラー三重積の積に対する公式
であり、m = 4 の式より四重積 (ベクトル解析) の公式:
![{\displaystyle {\begin{aligned}~[{\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{aligned}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/d443e5735979e158b1ebeb06aa7a6957c02fd884)
が導かれる。