Αναγωγή Λένστρα–Λένστρα–Λοβάς

Η **αναγωγή βάσης ενός πλέγματος κατά Lenstra–Lenstra–Lovasz (LLL)**  είναι ένας αλγόριθμος πολυωνυμικού χρόνου που επινοήθηκε από τους Άριεν Λένστρα, Χέντρικ Λένστρα και Λάσλο Λοβάς το 1982. Αν μας δοθεί μία βάση 
\mathbf{B}=\{ \mathbf{b}_1,\mathbf{b}_2, \dots, \mathbf{b}_d \} με  
\mathbf{b}_j\in {\mathbb{Z}^n} ενός πλέγματος \Lambda, ο LLL αλγόριθμος υπολογίζει μία *δ-ΛΛΛ-ανηγμένη* βάση (μικρά μήκη διανυσμάτων, σχεδόν ορθογώνια) σε πολυωνυμικό χρόνο.

## Ορισμός δ-LLL ανηγμένης βάσης ενός πλέγματος

Ο ακριβής ορισμός της ανηγμένης βάσης στον LLL είναι ο ακόλουθος:  

Δεδομένης μιας βάσης
:\mathbf{B}=\{ \mathbf{b}_1, \dots, \mathbf{b}_n \},

ορίζουμε τη διαδικασία Gram-Schimdt για ορθογώνια βάση
:\mathbf{B}^*=\{\mathbf{b}^*_1, \dots, \mathbf{b}^*_n \},

και τους συντελεστές Gram-Schimdt
:\mu_{i,j}=\frac{\langle\mathbf{b}_i,\mathbf{b}^*_j\rangle}{\langle\mathbf{b}^*_j,\mathbf{b}^*_j\rangle}, για κάθε 1 \le j .
Η βάση B είναι ανηγμένη κατά LLL αν υπάρχει μια παράμετρος \delta στο (0.25,1] τέτοια ώστε να ισχύει το εξής:
# Για 1 \leq j . Εξ ορισμού, αυτή η ιδιότητα εξασφαλίζει τη μείωση του μήκους της διατεταγμένης βάσης (size-reduced) .
# Για k = 1,2,..,n   \colon \delta \Vert \mathbf{b}^*_{k-1}\Vert^2  \leq \Vert \mathbf{b}^*_k\Vert^2+ \mu_{k,k-1}^2\Vert 
 \mathbf{b}^*_{k-1}\Vert^2  (συνθήκη Λοβάς) .
Στα παραπάνω, εκτιμώντας την τιμή της παραμέτρου \delta, μπορούμε να συμπεράνουμε πόσο καλά είναι ανηγμένη η βάση. Μεγαλύτερες τιμές του  \delta οδηγούν σε ισχυρότερη αναγωγή της βάσης.

Αρχικά, οι Α. Λένστρα, Χ. Λένστρα και Λ. Λοβάς απέδειξαν τον αλγόριθμο LLL για  \delta = \frac{3}{4}.
Ας σημειωθεί ότι αν και ο αλγόριθμος είναι καλά ορισμένος για \delta = 1, η πολυπλοκότητα πολυωνυμικού χρόνου εξασφαλίζεται μόνο για  \delta στο (0.25,1).
Ο αλγόριθμος LLL υπολογίζει LLL ανηγμένες βάσεις. Δεν υπάρχει γνωστός αποδοτικός αλγόριθμος που υπολογίζει μια βάση της οποία τα διανύσματα είναι όσο το δυνατόν μικρά για πλέγματα με διάσταση μεγαλύτερη από 4. Ωστόσο, μια ανηγμένη κατά LLL βάση είναι σχεδόν όσο το δυνατόν μικρότερη, με την έννοια ότι υπάρχουν όρια c_i > 1 τέτοια ώστε το πρώτο διάνυσμα της βάσης δεν είναι παραπάνω από c_1 φορές το μικρότερο διάνυσμα του πλέγματος, για το δεύτερο διάνυσμα υπάρχει αντίστοιχα ένα c_2, και ούτω καθεξής.

## Αλγόριθμος αναγωγής κατά LLL με χρήση Ευκλείδειας νόρμας

Η ακόλουθη περιγραφή βασίζεται στον Γκαλμπρέιθ .

 **ΔΕΔΟΜΕΝΑ**:  \vec{b}_1, \vec{b}_2, \dots, \vec{b}_n  \in {\mathbb{Z}^n} (μια βάση του πλέγματος), παράμετρος \frac{1}{4} ,  τυπική τιμή \delta = \frac{3}{4}
 **ΑΠΟΤΕΛΕΣΜΑΤΑ**: Βάση ανηγμένη κατά LLL:  \vec{b}_1', \vec{b}_2', \dots, \vec{b}_n' 
 
 **ΑΛΓΟΡΙΘΜΟΣ**:
 Υπολόγισε την Gram-Schmidt βάση \{ \vec{b}_1^*, \dots, \vec{b}_n^* \} και τους συντελεστές \mu_{i,j}:= \frac{\langle \vec{b}_{i}, \vec{b}_{j}^{*} \rangle}{\langle \vec{b}_{j}^{*}, \vec{b}_{j}^{*} \rangle}, για 1 \le j .
 Υπολόγισε B_i=\langle \vec{b}_{i}^*, \vec{b}_{i}^{*} \rangle= \parallel \vec{b}_i^*\parallel^2 για 1 \le i \le n.
 k=2
 
 **Όσο**  k \le n  **επανάλαβε**
 {
     **Για** j=(k-1) μέχρι 1 **με βήμα** -1 **επανάλαβε**
     {
         q_j\gets\lfloor \mu_{k,j}\rceil
         \vec{b}_k\gets\vec{b}_k - {q_j}\vec{b}_j
         Επανυπολόγισε τα \mu_{k,j} για 1 \le j 
     }
     **Αν**  B_k \ge ( \delta - \mu_{k,k-1}^2)B_{k-1} **τότε**
         k\gets k+1 
     **Αλλιώς**
     {
         Εναλλαγή  \vec{b}_k  με  \vec{b}_{k-1} 
         Επανυπολόγισε τα  \vec{b}_k^*, \vec{b}_{k-1}^*, B_k, B_{k-1}, \mu_{k-1,j}  και  \mu_{k,j}  για  1 \le j , και  \mu_{i,k}, \mu_{i,k-1}  για  k 
         k \gets max\{2,k-1\} 
     }
 }

## Παραδείγματα ανηγμένων κατά LLL βάσεων

## Χρονική πολυπλοκότητα του αλγορίθμου LLL

## Εφαρμογές του LLL

## Παραπομπές


Κατηγορία:Θεωρία αριθμών
Κατηγορία:Αλγόριθμοι