-метод Уильямса — метод факторизации чисел с помощью последовательностейчисел Люка, разработанный Хью Уильямсом в 1982 году. Алгоритм находит простой делитель числа . Аналогичен -методу Полларда, но использует разложение на множители числа . Имеет хорошие показатели скорости подсчёта только в случае, когда легко факторизуется. Как правило, на практике реализуется не часто из-за невысокого процента подобных случаев[1].
И, следовательно, НОД то есть найден делитель искомого числа [1].
Стоит обратить внимание, что числа не известны на начальном этапе задачи. Поэтому для упрощения задачи сделаем следующее: так как то по свойству (2) Далее воспользуемся свойством (6) и получим:
Таким образом, мы без потери общности можем утверждать, что [1]
Далее пользуемся теоремой из которой делаем вывод, что
2) вводим последовательность натуральных чисел . При этом ;
3) ищем пары значений по следующему правилу:
при этом
4) значения ищутся по правилам (которые следуют из свойств и определения последовательности чисел Люка):
.
Для значений, введённых по умолчанию, то есть получаем результат:
374468
Делаем проверку этого значения. Для этого считаем НОД НОД и .
Если мы в первом шаге неудачно выбрали числа , то есть получилось так, что НОД, то тогда нужно переходить ко второму шагу. Иначе — работа завершена[1].
Второй шаг алгоритма
Пусть число имеет некоторый простой делитель, больший чем , но меньший некоторого , то есть:
, где
Вводим последовательность простых чисел .
Вводим ещё одну последовательность:
Далее определяем:
.
Используя свойство , получаем первые элементы:
.
Далее используем свойство и получаем:
.
Таким образом, мы вычисляем
Далее считаем:
НОД для
Как только получаем , то прекращаем вычисления[1].
Для значений, введённых по умолчанию, то есть получаем результат:
139,
что является верным ответом.
Сравнение скорости работы
Автором данного метода были проведены тесты и методов на машине AMDAHL 470-V7 на 497 различных числах, которые показали, что в среднем первый шаг алгоритма работает примерно в 2 раза медленнее первого шага алгоритма , а второй шаг — примерно в 4 раза медленнее[1].
Применение
В связи с тем, что -метод факторизации работает быстрее, -метод применяется на практике очень редко[1].
Рекорды
На данный момент (27.09.2023) три самых больших простых делителя[3], найденных методом , состоят из 60, 55 и 53 десятичных цифр.
Williams H. C.A p+1 method of factoring (англ.) = A p+1 method of factoring // American Mathematical Society. — 1982. — Т. 39, вып. 159. — С. 225—234. — ISSN00255718.
D. H. Lehmer. An extended theory of Lucas' functions (англ.) = An extended theory of Lucas' functions // Ann. of Math.. — 1930. — Т. 31, вып. 2. — С. 419—448.
Факториза́цией натурального числа называется его разложение в произведение простых множителей. Существование и единственность такого разложения следует из основной теоремы арифметики.
Кватернио́ны — система гиперкомплексных чисел, образующая векторное пространство размерностью четыре над полем вещественных чисел. Обычно обозначаются символом . Предложены Уильямом Гамильтоном в 1843 году.
Сравне́ние двух целых чисел по мо́дулю натурального числа — математическая операция, позволяющая ответить на вопрос о том, дают ли два выбранных целых числа при делении на один и тот же остаток. Любое целое число при делении на даёт один из возможных остатков: число от 0 до ; это значит, что все целые числа можно разделить на групп, каждая из которых отвечает определённому остатку от деления на . Эти группы называются классами вычетов по модулю , а содержащиеся в них целые числа — вычетами по модулю .
Те́ст Люка́ — Ле́мера — полиномиальный, детерминированный и безусловный тест простоты для чисел Мерсенна. Сформулирован Эдуардом Люка в 1878 году и доказан Лемером в 1930 году.
Умноже́ние — одна из основных математических операций над двумя аргументами, которые называются множителями или сомножителями. Результат умножения называется их произведением.
В квантовой механике задача о части́це в одноме́рном периоди́ческом потенциа́ле — идеализированная задача, которая может быть решена аналитически, без упрощений. При решении предполагается, что функция потенциала задана на всем бесконечном пространстве и периодична, то есть обладает трансляционной симметрией, что, вообще говоря, не выполняется для реальных кристаллов, где всегда существует как минимум один дефект — поверхность кристалла.
Краевая задача — задача о нахождении решения заданного дифференциального уравнения, удовлетворяющего краевым (граничным) условиям в концах интервала или на границе области. Краевые задачи для гиперболических и параболических уравнений часто называют начально-краевыми или смешанными, потому что в них задаются не только граничные, но и начальные условия.
Китайская теорема об остатках — несколько связанных утверждений о решении линейной системы сравнений.
Фу́нкция Гри́на — функция, используемая для решения линейных неоднородных дифференциальных уравнений с граничными условиями . Названа в честь английского математика Джорджа Грина, который первым развил соответствующую теорию в 1830-е годы.
Алгоритм Адлемана — первый субэкспоненциальный алгоритм дискретного логарифмирования в кольце вычетов по модулю простого числа. Алгоритм был предложен Леонардом Максом Адлеманом в 1979 году. Леонард Макс Адлеман — американский учёный-теоретик в области компьютерных наук, профессор компьютерных наук и молекулярной биологии в Университете Южной Калифорнии. Он известен как соавтор системы шифрования RSA и ДНК-вычислений. RSA широко используется в приложениях компьютерной безопасности, включая протокол HTTPS.
Коды Боуза — Чоудхури — Хоквингема, сокращённо БЧХ-коды — в теории кодирования это широкий класс циклических кодов, применяемых для защиты информации от ошибок. Отличается возможностью построения кода с заранее определёнными корректирующими свойствами, а именно, минимальным кодовым расстоянием. Частным случаем БЧХ-кодов является код Рида — Соломона.
Точное нахождение первообразной произвольных функций — процедура более сложная, чем «дифференцирование», то есть нахождение производной. Зачастую, выразить интеграл в элементарных функциях невозможно.
Длинная арифметика — выполняемые с помощью вычислительной машины арифметические операции над числами, разрядность которых превышает длину машинного слова данной вычислительной машины. Эти операции реализуются не аппаратно, а программно, с использованием базовых аппаратных средств работы с числами меньших порядков. Частный случай — арифметика произвольной точности — относится к арифметике, в которой длина чисел ограничена только объёмом доступной памяти.
Схема Миньотта — пороговая схема разделения секрета, построенная с использованием простых чисел. Позволяет разделить секрет (число) между сторонами таким образом, что его смогут восстановить любые участников, но участников восстановить секрет уже не смогут. Схема основана на китайской теореме об остатках.
Алгоритм Берлекэмпа — алгоритм, предназначенный для факторизации унитарных многочленов над конечным полем. Разработан Элвином Берлекэмпом в 1967 году. Может использоваться также для проверки неприводимости многочленов над конечными полями. Основная идея алгоритма заключается в возможности представления исходного многочлена в виде произведения наибольших общих делителей самого многочлена и некоторых многочленов, которые с точностью до свободного члена являются -разлагающими.
В теории чисел факторизация методом непрерывных дробей (CFRAC) — это алгоритм разложения целых чисел на простые множители. Это алгоритм общего вида, пригодный для факторизации произвольного целого .
LUC — криптосистема с открытым ключом, разработанная исследователем из Новой Зеландии — Питером Смитом. Так же как RSA, эта система поддерживает шифрование и цифровую подпись. Отличительной чертой системы является использование последовательностей Люка(Lucas) вместо возведения в степень.
Тест Адлемана-Померанса-Румели — наиболее эффективный, детерминированный и безусловный на сегодняшний день тест простоты чисел, разработанный в 1983 году. Назван в честь его исследователей — Леонарда Адлемана, Карла Померанса и Роберта Румели. Алгоритм содержит арифметику в цикломатических полях.
XTR — алгоритм шифрования с открытым ключом, основывающийся на вычислительной сложности задачи дискретного логарифмирования. Преимущества этого алгоритма перед другими, использующими эту идею, в более высокой скорости и меньшем размере ключа.
Алгори́тм Тоне́лли — Ше́нкса относится к модулярной арифметике и используется для решения сравнения
Эта страница основана на статье Википедии. Текст доступен на условиях лицензии CC BY-SA 4.0; могут применяться дополнительные условия. Изображения, видео и звуки доступны по их собственным лицензиям.