avva: (Default)
[personal profile] avva
Кажется, горячие индийские парни придумали полиномиальный алгоритм проверки числа на простоту. (ссылка на дискуссию в Слешдоте).


До сих пор был известен только полиномиально-вероятностный алгоритм проверки числа на простоту -- если он говорил, что число простое, то ошибался с некоторой вероятностью. Но его можно было повторять неограниченное кол-во раз, снижая эту вероятность ошибки до сколь угодно малого значения. Таким образом, с практической точки зрения уже существовал полиноминальный алгоритм проверки, и им сплошь и рядом пользуются. Но с теоретической точки зрения, это довольно интересное достижение. Многие думали, что это просто неверно, что существует такой алгоритм.

Забавно то, что, кажется, этот новый алгоритм использует очень простую арифметику, ничего продвинутого. [livejournal.com profile] french_man, если тебе это интересно, посмотри и расскажи свои впечатления. У меня сейчас совсем нет возможности заниматься внимательным вчитыванием и проверкой, увы.

Примечание: "полиномиальный" алгоритм здесь означает "полиномиальный от размера данных". Т.е. полиномиальная проверка того, является ли простым число N, должна занимать время, ограниченное полиномиалом от log(N) -- размера двоичного представления N. Предлагаемый в этой статье алгоритм работает за время O(log(N)12).

Не стоит путать этот алгоритм с алгоритмом разложения числа на множители - такого полиномиального алгоритма пока ещё никто не придумал, и скорее всего его не существует, хотя и этого не могут доказать. Открытие такого алгоритма было бы катастрофическим для немалой части современной криптографии.

Date: 2002-08-07 06:50 am (UTC)
stas: (Default)
From: [personal profile] stas
Насколько я понимаю, практическая ценность этого алгоритма вызывает сомнения - из-за полиномиального коэеффициента - 12 степень. Это значит, что если я могу проверять 16-битовые числа за 1 микросекунду, то для одного 256-битового числа мне понадобится 3 дня работы. Что несколько непрактично, учитывая, что тот же тест Рабина-Миллера, насколько я знаю, делает на много порядков быстрее.

Date: 2002-08-07 06:54 am (UTC)
From: [identity profile] ex-ilyavinar899.livejournal.com
Там говорится, что для большинства простых чисел этот тест занимает Ō(n6).

Я послал ссылку Амиту Сахаю в Принстон, но думаю, что он об этом уже слышал.

Date: 2002-08-07 06:57 am (UTC)
From: [identity profile] avva.livejournal.com
Ну, как я и написал, практическая ценность невелика. То, что O(log(n)^12), как раз не так важно, поскольку это worst case.

В любом случае не удивлюсь, если все будут продолжать использовать тест Рабина-Миллера, как и раньше. Нечто похожее случилось с линейным программированием и симплексным алгоритмом (к-м все пользуются, хотя он не полиномиальный в worst-case и хотя уже довольно давно нашли полиномиальный алгоритм с большой степенью).

Date: 2002-08-07 07:02 am (UTC)
From: (Anonymous)
>давно нашли полиномиальный алгоритм с большой степенью

какой именно?

Date: 2002-08-07 07:24 am (UTC)
From: [identity profile] avva.livejournal.com
Пятой, плюс всякие неприятные коэффициэнты, если я правильно помню. Короче говоря, он был непрактичным. Потом в 80-х нашли алгоритм получше... тут я уже подробностей не знаю, но по-моему до сих пор пользуются в основном симплексным.

Date: 2002-08-07 07:37 am (UTC)
From: (Anonymous)
в общих случаях изпользуют interior point method

http://www-fp.mcs.anl.gov/otc/Guide/OptWeb/continuous/constrained/linearprog/section2_1_2.html

Date: 2002-08-07 08:50 am (UTC)
From: [identity profile] ex-ilyavinar899.livejournal.com
Насколько я знаю, interior-point алгоритмы типа Кармакара тоже повсеместно используются. Кроме того, доказано, что рандомизированный симплекс полиномиален.

[livejournal.com profile] mkay422 больше знает о применении различных алгоритмов математического программирования на Уолл Стрит.

Re:

Date: 2002-08-07 09:11 am (UTC)
From: [identity profile] avva.livejournal.com
Рандомизированный симплекс, наверное, полиномиален радндомизированно всё-таки, а не детерминированно?

Re:

Date: 2002-08-07 09:39 am (UTC)
From: [identity profile] avva.livejournal.com
Ну так это not one and that same, как говорится.

Ой, простите!

Date: 2002-08-08 12:57 am (UTC)
From: [identity profile] lr33.livejournal.com
А можно я эту фразу в memories занесу?
:-)

Re: Ой, простите!

Date: 2002-08-08 01:00 am (UTC)
From: [identity profile] avva.livejournal.com
Запросто ;)

December 2025

S M T W T F S
  123 4 56
78 9 10 11 1213
1415 1617181920
21 22 23 24 2526 27
28293031   

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Dec. 29th, 2025 12:06 am
Powered by Dreamwidth Studios