For AI agents: the complete documentation index is available at https://shijin.space/llms.txt, the full documentation bundle is available at https://shijin.space/llms-full.txt, and this page is available as Markdown at https://shijin.space/knowledge/lattices-and-bases/index.md.

格与格基

格与格基

设 B=[b1,…,bn]∈Rm×nB=[b_1,\ldots,b_n]\in\mathbb R^{m\times n} 的列向量线性无关,则

L(B)={Bz:z∈Zn}\mathcal L(B)=\{Bz:z\in\mathbb Z^n\}

称为由 BB 生成的格,BB 是该格的一组基。格是点集,格基是生成它的一种表示。

  • nn 为格的秩,mm 为环境维数;n=mn=m 时称为满秩格。
  • 整数限制针对组合系数,基向量和格点的坐标不必为整数。
  • 线性空间 span⁡(B)={Bx:x∈Rn}\operatorname{span}(B)=\{Bx:x\in\mathbb R^n\} 允许实数系数,格只允许整数系数。
  • 基向量线性无关,因此每个格点在给定基下的整数坐标唯一。

不同资料对“维数”的用法不一致,本文统一区分“秩”与“环境维数” [1, p. 1; 2, p. 2]。

等价格基与换基

同一个格可以有不同的基。对列满秩矩阵 B,B′∈Rm×nB,B'\in\mathbb R^{m\times n},

L(B′)=L(B)  ⟺  B′=BU,U∈Zn×n,det⁡U=±1.\mathcal L(B')=\mathcal L(B) \iff B'=BU,\quad U\in\mathbb Z^{n\times n},\quad \det U=\pm1.

这样的整数矩阵 UU 称为幺模矩阵,其逆矩阵仍为整数矩阵。因此新旧基能相互通过整数线性组合得到,生成的格不变 [1, p. 3; 2, pp. 4, 7–8]。

在列向量作为基的约定下,以下操作保持格不变:

  1. 交换两个基向量。
  2. 将一个基向量取反。
  3. bi←bi+kbjb_i\leftarrow b_i+k b_j,其中 k∈Zk\in\mathbb Z、i≠ji\ne j。

任意两组等价格基都可以通过上述操作相互转换。后续格基约化正是在保持格不变的前提下,改善基向量的性质 [1, pp. 3–4; 2, sec. 2]。

一个必要的辨析

张成相同的实线性空间,不代表生成相同的格。

例如,I2I_2 与 diag⁡(2,1)\operatorname{diag}(2,1) 都张成 R2\mathbb R^2,但分别生成 Z2\mathbb Z^2 与 2Z×Z2\mathbb Z\times\mathbb Z。后者无法通过整数系数生成 (1,0)T(1,0)^T。

因此,一组向量即使线性无关且属于某个给定格,也未必是该格的基;还需要能够生成该格的全部点。

阅读位置

  • 格由格基向量的整数线性组合生成,幺模换基保持格不变 [1, pp. 1, 3–4]。
  • 格基的定义与等价变换可以通过整数线性组合和初等列操作刻画 [2, pp. 2, 4–5, 7–8]。

参考文献

1. Oded Regev. Lecture 1: introduction. 2004. 原文.

2. Daniele Micciancio. Point lattices. 2017. 原文.