Author :
Dadush, Daniel ; Peikert, Chris ; Vempala, Santosh
Author_Institution :
Sch. of Comput. Sci., Georgia Inst. of Technol., Atlanta, GA, USA
Abstract :
We give a novel algorithm for enumerating lattice points in any convex body, and give applications to several classic lattice problems, including the Shortest and Closest Vector Problems (SVP and CVP, respectively) and Integer Programming (IP). Our enumeration technique relies on a classical concept from asymptotic convex geometry known as the M-ellipsoid, and uses as a crucial subroutine the recent algorithm of Micciancio and Voulgaris (STOC 2010)for lattice problems in the ℓ2 norm. As a main technical contribution, which may be of independent interest, we build on the techniques of Klartag (Geometric and Functional Analysis, 2006) to give an expected 2O(n)-time algorithm for computing an M-ellipsoid for any n-dimensional convex body. As applications, we give deterministic 2O(n)-time and -space algorithms for solving exact SVP, and exact CVP when the target point is sufficiently close to the lattice, on n-dimensional lattices in any (semi-)norm given an M-ellipsoid of the unit ball. In many norms of interest, including all ℓp norms, an M-ellipsoid is computable in deterministic poly(n) time, in which case these algorithms are fully deterministic. Here our approach may be seen as a derandomization of the "AKS sieve" for exact SVP and CVP (Ajtai, Kumar, and Siva Kumar, STOC2001 and CCC 2002). As a further application of our SVP algorithm, we derive an expected O(f*(n))n-time algorithm for Integer Programming, where f*(n) denotes the optimal bound in the so-called "flatnesstheorem," which satisfies f*(n) = O(n4/3 polylog(n))and is conjectured to be f*(n) = O(n). Our runtime improves upon the previous best of O(n2)n by Hildebrand and Koppe (2010).
Keywords :
computational complexity; convex programming; geometry; graph theory; integer programming; 2O(n)-time algorithms; Klartag techniques; M-ellipsoid covering; asymptotic convex geometry; closest vector problems; enumeration technique; enumerative lattice algorithms; flatness theorem; integer programming; n-dimensional convex body; shortest vector problems; Algorithm design and analysis; Approximation algorithms; Approximation methods; Ellipsoids; Lattices; Vectors; Integer Programming; Lattice Point Enumeration; M-ellipsoid; Shortest/Closest Vector Problem;