クラメルの公式

線型代数学におけるクラメルの法則あるいはクラメルの公式（クラメルのこうしき、英: Cramer's rule; クラメルの規則）は、未知数の数と方程式の本数が一致し、かつ一意的に解ける線型方程式系の解を明示的に書き表す行列式公式である。これは、方程式の解を正方係数行列とその各列ベクトルを一つずつ方程式の右辺のベクトルで置き換えて得られる行列の行列式で表すものになっている。名称はガブリエル・クラーメル (1704–1752) に因むもので、クラーメルは任意個の未知数に関する法則を1750年に記している。なお特別の場合に限れば、コリン・マクローリンが1748年に公表している（また、恐らくはそれを1729年ごろにはすでに知っていたと思われる）。

主張

与えられた線型方程式が n 個の変数を持ち、同数 n 本の一次方程式からなる形：
 で与えられているとする。あるいはこれを 
 と置いて Ax = b と行列の記法で書いていてもよい。この時さらに、係数行列 A が正則（可逆）であるものと仮定する。これは det(A) ≠ 0 であることと同値。
これらの仮定の下、この方程式系は一意的に解くことができて、一意的な解 x の各成分 xᵢ は 
 で与えられる。ただし、ここで用いた行列 Aᵢ は行列 A の第 i-列 (i = 1, 2, …, n) を系の右辺である b で置き換えて得られる行列 

とする。

二階線型方程式系

例えば、次の線型方程式系 
 を考える。この方程式系の拡大係数行列は 

である。クラメルの法則により、系の解は 

と求められる。ここで、縦棒は行列式を表す標準的な記号法に従ったものである。

三階線型方程式系

別な例として次の線型方程式系 
 をとる。拡大係数行列は 
 である。解をクラメルの法則に従って求めれば、
となる。

歴史

クラメルの法則は、ガブリエル・クラメルが1750年に出版した著書 «Introduction à l′analyse des lignes courbes algébriques»  の付録 1 に収録されている。クラメルは、より多くの本数の方程式を持つ系を解くための公式の作り方を述べるために、三本の方程式を持つ線型方程式系に対する明示公式を与えている。この頃にはまだ行列式の概念は存在していないので、クラメルは分母と分子が多項式であるような分数を用いて記述していた。以下はクラメルのオリジナルの論文からの抜粋である（これらは行列式に関するライプニッツの公式と同じものである）
この例においてクラメルが現代的なものとは違う記法を用いていることが見て取れる。これは現代的な記法で言えば
なることを示すものである。クラメル自身は一意的に解くことができない線型方程式系が存在することを知っていた。ベズーは1764年に、一意的に解くことができない線型方程式系では、この式の分母が 0 になることを示す。クラメルもまた、この法則の証明を与えてはおらず、それが成されるのは1815年、コーシーの手によってである（今日用いられるクラメルの法則の記法を導入したのもコーシーである）。ライプニッツは1678年の手書きの論文において既にクラメルの法則を用いているが、しかしこれは後々まで発見されず、線型方程式系の解法の発展に影響を与えはしなかった。マクローリンは1748年の著書“Treatise on Algebra”において、方程式が二本または三本であるような場合の線型方程式に対する、クラメルの法則の特別の場合を述べている。マクローリンも、これらの公式をより方程式の本数が多い一般の場合へ拡張するアイデアを持っていたが、クラメルと違って多項式の符号を正しく定める方法が分からなかった。20世紀になって、数学史家ボイヤーは、クラメルとマクローリンのどちらがこの公式を発見したのかという疑義を提示し、名称はマクローリン・クラメルの法則とすべしとした。

逆行列の計算

行列 A の逆行列は単位行列の各列ベクトル eⱼ に対して、線型方程式系 Axⱼ = eⱼ の解を求めれば求まる。これらの解をクラメルの法則によって求めれば、余因子行列 adj(A) を用いて公式 
 を得る。この公式は行列の成分が（実数体 R のような）体とは限らない可換環 R に値をとるとしても成り立つ。従って、行列 A が可逆となることと det(A) が（R において）可逆（単元）となることとが同値であることもわかる。R が体であるときは、この条件は det(A) ≠ 0 と同じである。

斉次方程式系の解法

クラメルの法則を使えば、det(A) ≠ 0 のとき斉次方程式系が自明な解 x₁ = x₂ = ⋯ = xₙ = 0 を唯一の解として持つことは容易に示せる。各 i について A の第 i-列を零ベクトルで置き換えて得られる行列 Aᵢ は、列ベクトルの全体がもはや線型独立ではなく、従って det(Aᵢ) = 0 が成り立つ。これにより xᵢ = 0 が結論付けられる。
上記性質により、線型方程式系 Ax = b (det(A) ≠ 0) の核が零ベクトルのみからなることが従い、従ってそれが唯一の解である。

低次線型方程式系に対する行列式公式

線型方程式系 
 あるいは行列記法で 
 を考え、ad − bc ≠ 0 と仮定すると、x および y はクラメルの法則で計算できて 
 を得る。三次の場合も同様で、線型方程式系 
 あるいは 
 に対して、 x, y, z は 

で求められる。

微分幾何

クラメルの法則は微分幾何学における問題を解くのにもきわめて有効である。二つの方程式 F(x, y, u, v) = 0 および G(x, y, u, v) = 0 を考える。u と v とが独立変数のとき、x = X(u, v) と y = Y(u, v) が陰伏的に定まる。
∂ˣ⁄∂ᵤ に対する方程式を求めることは、クラメルの法則の自明な応用である。
まず F, G, x, y それぞれの一階微分を計算する： 
 dx, dy を dF, dG に代入して 
 を得る。u, v は独立変数だから du, dv の係数は 0 でなければならない。故に係数に関する方程式を立てれば、
 を得る。ここでクラメルの法則を使えば、
 が得られる。これは二つの函数行列式 
 を使って書き表される公式である。同様の公式が ∂ˣ⁄∂ᵥ, ∂ʸ⁄∂ᵤ, ∂ʸ⁄∂ᵥ からもそれぞれ導かれる。

整数計画法

クラメルの法則は、制約行列が完全単模 (totally unimodular) で、右辺値が整数、基本解も整数であるような整数計画問題を解くのにも利用できる。これにより整数問題を解くことが大幅に容易になる。

常微分方程式

クラメルの法則は非斉次の線型微分方程式の一般解を定数変化法で導く場合にも利用できる。

幾何学的解釈

クラメルの法則を幾何学的に解釈することもできて、それは証明や幾何学的な性質を詳しく見ることによって得られる。この幾何学的な論法は、以下に例示する二次元の場合のみならず、一般の場合においても通用する。
方程式系 
 はベクトルの間の方程式 
 と見做すことができる。ᵗ(a₁₁, a₂₁) と ᵗ(a₁₂, a₂₂) の張る平行四辺形の面積は系の係数行列の行列式 
 で与えられる。一般に、変数と方程式を増やして、長さ n の n 本のベクトルを考えるとき、その行列式は n-次元ユークリッド空間においてそれらのベクトルが張る平行体 (parallelepiped) の容積 (volume) を与える。
従って、x₁⋅ᵗ(a₁₁, a₂₁) と ᵗ(a₁₂, a₂₂) の張る平行四辺形の面積は、先ほどの面積の x₁-倍である。この平行四辺形の面積は、カヴァリエリの原理により、
x₁⋅ᵗ(a₁₁, a₂₁) + x₂⋅ᵗ(a₁₂, a₂₂) と ᵗ(a₁₂, a₂₂) の張る平行四辺形の面積に等しい。
最後とその前の平行四辺形の面積が等しいことは方程式 
 の成立を意味するが、これはクラメルの法則からも得られる。