El algoritmo de simplificación de bases de retículos de Lenstra–Lenstra–Lovász (LLL) es un algoritmo de simplificación de retículos de complejidad polinomial inventado por Arjen Lenstra, Hendrik Lenstra y László Lovász en 1982.[1] Dada una base con coordenadas enteras n-dimensionales , de un retículo L en Rn con , el algoritmo LLL devuelve una base del retículo LLL-reducida (pequeña, casi ortogonal) en tiempo
donde B es la longitud más larga de los bajo la norma euclídea.
Entonces la base es LLL-reducida si existe un parámetro en (0.25,1] tal que se cumplen las siguientes condiciones:
(Tamaño reducido) Para . Por definición, esta propiedad garantiza la reducción de la longitud de la base.
(Condición de Lovász) Para k = 2,3,..,n .
Llegados a este punto, estimando el valor del parámetro, podemos concluir cómo de bien se reduce la base. A mayores valores de mayores reducciones de la base.
Inicialmente, A. Lenstra, H. Lenstra and L. Lovász demostraron el algoritmo de simplificación LLL algoritmo para .
Nótese que si bien el algoritmo de simplificación LLL está bien definido para , la complejidad de tiempo polinomial está garantizada solo para .
El algoritmo LLL calcula bases LLL-reducidas. No se conoce un algoritmo eficiente que calcule una base cuyos vectores sean tan pequeños como sea posible para retículos de dimensiones mayores que 4. Sin embargo, una base LLL-reducida es casi tan pequeña como sea posible, en le sentido de que hay unas cotas absolutas tal que el primer vector de la base no es más de veces más largo que el vector más corto del retículo,
el segundo vector de la base es igualmente más largo como máximo que el segundo vector más corto, y así sucesivamente.
Implementaciones en lenguajes computacionales
editar
LLL está implementado en
Arageli como la función lll_reduction_int.
fpLLL como implementación que se ejecuta en local.
Pymatgen como la función analysis.get_lll_reduced_lattice.
Sage como el método LLL llevado a cabo por fpLLL y NTL.
Referencias
editar
↑Lenstra, A. K.; Lenstra, H. W., Jr.; Lovász, L. (1982). «Factoring polynomials with rational coefficients». Mathematische Annalen261 (4): 515-534. MR 0682664. doi:10.1007/BF01457454. hdl: 1887/3810.
Véase también
editar
Método de Coppersmith
Bibliografía
editar
Napias, Huguette (1996). «A generalizaion of the LLL algorithm over euclidean rings or orders». J. The. Nombr. Bordeaux8 (2): 387-396.
Cohen, Henri (2000). A course in computational algebraic number theory. GTM 138. Springer. ISBN3-540-55640-0.