© 2015-2020 Jacob Ström, Kalle Åström, and Tomas Akenine-Möller

加载并构建章节中...

第五章:高斯消元法





本章讲述高斯消元法,这是一种求解线性方程组的方法。在处理实际问题时经常遇到这类系统,例如这个计算机视觉问题:给定一个物体的多张图像,计算该物体的 3D 模型。
图 5.1: Örebro 城堡的 671 张照片中的四张。图像由 Lund 大学的 Carl Olsson 提供。
图 5.1: 厄勒布鲁城堡的 671 张照片中的四张。图像由隆德大学的 Carl Olsson 提供。
图 5.1 展示了厄勒布鲁城堡的四张图像。使用这些图像以及其他667张类似图像,可以计算图 5.2中显示的点云。这些计算包括求解许多方程组高斯消元法是学习此类系统的一种非常好的方法。有关此示例的更多信息,请参阅此 Video 视频.
交互式插图 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$ 就表示通过点 $(4,0)$ 且平行于 $y$ 轴的直线 $x=4$。 在图 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)
上述方程组被称为线性的,因为它只包含一次多项式项,如 $2 x$ 和 $3 y$,而不包含任何更高阶的项,如 $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$ 是未知的。
Figure 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)
由于有 $3$ 个未知数($u$、$v$ 和 $r$),我们可能需要 $3$ 个方程。因此,可能需要三个点($(x_1,y_1)$、$(x_2,y_2)$ 和 $(x_3,y_3)$)来确定一个圆。 通过三个点 $(-2,3)$、$(-1,1)$ 和 $(-1,2)$ 的圆是什么?这给出了一个包含 3 个非线性方程的系统
\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: 4000 年前的巴比伦问题
线性方程组在巴比伦泥板上有所描述。其中一个问题如下:

"有两块田地,总面积为 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$,因此 $z=\frac{-33}{11} = -3$。 然后可以将 $z$ 的这个值插入倒数第二个方程,得到 $2y + 3(-3) = -5$,或 $2y = 4$。 同样,很容易求解得到 $y=2$,现在可以将 $y$ 和 $z$ 都插入顶部方程来生成一个关于 $x$ 的简单方程。

高斯消元法的目标是从任何线性方程组开始,然后将其转换为三角系统。这只需使用三个简单的规则来完成,如下面的定理所示。

定理 5.1: 高斯消元规则
线性方程组的解在以下操作下不会改变
  1. 交换两行的顺序,
  2. 将一行乘以一个非零常数 $\neq 0$,或
  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{green}{2} x + 3 y = -5 \\ 5 x + 2 y = 4 \end{array}$
$\textcolor{green}{2}$
$\textcolor{green}{2}$
$\textcolor{green}{2}\class{hidden}{(5 x + 2 y) =}\textcolor{green}{2}\class{hidden}{(4)}$
_____________________
$(\textcolor{red}{5}\cdot 2 - \textcolor{green}{2}\cdot 5) x + (\textcolor{red}{5} \cdot 3 - \textcolor{green}{2} \cdot 2) y = (\textcolor{red}{5})(-5) - \textcolor{green}{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{green}{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{green}{2}\class{hidden}{(5 x + 2 y) = 2(4)}$
$\class{hidden}{2(5 x + 2 y) =}\textcolor{green}{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)
从第二行消除 $x_1$ 可以通过将其乘以 2 然后加到第一行来完成,得到
\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$,这等价于 $-10 x_2 = -50$,即 $x_2 =5$。 最后,将 $x_2 = 5$ 和 $x_3 = 6$ 插入顶部方程,得到 $2 x_1 + 20 - 12 = 16$,可以简化为 $2 x_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{green}{S = \begin{pmatrix} -8\\ 0 \end{pmatrix}}$
$\textcolor{red}{\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 + \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 上是 ctrl 加鼠标按钮,或在 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 的第4步中用虚线表示),但不存在属于所有三个平面的单个点,因此方程组不存在解。

总之,我们可以看到方程组要么有
  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$ 得到 $x_2 = -\frac{5}{8}t$,将其代入第一个方程得到 $2 x_1 + 5 (-\frac{5}{8})t + 3 t = 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$,我们将前两行相加。为了 在最后一行中消去 $t_1$,将第一行乘以 $\frac{3}{2}$ 然后减去最后一行,得到
\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$, and $\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. 将一个方程乘以非零常数 $\neq 0$,或
  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)


第二条规则允许我们将一个方程乘以不等于 $0$ 的常数。 从代数学来看,很明显将方程两边乘以非零常数不会改变方程的解,因此也不会影响方程组的解。
\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) 的解。 重要的是要注意,我们可以通过将第一行 (i') 的 $-k$ 倍加到第二行 (ii') 来从新系统 (5.54) 获得原始系统 (5.53)。 因此系统 (5.54) 的每个解也必然是上面系统 (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}\neq 0$ 的系统。 然后可以将第一行的 $-(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$ 的系数都为零,要么恰好有一个方程对 $x_2$ 有非零系数。

这个过程继续进行,直到不再有涉及未知变量的方程。 最后,可能会留下 $0 = 0$ 类型的方程。这些可以直接删除。 有三种可能的结果。

第一种情况是如果至少有一个类型为 $0 = \hat{b}_{i} \neq 0$ 的方程,在这种情况下系统无解。 这方面的一个例子在方程组 (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$ 前有 $3$ 个具有非零首项系数的方程。 实际上对其余两个变量即 $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_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}$ 是向量 $\vc{v}_1,\dots,\vc{v}_n$ 的线性组合,当 $\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)
其中 $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$ 不为零,我们可以除以 $-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{v} = 2\vc{u}$ 写成 $\vc{u}$ 的线性组合

例 5.8:
三个向量 $\vc{u} = (1, 2, 3)$、$\vc{v} = (2, 4, 6)$ 和 $\vc{w} = (1, 0, 7)$ 是线性相关的。这是正确的,因为 $\vc{v}$ 可以根据 $\vc{v} = 2\vc{u} + 0\vc{w}$ 写成 $\vc{u}$ 和 $\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)
消去 $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,\\ & & 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. 3D空间中的三个向量 $\vc{u}$、$\vc{v}$ 和 $\vc{w}$ 构成一个,当且仅当它们是线性无关的。
  3. 平面中的三个或更多向量总是线性相关的。
  4. 3D空间中的四个或更多向量总是线性相关的。

前两个定理是双向的,所以我们用 $\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}$ 在平面中构成一个。我们现在将证明这意味着 $\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}$ 写成 $\vc{u} = \lambda \vc{v}$(这总是可以通过交换 $\vc{u}$ 和 $\vc{v}$ 的标签来实现)。假设我们想使用 $\vc{w} = x_u \vc{u} + x_v \vc{v}$ 在这个中描述一个新向量 $\vc{w}$。这等于 $\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)$ 的标量。这意味着只有平行于 $\vc{v}$ 的向量 $\vc{w}$ 才能使用 $x_u \vc{u} + x_v \vc{v}$ 来描述,因此 $\vc{u}$、$\vc{v}$ 不能是整个三维空间的

2 $\Rightarrow$:定理 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}$ 在空间中构成一个。我们现在将证明这意味着 $\vc{u}$、$\vc{v}$ 和 $\vc{w}$ 是线性无关的。假设它们不是线性无关的,但仍然构成一个,即表达式 $x_u \vc{u} + x_v \vc{v} + x_w \vc{w}$ 可以到达空间中的每一点。由于它们是线性相关的,定理 5.4 说明我们可以将其中至少一个向量写成其他两个向量的线性组合。假设其中一个是 $\vc{u}$(否则重命名向量),我们现在可以将 $\vc{u}$ 写成 $\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}$。代入 $\vc{u}$ 的线性表达式得到 $\vc{q} = x_u (\lambda_v \vc{v} + \lambda_w \vc{w}) + x_v \vc{v} + x_w \vc{w} = (x_u \lambda + x_v) \vc{v} + (x_u \lambda_w + x_w) \vc{w} = \mu_v \vc{v} + \mu_w \vc{w}$,其中 $\mu_v$ 和 $\mu_w$ 是标量。这意味着只有平行于由 $\vc{v}$ 和 $\vc{w}$ 张成的平面的向量 $\vc{q}$ 才能使用 $x_u \vc{u} + x_v \vc{v} + x_w \vc{w}$ 来描述,因此 $\vc{u}$、$\vc{v}, \vc{w}$ 不能是整个平面。 因此,它们是线性无关的。

3:假设 $\vc{u}$、$\vc{v}$ 和 $\vc{w}$ 是平面中的向量。首先研究 $\vc{u}$ 和 $\vc{v}$。如果它们是线性相关的,即平行,那么整个向量集合 $\vc{u}$、$\vc{v}$、$\vc{w}$ 也是线性相关的,我们完成了。然而,如果 $\vc{u}$ 和 $\vc{v}$ 是线性无关的,那么根据(1),它们在平面中构成一个。这意味着 $\vc{w}$ 可以写成线性组合

4:第4条的证明遵循第3条的证明。
\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)
$\square$


5.9 张成空间


在本节中,将介绍张成空间的概念。当谈论一组向量作为线性组合可以"占据"多少向量空间时,它很有用。我们从定义开始。

定义 5.3: 张成空间
如果方程
\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}$,至少有一个解,则称 $\R^n$ 中的向量集合 $\{\vc{v}_1,\dots,\vc{v}_q\}$ 张成 $\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-2 u_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-2 u_2+u_3$,代入第二个方程得到 $k_2 = 4u_1-5u_2+2u_3$,将这两个值代入顶部方程得到 $k_1=-6 u_1 + 8 u_2 - 3 u_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$ 并且是线性无关的。我们需要证明 $\sum_{i=1}^q k_i \vc{v}_i = \vc{u}$ 对于每个 $\vc{u}$ 恰好有一个解。由于向量张成 $\R^n$,对于每个 $\vc{u}$ 至少有一个解。假设有两个解,$(k_1, k_2, \ldots, k_q)$ 和 $(k^\prime_1, k^\prime_2, \ldots, k^\prime_q)$。如果我们从 $\sum_{i=1}^q k_i \vc{v}_i = \vc{u}$ 中减去方程 $\sum_{i=1}^q k^\prime_i \vc{v}_i = \vc{u}$,我们得到 $\sum_{i=1}^q (k_i-k^\prime_i) \vc{v}_i = \vc{0}$。由于向量是线性无关的(定义 5.2),我们有 $(k_i-k^\prime_i) = 0$,但这给出 $k_i=k^\prime_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章:矩阵(下一章)