linear algebra

书写、记号

大部分书写、记号遵循抽象代数上常用的书写、记号。下文用 \(\mathbb{F}\) 代表域,\(\mathbb{F}^n\) 代表 \(n\) 元组,也称作 \(n\) 维列向量域,其中向量元素均属于 \(\mathbb{F}\) 这个域。将 \(\mathbb{M}_{m\times n}(\mathbb{F})\) 记作 \(m\times n\) 矩阵空间,其中矩阵元素均属于 \(\mathbb{F}\) 这个域。\(\mathbb{F}_2\) 代表大小为 \(2\) 的有限域。

向量

对于两个定义在 \(\mathbb{F}^n\) 上的向量 \(x=(x_1,x_2,\dots,x_n)\)\(y=(y_1,y_2,\dots,y_n)\),定义它们在 \(\mathbb{F}^n\) 上的标准内积:

\[<x,y>=\sum\limits_{i=1}^nx_i\bar{y_i} \]

其中 \(\bar{y_i}\) 指共轭复数。

称两个向量正交当且仅当其标准内积为 \(0\)。向量组 \(V\) 的子集是正交的,当且仅当其中两个任意向量正交。

线性空间

线性空间是代数结构 \((V,+,\times,\mathbb{P})\),其中 \((V,+)\) 是阿贝尔群,\(\mathbb{P}\) 是数域。

\(\mathbb{P}\times V\rightarrow V\),是域和 \(V\) 的一种数乘运算。要求对 \(V\) 封闭,要对标量和向量加法有分配律,对标量乘法有结合律,同时类似群作用,域的单位元做数乘后保持向量不变。\(V\) 中的运算和数乘,被称为线性运算。

向量组 \(\{a_1,a_2,\dots,a_n\}\) 是由若干个 \(V\) 中的向量组成的。线性组合是 \(\sum k_ia_i\) 的式子,若一个向量可以表示成某个向量组的线性组合,则称该向量能被向量组线性表出。

若向量组满足任意一个向量无法被其它向量组成的向量组线性表出,则该向量组线性无关,否则线性相关。

若某个向量可被某个向量组线性表出,则表出方式唯一当且仅当该向量组线性无关。

极大线性无关组定义在某个向量组上,是该向量组的一个子集,若该子集线性无关且极大,则被称为极大线性无关组。线性基就是线性空间的一个极大线性无关组。向量组的极大线性无关组的大小就是该向量组的秩。

向量组张成的空间就是该向量组所有线性表示的集合,若两个向量组张成的空间相同,则这两个向量组等价。

向量组的任意极大线性无关组大小都相同,等价的线性无关向量组大小相同。

类似群和子群,线性空间也有线性子空间的定义,完全类似于子群的定义。一个 \(V\) 的子集 \(V_1\) 是线性空间的线性子空间当且仅当线性运算在 \(V_1\) 上封闭。

对于线性空间 \(V_1\)\(V_2\)\(V_1\cap V_2\) 也是一个线性空间。线性空间的直积类似两个群的直积,保有一定的封闭性。线性空间的同构定义也和群论上一致。

这里给出线性空间运算的严格定义。对于线性空间 \(V_1,V_2\),若存在线性空间 \(V\) 满足 \(V=\{u+v|u\in V_1,v\in V_2\}\),则记作 \(V=V_1+V_2\)。若存在线性空间 \(V\) 满足 \(\forall v\in V\)\(v\) 均可以被唯一的 \(v_1\in V_1,v_2\in V_2\) 做和得到,则称 \(V\)\(V_1\)\(V_2\) 的直和,记作 \(V=V_1\oplus V_2\)

矩阵

\(f(x):V\rightarrow V\) 为线性变换,当:

\[f(x_1)+f(x_2)=f(x_1+x_2) \]

\[af(x)=f(ax) \]

\(\mathbb{P}\rightarrow\mathbb{P}\) 的线性变换是我们熟知的 \(y=kx\)。我们称,一般的线性变换都有形式:

\[f([x_1,x_2,\dots,x_n]^T)=[\sum a_ix_i]^T \]

证明考虑拆分成一个零向量只有某个维度不为 \(0\) 的形式。定义域和值域的维度并不一定一样。

矩阵的作用就是刻画线性变换及其复合,矩阵乘法刻画的就是两个线性变换的复合,显然有结合律。

考虑一些基本函数的矩阵刻画,对于向量的数乘操作、交换两行操作、将一行加到另一方三个操作都可以用对应的矩阵刻画。

倍乘矩阵

一个单位矩阵,同时只有对角线上的某些数被更改。

对换矩阵

一个置换矩阵,简单构造。

倍加矩阵

对单位矩阵进行简单构造,需要区分左乘和右乘。

上述三种操作称为初等行变换。

一个矩阵被称为行阶梯型矩阵当且仅当全零行都在底部,每行的首个非零元素严格比上面行的首个非零元素更靠右。一个矩阵可以通过不断施加初等行变换变成行阶梯型矩阵,即为高斯消元。行阶梯型矩阵可以进一步变为简化行阶梯型矩阵,该矩阵每行第一个非零元素都为 \(1\),且为所在列唯一一个非零元素。

利用高斯消元将矩阵变成简化行阶梯型矩阵后非零行的数量称为矩阵的秩。

考虑求解线性方程组 \(AX=B\),不断应用初等行变换(设为 \(P\))将 \(A\) 变成简化行阶梯型矩阵 \(PA\) 之后,该方程十分好解,形式为 \((PA)X=PB\)。当 \(PA\) 存在全零行时,必然是无解或者无数解,不难简单判断。

方阵 \(A\) 的逆矩阵 \(A^{-1}\) 被定义为 \(AA^{-1}=I\)。初等矩阵都是可逆的。有一行或有一列全零的方阵必然不可逆。如果 \(A\) 不可逆,则 \(AB\) 不可逆。对于一个存在逆矩阵的方阵,可以利用高斯消元将其变为简化阶梯型矩阵的过程求其逆矩阵。

对于线性空间 \(V\),其一个线性无关的向量组 \(\alpha\),若 \(\operatorname{span}\alpha=V\),则称 \(\alpha\)\(V\) 的基。一个线性空间的基大小总是固定的。线性基的大小称为该线性空间的秩,记作 \(\operatorname{dim }V\)

考虑对一个线性空间做线性变换,则其会被映射到另一个线性空间上,该线性空间的维数不会增大。对于一个 \(m\times n\) 的矩阵 \(A\),提取其 \(n\) 个列向量,张成的空间称为该矩阵的像空间(列空间),由此可以定义行空间,列空间是一个线性空间,里面包含的向量就是 \(Ax\) 的值域,根据定义,矩阵的秩等于其像空间的维数。\(Ax=0\) 的解集 \(W\) 称为 \(A\) 的核空间,为一个线性空间。

可逆操作不会改变线性空间的维数,因此可逆操作不会改变矩阵的秩。考虑可逆线性变换 \(f(V_1)=V_2\),首先 \(\operatorname{dim}V_2\le\operatorname{dim}V_1\),因为原基做线性变换后必然可以张成新空间,根据变换可逆,做其逆变换 \(f^{-1}\) 后有 \(\operatorname{dim}V_1\le\operatorname{dim}V_2\),因此两个线性空间的维数相同。

矩阵的秩等于其转置的秩。若 \(n\times m\) 的矩阵 \(A\) 的秩 \(\operatorname{Rank}(A)=\min(n,m)\),则称 \(A\) 满秩,否则其为降秩。如果一个线性变换降秩,则其将线性空间变换以后新空间的维数可能下降。记 \(\operatorname{ker} A\) 表示 \(A\) 的核空间,\(\operatorname{im} A\) 表示 \(A\) 的像空间,则 \(\operatorname{dim}(\operatorname{ker}A)+\operatorname{dim}(\operatorname{im} A)=\operatorname{dim}V\),这里设 \(T\) 是从 \(V\)\(W\) 的线性变换。

\(n\) 阶可逆矩阵计数,值域 \([0,p-1]\)

考虑 \(n\) 阶方阵可逆的条件是做高斯消元后为方阵,因此对于每一列分别考虑,最后答案为 \(\prod\limits_{i=0}^{n-1}p^n-p^i\)

该问题等价于满秩矩阵计数。

该问题同时等价于 \(n\) 维线性空间的基计数,一个 \(n\) 维线性空间基的数量等于 \(n\) 阶可逆矩阵的数量,考虑可逆矩阵做初等行变换后得到的是单位矩阵,结论显然。

\(n\) 维列向量的 \(m\) 维线性空间计数。

偶遇神秘双射,不可战胜。

线性空间的一个基和一个 \(n\times m\) 的满秩矩阵一一对应,结合上面 \(m\) 维线性空间基的数量等于 \(m\) 阶可逆矩阵的数量,可以得到答案。

对于线性空间 \(V\) 中的一个基,定义该线性基正交当且仅当任意两个其中不同的向量正交。任意有限空间的基都可以通过 Schmidt 正交化变换为正交基。

行列式

方阵的行列式是用来刻画该线性变换将原线性空间放大了多少倍。其直观理解过于困难。给出其式子:

\[\operatorname{det}A=\sum\limits_{p}(-1)^{\sigma(p)}\prod\limits_{i=1}^na_{i,p_i} \]

其中 \(p\) 是一个 \(n\) 阶排列。\(\sigma(p)\)\(p\) 的逆序对数。不难得到 \(\operatorname{det}A=\operatorname{det}A^T\)

考虑单位矩阵的行列式 \(\operatorname{det}I\),等价于 \(\sum\limits_{p}(-1)^{\sigma(p)}\),该式的值为 \(1\),归纳法大概可以证明。

行列式满足 \(\operatorname{det}A\operatorname{det}B=\operatorname{det}AB\),由于我不会证,所以证明略去。矩阵的行列式非 \(0\),当且仅当矩阵满秩,由于我不会证,所以证明略去。

按照上述方法无法在较低时间内求解行列式。给出一种利用高斯消元 \(O(n^3)\) 求解行列式的方法,由于我不会证,所以证明略去。

  • 乘上倍乘矩阵后,若乘上的值为 \(k\),则 \(\operatorname{det}A\rightarrow k\operatorname{det}A\)

  • 乘上对换矩阵后,\(\operatorname{det}A\rightarrow -\operatorname{det}A\)

  • 乘上倍加矩阵后,\(\operatorname{det}A\) 不变。

  • 单位矩阵的行列式为 \(1\)

利用高斯消元求解即可。注意若要对正整数 \(p\) 取模,则用某一行的主元去消另外一行时并不一定能将主元顺利化为 \(1\),此时利用辗转相减法将其变为 \(0\) 即可,最后并不一定是单位矩阵,而是对角线的某些位置乘上了某个数,该矩阵的行列式求法是简单的。

矩阵树定理

考虑对于 \(n\) 个点的无向图,构造一个 \(n\) 阶矩阵,若 \(i\neq j\),则 \(a_{i,j}\)\(ij\) 之间的边数相反数,否则为 \(i\) 的度数,则令 \(A_i\) 为删去第 \(i\) 行和第 \(i\) 列得到的矩阵,所有 \(|A_i|\) 相等,为图的生成树数量。

若将边数推广到有边权的情况,则此时一棵生成树的权值是边权的乘积。

推广到有向图,当 \(i\neq j\) 时,为 \(i\rightarrow j\) 的边数数量,否则为 \(i\) 的入度,此时 \(|A_i|\) 为以 \(i\) 为根的外向生成树数量。

一般线性空间线性基

考虑线性空间,期望对其求一个线性基,根据对矩阵进行初等行变换不会影响其张成空间的维度,同时消成简化行阶梯型矩阵以后所有非零行列向量/行向量线性无关,因此直接高斯消元即可。

异或空间线性基

。。。

posted @   BYR_KKK  阅读(9)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示