लेनस्ट्रा-लेनस्ट्रा-लोवाज़ जाली आधार कमी एल्गोरिथ्म

लेनस्ट्रा-लेनस्ट्रा-लोवाज़ (एलएलएल) जालक (लैटिस) आधार कटौती कलन विधि एक बहुपद समय जालक कमी एल्गोरिथ्म है जिसका आविष्कार 1982 में अर्जेन लेनस्ट्रा, हेनरी लेनस्ट्रा और लास्ज़लो लोवाज़ ने किया था। एक आधार दिया गया (रैखिक बीजगणित) $$\mathbf{B} = \{ \mathbf{b}_1,\mathbf{b}_2, \dots, \mathbf{b}_d \}$$ n-आयामी पूर्णांक निर्देशांक के साथ, एक जालक (समूह) एल ('Rn' का एक अलग उपसमूह) के साथ $$ d \leq n $$, एलएलएल (LLL) एल्गोरिदम समय में एलएलएल-कम (लघु, लगभग ओर्थोगोनल ) जालक आधार की गणना करता है $$\mathcal O(d^5n\log^3 B)$$ कहाँ $$B$$ की सबसे बड़ी लंबाई है $$\mathbf{b}_i$$ Norm_(mathematics)#Euclidean_norm के अंतर्गत, अर्थात, $$B = \max\left(\|\mathbf{b}_1\|_2, \|\mathbf{b}_2\|_2, \dots, \|\mathbf{b}_d\|_2\right)$$. मूल अनुप्रयोग बहुपद गुणनखंडन के लिए बहुपद-समय एल्गोरिदम देने के लिए थे#पूर्णांकों पर अविभाज्य बहुपदों का गुणनखंडन करने के लिए, डिरिचलेट के सन्निकटन प्रमेय#एक साथ संस्करण को खोजने के लिए, और निश्चित आयामों में रैखिक प्रोग्रामिंग को हल करने के लिए।

एलएलएल कमी
एलएलएल-रिड्यूस्ड की सटीक परिभाषा इस प्रकार है: एक आधार दिया गया (रैखिक बीजगणित) $$\mathbf{B}=\{ \mathbf{b}_1,\mathbf{b}_2, \dots, \mathbf{b}_n \},$$ इसके ग्राम-श्मिट प्रक्रिया ऑर्थोगोनल आधार को परिभाषित करें $$\mathbf{B}^*=\{ \mathbf{b}^*_1, \mathbf{b}^*_2, \dots, \mathbf{b}^*_n \},$$ और ग्राम-श्मिट गुणांक $$\mu_{i,j}=\frac{\langle\mathbf{b}_i,\mathbf{b}^*_j\rangle}{\langle\mathbf{b}^*_j,\mathbf{b}^*_j\rangle},$$ किसी के लिए $$1 \le j < i \le n$$.

फिर आधार $$B$$ यदि कोई पैरामीटर मौजूद है तो एलएलएल कम हो गया है $$\delta$$ में $(0.25, 1]$ ऐसा कि निम्नलिखित कायम रहे:

\mathbf{b}^*_{k-1}\Vert^2$$.
 * 1) (आकार-कम) के लिए $$1 \leq j < i \leq n\colon \left|\mu_{i,j}\right|\leq 0.5$$. परिभाषा के अनुसार, यह संपत्ति आदेशित आधार की लंबाई में कमी की गारंटी देती है।
 * 2) (लोवेज़ स्थिति) k = 2,3,..,n के लिए $$  \colon \delta \Vert \mathbf{b}^*_{k-1}\Vert^2  \leq \Vert \mathbf{b}^*_k\Vert^2+ \mu_{k,k-1}^2\Vert

यहां, के मूल्य का अनुमान लगाया जा रहा है $$\delta$$ पैरामीटर, हम यह निष्कर्ष निकाल सकते हैं कि आधार कितनी अच्छी तरह कम हो गया है। के महानतम मूल्य $$\delta$$ आधार की मजबूत कटौती का नेतृत्व करें। प्रारंभ में, ए. लेनस्ट्रा, एच. लेनस्ट्रा और एल. लोवेज़ ने एलएलएल-कमी एल्गोरिथ्म का प्रदर्शन किया $$\delta = \frac{3}{4}$$. ध्यान दें कि यद्यपि एलएलएल-कमी को अच्छी तरह से परिभाषित किया गया है $$\delta = 1$$, बहुपद-समय जटिलता की गारंटी केवल के लिए है $$\delta$$ में $$(0.25,1)$$.

एलएलएल एल्गोरिदम एलएलएल-कम किए गए आधारों की गणना करता है। आधार की गणना करने के लिए कोई ज्ञात कुशल एल्गोरिदम नहीं है जिसमें 4 से अधिक आयामों की जालक के लिए आधार वैक्टर जितना संभव हो उतना लघु हो। हालाँकि, एलएलएल-कम आधार लगभग जितना संभव हो उतना लघु है, इस अर्थ में कि पूर्ण सीमाएँ हैं $$c_i > 1$$ ऐसा कि प्रथम आधार सदिश से अधिक नहीं है $$c_1$$ जालक में सबसे छोटे वेक्टर से कई गुना लंबा, दूसरा आधार वेक्टर भी इसी प्रकार भीतर है $$c_2$$ दूसरे क्रमिक न्यूनतम का, इत्यादि।

अनुप्रयोग
एलएलएल एल्गोरिथ्म का एक प्रारंभिक सफल अनुप्रयोग एंड्रयू ओडलीज़्को और रीले में हरमन द्वारा मर्टेंस अनुमान अनुमान को खारिज करने में इसका उपयोग था। एलएलएल एल्गोरिदम को एमआईएमओ डिटेक्शन एल्गोरिदम में कई अन्य अनुप्रयोग मिले हैं और सार्वजनिक-कुंजी एन्क्रिप्शन योजनाओं का क्रिप्टो विश्लेषण: नैकाचे-स्टर्न नैपसैक क्रिप्टोसिस्टम, विशेष सेटिंग्स के साथ आरएसए (एल्गोरिदम), एनटीआरयूएन्क्रिप्ट, इत्यादि। एल्गोरिदम का उपयोग कई समस्याओं के पूर्णांक समाधान खोजने के लिए किया जा सकता है। विशेष रूप से, एलएलएल एल्गोरिदम पूर्णांक संबंध एल्गोरिदम में से एक का मूल बनाता है। उदाहरण के लिए, यदि यह माना जाता है कि r=1.618034 पूर्णांक गुणांक वाले अज्ञात द्विघात समीकरण के लिए एक फ़ंक्शन का (थोड़ा गोलाकार) मूल है, तो कोई जालक में एलएलएल कटौती लागू कर सकता है $$\mathbf{Z}^4$$ द्वारा फैलाया गया $$[1,0,0,10000r^2], [0,1,0,10000r],$$ और $$[0,0,1,10000]$$. घटे हुए आधार में पहला वेक्टर इन तीनों का एक पूर्णांक रैखिक संयोजन होगा, इस प्रकार आवश्यक रूप से $$[a,b,c,10000(ar^2+br+c)]$$; लेकिन ऐसा वेक्टर केवल तभी लघु होता है जब a, b, c छोटे हों और $$ar^2+br+c$$ और भी लघु है. इस प्रकार इस लघु वेक्टर की पहली तीन प्रविष्टियाँ अभिन्न द्विघात बहुपद के गुणांक होने की संभावना है जिसका मूल r है। इस उदाहरण में एलएलएल एल्गोरिदम सबसे लघु वेक्टर पाता है [1, -1, -1, 0.00025] और वास्तव में $$x^2-x-1$$ इसका मूल स्वर्णिम अनुपात के बराबर है, 1.6180339887....

एलएल-कम आधार के गुण
होने देना $$\mathbf{B}=\{ \mathbf{b}_1,\mathbf{b}_2, \dots, \mathbf{b}_n \}$$ एक हो $$\delta$$-एलएलएल-एक जालक का कम आधार (समूह) $$\mathcal L$$. एलएलएल-कम आधार की परिभाषा से, हम इसके बारे में कई अन्य उपयोगी गुण प्राप्त कर सकते हैं $$\mathbf{B}$$.


 * 1) आधार में पहला वेक्टर लैटिस समस्या से बहुत बड़ा नहीं हो सकता # सबसे लघु वेक्टर समस्या (एसवीपी) | सबसे लघु गैर-शून्य वेक्टर: $$\Vert\mathbf{b}_1 \Vert \le (2 / (\sqrt{4\delta - 1}))^{n-1} \cdot \lambda_1(\mathcal L)$$. विशेष रूप से, के लिए $$\delta = 3/4$$, यह देता है $$\Vert\mathbf{b}_1 \Vert \le 2^{(n-1)/2} \cdot \lambda_1(\mathcal L)$$.
 * 2) आधार में पहला वेक्टर भी जालक के निर्धारक से घिरा है: $$\Vert\mathbf{b}_1 \Vert \le (2 / (\sqrt{4\delta - 1}))^{(n-1)/2} \cdot (\det(\mathcal L))^{1/n}$$. विशेष रूप से, के लिए $$\delta = 3/4$$, यह देता है $$\Vert\mathbf{b}_1 \Vert \le 2^{(n-1)/4} \cdot  (\det(\mathcal L))^{1/n}$$.
 * 3) आधार में वैक्टर के मानदंडों का उत्पाद जालक के निर्धारक से बहुत बड़ा नहीं हो सकता: चलो $$\delta = 3/4$$, तब  $\prod_{i=1}^n \Vert\mathbf{b}_i \Vert \le 2^{n(n-1)/4} \cdot  \det(\mathcal L)$.

एलएलएल एल्गोरिदम स्यूडोकोड
निम्नलिखित विवरण पर आधारित है, इरेटा से सुधार के साथ। INPUT a lattice basis b1, b2, ..., bn in Zm    a parameter δ with 1/4 < δ < 1, most commonly δ = 3/4 PROCEDURE B* <- GramSchmidt({b1, ..., bn}) = {b1*, ..., bn*}; and do not normalize μi,j <- InnerProduct(bi, bj*)/InnerProduct(bj*, bj*);  using the most current values of bi and bj*     k <- 2; while k <= n do for j from k−1 to 1 do if |μk,j| > 1/2 then bk <- bk − ⌊μk,j⌉bj;               Update B* and the related μi,j 's as needed. (The naive method is to recompute B* whenever bi changes:                B* <- GramSchmidt({b1, ..., bn}) = {b1*, ..., bn*}) end if end for if InnerProduct(bk*, bk*) > (δ − μ2k,k−1) InnerProduct(bk−1*, bk−1*) then k <- k + 1; else Swap bk and bk−1; Update B* and the related μi,j 's as needed. k <- max(k−1, 2); end if end while return B the LLL reduced basis of {b1, ..., bn} OUTPUT the reduced basis b1, b2, ..., bn in Zm

Z से उदाहरण3
चलो एक जालक आधार $$ \mathbf{b}_1,\mathbf{b}_2, \mathbf{b}_3 \in \mathbf{Z}^{3}$$, के कॉलम द्वारा दिया जाए $$\begin{bmatrix} 1 & -1& 3\\ 1 & 0 & 5\\  1 & 2 & 6 \end{bmatrix}$$ तो घटा हुआ आधार है $$\begin{bmatrix} 0 & 1& -1\\ 1 & 0 & 0\\  0 & 1 & 2 \end{bmatrix},$$ जो आकार में लघु है, लोवेज़ स्थिति को संतुष्ट करता है, और इसलिए एलएलएल-कम हो गया है, जैसा कि ऊपर वर्णित है। डब्ल्यू बोस्मा देखें। कमी प्रक्रिया के विवरण के लिए.

Z[i] से उदाहरण4
इसी प्रकार, नीचे मैट्रिक्स के कॉलम द्वारा दिए गए जटिल पूर्णांकों के आधार के लिए, $$\begin{bmatrix} -2+2i & 7+3i &  7+3i & -5+4i\\ 3+3i & -2+4i & 6+2i & -1+4i\\ 2+2i & -8+0i & -9+1i & -7+5i\\ 8+2i & -9+0i & 6+3i & -4+4i \end{bmatrix},$$ तो नीचे मैट्रिक्स के कॉलम एलएलएल-कम आधार देते हैं। $$\begin{bmatrix} -6+3i & -2+2i & 2-2i & -3+6i \\ 6-1i & 3+3i &  5-5i &  2+1i \\ 2-2i & 2+2i & -3-1i & -5+3i \\ -2+1i & 8+2i &  7+1i & -2-4i \\ \end{bmatrix}.$$

कार्यान्वयन
एलएलएल में लागू किया गया है
 * अरागेली फ़ंक्शन के रूप में
 * fpLLL एक स्टैंड-अलोन कार्यान्वयन के रूप में
 * कार्यक्रम के रूप में संख्या सिद्धांत के लिए फास्ट लाइब्रेरी
 * फ़ंक्शन के रूप में GAP कंप्यूटर बीजगणित प्रणाली
 * खुश फ़ंक्शन के रूप में  पैकेज में
 * मैग्मा कंप्यूटर बीजगणित प्रणाली के कार्य  और   (ग्राम मैट्रिक्स लेते हुए)
 * मेपल कंप्यूटर बीजगणित प्रणाली फ़ंक्शन के रूप में
 * फ़ंक्शन के रूप में गणित
 * नंबर थ्योरी लाइब्रेरी (NTL) फ़ंक्शन के रूप में
 * कार्यक्रम के रूप में PARI/GP
 * Pymatgen फ़ंक्शन के रूप में
 * विधि के रूप में सेजमैथ  एफपीएलएलएल और एनटीएल द्वारा संचालित
 * इसाबेल/एचओएल 'औपचारिक साक्ष्यों के संग्रह' प्रविष्टि में . यह कोड कुशलतापूर्वक निष्पादन योग्य हास्केल को निर्यात करता है।

यह भी देखें

 * कॉपरस्मिथ विधि