若 x 与 xp 都是 Ax=b 的解,则它们的差满足 A(x−xp)=b−b=0。
因此,描述全部解的问题归结为:对一个已知解作哪些改变,能够保持右端不变?
这些改变恰好组成相应齐次方程组的零空间。
为什么齐次方程组特别
定义
齐次方程组
齐次线性方程组是形如
Ax=0的线性方程组。
其中 x=0 称为平凡解。
由于 A0=0,齐次方程组一定一致。需要判断的是:除了零向量之外,是否还有非平凡解。
零空间把所有齐次解收集起来
定义
零空间
对实 m×n 矩阵 A,其零空间定义为
N(A)={x∈Rn:Ax=0m}.因此 N(A) 就是齐次方程组 Ax=0 的解集。
输入向量属于 Rn,输出向量属于 Rm。判断输入是否属于 N(A),就是检查输出是否为零向量。
例题
零空间成员测试其实很直接
令
A=[101101],x=1−11,z=100.计算得到
Ax=[00],Az=[10].因此 x∈N(A),但 z∈/N(A)。要测试某个向量是否属于零空间,
最直接的方法就是实际计算 Ax。
行化简会揭示零空间的形状
要找 N(A),就是解 Ax=0,也就是对增广系统 [A∣0] 做行化简。
主元告诉你哪些变量被决定,自由变量则告诉你剩下多少自由方向。
例题
解一个齐次方程组并描述零空间
令
A=[1224−1−2].要求解 Ax=0,把它行化简:
[1224−1−200]∼[1020−1000].所以方程变成
x1+2x2−x3=0.令 x2=s、x3=t 为自由变量,则
x1=−2s+t.因此
x=−2s+tst=s−210+t101.所以
N(A)=Span⎩⎨⎧−210,101⎭⎬⎫.
这里 Span 表示所列向量的全部实线性组合。参数 s 与 t 可以独立取值,因此公式给出了所有齐次解。相应的集合记号见
4.2 集合语言与解集。
齐次方程组与零空间观看齐次系统如何产生零空间方向,以及一个特解如何平移这些方向,描述 Ax=b 的全部解。
平凡解
齐次系统永远相容,因为 x=0 会给出 A0=0。真正问题是是否还有非零解。
零列保持为零
对 [A|0] 做行化简时,增广零列仍然是零,因此系数矩阵的 RREF 决定齐次解结构。
自由变量成为方向
主元变量由自由变量决定。每次只设定一个自由变量,便得到一个零空间方向向量。
零空间
N(A)={x:Ax=0} 不是一些例子的清单,而是整个齐次解集,通常写成方向向量的所有线性组合。
由一个特解平移
若 p 解 Ax=b,则每个 p+q(其中 q 属于 N(A))也解 Ax=b,而且所有解都如此得到。
自由度与唯一性
若 N(A)={0},相容系统只有一个解。若 N(A) 有非零方向,加入其倍数便得到无限多解。
齐次系统 Ax=0 告诉你方程留下哪些自由方向。若 Ax=b 相容,一个特解会把这些方向放到正确右端的位置,因此完整解集是 p+N(A)。
为什么自由变量会迫出无限多个齐次解
定理
只要有自由变量,就有无限多个解
如果齐次系统 Ax=0 至少有一个自由变量,那么它就会有无限多个解。
自由变量可以取任意实数。因为它本身就是解向量的一个坐标,改变其数值必然改变整个向量。以实际自由坐标作为参数时,参数不可能从完整的解向量中消失。
如果变量个数多于主元方程个数,就至少有一个自由变量。同一论证说明,此时齐次方程组有无限多个解。
例题
一个自由变量已经会产生整条解线
假设行化简后得到
x1−3x2=0.如果令 x2=t,那么 x1=3t,所以所有解都可以写成
[x1x2]=t[31],t∈R.由于 t 可以取无限多个值,而不同的值给出不同的向量,所以解集有无限多个元素。
例题
零空间也可能只剩平凡解
令
A=[1001].那么 Ax=0 就只是
x1=0,x2=0.因此唯一解是零向量,所以
N(A)={0}这个例子与前面有自由变量的情形刚好相反。
零空间本身是一个子空间
两个齐次解相加,或把齐次解乘以一个实标量,仍然得到齐次解。连同零向量的存在,这些正是定义 Rn 的子空间所需的封闭性质。
定理
零空间对线性组合封闭
对任何矩阵 A,N(A) 都是一个子空间。特别是:
- 0∈N(A);
- 若 u,v∈N(A),则 u+v∈N(A);
- 若 u∈N(A) 而 c 是纯量,则 cu∈N(A)。
证明
为什么零空间是子空间
我们已经知道 0∈N(A),因为 A0=0。
若 u,v∈N(A),则 Au=0、Av=0。由线性性质,
A(u+v)=Au+Av=0+0=0,所以 u+v∈N(A)。
同样,若 u∈N(A) 而 c 是纯量,则
A(cu)=c(Au)=c⋅0=0,因此 cu∈N(A)。
一般的子空间定义与封闭性判别见
6.2 子空间。这里的计算已经证明了对零空间向量作线性组合所需的性质。
怎样由 RREF 读出零空间基底
基底是一组线性独立的张成向量。对 N(A),自由坐标的描述直接给出这样一组向量:它们生成每个解,而只有全零系数才能组合出零向量。一般的定义见
6.5 基与维数。
具体构造如下:
- 先把 A 行化简;
- 分清楚主元变量与自由变量;
- 每次把一个自由变量设成 1,其余自由变量设成 0;
- 再由方程解回主元变量;
- 对每个自由变量重复一次。
这些向量确实构成一组基底,而不只是候选。设共有 k 个自由坐标,vj 是把第 j 个自由坐标取一、其余自由坐标取零后得到的解。对任意 x∈N(A),记其自由坐标为 t1,…,tk。由封闭性,t1v1+⋯+tkvk 仍是齐次解,其自由坐标与 x 完全相同,而化简后的主元方程唯一确定其余坐标。因此这个组合等于 x,证明了张成。
再证明独立性:若 c1v1+⋯+ckvk=0,则其第 j 个自由坐标恰好为 cj,因为只有 vj 在该位置取一。因此所有 cj=0,无需再次消元便证得线性独立。这些向量于是构成基底,其数目就是零度。若没有自由变量,零空间是 {0},其基底为空列表,而不是含有零向量的列表;这与零度为零相符。
零度等于自由坐标的数目
刚才构造的基底对每个自由坐标恰有一个向量。基底的向量数就是 N(A) 的维数,称为 A 的零度。若一个 m×n 矩阵的 RREF 有 r 个主元,就有 n−r 个自由变量,因此
nullity(A)=n−r.
主元数 r 称为秩;这个数不依赖所选的化简过程,其理由见
5.2 RREF 的唯一性与秩。用秩表示,上式就是
nullity(A)=n−rank(A).
齐次解控制非齐次解的结构
一旦找到 Ax=b 的一个特解 xp,齐次解就给出了保持右端不变的全部改变量。
定理
所有解都等于某个特解加上一个零空间向量
设 xp 是 Ax=b 的一个特解。
则向量 x 是 Ax=b 的解,当且仅当
x=xp+v其中 v∈N(A)。
若把解集记为 S(A,b),定理即为 S(A,b)=xp+N(A)。
证明
为什么全部解都具有 xp+N(A) 的形式
先设 x 是 Ax=b 的任意一个解。那么
Ax=b且Axp=b.相减得
A(x−xp)=0.所以 x−xp∈N(A),即 x=xp+v,其中 v∈N(A)。
反过来,若 v∈N(A),则 Av=0。因此
A(xp+v)=Axp+Av=b+0=b.所以任何形如 xp+v 的向量,也必定是系统的解。
概念视角几何
把整个零空间作同一个平移
固定一个特解 xp 后,xp+N(A) 表示所有 xp+v 组成的集合,其中 v∈N(A)。加上 xp 就是让零空间的每个点作同一个位移。这建立了齐次解与非齐次解之间的一一对应,逆过程是减去 xp。前面的证明分别说明了平移后的每个点都有效,以及每个解都能这样得到。
特解本身一般不唯一,但平移所得的集合与特解选择无关。若 xq 是另一个解,则 h=xq−xp∈N(A)。对每个 v∈N(A),有 xq+v=xp+(h+v),而封闭性保证 h+v∈N(A)。因此 xq+N(A)⊆xp+N(A);把 h 换成 −h 可得反向包含。沿解集选择不同起点,描述的仍是同一个解族。
一致性不可省略:没有特解,就无法开始这个描述。当 b=0 时,一致方程组的解集不含零向量,因为 A0=0=b。它是子空间的平移,称为仿射子空间,却不是向量子空间;两个解相加后对应的右端是 2b,而非 b。只有在齐次情形 b=0,解集才就是零空间本身。
例题
用一个特解与两个零空间方向描述全部解
假设系统 Ax=b 有一个已知解
p=10−1010,而齐次系统 Ax=0 有以下两个解方向:
q1=2−31000,q2=−310−221.若这两个方向张成 N(A),那么 Ax=b 的所有解都可写成
x=p+sq1+tq2,s,t∈R.展开来看,就是
x=10−1010+s2−31000+t−310−221.这里 Ap=b,而 Aq1=Aq2=0。向量 p 给出所需的输出,方向 q1 与 q2 则允许输入改变而保持输出不变。它们张成整个零空间这一条件,保证了公式能够给出每个解。
一维零空间对应的仿射直线
例题
把所有解写成特解加零空间
假设系统 Ax=b 有一个特解
xp=301,并且
N(A)=Span⎩⎨⎧1−10⎭⎬⎫.那么所有解都可写成
x=301+t1−10=3+t−t1,t∈R.零空间给出自由方向;特解则决定这整个解族位于哪里。
缩放一个解通常会改变右端。若要解另一个方程组,可以直接核对缩放的效果:若 Ap=b,则
2A(23p)=3Ap=3b.
所以 23p 是 2Ax=3b 的一个解。这并不是说任何解集都可以任意
缩放;这里可行,是因为系数矩阵与右边同时被缩放,而且计算直接验证了结论。
齐次解与列向量相关性的关系
如果把 A 的列写成 a1,a2,…,an,那么
Ax=0
其实就等价于
x1a1+x2a2+⋯+xnan=0.
所以只要齐次系统有一个非平凡解,就等价于 A 的列向量之间存在一条非平凡
线性关系。
例题
一个非平凡零空间向量就是一条相关关系
假设
x=1−21∈N(A).那么 Ax=0 就表示
1⋅a1−2⋅a2+1⋅a3=0.这句话正是一条关于 A 的列向量的非平凡相关关系。
零空间如何决定唯一性
由这个结构定理可以立刻得到:
- 若 N(A)={0},则一致系统 Ax=b 只有唯一解;
- 若 N(A) 含有非零向量,则每个一致系统 Ax=b 都有无限多解,
因为你可以在特解上加上任意标量倍的零空间向量。
一致性假设不可省略:零空间只有零向量,保证的是每个右端至多有一个解,并不能单独保证解存在。
左乘矩阵可能丢失方程信息
行变换保留齐次解集,是因为每一步都可逆;一般的矩阵乘子却未必可逆。准确的结论必须明确写出集合包含的方向。
定理
左乘矩阵时零空间的包含关系
设 A 是实 m×n 矩阵,G 是实 p×m 矩阵,则
N(A)⊆N(GA).如果 G 是可逆方阵,则 N(A)=N(GA)。
证明
逆矩阵在哪个方向发挥作用?
任取 x∈N(A),则 Ax=0m,所以 (GA)x=G(Ax)=G0m=0p。因此 x∈N(GA),证明了任意相容乘子下的包含关系。注意,即使两矩阵行数不同,两个零空间中的向量仍都属于 Rn。
反向包含则假设 G 是可逆方阵,因此 p=m,并取 x∈N(GA)。由 GAx=0p 左乘 G−1,得 Ax=G−10p=0m,所以 x∈N(A)。只有这个方向使用了逆矩阵;结合两个包含关系,才得到集合相等。
GA 的每一行都是 A 各行的线性组合,因此新方程都是旧方程的推论,每个旧解必然满足新方程。若组合过程丢失了信息,就可能产生额外的解。这解释了为什么不能随意用一般行组合代替初等行变换,而不检查保留了哪些约束。
例题
丢失一个约束的矩阵乘子
取
A=[1001],G=[10].则 GA=[1 0]。原方程 Ax=0 同时要求 x1=0 与 x2=0;新方程只要求 x1=0。所以
N(A)={02},N(GA)={[0t]:t∈R}.向量 (0,1)T 属于第二个集合而不属于第一个,因此包含严格。这里直接核对了丢失的条件,而不是只比较方程条数。可逆性保证相等,却不是对每个特定 A 都必要的条件:若 A 是零矩阵,即使乘子不可逆,两个零空间仍都等于 Rn。不能自动把定理倒转。
堆叠方程对应零空间的交集
另一种组合方程组的方法,是把全部方程一起保留。堆叠与只取某些行组合不同,它不会舍弃其中任何条件。
定理
堆叠矩阵的零空间
设实矩阵 A 的大小为 m×n,B 的大小为 p×n。令
C=[AB],则 N(C)=N(A)∩N(B)。交集表示同时属于两个集合;行数可以不同,列数却必须相同。
证明
双向证明堆叠矩阵恒等式
先取 x∈N(C)。由分块乘法,
0m+p=Cx=[AxBx].比较上方的 m 个元素与下方的 p 个元素,分别得到 Ax=0m 与 Bx=0p。因此 x 属于两个零空间,也就属于它们的交集。
反过来,取 x∈N(A)∩N(B)。集合成员条件同时给出 Ax=0m 与 Bx=0p。把两个输出堆叠,得到
Cx=[0m0p]=0m+p,故 x∈N(C)。两个方向的成员关系都已核对,集合相等于是成立。
例如,堆叠 A=[1 0 0] 与 B=[0 1 0],就是同时施加 x1=0 与 x2=0,留下的恰好是 (0,0,t)T。各自的零空间都较大,但交集只保留共同向量。重复堆叠同样可以表示有限多个齐次解集的交集。下一节会用此恒等式区分保留每条方程,与只保留方程的某个线性组合。
常见错误
常见错误
零向量永远属于零空间
有些同学会误以为齐次方程组可能没有解。这是不可能的,因为 x=0 永远
满足 Ax=0。
常见错误
找到一个特解,不等于已经找到全部解
即使你已经找到某个 xp 满足 Axp=b,仍然要把整个零空间加上去,才
算完整描述了解集。
常见错误
不要把特解与方向混淆
若 u 与 v 都解 Ax=b,则 v−u 解的是 Ax=0。向量 v−u
是零空间中的方向,不是一个新的右边。
快速检查
思考检查
为什么 Ax=0 一定至少有一个解?
解答 · 答案
因为零向量总会满足 A0=0。
思考检查
若 N(A)={0} 且 Ax=b 一致,它有多少个解?
解答 · 答案
只有一个,因为没有任何非零零空间向量可以再加到特解上。
思考检查
如果 Ax=0 有自由变量,解集有可能只剩两个向量吗?
解答 · 答案
不可能。自由变量可以取无限多个纯量值,所以会产生无限多个解向量。
思考检查
假设 u 与 v 都解 Ax=b。那么 v−u 解哪一个齐次系统?
解答 · 答案
它解 Ax=0,因为
A(v−u)=Av−Au=b−b=0.
练习
思考检查
若 xp 解 Ax=b,而 u,v∈N(A),为什么 xp+u 与 xp+v 都是 Ax=b 的解?
解答 · 引导解答
因为 Au=0 且 Av=0,所以
A(xp+u)=Axp+Au=b+0=b,同理
A(xp+v)=Axp+Av=b+0=b.因此,只要在特解上加任何零空间向量,仍然留在同一个解集之中。
相关笔记
本节建立在
2.3 高斯消元与最简行阶梯形
与 2.4 解集的种类 之上。
它会为
5.1 可逆矩阵
与 6.2 子空间 做准备。