8.3 Lattice notation
Every lattice symbol the articles use, how to read it, and where it appears.
Each row gives the symbol as it is rendered and as TeX, a way to read it aloud, its meaning on this site, a small example and the chapters that use it. When two chapters write the same object differently, or the same letter for different objects, the row says so. Other notation (vectors, rings, probability) is collected on the other pages of the math reference.
Lattices and bases
| Symbol | Read as | Meaning on this site | Example | Used in |
|---|---|---|---|---|
\Lambda, L | “lambda”, “L” | A lattice: every integer combination of a set of linearly independent basis vectors. Chapters 1–6 write ; the embedding guides (7.x) write . Same object. | 1.3, 1.4, 1.6, 2.2, 7.4, 7.5 | |
\Lambda(B) | “the lattice generated by B” | Basis vectors are the columns of . Used in 1.1, 1.2, 2.1, 2.2 and 6.1. | 1.1, 1.2, 2.1, 2.2, 6.1 | |
L(B) | “L of B” | Basis vectors are the rows of , as in g6k-rs and fplll. Used in the embedding guides. Convert by transposing: . | 7.1, 7.4, 4.6 | |
b_i, B | “b sub i”, “B” | The -th basis vector and the matrix that holds all of them (as columns or rows, see above). | 1.2, 4.1, 2.2, 7.1 | |
n, m, d | “n”, “m”, “d” | is usually the rank (number of basis vectors). A lattice is full-rank when equals the ambient dimension. For SIS and q-ary lattices counts the rows of and its columns. 7.5 uses for the working dimension. | 1.2, 2.4, 1.6, 7.5 | |
\mathbb{Z}^n | “Z n” | The integer lattice: all vectors with integer coordinates. Its basis is the identity matrix. | 1.6, 1.2, 7.5, 1.1 | |
\mathcal{P}(B) | “the fundamental parallelepiped of B” | The half-open box . Its translates by lattice points tile space, and its volume is . | For it is the unit square. | 1.3 |
\det(\Lambda), \mathrm{vol}(\Lambda) | “determinant” or “volume” (also “covolume”) of the lattice | Volume of ; the same for every basis. Full rank: . In general for columns, for rows. It is a positive number, not the signed determinant of one basis. | 1.3, 1.4, 1.5, 7.5, 1.2, 7.4 | |
\Lambda + t | “the coset of Λ shifted by t” | Every lattice point moved by the same vector . Not a lattice unless . Signatures sample from cosets such as . | 4.5, 2.5 |
Lengths and invariants
These numbers belong to the lattice itself: they do not change when you switch to another basis.
| Symbol | Read as | Meaning on this site | Example | Used in |
|---|---|---|---|---|
\lambda_1, \lambda_k | “lambda one”, “the k-th successive minimum” | is the length of a shortest nonzero lattice vector. is the smallest radius such that the ball contains linearly independent lattice vectors, so . | ; all | 1.3, 1.4, 1.6, 2.2, 2.1, 1.5 |
B(0,r), V_n | “the ball of radius r”, “V n” | The Euclidean ball around the origin, and the volume of the unit ball in dimension : . Not to be confused with a basis . | 1.3, 1.4 | |
\mathcal{K} | “K” | A convex body that is symmetric about the origin, as in Minkowski’s theorem: if then contains a nonzero lattice point. | 1.3 | |
\mathrm{gh}(L) | “the Gaussian heuristic of L” | The length a shortest vector would have in a random lattice of the same dimension and volume. Exact form ; the site mostly uses the approximation . It is a heuristic, not a bound. | For , : 2.490 (exact form) vs 2.420 (approximation) | 7.4, 7.5, 7.2, 7.3, 4.6, 7.1 |
\gamma_n | “Hermite’s constant in dimension n” | , so every -dimensional lattice has . Grows roughly like . | , , | 1.3, 1.4, 1.6 |
\rho | “rho”, the packing radius | : balls of this radius around lattice points do not overlap. With a subscript, is the Gaussian function instead (see 8.5 Probability and sampling). | 1.4, 1.3 | |
\mu(\Lambda) | “mu of Lambda”, the covering radius | : every point of space is within of the lattice. With two indices, means Gram–Schmidt coefficients instead. | 1.4, 1.3, 1.6 | |
\mathrm{dist}(t, \Lambda) | “the distance from t to Lambda” | , the quantity CVP asks you to achieve. | 2.2 | |
\Delta(\Lambda) | “packing density of Lambda” | Fraction of space covered by the non-overlapping balls of radius : . In FHE (3.2), is an unrelated scaling factor. | , | 1.4, 1.6 |
The kissing number, the count of shortest nonzero vectors, is always written in words on this site. The letter appears only in 3.3, where it counts the nonzero entries of the challenge polynomial.
Gram–Schmidt and reduction
These symbols depend on the basis. Reduction algorithms change them while the determinant stays fixed.
| Symbol | Read as | Meaning on this site | Example | Used in |
|---|---|---|---|---|
\tilde{b}_i | “b tilde i” | The Gram–Schmidt vectors of the basis: minus its projections onto the earlier ones. Many papers write instead; this site uses the tilde so that a star always means the dual. | 2.2, 4.1, 4.2, 1.5, 1.2, 4.6 | |
\mu_{ij} | “mu i j” | Gram–Schmidt coefficient for . Size reduction makes . | 4.1, 1.5 | |
\|\tilde{b}_i\| | “the Gram–Schmidt profile” | The list of Gram–Schmidt lengths. A well-reduced basis has a slowly decreasing profile; its product is always . | BKZ flattens the profile as grows | 4.2, 1.2, 2.2 |
\delta | “delta”, the LLL (Lovász) parameter | In LLL, sets how strict the Lovász condition is. | (original), (g6k-rs default) | 4.1, 1.5, 4.6 |
\eta | “eta”, the size-reduction parameter | In g6k-rs, LLL enforces with slightly above to tolerate rounding. 4.1 also uses for floating-point precision in bits. Elsewhere is a secret bound or the smoothing parameter. | 4.6, 4.1 | |
\delta_0 | “delta zero”, the root-Hermite factor | Quality of a reduced basis: . Smaller is better. | for LLL in practice | 1.5, 4.2, 1.4 |
\beta | “beta”, the block size | BKZ solves SVP exactly in blocks of consecutive projected vectors. Larger gives shorter vectors at exponential cost. is essentially LLL. | 3.4, 4.2, 1.5, 2.1 |
The root-Hermite estimate used in 1.4, 1.5, 3.4 and 4.2 is Chen's, . Some sources drop the factor; the two agree for large (1.00540 vs 1.00546 at ) but differ at small block sizes (1.0110 vs 1.0121 at ). Both are heuristics that are only meaningful for of about 50 and above.
Dual and q-ary lattices
| Symbol | Read as | Meaning on this site | Example | Used in |
|---|---|---|---|---|
\Lambda^* | “Lambda dual” | The dual lattice . Some papers, especially on ring lattices, write for the same object. For a full-rank square basis the dual basis is in either convention. | 1.2, 1.4, 1.6, 6.1, 1.3, 3.6 | |
\Lambda_q^\perp(A) | “Lambda q perp of A” | The modular kernel lattice for (6.2 names the row count ). SIS asks for a short vector in it. When has rank modulo a prime , its determinant is . | 1.6, 2.4, 6.2, 2.5, 4.5 | |
\Lambda_q(A) | “Lambda q of A” | The image lattice , the lattice behind LWE. Determinant under the same rank assumption. The two q-ary lattices are dual up to scaling. | 1.6, 2.4, 6.2 |
Problem names
A subscript on a problem name is an approximation factor. It is unrelated to Hermite’s constant and to the Dilithium parameters .
| Symbol | Read as | Meaning on this site | Example | Used in |
|---|---|---|---|---|
\mathrm{SVP}_\gamma | “approximate SVP with factor gamma” | Find a nonzero with . Exact SVP is . See 2.1. | LLL solves it for | 2.1, 2.4, 2.3 |
\mathrm{GapSVP}_\gamma | “gap SVP” | Decision version: given , tell whether or . The form used in hardness proofs for LWE. | Regev: worst-case GapSVP → LWE | 2.1, 2.4, 1.4 |
\mathrm{uSVP}_\gamma | “unique SVP” | SVP with the promise : the shortest vector stands out. Embeddings (7.x) try to create exactly this situation. | Kannan embedding of a BDD instance | 2.2, 7.5, 3.4 |
\mathrm{SIVP}_\gamma | “shortest independent vectors problem” | Find linearly independent lattice vectors, each of length at most . Ajtai’s and Regev’s worst-case reductions start from it. | SIS hardness rests on worst-case SIVP | 2.4, 2.1 |
\mathrm{CVP}_\gamma, \mathrm{BDD} | “approximate CVP”, “bounded distance decoding” | CVP: given , find with . BDD adds the promise that is unusually close; 2.2 states it as , which makes the answer unique. | Babai: after LLL | 2.2, 7.4, SVP & CVP |
\mathrm{SIS} | “short integer solution” | Find a nonzero with and , that is, a short vector of . Here is a norm bound, not a block size. | 2.4, 2.5 | |
\mathrm{LWE} | “learning with errors” | Recover from samples with drawn from the error distribution . A BDD instance in . | 2.3, 3.4 |
Specific lattices
| Symbol | Read as | Meaning on this site | Example | Used in |
|---|---|---|---|---|
A_2 | “A two”, the hexagonal lattice | , the densest packing in the plane. | , , kissing number 6 | 1.6, 1.4, 1.3 |
D_n | “D n”, the checkerboard lattice | Integer vectors with an even coordinate sum. or with a subscript is a discrete Gaussian distribution instead. | , | 1.6 |
E_8 | “E eight” | The densest lattice packing in dimension 8; self-dual. | , , kissing number 240 | 1.6, 1.4, 1.3 |
\Lambda_{24} | “the Leech lattice” | The densest lattice packing in dimension 24; even and unimodular. | , , kissing number 196,560 | 1.6, 1.4, 1.3 |
Same symbol, different meaning
| Symbol | Meanings on this site | How to tell them apart |
|---|---|---|
| BKZ block size (4.2, 3.4); SIS norm bound (2.4); Dilithium bound (3.3) | “BKZ-” and costs like mean block size; means a norm bound. | |
| Hermite constant (1.3, 1.4); approximation factor in (2.1, 2.2); Dilithium (3.3) | Subscript is the dimension; a subscript on a problem name is a factor; is a parameter. | |
| LLL parameter (4.1, 4.6); root-Hermite factor (1.4, 1.5, 4.2), always with the subscript | The LLL parameter is below 1 (0.75, 0.99); the root-Hermite factor is just above 1 (1.005 to 1.022). | |
| Size-reduction parameter (4.6); precision in bits (4.1); secret bound in Kyber and Dilithium (3.1, 3.3); smoothing parameter (1.4) | 0.501 is size reduction; 2 or 4 is a secret bound; a subscript is smoothing. | |
| Covering radius (1.3, 1.4); Gram–Schmidt coefficient (4.1, 1.5); a message bit or signed message (2.3, 2.5, 3.3) | Argument is a radius; two indices are Gram–Schmidt. | |
| Packing radius (1.3, 1.4); Gaussian function (1.4) | The Gaussian function always carries a width subscript . | |
| Dual lattice ; conjugate transpose in Falcon (3.6); the closest vector in 2.2 | On a lattice it is the dual. Gram–Schmidt vectors are always written with a tilde, . | |
| Packing density (1.4, 1.6); FHE scaling factor (3.2) | Density is below 1; the FHE factor is a large power of 2 such as . | |
| Checkerboard lattice (1.6); discrete Gaussian (1.4, 2.3, 2.5) | A lattice and a width in the subscript mean a distribution. |
Conventions we follow
- Norms are Euclidean unless marked: is the 2-norm, the largest coordinate.
- Chapters 1–6 put basis vectors in columns; the embedding guides and g6k-rs recipes put them in rows. Transpose when you move a formula between them.
- always means the positive covolume of the lattice.
- The dual lattice is ; Gram–Schmidt vectors are . Papers that write or mean the same things.
- The Gaussian heuristic and root-Hermite estimates are heuristics for random-looking lattices, not bounds.
Further reading
Daniele Micciancio and Shafi Goldwasser, Complexity of Lattice Problems: A Cryptographic Perspective (Springer, 2002), fixes most of the problem notation above. John Conway and Neil Sloane, Sphere Packings, Lattices and Groups, is the standard reference for , , and the Leech lattice. Chris Peikert’s survey A Decade of Lattice Cryptography uses the q-ary and dual notation. These references are cited from memory.