Lattice reduction
   HOME

TheInfoList



OR:

In mathematics, the goal of lattice basis reduction is to find a basis with short, nearly
orthogonal In mathematics, orthogonality is the generalization of the geometric notion of '' perpendicularity''. By extension, orthogonality is also used to refer to the separation of specific features of a system. The term also has specialized meanings in ...
vectors when given an integer lattice basis as input. This is realized using different algorithms, whose running time is usually at least exponential in the dimension of the lattice.


Nearly orthogonal

One measure of ''nearly orthogonal'' is the orthogonality defect. This compares the product of the lengths of the basis vectors with the volume of the
parallelepiped In geometry, a parallelepiped is a three-dimensional figure formed by six parallelograms (the term '' rhomboid'' is also sometimes used with this meaning). By analogy, it relates to a parallelogram just as a cube relates to a square. In Euclid ...
they define. For perfectly orthogonal basis vectors, these quantities would be the same. Any particular basis of n vectors may be represented by a
matrix Matrix most commonly refers to: * ''The Matrix'' (franchise), an American media franchise ** '' The Matrix'', a 1999 science-fiction action film ** "The Matrix", a fictional setting, a virtual reality environment, within ''The Matrix'' (franchi ...
B, whose columns are the basis vectors b_i, i = 1, \ldots, n. In the fully dimensional case where the number of basis vectors is equal to the dimension of the space they occupy, this matrix is square, and the volume of the fundamental parallelepiped is simply the absolute value of the
determinant In mathematics, the determinant is a scalar value that is a function of the entries of a square matrix. It characterizes some properties of the matrix and the linear map represented by the matrix. In particular, the determinant is nonzero if a ...
of this matrix \det(B). If the number of vectors is less than the dimension of the underlying space, then volume is \sqrt. For a given lattice \Lambda, this volume is the same (up to sign) for any basis, and hence is referred to as the determinant of the lattice \det(\Lambda) or lattice constant d(\Lambda). The orthogonality defect is the product of the basis vector lengths divided by the parallelepiped volume; :\delta(B) = \frac = \frac From the geometric definition it may be appreciated that \delta(B) \ge 1 with equality if and only if the basis is orthogonal. If the lattice reduction problem is defined as finding the basis with the smallest possible defect, then the problem is
NP-hard In computational complexity theory, NP-hardness ( non-deterministic polynomial-time hardness) is the defining property of a class of problems that are informally "at least as hard as the hardest problems in NP". A simple example of an NP-hard pr ...
. However, there exist
polynomial time In computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations performed by ...
algorithms to find a basis with defect \delta(B) \le c where ''c'' is some constant depending only on the number of basis vectors and the dimension of the underlying space (if different). This is a good enough solution in many practical applications.


In two dimensions

For a basis consisting of just two vectors, there is a simple and efficient method of reduction closely analogous to the
Euclidean algorithm In mathematics, the Euclidean algorithm,Some widely used textbooks, such as I. N. Herstein's ''Topics in Algebra'' and Serge Lang's ''Algebra'', use the term "Euclidean algorithm" to refer to Euclidean division or Euclid's algorithm, is an e ...
for the
greatest common divisor In mathematics, the greatest common divisor (GCD) of two or more integers, which are not all zero, is the largest positive integer that divides each of the integers. For two integers ''x'', ''y'', the greatest common divisor of ''x'' and ''y'' is ...
of two integers. As with the Euclidean algorithm, the method is iterative; at each step the larger of the two vectors is reduced by adding or subtracting an integer multiple of the smaller vector. The pseudocode of the algorithm, often known as Lagrange's algorithm or the Lagrange-Gauss algorithm, is as follows: Input: (u,v) a basis for the lattice L. Assume that , , v, , \leq , , u, , , otherwise swap them. Output: A basis (u,v) with , , u, , = \lambda_1(L), , , v, , = \lambda_2(L) . While , , v, , < , , u, , : q := \lfloor \rceil r := u - qv u := v v := r See the section on Lagrange's algorithm in for further details.


Applications

Lattice reduction algorithms are used in a number of modern number theoretical applications, including in the discovery of a
spigot algorithm A spigot algorithm is an algorithm for computing the value of a transcendental number (such as or ''e'') that generates the digits of the number sequentially from left to right providing increasing precision as the algorithm proceeds. Spigot alg ...
for \pi. Although determining the shortest basis is possibly an NP-complete problem, algorithms such as the
LLL algorithm LLL may refer to: Businesses and organisations * L3 Technologies, an American defense contractor formerly with the NYSE stock symbol LLL *La Leche League, an organization that promotes breastfeeding Education * LL.L (''Legum Licentiatus''), a ...
can find a short (not necessarily shortest) basis in polynomial time with guaranteed worst-case performance. LLL is widely used in the
cryptanalysis Cryptanalysis (from the Greek ''kryptós'', "hidden", and ''analýein'', "to analyze") refers to the process of analyzing information systems in order to understand hidden aspects of the systems. Cryptanalysis is used to breach cryptographic s ...
of
public key Public-key cryptography, or asymmetric cryptography, is the field of cryptographic systems that use pairs of related keys. Each key pair consists of a public key and a corresponding private key. Key pairs are generated with cryptographic al ...
cryptosystems. When used to find integer relations, a typical input to the algorithm consists of an augmented n \times n identity matrix with the entries in the last column consisting of the n elements (multiplied by a large positive constant w to penalize vectors that do not sum to zero) between which the relation is sought. The
LLL algorithm LLL may refer to: Businesses and organisations * L3 Technologies, an American defense contractor formerly with the NYSE stock symbol LLL *La Leche League, an organization that promotes breastfeeding Education * LL.L (''Legum Licentiatus''), a ...
for computing a nearly-orthogonal basis was used to show that
integer programming An integer programming problem is a mathematical optimization or feasibility program in which some or all of the variables are restricted to be integers. In many settings the term refers to integer linear programming (ILP), in which the objective ...
in any fixed dimension can be done in
polynomial time In computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations performed by ...
.


Algorithms

The following algorithms reduce lattice bases; several public implementations of these algorithms are also listed.


References

{{Reflist Theory of cryptography Computational number theory Lattice points Linear algebra Cryptography Lattice-based cryptography Post-quantum cryptography