Jump to content

Алгоритм приведения решеточного базиса Ленстры – Ленстры – Ловаса

(Перенаправлено из алгоритма LLL )

Алгоритм Ленстра-Ленстра-Ловаса ( LLL ) сокращения базиса решетки — это с полиномиальным временем, сокращения решетки алгоритм изобретенный Арьеном Ленстра , Хендриком Ленстрой и Ласло Ловасом в 1982 году. [1] Учитывая основу с n -мерными целочисленными координатами для решетки L (дискретной подгруппы R н ) с , алгоритм LLL вычисляет LLL-сокращенный (короткий, почти ортогональный ) базис решетки во времени где это наибольшая длина по евклидовой норме , то есть . [2] [3]

Первоначальные приложения должны были предоставить алгоритмы с полиномиальным временем для факторизации многочленов с рациональными коэффициентами , для поиска одновременных рациональных приближений к действительным числам и для решения задачи целочисленного линейного программирования в фиксированных размерностях.

Снижение LLL

[ редактировать ]

Точное определение LLL-reduced следующее: Учитывая основу определить его процесса Грама – Шмидта ортогональный базис и коэффициенты Грамма-Шмидта для любого .

Тогда основа является LLL-редуцируемым, если существует параметр в (0.25, 1] ​​такой, что выполнено следующее:

  1. (уменьшенного размера) . По определению это свойство гарантирует сокращение длины упорядоченного базиса.
  2. (условие коня) Для k = 2,3,..,n .

Здесь, оценивая стоимость параметра, можно сделать вывод, насколько хорошо сокращается базис. Большие значения приводят к более сильному сокращению базиса. Первоначально А. Ленстра, Х. Ленстра и Л. Ловас продемонстрировали алгоритм LLL-редукции для . Обратите внимание, что хотя LLL-редукция четко определена для полиномиальная сложность гарантирована только для в .

Алгоритм LLL вычисляет основания, уменьшенные с помощью LLL. Не существует известного эффективного алгоритма вычисления базиса, в котором базисные векторы были бы максимально короткими для решеток размерностей больше 4. [4] Однако базис, сокращенный с помощью LLL, почти настолько короток, насколько это возможно, в том смысле, что существуют абсолютные границы. такой, что первый базисный вектор не более раз длиннее кратчайшего вектора в решетке, второй базисный вектор также находится в пределах второго последовательного минимума и так далее.

Приложения

[ редактировать ]

Первым успешным применением алгоритма LLL было его использование Эндрю Одлыжко и Германом те Риле для опровержения гипотезы Мертенса . [5]

Алгоритм LLL нашел множество других применений в MIMO . алгоритмах обнаружения [6] и криптоанализ схем шифрования с открытым ключом : ранцевые криптосистемы , RSA с определенными настройками, NTRUEncrypt и т.д. Алгоритм можно использовать для поиска целочисленных решений многих задач. [7]

В частности, алгоритм LLL образует ядро ​​одного из алгоритмов целочисленных отношений . Например, если считается, что r = 1,618034 является (слегка округленным) корнем неизвестного квадратного уравнения с целыми коэффициентами, можно применить сокращение LLL к решетке в охватываемый и . Первый вектор в сокращенном базисе будет целочисленной линейной комбинацией этих трех, поэтому обязательно имеет вид ; но такой вектор «короток» только в том случае, если a , b , c малы и еще меньше. Таким образом, первые три элемента этого короткого вектора, скорее всего, будут коэффициентами целого квадратичного многочлена которого является r , корнем . В этом примере алгоритм LLL находит кратчайший вектор [1, -1, -1, 0,00025] и действительно имеет корень, равный золотому сечению , 1,6180339887....

Свойства LLL-редуцированного базиса

[ редактировать ]

Позволять быть -LLL-приведенный базис решетки . Из определения LLL-редуцированного базиса мы можем вывести несколько других полезных свойств .

  1. Первый вектор в базисе не может быть намного больше самого короткого ненулевого вектора : . В частности, для , это дает . [8]
  2. Первый вектор базиса также ограничен определителем решетки: . В частности, для , это дает .
  3. Произведение норм векторов базиса не может быть много больше определителя решетки: пусть , затем .

Псевдокод алгоритма LLL

[ редактировать ]

Следующее описание основано на ( Hoffstein, Pipher & Silverman 2008 , теорема 6.68) с исправлениями опечаток. [9]

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,jbj;
               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

[ редактировать ]

Пусть решетчатый базис , задается столбцами тогда приведенный базис который уменьшен по размеру, удовлетворяет условию Ловаса и, следовательно, уменьшен по LLL, как описано выше. См. В. Босма. [10] для получения подробной информации о процессе сокращения.

Пример из Z[ i ] 4

[ редактировать ]

Аналогично, для базиса комплексных целых чисел, заданных столбцами приведенной ниже матрицы, тогда столбцы приведенной ниже матрицы дают базис, уменьшенный с помощью LLL.

Реализации

[ редактировать ]

LLL реализован в

См. также

[ редактировать ]

Примечания

[ редактировать ]
  1. ^ Ленстра, АК ; Ленстра, Х.В. младший ; Ловас, Л. (1982). «Факторизация полиномов с рациональными коэффициентами». Математические Аннален . 261 (4): 515–534. CiteSeerX   10.1.1.310.318 . дои : 10.1007/BF01457454 . HDL : 1887/3810 . МР   0682664 . S2CID   5701340 .
  2. ^ Гэлбрейт, Стивен (2012). «глава 17» . Математика криптографии с открытым ключом .
  3. ^ Нгуен, Фонг К.; Стеле, Дэмиен (сентябрь 2009 г.). «Алгоритм LLL с квадратичной сложностью» . СИАМ Дж. Компьютер . 39 (3): 874–903. дои : 10.1137/070705702 . Проверено 3 июня 2019 г.
  4. ^ Нгуен, Фонг К.; Стеле, Дэмиен (1 октября 2009 г.). «Повторное рассмотрение редукции низкоразмерного базиса решетки». Транзакции ACM на алгоритмах . 5 (4): 1–48. дои : 10.1145/1597036.1597050 . S2CID   10583820 .
  5. ^ Одлизко, Андрей; те Рейле, Герман Дж. Дж. «Опровержение гипотезы Мертенса» (PDF) . Журнал чистой и прикладной математики . 357 : 138–160. дои : 10.1515/crll.1985.357.138 . S2CID   13016831 . Проверено 27 января 2020 г.
  6. ^ Д. Вюббен и др., «Сокращение решетки», Журнал IEEE Signal Processing Magazine, Vol. 28, № 3, стр. 70–91, апрель 2011 г.
  7. ^ Д. Саймон (2007). «Избранные приложения LLL в теории чисел» (PDF) . Конференция LLL+25 . Кан, Франция.
  8. ^ Регев, Одед. «Решетки в информатике: алгоритм LLL» (PDF) . Нью-Йоркский университет . Проверено 1 февраля 2019 г.
  9. ^ Сильверман, Джозеф. «Введение в ошибки математической криптографии» (PDF) . Математический факультет Университета Брауна . Проверено 5 мая 2015 г.
  10. ^ Босма, Виб. «4. ЛЛЛ» (PDF) . Конспекты лекций . Проверено 28 февраля 2010 г.
  11. ^ Дивасон, Хосе (2018). «Формализация алгоритма приведения базиса LLL» . Документ конференции . Конспекты лекций по информатике. 10895 : 160–177. дои : 10.1007/978-3-319-94821-8_10 . ISBN  978-3-319-94820-1 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 104efb04a04edb9c7039a609769be7b2__1712061720
URL1:https://arc.ask3.ru/arc/aa/10/b2/104efb04a04edb9c7039a609769be7b2.html
Заголовок, (Title) документа по адресу, URL1:
Lenstra–Lenstra–Lovász lattice basis reduction algorithm - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)