格
以方阵B为基底,格 L ( B ) L(B) L(B):
B ∈ R n × n , L ( B ) = { B x ∣ x ∈ Z n } B \in R^{n \times n},\,\,L(B) = \{Bx|x \in Z^{n}\} B∈Rn×n,L(B)={Bx∣x∈Zn}
-
格 L L L是线性空间 R n R^{n} Rn的加法子群 (并非子空间)。
-
格 L L L是离散的,即 ∀ x ∈ L \forall x \in L ∀x∈L, x x x的邻域上只有 x x x本身。
对偶格
L L L的对偶格:
L ∗ = { w ∣ < w , L > ⊆ Z } L^{*} = \{w|<w,L> \subseteq Z\} L∗={w∣<w,L>⊆Z}
若 L L L的基底为满秩方阵B,那么 L ∗ L^* L∗的基底为 ( B T ) − 1 (B^{T})^{-1} (BT)−1
对于 x , y ∈ Z n x,y \in Z^{n} x,y∈Zn容易验证:
< ( B T ) − 1 x , B y > = ( ( B T ) − 1 x ) T B y = x T B − 1 B y = x T y ∈ Z n <(B^T)^{-1}x,By> = ((B^T)^{-1}x)^T By = x^T B^{-1} B y = x^T y \in Z^n <(BT)−1x,By>=((BT)−1x)TBy=xTB−1By=xTy∈Zn
q阶随机格
以 A ∈ Z q n × m A \in Z^{n \times m}_q A∈Zqn×m为校验矩阵的格:
L ⊥ ( A ) = { z ∣ A z = 0 ∈ Z q n , z ∈ Z m } ⊇ q Z m L^{\perp}(A) = \{z|Az=0 \in Z^n_q, z \in Z^{m}\} \supseteq qZ^m L⊥(A)={z∣Az=0∈Zqn,z∈Zm}⊇qZm
容易验证,它是加法子群,并且离散。怎么计算它的基底?随机产生 { b 1 , . . . , b m − 1 } ∈ b m − 1 \{b_1,...,b_{m-1}\}\in b^{m-1} {b1,...,bm−1}∈bm−1,计算 b m b_m bm使得 A ⋅ [ 0 , . . . , 0 , b m ] = − A ⋅ [ b 1 , . . . , b m − 1 , 0 ] ( m o d q ) A \cdot [0,...,0,b_m] = -A \cdot [b_1,...,b_{m-1},0] (mod\,q) A⋅[0,...,0,bm]=−A⋅[b1,...,bm−1,0](modq),得到 b = { b 1 , . . . , b m } b=\{b_1,...,b_m\} b={b1,...,bm};反复m次有极大概率得到满秩方阵 B B B,但这组基是"坏的"。
假设短格基为S,那么: A ⋅ S = 0 ( m o d q ) A·S=0(mod\,q) A⋅S=0(modq),这是SIS问题。
补空间
考虑三维空间,x-y平面与过原点的不属于x-y平面的任意一条直线可以张成整个空间,这种直线无穷多,但z轴只有一个。
对于线性空间U的子空间V,有无穷多的直和补空间V’,满足 U = V ⊕ V ′ U = V \oplus V' U=V⊕V′
但V的正交补空间存在且唯一,记做 V ⊥ V^{\perp} V⊥
若 B ∈ R n × n , V = B × R n B \in R^{n \times n},\,\,V = B \times R^n B∈Rn×n,V=B×Rn
那么, V ⊥ = { z ∣ z T B = 0 , z ∈ R n } V^{\perp} = \{z|z^T B=0, z \in R^{n}\} V⊥={z∣zTB=0,z∈Rn}
对 B B B做初等列变换,变成秩为m的长矩阵:
B ⟺ ( I m A ( n − m ) × m ) B \iff \begin{pmatrix} I_m \\ A_{(n-m) \times m} \\ \end{pmatrix} B⟺(ImA(n−m)×m)
容易知道:
( ( − A ) ( n − m ) × m ∣ I n − m ) × ( I m A ( n − m ) × m ) = 0 ( n − m ) × m \begin{pmatrix} (-A)_{(n-m) \times m} &|& I_{n-m} \\ \end{pmatrix} \times \begin{pmatrix} I_m \\ A_{(n-m) \times m} \\ \end{pmatrix} =0_{(n-m) \times m} ((−A)(n−m)×m∣In−m)×(ImA(n−m)×m)=0(n−m)×m
于是 V ⊥ V^{\perp} V⊥的基底B‘为:
B ′ ⟺ ( ( − A ) ( n − m ) × m ∣ I n − m ) T B' \iff \begin{pmatrix} (-A)_{(n-m) \times m} &|& I_{n-m} \\ \end{pmatrix}^{T} B′⟺((−A)(n−m)×m∣In−m)T