A verified LLL algorithm
Ralph Bottesch, Jose Divasón, Max Haslbeck, Sebastiaan Joosten, René Thiemann, Akihisa YamadaArchive of Formal Proofs 2018.
Abstract
The Lenstra-Lenstra-Lovász basis reduction algorithm, also known as LLL algorithm, is an algorithm to find a basis with short, nearly orthogonal vectors of an integer lattice. Thereby, it can also be seen as an approximation to solve the shortest vector problem (SVP), which is an NP-hard problem, where the approximation quality solely depends on the dimension of the lattice, but not the lattice itself. The algorithm also possesses many applications in diverse fields of computer science, from cryptanalysis to number theory, but it is specially well-known since it was used to implement the first polynomial-time algorithm to factor polynomials. In this work we present the first mechanized soundness proof of the LLL algorithm to compute short vectors in lattices. The formalization follows a textbook by von zur Gathen and Gerhard.
BibTeX
@article{LLL_Basis_Reduction-AFP, author = {Ralph Bottesch and Jose Divas\'on and Max Haslbeck and Sebastiaan Joosten and Ren\'e Thiemann and Akihisa Yamada}, title = {A verified LLL algorithm}, journal = {Archive of Formal Proofs}, month = feb, year = 2018, note = {\url{http://isa-afp.org/entries/LLL_Basis_Reduction.html}, Formal proof development}, ISSN = {2150-914x}, }