Algorithme LLL

From Wikipedia, the free encyclopedia

Exemple d'une réduction de base de réseau, objectif de l'algorithme LLL. les vecteurs noirs sont les vecteurs de base et les rouges sont ceux de la base réduite.

L’algorithme LLL, des initiales de A. Lenstra, H. Lenstra et L. Lovász, est un algorithme de réduction de réseau qui s'exécute en temps polynomial.

L'algorithme LLL procède à une réduction de base de réseau. Il prend en entrée un nombre d de vecteurs de base d'un réseau, tels que ces vecteurs soient de dimension n et de norme inférieure à B, et retourne en sortie une base de réseau LLL-réduite, c'est-à-dire presque orthogonale, en temps .

Pseudo-code

L'algorithme LLL repose sur l'algorithme de réduction faible de bases, qui permet de rendre une base presque orthogonale.


Entrée : Une base 
Sortie : Une base réduite issue de 
LLL(B):
  B =  ReducFaible(B)

  *On fait Gram-Schmidt*
  Pour i=1 à n :                      
     Pour j= 1 à i-1 :
        
      

  Si B est réduite
    retourne B
  Sinon
    
    echanger(,)
    retourne LLL(B)

Applications

Notes et références

Bibliographie

Related Articles

Wikiwand AI