前两章用数字列记录响应,线性系统一章又把自由方向写成向量。现在把这些运算从数字列中抽出来:为什么函数也能成为向量?什么样的表示既完整又唯一?

从具体对象中抽出共同的运算结构

到目前为止,我们用数字对记录响应,又用箭头展示数字对。这还没有说明“抽象向量”是什么。下一步不是把箭头画到更高维,而是暂时放下对象的外形,检查哪些运算规则真正支撑了前面的推理。

对象、表示、系数,是三个不同层次

在第一章的响应模型中,对象是一整个响应;选定两个观测量及其单位后,用 (2,1)(2,1) 记录它;组合响应时再使用系数 a,ba,b。这三个层次不能混为一谈。

同一个道理也适用于函数。取两个完整的多项式

f(t)=2+t,g(t)=−1+2t.f(t)=2+t,\qquad g(t)=-1+2t.

把函数按值相加、按值缩放:

(af+bg)(t)=af(t)+bg(t).(af+bg)(t)=a f(t)+b g(t).

于是

2f(t)+g(t)=3+4t.2f(t)+g(t)=3+4t.

结果是一个完整的函数,不是某个固定时刻的数,也不是曲线上一个点。对多项式 x+ytx+yt,用常数项和一次项的系数 (x,y)(x,y) 表示它,就会得到与前面数字对完全相同的组合运算。

但表示必须适合对象空间。用两个系数就能完整描述次数不超过一的多项式;两个采样值却不能唯一确定任意函数。例如,在 t=0t=0 和 t=1t=1 处,零函数与 t(t−1)t(t-1) 的值都为零,但它们不是同一个函数。

这个交互图需要启用 JavaScript。

先调节两个系数,再在“整个函数”和“坐标平面”之间切换。数值运算没有改变,改变的是我们怎样解释和显示这些数。把方向切换为线性相关时,第二个函数变成第一个的两倍,同样会失去独立控制常数项与一次项的能力。

向量空间:哪些规则必须保留

定义实向量空间

实向量空间由一个集合 VV、加法和实数数乘组成。这两种运算都必须有定义并留在 VV 中。对任意 u,v,w∈V\mathbf u,\mathbf v,\mathbf w\in V 和 a,b∈Ra,b\in\mathbb R,还要求:

规则数学表达
加法交换律u+v=v+u\mathbf u+\mathbf v=\mathbf v+\mathbf u
加法结合律(u+v)+w=u+(v+w)(\mathbf u+\mathbf v)+\mathbf w=\mathbf u+(\mathbf v+\mathbf w)
零向量存在 0\mathbf0,使 v+0=v\mathbf v+\mathbf0=\mathbf v
加法逆元每个 v\mathbf v 都有 −v-\mathbf v,使 v+(−v)=0\mathbf v+(-\mathbf v)=\mathbf0
数乘结合律a(bv)=(ab)va(b\mathbf v)=(ab)\mathbf v
单位标量1v=v1\mathbf v=\mathbf v
对向量加法分配a(u+v)=au+ava(\mathbf u+\mathbf v)=a\mathbf u+a\mathbf v
对标量加法分配(a+b)v=av+bv(a+b)\mathbf v=a\mathbf v+b\mathbf v

集合 VV 中的元素称为向量。

抽象就在这里:只要规则成立,后面的推理就能适用于这些对象,而不必为箭头、数字列和多项式分别重做一遍。

例如,对固定定义域上的实值函数使用逐点运算,上述等式在每一个输入处都归结为实数运算法则;零向量是零函数,逆元是相反函数。多项式相加或数乘后仍是多项式,因此次数不超过一的多项式也构成向量空间。

相反,只允许分量位于 [0,1][0,1] 的 RGB 颜色,不构成实向量空间:相反数可能离开允许范围,加法也可能超过上界。把颜色嵌入 R3\mathbb R^3 便于计算,不等于所有计算结果都仍是合法颜色。对结果进行截断,又会引入非线性操作。

为什么要同时指定集合与运算

向量空间不是只看对象“长什么样”。例如,所有次数不超过二的实多项式构成空间 P2\mathcal P_2,而所有次数恰好等于二的多项式不构成空间:t2t^2 与 −t2-t^2 的和是零多项式,已经离开集合。

对固定大小的实矩阵使用逐项加法与数乘,同样得到向量空间。一个 m×nm\times n 矩阵有 mnmn 个自由元素,因此以后可以用 mnmn 个系数描述它;但要先确定大小,不能把所有不同大小矩阵混在一起,又默认任何两者都能相加。

公理还推出一些熟悉但并非额外假设的结论。例如

0v=(0+0)v=0v+0v.0\mathbf v=(0+0)\mathbf v=0\mathbf v+0\mathbf v.

消去一项,得到 0v=00\mathbf v=\mathbf0。类似地,(−1)v+v=0v=0(-1)\mathbf v+\mathbf v=0\mathbf v=\mathbf0,所以数乘 −1-1 给出的确实是加法逆元。

这些论证只用运算规律,没有用向量的坐标。正因为如此,它们同时适用于数字列、函数与矩阵。

继续沿用第一章的具体向量:

u=(2,1),v=(−1,2),w=2u.\mathbf u=(2,1),\qquad\mathbf v=(-1,2),\qquad\mathbf w=2\mathbf u.

为什么称为子空间

对于实向量空间 VV 的一个子集 WW,若它包含零向量,并且对向量加法和实数数乘都封闭,就称它为线性子空间。封闭的意思是:对其中的元素做这些运算,结果仍留在 WW 中。其余向量空间运算法则从 VV 继承。

命题线性组合的集合是子空间

有限个向量的生成子空间,确实满足上述条件。

证明

所有系数取零,得到零向量。若 x,y\mathbf x,\mathbf y 分别使用系数 ai,bia_i,b_i 表示,则

x+y=∑i(ai+bi)vi.\mathbf x+\mathbf y=\sum_i(a_i+b_i)\mathbf v_i.

这仍是原向量的线性组合。对任意实数 cc,

cx=∑i(cai)vi,c\mathbf x=\sum_i(ca_i)\mathbf v_i,

也仍在同一个集合中。

它还是包含原向量的最小线性子空间:任何包含这些向量的子空间,都必须包含它们的数乘与有限和,因此必须包含全部线性组合。

注意,直线 y=1y=1 不是线性子空间,因为它不包含原点。单凭“画出来是一条直线”还不足以判断。零向量组成的集合 {0}\{\mathbf0\} 则是子空间。

子空间判别法怎样使用

对 VV 的非空子集 WW,检查

αu+βv∈W对所有 u,v∈W, α,β∈R\alpha\mathbf u+\beta\mathbf v\in W \quad\text{对所有 }\mathbf u,\mathbf v\in W,\ \alpha,\beta\in\mathbb R

就足以判断它是子空间。取系数全零得到零向量;取 (1,1)(1,1) 得到加法封闭;取 (α,0)(\alpha,0) 得到数乘封闭。反过来,分别封闭自然保证任意两项线性组合仍在集合中。

例如集合 W={(x,y,z):x−2y+z=0}W=\{(x,y,z):x-2y+z=0\} 是子空间:若两个向量各自满足该齐次等式,它们的线性组合代入左端仍为零。也可以显式求出

(x,y,z)=(2y−z,y,z)=y(2,1,0)+z(−1,0,1).(x,y,z)=(2y-z,y,z) =y(2,1,0)+z(-1,0,1).

于是 W=span⁡((2,1,0),(−1,0,1))W=\operatorname{span}((2,1,0),(-1,0,1))。齐次条件同时给出判别与表示方法。若右端改成 11,集合不含零,就不是子空间。

交集、和与并集是三件不同的事

若 U,WU,W 都是 VV 的子空间,则交集 U∩WU\cap W 仍是子空间:两个向量同时属于 U,WU,W,其线性组合也同时属于两者。

并集通常不是子空间。例如平面的两条坐标轴各自都是子空间,它们的并集却不包含 (1,0)+(0,1)(1,0)+(0,1)。若想把两者合在一起并保留线性组合,就应该取子空间的和:

U+W={u+w:u∈U,w∈W}.U+W=\{\mathbf u+\mathbf w:\mathbf u\in U,\mathbf w\in W\}.

零向量属于其中;两个这样的和相加或数乘,仍能把属于 UU 与属于 WW 的部分分别合并,所以 U+WU+W 是子空间。它是包含 U∪WU\cup W 的最小子空间。

在三维中,令 UU 为 xyxy 平面,WW 为 xzxz 平面。交集是 xx 轴,和是整个三维空间。维数不能简单相加,因为两个平面都包含的 xx 方向被数了两次。

若 U∩W={0}U\cap W=\{\mathbf0\},则和中的每个向量都有唯一分解 u+w\mathbf u+\mathbf w:两种分解相减给出

u1−u2=w2−w1∈U∩W,\mathbf u_1-\mathbf u_2=\mathbf w_2-\mathbf w_1\in U\cap W,

两边只能为零。这时称为直和,记作 U⊕WU\oplus W。例如 xyxy 平面与 zz 轴的和是直和;两个共享 xx 轴的平面之和不是。

能到达,不代表只有一种表示

对于 w=2u\mathbf w=2\mathbf u,同一个目标 2u2\mathbf u 有多种写法:

2u=2u+0w=0u+w.2\mathbf u=2\mathbf u+0\mathbf w=0\mathbf u+\mathbf w.

把两种表示相减,得到 2u−w=02\mathbf u-\mathbf w=\mathbf0。这个等式用了不全为零的系数,却抵消成零,说明两个方向之间存在冗余。

定义线性无关与线性相关

如果

a1v1+⋯+amvm=0a_1\mathbf v_1+\cdots+a_m\mathbf v_m=\mathbf0

只可能在所有系数均为零时成立,就称这些向量线性无关。若存在一组不全为零的系数使等式成立,就称它们线性相关。

“不全为零”不是“每个都非零”。对于三个或更多向量,一部分系数可以为零。只要一个向量组包含零向量,就必定线性相关:给零向量系数 11,其余系数取零即可。

对于有限向量组,线性相关也等价于其中至少一个向量可由其余向量线性表示。因为在非平凡零组合中,任选一个非零系数,便能移项并除以它;反方向则把表示式移到同一侧。

定理线性无关恰好保证表示唯一

一个有限向量组线性无关,当且仅当它所张成的每个向量都有唯一的一组系数。

证明

若同一个目标有系数 aia_i 与 bib_i 两种表示,相减得到

∑i(ai−bi)vi=0.\sum_i(a_i-b_i)\mathbf v_i=\mathbf0.

线性无关迫使每个 ai−bi=0a_i-b_i=0,所以两组系数相同。

反过来,若存在非平凡零组合,零向量就同时有“系数全零”和“那组非平凡系数”两种表示,因此不可能处处唯一。

实际上,一旦相关,每个可达目标都有无穷多组实系数:在任何一组系数上加上非平凡零组合的任意实数倍,目标都不会改变。不可达的目标则仍然没有表示。

基:既能覆盖,也没有冗余

定义基

一个向量组如果张成空间 WW,并且线性无关,就称为 WW 的一组基。

两项条件承担不同任务:张成保证每个目标都有表示,线性无关保证表示唯一。选定基的排列顺序后,每个向量对应唯一的系数列,这就是该基下的坐标。

标准基 e1=(1,0)\mathbf e_1=(1,0)、e2=(0,1)\mathbf e_2=(0,1) 是平面的一组基。前面的 u=(2,1)\mathbf u=(2,1)、v=(−1,2)\mathbf v=(-1,2) 也是,因为对任意目标求得的系数存在且唯一。它们不必指向坐标轴,基向量也不必是单位向量,更不要求彼此垂直。例如,(1,0)(1,0) 与 (1,1)(1,1) 也构成一组基,因为任意 (x,y)(x,y) 都有唯一系数 (x−y,y)(x-y,y)。

同一个 p=(3,4)\mathbf p=(3,4),在标准基下的坐标为 (3,4)(3,4),在有序基 (u,v)(\mathbf u,\mathbf v) 下则为 (2,1)(2,1):

p=3e1+4e2=2u+v.\mathbf p=3\mathbf e_1+4\mathbf e_2 =2\mathbf u+\mathbf v.

向量没有改变,记录它的参照方式变了。后续的换基问题就是系统地处理这种变化。

有限维空间的一组基所含的向量数称为维数。下一节证明不同基的长度相同。这里可以直接确认平面维数为二,非零向量张成的直线维数为一。零子空间的基是空向量组,维数为零;约定空线性组合为零。

维数为什么不依赖基的选择

需要补上的关键事实是:一个线性无关向量组,不可能比一个生成整个空间的有限向量组更长。

设 u1,…,ur\mathbf u_1,\ldots,\mathbf u_r 线性无关,w1,…,ws\mathbf w_1,\ldots,\mathbf w_s 张成同一空间。把 u1\mathbf u_1 写成 wj\mathbf w_j 的组合,至少有一个非零系数;解出对应的 wj\mathbf w_j 后,就能用 u1\mathbf u_1 替换它,而仍然张成整个空间。

接着引入 u2\mathbf u_2。它不能只由已放入的 u1\mathbf u_1 表示,否则违背线性无关,因此组合中至少还有一个尚未替换的 wj\mathbf w_j 带非零系数。继续替换,每引入一个独立向量,就必须消耗一个原生成向量的位置。至多能做 ss 次,所以 r≤sr\le s。

将两组基分别作为独立组与生成组,得到两个相反的不等式,因此长度相等。这才使“维数”成为空间本身的属性。

消元怎样给出空间的维数

设 AA 有 nn 列,消元后有 rr 个主元。行变换相当于左乘可逆矩阵 EE。对任意系数列 c\mathbf c,

Ac=0⟺EAc=0.A\mathbf c=\mathbf0\quad\Longleftrightarrow\quad EA\mathbf c=\mathbf0.

所以行变换保留列之间的线性关系。阶梯形矩阵的主元列线性无关,非主元列又能由主元列组合出来,因此原矩阵中对应的主元列构成原列空间的一组基。行变换可能改变列空间本身,不能把变换后的列直接当成原列空间的基。

因此列空间维数,也就是秩,为 rr。齐次方程有 n−rn-r 个自由变量,让它们依次取标准基坐标即可得到 n−rn-r 个独立解方向,张成整个零空间。所以

dim⁡ker⁡A+rank⁡(A)=n.\dim\ker A+\operatorname{rank}(A)=n.

交通系统的五个未知量对应五维输入;秩为三,零空间维数便为二。非齐次解集是零空间的一次平移,不能因写成“特解加两个方向”就称它为向量子空间。

从生成组中选出一组基

一个生成组可能冗余。若其中某个向量能由其余向量表示,删去它不会改变张成范围。对有限生成组重复删除,最终得到既生成又无关的一组基。相反,若已有无关组尚未张成整个空间,选择一个不在原张成集合中的向量加入,就仍然无关。在有限维空间中,这样可以扩充成基。

具体计算时,把向量放成矩阵的列。例如

A=(123011134)⟶R=(101011000).A=\begin{pmatrix}1&2&3\\0&1&1\\1&3&4\end{pmatrix} \quad\longrightarrow\quad R=\begin{pmatrix}1&0&1\\0&1&1\\0&0&0\end{pmatrix}.

第一、二列是主元列,所以从原矩阵取

a1=(1,0,1)T,a2=(2,1,3)T\mathbf a_1=(1,0,1)^{\mathsf T},\qquad \mathbf a_2=(2,1,3)^{\mathsf T}

作为列空间的基。第三列满足 a3=a1+a2\mathbf a_3=\mathbf a_1+\mathbf a_2,因此删去它不会损失任何可达向量。

若要描述矩阵的行空间,则可以用阶梯形的非零行作为基:行变换把行互相组合,而且可以逆转,所以行空间本身保留。这里得到 (1,0,1)(1,0,1) 与 (0,1,1)(0,1,1)。注意“列空间取原主元列”和“行空间取变换后非零行”的规则不同。

求齐次解空间的基

同一个矩阵的齐次方程 Ax=0A\mathbf x=\mathbf0 等价于

x1+x3=0,x2+x3=0.x_1+x_3=0,\qquad x_2+x_3=0.

令 x3=tx_3=t,得到

x=t(−1,−1,1)T.\mathbf x=t(-1,-1,1)^{\mathsf T}.

所以零空间的基只有一个向量 (−1,−1,1)T(-1,-1,1)^{\mathsf T}。列空间的基描述输出能到哪里,零空间的基描述哪些输入变化无法在输出中看出来,两者不能互换。

有多个自由变量时,每次令其中一个为 11、其余为 00,求出对应的完整解向量。这些向量无关,因为各自的自由坐标构成标准基;又能表示任意自由坐标,因此张成全部齐次解。

交集中的方向为什么只应计算一次

有限维子空间满足

dim⁡(U+W)=dim⁡U+dim⁡W−dim⁡(U∩W).\dim(U+W)=\dim U+\dim W-\dim(U\cap W).

取交集的一组基 c1,…,ck\mathbf c_1,\ldots,\mathbf c_k,分别补成 UU 的基 (ci,uj)(\mathbf c_i,\mathbf u_j) 和 WW 的基 (ci,wℓ)(\mathbf c_i,\mathbf w_\ell)。合并时只保留一份交集基,就能生成 U+WU+W。

它也线性无关:若三类向量的组合为零,把 wℓ\mathbf w_\ell 的组合移到另一侧,它同时在 UU 与 WW 中,因此属于交集。由于 ci\mathbf c_i 与 wℓ\mathbf w_\ell 在 WW 中独立,所有 wℓ\mathbf w_\ell 系数为零;剩下的 UU 基向量系数也只能全零。计数便得到公式。

练习

练习向量也可以是多项式

在次数不超过一的实多项式空间中,证明 1+t1+t 与 1−t1-t 构成一组基。

解答

对任意 a+bta+bt,比较

α(1+t)+β(1−t)=a+bt\alpha(1+t)+\beta(1-t)=a+bt

的常数项与一次项,得到唯一的系数

α=a+b2,β=a−b2.\alpha=\frac{a+b}{2},\qquad\beta=\frac{a-b}{2}.

每个多项式都能表示,且表示唯一,所以这是一组基。这里的向量是多项式,标量仍是实数。

练习任意两向量不共线,是否就够了

判断 (1,0)(1,0)、(0,1)(0,1)、(1,1)(1,1) 是否线性无关。

解答

线性相关,因为 (1,0)+(0,1)−(1,1)=0(1,0)+(0,1)-(1,1)=\mathbf0。任意两向量不共线,只排除了两向量之间的倍数关系。

练习过原点是否足够

判断 y=2xy=2x、y=2x+1y=2x+1、xy=0xy=0 分别是否描述线性子空间。

解答

第一个集合是直线 span⁡((1,2))\operatorname{span}((1,2))。第二个不含原点。第三个是两条坐标轴的并集,(1,0)+(0,1)(1,0)+(0,1) 不在其中,所以对加法不封闭。

练习同时求列空间与零空间

对正文矩阵 AA,第三列等于前两列之和。解释为什么这不能说明前两列也相关,并写出零空间的一组基。

解答

前两列不互为倍数,例如第二分量分别为 0,10,1,且第一列非零。第三列的关系给出 A(−1,−1,1)T=0A(-1,-1,1)^{\mathsf T}=0。消元确认只有一个自由变量,所以这个非零向量构成零空间的基。

练习唯一分解的条件

在 R3\mathbb R^3 中,设 U=span⁡((1,0,0),(0,1,0))U=\operatorname{span}((1,0,0),(0,1,0)),W=span⁡((1,0,1))W=\operatorname{span}((1,0,1))。判断是否有 R3=U⊕W\mathbb R^3=U\oplus W。

解答

交集中若 t(1,0,1)t(1,0,1) 的第三分量为零,则 t=0t=0,所以交集只有零。又有 (x,y,z)=(x−z,y,0)+z(1,0,1)(x,y,z)=(x-z,y,0)+z(1,0,1),故每个向量都可分解且分解唯一。