前言
线性代数相关的学习笔记,仅供自己备忘及网友学习交流使用。
一、基础概念和符号
线性代数提供了一种紧凑地表示和操作线性方程组的方法。例如,以下方程组:
6
x
1
+
8
x
2
=
77
6 x_1 + 8 x_2 = 77
6x1+8x2=77
3
x
1
−
9
x
2
=
19
3 x_1 - 9 x_2 = 19
3x1−9x2=19
这是两个方程和两个变量,正如你从高中代数中所知,你可以找到
x
1
x_1
x1 和
x
2
x_2
x2 的唯一解(除非方程以某种方式退化,例如,如果第二个方程只是第一个的倍数,但在上面的情况下,实际上只有一个唯一解)。在矩阵表示法中,我们可以更紧凑地表达:
A
x
=
b
Ax = b
Ax=b
w
i
t
h
A
=
[
6
8
3
−
9
]
,
b
=
[
77
19
]
with \quad A = \begin{bmatrix} 6 & 8\\ 3 & -9 \end{bmatrix}, b = \begin{bmatrix} 77\\ 19 \end{bmatrix}
withA=[638−9],b=[7719]
我们可以看到,这种形式的线性方程有许多优点(比如明显地节省空间)。
1.1 基本符号
我们使用以下符号:
- A ∈ R m × n A \in \mathbb{R}^{m \times n} A∈Rm×n ,表示 A A A 为由实数组成具有 m m m 行和 n n n 列的矩阵。
- x ∈ R n x \in \mathbb{R}^n x∈Rn ,表示 x x x 是具有 n n n 个元素的向量。 通常,向量 x x x 将表示列向量: ( x 1 , x 2 , . . . , x n ) T (x_1, x_2, ..., x_n)^T (x1,x2,...,xn)T ,即 x x x 是具有 n n n 行和 1 1 1 列的矩阵。 如果我们想要明确地表示行向量:具有 1 1 1 行和 n n n 列的矩阵 - 我们通常写成 x T x^T xT(这里 x T x^T xT 表示为 x x x 的转置)。
-
x
i
x_i
xi 表示向量
x
x
x 的第
i
i
i 个元素:
x = [ x 1 x 2 ⋮ x n ] x = \begin{bmatrix} x_1\\ x_2\\ \vdots \\ x_n \end{bmatrix} x=⎣⎢⎢⎢⎡x1x2⋮xn⎦⎥⎥⎥⎤ - 我们使用符号
a
i
j
a_{ij}
aij(或
A
i
j
A_{ij}
Aij ,
A
i
,
j
A_{i,j}
Ai,j 等)来表示
A
A
A 矩阵中第
i
i
i 行和第
j
j
j 列的元素:
A = [ a 11 a 12 ⋯ a 1 n a 21 a 22 ⋯ a 2 n ⋮ ⋮ ⋱ ⋮ a m 1 a m 2 ⋯ a m n ] A = \begin{bmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mn} \end{bmatrix} A=⎣⎢⎢⎢⎡a11a21⋮am1a12a22⋮am2⋯⋯⋱⋯a1na2n⋮amn⎦⎥⎥⎥⎤ - 我们用
a
j
a^j
aj 或者
A
:
,
j
A_{:,j}
A:,j 表示矩阵
A
A
A 的第
j
j
j 列:
A = [ ∣ ∣ ∣ a 1 a 2 ⋯ a n ∣ ∣ ∣ ] A = \begin{bmatrix} | & | & & | \\ a^1 & a^2 & \cdots & a^n \\ | & | & & | \end{bmatrix} A=⎣⎡∣a1∣∣a2∣⋯∣an∣⎦⎤ - 我们用
a
i
T
a_i^T
aiT 或者
A
i
,
:
A_{i,:}
Ai,: 表示矩阵的第
i
i
i 行:
A = [ − a 1 T − − a 2 T − ⋮ − a m T − ] A = \begin{bmatrix} -& a_1^T & - \\ -& a_2^T & - \\ & \vdots & \\ -& a_m^T & - \end{bmatrix} A=⎣⎢⎢⎢⎡−−−a1Ta2T⋮amT−−−⎦⎥⎥⎥⎤ - 在许多情况下,将矩阵视为列向量或行向量的集合非常重要且方便。 通常,在向量而不是标量上操作在数学上(和概念上)更清晰。只要明确定义了符号,用于矩阵的列或行的表示方式并没有通用约定。
二、矩阵乘法
两个矩阵相乘,其中
A
∈
R
m
×
n
a
n
d
B
∈
R
n
×
p
A \in \mathbb{R}^{m \times n} \quad and \quad B \in \mathbb{R}^{n \times p}
A∈Rm×nandB∈Rn×p ,则:
C
=
A
B
∈
R
m
×
p
C = AB \quad \in \quad \mathbb{R}^{m \times p}
C=AB∈Rm×p
其中:
C
i
j
=
∑
k
=
1
n
A
i
k
B
k
j
C_{ij} = \sum_{k=1}^n A_{ik}B_{kj}
Cij=k=1∑nAikBkj
请注意,为了使矩阵乘积存在,
A
A
A 中的列数必须等于
B
B
B 中的行数。有很多方法可以查看矩阵乘法,我们将从检查一些特殊情况开始。
2.1 向量-向量乘法
给定两个向量
x
,
y
∈
R
n
x, y \in \mathbb{R}^n
x,y∈Rn ,
x
T
y
x^Ty
xTy 通常称为向量内积或者点积,结果是个实数。
x
T
y
∈
R
n
=
[
x
1
x
2
⋯
x
n
]
[
y
1
y
2
⋮
y
n
]
=
∑
i
=
1
n
x
i
y
i
x^Ty \in \mathbb{R}^n = \begin{bmatrix} x_1 & x_2 & \cdots & x_n \end{bmatrix} \begin{bmatrix} y_1 \\ y_2 \\ \vdots \\ y_n \end{bmatrix} = \sum_{i=1}^n x_iy_i
xTy∈Rn=[x1x2⋯xn]⎣⎢⎢⎢⎡y1y2⋮yn⎦⎥⎥⎥⎤=i=1∑nxiyi
注意:
x
T
y
=
y
T
x
x^Ty = y^Tx
xTy=yTx 始终成立。
给定向量
x
∈
R
m
x \in \mathbb{R}^m
x∈Rm ,
y
∈
R
n
y \in \mathbb{R}^n
y∈Rn (他们的维度是否相同都没关系),
x
y
T
∈
R
m
×
n
xy^T \in \mathbb{R}^{m \times n}
xyT∈Rm×n 叫做向量外积 , 当
(
x
y
T
)
i
j
=
x
i
y
j
(xy^T)_{ij} = x_i y_j
(xyT)ij=xiyj 的时候,它是一个矩阵。
x
y
T
∈
R
m
×
n
=
[
x
1
x
2
⋮
x
m
]
[
y
1
y
2
⋯
y
n
]
=
[
x
1
y
1
x
1
y
2
⋯
x
1
y
n
x
2
y
1
x
2
y
2
⋯
x
2
y
n
⋮
⋮
⋱
⋮
x
m
y
1
x
m
y
2
⋯
x
m
y
n
]
xy^T \in \mathbb{R}^{m \times n} = \begin{bmatrix} x_1 \\ x_2 \\ \vdots \\ x_m \end{bmatrix} \begin{bmatrix} y_1 & y_2 & \cdots y_n \end{bmatrix} = \begin{bmatrix} x_1 y_1 & x_1 y_2 & \cdots & x_1 y_n \\ x_2 y_1 & x_2 y_2 & \cdots & x_2 y_n \\ \vdots & \vdots & \ddots & \vdots \\ x_m y_1 & x_m y_2 & \cdots & x_m y_n \end{bmatrix}
xyT∈Rm×n=⎣⎢⎢⎢⎡x1x2⋮xm⎦⎥⎥⎥⎤[y1y2⋯yn]=⎣⎢⎢⎢⎡x1y1x2y1⋮xmy1x1y2x2y2⋮xmy2⋯⋯⋱⋯x1ynx2yn⋮xmyn⎦⎥⎥⎥⎤
举一个外积如何使用的一个例子:让
1
∈
R
n
1 \in \mathbb{R}^n
1∈Rn 表示一个
n
n
n 维向量,其元素都等于 1
,此外,考虑矩阵
A
∈
R
m
×
n
A \in \mathbb{R}^{m \times n}
A∈Rm×n ,其列全部等于某个向量
x
∈
R
m
x \in \mathbb{R}^m
x∈Rm 。我们可以使用外积紧凑地表示矩阵
A
A
A :
A
=
[
∣
∣
∣
x
x
⋯
x
∣
∣
∣
]
=
[
x
1
x
1
⋯
x
1
x
2
x
2
⋯
x
2
⋮
⋮
⋱
⋮
x
m
x
m
⋯
x
m
]
=
[
x
1
x
2
⋮
x
m
]
[
1
1
⋯
1
]
=
x
1
T
A = \begin{bmatrix} | & | & & | \\ x & x & \cdots & x \\ | & | & & | \end{bmatrix} = \begin{bmatrix} x_1 & x_1 & \cdots & x_1 \\ x_2 & x_2 & \cdots & x_2 \\ \vdots & \vdots & \ddots & \vdots \\ x_m & x_m & \cdots & x_m \end{bmatrix} = \begin{bmatrix} x_1 \\ x_2 \\ \vdots \\ x_m \end{bmatrix} \begin{bmatrix} 1 & 1 & \cdots 1 \end{bmatrix} = x \mathbf{1}^T
A=⎣⎡∣x∣∣x∣⋯∣x∣⎦⎤=⎣⎢⎢⎢⎡x1x2⋮xmx1x2⋮xm⋯⋯⋱⋯x1x2⋮xm⎦⎥⎥⎥⎤=⎣⎢⎢⎢⎡x1x2⋮xm⎦⎥⎥⎥⎤[11⋯1]=x1T
2.2 矩阵-向量乘法
给定矩阵 A ∈ R m × n A \in \mathbb{R}^{m \times n} A∈Rm×n ,向量 x ∈ R n x \in \mathbb{R}^n x∈Rn , 它们的积是一个向量 y = A x ∈ R m y = Ax \in \mathbb{R}^m y=Ax∈Rm 。有几种方法可以查看矩阵向量乘法,我们将依次查看它们中的每一种。
如果我们按行写
A
A
A ,那么我们可以表示
A
x
Ax
Ax 为:
y
=
A
x
=
[
−
a
1
T
−
−
a
2
T
−
⋮
−
a
m
T
−
]
x
=
[
a
1
T
x
a
2
T
x
⋮
a
m
T
x
]
y = Ax = \begin{bmatrix} -& a_1^T & - \\ -& a_2^T & - \\ & \vdots & \\ -& a_m^T & - \end{bmatrix} x = \begin{bmatrix} a_1^T x \\ a_2^T x \\ \vdots \\ a_m^T x \end{bmatrix}
y=Ax=⎣⎢⎢⎢⎡−−−a1Ta2T⋮amT−−−⎦⎥⎥⎥⎤x=⎣⎢⎢⎢⎡a1Txa2Tx⋮amTx⎦⎥⎥⎥⎤
换句话说, y y y 中的第 i i i 个元素是 A A A 的第 i i i 行和 x x x 的内积,即: y i = A i , : x = a i T x y_i = A_{i,:} x = a_{i}^T x yi=Ai,:x=aiTx 。
同样的, 可以把
A
A
A 写成列的方式,则公式如下:
y
=
A
x
=
[
∣
∣
∣
a
1
a
2
⋯
a
n
∣
∣
∣
]
[
x
1
x
2
⋮
x
n
]
=
a
1
x
1
+
a
2
x
2
+
.
.
.
+
a
n
x
n
y = Ax = \begin{bmatrix} | & | & & | \\ a^1 & a^2 & \cdots & a^n \\ | & | & & | \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \\ \vdots \\ x_n \end{bmatrix} = a^1 x_1 + a^2 x_2 + ... + a^n x_n
y=Ax=⎣⎡∣a1∣∣a2∣⋯∣an∣⎦⎤⎣⎢⎢⎢⎡x1x2⋮xn⎦⎥⎥⎥⎤=a1x1+a2x2+...+anxn
换句话说, y y y 是 A A A 的列的线性组合,其中线性组合的系数由 x x x 的元素给出。
到目前为止,我们一直在右侧乘以列向量,但也可以在左侧乘以行向量。用 y T = x T A y^T = x^T A yT=xTA 表示 A ∈ R m × n x ∈ R m y ∈ R n A \in \mathbb{R}^{m \times n} \quad x \in \mathbb{R}^m \quad y \in \mathbb{R}^n A∈Rm×nx∈Rmy∈Rn 。和之前一样,我们可以用两种可行的方式表达 y T y^T yT ,这取决于我们是否根据行或列表达 A A A 。
第一种情况,我们把
A
A
A 用列表示:
y
T
=
x
T
A
=
x
T
[
∣
∣
∣
a
1
a
2
⋯
a
n
∣
∣
∣
]
=
[
x
T
a
1
x
T
a
2
⋯
x
T
a
n
]
y^T = x^T A = x^T \begin{bmatrix} | & | & & | \\ a^1 & a^2 & \cdots & a^n \\ | & | & & | \end{bmatrix} = \begin{bmatrix} x^T a^1 & x^T a^2 & \cdots & x^T a^n \end{bmatrix}
yT=xTA=xT⎣⎡∣a1∣∣a2∣⋯∣an∣⎦⎤=[xTa1xTa2⋯xTan]
这表明 y T y^T yT 的第个 i i i 元素等于 x x x 和 A A A 的第 i i i 列的内积。
最后,根据行表示
A
A
A ,我们得到了向量-矩阵乘积的最终表示:
y
T
=
x
T
A
=
[
x
1
x
2
⋯
x
n
]
[
−
a
1
T
−
−
a
2
T
−
⋮
−
a
m
T
−
]
=
x
1
a
1
T
+
x
2
a
2
T
+
.
.
.
+
x
n
a
n
T
y^T = x^T A = \begin{bmatrix} x_1 & x_2 & \cdots & x_n \end{bmatrix} \begin{bmatrix} -& a_1^T & - \\ -& a_2^T & - \\ & \vdots & \\ -& a_m^T & - \end{bmatrix} = x_1 a_1^T + x_2 a_2^T + ... + x_n a_n^T
yT=xTA=[x1x2⋯xn]⎣⎢⎢⎢⎡−−−a1Ta2T⋮amT−−−⎦⎥⎥⎥⎤=x1a1T+x2a2T+...+xnanT
所以我们看到 y T y^T yT 是 A A A 的行的线性组合,其中线性组合的系数由 x x x 的元素给出。
2.3 矩阵-矩阵乘法
有了这些前置知识,我们现在可以看看四种不同的(形式不同,但结果是相同的)矩阵-矩阵乘法:也就是本节开头所定义的 C = A B C = AB C=AB 的乘法。
首先,我们可以将矩阵 - 矩阵乘法视为一组向量-向量乘积。从定义中可以得出:最明显的特点是
C
C
C 的
(
i
,
j
)
(i, j)
(i,j) 元素等于
A
A
A 的第
i
i
i 行和
B
B
B 的第
j
j
j 列的内积。如下面的公式所示:
C
=
A
B
=
[
−
a
1
T
−
−
a
2
T
−
⋮
−
a
m
T
−
]
[
∣
∣
∣
b
1
b
2
⋯
b
n
∣
∣
∣
]
=
[
a
1
T
b
1
a
1
T
b
2
⋯
a
1
T
b
n
a
2
T
b
1
a
2
T
b
2
⋯
a
2
T
b
n
⋮
⋮
⋱
⋮
a
m
T
b
1
a
m
T
b
2
⋯
a
m
T
b
n
]
C = AB = \begin{bmatrix} -& a_1^T & - \\ -& a_2^T & - \\ & \vdots & \\ -& a_m^T & - \end{bmatrix} \begin{bmatrix} | & | & & | \\ b^1 & b^2 & \cdots & b^n \\ | & | & & | \end{bmatrix} = \begin{bmatrix} a_1^T b^1 & a_1^T b^2 & \cdots & a_1^T b^n \\ a_2^T b^1 & a_2^T b^2 & \cdots & a_2^T b^n \\ \vdots & \vdots & \ddots & \vdots \\ a_m^T b^1 & a_m^T b^2 & \cdots & a_m^T b^n \end{bmatrix}
C=AB=⎣⎢⎢⎢⎡−−−a1Ta2T⋮amT−−−⎦⎥⎥⎥⎤⎣⎡∣b1∣∣b2∣⋯∣bn∣⎦⎤=⎣⎢⎢⎢⎡a1Tb1a2Tb1⋮amTb1a1Tb2a2Tb2⋮amTb2⋯⋯⋱⋯a1Tbna2Tbn⋮amTbn⎦⎥⎥⎥⎤
这里
A
∈
R
m
×
k
B
∈
R
k
×
n
a
i
∈
R
k
b
j
∈
R
k
A \in \mathbb{R}^{m \times k} \quad B \in \mathbb{R}^{k \times n} \quad a_i \in \mathbb{R}^k \quad b^j \in \mathbb{R}^k
A∈Rm×kB∈Rk×nai∈Rkbj∈Rk ,所以它们可以计算内积。我们用通常用行表示
A
A
A 而用列表示
B
B
B 。或者,我们可以用列表示
A
A
A ,用行表示
B
B
B ,这时
A
B
AB
AB 是求外积的和。公式如下:
C
=
A
B
=
[
∣
∣
∣
a
1
a
2
⋯
a
n
∣
∣
∣
]
[
−
b
1
T
−
−
b
2
T
−
⋮
−
b
m
T
−
]
=
∑
i
=
1
n
a
i
b
i
T
C = AB = \begin{bmatrix} | & | & & | \\ a^1 & a^2 & \cdots & a^n \\ | & | & & | \end{bmatrix} \begin{bmatrix} -& b_1^T & - \\ -& b_2^T & - \\ & \vdots & \\ -& b_m^T & - \end{bmatrix} = \sum_{i = 1}^{n} a^{i}b_{i}^T
C=AB=⎣⎡∣a1∣∣a2∣⋯∣an∣⎦⎤⎣⎢⎢⎢⎡−−−b1Tb2T⋮bmT−−−⎦⎥⎥⎥⎤=i=1∑naibiT
换句话说, A B AB AB 等于所有的 A A A 的第 i i i 列和 B B B 的第 i i i 行的外积的和。因此,在这种情况下, a i ∈ R m a_i \in \mathbb{R}^m ai∈Rm 和 b j ∈ R n b^j \in \mathbb{R}^n bj∈Rn , 外积 a i b i T a^{i}b_{i}^T aibiT 的维度是 m × n m \times n m×n ,与 C C C 的维度一致。
其次,我们还可以将矩阵 - 矩阵乘法视为一组矩阵向量积。如果我们把
B
B
B 用列表示,我们可以将
C
C
C 的列视为
A
A
A 和
B
B
B 的列的矩阵向量积。公式如下:
C
=
A
B
=
A
[
∣
∣
∣
b
1
b
2
⋯
b
n
∣
∣
∣
]
=
[
∣
∣
∣
A
b
1
A
b
2
⋯
A
b
n
∣
∣
∣
]
C = AB = A \begin{bmatrix} | & | & & | \\ b^1 & b^2 & \cdots & b^n \\ | & | & & | \end{bmatrix} = \begin{bmatrix} | & | & & | \\ Ab^1 & Ab^2 & \cdots & Ab^n \\ | & | & & | \end{bmatrix}
C=AB=A⎣⎡∣b1∣∣b2∣⋯∣bn∣⎦⎤=⎣⎡∣Ab1∣∣Ab2∣⋯∣Abn∣⎦⎤
这里
C
C
C 的第
i
i
i 列由矩阵向量乘积给出,右边的向量为
c
i
=
A
b
i
c_i = Ab^i
ci=Abi 。 这些矩阵向量乘积可以使用前一小节中给出的两个观点来解释。 最后,我们有类似的观点,我们用行表示
A
A
A ,
C
C
C 的行作为
A
A
A 和
B
B
B 的行之间的矩阵向量积。公式如下:
C
=
A
B
=
[
−
a
1
T
−
−
a
2
T
−
⋮
−
a
m
T
−
]
B
=
[
−
a
1
T
B
−
−
a
2
T
B
−
⋮
−
a
m
T
B
−
]
C = AB = \begin{bmatrix} -& a_1^T & - \\ -& a_2^T & - \\ & \vdots & \\ -& a_m^T & - \end{bmatrix} B = \begin{bmatrix} -& a_1^TB & - \\ -& a_2^TB & - \\ & \vdots & \\ -& a_m^TB & - \end{bmatrix}
C=AB=⎣⎢⎢⎢⎡−−−a1Ta2T⋮amT−−−⎦⎥⎥⎥⎤B=⎣⎢⎢⎢⎡−−−a1TBa2TB⋮amTB−−−⎦⎥⎥⎥⎤
这里
C
C
C 的第
i
i
i 行由左边的向量与右边的矩阵的乘积给出:
c
i
T
=
a
i
T
B
c_{i}^T = a_i^TB
ciT=aiTB 。
将矩阵乘法剖析到如此大的程度似乎有点过分,特别是当所有这些观点都紧跟在我们在本节开头给出的初始定义(在一行数学中)之后。
这些不同方法的直接优势在于它们允许您在向量的级别/单位而不是标量上进行操作。 为了完全理解线性代数而不会迷失在复杂的索引操作中,关键是要用尽可能多的概念进行操作。
实际上所有的线性代数都是在处理某种矩阵乘法,花一些时间对这里提出的观点进行直观的理解是非常必要的。
除此之外,了解一些更高级别的矩阵乘法的基本属性是很有必要的:
- 矩阵乘法结合律: ( A B ) C = A ( B C ) (AB)C = A(BC) (AB)C=A(BC) ;
- 矩阵乘法分配律: A ( B + C ) = A B + A C A(B + C) = AB + AC A(B+C)=AB+AC 。
- 矩阵乘法通常是不满足交换律的;也就是说,通常 A B ≠ B A AB \neq BA AB=BA 。(例如,假设 A ∈ R m × k A \in \mathbb{R}^{m \times k} A∈Rm×k , B ∈ R k × n B \in \mathbb{R}^{k \times n} B∈Rk×n ,如果 m m m 和 n n n 不相等,矩阵 B A BA BA 的乘积甚至不存在!)
如果您不熟悉这些属性,请花点时间自己验证它们。 例如,为了检查矩阵乘法的相关性,假设
A
∈
R
m
×
k
A \in \mathbb{R}^{m \times k}
A∈Rm×k ,
B
∈
R
k
×
n
B \in \mathbb{R}^{k \times n}
B∈Rk×n ,
C
∈
R
n
×
p
C \in \mathbb{R}^{n \times p}
C∈Rn×p 。注意
A
B
∈
R
m
×
n
AB \in \mathbb{R}^{m \times n}
AB∈Rm×n ,所以
(
A
B
)
C
∈
R
m
×
p
(AB)C \in \mathbb{R}^{m \times p}
(AB)C∈Rm×p 。类似地,
B
C
∈
R
k
×
p
BC \in \mathbb{R}^{k \times p}
BC∈Rk×p ,所以
A
(
B
C
)
∈
R
m
×
p
A(BC) \in \mathbb{R}^{m \times p}
A(BC)∈Rm×p 。因此,所得矩阵的维度一致。 为了表明矩阵乘法是相关的,足以检查
(
A
B
)
C
(AB)C
(AB)C 的第
(
i
,
j
)
(i, j)
(i,j) 个元素是否等于
A
(
B
C
)
A(BC)
A(BC) 的第
(
i
,
j
)
(i, j)
(i,j) 个元素。 我们可以使用矩阵乘法的定义直接验证这一点:
(
(
A
B
)
C
)
i
j
=
∑
k
=
1
p
(
A
B
)
i
k
C
k
j
=
∑
k
=
1
p
(
∑
l
=
1
n
A
i
l
B
l
k
)
C
k
j
\bigl((AB)C\bigr)_{ij} = \sum_{k=1}^p (AB)_{ik}C_{kj} = \sum_{k = 1}^p \biggl(\sum_{l = 1}^n A_{il}B_{lk}\biggr)C_{kj}
((AB)C)ij=k=1∑p(AB)ikCkj=k=1∑p(l=1∑nAilBlk)Ckj
=
∑
k
=
1
p
(
∑
l
=
1
n
A
i
l
B
l
k
C
k
j
)
=
∑
l
=
1
n
(
∑
k
=
1
p
A
i
l
B
l
k
C
k
j
)
= \sum_{k = 1}^p \biggl(\sum_{l = 1}^n A_{il}B_{lk}C_{kj}\biggr) = \sum_{l = 1}^n \biggl(\sum_{k=1}^p A_{il}B_{lk}C_{kj}\biggr)
=k=1∑p(l=1∑nAilBlkCkj)=l=1∑n(k=1∑pAilBlkCkj)
=
∑
l
=
1
n
A
i
l
(
∑
k
=
1
p
B
l
k
C
k
j
)
=
∑
l
=
1
n
A
i
l
(
B
C
)
l
j
=
(
A
(
B
C
)
)
l
j
= \sum_{l = 1}^n A_{il} \biggl(\sum_{k=1}^p B_{lk}C_{kj}\biggr) = \sum_{l = 1}^n A_{il} (BC)_{lj} = \bigl(A(BC)\bigr)_{lj}
=l=1∑nAil(k=1∑pBlkCkj)=l=1∑nAil(BC)lj=(A(BC))lj
证毕。
2.4 矩阵的初等变换
实际上,我们可以通过向量与向量相加,向量与标量相乘的操作,来完成对初始向量的移动、压缩和拉伸。
我们将一系列这样的操作合并,就变成了下面这种形式:
A
v
=
w
Av = w
Av=w
上式我们可以理解为对向量
v
v
v 做了矩阵
A
A
A 包含的一系列操作,变成了向量
w
w
w 。
举个例子:
A
=
[
a
b
c
d
]
,
v
=
[
x
y
]
A = \begin{bmatrix} a & b \\ c & d \end{bmatrix}, \quad v = \begin{bmatrix} x \\ y \end{bmatrix}
A=[acbd],v=[xy]
w
=
A
v
=
[
a
b
c
d
]
[
x
y
]
=
x
[
a
c
]
+
y
[
b
d
]
=
[
a
x
+
b
y
c
x
+
d
y
]
w = Av = \begin{bmatrix} a & b \\ c & d \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix} = x \begin{bmatrix} a \\ c \end{bmatrix} + y \begin{bmatrix} b \\ d \end{bmatrix} = \begin{bmatrix} ax + by \\ cx + dy \end{bmatrix}
w=Av=[acbd][xy]=x[ac]+y[bd]=[ax+bycx+dy]
那么矩阵的初等变换其实包含了初等行变换和初等列变换。下面以初等行变换为例,初等变换的操作包含:
① 交换矩阵的两行(对调 i , j i,j i,j ,两行分别记为 r i , r j r_i,r_j ri,rj );
② 以一个非零数 k k k 乘矩阵的某一行所有元素(第 i i i 行乘以 k k k 记为 r i × k r_i \times k ri×k );
③ 把矩阵的某一行所有元素乘以一个数 k k k 后加到另一行对应的元素(第 j j j 行乘以 k k k 加到第 i i i 行记为 r i + r j × k r_i + r_j \times k ri+rj×k )。
类似地,把以上的“行”改为“列”便得到矩阵初等列变换的操作。