Liczby pierwsze o określonej liczbie bitów

0

Witam, istnieje jakaś funkcja która sprawnie w sposób losowy wyznaczy mi liczbę pierwszą o długości co najmniej 1000 bitów?

0

Wybierasz losową liczbę o długości co najmniej 1000 bitów, wykonujesz http://en.wikipedia.org/wiki/Miller%E2%80%93Rabin_primality_test, powtarzasz aż znajdziesz. To taki dość klasyczny sposób (ofc miller-rabina możesz zamienić na coś innego zawsze).

Jako że \lim_{x \to \inf} \frac{\pi(x)}{x / \ln(x)} = 1, (gdzie Pi(x) to ilość liczb pierwszych poniżej x), masz spore szanse że szybko trafisz na jakąś liczbę pierwszą.

Ściślej, jeśli wybierzesz liczbę pierwszą z przedziału (1, 21000), szansa na to że będzie pierwsza wynosi blisko \frac{1}{ln(2</sup>{1000})} = 0.00144269. Po wybraniu 2000 (zaszalejemy) takich liczb, szansa na to że żadna z nich nie będzie pierwsza, wynosi (1-p)^{2000} = około 0.055716, czyli 5%.

1 użytkowników online, w tym zalogowanych: 0, gości: 1