クラマーの法則は、行列式の観点から連立一次方程式の解を与える線形代数の定理です。
計算では、一般に非効率であるため、いくつかの方程式が含まれる可能性のある実際のアプリケーションでは使用されません (ガウス解法の使用)。ただし、システムの解法を明確に表現できるため、理論的には重要です。
スイスの数学者ガブリエル・クラマー (1704-1752) にちなんで命名されました。
説明
一般形式のn 個の未知数を含むn 個の方程式系:
- $$ {\left\{\begin{matrix} a_{1,1}x_1+a_{1,2}x_2+…+a_{1,n}x_n = \lambda_1 \\ a_{2,1}x_1+a_{2,2}x_2+…+a_{2,n}x_n = \lambda_2 \\ \vdots \\ a_{n,1}x_{1}+a_{n,2}x_{2}+…+a_{n,n}x_n = \lambda_n \end{matrix}\right.} $$
は行列積として表されます。
- $$ {\begin{bmatrix} a_{1,1} & a_{1,2} & \cdots & a_{1,n}\\ a_{2,1} & a_{2,2} & \cdots & a_{2,n}\\ \vdots & \vdots & \ddots & \vdots\\ a_{n,1} & a_{n,2} & \cdots & a_{n,n}\\ \end{bmatrix} \times \begin{bmatrix} x_1\\ x_2\\ \vdots\\ x_n\\ \end{bmatrix} = \begin{bmatrix} \lambda_1\\ \lambda_2\\ \vdots\\ \lambda_n\\ \end{bmatrix} \Leftrightarrow A \cdot \vec x = \vec \lambda} $$
ここで、正方行列で可逆 (非ゼロ行列式) の行列Aには未知数の係数が含まれ、列ベクトルxにはこれらの未知数が含まれ、列ベクトルλにはシステムの方程式の右辺が含まれます。
定理は次のように述べています。
- $$ {x_k = { \det(A_k) \over \det(A) }} $$
ここで、 A k は、 Aのk 番目の列を列ベクトルで置き換えることによって形成される正方行列です。
- $$ {A_k = ( a_{k|i,j} ) \mbox{ avec } a_{k|i,j} = \left\{\begin{matrix} a_{i,j} & \mbox{si } j \ne k \\ \lambda_{i,1} & \mbox{si }j = k\end{matrix}\right.} $$
拡張すると、Cramer システムは、行列 A の行列式が非ゼロであるという条件を満たすシステムです。
- システムの行列のすべての行列式がゼロであれば、システムは無限の解を許容します。
- Aの行列式がゼロであり、行列A kの少なくとも 1 つの行列式がゼロでない場合、システムは解を認めません。
クラマーの法則を使用して線形システムを解くために必要な演算の数は、行列式の計算に使用される方法によって異なります。行列式の計算の効率的な方法は、ガウス ジョルダン消去法(多項式の複雑さ) です。ただし、Cramer の法則ではシステムのサイズに等しい数の行列式の計算が必要となるため、システムに直接適用されるガウス ジョルダン消去法が問題をより効率的に解決します。

例
オーダーシステム2
どちらか :
- $$ {\left\{\begin{matrix} ax+by = e\\ cx+dy = f\end{matrix}\right.} $$
それで :
- $$ {x = { \begin{vmatrix}e&b\\f&d\end{vmatrix} \over \begin{vmatrix}a&b\\c&d\end{vmatrix} } = { ed – bf \over ad – bc}} $$そして$$ {y = { \begin{vmatrix}a&e\\c&f\end{vmatrix} \over \begin{vmatrix}a&b\\c&d\end{vmatrix} } = { af – ec \over ad – bc}} $$
数値例:
- $$ {\left\{\begin{matrix} 4x + 2y = 24\\ 2x + 3y = 16\end{matrix}\right.} $$
- $$ {x = {24 \cdot 3-16 \cdot 2 \over 8 } = {40 \over 8} = 5} $$そして$$ {y = {4 \cdot 16-2 \cdot 24 \over 8} = {16 \over 8} = 2} $$

オーダーシステム3
どちらか :
- $$ {\left\{\begin{matrix}a_1x_1 + b_1x_2 + c_1x_3 = d_1\\ a_2x_1 + b_2x_2 + c_2x_3 = d_2\\ a_3x_1 + b_3x_2 + c_3x_3 = d_3\end{matrix}\right.} $$
聞いてみましょう:
- $$ {A = \begin{bmatrix}a_1&b_1&c_1\\a_2&b_2&c_2\\a_3&b_3&c_3\end{bmatrix} \mbox{ et }\vec x = \begin{bmatrix}x_1\\x_2\\x_3\end{bmatrix}} $$。
システムは、次の場合に限り、独自の解決策を認めます。
- $$ {x_1 = \frac{\det(A_1)}{\det(A)} = \frac{\begin{vmatrix}d_1&b_1&c_1\\d_2&b_2&c_2\\d_3&b_3&c_3\end{vmatrix}}{\det(A)}} $$
- $$ {x_3 = \frac{\det(A_3)}{\det(A)} = \frac{\begin{vmatrix}a_1&b_1&d_1\\a_2&b_2&d_2\\a_3&b_3&d_3\end{vmatrix}}{\det(A)}} $$
もっと単純に言えば、
- $$ {\vec x = \begin{bmatrix}x_1\\x_2\\x_3\end{bmatrix} = \frac{1}{\det(A)} \cdot \begin{bmatrix} \det(A_1)\\ \det(A_2)\\ \det(A_3)\end{bmatrix}} $$
次の場合、システムは無限の解を許容します。
- $$ {\det(A) = \det(A_1) = \det(A_2) = \det(A_3) = 0\,} $$
次の場合、システムはいかなる解決策も認めません。
- $$ {\det(A) = 0 \land \Big( \det(A_1) \ne 0 \lor \det(A_2) \ne 0 \lor \det(A_3) \ne 0 \Big)\,} $$

