вести с алгоритмического фронта (primality testing in P)
Кажется, горячие индийские парни придумали полиномиальный алгоритм проверки числа на простоту. (ссылка на дискуссию в Слешдоте).
До сих пор был известен только полиномиально-вероятностный алгоритм проверки числа на простоту -- если он говорил, что число простое, то ошибался с некоторой вероятностью. Но его можно было повторять неограниченное кол-во раз, снижая эту вероятность ошибки до сколь угодно малого значения. Таким образом, с практической точки зрения уже существовал полиноминальный алгоритм проверки, и им сплошь и рядом пользуются. Но с теоретической точки зрения, это довольно интересное достижение. Многие думали, что это просто неверно, что существует такой алгоритм.
Забавно то, что, кажется, этот новый алгоритм использует очень простую арифметику, ничего продвинутого.
french_man, если тебе это интересно, посмотри и расскажи свои впечатления. У меня сейчас совсем нет возможности заниматься внимательным вчитыванием и проверкой, увы.
Примечание: "полиномиальный" алгоритм здесь означает "полиномиальный от размера данных". Т.е. полиномиальная проверка того, является ли простым число N, должна занимать время, ограниченное полиномиалом от log(N) -- размера двоичного представления N. Предлагаемый в этой статье алгоритм работает за время O(log(N)12).
Не стоит путать этот алгоритм с алгоритмом разложения числа на множители - такого полиномиального алгоритма пока ещё никто не придумал, и скорее всего его не существует, хотя и этого не могут доказать. Открытие такого алгоритма было бы катастрофическим для немалой части современной криптографии.
До сих пор был известен только полиномиально-вероятностный алгоритм проверки числа на простоту -- если он говорил, что число простое, то ошибался с некоторой вероятностью. Но его можно было повторять неограниченное кол-во раз, снижая эту вероятность ошибки до сколь угодно малого значения. Таким образом, с практической точки зрения уже существовал полиноминальный алгоритм проверки, и им сплошь и рядом пользуются. Но с теоретической точки зрения, это довольно интересное достижение. Многие думали, что это просто неверно, что существует такой алгоритм.
Забавно то, что, кажется, этот новый алгоритм использует очень простую арифметику, ничего продвинутого.
Примечание: "полиномиальный" алгоритм здесь означает "полиномиальный от размера данных". Т.е. полиномиальная проверка того, является ли простым число N, должна занимать время, ограниченное полиномиалом от log(N) -- размера двоичного представления N. Предлагаемый в этой статье алгоритм работает за время O(log(N)12).
Не стоит путать этот алгоритм с алгоритмом разложения числа на множители - такого полиномиального алгоритма пока ещё никто не придумал, и скорее всего его не существует, хотя и этого не могут доказать. Открытие такого алгоритма было бы катастрофическим для немалой части современной криптографии.
no subject
no subject
Я послал ссылку Амиту Сахаю в Принстон, но думаю, что он об этом уже слышал.
no subject
В любом случае не удивлюсь, если все будут продолжать использовать тест Рабина-Миллера, как и раньше. Нечто похожее случилось с линейным программированием и симплексным алгоритмом (к-м все пользуются, хотя он не полиномиальный в worst-case и хотя уже довольно давно нашли полиномиальный алгоритм с большой степенью).
no subject
(Anonymous) 2002-08-07 07:02 am (UTC)(link)какой именно?
no subject
no subject
(Anonymous) 2002-08-07 07:37 am (UTC)(link)http://www-fp.mcs.anl.gov/otc/Guide/OptWeb/continuous/constrained/linearprog/section2_1_2.html
no subject
Re:
Re:
Re:
Ой, простите!
:-)
Re: Ой, простите!
no subject
математика
(Anonymous) 2002-08-15 01:58 pm (UTC)(link)Re: математика
Re: математика
(Anonymous) 2002-08-15 03:15 pm (UTC)(link)Re: математика
Если алгоритм индусов говорит, что число простое - оно действительно простое. В этом состоит отличие этого алгоритма от популярного алгоритма Рабина-Миллера, который утверждал это лишь с определенной вероятностью. Вероятность можно было довести как угодно близно до единицы, но время работы алгоритма при этом увеличивалось. В алгоритме индусов нет никаких вероятностей.
На пальцах объяснять я не берусь. Может, кто-то еще попробует.
Re: математика
(Anonymous) 2002-08-15 03:38 pm (UTC)(link)Re: математика
Re: математика
(Anonymous) 2002-08-15 03:46 pm (UTC)(link)И еще...вот эти индусы..они что - просто написали всем письма с решением и параллельно выложили свое решение на сайте и тем самым защитили себя?А вдруг кто0-то скажет что раньше сделал?НЕужели так просто они пошли на риск?Вот какой поток вопросов.
no subject
(Anonymous) 2002-08-15 04:10 pm (UTC)(link)Re:
no subject
(Anonymous) 2002-08-16 12:05 pm (UTC)(link)