# Blichfeldt's theorem

Blichfeldt's theorem is a mathematical theorem in the geometry of numbers, stating that whenever a bounded set in the Euclidean plane has area $A$, it can be translated so that it includes at least $\lceil A\rceil$ points of the integer lattice. Equivalently, every bounded set of area $A$ contains a set of $\lceil A\rceil$ points whose coordinates all differ by integers.
This theorem can be generalized to other lattices and to higher dimensions, and can be interpreted as a continuous version of the pigeonhole principle. It is named after Danish-American mathematician Hans Frederick Blichfeldt, who published it in 1914. Some sources call it Blichfeldt's principle or Blichfeldt's lemma.

## Statement and proof

The theorem can be stated most simply for points in the Euclidean plane, and for the integer lattice in the plane. For this version of the theorem, let $S$ be any measurable set, let $A$ denote its area, and round this number up to the next integer value, $n=\lceil A\rceil$. Then Blichfeldt's theorem states that $S$ can be translated so that its translated copy contains at least $n$ points with integer coordinates.
The basic idea of the proof is to cut $S$ into pieces according to the squares of the integer lattice, and to translate each of those pieces by an integer vector so that it lies within the unit square having the origin as its lower right corner. This translation may cause some pieces of the unit square to be covered more than once, but if the combined area of the translated pieces is counted with multiplicity it remains unchanged, equal to $A$. On the other hand, if the whole unit square were covered with multiplicity $n-1$ its area would be $n-1$, less than $A$. Therefore, some point $p$ of the unit square must be covered with multiplicity at least $n$. A translation that takes $p$ to the origin will also take all of the $n$ points of $S$ that covered $p$ to integer points, which is what was required.
More generally, the theorem applies to $d$-dimensional sets $S$, with $d$-dimensional volume $A$, and to an arbitrary $d$-dimensional lattice $\Lambda$ (a set of points in $d$-dimensional space that do not all lie in any lower dimensional subspace, are separated from each other by some minimum distance, and can be combined by adding or subtracting their coordinates to produce other points in the same set). Just as the integer lattice divides the plane into squares, an arbitrary lattice divides its space into fundamental regions (called parallelotopes) with the property that any one of these regions can be translated onto any other of them by adding the coordinates of a unique lattice point. If $L$ is the $d$-dimensional volume of one of parallelotopes, then Blichfeldt's theorem states that $S$ can be translated to include at least $\lceil A/L\rceil$ points of $\Lambda$. The proof is as before: cut up $S$ by parallelotopes, translate the pieces by translation vectors in $\lambda$ onto a single parallelotope without changing the total volume (counted with multiplicity), observe that there must be a point $p$ of multiplicity at least $\lceil A/L\rceil$, and use a translation that takes $p$ to the origin.
Instead of asking for a translation for which there are $n$ lattice points, an equivalent form of the theorem states that $S$ itself contains a set of $n$ points, all of whose pairwise differences belong to the lattice. A strengthened version of the theorem applies to compact sets, and states that they can be translated to contain at least $\lfloor A+1\rfloor$ points of the lattice. This number of points differs from $\lceil A\rceil$ only when $A$ is an integer, for which it is larger by one.

## Applications
### Minkowski's theorem

Minkowski's theorem, proved earlier than Blichfeldt's work by Hermann Minkowski, states that any convex set in the plane that is centrally symmetric around the origin, with area greater than four (or a compact symmetric set with area equal to four) contains a nonzero integer point. More generally, for a $d$-dimensional lattice $\Lambda$ whose fundamental parallelotopes have volume $L$, any set centrally symmetric around the origin with volume greater than $2^{d}L$ contains a nonzero lattice point.
Although Minkowski's original proof was different, Blichfeldt's theorem can be used in a simple proof of Minkowski's theorem. Let $X$ be any centrally symmetric set with volume greater than $2^{d}L$ (meeting the conditions of Minkowski's theorem), and scale it down by a factor of two to obtain a set ${\tfrac {1}{2}}X$ of volume greater than $L$. By Blichfeldt's theorem, ${\tfrac {1}{2}}X$ has two points $p$ and $q$ whose coordinatewise difference belongs to $L$. Reversing the shrinking operation, $2p$ and $2q$ belong to $X$. By symmetry $-2q$ also belongs to $X$, and by convexity the midpoint of $2p$ and $-2q$ belongs to $X$. But this midpoint is $p-q$, a nonzero point of $L$.

### Other applications

Many applications of Blichfeldt's theorem, like the application to Minkowski's theorem, involve finding a nonzero lattice point in a large-enough set, but one that is not convex. For the proof of Minkowski's theorem, the key relation between the sets $X$ and ${\tfrac {1}{2}}X$ that makes the proof work is that all differences of pairs of points in ${\tfrac {1}{2}}X$ belong to $X$. However, for a set $X$ that is not convex, ${\tfrac {1}{2}}X$ might have pairs of points whose difference does not belong to $X$, making it unusable in this technique. One could instead find the largest centrally symmetric convex subset $K\subset X$, and then apply Minkowski's theorem to $K$, or equivalently apply Blichfeldt's theorem to ${\tfrac {1}{2}}K$. However, in many cases a given non-convex set $X$ has a subset $Y\subset X$ that is larger than ${\tfrac {1}{2}}K$, whose pairwise differences belong to $X$. When this is the case, the larger size of $Y$ relative to ${\tfrac {1}{2}}K$ leads to tighter bounds on how big $X$ needs to be sure of containing a lattice point.
For a centrally symmetric star domain, it is possible to use the calculus of variations to find the largest set $X'$ whose pairwise differences belong to $X$. Applications of this method include simultaneous Diophantine approximation, the problem of approximating a given set of irrational numbers by rational numbers that all have the same denominators.

## Generalizations

Analogues of Blichfeldt's theorem have been proven for other sets of points than lattices, showing that large enough regions contain many points from these sets. These include a theorem for Fuchsian groups, lattice-like subsets of $2\times 2$ matrices, and for the sets of vertices of Archimedean tilings.
Other generalizations allow the set $S$ to be a measurable function, proving that its sum over some set of translated lattice points is at least as large as its integral, or replace the single set $S$ with a family of sets.

## Computational complexity

A computational problem related to Blichfeldt's theorem has been shown to be complete for the PPP complexity class, and therefore unlikely to be solvable in polynomial time. The problem takes as input a set of integer vectors forming the basis of a $d$-dimensional lattice $\Lambda$, and a set $S$ of integer vectors, represented implicitly by a Boolean circuit for testing whether a given vector belongs to $S$. It is required that the cardinality of $S$, divided by the volume of the fundamental parallelotope of $\Lambda$, is at least one, from which a discrete version of Blichfeldt's theorem implies that $S$ includes a pair of points whose difference belongs to $\Lambda$. The task is to find either such a pair, or a point of $S$ that itself belongs to $\Lambda$. The computational hardness of this task motivates the construction of a candidate for a collision-resistant cryptographic hash function.