© 2015-2020 Jacob Ström、Kalle Åström 与 Tomas Akenine-Möller

正在加载并构建本章……

第 5 章:高斯消元法





本章介绍高斯消元法,它是一种求解线性方程组的方法。在解决实际问题时,我们经常会遇到这类方程组。例如在计算机视觉中:给定一个物体的若干幅图像,求出该物体的三维模型。
图 5.1: 厄勒布鲁城堡 671 张照片中的 4 张。图片由隆德大学 Carl Olsson 提供。
图 5.1: 厄勒布鲁城堡 671 张照片中的 4 张。图片由隆德大学 Carl Olsson 提供。
图 5.1 展示了厄勒布鲁城堡的四幅图像。利用这些图像以及另外 667 幅类似图像,可以计算出 图 5.2 所示的点云。计算过程需要求解许多方程组高斯消元法是理解这类方程组的绝佳切入点。关于这个例子的更多信息,请观看这段 YouTube 视频
交互式图解 5.2: 由 671 幅图像计算得到的点云。按左上角的旋转图标可使点云转动;也可以按住鼠标右键拖动,从任意方向观察模型。不妨从城堡上方俯视,看看它的几何结构!
交互式图解 5.2: 由 671 幅图像计算得到的点云。按左上角的旋转图标可使点云转动;也可以按住鼠标右键拖动,从任意方向观察模型。不妨从城堡上方俯视,看看它的几何结构!
5.1 引言


要熟悉方程组,可以先研究两条直线相交时会发生什么。

为了描述平面中的二维直线,许多人最先接触的表示法是
\begin{equation} y = kx + m, \end{equation} (5.1)
其中 $k$ 表示直线的斜率,$m$ 表示直线在 $y$ 轴上的截距。这种表示法适用于大多数直线,但并非全部。无论 $k$ 取何值,都无法表示完全竖直的直线(例如 $x=4$)。因此,数学上通常采用更方便的表示法:
\begin{equation} ax + by + c = 0 \end{equation} (5.2)
它适用于所有形如 $y=kx+m$ 的直线:只需令 $a=-k$、$b=1$、$c=-m$。此外,它也能表示竖直直线。例如,令 $a=1$、$b=0$、$c=-4$,就表示直线 $x=4$;它经过点 $(4,0)$,并与 $y$ 轴平行。在 图 5.3 中,我们画出了两条直线,其方程分别为 $2x + 3y + 5 = 0$ 和 $5x+2y-4=0$。
$2 x + 3 y + 5 = 0$
$5 x + 2 y -4 = 0$
交互式图解 5.3: 两条用 $ax+by+c=0$ 表示的直线。它们相交于 $(2,-3)$。
交互式图解 5.3: 两条用 $\hid{ax+by+c=0}$ 表示的直线。它们相交于 $\hid{(2,-3)}$。
直线 $2x+3y+5=0$ 由所有满足 $2x+3y+5=0$ 的点 $(x,y)$ 组成。同样,另一条 直线 由所有满足 $5x+2y-4=0$ 的 $(x,y)$ 组成。两条 直线 的交点坐标 $(x,y)$ 必须同时满足两个方程。因此,要找交点,就需要求解这个方程组
\begin{equation} \begin{cases} 2 x + 3 y = -5,\\ 5 x + 2 y = 4. \end{cases} \end{equation} (5.3)
上述方程组称为 线性方程组,因为其中只含有 $2x$、$3y$ 这样的一次多项式项,而不含 $x^2$、$xy$、$y^3$ 等高次项,也不含其他 非线性 项,例如 $\cos x$ 或 $e^x$。这类方程组有一个很好的性质:容易进行系统分析。例如,只要解存在,就总能求出来。若方程组无解,比如两条 直线 平行且不重合,分析过程也会揭示这一点。最后,若有多个解,比如两条 直线 平行且重合,分析同样会把这一点显示出来。

交互式图解 5.4 展示了两条直线的交点,也就是方程组(例如方程组(5.3))的解如何随两条直线方程的改变而交互变化。
交互式图解 5.4: 你可以移动直线上的红点和蓝点,改变相应的直线方程。随后,插图会使用本章的方法求出两条直线的交点(绿色)。
交互式图解 5.4: 你可以移动直线上的红点和蓝点,改变相应的直线方程。随后,插图会使用本章的方法求出两条直线的交点(绿色)。


本章将介绍一种系统方法,称为 高斯消元法,用来分析并求解这类方程组。不过,我们先来看几个 线性 方程的例子。
5.2 示例


例 5.1: 视频压缩
视频帧中的每个像素都通过点亮屏幕上的三个子像素来显示,分别对应红、绿、蓝三种颜色。在 图 5.5的上排,右侧分别显示了这三个颜色分量。
图 5.5: 上:图像的红、绿、蓝分量,以灰度值显示。下:RGB 颜色分量已变换为 $Y$(大致表示亮度)以及 $Cb$、$Cr$(色度),同样以灰度值显示。
图 5.5: 上:图像的红、绿、蓝分量,以灰度值显示。下:RGB 颜色分量已变换为 $\hid{Y}$(大致表示亮度)以及 $\hid{Cb}$、$\hid{Cr}$(色度),同样以灰度值显示。
可以看到,这些颜色通道(RGB)彼此十分相似,这是因为三者都受到亮度——也就是每个像素整体明暗程度——的影响。把同一信息重复存储三次效率很低,因此 H.264 等视频编码方案并不以 $(R,G,B)$ 的形式存储像素,而是存储 $(Y,Cb,Cr)$,其中
\begin{equation} \begin{cases} \begin{array}{rrrl} Y = & \bs 0.299 & \bs R + 0.587 & \bs G + 0.114 & \bs B,\\ Cb = & \bs -0.169 & \bs R - 0.331 & \bs G + 0.500 & \bs B + 128,\\ Cr = & \bs 0.500 & \bs R - 0.419 & \bs G - 0.081 & \bs B + 128. \end{array} \end{cases} \end{equation} (5.4)
图 5.5下排可见,$Y$、$Cb$、$Cr$ 三个通道之间的相似度降低了。后两个通道看起来也更为平淡,而这恰好意味着可以用更少的比特来表示图像。此外,人类视觉系统对亮度(大致对应 $Y$)误差的敏感程度,远高于对另外两个通道误差的敏感程度。利用这一特点,可以降低色度通道的表示精度,从而进一步减少所需比特数。

解压缩时,为了在屏幕上显示像素,需要从 $(Y,Cb,Cr)$ 还原到 $(R,G,B)$。假设某个像素在 $(Y,Cb,Cr)$ 空间中的颜色为 $Y=180$、$Cb=80$、$Cr=150$。它对应怎样的 $(R,G,B)$ 颜色?把 $Y$、$Cb$、$Cr$ 的值代入上式,并求解所得 线性 方程组即可得到答案,即
\begin{equation} \begin{cases} \begin{array}{rrrl} 0.299 &\bs R + 0.587 &\bs G + 0.114 &\bs B = &\bs 180,\\ -0.169 &\bs R - 0.331 &\bs G + 0.500 &\bs B = &\bs -48,\\ 0.500 &\bs R - 0.419 &\bs G - 0.081 &\bs B = &\bs 22. \end{array} \end{cases} \end{equation} (5.5)

例 5.2: 电路
在下面的电路中,我们希望计算电流 $I_1$、$I_2$ 和 $I_3$。
图 5.6: 一个电路示例。电流 $I_1$、$I_2$ 和 $I_3$ 未知。
图 5.6: 一个电路示例。电流 $\hid{I_1}$、$\hid{I_2}$ 和 $\hid{I_3}$ 未知。
基尔霍夫电压定律指出,沿电路中的任一闭合回路,电压的代数和为零。将它应用于电路左侧,得到 $5V-I_2 1\mathrm{k}\Omega-I_2 2\mathrm{k}\Omega=0$;应用于外侧回路,得到 $5V-I_3 4\mathrm{k}\Omega=0$。最后,在电路中的红点处应用基尔霍夫电流定律,得到第三个方程 $I_1=I_2+I_3$。综上,得到如下方程组
\begin{equation} \begin{cases} 1000 I_2 + 2000 I_2 \hid{+ 4000 I_3} = 5,\\ \hid{1000 I_1 + 2000 I_2 +} 4000 I_3 = 5,\\ \hid{1000}I_1\hid{2000} -I_2\hid{4000}-I_3 = 0,\\ \end{cases} \end{equation} (5.6)
其中省略了单位。求解该方程组即可得到 $I_1$、$I_2$ 和 $I_3$。求解这类 方程组 正是本章余下部分的主题。

例 5.3: 用三个点拟合圆
有些问题虽然是 非线性的,但经过变量代换后可以化为 线性 方程组。下面通过用三个点拟合圆的问题说明这一点。圆由圆心 $(u,v)$ 和半径 $r$ 确定。点 $(x_1,y_1)$ 在圆上,当且仅当
\begin{equation} (x_1-u)^2 + (y_1-v)^2 = r^2 . \end{equation} (5.7)
由于有三个未知量($u$、$v$ 和 $r$),我们自然会想到需要三个方程。也就是说,可以用三个点 $(x_1,y_1)$、$(x_2,y_2)$ 和 $(x_3,y_3)$ 来确定一个圆。经过 $(-2,3)$、$(-1,1)$、$(-1,2)$ 三点的圆是什么?由此得到三个 非线性 方程
\begin{equation} \begin{cases} (-2-u)^2 + (3-v)^2 = r^2 ,\\ (-1-u)^2 + (1-v)^2 = r^2 ,\\ (-1-u)^2 + (2-v)^2 = r^2 .\\ \end{cases} \end{equation} (5.8)
展开方程中的平方项,得到
\begin{equation} \begin{cases} 4+4u+u^2 + 9-6v+v^2 = r^2 ,\\ 1+2u+u^2 + 1-2v+v^2 = r^2 ,\\ 1+2u+u^2 + 4-4v+v^2 = r^2 .\\ \end{cases} \end{equation} (5.9)
整理各项后得到
\begin{equation} \begin{cases} (r^2 - u^2 - v^2) -4u +6v = 13 ,\\ (r^2 - u^2 - v^2) -2u +2v = 2 ,\\ (r^2 - u^2 - v^2) -2u +4v = 5 .\\ \end{cases} \end{equation} (5.10)
引入 $w=r^2-u^2-v^2$,便得到一个 线性 方程
\begin{equation} \begin{cases} w -4u +6v = 13 ,\\ w -2u +2v = 2 ,\\ w -2u +4v = 5 .\\ \end{cases} \end{equation} (5.11)
再次注意,这个看似 非线性 的问题可以转化为 线性 方程组。求解后得到 $w$、$u$ 和 $v$,再利用 $w=r^2-u^2-v^2$,即 $r^2=w+u^2+v^2$,即可求出半径。

上面的例子展示于 交互式图解 5.7
交互式图解 5.7: 给定三个点(红、绿、蓝)$(x_i,y_i)$,$i\in\{1,2,3\}$,可以计算圆心 $(u,v)$ 和半径 $r$。你可以移动红、绿、蓝三个点。
交互式图解 5.7: 给定三个点(红、绿、蓝)$\hid{(x_i,y_i)}$,$\hid{i\in\{1,2,3\}}$,可以计算圆心 $\hid{(u,v)}$ 和半径 $\hid{r}$。你可以移动红、绿、蓝三个点。
$(x_1,y_1)$
$(x_2,y_2)$
$(x_3,y_3)$
$(u,v)$
$r$

例 5.4: 四千年前的巴比伦问题
四千年前的巴比伦泥板上就已有线性方程组的记载。其中一个问题如下:

“有两块田地,总面积为 1800 平方码。一块田地每平方码产粮 $2/3$ 蒲式耳,另一块每平方码产粮 $1/2$ 蒲式耳。若总产量为 1100 蒲式耳,两块田地的面积各是多少?”

为两块田地的面积分别引入变量:第一块为 $x_1$ 平方码,第二块为 $x_2$ 平方码。于是问题可改写为
\begin{equation} \begin{cases} \begin{array}{rrrl} \frac{2}{3} x_1 & \bfm + & \bfm \frac{1}{2} x_2 & \bfm = 1100, \\ x_1 & \bfm + & \bfm x_2 & \bfm = 1800. \\ \end{array} \end{cases} \end{equation} (5.12)
求解即可得到 $x_1$、$x_2$。求解这类 方程组 正是本章余下部分的主题。
5.3 高斯消元法


求解方程组有很多方法,你很可能已经学过其中一些。不过,高斯消元法提供了一种始终有效的方法。可以把它想成一道食谱:只要按步骤操作,总能做出同样可口的菜肴。当然,我们得到的结果不能吃,而是一个呈 三角形结构的方程组,因此称为三角形方程组,如 图 5.8 所示。
$\begin{array}{rrrl} 6 & \!\!\!\!\!\! x + &\!\!\!\!\!\!\!y - 4 &\!\!\!\!\!\!z = \hid{-}4 \\ & 2 &\!\!\!\!\!\!y + 3 &\!\!\!\!\!\!z = -5 \\ & & 11 &\!\!\!\!\!\!z = -33 \\ \end{array}$
交互式图解 5.8: 这里给出了一个方程组。按 前进 按钮继续。
交互式图解 5.8: 图中的三角形突出显示了方程组的三角结构。
虽然 图 5.8 中的方程组有三个方程和三个未知量,却很容易求解。最下面的方程非常简单,两边同除以 $11$,得到 $z=\frac{-33}{11}=-3$。把 $z$ 代入倒数第二个方程,得到 $2y+3(-3)=-5$,即 $2y=4$,所以 $y=2$。再把 $y$ 和 $z$ 代入最上面的方程,就得到一个关于 $x$ 的简单方程。

高斯消元法的目标,是从任意线性方程组出发,把它化为三角形方程组。整个过程只需使用下面定理中的三条简单法则。

定理 5.1: 高斯消元法则
对一个线性方程组实施下列任一操作,其解集均保持不变:
  1. 交换两行的位置;
  2. 用一个非零常数乘某一行;或
  3. 把另一行的若干倍加到某一行上。
这个定理的证明暂留到 第 5.7.1 节。届时为完整起见,我们还会再次陈述该定理。
例如,设有如下方程组:
\begin{equation} \begin{cases} \begin{array}{rl} -x + \hid{4} y =& \!\!\!\! 8,\\ 2 x + 4y =& \!\!\!\!-10. \end{array} \end{cases} \end{equation} (5.13)
使用第二、第三条法则,把第一行的两倍加到最后一行,得到
\begin{equation} \begin{cases} -x + \hid{6} y = 8,\\ \hid{-x+}6y = 6, \end{cases} \end{equation} (5.14)
,即一个三角形方程组。正如前面所见,它很容易求解。由最后一行可得 $y=1$,代入第一行得到 $-x+1=8$,即 $x=-7$。

上例容易计算,是因为可以使用整数倍。但一般情况下并非总能如此。例如,考虑
\begin{equation} \begin{cases} 2 x + 3 y = -5, \\ 5 x + 2 y = 4. \end{cases} \end{equation} (5.15)
若要消去变量 $x$,需要先把第一行乘以 $-\frac{5}{2}$,再加到第二行。整数计算通常比分数计算简单,因此更方便的做法是把第一个方程乘以 $5$、第二个方程乘以 $2$,再将二者相减。 具体过程见交互式图解 5.9
交互式图解 5.9: 一个典型的高斯消元示例。第一步只是抄写第一个方程,单击或点按前进
交互式图解 5.9: 我们从下面的方程开始处理。现在要消去第一个变量,这里是 $\hid{x}$。右侧列出了辅助计算:先把第一个方程抄到草稿区。
$\Big\{\begin{array}{l} 2 x + 3 y = -5 \\ 5 x + 2 y = 4 \end{array}$
$2 x + 3 y = -5$
$\Big\{\begin{array}{rl} \class{hidden}{2 x + 3 y} & \class{hidden}{= -5} \\ \class{hidden}{11 y} & \class{hidden}{= -33} \end{array}$
$\class{hidden}{\Big\{}\begin{array}{l} 2 x + 3 y = -5 \\ \class{hidden}{5 x + 2 y = 4} \end{array}$
$2 x + 3 y = -5$
$\Big\{\begin{array}{l} 2 x + 3 y = -5 \\ \textcolor{red}{5} x + 2 y = 4 \end{array}$
$\textcolor{red}{5}\class{hidden}{(2 x + 3 y) = 5 (-5) }$
$\textcolor{red}{5}\class{hidden}{(2 x + 3 y) = 5 (-5) }$
$\class{hidden}{5}(2 x + 3 y) = \class{hidden}{5} (-5)$
$\textcolor{red}{5} (2 x + 3 y) = \textcolor{red}{5} (-5)$
$5 x + 2 y = 4$
$5 x + 2 y = 4$
$\class{hidden}{2}(5 x + 2 y) = \class{hidden}{2}(4)$
$\Big\{\begin{array}{l} \textcolor{#00dd00}{2} x + 3 y = -5 \\ 5 x + 2 y = 4 \end{array}$
$\textcolor{#00dd00}{2}$
$\textcolor{#00dd00}{2}$
$\textcolor{#00dd00}{2}\class{hidden}{(5 x + 2 y) =}\textcolor{#00dd00}{2}\class{hidden}{(4)}$
_____________________
$(\textcolor{red}{5}\cdot 2 - \textcolor{#00dd00}{2}\cdot 5) x + (\textcolor{red}{5} \cdot 3 - \textcolor{#00dd00}{2} \cdot 2) y = (\textcolor{red}{5})(-5) - \textcolor{#00dd00}{2}(4)$
$\Leftrightarrow$
$11 y = -33$
$\class{hidden}{\Big\{}\begin{align*} \class{hidden}{2 x + 3 y} & \class{hidden}{= -5} \\ 11 y & = -33 \end{align*}$
$\class{hidden}{5(2 x + 3 y) = }\textcolor{red}{5}\class{hidden}{(-5)}$
$\class{hidden}{2(5 x + 2 y) =}\textcolor{#00dd00}{2}\class{hidden}{(4)}$
$\class{hidden}{\Big\{}\begin{align*} \class{hidden}{2 x + 3 y} & \class{hidden}{= -5} \\ 11 y & = -33 \end{align*}$
$\class{hidden}{\Big\{}\begin{align*} 2 x + 3 y & = -5 \\ \class{hidden}{11 y} & \class{hidden}{= -33} \end{align*}$
$2 x + 3 y = -5$
$\textcolor{red}{5}\class{hidden}{(2 x + 3 y) = 5 (-5) }$
$\class{hidden}{5(2 x + 3 y) =}\textcolor{red}{5}\class{hidden}{(-5)}$
$5 x + 2 y = 4$
$\textcolor{#00dd00}{2}\class{hidden}{(5 x + 2 y) = 2(4)}$
$\class{hidden}{2(5 x + 2 y) =}\textcolor{#00dd00}{2}\class{hidden}{(4)}$
$\class{hidden}{\Big\{}\begin{align*} \class{hidden}{2 x + 3 y} & \class{hidden}{= -5} \\ 11 y & = -33 \end{align*}$
注意,交互式图解 5.9 中从原方程组变换到三角形 方程组的步骤,并不是直接应用某一条法则。例如,我们把一行的若干倍加到另一行的若干倍上,而法则中并没有这样的表述。不过,这可以看成连续应用两条法则:先把第二行乘以 $-2$(法则 2),再把第一行的 5 倍加到所得行上(法则 3)。因此, 交互式图解 5.9 中的变换最终仍然是合法的。

有时第一行不含第一个变量,因而不能直接从下面各行消去它。例如
\begin{equation} \begin{cases} \begin{array}{rrrl} 3 & \bs x_2 - 6 & \bs x_3 = -21, \\ 2 x_1 + 4 & \bs x_2 - 2 & \bs x_3 = \hid{-}16, \\ - x_1 - 7 & \bs x_2 + 2 & \bs x_3 = -27. \\ \end{array} \end{cases} \end{equation} (5.16)
这时只需按照第一条法则重新排列方程。把第一个方程移到最后,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} 2 & \!\!\!\!\!\! x_1 + 4 &\!\!\!\!\!\!\!x_2 - 2 &\!\!\!\!\!\!x_3 = \hid{-}16, \\ - & \!\!\!\!\!\! x_1 - 7 &\!\!\!\!\!\!x_2 + 2 &\!\!\!\!\!\!x_3 = -27, \\ & 3 &\!\!\!\!\!\!x_2 - 6 &\!\!\!\!\!\!x_3 = -21. \\ \end{array} \end{cases} \end{equation} (5.17)
把第二行乘以 2,再加到第一行,即可从第二行中消去 $x_1$,得到
\begin{equation} \begin{cases} \begin{array}{rrrl}\! 2 x_1 + 4&\!\!\!\!\!\!x_2 - 2&\!\!\!\!\!\!x_3 = \hid{-}16, \\ -10&\!\!\!\!\!\!x_2 + 2&\!\!\!\!\!\!x_3 = -38, \\ 3&\!\!\!\!\!\!x_2 - 6&\!\!\!\!\!\!x_3 = -21. \\ \end{array} \end{cases} \end{equation} (5.18)
为了消去 $x_2$,把第二行乘以 3、最后一行乘以 10,再将二者相加,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} 2 x_1 + 4 x_2 - 2 x_3 & = 16, \\ -10 x_2 + 2 x_3 & = -38, \\ -54 x_3 & = -324.\\ \end{array} \end{cases} \end{equation} (5.19)
此时方程组已经化为三角形方程组,很容易算出 $x_3=\frac{-324}{-54}=6$。代入第二行,得到 $-10x_2+12=-38$,等价于 $-10x_2=-50$,即 $x_2=5$。最后,把 $x_2=5$、$x_3=6$ 代入第一行,得到 $2x_1+20-12=16$,化简为 $2x_1=8$,所以 $x_1=4$。方程组至此求解完毕。
5.4 特殊情形


到目前为止,我们遇到的 方程组 都恰好有一个解。但情况并非总是如此,例如
\begin{equation} \begin{cases} \begin{array}{rl} 5 &\bs x + 2 y = 4,\\ 10 &\bs x + 4 y = 13. \end{array} \end{cases} \end{equation} (5.20)
求解这个方程组的常规做法,是把第一个方程乘以 $-2$ 后加到第二个方程上,得到
\begin{equation} \begin{cases} \begin{array}{rl} 5 x + 2 &\bs y = 4\\ &\bs 0 = 5 \end{array} \end{cases} \end{equation} (5.21)
零绝不可能等于五,但我们确实严格遵循了高斯消元法则(定理 5.1)。原因是这个方程组 无解。若改为把第一个方程乘以 2,原因便一目了然:
\begin{equation} \begin{cases} 10 x + 4 y = 8,\\ 10 x + 4 y = 13. \end{cases} \end{equation} (5.22)
这两个方程彼此矛盾:左边完全相同,右边却不同。因此该方程组无解。对这类方程组实施高斯消元,会得到类似上面的 $0=5$ 这样的矛盾。一旦出现这种情况,就可以断定方程组无解。
$5 x + 2 y -4 = 0$
$10 x + 4 y -13 = 0$
方程组(5.20) 中的两个方程解释为两条 直线,就能从图形上看清原因。第一个方程 $5x+2y=4$ 表示 图 5.10 中左侧的 直线;第二个方程 $10x+4y=13$ 表示右侧的 直线。从图中可以看到,这两条 直线 彼此平行,因此 永不相交。由于交点代表方程组的解,平面内两条互不重合的平行直线就对应一个无解的方程组。

无解并不是唯一的特殊情形。例如,设有如下方程组:
\begin{equation} \begin{cases} \begin{array}{rll} - &\bs x + &\bs y = \hid{-}8,\\ 3 &\bs x - 3 &\bs y = -24. \end{array} \end{cases} \end{equation} (5.23)
对第一个变量实施 高斯消元法 时,可以把第一行的三倍加到第二行,得到
\begin{equation} \begin{cases} \begin{array}{rl} -x + y & \!\!\!\!= 8,\\ 0 & \!\!\!\!= 0. \end{array} \end{cases} \end{equation} (5.24)
第二行于是化为恒等式 $0=0$,没有提供任何关于变量 $y$ 的信息。此时满足方程组的 $(x,y)$ 不止一个,而有许多个。为了表示所有这样的数对,令 $y=t$,得到
\begin{equation} \begin{cases} \begin{array}{rl} -x + t &\bsfyra = 8,\\ y &\bsfyra = t,\\ \end{array} \end{cases} \end{equation} (5.25)
再解出 $x$,得到
\begin{equation} \begin{cases} x = -8 + t,\\ y = \class{hidden}{-}0 + t.\\ \end{cases} \end{equation} (5.26)
$\textcolor{#009600}{S = \begin{pmatrix} -8\\ 0 \end{pmatrix}}$
$\textcolor{#c80000}{\mathrm{\bf d} = \begin{pmatrix} 1\\ 1 \end{pmatrix}}$
$P(t) = S + \mathrm{\bf d}$
$-x + y = 8$
$3x - 3y = -24$
因此,向量 $\begin{pmatrix}x\\y\end{pmatrix}$ 可以写成 $\begin{pmatrix}-8\\0\end{pmatrix}+\begin{pmatrix}1\\1\end{pmatrix}t$。正如 第 3.6.1 节所述,这是一条直线,形如 $P(t)=S+t\mathrm{\bf d}$,其中 $S=\begin{pmatrix}-8\\0\end{pmatrix}$,$\mathrm{\bf d}=\begin{pmatrix}1\\1\end{pmatrix}$。换言之,整条直线上的点都是这个方程组的解。如 插图 5.11所示,绿点为 $S$,红色箭头表示方向向量 $\mathrm{\bf d}$,所得 直线 以黑色绘出。

也可以回到原方程,从另一个角度理解这一点:
\begin{equation} \begin{cases} \begin{array}{rll} - &\bs x + &\bs y = \hid{-}8,\\ 3 &\bs x - 3 &\bs y = -24. \end{array} \end{cases} \end{equation} (5.27)
把下面的方程乘以 $-\frac{1}{3}$,得到
\begin{equation} \begin{cases} -x + y = 8,\\ -x + y = 8. \end{cases} \end{equation} (5.28)
也就是说,得到了两个完全相同的方程。第二个方程只是重复已有信息,并未提供新信息。两条 直线 $-x+y=8$ 与 $3x-3y=-24$ 完全重合,也就是同一条 直线。在 交互式图解 5.11 中按“前进”按钮即可看到这一点。事实上,$-x+y=8$ 和 $3x-3y=-24$ 采用隐式形式,而 $P(t)=S+t\mathrm{\bf d}$ 采用显式形式,三者表示的是同一条直线。

下面考虑一个含三个方程、三个未知量的方程组,例如
\begin{equation} \begin{cases} \begin{array}{rrrl} 2 & \!\!\!\!\!\! x + 4 &\!\!\!\!\!\!\!y - 2 &\!\!\!\!\!\!z = \hid{-}16, \\ - & \!\!\!\!\!\! x - 7 &\!\!\!\!\!\!y + 2 &\!\!\!\!\!\!z = -27, \\ & 3 &\!\!\!\!\!\!y - 6 &\!\!\!\!\!\!z = -21. \\ \end{array} \end{cases} \end{equation} (5.29)
与含两个方程的简单情形一样,这类方程组也可以作几何解释。不过此时,每个方程都对应三维空间中的一个 平面 (见 第 3.6.2 节)。方程组的解就是三个 平面 共同相交的点。这展示在 交互式图解 5.12的第一步中:每个 平面 表示一个方程,三个平面交于图中的一个黑点。你可以按住鼠标右键并移动鼠标来改变交互式图解的视角(Mac 上按住 Control 再按鼠标键,或在 Mac 笔记本触控板上用双指按下)。在 iPad 上,用双指拖动即可改变相机位置。
交互式图解 5.12: 唯一解示例: 当三个平面交于一点时,方程组恰好有一个解。
交互式图解 5.12: 多解示例: 这是另一个沿直线有无穷多个解的例子。两个方程表示同一个平面(虚线),第三个平面与它相交,所得交线就是解集。
不过有时,各方程所表示的 平面 都包含同一条 直线,如 交互式图解 5.12第二步所示。此时方程组不是只有一个解,而是有无穷多个解;解集正是图中黑色的 直线

另一些情况下,两个方程表示同一个平面。原因可能是它们的系数相同,也可能是一个方程等于另一个方程的常数倍。于是整个平面都同时满足这两个方程,图中用虚线平面表示。交互式图解 5.12中整个方程组的解,就是这个重合平面与第三个平面的交集,也就是一整条直线上的解,如图中的黑色实线所示。

方程组有解的最后一种情形,是三个方程都表示同一个 平面,例如方程组
\begin{equation} \begin{cases} \begin{array}{rrrl} & \bs x + \!\!\!\!&\bs y + &\bs z = 1,\\ 2&\bs x + 2&\bs y + 2&\bs z = 2,\\ 3&\bs x + 3&\bs y + 3&\bs z = 3.\\ \end{array} \end{cases} \end{equation} (5.30)
若点 $(x,y,z)$ 满足第一个方程,那么它也满足第二、第三个方程,因为后两者只是第一个方程分别乘以 $2$ 和 $3$。因此,该点也是整个方程组的解。于是解集被绘制成整个黑色平面,见 图 5.12

对于含两个方程、两个未知量的方程组,若要无解,表示两个方程的两条 直线 必须平行,如 交互式图解 5.10所示。但在三维空间中,情形不止如此。例如,考虑如下方程组。
\begin{equation} \begin{cases} \begin{array}{rrrl} 3 \sqrt{6}&\bs x + 3&\bs y + 3&\bs z = \sqrt{6}\\ -3 \sqrt{6}&\bs x + 3&\bs y + 3&\bs z = \sqrt{6}\\ & -6&\bs y - 6&\bs z = \sqrt{6}\\ \end{array} \end{cases} \end{equation} (5.31)
不难看出,这些 平面 两两均不平行,因为它们的 法向量 各不相同,而且不能通过乘以常数使之相同。三个 法向量 分别为 $(3\sqrt{6},3,3)$、$(-3\sqrt{6},3,3)$ 和 $(0,-6,-6)$。然而,实施 高斯消元法即可看出方程组仍然无解。把第一行与第二行相加,消去 $x$,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} 3 \sqrt{6}&\bs x + 3&\bs y + 3&\bs z = \sqrt{6},\\ & 6&\bs y + 6&\bs z = 2\sqrt{6},\\ & -6&\bs y - 6&\bs z = \sqrt{6}.\\ \end{array} \end{cases} \end{equation} (5.32)
接着把最后两个方程相加以消去 $y$,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} 3 \sqrt{6}&\bs x + 3&\bs y + 3&\bs z = \sqrt{6},\\ & 6&\bs y + 6&\bs z = 2\sqrt{6},\\ & & &\bs 0 = 3\sqrt{6}.\\ \end{array} \end{cases} \end{equation} (5.33)
这一步同时消去了 $z$,最终得到矛盾 $0=3\sqrt{6}$,说明方程组无解。其几何图形见 图 5.13的第一步。有些位置满足其中两个方程,却不满足第三个方程,这些位置用虚 直线标出。注意,不存在同时位于三个 平面上的点,因此方程组无解,尽管这些 平面 并不平行。
交互式图解 5.13: 无解示例: 三个平面两两相交,却没有共同交点。虚线是两平面的交线,表示满足其中两个方程但不满足第三个方程的位置。
交互式图解 5.13: 无解示例: 此时有两个平面重合。相应区域用虚线表示,说明这里同时满足两个方程;但没有任何点还满足第三个方程,所以方程组无解。
如果三个 平面 彼此平行且互不重合,方程组便无解,如 图 5.13

一种特殊情形是两个方程表示同一个平面,而第三个方程表示另一个平面,它与前者平行但不重合。这个例子见 图 5.13的第三步,其中虚线 平面 满足两个方程,另一个 平面 满足第三个方程。因此方程组仍然无解。

最后一种无解情形,是三个 平面中有两个彼此平行且不重合。第三个平面分别与这两个平行平面相交,形成两条 直线 (在 交互式图解 5.13第四步中以虚线表示),但不存在同时属于三个 平面的点,因此方程组无解。

综上,方程组的解只可能有三种情形:
  1. 恰好一个解;
  2. 无解;或
  3. 有无穷多个解。
5.5 齐次情形


一个特殊情形是所有方程的右端都为零,例如
\begin{equation} \begin{cases} \begin{array}{rrrl} 2 x_1 + 5 & \bs x_2 + 3 & \bs x_3 = 0, \\ 4 x_1 + 2 & \bs x_2 +\hid{3}& \bs x_3 = 0, \\ 2 x_1 - 3 & \bs x_2 - 2 & \bs x_3 = 0, \\ \end{array} \end{cases} \end{equation} (5.34)
这样的方程组称为 齐次方程组,它总有解 $x_1=x_2=x_3=0$。这个解很容易找到,通常称为“平凡解”。不过,有时方程组还存在非平凡解。我们用 高斯消元法 判断是否如此。第一步,从下面两个方程中消去 $x_1$。对中间的方程,用第一个方程的两倍减去第二个方程;对最后一个方程,用第一个方程减去最后一个方程,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} 2 x_1 + 5 & \bs x_2 + 3 & \bs x_3 = 0, \\ 8 & \bs x_2 + 5 & \bs x_3 = 0, \\ 8 & \bs x_2 + 5 & \bs x_3 = 0. \\ \end{array} \end{cases} \end{equation} (5.35)
从最后两行消去 $x_2$,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} 2 x_1 + 5 & \bs x_2 + 3 & \bs x_3 = 0, \\ 8 & \bs x_2 + 5 & \bs x_3 = 0, \\ & & \bs 0 = 0. \\ \end{array} \end{cases} \end{equation} (5.36)
现在令 $x_3=t$,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} 2 x_1 + 5 & \bs x_2 + 3 & \bs t = 0, \\ 8 & \bs x_2 + 5 & \bs t = 0, \\ & & \bs\bs x_3 = t. \\ \end{array} \end{cases} \end{equation} (5.37)
解得 $x_2=-\frac{5}{8}t$,代入第一个方程,得到 $2x_1+5(-\frac{5}{8})t+3t=0$。化简可得 $x_1=\frac{1}{16}t$。因此
\begin{equation} \begin{cases} \begin{array}{rrl} x_1 = & \bs \frac{1}{16} & \bs t, \\ x_2 = & \bs -\frac{5}{8} & \bs t, \\ x_3 = & \bs &\bs t, \\ \end{array} \end{cases} \end{equation} (5.38)
这说明除平凡解 $x_1=x_2=x_3=0$ 外,该方程组还有无穷多个解。
5.6 隐式形式与显式形式


正如 第 3.6 节所述,平面直线 既可以写成隐式形式,也可以写成显式形式。利用 高斯消元法可以在两种形式之间转换。回忆一下,平面 $P(t_1,t_2)=S+t_1\vc{d}_1+t_2\vc{d}_2$ 采用显式形式,而 $\vc{n}\cdot(P-S)=0$ 则采用隐式形式。设有如下 平面
\begin{equation} \begin{cases} x &= \class{hidden}{0 +} \frac{3}{2} t_1, \\ y &= \class{hidden}{0 + \frac{3}{2}} t_1 + t_2, \\ z &= 1 \class{hidden}{\frac{3}{2}}-t_1 + 2 t_2, \end{cases} \end{equation} (5.39)
其中 $S=(0,0,1)$、$\vc{d}_1=(\frac{3}{2},1,-1)$、$\vc{d}_2=(0,1,2)$。利用高斯消元法消去变量 $t_1$ 和 $t_2$,可以把它变换为隐式形式。为说明具体过程,先重写方程组,把待消去的变量放在最左侧,即
\begin{equation} \begin{cases} \frac{3}{2} &\bs t_1 \class{hidden}{+2t_2}= x,\\ &\bs t_1 \class{hidden}{2}+ t_2 = y,\\ -&\bs t_1 + 2 t_2 = z - 1.\\ \end{cases} \end{equation} (5.40)
为使 高斯消元法 更容易进行,把第一行移到最下面,得到
\begin{equation} \begin{cases} &\bs t_1 \class{hidden}{2}+ t_2 = y,\\ -&\bs t_1 + 2 t_2 = z - 1,\\ \frac{3}{2} &\bs t_1 \class{hidden}{+2t_2}= x.\\ \end{cases} \end{equation} (5.41)
把前两行相加,消去第二行中的 $t_1$;把第一行乘以 $\frac{3}{2}$ 后减去最后一行,消去最后一行中的 $t_1$。得到
\begin{equation} \begin{cases} \begin{array}{rl} t_1 + & \bsfem t_2 = y,\\ 3 & \bsfem t_2 = y + z - 1,\\ \frac{3}{2} & \bsfem t_2 = \frac{3}{2}y - x.\\ \end{array} \end{cases} \end{equation} (5.42)
现在用中间一行减去最后一行的两倍,即可从最后一个方程中消去 $t_2$:
\begin{equation} \begin{cases} \begin{array}{rl} t_1 \class{hidden}{2}+ t_2 & \bsfem = y,\\ 3 t_2 & \bsfem = y + z - 1,\\ 0 & \bsfem= y + z - 1 - 2(\frac{3}{2}y - x).\\ \end{array} \end{cases} \end{equation} (5.43)
最后一行化简为 $2x-2y+z-1=0$,这就是该 平面 方程的隐式形式。从隐式形式转换为显式形式更容易。令 $y=t_1$、$z=t_2$,得到方程组
\begin{equation} \begin{cases} \begin{array}{rl} 2x - 2t_1 +t_2 + -1 &\bsfem = 0,\\ y &\bsfem = t_1,\\ z &\bsfem = t_2, \end{array} \end{cases} \end{equation} (5.44)
可将其改写为
\begin{equation} \begin{cases} \begin{array}{rlll} x &\bsfem = \frac{1}{2} + t_1 -\frac{1}{2}t_2, \\ y &\bsfem = \class{hidden}{\frac{1}{2} } +t_1, \\ z &\bsfem = \class{hidden}{\frac{1}{2} + t1 \frac{1}{2}} + t_2. \end{array} \end{cases} \end{equation} (5.45)
这就是显式形式,即 $P(t_1,t_2)=\hat{S}+t_1\hat{\vc{d}}_1+t_2\hat{\vc{d}}_2$,其中 $\hat{S}=(\frac{1}{2},0,0)$、$\hat{\vc{d}}_1=(1,1,0)$、$\hat{\vc{d}}_2=(-\frac{1}{2},0,1)$。注意,这个显式形式与起初的形式(方程(5.39))看起来并不相同,即 $\hat{S}\neq S$、$\hat{\vc{d}_1}\neq\vc{d}_1$、$\hat{\vc{d}_2}\neq\vc{d}_2$,但两者表示的是同一个 平面。原因很简单:同一个 平面可以有许多不同的参数化方式。如 图 5.14所示,点 $S$ 以及向量 $\vc{d}_1$、$\vc{d}_2$ 以红色绘出,表示例子中的 平面 。也可以用蓝色绘出的另一个点 $\hat{S}$ 和另外两个向量 $\hat{\vc{d}}_1$、$\hat{\vc{d}}_2$ 表示同一平面
5.7 理论基础


前面各节给出了 高斯消元法 的若干例子,并在可能时给出了几何解释。下一节将从理论上说明高斯消元法为何成立。

5.7.1 高斯消元法则



回顾例子 方程组(5.16),即
\begin{equation} \begin{cases} \begin{array}{rrrl} 3 & \bs x_2 - 6 & \bs x_3 = -21, \\ 2 x_1 + 4 & \bs x_2 - 2 & \bs x_3 = \hid{-}16, \\ - x_1 - 7 & \bs x_2 + 2 & \bs x_3 = -27. \\ \end{array} \end{cases} \end{equation} (5.46)
利用高斯消元法,我们得到三角形方程组 (5.19),其解为 $\vc{x}=(x_1,x_2,x_3)=(4,5,6)$。但如何确定它也是上面原方程组的解?当然可以直接验证:把解 $\vc{x}$ 代入上面的方程组,得到
\begin{equation} \begin{cases} \begin{array}{rrrrl} 3 \cdot & \bs 5 - 6 \cdot & \bs 6 = & \bstwo 15 - 36 & = -21, \\ 2\cdot 4 + 4 \cdot & \bs 5 - 2 \cdot & \bs 6 = & \bstwo 8 + 20 - 12 & = \hid{-}16, \\ - 4 - 7 \cdot & \bs 5 + 2 \cdot & \bs 6 = & \bstwo -4 -35 + 12 & = -27, \\ \end{array} \end{cases} \end{equation} (5.47)
等式全部成立。不过,即使验证了这个具体例子,我们仍希望证明 高斯消元法 绝不会改变方程组的解集。

这里适合引入蕴含 $\Rightarrow$ 与等价 $\Leftrightarrow$ 的概念。若第一个方程组的每个解也都是第二个方程组的解,就说第一个方程组蕴含第二个方程组。若两个方向都成立,则称两个 方程组 等价。因此可以写成
\begin{equation} \begin{cases} \begin{array}{rrrrrl} 1 x_1 & \bsfem +& \bsfem 2 x_2 & \bsfem = 1, \\ 2 x_1 & \bsfem +& \bsfem 5 x_2 & \bsfem = 7, \\ \end{array} \end{cases} \Leftrightarrow \begin{cases} \begin{array}{rrrrrl} 1 x_1 & \bsfem +& \bsfem 2 x_2 & \bsfem = 1, \\ & \bsfem +& \bsfem 1 x_2 & \bsfem = 5, \\ \end{array} \end{cases} \end{equation} (5.48)
表示第二个方程组的解集与第一个方程组完全相同。但在变换 方程组 的过程中,如何确保解集不变?下面的定理回答了这个问题。为方便阅读,它重述了 定理 5.1

定理 5.2: 高斯消元法则
对一个线性方程组实施下列任一操作,其解集均保持不变:
  1. 交换两个方程的位置;
  2. 用一个非零常数乘某个方程;或
  3. 把另一个方程的若干倍加到某个方程上。

高斯消元法的第一条法则,即 定理 5.2 指出,可以交换两个方程的位置。显然,仅仅重排方程不会改变方程组的解,即
\begin{equation} \begin{cases} \begin{array}{rrrl} a_{11} x & \bsfem \, + a_{12} y & \bsfem \, + a_{13} z & \bsfem \, = b_1 , \\ a_{21} x & \bsfem \, + a_{22} y & \bsfem \, + a_{23} z & \bsfem \, = b_2 , \end{array} \end{cases} \Leftrightarrow \begin{cases} \begin{array}{rrrl} a_{21} x & \bsfem \, + a_{22} y & \bsfem \, + a_{23} z & \bsfem \, = b_2 , \\ a_{11} x & \bsfem \, + a_{12} y & \bsfem \, + a_{13} z & \bsfem \, = b_1 . \end{array} \end{cases} \end{equation} (5.49)


第二条法则允许用一个非零常数乘某个方程。由代数知识可知,等式两边同乘一个非零常数不会改变方程的解,因此也不会影响方程组的解。
\begin{equation} \begin{cases} \begin{array}{rrrll} a_{11} x & \bsfem \, + a_{12} y & \bsfem \, + a_{13} z & \bsfem \, = b_1 , & \bsfem \, \, \, (i) \\ a_{21} x & \bsfem \, + a_{22} y & \bsfem \, + a_{23} z & \bsfem \, = b_2 , & \bsfem \, \, \, (ii) \end{array} \end{cases} \Leftrightarrow \begin{cases} \begin{array}{rrrll} ka_{11} x & \bsfem \, + ka_{12} y & \bsfem \, + ka_{13} z & \bsfem \, = kb_1 , & \bsfem \, \, \, (i') = k (i)\\ a_{21} x & \bsfem \, + a_{22} y & \bsfem \, + a_{23} z & \bsfem \, = b_2 . & \bsfem \, \, \, (ii') = (ii) \end{array} \end{cases} \end{equation} (5.50)
注意,将 $(i')$ 除以 $k$ 就能还原原方程组。因此,$(i),(ii)$ 的每个解都是 $(i'),(ii')$ 的解,反之亦然。

反之,乘以零可能改变解。例如,$(x,y)=(2,3)$ 不满足方程
\begin{equation} x + y = 1, \, \, \, (i) \end{equation} (5.51)
却满足方程
\begin{equation} 0\cdot (x + y) = 0 \cdot 1. \, \, \, \, (i') = 0 (i) \end{equation} (5.52)
这里,$(i)$ 的每个解都是 $(i')$ 的解,但 $(i')$ 可能还有并不满足 $(i)$ 的解。我们无法从 $(i')$ 还原方程 $(i)$。

第三条法则允许把另一行的若干倍加到某一行。设解 $(x,y,z)$ 满足方程组
\begin{equation} \begin{cases} \begin{array}{rrrll} a_{11} x & \bsfem \, + a_{12} y & \bsfem \, + a_{13} z & \bsfem \, = b_1, & \bsfem \, \, \, (i)\\ a_{21} x & \bsfem \, + a_{22} y & \bsfem \, + a_{23} z & \bsfem \, = b_2, & \bsfem \, \, \, (ii)\\ a_{31} x & \bsfem \, + a_{32} y & \bsfem \, + a_{33} z & \bsfem \, = b_3. & \bsfem \, \, \, (iii)\\ \end{array} \end{cases} \end{equation} (5.53)
把第一行的 $k$ 倍加到第二行,得到
\begin{equation} \begin{cases} \begin{array}{rrrrll} a_{11} x & \bsfem \, + a_{12} y & \bsfem \, + a_{13} z & \bsfyra = & \bsfem b_1, & \bsfem \, \, \, (i')=(i) \\ (a_{21}+ka_{11}) x & \bsfem \, + (a_{22}+ka_{12}) y & \bsfem \, + (a_{23}+ka_{13}) z & \bsfyra = & \bsfem b_2 + k b_1, & \bsfem \, \, \, (ii') = (ii)+k(i)\\ a_{31} x & \bsfem \, + a_{32} y & \bsfem \, + a_{33} z & \bsfyra = & \bsfem b_3. & \bsfem \, \, \, (iii') = (iii) \\ \end{array} \end{cases} \end{equation} (5.54)
由于这里只使用了标准代数法则(例如等式两边同加一个常数并不改变等式),原 方程组(5.53) 的解 $(x,y,z)$ 必然也是上面 方程组(5.54) 的解。更重要的是,可以从新 方程组(5.54)还原原方程组(5.53):只需把第一行 $(i')$ 的 $-k$ 倍加到第二行 $(ii')$。因此,方程组(5.54) 的解 $(x,y,z)$ 必然也是上面 方程组(5.53) 的解。由此证明了两个方程组等价。
$\square$


5.7.2 一般情形



本章已经给出了 线性方程组 无解、唯一解或无穷多解的例子。本节将讨论一般情形,并严格证明线性方程组的解必属这三种情况之一。

定理 5.3: 线性方程组的解
一个线性方程组的解只可能是
  1. 无解;或
  2. 恰好一个解;
  3. 有无穷多个解。

一般的线性方程组形如
\begin{equation} \begin{cases} \begin{array}{rrrrrl} a_{11} x_1 + & \bs a_{12} x_2 + & \bs a_{13} x_3 + & \bs \ldots + & \bs a_{1M} x_M & \bs = b_1,\\ a_{21} x_1 + & \bs a_{22} x_2 + & \bs a_{23} x_3 + & \bs \ldots + & \bs a_{2M} x_M & \bs = b_2,\\ a_{31} x_1 + & \bs a_{32} x_2 + & \bs a_{33} x_3 + & \bs \ldots + & \bs a_{3M} x_M & \bs = b_3,\\ & & & & & \bsfem \vdots\\ a_{N1} x_1 + & \bs a_{N2} x_2 + & \bs a_{N3} x_3 + & \bs \ldots + & \bs a_{NM} x_M & \bs = b_N,\\ \end{array} \end{cases} \end{equation} (5.55)
其中 $a_{kl}$ 和 $b_k$ 是已知常数,$x_k$ 是未知量。先处理第一个变量 $x_1$。此时有两种可能:若所有系数 $a_{i1}$ 均为零,就无法再对这个变量进行消元。在 例 5.5 中会更详细地说明这种情形。更常见的是至少有一个系数 $a_{i1}$ 非零。这时总能利用 高斯消元法的第一条法则重新排列方程,使 $a_{11}\neq0$。随后,把第一行的 $-(a_{21}/a_{11})$ 倍加到第二行,把第一行的 $-(a_{31}/a_{11})$ 倍加到第三行,依此类推,便可从除第一行外的所有方程中消去 $x_1$。把新常数记为 $a'_{kl}$ 和 $b'_k$,得到
\begin{equation} \begin{cases} \begin{array}{rl} a_{11} x_1 + & \bs a_{12} x_2 + & \bs a_{13} x_3 + & \bs \ldots & \bsfem + a_{1M} x_M & \bs = b_1,\\ & \bs a'_{22} x_2 + & \bs a'_{13} x_3 + & \bs \ldots & \bsfem + a'_{2M} x_M & \bs = b'_2,\\ & \bs a'_{32} x_2 + & \bs a'_{33} x_3 + & \bs \ldots & \bsfem + a'_{3M} x_M & \bs = b'_3,\\ & & & & & \bsfem \vdots\\ & \bs a'_{N2} x_2 + & \bs a'_{N3} x_3 + & \bs \ldots & \bsfem + a'_{NM} x_M & \bs = b'_N.\\ \end{array} \end{cases} \end{equation} (5.56)
完成这一步后,$x_1$ 的系数要么只在第一个方程中非零,要么全部为零。

现在对带撇号常数构成的较小方程组重复同样过程,也就是处理 方程组(5.56)中所有不含 $x_1$ 的行。仍有两种情况:要么待消去变量 $x_2$ 在所有这些方程中的系数都为零;要么至少有一个方程中 $x_2$ 的系数非零。重新排序并消元后,$x_2$ 的系数要么在所有方程中都为零,要么恰好只在一个方程中非零。

重复这一过程,直到没有更多含未知量的方程。最后可能剩下一些 $0=0$ 形式的恒等式,直接删去即可。最终有三种可能结果。

第一种:至少出现一个形如 $0=\hat{b}_i\neq0$ 的方程,此时方程组无解。例如 方程组(5.33)展示了这种情形。后续讨论中,假设不出现这种矛盾。

第二种:所得方程组为三角形方程组,即
\begin{equation} \begin{cases} \begin{array}{rl} \hat{a}_{11} x_1 + & \bs \hat{a}_{12} x_2 + & \bs \hat{a}_{13} x_3 + & \bs \ldots + & \bsfem \hat{a}_{1M} x_M & \bs = \hat{b}_1,\\ & \bs \hat{a}_{22} x_2 + & \bs \hat{a}_{13} x_3 + & \bs \ldots + & \bsfem \hat{a}_{2M} x_M & \bs = \hat{b}_2,\\ & & \bs \hat{a}_{33} x_3 + & \bs \ldots + & \bsfem \hat{a}_{3M} x_M & \bs = \hat{b}_3,\\ & & & & & \bsfem \vdots\\ & & & & \bsfem \hat{a}_{MM} x_M & \bs = \hat{b}_M,\\ \end{array} \end{cases} \end{equation} (5.57)
其中 $\hat{a}_{kl}$ 和 $\hat{b}_k$ 是完成高斯消元后得到的常数。此时可由最后一个方程唯一求出 $x_M$,再利用该结果从倒数第二个方程求出 $x_{M-1}$,依此类推。因此方程组有唯一解。

第三种:消元后,方程数少于未知量数,例如
\begin{equation} \begin{cases} \begin{array}{rl} \hat{a}_{11} x_1 + & \bs \hat{a}_{12} x_2 + & \bs \hat{a}_{13} x_3 + & \bs \hat{a}_{14} x_4 + & \bsfem \hat{a}_{15} x_M & \bs = \hat{b}_1,\\ & & \bs \hat{a}_{23} x_3 + & \bs \hat{a}_{24} x_4 + & \bsfem \hat{a}_{25} x_5 & \bs = \hat{b}_2,\\ & & & \bs \hat{a}_{34} x_4 + & \bsfem \hat{a}_{35} x_5 & \bs = \hat{b}_3.\\ \end{array} \end{cases} \end{equation} (5.58)
上例有三个方程,其非零首项系数分别对应三个变量 $x_1$、$x_3$、$x_4$。剩余两个变量 $x_2$、$x_5$ 实际上不受约束。因此可令 $x_2=t_1$、$x_5=t_2$,再求其余变量。这里
\begin{equation} x_4 = \frac{1}{\hat{a}_{34}}(\hat{b}_3 -\hat{a}_{35} t_{2}) . \\ \end{equation} (5.59)
随后可求出剩余变量(这里是 $x_1$ 和 $x_3$)。由于解依赖于可任意取值的参数 $\{t_1,t_2\}$,所以方程组有无穷多个解。

因此,线性方程组要么无解,要么有唯一解,要么有无穷多个解。
$\square$


对于有无穷多个解的情形,还值得考察解集中有多少个自由变量,换句话说,就是解集的维数。这个问题可用秩 $\rank$ 来刻画,详见 第 8 章

例 5.5: 系数全为零
正如上面的证明所述,在实施 高斯消元法时,某个变量在所有剩余方程中的系数有时都会变成零。此时只需跳过相应一步,如下例所示:
\begin{equation} \begin{cases} \begin{array}{rrrrrrrl} x_1 & \bfm + & \bfm x_2 & \bfm + & \bfm 2 x_3 & \bfm + & \bfm 3 x_4 & \bfm = 1, \\ 2 x_1 & \bfm + & \bfm 2 x_2 & \bfm + & \bfm 4 x_3 & \bfm + & \bfm 7 x_4 & \bfm = 1, \\ 3 x_1 & \bfm + & \bfm 3 x_2 & \bfm + & \bfm 6 x_3 & \bfm + & \bfm 10 x_4 & \bfm = 2. \\ \end{array} \end{cases} \end{equation} (5.60)
在第二行中,把第一个方程的 $-2$ 倍加到第二个方程,以消去 $x_1$;在第三行中,把第一个方程的 $-3$ 倍加到最后一个方程,以消去 $x_1$。得到
\begin{equation} \begin{cases} \begin{array}{rrrrrrrl} x_1 & \bfm + & \bfm x_2 & \bfm + & \bfm 2 x_3 & \bfm + & \bfm 3 x_4 & \bfm = 1, \\ & & & & & \bfm & \bfm x_4 & \bfm = -1, \\ & & & & & \bfm & \bfm x_4 & \bfm = -1. \\ \end{array} \end{cases} \end{equation} (5.61)
通常消去 $x_1$ 后,下一步应尝试消去 $x_2$。但这里第二、第三 行中 $x_2$ 的系数都为零。因此直接跳过它,处理下一个变量 $x_3$。$x_3$ 的情形相同,于是继续跳到最后一个变量 $x_4$。消去 $x_4$ 只得到 $0=0$,所以方程组可改写为
\begin{equation} \begin{cases} \begin{array}{rrrrrrrl} x_1 & \bfm + & \bfm x_2 & \bfm + & \bfm 2 x_3 & \bfm + & \bfm 3 x_4 & \bfm = 1, \\ & & & & & \bfm & \bfm x_4 & \bfm = -1. \\ \end{array} \end{cases} \end{equation} (5.62)
由最后一个方程可知 $x_4=-1$。令 $x_2=s$、$x_3=t$,再代入第一个方程:
\begin{equation} x_1 + s + 2t + 3(-1) = 1, \end{equation} (5.63)
由此得到
\begin{equation} x_1 = -s - 2t + 4. \end{equation} (5.64)
综上,解为
\begin{equation} \begin{cases} \begin{array}{rllll} x_1 =& \bstre - & \bs s -2 \bs & t \bs & +4,\\ x_2 =& \bstre & \bs s, \bs & \bs & \\ x_3 =& \bstre & \bs \bs & t, \bs & \\ x_4 =& \bstre & \bs \bs & \bs & -1.\\ \end{array} \end{cases} \end{equation} (5.65)
5.8 线性相关与线性无关


本节介绍 线性相关线性无关,它们是 线性 代数中的两个重要概念。不过先从 线性组合开始,这是另一个常用概念。定义如下。

定义 5.1: 线性组合
若向量 $\vc{u}$ 可表示为
\begin{equation} \vc{u} = k_1\vc{v}_1 + k_2\vc{v}_2 + \dots + k_n \vc{v}_n = \sum_{i=1}^{n} k_i \vc{v}_i, \end{equation} (5.66)
则称 $\vc{u}$ 是向量 $\vc{v}_1,\dots,\vc{v}_n$ 的线性组合,其中 $k_1,k_2,\dots,k_n$ 为标量。
列向量记法中(定义 2.5),例如有 $\vc{w}=w_x\vc{e}_1+w_y\vc{e}_2+w_z\vc{e}_3$。也就是说,三维向量 $\vc{w}$ 是 向量 $\vc{e}_1$、$\vc{e}_2$、$\vc{e}_3$ 的线性组合,标量系数分别是 $w_x$、$w_y$、$w_z$。

下面利用线性组合的定义,考察线性相关线性无关的向量组。

定义 5.2: 线性无关与线性相关
若向量组 $\vc{v}_1,\dots,\vc{v}_n$ 线性无关,则方程
\begin{equation} k_1\vc{v}_1 + k_2 \vc{v}_2 + \dots + k_n \vc{v}_n = \vc{0}, \end{equation} (5.67)
唯一解为
\begin{equation} k_1 = k_2 = \dots = k_n =0. \end{equation} (5.68)
若该方程至少还存在一个其他解,则该向量组线性相关

例 5.6: 标准基
这组标准基由以下向量组成:
\begin{align} \vc{e}_x & = (1,0,0), \\ \vc{e}_y & = (0,1,0), \\ \vc{e}_z & = (0,0,1). \end{align} (5.69)
为了判断它们是否线性无关,可针对这一情形写出方程(5.67)
\begin{equation} k_1\vc{e}_x + k_2\vc{e}_y + k_3\vc{e}_z = \vc{0}. \end{equation} (5.70)
列向量记法改写(定义 2.5),得到
\begin{align} \vc{0} &= k_1\vc{e}_x + k_2\vc{e}_y + k_3\vc{e}_z = k_1 \begin{pmatrix}1\\ 0 \\ 0\end{pmatrix} + k_2 \begin{pmatrix}0\\ 1 \\ 0\end{pmatrix} + k_3 \begin{pmatrix}0\\ 0 \\ 1\end{pmatrix} \\ &= \begin{pmatrix}k_1\\ 0 \\ 0\end{pmatrix} + \begin{pmatrix}0\\ k_2 \\ 0\end{pmatrix} + \begin{pmatrix}0\\ 0 \\ k_3\end{pmatrix} = \begin{pmatrix}k_1\\ k_2 \\ k_3\end{pmatrix}. \end{align} (5.71)
于是得到 $(k_1,k_2,k_3)=(0,0,0)$,这证明 标准基 线性无关

定理 5.4: 线性组合与线性相关
向量 $\vc{v}_1,\vc{v}_2,\dots,\vc{v}_n$ 中有一个可以写成其余向量的线性组合当且仅当向量 $\vc{v}_1,\vc{v}_2,\dots,\vc{v}_n$ 线性相关

线性无关与线性相关 (定义 5.2)可知,若这些向量线性相关,则方程
\begin{equation} k_1\vc{v}_1 + k_2\vc{v}_2 + \dots + k_n \vc{v}_n = \vc{0} \end{equation} (5.72)
存在至少一个 $k_1,k_2,\dots,k_n$ 不为零的解。设最后一个系数 $k_n$ 非零(总可以重新排列下标使之成立)。把第 $n$ 项移到等式另一边,得到
\begin{equation} k_1\vc{v}_1 + k_2\vc{v}_2 + \dots + k_{n-1} \vc{v}_{n-1} = - k_n \vc{v}_n, \end{equation} (5.73)
由于 $k_n\neq0$,两边除以 $-k_n$ 并交换等式两边,得到
\begin{equation} \vc{v}_n = -\frac{k_1}{k_n}\vc{v}_1 - \dots - \frac{k_{n-1}}{k_n} \vc{v}_{n-1}. \end{equation} (5.74)
可见,我们已经把向量 $\vc{v}_n$ 写成其余向量的线性组合

反方向的证明更简单。设其中一个向量可以写成其余向量的线性组合。重新编号后,不妨设这个向量是 $\vc{v}_n$,则
\begin{equation} \vc{v}_n = a_1\vc{v}_1 + a_2\vc{v}_2 + \dots + a_{n-1} \vc{v}_{n-1}. \end{equation} (5.75)
把 $\vc{v}_n$ 项移到另一边,得到
\begin{equation} 0 = a_1\vc{v}_1 + a_2\vc{v}_2 + \dots + a_{n-1} \vc{v}_{n-1} - 1\vc{v}_n, \end{equation} (5.76)
取 $k_1=a_1,k_2=a_2,\dots,k_{n-1}=a_{n-1},k_n=-1$,便得到方程的一个解
\begin{equation} k_1\vc{v}_1 + k_2\vc{v}_2 + \dots + k_{n-1} \vc{v}_{n-1} - k_n\vc{v}_n = 0 \end{equation} (5.77)
其中并非所有 $k_j$ 都为零,因为 $k_n=-1$。这说明向量 $\vc{v}_1,\vc{v}_2,\dots,\vc{v}_n$ 线性相关
$\square$


例 5.7:
向量 $\vc{u}=(1,2,3)$ 与 $\vc{v}=(2,4,6)$ 线性相关。这是因为 $\vc{v}$ 可以写成 $\vc{u}$ 的线性组合:$\vc{v}=2\vc{u}$。

例 5.8:
三个向量 $\vc{u}=(1,2,3)$、$\vc{v}=(2,4,6)$、$\vc{w}=(1,0,7)$ 线性相关。这是因为 $\vc{v}$ 可以写成 $\vc{u}$ 和 $\vc{w}$ 的线性组合:$\vc{v}=2\vc{u}+0\vc{w}$。由此可知,向一个已经线性相关的向量组中再加入一个向量,所得新向量组绝不可能变成线性无关

例 5.9:
只含向量 $\vc{v}=(0,0,0)$ 的向量组 线性相关。根据 定义 5.2,当 $k_1$ 取非零值时,例如 $k_1=5$,仍有 $k_1\vc{v}=\vc{0}$。同理,只含一个非零向量的向量组线性无关

例 5.10:
判断三个向量 $\vc{u}=(1,2,3)$、$\vc{v}=(2,3,4)$、$\vc{w}=(-1,0,1)$ 是否线性无关

无法一眼看出这些向量是否线性相关。例如,没有一个向量等于 $(0,0,0)$,也没有一个向量是另一个向量的简单倍数。回到定义:这些向量线性无关,当且仅当
\begin{equation} k_1 \begin{pmatrix}1\\ 2 \\ 3\end{pmatrix} + k_2 \begin{pmatrix}2\\ 3 \\ 4\end{pmatrix} + k_3 \begin{pmatrix}-1\\ 0 \\ 1\end{pmatrix} = \begin{pmatrix}0\\ 0 \\ 0\end{pmatrix} \end{equation} (5.78)
只有解 $(k_1,k_2,k_3)=(0,0,0)$。三个分量各产生一个方程,得到方程组
\begin{equation} \begin{cases} \begin{array}{rrrl} k_1 \bsfem & + \ 2 k_2 \bsfem & - \ k_3 \bsfem & = 0,\\ 2 k_1 \bsfem & + \ 3 k_2 \bsfem & & = 0,\\ 3 k_1 \bsfem & + \ 4 k_2 \bsfem & + \ k_3 \bsfem & = 0.\\ \end{array} \end{cases} \end{equation} (5.79)
从第二、第三个方程中消去 $k_1$,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} k_1 \bsfem & + \ 2 k_2 \bsfem & - \ \hid{2} k_3 \bsfem & = 0,\\ & k_2 \bsfem & - \ 2 k_3 \bsfem & = 0,\\ & 2 k_2 \bsfem & - \ 4 k_3 \bsfem & = 0.\\ \end{array} \end{cases} \end{equation} (5.80)
再尝试从第三个方程中消去 $k_2$,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} k_1 \bsfem & + \ 2 k_2 \bsfem & - \ \hid{2} k_3 \bsfem & = 0,\\ & k_2 \bsfem & - \ 2 k_3 \bsfem & = 0,\\ & & 0 \bsfem & = 0.\\ \end{array} \end{cases} \end{equation} (5.81)
该方程组是欠定的,有无穷多个解。令 $k_3=t$,代入第二个方程得到 $k_2=2t$;再把这两个值代入第一个方程,得到
\begin{equation} k_1 + \ 4 t - \ t = 0, \end{equation} (5.82)
化简得 $k_1=-3t$。由于 $t$ 可以非零,这三个向量 线性相关。例如,取 $t=1$,得到 $k_1=-3$、$k_2=2$、$k_3=1$,代入 方程(5.78),得到
\begin{equation} -3 \begin{pmatrix}1\\ 2 \\ 3\end{pmatrix} +2 \begin{pmatrix}2\\ 3 \\ 4\end{pmatrix} + 1 \begin{pmatrix}-1\\ 0 \\ 1\end{pmatrix} = \begin{pmatrix}0\\ 0 \\ 0\end{pmatrix}, \end{equation} (5.83)
把前两个向量移到右边,可见 $\vc{w}=3\vc{u}-2\vc{v}$。

若把最后一个向量改为 $\vc{w}'=(-1,0,2)$,则得到方程组
\begin{equation} \begin{cases} \begin{array}{rrrl} k_1 \bsfem & + \ 2 k_2 \bsfem & - \hid{2}k_3 \bsfem & = 0,\\ 2 k_1 \bsfem & + \ 3 k_2 \bsfem & & = 0,\\ 3 k_1 \bsfem & + \ 4 k_2 \bsfem & + 2k_3 \bsfem & = 0.\\ \end{array} \end{cases} \end{equation} (5.84)
消去 $k_1$,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} k_1 \bsfem & + \ 2 k_2 \bsfem & - \ \hid{2} k_3 \bsfem & = 0,\\ & k_2 \bsfem & - \ 2 k_3 \bsfem & = 0,\\ & 2 k_2 \bsfem & - \ 5 k_3 \bsfem & = 0.\\ \end{array} \end{cases} \end{equation} (5.85)
\begin{equation} \begin{cases} \begin{array}{rrrl} k_1 \bsfem & + \ 2 k_2 \bsfem & - \ \hid{2} k_3 \bsfem & = 0,\\ & k_2 \bsfem & - \ 2 k_3 \bsfem & = 0,\\ & & k_3 \bsfem & = 0.\\ \end{array} \end{cases} \end{equation} (5.86)
由最后一个方程得 $k_3=0$,代入第二个方程得 $k_2=0$,再把二者代入第一个方程得 $k_1=0$。因此 $(k_1,k_2,k_3)=(0,0,0)$ 是唯一解,向量 $\vc{u}$、$\vc{v}$、$\vc{w}'$ 线性无关

定理 5.5: 基定理
  1. 平面内的两个向量 $\vc{u}$ 和 $\vc{v}$ 构成一组,当且仅当它们线性无关
  2. 三维空间中的三个向量 $\vc{u}$、$\vc{v}$、$\vc{w}$ 构成一组,当且仅当它们线性无关
  3. 平面内三个或更多向量总是线性相关
  4. 三维空间中的四个或更多向量总是线性相关

前两条结论都是双向的,因此用 $\Rightarrow$ 标记正向证明,用 $\Leftarrow$ 标记反向证明。

1 $\Rightarrow$:设 $\vc{u}$ 和 $\vc{v}$ 线性无关。由 定理 5.4,$\vc{u}$ 不能写成 $\vc{v}$ 的线性组合,即 $\vc{u}\neq\lambda\vc{v}$;同理,$\vc{v}\neq\lambda\vc{u}$。所以 $\vc{u}$ 与 $\vc{v}$ 不平行,再由 定理 2.4 可知,它们构成平面的一组

1 $\Leftarrow$:设 $\vc{u}$ 和 $\vc{v}$ 构成平面的一组。反设它们线性相关,但仍能通过 $x_u\vc{u}+x_v\vc{v}$ 表示平面中的每一点。由定理 5.4,可以写成 $\vc{u}=\lambda\vc{v}$ 或 $\vc{v}=\lambda\vc{u}$。不妨设 $\vc{u}=\lambda\vc{v}$(必要时可交换 $\vc{u}$ 与 $\vc{v}$ 的名称)。用这组表示任意向量 $\vc{w}=x_u\vc{u}+x_v\vc{v}$,代入得 $\vc{w}=x_u\lambda\vc{v}+x_v\vc{v}=(x_u\lambda+x_v)\vc{v}=\mu\vc{v}$,其中标量 $\mu=x_u\lambda+x_v$。这说明 $x_u\vc{u}+x_v\vc{v}$ 只能表示与 $\vc{v}$ 平行的向量,因此 $\vc{u}$、$\vc{v}$ 不可能构成整个平面的

2 $\Rightarrow$:设 $\vc{u}$、$\vc{v}$、$\vc{w}$ 线性无关定理 2.5 指出,若不存在 平面 同时与 $\vc{u}$、$\vc{v}$、$\vc{w}$ 平行,则这三个向量构成三维空间的一组 。反设存在一个同时与三个向量平行的 平面 $\pi$。由于它与 $\vc{u}$、$\vc{v}$ 平行,可以写成
\begin{equation} \pi: \vc{p} + s\vc{u} + t\vc{v}, \end{equation} (5.87)
,其中 $\vc{p}$ 是该平面中的一点,$s,t$ 为标量。若 $\pi$ 与 $\vc{w}$ 平行,那么对平面中的任一点 $\vc{q}$,点 $\vc{q}+\vc{w}$ 也在该平面内。$\vc{q}$ 位于该平面,意味着存在标量 $s_1,t_1$,使得
\begin{equation} \vc{q} = \vc{p} + s_1\vc{u} + t_1\vc{v}, \end{equation} (5.88)
而 $\vc{q}+\vc{w}$ 位于该平面,意味着存在标量 $s_2,t_2$,使得
\begin{equation} \vc{q} + \vc{w} = \vc{p} + s_2\vc{u} + t_2\vc{v}. \end{equation} (5.89)
用第二个方程减去第一个方程,得到
\begin{equation} \vc{w} = (s_2-s_1)\vc{u} + (t_2-t_1)\vc{v}. \end{equation} (5.90)
因此 $\vc{w}$ 可以写成 $\vc{u}$ 和 $\vc{v}$ 的线性组合。根据 定理 5.4,这将使 $\vc{u}$、$\vc{v}$、$\vc{w}$ 线性相关,与假设矛盾。因此,三个线性无关向量不可能同时平行于同一个平面。由 定理 2.5 可知,三个线性无关向量 $\vc{u}$、$\vc{v}$、$\vc{w}$ 构成三维空间的一组

2 $\Leftarrow$:设 $\vc{u}$、$\vc{v}$、$\vc{w}$ 构成三维空间的一组。反设它们线性相关。由定理 5.4,至少有一个向量可以写成另两个向量的线性组合。不妨设 $\vc{u}=\lambda_v\vc{v}+\lambda_w\vc{w}$。于是任意表达式 $\vc{q}=x_u\vc{u}+x_v\vc{v}+x_w\vc{w}$ 都可化为 $\vc{q}=\mu_v\vc{v}+\mu_w\vc{w}$,只能表示与 $\vc{v}$、$\vc{w}$ 所张成平面平行的向量,不可能覆盖整个三维空间。这与它们构成一组基矛盾。因此 $\vc{u}$、$\vc{v}$、$\vc{w}$ 线性无关

3:设 $\vc{u}$、$\vc{v}$、$\vc{w}$ 是平面内的向量。若 $\vc{u}$ 与 $\vc{v}$ 线性相关,则整个向量组也线性相关。若 $\vc{u}$ 与 $\vc{v}$ 线性无关,则由(1)知它们构成该平面的一组,因此 $\vc{w}$ 可写成二者的线性组合

\begin{equation} \vc{w} = \lambda_1 \vc{u} + \lambda_2 \vc{v} \end{equation} (5.91)
其中 $\lambda_1,\lambda_2$ 为某些标量。可改写为
\begin{equation} \lambda_1 \vc{u} + \lambda_2 \vc{v} + (-1)\vc{w} = 0 \end{equation} (5.92)
根据 定义 5.2,这说明三个向量线性相关,因为 $k_1=\lambda_1$、$k_2=\lambda_2$、$k_3=-1$ 满足方程(5.67)

4:第 4 条的证明与第 3 条相同。
$\square$


5.9 张成


本节介绍“张成”的概念。它可以描述一个向量组通过 线性组合能够“覆盖”向量空间的多大部分。先看定义。

定义 5.3: 张成
若向量组 $\{\vc{v}_1,\dots,\vc{v}_q\}\subset\R^n$ 满足:方程
\begin{equation} k_1\vc{v}_1 + k_2 \vc{v}_2 + \dots + k_q \vc{v}_q = \vc{u}, \end{equation} (5.93)
任意向量 $\vc{u}\in\R^n$ 都至少有一个解,则称该向量组张成 $\R^n$。

例 5.11:
判断三个向量 $\vc{u}=(1,2,3)$、$\vc{v}=(2,3,4)$、$\vc{w}=(-1,0,1)$ 是否张成 $\R^3$。

根据定义,需要判断
\begin{equation} k_1 \begin{pmatrix}1\\ 2 \\ 3\end{pmatrix} + k_2 \begin{pmatrix}2\\ 3 \\ 4\end{pmatrix} + k_3 \begin{pmatrix}-1\\ 0 \\ 1\end{pmatrix} = \begin{pmatrix}u_1\\ u_2 \\ u_3\end{pmatrix} \end{equation} (5.94)
对每个 $\vc{u}=(u_1,u_2,u_3)$ 是否至少有一个解。三个分量各产生一个方程,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} k_1 \bsfem & + \ 2 k_2 \bsfem & - \ k_3 \bsfem & = u_1,\\ 2 k_1 \bsfem & + \ 3 k_2 \bsfem & & = u_2,\\ 3 k_1 \bsfem & + \ 4 k_2 \bsfem & + \ k_3 \bsfem & = u_3.\\ \end{array} \end{cases} \end{equation} (5.95)
从第二、第三个方程中消去 $k_1$,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} k_1 \bsfem & + \ 2 k_2 \bsfem & - \ \hid{2} k_3 \bsfem & = u_1,\\ & k_2 \bsfem & - \ 2 k_3 \bsfem & = 2u_1-u_2,\\ & 2 k_2 \bsfem & - \ 4 k_3 \bsfem & = 3 u_1-u_3.\\ \end{array} \end{cases} \end{equation} (5.96)
再尝试从第三个方程中消去 $k_2$,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} k_1 \bsfem & + \ 2 k_2 \bsfem & - \ \hid{2} k_3 \bsfem & = u_1,\\ & k_2 \bsfem & - \ 2 k_3 \bsfem & = 2 u_1-u_2,\\ & & 0 \bsfem & = u_1-2 u_2+u_3.\\ \end{array} \end{cases} \end{equation} (5.97)
并非对每个 $\vc{u}=(u_1,u_2,u_3)$,这个方程组都有解。事实上,只有当向量位于 平面 $u_1-2u_2+u_3=0$ 所定义的平面内时才有解。因此这三个向量不张成 $\R^3$。

若把最后一个向量改为 $\vc{w}'=(-1,0,2)$,则得到方程组
\begin{equation} \begin{cases} \begin{array}{rrrl} k_1 \bsfem & + \ 2 k_2 \bsfem & - \hid{2}k_3 \bsfem & = u_1,\\ 2 k_1 \bsfem & + \ 3 k_2 \bsfem & & = u_2,\\ 3 k_1 \bsfem & + \ 4 k_2 \bsfem & + 2k_3 \bsfem & = u_3.\\ \end{array} \end{cases} \end{equation} (5.98)
消去 $k_1$,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} k_1 \bsfem & + \ 2 k_2 \bsfem & - \ \hid{2} k_3 \bsfem & = u_1,\\ & k_2 \bsfem & - \ 2 k_3 \bsfem & = 2 u_1-u_2,\\ & 2 k_2 \bsfem & - \ 5 k_3 \bsfem & = 3 u_1-u_3.\\ \end{array} \end{cases} \end{equation} (5.99)
\begin{equation} \begin{cases} \begin{array}{rrrl} k_1 \bsfem & + \ 2 k_2 \bsfem & - \ \hid{2} k_3 \bsfem & = u_1,\\ & k_2 \bsfem & - \ 2 k_3 \bsfem & = 2 u_1-u_2,\\ & & k_3 \bsfem & = u_1-2 u_2+u_3.\\ \end{array} \end{cases} \end{equation} (5.100)
对任意 $\vc{u}=(u_1,u_2,u_3)$,该方程都有解。因此这三个向量确实张成 $\R^3$。由最后一个方程得 $k_3=u_1-2u_2+u_3$;代入第二个方程得 $k_2=4u_1-5u_2+2u_3$;再代入第一个方程得 $k_1=-6u_1+8u_2-3u_3$。于是对
\begin{equation} \begin{cases} \begin{array}{lrrr} k_1 & = -6 u_1 \bsfem & + \ 8 u_2 \bsfem & - \ 3 u_3 & \bsfem\\ k_2 & = 4 u_1 \bsfem & - \ 5 u_2 \bsfem & + \ 2 u_3 & \bsfem\\ k_3 & = \hid{1} u_1 \bsfem & - \ 2 u_2 \bsfem & + \ \hid{1} u_3 & \bsfem\\ \end{array} \end{cases} \end{equation} (5.101)
每个 $\vc{u}=(u_1,u_2,u_3)$ 都有唯一解。

定理 5.6: 基的判定条件
向量组 $\{\vc{u}_1,\vc{u}_2,\ldots,\vc{u}_k\}$ 是 $\R^n$ 的一组,当且仅当这些向量线性无关且张成 $\R^n$。

设向量 $\vc{u}_1,\vc{u}_2,\ldots,\vc{u}_q$ 是 $\R^n$ 的一组。由 定义 2.10,对每个 $\vc{u}$,方程 $k_1\vc{v}_1+k_2\vc{v}_2+\dots+k_q\vc{v}_q=\vc{u}$ 都有解,因此根据 定义 5.3,这些向量张成 $\R^n$。为了证明它们线性无关,注意方程 $\sum_{i=1}^q k_i\vc{v}_i=\vc{0}$ 有解 $k_1=0,k_2=0,\ldots,k_q=0$。根据的定义 (定义 2.10),该解是唯一的,所以这些向量线性无关

为证明反方向,设向量 $\vc{u}_1,\vc{u}_2,\ldots,\vc{u}_q$ 张成 $\R^n$,并且线性无关。需要证明对每个 $\vc{u}$,方程 $\sum_{i=1}^q k_i\vc{v}_i=\vc{u}$ 恰有一个解。由于这些向量张成 $\R^n$,对每个 $\vc{u}$ 至少有一个解。假设有两个解 $(k_1,k_2,\ldots,k_q)$ 和 $(k'_1,k'_2,\ldots,k'_q)$。用 $\sum_{i=1}^q k_i\vc{v}_i=\vc{u}$ 减去 $\sum_{i=1}^q k'_i\vc{v}_i=\vc{u}$,得到 $\sum_{i=1}^q(k_i-k'_i)\vc{v}_i=\vc{0}$。由于这些向量线性无关定义 5.2),必有 $k_i-k'_i=0$,即 $k_i=k'_i$,所以两个解实际上相同。
$\square$


5.10 基变换


平面内有一组,即两个不平行的向量 $\vc{e}_1$、$\vc{e}_2$。再设另一对不平行向量 $\hat{\vc{e}}_1$、$\hat{\vc{e}}_2$ 也构成一组。根据前面的结论,后两个向量可用前两个向量表示为
\begin{gather} \hat{\vc{e}}_1 = x_{11} \vc{e}_1 + x_{21} \vc{e}_2,\\ \hat{\vc{e}}_2 = x_{12} \vc{e}_1 + x_{22} \vc{e}_2. \end{gather} (5.102)
任定向量 $\vc{u}$,它在第一组 下的坐标为 $(u_1,u_2)$:
\begin{gather} \vc{u} = u_1 \vc{e}_1 + u_2 \vc{e}_2 .\\ \end{gather} (5.103)
同一个向量在第二组 下的坐标为 $(\hat{u}_1,\hat{u}_2)$,即
\begin{gather} \vc{u} = \hat{u}_1 \hat{\vc{e}}_1 + \hat{u}_2 \hat{\vc{e}}_2.\\ \end{gather} (5.104)
方程(5.102) 代入 方程(5.104),得到
\begin{gather} \vc{u} = \hat{u}_1 (x_{11} \vc{e}_1 + x_{21} \vc{e}_2) + \hat{u}_2 (x_{12} \vc{e}_1 + x_{22} \vc{e}_2), \end{gather} (5.105)
整理可得
\begin{gather} \vc{u} = (x_{11} \hat{u}_1 + x_{12} \hat{u}_2 ) \vc{e}_1 + (x_{21}\hat{u}_1 + x_{22}\hat{u}_2 ) \vc{e}_2. \end{gather} (5.106)
由于在给定 下,向量的坐标唯一确定,所以 方程(5.106) 中 $\vc{e}_1$ 前的系数 $(x_{11}\hat{u}_1+x_{12}\hat{u}_2)$ 必须等于 方程(5.103)中 $\vc{e}_1$ 前的系数 $u_1$;$u_2$ 同理。综上
\begin{gather} u_1 = x_{11} \hat{u}_1 + x_{12} \hat{u}_2, \\ u_2 = x_{21}\hat{u}_1 + x_{22}\hat{u}_2. \end{gather} (5.107)
注意,描述向量关系的 方程(5.102) 与上面描述坐标关系的方程很相似,但有两点重要区别:帽号出现在等式另一边,且行变成了列(例如行 $x_{11}\ x_{12}$ 变成了一列)。

我们将在第 6 章讨论矩阵时,再回到变换。


第 4 章:向量积(上一章) 第 6 章:矩阵(下一章)