Appearance
Table of Contents
In complexity theory, we say a problem is hard if it it hard for the worst-case instance; while in cryptography, a problem is deemed hard only if it is hard for the average-case instance (i.e., for all but a negligible fraction of instances).
Basics
Lattice
Definition of a Lattice
Let
of all integer linear combinations of the basis vectors
Domain of Lattice and Vector Space
Note that the vector (Euclidean) space is defined over field
Representation of a Lattice
There are many different ways to represent a lattice, depending on the choice of basis vectors. For example, in 2-dimensional space
| One Basis | Another Basis |
|---|---|
![]() | ![]() |
Where the left image shows a lattice generated by basis,
and the right image shows a lattice generated by another basis,
We see that, the (intersection) points of the two lattices coincide, meaning that both bases generate the same set of lattice points in
Why do different bases generate the same lattice?
One question here : is there any relationships between these bases that generate the same lattice? The answer is yes, if they are related by a unimodular transformation, i.e., an integer matrix with determinant
We have already noticed that a lattice is defined over the integers
Fact 1.1 - Span of Lattice Bases
If
Proof
To show
Regarding (1), since
Regarding (2), since
Completing the proof.
Clearly, we see :
In this case, lattice
and vector space are closely related, but they are not the same. The lattice consists of discrete points, while the vector space contains all linear combinations of the basis vectors with real coefficients . Any set of
linearly independent vectors from lattice forms a basis for vector space . But this set does not necessarily generate the entire lattice . For example, two vectors from a lattice
, are independent, they are surely able to form a basis for vector space
. But they cannot generate the lattice since , not an integer combination of and .
NOTE
So what is the characteristic of vectors that can form a lattice basis? How to remove the non-integer linear combinations from consideration?
Fact 1.2 - Valid Lattice Basis
Given a lattice
We define
as the half-open parallelepiped generated by the basis

NOTE
If
Fact 1.3 - Sublattice
Sublattice is an natural concept after half-open parallelepiped, if there are lattice points from
If
NOTE
As we know the lattice basis vector is defined over
Fact 1.4 - Lattice as a Subgroup
It is obvious that a lattice
Moreover, for any
Determinant
Definition of Determinant of a Lattice
The determinant of a lattice
Furthermore, the determinant of a lattice is independent of the choice of basis. That is, if
Intuitively, the determinant is the shaded area of the fundamental parallelepiped generated by the basis
A natural question is how to compute the determinant of a lattice given one basis? There are two solutions for this.
Gram-Schmidt Process
The natural way is to :
- compute the orthogonal basis
corresponding to the given basis using the Gram-Schmidt process. - take the product of the norms of the orthogonal basis vectors to obtain the determinant:
where are the Gram-Schmidt orthogonalized vectors of the basis .
Take the figure 1.1 as an example, after applying the Gram-Schmidt process to the basis vectors, we obtain :
where
NOTE
By Gram-Schmidt orthogonalization, we can obtain a orthogonal basis

We see that
Determinant of Lattice Basis Matrix
In linear algebra, we know that, if
If
This is an alternative way to compute the determinant of a lattice given its basis, instead of computing every orthogonal vectors sequentially.
Successive Minima
Let
Intuitively, the
More specially, when
NOTE
The successive minima
Fact 1.5 - First Successive Minimum as an Upper Norm Bound of Lattice Basis
Let
Proof
For simplicity, we only consider a basis of a two-dimensional lattice, i.e.,
Suppose any non-zero lattice vector
Two cases involved:
(a) If
thus we have
(b) If
This implies for any non-zero lattice vector
which is equivalent with
More specially, for the first successive minimum
Minkowski's Theorem
Blichfeldt's Theorem
Let

Proof
Let
Note that lattice
The entire vector space
is partitioned into disjoint translates of the fundamental parallelepiped , i.e., : The projections on these disjoint translates of the fundamental parallelepiped cover the entire set
. That is, In our example,
. ensures that there exist at least two points in that differ by a lattice vector, we can use the pigeonhole principle to guarantee this. In our example, Therefore, there must exist two points
and such that . For instance, and , then .
Convex Body Theorem
For any lattice

Proof
Consider another set
Since
By Blichfeldt's Theorem, there exist two distinct points
By observing the figure above, we can see that :
- The symmetric convex
be a balll of radius centered at the origin. always holds because it contains an -dimensional hypercube with edges of length . So always exceeds . - By Minkowski's theorem there exists a non-zero lattice point in
, that is , and . Therefore, the shortest nonzero lattice has length :
By now, we have established an upper bound on the length of the shortest nonzero lattice vector in terms of the determinant of the lattice and the dimension.
Minkowski's Second Theorem
For any rank

Proof Logic
The equivalence of the goal is :
we will prove it by contradiction. We assume that
then we need to find a contradiction after some inductions.
As shown in above figure, for simplicity we consider
Let
If we can find a non-zero lattice point whose length is less than
It is clear that their volumn is scaled by the product of the scaling factors along each axis:
(In 2D, the volume corresponds to the area of the ellipse,
Since the ellipse
Let
By successive minima,
Thus
Computational Problems

Minkowski's bound is asymptotically tight in worst case.
That means for some lattice, the actual
In this case, when
Same Lattice Problems
The problem of finding a lattice vector of length
Given a lattice vector
Approximate SVP
Given a basis
Approximate CVP
Given a basis

