First realized in the 1980s by Lenstra, Lenstra, and Lovasz, the LLL algorithm was originally intended to factor polynomials with rational coefficients. It improved upon the existing lattice reduction algorithm in order to solve integer linear programming problems and was later adapted for use in crypanalysis. This book provides an introduction