Cramer's Rule
Cramer's Rule
Fan克拉默法则
当系数行列式
时, 个未知数、 个方程的线性方程组有唯一解,且每个未知数都能写成两个行列式之比 。它优雅、深刻、理论价值极高;但作为计算工具,它昂贵而低效。
鸡兔同笼
《孙子算经》有:“今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?”
设鸡
古人的“半足法”(足数减半再减头数得兔数)本质上就是消元。消元是算法:一步步做,答案逐步浮现。但数学家有个执念,像一元二次方程的求根公式
把线性方程组的解直接写成公式,就是克拉默法则。对这个笼子,它给出:
鸡 23,兔 12。
多少个点确定一条曲线
加布里埃尔·克拉默(Gabriel Cramer, 1704–1752),瑞士日内瓦数学家。1750 年他出版《代数曲线分析引论》,研究一个时髦问题:5 个点确定一条二次曲线,9 个点确定一条三次曲线,以点拟合曲线时,未知数是多项式系数,问题归结为解线性方程组。在该书附录中,克拉默对一般的
优先权公案:苏格兰数学家麦克劳林的遗著《代数论著》(1748 年)已对二元、三元情形给出同样的规则。两人几乎同时、很可能独立,因此有科学史家主张应称“麦克劳林–克拉默法则”。更早的萌芽还可追到日本的关孝和(1683)与莱布尼茨(1693),但“行列式”作为系统概念,要等柯西、雅可比、凯莱在十九世纪才真正成熟。
法则的陈述
二阶行列式:
三阶可用余子式展开。
对每一列都是线性的(多重线性);两列相同则为零(交错性)。
定理:克拉默法则
含
若系数行列式
则方程组有解且解唯一:
其中
方程个数等于未知数个数(系数矩阵是方阵),且
2×2 一次消元
对二元方程组,第一式乘
即
三元:
第一行展开得
一般证明
余子式消元
记
左边交换求和顺序:
-
时, (按第 列正常展开); -
时, (这相当于“用第 列的元素配第 列的余子式展开”,得到一个有两列相同的行列式,故为零)。
于是左边
多重线性展开
把
若
几何意义
设
固定一条边,把另一条边从
一般
美丽而昂贵的代价:
设克拉默是“求根公式”,高斯消元是“配方法”,那么我们必须诚实地谈成本。用余子式展开计算
|
|
余子式展开耗时 | 高斯消元
|
|---|---|---|
| 10 | 约 0.004 秒 | 微秒级 |
| 15 | 约 22 分钟 | 微秒级 |
| 20 | 约 77 年 | 微秒级 |
| 25 | 约五亿年 | 约 1 万次运算,微秒级 |
即便用 LU 分解(每个行列式
\、NumPy 的 solve,底层全部是带选主元的 LU 分解,不会用克拉默。
对固定的小系统(
理论价值
-
解是系数的显式有理函数。
是系数的多项式之比。于是只要 ,当系数光滑(甚至解析)地依赖参数 时,解自动光滑(解析)地依赖 。这是扰动分析、隐函数思想、经济学比较静态的底层机制之一,IS-LM 模型每本中级宏观教材都在用克拉默求 。 -
环上的结构。
说明:整系数、整常数项时,解的分母整除 ;特别地 时整数方程组有整数解(单模矩阵,数论与格理论中的常客)。法则在有限域、多项式环上同样成立,这是“环上的线性代数”。 -
插值的存在唯一性。
个互异节点上的插值问题归结为范德蒙德方程组,其行列式 ,克拉默法则一步给出插值多项式的存在唯一性。妙极了:这正是克拉默当年造出这个法则的原始动机,法则回到了它的出生地。 -
常微分方程。 二阶线性方程“变易常数法”中待定系数恰由二元克拉默解出,分母正是朗斯基行列式
, 与 呼应得严丝合缝。 -
小规模符号计算。 例如部分分式:
给出 , , , ,立刻 。
当
时
- 某个
⇒ 必无解(第四节推论)。例如 : 而 ,矛盾立判。 -
且所有 ⇒ 不能下结论。 二元时( )确为无穷多解;但三元及以上可能翻车:
无解(第二式
- 进阶注记:当
时,伴随矩阵非零,可以证明“所有 ”恰好等价于“有解”(此时为无穷多);当 时伴随矩阵为零, 恒为零,判别彻底失效,上面那个反例正是 的情形。
方法对照表:
| 方法 | 适用范围 | 复杂度 |
|---|---|---|
| 高斯消元(选主元) | 任意矩形方程组 |
|
| 克拉默法则 |
|
|
| 逆矩阵
|
|
|