Lattices are geometric objects that can be pictorially described as the set of intersection points of an infinite, regular n-dimensional grid. De- spite their apparent simplicity, lattices hide a rich combinatorial struc- ture, which has attracted the attention of great mathematicians over the last two centuries. Not surprisingly, lattices have found numerous ap- plications in mathematics and computer science, ranging from number theory and Diophantine approximation, to combinatorial optimization and cryptography. The study ...
Read More
Lattices are geometric objects that can be pictorially described as the set of intersection points of an infinite, regular n-dimensional grid. De- spite their apparent simplicity, lattices hide a rich combinatorial struc- ture, which has attracted the attention of great mathematicians over the last two centuries. Not surprisingly, lattices have found numerous ap- plications in mathematics and computer science, ranging from number theory and Diophantine approximation, to combinatorial optimization and cryptography. The study of lattices, specifically from a computational point of view, was marked by two major breakthroughs: the development of the LLL lattice reduction algorithm by Lenstra, Lenstra and Lovasz in the early 80's, and Ajtai's discovery of a connection between the worst-case and average-case hardness of certain lattice problems in the late 90's. The LLL algorithm, despite the relatively poor quality of the solution it gives in the worst case, allowed to devise polynomial time solutions to many classical problems in computer science. These include, solving integer programs in a fixed number of variables, factoring polynomials over the rationals, breaking knapsack based cryptosystems, and finding solutions to many other Diophantine and cryptanalysis problems.
Read Less