クラメールの公式|連立1次方程式の解を求める便利な定理

$x_1,\dots,x_n$の連立1次方程式

\begin{align*} \begin{cases} a_{11}x_1+a_{12}x_2+\dots+a_{1n}x_n=c_1\\ a_{21}x_1+a_{22}x_2+\dots+a_{2n}x_n=c_2\\ \qquad\vdots\\ a_{n1}x_1+a_{n2}x_2+\dots+a_{nn}x_n=c_n \end{cases} \end{align*}

を考えます.この連立方程式は未知数が$n$個,方程式が$n$本なので,係数によっては解が一意に存在しますね.

この連立方程式の解が一意に定まるときには,Cramer(クラメール)の公式を用いることによって解を求めることができます.

Cramerの公式は線形代数の行列式を用いる定理で,ハマればかなり簡単に解を求められることもあります.

この記事では

  • いくつかの予備知識の確認
  • Cramerの公式の説明
  • Cramerの公式を用いた解法の具体例

の順に説明していきます.

なお,この記事では実数$\R$を中心に説明しますが,複素数$\C$など一般のに対しても同様です.

予備知識

Cramerの公式を説明する前に,冒頭に書いた連立方程式の解が一意に定まるための条件について復習しておきましょう.

係数行列・拡大係数行列と解の存在

例えば,$x,y,z$の連立1次方程式

\begin{align*} \begin{cases}2x+3y+z=1\\-x+y-2z=-2\\2x+3y-z=-1\end{cases} \end{align*}

  • 係数行列$A:=\bmat{2&3&1\\-1&1&-2\\2&3&-1}$
  • 変数ベクトル$\m{x}=\bmat{x\\y\\z}$
  • 定数ベクトル$\m{x}=\bmat{1\\-2}$

を用いて$A\m{x}=\m{c}$と表すことができますね.

このように,一般に連立1次方程式は$A\m{x}=\m{c}$と表すことができ,この解$\m{x}$の存在は係数行列$A$と拡大係数行列$[A,\m{c}]$を用いて以下のように述べることができるのでした.

$A\in\Mat_{mn}(\R)$と$\m{c}\in\R^{m}$に対し,次は同値である.

  • $\rank{A}=\rank{[A,\m{c}]}=n$が成り立つ.
  • 連立1次方程式$A\m{x}=\m{c}$の解$\m{x}\in\R^{m}$が一意に存在する.

ただし,$\Mat_{mn}(\R)$は実数成分の$m\times n$行列の集合を表す.

つまり,$\m{x}\in\R^{m}$の連立1次方程式$A\m{x}=\m{c}$について

  1. 「係数行列のランク」と「拡大係数行列のランク」が等しい
  2. このランクが変数の個数$n$に等しい

が成り立つとき解$\m{x}$が一意に存在し,この逆も成り立つわけですね.

[条件1]と連立1次方程式の解が存在することは同値なのでした.これに,[条件2]を付け加えることによって,解の存在の一意性まで言えるようになるわけですね.

この考え方と証明については以下の記事で説明しています.

正方行列の正則条件

Cramerの公式は係数行列が正方行列の連立1次方程式に関する定理なので,ここで正方行列について成り立つ次の定理を思い出しておきましょう.

正方行列$A\in\Mat_{n}(\R)$に対して,次は全て互いに同値である.

  • $A$は正則である.
  • ランク$\rank{A}$は$\rank{A}=n$を満たす.
  • 行列式$|A|$は$|A|\neq0$を満たす.

ただし,$\Mat_{n}(\R)$は実数成分の$n$行列の集合を表す.

正方行列の正則条件は色々ありますが,いま述べた正則条件は

  • ランク
  • 行列式

を用いたものですね.

これらについて詳しくは,以下の記事を参照してください.

以上の2つの定理から,次の系が得られますね.

正則な正方行列$A\in\Mat_{n}(\R)$に対して,$|A|\neq0$なら$\m{x}\in\R^n$の連立1次方程式$A\m{x}=\m{c}$の解$\m{x}$は一意に存在する.


$|A|=0$より$\rank{A}=n$が成り立つ.このとき,連立1次方程式$A\m{x}=\m{c}$について

  • $\rank{[A,\m{c}]}\ge\rank{A}$より$\rank{[A,\m{c}]}\ge n$
  • 拡大係数行列$[A,\m{c}]$は$n$行からなる行列なので,$\rank{[A,\m{c}]}\le n$

が成り立つから,$\rank{[A,\m{c}]}=\rank{A}=n$が成り立つ.

よって,連立1次方程式$A\m{x}=\m{c}$の解は一意に存在する.

この系はこの記事の本題であるCramerの公式のベースとなる事実です.

クラメールの公式

$A$が正則な場合の連立1次方程式$A\m{x}=\m{c}$の解を与えるCramerの公式を説明します.

[Cramerの公式] 正則行列$A=[\m{a}_1,\dots,\m{a}_n]\in\Mat_{n}(\R)$と$\m{c}\in\R^{n}$に対して,$\m{x}=[x_{1},\dots,x_{n}]^{T}$の連立方程式$A\m{x}=\m{c}$の解は次で与えられる.

\begin{align*} x_i=\frac{1}{|A|}|\m{a}_1,\dots,\m{a}_{i-1},\m{c},\m{a}_{i+1},\dots,\m{a}_n| \quad(i=1,\dots,n) \end{align*}


$A=(a_{ij})$, $\m{c}=[c_1,\dots,c_n]^{T}$とする.

$A$は正則だから,$\m{x}$の連立方程式$A\m{x}=\m{c}$の解は

\begin{align*} \m{x} =A^{-1}\m{c} =\frac{1}{|A|}\bmat{a_{11}^{*}&\dots&a_{n1}^{*}\\\vdots&\ddots&\vdots\\a_{1n}^{*}&\dots&a_{nn}^{*}}\m{c} =\frac{1}{|A|}\bmat{\sum_{k=1}^{n}c_{k}a_{k1}^{*}\\\vdots\\\sum_{k=1}^{n}c_{k}a_{kn}^{*}} \end{align*}

となる.

余因子展開より,この第$i$成分($i=1,\dots,n$)は

\begin{align*} \sum_{k=1}^{n}c_{k}a_{ki}^{*}=|\m{a}_1,\dots,\m{a}_{i-1},\m{c},\m{a}_{i+1},\dots,\m{a}_n| \end{align*}

が従う.

証明の中で用いている余因子展開については,以下の記事を参照してください.

それではCramerの公式の具体例を考えましょう.

$a,b,c\in\R$は$a+b+c\neq0$を満たし,少なくとも1つは他と異なるとする.このとき,$x$, $y$, $z$の連立方程式

\begin{align*} \begin{cases} ax+by+cz=1\\ bx+cy+az=0\\ cx+ay+bz=0 \end{cases} \end{align*}

を解け.

もちろん加減法(掃き出し法)によっても解けますが,方程式が3本,未知数も3個で,係数行列が正則であることが分かるのでCramerの公式が使えます.


係数行列$A$の行列式$|A|$は

\begin{align*} |A| =&\vmat{a&b&c\\b&c&a\\c&a&b} =-a^3-b^3-c^3+3abc \\=&-\frac{1}{2}(a+b+c)\brb{(a-b)^2+(b-c)^2+(c-a)^2} \end{align*}

である.$a$, $b$, $c$の仮定から$|A|\neq0$なので,$A$は正則である.

よって,Cramerの公式より解は

\begin{align*} (x,y,z) =&\bra{\frac{1}{|A|}\vmat{1&b&c\\0&c&a\\0&a&b},\frac{1}{|A|}\vmat{a&1&c\\b&0&a\\c&0&b},\frac{1}{|A|}\vmat{a&b&1\\b&c&0\\c&a&0}} \\=&\bra{\frac{a^2-bc}{a^3+b^3+c^3-3abc},\frac{b^2-ca}{a^3+b^3+c^3-3abc},\frac{c^2-ab}{a^3+b^3+c^3-3abc}} \end{align*}

となる.

最後までありがとうございました!

参考になった方は是非シェアをお願いします!

フォローする

関連記事

記事一覧はこちらからどうぞ!