случайным образом 512-битное целое число N, не кратное 2, 3 или 5 - PullRequest
3 голосов
/ 10 марта 2011

если вы выбираете случайное 512-битное целое число N, которое не кратно 2, 3 или 5я не знаю алгоритм, стоящий за этим ... я пытаюсь работать над проектом, но это отправная точка ..:)

Ответы [ 4 ]

5 голосов
/ 10 марта 2011

Число простых чисел меньше n = 2 512 составляет приблизительно n / log (n). Число рассматриваемых вами чисел равно 4/15 * n, поэтому вероятность, которую вы ищете, равна 15 / (4 * log (n)), что составляет около 1%.

3 голосов
/ 11 марта 2011

Границы вероятности

Вы можете использовать следующее неравенство для функции простого числа :

enter image description here

(Где берется журнал в базе e )

Итак:

8,58774 * 10 151 <& pi; (2 <sup>512 ) <8,93096 * 10 <sup>151

И поскольку вы оставляете в живых только 4/15 n чисел (из-за убийства он умножается на 2, 3 и 5), вероятность ограничена:

8,58774 * 10 151 / (4/15 2 512 )

151 / (4/15 2 512 )

Или:

0,010507 Какая хорошая, довольно тесная связь.

1 голос
/ 10 марта 2011

Это звучит по-домашнему, поэтому я предлагаю вам сгенерировать 512-битные числа и использовать некоторые хорошо известные простые тесты для получения приблизительного ответа в эвристическом порядке.

1 голос
/ 10 марта 2011

Хотите точный ответ или приближение? Для приближения вы можете использовать теорему простого числа или функцию подсчета простых чисел .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...