- 画图好累~
- 域:实数、有限域
向量
-
向量, x ∈ F n x\in F^n x∈Fn
-
F n F^n Fn 向量空间——运算满足线性性
-
加、数乘
- 八条公理:
- u , v , w ∈ V u,v,w\in V u,v,w∈V, V V V 为向量空间, c , d ∈ F c,d\in F c,d∈F, F F F 为域
- u + v = v + u u+v=v+u u+v=v+u
- ( u + v ) + w = u + ( v + w (u+v)+w=u+(v+w (u+v)+w=u+(v+w
- ∃ 0 ∈ F , u + 0 = 0 + u = u \exist 0\in F,u+0=0+u=u ∃0∈F,u+0=0+u=u
- ∃ ( − u ) ∈ F , u + ( − u ) = 0 \exist (-u)\in F,u+(-u)=0 ∃(−u)∈F,u+(−u)=0
- 1 u = u 1u=u 1u=u
- c ( u + v ) = c u + c v c(u+v)=cu+cv c(u+v)=cu+cv
- ( c + d ) u = c u + d u (c+d)u=cu+du (c+d)u=cu+du
-
c
(
d
u
)
=
(
c
d
)
u
c(du)=(cd)u
c(du)=(cd)u
- 八条公理:
-
一些不正常的线性空间
- V = R , F = Q V=R,F=Q V=R,F=Q,数乘的数是有理数,每个数当成一个向量
- V = C , F = R V=C,F=R V=C,F=R
- V = Q , F = Z V=Q,F=Z V=Q,F=Z,不是线性空间,因为 Z Z Z 不是域( 2 2 2 在, 1 2 \frac 1 2 21 不在)
- [ a , b ] , V = C [ a , b ] , F = R [a,b],V=C[a,b],F=R [a,b],V=C[a,b],F=R
-
-
矩阵
矩阵 A ∈ F n × m A\in F^{n\times m} A∈Fn×m , a i , j ∈ F a_{i,j}\in F ai,j∈F
矩阵代表的是线性变换
- 矩阵乘向量, A ∈ F n × m , x ∈ F m A\in F^{n\times m},x\in F^m A∈Fn×m,x∈Fm,要定义一个运算 A x Ax Ax。把 F m − → F n F^m-\to F^n Fm−→Fn,这是一个线性变换。
线性变换
- 线性变换性质(2个):
-
f
:
v
→
w
f:v\to w
f:v→w,
v
,
w
v,w
v,w 线性空间(
u
,
v
∈
V
u,v\in V
u,v∈V,
c
∈
F
c\in F
c∈F),
f
f
f 为线性变换
f ( u → v ) = f ( u ) + f ( v ) f(u\to v)=f(u)+f(v) f(u→v)=f(u)+f(v)- f ( c u ) = c f ( u ) f(cu)=cf(u) f(cu)=cf(u)
- A x = y Ax=y Ax=y,即 y i = ∑ j a i , j x j y_i=\sum_j a_{i,j}x_j yi=∑jai,jxj
矩阵乘矩阵
-
线性变换的复合。 A , B A,B A,B 矩阵,希望定义 ( A B ) = C (AB)=C (AB)=C, C C C 也为矩阵。且对于 ∀ x ∈ F k \forall x\in F^k ∀x∈Fk,有 C x = A ( B x ) C_x=A(Bx) Cx=A(Bx)(相当于能做两次线性变换)
-
线性变换的复合依然是一个线性变换。 f , g f,g f,g 为线性变换, ( f ∘ g ) ( x ) = f ( g ( x ) ) (f\circ g)(x)=f(g(x)) (f∘g)(x)=f(g(x))
-
f ( g ( u + v ) ) = f ( g ( u ) + g ( v ) ) = f ( g ( u ) ) + f ( g ( v ) ) f(g(u+v))=f(g(u)+g(v))=f(g(u))+f(g(v)) f(g(u+v))=f(g(u)+g(v))=f(g(u))+f(g(v))
-
f ( g ( c u ) ) = c f ( g ( u ) ) f(g(cu))=cf(g(u)) f(g(cu))=cf(g(u))
-
A ∈ F n × m A\in F^{n\times m} A∈Fn×m, F n → F m F^n\to F^m Fn→Fm。 B x ∈ F m Bx\in F^m Bx∈Fm,则 B B B 为 F k → F m F^k\to F^m Fk→Fm,即 B ∈ F m × k B\in F^{m\times k} B∈Fm×k。则 C : F k → F m → F n C:F^k\to F^m\to F^n C:Fk→Fm→Fn,因此 C C C 为 F n × k F^{n\times k} Fn×k
-
C i , j = ∑ k a i , k b k , j C_{i,j}=\sum_k a_{i,k}b_{k,j} Ci,j=∑kai,kbk,j
-
矩阵乘法枚举顺序(代码): i , k , j i,k,j i,k,j,矩阵乘法提速!
矩阵转置
-
T T T(transpose)
-
( A T ) i , j = A j , i (A^T)_{i,j}=A_{j,i} (AT)i,j=Aj,i
-
A T A A^TA ATA 和 A A T AA^T AAT 特判有意义!
-
求转置:直接转即可。
方阵
- A A A 可以乘自己,即 A n A^n An 有意义
单位阵 I I I
- I x = x Ix=x Ix=x
- A I x = A x AIx=Ax AIx=Ax, A I = A AI=A AI=A, I A = A IA=A IA=A
线性独立
向量线性独立
- 定义 n n n 个向量 { v 1 , v 2 , … v n } \{v_1,v_2,\dots v_n\} {v1,v2,…vn} 线性独立。不存在一个 i i i 满足 v i ∑ j ≠ i v i v j v_i\sum_{j\neq i}v_iv_j vi∑j=ivivj。
- 一组向量的张成:span (
{
v
1
,
v
2
,
…
v
n
}
\{v_1,v_2,\dots v_n\}
{v1,v2,…vn})
=
{
v
∣
α
1
v
1
+
α
2
v
2
+
α
3
v
3
+
…
α
n
v
n
}
=\{v|\alpha_1v_1+\alpha_2v_2+\alpha_3v_3+\dots\alpha_nv_n\}
={v∣α1v1+α2v2+α3v3+…αnvn}(线性空间)
- 线性空间的基 B B B:它的所有线性组合能表示所有元素。即一组线性独立,张成 V V V 的向量集。
- 线性空间的维度: dim ( V ) = c a r d ( B ) \dim(V)=card(B) dim(V)=card(B)
- dim ( F n ) = n \dim(F^n)=n dim(Fn)=n
- 以上都是指有限集的线性独立
- 无线集合线性独立
- 定义:所有有限子集都线性独立
- 张成:所有有限子集的并
- 例子: V = R , F = Q V=R,F=Q V=R,F=Q,它的维度不是有限的。思考是多少维的?维度和实数个数是一样的。
(线性)子空间 V V V
- W ⊆ V W\subseteq V W⊆V, W W W 也是线性空间。
- 0 ∈ W 0\in W 0∈W, W ∩ V = W W\cap V=W W∩V=W
- W 1 ⊆ V , W 2 ⊆ V W_1\subseteq V,W_2\subseteq V W1⊆V,W2⊆V,则 W 1 ∩ W 2 W_1\cap W_2 W1∩W2 也是(线性空间的交为线性空间可以直接代入验证)
- 矩阵——列空间: 看成 m m m 列,每列为一个向量还是线性空间(忘了)
- 行空间同理
- 矩阵的秩rank:列空间的维度
- 满秩矩阵:方阵。秩=行数
A A A 满秩的充要条件 A x = 0 Ax=0 Ax=0,则 x = 0 x=0 x=0 - r a n k ( A + B ) ≤ r a n k ( A ) + r a n k ( B ) rank(A+B)\le rank(A)+rank(B) rank(A+B)≤rank(A)+rank(B)(矩阵加对矩阵秩的变化很大)
逆矩阵
- 矩阵线性变换的逆变换
- A − 1 A^{-1} A−1,即 A x = y → A − 1 y = x A_x=y\to A^{-1}y=x Ax=y→A−1y=x,即 A A − 1 x = x AA^{-1}x=x AA−1x=x,即 A A − 1 = I , A − 1 A = I AA^{-1}=I,A^{-1}A=I AA−1=I,A−1A=I
- 逆变换必然存在,所以逆矩阵必然存在吗?
- 可逆矩阵 = 满秩矩阵,即 r a n k ( A ) = n , A ∈ F n × m rank(A)=n,A\in F^{n\times m} rank(A)=n,A∈Fn×m
- 可逆:定义域和值域一样(线性的),一定是方阵
- A x ∈ A 的列空间 A_x\in A\text{的列空间} Ax∈A的列空间。也就是 dim ( A 的列空间 ) = dim ( x 所属空间的维度 ) \dim (A\text{的列空间})=\dim (x\text{所属空间的维度}) dim(A的列空间)=dim(x所属空间的维度)
- 矩阵求逆:解方程。 A A − 1 = I AA^{-1}=I AA−1=I,高斯消元法
行变换
- 交换行
- 一行乘一个数
- 一行加上一个数
- 意义: A x = y A_x=y Ax=y
化为特殊形式,得原方程的解。
-
求 A − 1 A^{-1} A−1:
-
日常生活中求逆
-
CF1070L:bitset+优化
-
CF963E:主元法。手动消一些元
行列式
-
det ( A ) \det(A) det(A),把方阵变成一个数。 det ( A ) = ∑ p ( − 1 ) δ ( p ) ∏ i − 1 n a i , p i \det(A)=\sum_p(-1)^{\delta(p)}\prod_{i-1}^na_{i,p_i} det(A)=∑p(−1)δ(p)∏i−1nai,pi。(其中 p p p 为排列, δ ( p ) \delta(p) δ(p) 为逆序对个数)
-
性质
- det ( I ) = 1 \det(I)=1 det(I)=1
- 交换两行: det × = − 1 \det \times=-1 det×=−1
- 行乘 c c c: det × = c \det \times=c det×=c
- 一行加另一行: det \det det 不变。
-
所以可以高斯消元算了。
-
矩阵满秩:行列式不为0。
-
det ( A B ) = det A det B \det(AB)=\det A\det B det(AB)=detAdetB
行列式的应用
矩阵树定理(Matrix tree)
-
求一个图的生成树个数
-
Kirchhoff矩阵 K = D A K=DA K=DA, D D D 为度数矩阵(只有对角线上有数), A A A 为邻接矩阵(这东西应用原不止矩阵树定理,机器学习、物理领域)
-
性质1: det K = 0 \det K=0 detK=0,即不满秩。( A A A 满秩当且仅当, ∀ x ≠ 0 \forall x\neq 0 ∀x=0,都有 A x ≠ 0 A_x\neq 0 Ax=0)。所以 K 1 = 0 K1=0 K1=0。
-
性质2: K K K 的所有代数余子式相同。
- 运用性质:所有列的和为0。
- 运用性质:所有列的和为0。
-
事实上, K K K 的代数余子式 = 原图的生成树个数
-
应用:
- 树的边权积的和。邻接矩阵变邻接边权矩阵,度数矩阵同理。
- 所有边权和的和(省选原题P6624)。边权和为另一个形式的边权积。 w i ′ = 1 + w x w_i'=1+w_x wi′=1+wx。 w 1 ′ × w 2 ′ = ( 1 + w 1 k ) ( 1 + w 2 k ) = 1 + ( w 1 + w 2 ) x + w 1 w 2 x 2 = … m o d x 2 = 1 + ( w 1 + w 2 ) x w_1'\times w_2'=(1+w_1k)(1+w_2k)=1+(w_1+w_2)x+w_1w_2x^2=\dots\bmod x^2=1+(w_1+w_2)x w1′×w2′=(1+w1k)(1+w2k)=1+(w1+w2)x+w1w2x2=…modx2=1+(w1+w2)x
- 本质: A ∈ F n × n A\in F^{n\times n} A∈Fn×n,现在把 F F F 变成一个多项式了。
- CF578F
LGV引理
定义矩阵 M M M。其中 a i , j a_{i,j} ai,j 表示从 A i A_i Ai 到 B j B_j Bj 的路径数。
则 det M = ∑ p ( − 1 ) δ ( p ) ∑ 从Ai到Bj的n条不交路径方案数 \det M=\sum_p(-1)^{\delta(p)}\sum\text{从Ai到Bj的n条不交路径方案数} detM=∑p(−1)δ(p)∑从Ai到Bj的n条不交路径方案数(不经过同一个点)。LGV引理是把不交这个条件加上去。
假设交了:
两种方案抵消了。
- P7736 板子题
- Gym 102978A