Jump to content

Алгоритм Кунерта

Алгоритм Кунерта — это алгоритм вычисления модульного квадратного корня заданного числа. [ 1 ] [ 2 ] Алгоритм не требует факторизации модуля и основан на модульных операциях, которые часто просты, когда данное число является простым.

Алгоритм

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

Чтобы найти y по заданному значению

он предпринимает следующие шаги:

  1. найти модульный квадратный корень из . Этот шаг довольно прост, независимо от того, насколько велико N , когда является простым числом.
  2. решить квадратное уравнение, связанное с модульным квадратным корнем из . В большинстве примеров Кунерта в его оригинальной статье это уравнение решается, если C представляет собой целочисленный квадрат и, таким образом, устанавливает z равным нулю.
    Разложите следующее уравнение, чтобы получить квадратичное уравнение
    Всегда можно убедиться, что квадратичное уравнение можно решить, изменив модуль N в приведенном выше уравнении. Таким образом
    обеспечит квадратичное значение .
    Затем можно отрегулировать F, чтобы убедиться, что представляет собой квадрат. Для больших модулей, таких как , можно быстро вычислить квадратные корни с помощью этого метода.
    Параметры полиномиального разложения достаточно гибки, поскольку можно сделать, например. Довольно легко выбрать X и Y так, что представляет собой квадрат. Модульный квадратный корень из можно принять таким образом.
  3. Решив соответствующее квадратное уравнение, мы теперь имеем переменные w и полагаем v = r (если C в квадратном уравнении является натуральным квадратом).
  4. Решить переменные и следующее уравнение:
  5. Получите значение X посредством факторизации следующего полинома:
    получить ответ типа
  6. Получите модульный квадратный корень с помощью уравнения. Не забудьте установить X так, чтобы указанный выше член был равен нулю. Таким образом, X будет 37/9 или -1/25.

Чтобы получить сначала получить .

Затем разложим полином:

в

Поскольку в данном случае терм C представляет собой квадрат, возьмем и вычислить (в общем, ).

Решите для и следующее уравнение
получение решения и . (Могут существовать и другие пары решений этого уравнения.)
Затем факторизуйте следующий полином:
получение
Затем получите модульный квадратный корень через
Убедитесь, что

В случае, если не имеет ответа, тогда вместо этого можно использовать.

См. также

[ редактировать ]
  1. ^ Адольф Кунерт, «Отчеты о собраниях. Academie Der Wissenschaften», том 78 (2), 1878, стр. 327–338 (для алгоритма квадратного уравнения), стр. 338–346 (для модульного квадратичного алгоритма), доступно в Библиотеке Эрнеста Майра, Гарвард Университет
  2. ^ Леонард Юджин Диксон, «История чисел», том 2, стр. 382–384.
  • Адольф Кунерт, «Отчеты о заседаниях Академии наук», том 75, II, 1877, стр. 7–58.
  • Адольф Кунерт, «Отчеты о заседаниях Академии наук», том 82, II, 1880, стр. 342–375.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: c710afdf146e92611a07a7db7945d4cc__1709847600
URL1:https://arc.ask3.ru/arc/aa/c7/cc/c710afdf146e92611a07a7db7945d4cc.html
Заголовок, (Title) документа по адресу, URL1:
Kunerth's algorithm - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)