Evanalysis
2.4预计阅读时间: 21 分钟

2.4 解集的类型

用 RREF 严格分类线性方程组的解集,辨认主变量与自由变量,并说明为什么系统只能有唯一解、无穷多解或无解。

课程目录

高斯消元并不是把矩阵化简之后就结束。做行化简的目的,是让化简后的矩阵可以 直接读出解集的结构。本节要把这种读法说清楚。

线性系统只有三种可能的结果:

  1. 恰好一个解;
  2. 无穷多个解;
  3. 没有解。

这个分类不是靠猜测,而是由增广矩阵在 RREF 中的主元位置决定。

一致性的判准

第一个问题不是系统有一个解还是很多解,而是它到底有没有解。

定理

由 RREF 判断一致性

设 AA 为一个 m×nm \times n 线性系统的增广矩阵,BB 为与 AA 行等价的 RREF。则该系统不一致,当且仅当 BB 的最后一列是主元列。

等价地说,系统不一致,当且仅当 BB 含有如下形式的一行:

[00⋯0d]其中 d≠0\left[ \begin{array}{cccc|c} 0 & 0 & \cdots & 0 & d \end{array} \right] \qquad\text{其中 } d \neq 0

这样的一行代表方程

0=d0 = d

当 d≠0d \neq 0 时显然不可能成立,所以一旦出现矛盾行,就立刻知道系统无解。

主变量与自由变量

当一个一致的线性系统化成 RREF 之后,主元列会告诉你哪些变量是由其他变量所 决定;没有主元的列,则对应可以自由选取的变量。

定义

主变量与自由变量

设某一致线性系统的增广矩阵与一个 RREF 矩阵 BB 行等价。若 BB 的第 jj 列 是主元列,则变量 xjx_j 称为主变量或依变量。没有主元的变量称为自由 变量。

这个术语很重要,因为它告诉你最后的答案应该如何写:自由变量成为参数,主变 量则用这些参数表示出来。

为什么只有三种情况

一旦知道系统是一致的,剩下的问题便只剩下自由变量有多少个。

定理

用主元数目分类

假设一个 m×nm \times n 线性系统是一致的,且其增广矩阵与某个有 rr 个主元列 的 RREF 行等价。则 r≤nr \leq n。此外:

  1. 若 r=nr = n,系统有唯一解;
  2. 若 r<nr \lt n,系统有无穷多解。

原因其实是结构性的:

  • 若 r=nr = n,每一个变量列都有主元,因此没有自由变量。
  • 若 r<nr \lt n,则 n−r>0n - r \gt 0,至少有一个自由变量。
  • 只要系统一致,而又有自由变量,该自由变量便可取任意实数值,因此立刻产生 无穷多个解。

把一致性定理与主元数目定理合起来,便得到标准的三分法。

定理

线性系统解集的三分法

任何线性方程组的解集恰好属于以下三类之一:

  1. 唯一解;
  2. 无穷多解;
  3. 无解。

从简化矩阵得到全部解

分类定理中有两个需要认真证明的环节。第一,没有矛盾行时,系统确实存在解;第二,改变自由参数确实产生不同的解,而不是给同一个数组换一种名字。这两个结论都来自 RREF 对主元列与非主元列的分离。

证明

参数表达式既穷尽全部解,也不会重复计数

设系数矩阵有 nn 列,简化后的增广矩阵为 [R∣d][R\mid d],并且没有矛盾行。主元列编号为 p1,…,prp_1,\ldots,p_r,其余系数列编号为 f1,…,fkf_1,\ldots,f_k,其中 k=n−rk=n-r。每条非零行给出

xpi+∑j=1krifjxfj=di.x_{p_i}+\sum_{j=1}^{k}r_{i f_j}x_{f_j}=d_i.

其他主变量不会出现在这一行,因为各主元列除了自身的主元以外都是零。因此,可以任意选择实参数 t1,…,tkt_1,\ldots,t_k,再定义

xfj=tj,xpi=di−∑j=1krifjtj.x_{f_j}=t_j,\qquad x_{p_i}=d_i-\sum_{j=1}^{k}r_{i f_j}t_j.

每组参数都给出一个解:非零行由对应公式直接满足,其余行都是恒等式 0=00=0。由于行化简可逆,这个数组也满足原系统。这证明了一致性判准中的充分性,不能只说矛盾行不可能出现就略过存在性的论证。

这个构造还穷尽全部解。若 xx 是任意一个解,读取它的自由坐标,令 tj=xfjt_j=x_{f_j},那么各条主元方程便强制其余坐标满足上面的公式。因此,没有任何解落在参数表达式之外。

最后,构造不会重复计数。两组参数若不同,必定有某个 tjt_j 不同;对应解的第 fjf_j 个坐标就是该参数,所以两个解也不同。这证明参数到解的映射是单射。

没有自由变量时,主元方程确定唯一数组。有至少一个自由变量时,把其他参数固定为零,让这一个参数遍历实数,就由单射性得到无穷多个不同的解。本课程始终在实数范围讨论,因此这里用到了实数有无穷多个这一事实。答案里出现参数符号本身,还不足以代替不同解的证明。

没有主元的极端情形也包括在内。若整个增广矩阵全零,每个实数组都是解,所有变量都是自由变量,参数映射就是恒等映射。相反,若系数矩阵全零却有一个非零常数,系统立即无解。必须检查完整增广行,不能只观察系数部分。

三个 RREF,三种读法

化简后的矩阵已经把整个故事写在眼前,关键只在于你是否知道要看什么。

例题

先读矩阵,再谈求解

考虑以下三个 RREF 增广矩阵。

第一个:

[10301−2]\left[ \begin{array}{cc|c} 1 & 0 & 3 \\ 0 & 1 & -2 \end{array} \right]

两个变量列都是主元列,所以没有自由变量。系统有唯一解

x1=3,x2=−2x_1 = 3,\qquad x_2 = -2

第二个:

[12050000]\left[ \begin{array}{ccc|c} 1 & 2 & 0 & 5 \\ 0 & 0 & 0 & 0 \end{array} \right]

第 1 列是主元列,但第 2、3 列都不是,所以 x2x_2 与 x3x_3 是自由变量。方 程为

x1+2x2=5x_1 + 2x_2 = 5

故

x1=5−2x2x_1 = 5 - 2x_2

因此解集可写成

{(5−2s, s, t)∣s,t∈R}\{(5 - 2s,\ s,\ t) \mid s, t \in R\}

第三个:

[100001]\left[ \begin{array}{cc|c} 1 & 0 & 0 \\ 0 & 0 & 1 \end{array} \right]

最后一行表示 0=10 = 1,因此系统不一致,没有解。

要养成的阅读习惯是:

  1. 先检查有没有矛盾行;
  2. 再找主元列;
  3. 然后数自由变量;
  4. 最后把主变量用自由变量写出来。

下面的图解把三种情况整理成决策树:先检查相容性,再数自由变量。 随后的较大参数化例子也按这个次序判断。

由 RREF 读出三种解集

把定理压缩成决策树:先检查最后一列是否造成不相容,再用主元与自由变量数目判断唯一或无限多。

  1. 阅读 RREF

    行变换保留解集,所以 RREF 可以安全阅读。先分开变量列与增广列,再找主元列与自由列。

  2. 先看相容性

    若有一行 [0 0 ... 0 | d] 且 d 非零,它代表 0=d。等价地说,最后一列有主元便表示系统无解。

  3. 唯一解

    若系统相容,而且每个变量列都有主元,就没有自由变量;RREF 便直接给出唯一解向量。

  4. 无限多解

    若系统相容,但有变量列没有主元,该自由变量便成为实参数,产生无限多个解。

  5. 三个结果

    三分法是完整的:无解、唯一解、或无限多解。线性方程组不会恰好有两个解。

  6. 练习阅读顺序

    用下面的互动分类器练习同一顺序:先查矛盾行,再数变量主元,最后分类解集。

分类是结构性的:矛盾行判定不相容;一旦系统相容,自由变量的数目便决定解集是一个点还是一个无限族。

一个较大的参数化例子

当系统有自由变量时,答案必须写成完整的集合,而不能只说“有很多解”就结 束。

例题

把解集完整写出来

设某个五变量系统的 RREF 为

[1−100360010−21000149000000]\left[ \begin{array}{ccccc|c} 1 & -1 & 0 & 0 & 3 & 6 \\ 0 & 0 & 1 & 0 & -2 & 1 \\ 0 & 0 & 0 & 1 & 4 & 9 \\ 0 & 0 & 0 & 0 & 0 & 0 \end{array} \right]

第 1、3、4 列是主元列,所以 x1x_1、x3x_3、x4x_4 是主变量;第 2、5 列不 是主元列,所以 x2x_2 与 x5x_5 是自由变量。

由各行可读得

x1−x2+3x5=6,x3−2x5=1,x4+4x5=9\begin{aligned} x_1 - x_2 + 3x_5 &= 6, \\ x_3 - 2x_5 &= 1, \\ x_4 + 4x_5 &= 9 \end{aligned}

令

x2=s,x5=tx_2 = s,\qquad x_5 = t

则

x1=6+s−3t,x3=1+2t,x4=9−4t\begin{aligned} x_1 &= 6 + s - 3t, \\ x_3 &= 1 + 2t, \\ x_4 &= 9 - 4t \end{aligned}

因此解集为

{(6+s−3t, s, 1+2t, 9−4t, t)∣s,t∈R}\{(6 + s - 3t,\ s,\ 1 + 2t,\ 9 - 4t,\ t) \mid s, t \in R\}

两个自由变量便产生两个参数,所以解集是一个二参数族。

参数表达式要经得起直接代入

例题

六个坐标中有三个不相邻的自由变量

考虑六个未知量的 RREF:

[140021400101−3200012−610000000].\left[\begin{array}{rrrrrr|r} 1&4&0&0&2&1&4\\ 0&0&1&0&1&-3&2\\ 0&0&0&1&2&-6&1\\ 0&0&0&0&0&0&0 \end{array}\right].

主元编号是 1,3,41,3,4,自由变量编号是 2,5,62,5,6。令 x2=sx_2=s、x5=tx_5=t、x6=ux_6=u,逐行读取后得到

x=(4−4s−2t−u, s, 2−t+3u, 1−2t+6u, t, u),s,t,u∈R.x=(4-4s-2t-u,\ s,\ 2-t+3u,\ 1-2t+6u,\ t,\ u), \qquad s,t,u\in\mathbb R.

直接代入检查:第一行变成 (4−4s−2t−u)+4s+2t+u=4(4-4s-2t-u)+4s+2t+u=4;第二行变成 (2−t+3u)+t−3u=2(2-t+3u)+t-3u=2;第三行变成 (1−2t+6u)+2t−6u=1(1-2t+6u)+2t-6u=1。所有参数项都按要求抵消。反过来,任意解的第二、第五、第六个坐标便给出自己的参数值,其余坐标随后由方程唯一确定。

这比列举几个数值解更完整。参数全为零时得到 (4,0,2,1,0,0)(4,0,2,1,0,0),但它只是解集中的一个元素。完整公式同时记录哪些选择彼此独立,以及这些选择如何改变主坐标。数组必须保持原变量顺序;不能未经说明就把自由坐标集中移到最后,否则表示的是另一组坐标。

前面的五坐标例子具有相同结构,只是自由参数有两个。检查时可以从完成的数组反过来读取参数:第二个坐标就是第一个参数,第五个坐标就是第二个参数。这样既看清没有遗漏解,也看清不同参数不会描述同一数组。

当变量比方程还多时的一个推论

课堂里经常遇到的情况,是变量数多于方程数,而系统又是一致的。

定理

变量多于方程时的一致系统

假设一个一致线性系统有 mm 条方程、nn 个变量,且 n>mn \gt m。则该系统必有 无穷多解。

原因是:在 RREF 中最多只会有 mm 个非零行,因此主元列最多只有 mm 个。若 n>mn \gt m,则 nn 个变量列中必然至少有一列不是主元列,所以至少有一个自由变 量。一致性再加上自由变量,便立刻推出无穷多解。

这个推论不是说每个未知数更多的系统都一定有解;它只是在说,一旦这类系统一致,便不可能只有唯一解。

为什么不能只数方程

反例模式

方程数等于未知量数,并不保证唯一解

下面三个系统都恰好有两条方程、两个未知量:

I: x+y=2,x−y=0;II: x+y=2,2x+2y=4;III: x+y=2,2x+2y=5.\begin{aligned} \text{I: }&x+y=2,\quad x-y=0;\\ \text{II: }&x+y=2,\quad 2x+2y=4;\\ \text{III: }&x+y=2,\quad 2x+2y=5. \end{aligned}

系统 I 的唯一解是 (1,1)(1,1)。系统 II 从第二条方程减去第一条的两倍,得到 0=00=0,所以解为 (2−t,t)(2-t,t)。系统 III 做同样运算却得到 0=10=1,所以无解。方程数与未知量数在三个例子中完全相同,却出现全部三种结局。

错误的隐含假设是每条写出来的方程都会增加一个新的、彼此相容的限制。重复方程没有增加限制,不相容的方程却会排除所有候选解。主元数是在组合方程后计算真正独立的限制,单纯数矩阵行数没有完成这项工作。 正确的判据是:实线性系统有唯一解,当且仅当系统一致,且每个变量列都是主元列。

增加多余方程也不会自动破坏唯一性。系统 x=1x=1、y=2y=2、x+y=3x+y=3 有三条方程、两个未知量,却仍然只有一个解。若把第三条改成 x+y=4x+y=4,系统便无解。因此,方程多于未知量的系统既可能一致,也可能不一致,两个数目的大小关系本身不能判断。

同样,方程少于未知量时,只有在已经确认一致的前提下,才能推出无穷多解。三个变量的两条方程 x+y+z=0x+y+z=0 和 2x+2y+2z=12x+2y+2z=1 就互相矛盾。增广化简后,一行的系数全部消失,常数却不为零。再多没有主元的变量列,也无法弥补这个矛盾。

方程中的参数,不等于解中的自由变量

例题

先分类整个参数族,再决定是否相除

给定实数 a,ba,b,考虑

x+y=1,2x+ay=b.x+y=1,\qquad 2x+ay=b.

这里未知量是 x,yx,y,而 a,ba,b 决定题目究竟是哪一个系统。执行合法操作 R2←R2−2R1R_2\leftarrow R_2-2R_1,得到

[1110a−2b−2].\left[\begin{array}{cc|c}1&1&1\\0&a-2&b-2\end{array}\right].

若 a≠2a\ne2,第二行给出 y=(b−2)/(a−2)y=(b-2)/(a-2),第一行给出 x=1−yx=1-y,所以解唯一。若 a=2a=2 而 b≠2b\ne2,第二行是矛盾 0=b−20=b-2,所以无解。若 a=2a=2 且 b=2b=2,第二行全零,全部解为 (1−t,t)(1-t,t),其中 tt 为任意实数。

这三个分支穷尽所有参数对。如果还没有处理 a=2a=2 就除以 a−2a-2,恰好会丢掉那些答案可能从唯一解变成无穷多解或无解的系统。最后表达式里的 tt 承担不同角色:它在一个固定系统中选取不同解,而 a,ba,b 是在选择系统本身。

两个不同解为何必然带来无穷多个解

还可以不用重新消元,直接从线性运算验证三分法。设 u,vu,v 是同一个系统 Ax=bAx=b 的两个不同解。对每个实数 tt,定义 w(t)=u+t(v−u)w(t)=u+t(v-u)。由矩阵乘法的线性性质,

Aw(t)=Au+t(Av−Au)=b+t(b−b)=b.Aw(t)=Au+t(Av-Au)=b+t(b-b)=b.

所以这条直线上的每个点都是解。不同参数还会给出不同数组:若 w(s)=w(t)w(s)=w(t),就有 (s−t)(v−u)=0(s-t)(v-u)=0。由于两解不同,差向量至少有一个非零坐标,从该坐标便得到 s=ts=t。因此,实线性系统一旦有两个不同解,就不可能恰好只有二个、三个或其他大于一的有限个解。

这个证明与参数映射证明互相补充。参数映射构造全部解,并数清独立选择的个数;直线论证从两个已知解出发,只证明无穷多个解必定存在,并没有声称这条直线包含全部解。若系统有多个自由变量,完整解集可以比两个选定解之间的直线更大。

用交互模块比较三种情况

以下分类器的价值,在于它把阅读步骤拆清楚:先看矛盾行,再找主元,然后数剩 下多少自由变量。

边读边试

读出解集的形状

互动分类器会比较三个代表性的化简矩阵,并解释它们各自代表什么。

1002
010-1
0013

为什么成立

每个变量都是主元变量,因此方程组有唯一解。

常见错误

常见错误

自由变量不是“还没算完”

自由变量是系统本身的真实结构,不是计算尚未完成。它表示解集需要用参数表 示;代数工作其实已经完成,只是答案是一族向量,而不是单一点。

常见错误

零行不等于矛盾行

[00000]\left[ \begin{array}{cccc|c} 0 & 0 & 0 & 0 & 0 \end{array} \right]

这一行不会增加任何条件,与一致性完全相容;但

[00001]\left[ \begin{array}{cccc|c} 0 & 0 & 0 & 0 & 1 \end{array} \right]

则是一条矛盾行,会使系统不一致。

快速检查

思考检查

行 [0001]\left[\begin{array}{ccc|c}0 & 0 & 0 & 1\end{array}\right] 告诉你这个系统具有什么性质?

把这一行直接读成一条方程。

解答 · 答案

它表示 0=10 = 1,所以系统不一致,没有解。

思考检查

若一个四变量的一致系统有三个主元列,它有多少个自由变量?

数一数哪一列变量列不是主元列。

解答 · 答案

它有 4−3=14 - 3 = 1 个自由变量,因此系统有无穷多解。

练习

思考检查

判断 RREF [102401−3−10000]\left[\begin{array}{ccc|c}1 & 0 & 2 & 4 \\ 0 & 1 & -3 & -1 \\ 0 & 0 & 0 & 0\end{array}\right] 的解集类型,并把解集完整写出来。

先找自由变量,再求主变量。

解答 · 引导解答

第 1、2 列是主元列,而第 3 列不是,因此 x3x_3 是自由变量。令

x3=tx_3 = t

则两行方程给出

x1+2t=4,x2−3t=−1x_1 + 2t = 4, \qquad x_2 - 3t = -1

因此

x1=4−2t,x2=−1+3tx_1 = 4 - 2t, \qquad x_2 = -1 + 3t

故解集为

{(4−2t, −1+3t, t)∣t∈R}\{(4 - 2t,\ -1 + 3t,\ t) \mid t \in R\}

思考检查

为什么一致线性系统不可能恰好只有两个解?

请用自由变量定理回答,不要只靠图像直觉。

解答 · 引导解答

若一致系统没有自由变量,便只有唯一解;若至少有一个自由变量,该自由变量可 以取无穷多个实数值,所以系统便有无穷多解。故一致系统不可能恰好只有两个 解。

相关笔记

先读 2.3 高斯消元与 RREF 可回顾行化简的操作流程;再读 2.2 增广矩阵与行变换 可重温增广矩阵与初等行变换的意义。

练习

先自行作答,再检查答案。你可以修改后重试。

加载中…

本单元重点词汇