Evanalysis
2.1预计阅读时间: 20 分钟

2.1 矩阵基础

先把矩阵当成真正的数学对象来读:大小、元素、相等、基本运算,以及方程组如何写成矩阵形式。

课程目录

在课程一开始,矩阵似乎只是把线性方程组整理得更紧凑的方法。但很快你就会 看到,矩阵本身也是需要独立研究的对象。往后的消元、零空间、可逆性与向量 空间语言,都依赖你先把下面几件事分清:

  • 矩阵到底是什么;
  • 两个矩阵什么时候才算相等;
  • 在矩阵乘法出现之前,哪些基本运算已经定义好;
  • 线性方程组如何被记录成矩阵叙述。

这一节先把这套语言讲清楚。

开始之前

本节不假设你已经学过矩阵理论。不过,它会用到代数和第一节线性方程组里的 一些基本习惯。

你应该能够:

  • 把 x1x_1、x2x_2、x3x_3 读成三个不同未知数;
  • 在一个线性方程中找出系数,包括系数为 00、11、−1-1 的情形;
  • 保持有序数组,例如 (2,−1,4)(2,-1,4) 中每个数的位置;
  • 逐项做基本的正负数运算。

如果这些地方还不熟,也不需要先背矩阵术语。读这一页时,更有效的做法是 在每个例题旁边停一下,问自己:现在用的是哪一行、哪一列、哪一个位置?

什么是矩阵

定义

矩阵

矩阵是按行和列排成的长方形数字表。

若一个矩阵有 mm 行、nn 列,就称它是 m×nm \times n 矩阵。本课中的元素通常 是实数,但定义本身并不限于实数。

矩阵写成长方形,不是排版习惯而已。每一行、每一列都带着位置信息;后面定 义矩阵相等、矩阵加法与矩阵乘法时,这些位置都不能随便打乱。

因此,矩阵不应被看成一堆散乱数字。放在第 11 行第 33 列的数字,和同一 个数字放在第 33 行第 11 列,可以扮演完全不同的角色。举例说,在系数矩 阵中,列的位置连到已经选定的变量次序。若变量次序是 (x1,x2,x3)(x_1, x_2, x_3), 第二列记录的就是 x2x_2 的系数;若改用 (x2,x1,x3)(x_2, x_1, x_3) 作次序,显示出 来的矩阵也必须相应改变。

常见错误

不要把系数和位置分开

单看数字 55,并不能知道它乘在哪个变量上。在系数矩阵中,是列位置提供了 这个信息。除非同时改变变量次序,否则移动一整列就会改变原本编码的方程 组。

矩阵结构图:大小、行、列,以及一个指定元素
1203-14第 2 行第 3 列元素 a_23 = 4

2 行、3 列,所以大小是 2 x 3

第一个下标选行,第二个下标选列。

看行列位置如何运作

下面的图解会放慢本节最重要的习惯:先把矩阵读成有位置的对象,然后才判断 记号或运算可以表示什么。

按位置阅读矩阵

用一段短图解看清矩阵大小、元素记号、矩阵相等和系数列背后的行列位置。

  1. 先读大小

    一个 2 x 3 矩阵有两行三列。这个大小会先决定哪些比较和运算有定义。

  2. 用行和列定位元素

    记号 a_23 表示第 2 行第 3 列。在例子矩阵中,这个位置的元素是 4。

  3. 逐项检查矩阵相等

    两个矩阵要相等,必须大小相同,而且每个对应位置的元素都相同。

  4. 一个位置不同已足够

    只改一个元素,整个矩阵已经改变,因为矩阵同时记录数值和位置。

  5. 保留变量次序

    在系数矩阵中,第 2 列的意思要等变量次序固定后才清楚。

在做行化简或矩阵乘法之前,先把矩阵读成有位置的对象:先看大小,再看每个元素的行列位置,最后才判断另一个矩阵是否有同样位置数据。

先看大小,再看元素

矩阵的大小写作 m×nm \times n。

  • mm 是行数。
  • nn 是列数。

如果 m=nm = n,这个矩阵就是方阵。

不同大小的矩阵,不只是“看起来不同”,而是根本属于不同类型的对象。例 如 2×32 \times 3 与 3×23 \times 2 矩阵连逐项比较都做不到,因为位置对不上。

逐个元素去读

若 AA 是一个矩阵,aija_{ij} 表示第 ii 行第 jj 列的元素。这种记号很重 要,因为之后你可以精确指出一个数在矩阵中的位置。

例题

仔细读一个矩阵

设

A=[1203−14].A = \begin{bmatrix} 1 & 2 & 0 \\ 3 & -1 & 4 \end{bmatrix}.

这个矩阵有 2 行 3 列,所以大小是 2×32 \times 3。 第 2 行第 3 列的元素是 44。

记号 aija_{ij} 不是繁琐标记,而是往后处理矩阵相等、加法、数乘与乘法时的 正式语言。

第一次读矩阵时,先练“读”再练“算”。下面的互动任务刻意保持简单:它训练 的正是以后做行化简和矩阵乘法时最容易出错的基本动作。

边读边试

计算前先练习读懂矩阵

通过引导任务练习矩阵计算前最基本的动作:读大小、元素、行、列,以及系数位置。

120
3-14

要留意什么

先数行,再数列。不要把顺序倒转。

自己试一试

这个矩阵的大小是多少?

矩阵相等要逐项检查

两个矩阵要相等,必须大小一致,而且所有对应位置的元素完全一样。

定义

矩阵相等

设 A=[aij]A = [a_{ij}] 与 B=[bij]B = [b_{ij}] 为两个矩阵。

则 A=BA = B 当且仅当:

  1. AA 与 BB 的大小相同;
  2. 对每一个行列位置 (i,j)(i,j),都有 aij=bija_{ij} = b_{ij}。

所以证明两个矩阵相等,往往就是逐项比较。

例题

由矩阵相等求未知数

若

[123x]=[1235],\begin{bmatrix} 1 & 2 \\ 3 & x \end{bmatrix} = \begin{bmatrix} 1 & 2 \\ 3 & 5 \end{bmatrix},

那么三个位置已经对上,剩下的位置也必须对上,因此 x=5x = 5。

有序的列完整决定一个矩阵

矩阵相等的定义有一个实用推论:知道所有列以及各列的位置,就能重建整个矩阵。检查时不必一次处理整张表,但不能遗漏某列,也不能改变列的次序。

定理

由坐标重建矩阵与判断相等

给定按次序排列的列向量 c1,…,cn∈Rmc_1,\ldots,c_n\in\mathbb R^m,恰好存在一个以它们为各列的 m×nm\times n 矩阵。其元素 aija_{ij} 就是 cjc_j 的第 ii 个分量。因此,两个同为 m×nm\times n 的矩阵相等,当且仅当对应的列向量全部相等。按次序排列的行也有同样的结论。

证明

由元素定义分别证明存在与唯一

先证明存在:把给定的第 jj 个向量的第 ii 个分量放到位置 (i,j)(i,j)。每个所需位置都恰好得到一个实数,所形成的每一列也就按照指定次序拥有指定的分量。

再证明唯一:若另一个矩阵 BB 有完全相同的有序列,那么对每个列指标 jj 与每个行指标 ii,bijb_{ij} 都必须等于 cjc_j 的第 ii 个分量,也就是 aija_{ij}。两矩阵大小相同、所有对应元素相等,所以按定义相等。反过来,矩阵相等意味着每列的对应元素都相等,因此对应列向量相等。把同一论证按行来组织,便得到行版本。

这个证明明确分成存在与至多一个两个部分。“有序”也不能省去:列向量组成的集合会忘记哪列在前,还会忽略重复元素,但重建矩阵时两种信息都必须保留。同样,含相同数字的行向量与列向量具有不同大小,不能只因为数字相同就把它们视为同一个矩阵。

例题

由列重建矩阵,再核对另一种描述

设 AA 的第一、二、三列依次为

c1=[2−1],c2=[04],c3=[−35].c_1=\begin{bmatrix}2\\-1\end{bmatrix},\qquad c_2=\begin{bmatrix}0\\4\end{bmatrix},\qquad c_3=\begin{bmatrix}-3\\5\end{bmatrix}.

共有三列,每列有两个分量,因此

A=[20−3−145].A=\begin{bmatrix}2&0&-3\\-1&4&5\end{bmatrix}.

第一行是 [2 0 −3][2\ 0\ {-3}],而 a23=5a_{23}=5。另一份描述说,两行分别是 [2 0 −3][2\ 0\ {-3}] 与 [−1 4 5][-1\ 4\ 5];逐个位置核对可知,两种描述指定同一个矩阵。若第二行改成 [−1 5 4][-1\ 5\ 4],就会在两个位置产生冲突,不存在同时满足两份描述的矩阵。仅仅含有相同的一批数字,不能消除这种冲突。

若交换 c1,c2c_1,c_2,新矩阵的第一个元素由二变成零,所以得到的是另一个矩阵。虽然可用的列没有改变,它们的位置已经改变。这和用列记录不同未知数的系数时所遇到的位置问题完全相同。

先有加法与数乘

矩阵乘法出场之前,已有两个基本运算。

定义

矩阵加法与数乘

设 A=[aij]A = [a_{ij}] 与 B=[bij]B = [b_{ij}] 为同样大小的矩阵,cc 为标量。

  • A+BA + B 由对应位置相加得到,即 (A+B)ij=aij+bij(A + B)_{ij} = a_{ij} + b_{ij};
  • cAcA 由每个元素都乘上 cc 得到,即 (cA)ij=caij(cA)_{ij} = c a_{ij}。

其中“同样大小”是关键条件。若大小不同,矩阵加法根本未定义。

例题

计算一个矩阵和与一个数乘

令

A=[1−203],B=[41−52].A = \begin{bmatrix} 1 & -2 \\ 0 & 3 \end{bmatrix}, \qquad B = \begin{bmatrix} 4 & 1 \\ -5 & 2 \end{bmatrix}.

则

A+B=[5−1−55],2A=[2−406].A + B = \begin{bmatrix} 5 & -1 \\ -5 & 5 \end{bmatrix}, \qquad 2A = \begin{bmatrix} 2 & -4 \\ 0 & 6 \end{bmatrix}.

每个元素都逐项处理,但矩阵的大小仍然保持 2×22 \times 2。

所有元素都是 00 的矩阵叫做零矩阵。对固定大小来说,它是加法单位元:

A+O=A.A + O = A.

哪些运算可以消去?

逐项定义让我们在引入矩阵乘法之前,就能证明一些熟悉的代数步骤。只要所有表达式具有所需大小,矩阵等式便能在每个位置用实数运算处理。消去律是由定义推出的结论,并不表示所有矩阵运算都能模仿实数乘法。

定理

逐项运算的消去律

设 A,B,CA,B,C 是同样大小的实矩阵。若 A+C=B+CA+C=B+C,则 A=BA=B。对固定的非零实数 λ\lambda,若 λA=λB\lambda A=\lambda B,则 A=BA=B。第二个结论中的非零假设不可省略。

证明

在任意一个位置证明,再使用矩阵相等定义

由 A+C=B+CA+C=B+C,矩阵相等定义给出每个位置的等式 aij+cij=bij+cija_{ij}+c_{ij}=b_{ij}+c_{ij}。消去实数 cijc_{ij},得到 aij=bija_{ij}=b_{ij}。指标任意,所以矩阵相等。类似地,λA=λB\lambda A=\lambda B 给出 λaij=λbij\lambda a_{ij}=\lambda b_{ij};除以非零实数 λ\lambda,每个位置便都相等。如果 λ=0\lambda=0,无论 A,BA,B 是什么,两个数乘结果都是零矩阵,因此结果相等已不能推出原矩阵相等。

证明也说明了如何解基本矩阵方程。在 2X+B=C2X+B=C 中,解必须满足 xij=(cij−bij)/2x_{ij}=(c_{ij}-b_{ij})/2;反过来,按此式填写元素,代入就会在每个位置恢复 CC 的元素。因此,公式既构造出一个解,也说明不可能有另一个解。开始计算前必须检查大小,不能用减法来补救维数不相容的问题。

具体取

B=[1−230],C=[54−16].B=\begin{bmatrix}1&-2\\3&0\end{bmatrix},\qquad C=\begin{bmatrix}5&4\\-1&6\end{bmatrix}.

则 X=[23−23]X=\begin{bmatrix}2&3\\-2&3\end{bmatrix}。把各元素乘二,再加上 BB 的对应元素,就会得到 CC。若 XX 的系数改成零,方程只剩 B=CB=C:这个等式成立时,每个同样大小的矩阵都是解;不成立时则没有解。这就是矩阵版本的零系数方程判断,而不是进行非法除法。

矩阵把方程组整理成一个叙述

矩阵在课程中之所以这么早出现,正是因为它可以把线性方程组打包成较容易系 统处理的形式。

考虑方程组

x1+2x2−x3=4,3x1−x2+5x3=7.\begin{aligned} x_1 + 2x_2 - x_3 &= 4, \\ 3x_1 - x_2 + 5x_3 &= 7. \end{aligned}

它的系数矩阵是

A=[12−13−15],A = \begin{bmatrix} 1 & 2 & -1 \\ 3 & -1 & 5 \end{bmatrix},

未知向量是

x=[x1x2x3],x = \begin{bmatrix} x_1 \\ x_2 \\ x_3 \end{bmatrix},

常数向量是

b=[47].b = \begin{bmatrix} 4 \\ 7 \end{bmatrix}.

于是整个系统就可以写成

Ax=b.Ax = b.

这不是单纯的缩写,而是把同一组系数、未知数与常数整理成一个往后可以做行 变换、谈零空间与可逆性的数学对象。

如何处理基本矩阵题目

多数入门矩阵题并不是要故意绕你,而是在检查你能否把位置和对象读清楚。一 个可靠的做题顺序是:

  1. 先确认题目要什么对象:大小、元素、行、列、系数矩阵、常数向量、矩阵 和,还是数乘;
  2. 如果涉及运算,先检查运算是否有定义;
  3. 保持行的顺序和列的顺序不变;
  4. 只计算题目真正问到的那些元素;
  5. 如果答案本身是矩阵或向量,要同时写出它的大小。

例题

从文字读出系数矩阵

题目:按变量次序 (x1,x2,x3)(x_1,x_2,x_3),写出下列方程组的系数矩阵与常数向量:

2x1−x3=5,−x1+4x2+3x3=−2.\begin{aligned} 2x_1 - x_3 &= 5,\\ -x_1 + 4x_2 + 3x_3 &= -2. \end{aligned}

第一条方程没有写出 x2x_2 项,所以先把缺失的系数补出来:

2x1+0x2−x3=5.2x_1 + 0x_2 - x_3 = 5.

现在,每一条方程变成一行,列的顺序则跟固定变量次序 (x1,x2,x3)(x_1,x_2,x_3) 一致。因此

A=[20−1−143],b=[5−2].A = \begin{bmatrix} 2 & 0 & -1 \\ -1 & 4 & 3 \end{bmatrix}, \qquad b = \begin{bmatrix} 5 \\ -2 \end{bmatrix}.

最常见的错误是省略第一行中的 00。但缺失的 x2x_2 系数本来就是数据的一 部分,第二列仍然必须存在。

先预告一下乘法

下一节才正式讲矩阵乘法。这里先让你看到,为什么“行”与“列”的角色如此 重要:左矩阵的一行,会和右矩阵的一列共同决定输出中的一个元素。

你可以把下面的图当成下一节的预告。

边读边试

跟着看一格矩阵乘法

互动工具会在你改变 A 与 B 的元素时,即时更新 AB 的每一格。

结果

89
34

8 = 1×2 + 2×3

常见错误

常见错误

不要把行和列调乱

第一个下标是行号,不是列号。a23a_{23} 代表第 2 行第 3 列。

常见错误

大小不同就不能相加

矩阵加法是逐项相加;若位置对不上,就没有运算可做。

快速检查

思考检查

2×32 \times 3 矩阵可以和 3×23 \times 2 矩阵相加吗?

请按定义回答,不要只凭外观判断。

解答 · 答案

不可以。矩阵加法只对大小相同的矩阵有定义。

思考检查

若 AA 是 4×24 \times 2 矩阵,a31a_{31} 代表什么?

指出行与列的位置。

解答 · 答案

它表示 AA 的第 3 行第 1 列元素。

练习

思考检查

把方程组 x1−x2=3x_1 - x_2 = 3、2x1+x2=02x_1 + x_2 = 0 写成系数矩阵与常数向量。

先固定未知数顺序 (x1,x2)(x_1, x_2)。

解答 · 引导解答

按照未知数顺序 (x1,x2)(x_1, x_2),系数矩阵是

[1−121],\begin{bmatrix} 1 & -1 \\ 2 & 1 \end{bmatrix},

常数向量是

[30].\begin{bmatrix} 3 \\ 0 \end{bmatrix}.

练习:计算前先核对局部资料

一个 2×32\times3 矩阵的第一行是 [1 2 3][1\ 2\ 3],第二列是 [25]\begin{bmatrix}2\\5\end{bmatrix}。描述所有这样的矩阵。若把第二列改成 [45]\begin{bmatrix}4\\5\end{bmatrix},答案会怎样改变?说明哪一种情况是元素未定,哪一种情况是资料互相矛盾。

解答 · 解答:共同指定的位置必须一致

两份描述都指定了位置 (1,2)(1,2)。第一种情况下,两者都要求该位置为二,因此相容。第二列固定第二行的中间元素,只留下该行的首尾元素未定。所以全部合要求的矩阵恰好是

[123s5t],s,t∈R.\begin{bmatrix}1&2&3\\s&5&t\end{bmatrix},\qquad s,t\in\mathbb R.

任意选择两个实数都符合给定的行与列;反过来,每个满足资料的矩阵都必须具有这种形式。第二种情况下,同一个位置必须同时填二与四,因而没有矩阵满足要求。任意选择其余未定元素都不能消除冲突。这区分了可能容许多个矩阵的资料不完整,与完全不容许矩阵存在的资料不相容。

这道题也说明重建命题的适用范围:完整的有序列列表会固定每个元素,恰好给出一个矩阵;局部的行列描述却未必如此。计算尚有多少元素可自由选择之前,要先核对被两种方式同时限制的位置,否则表面上的自由元素数目可能掩盖一个根本矛盾。

相关笔记

若想看方程组如何变成矩阵,可先回看 1.1 方程与解集。 下一节可读 3.2 矩阵乘法、单位矩阵与线性方程组。

练习

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

加载中…

先备知识

这一节可以独立阅读。

本单元重点词汇