Jump to content

Сито с полем специального номера

В теории чисел , разделе математики , решето специального числового поля (SNFS) представляет собой специальный алгоритм факторизации целых чисел . На его основе было получено решето общего числового поля (GNFS).

Специальное решето числового поля эффективно для целых чисел вида r и ± s , где r и s малы (например, числа Мерсенна ).

Эвристически , его сложность при факторизации целого числа имеет вид: [1]

в O и L-нотациях .

SNFS широко использовался NFSNet (волонтерской организацией распределенных вычислений ), NFS@Home и другими для факторизации чисел проекта Каннингема ; в течение некоторого времени записями для факторизации целых чисел были числа, факторизованные SNFS.

Обзор метода [ править ]

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

СНФС работает следующим образом. Пусть n — целое число, которое мы хотим факторизовать. Как и в рациональном сите , SNFS можно разбить на два этапа:

  • Сначала найдите большое количество мультипликативных отношений среди факторной базы элементов Z / n Z , такое, что количество мультипликативных отношений больше, чем количество элементов в факторной базе.
  • Во-вторых, перемножьте подмножества этих отношений так, чтобы все показатели степени были четными, в результате чего получились сравнения вида a 2 b 2 ( мод н ). Это, в свою очередь, немедленно приводит к факторизации n : n = НОД ( a + b , n ) × НОД( a - b , n ). Если все сделано правильно, почти наверняка по крайней мере одна такая факторизация будет нетривиальной.

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

Подробности метода [ править ]

Пусть n — целое число, которое мы хотим факторизовать. Мы выбираем неприводимый многочлен f с целыми коэффициентами и целое число m такое, что f ( m )≡0 ( mod n ) (мы объясним, как они выбираются в следующем разделе). Пусть α корень f ; тогда мы сможем образовать кольцо Z [α]. Существует единственный гомоморфизм колец φ из Z [ α ] в Z /n Z , который отображает α в m . Для простоты предположим, что Z [ α ] — уникальная область факторизации ; алгоритм можно модифицировать, чтобы он работал, когда это не так, но тогда возникают некоторые дополнительные сложности.

Далее мы создаем две параллельные факторные базы : одну в Z [ α ] и одну Z. в Один из Z [ α ] состоит из всех простых идеалов из Z [ α ], норма которых ограничена выбранным значением. . Факторная база в Z , как и в случае рационального решета, состоит из всех простых целых чисел с точностью до некоторой другой границы.

Затем мы ищем относительно простые пары целых чисел ( a , b ) такие, что:

  • a + bm является гладким относительно факторной базы в Z (т. е. является произведением элементов факторной базы).
  • a + является гладким относительно факторбазы в Z [ α ]; учитывая, как мы выбрали факторную базу, это эквивалентно тому, что норма a + делится только на простые числа, меньшие .

Эти пары обнаруживаются посредством процесса просеивания, аналогичного сито Эратосфена ; это объясняет название «Сито числового поля».

Для каждой такой пары мы можем применить кольцевой гомоморфизм φ к факторизации a + , и мы можем применить канонический гомоморфизм колец из Z в Z /n Z к факторизации a + bm . Установка этих равных дает мультипликативное отношение между элементами большей факторной базы в Z /n Z , и если мы найдем достаточно пар, мы сможем приступить к объединению отношений и фактора n , как описано выше.

Выбор параметров [ править ]

Не каждое число является подходящим выбором для SNFS: нужно заранее знать многочлен f соответствующей степени (оптимальная степень предполагается равной , что равно 4, 5 или 6 для размеров N, которые в настоящее время возможно факторизовать) с небольшими коэффициентами и значением x таким, что где N — число, которое нужно факторизовать. Существует дополнительное условие: x должно удовлетворять для a и b не больше, чем .

Одним из наборов чисел, для которых существуют такие полиномы, являются цифры из таблиц Каннингема ; например, когда NFSNET учитывает , они использовали полином с , с , и .

Числа, определяемые линейными рекуррентами, такие как числа Фибоначчи и Люка , также имеют полиномы SNFS, но их немного сложнее построить. Например, имеет полином , а значение x удовлетворяет . [2]

Если уже известны некоторые факторы большого числа, совместимые с SNFS, то можно выполнить расчет SNFS по модулю оставшейся части; для примера NFSNET выше, умножить на 197-значное составное число (малые множители были найдены с помощью ECM ), и SNFS была выполнена по модулю 197-значного числа. Количество связей, требуемых SNFS, по-прежнему зависит от размера большого числа, но отдельные вычисления выполняются быстрее по модулю меньшего числа.

Ограничения алгоритма [ править ]

Этот алгоритм, как уже говорилось выше, очень эффективен для чисел вида r и ± s для r и s относительно малых. Он также эффективен для любых целых чисел, которые можно представить в виде многочлена с небольшими коэффициентами. Сюда входят целые числа более общего вида ar и ± bs ж , а также для многих целых чисел, двоичное представление которых имеет низкий вес Хэмминга. Причина этого в следующем: Сито числового поля выполняет просеивание в двух разных полях.Первое поле обычно является рациональным. Второе – это область более высокой степени. Эффективность алгоритма сильно зависит от норм тех или иных элементов в этих полях. Когда целое число можно представить в виде многочлена с малыми коэффициентами, возникающие нормы намного меньше, чем те, которые возникают, когда целое число представляется многочленом общего назначения. Причина в том, что общий полином будет иметь гораздо большие коэффициенты, и нормы соответственно будут больше. Алгоритм пытается факторизовать эти нормы по фиксированному набору простых чисел. Когданормы меньше, эти цифры с большей вероятностью будут учитываться.

См. также [ править ]

Ссылки [ править ]

  1. ^ Померанс, Карл (декабрь 1996 г.), «Повесть о двух решетах» (PDF) , Уведомления AMS , том. 43, нет. 12, стр. 1473–1485.
  2. ^ Франке, Йенс. «Примечания по установке ggnfs-lasieve4» . Массачусетский технологический институт Массачусетского технологического института.

Дальнейшее чтение [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 9f7de3f9a1708159f6d26a6cd9f7c3d2__1710091860
URL1:https://arc.ask3.ru/arc/aa/9f/d2/9f7de3f9a1708159f6d26a6cd9f7c3d2.html
Заголовок, (Title) документа по адресу, URL1:
Special number field sieve - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)