Przejdź do treści

Twierdzenie Euklidesa: liczb pierwszych jest nieskończenie wiele

Twierdzenie Euklidesa

Liczb pierwszych jest nieskończenie wiele. Kluczowy krok dowodu: dla dowolnego skończonego zbioru liczb pierwszych p1,p2,…,pkp_1, p_2, \ldots, p_k rozważamy liczbę

N=p1⋅p2⋅…⋅pk+1,N = p_1 \cdot p_2 \cdot \ldots \cdot p_k + 1,

która przy dzieleniu przez każdą z liczb pip_i daje resztę 11.

Co mówi twierdzenie

Liczba pierwsza to liczba naturalna większa od 11, która dzieli się tylko przez 11 i przez samą siebie: 2,3,5,7,11,13,…2, 3, 5, 7, 11, 13, \ldots Twierdzenie Euklidesa mówi, że ten ciąg nigdy się nie kończy - nie istnieje „największa liczba pierwsza”.

To nie jest oczywiste. Liczby pierwsze robią się coraz rzadsze: wśród pierwszych dziesięciu liczb naturalnych są cztery pierwsze, wśród pierwszych stu - dwadzieścia pięć, wśród pierwszych miliona - około 7878 tysięcy. Gdyby ta gęstość spadała odpowiednio szybko, liczby pierwsze mogłyby się w pewnym momencie skończyć. Euklides pokazał, że tak się nie stanie.

Dowód

Pokaż dowódUkryj dowód

Krok 1. Zakładamy nie wprost, że liczb pierwszych jest skończenie wiele. Można je wtedy wypisać wszystkie:

p1, p2, …, pk.p_1, \ p_2, \ \ldots, \ p_k.

Krok 2. Budujemy nową liczbę. Mnożymy je wszystkie i dodajemy jeden:

N=p1⋅p2⋅…⋅pk+1.N = p_1 \cdot p_2 \cdot \ldots \cdot p_k + 1.

Krok 3. Zauważamy, że N>1N > 1. Iloczyn liczb pierwszych jest co najmniej 22, więc N≥3N \geq 3.

Krok 4. Każda liczba większa od 1 ma dzielnik pierwszy. Jeśli NN jest pierwsza - jest swoim własnym dzielnikiem pierwszym. Jeśli nie, to rozkłada się na czynniki mniejsze od siebie i po kilku krokach dochodzimy do czynnika pierwszego. Oznaczmy taki dzielnik przez qq.

Krok 5. Pokazujemy, że qq nie jest żadną z liczb p1,…,pkp_1, \ldots, p_k. Przypuśćmy, że q=piq = p_i dla pewnego ii. Wtedy qq dzieli NN oraz dzieli iloczyn p1⋅p2⋅…⋅pkp_1 \cdot p_2 \cdot \ldots \cdot p_k. Skoro dzieli obie liczby, dzieli też ich różnicę:

N−p1⋅p2⋅…⋅pk=1.N - p_1 \cdot p_2 \cdot \ldots \cdot p_k = 1.

Ale żadna liczba pierwsza nie dzieli jedynki - sprzeczność.

Krok 6. Wniosek. Otrzymaliśmy liczbę pierwszą qq spoza naszej listy, choć lista miała zawierać wszystkie liczby pierwsze. Założenie z kroku 1 jest więc fałszywe: liczb pierwszych jest nieskończenie wiele. ■\blacksquare

Najczęstsze nieporozumienie

Bardzo często dowód streszcza się (błędnie) tak: „mnożymy wszystkie liczby pierwsze, dodajemy jeden i dostajemy nową liczbę pierwszą”. To nieprawda - liczba NN wcale nie musi być pierwsza. Dowód mówi jedynie, że NN ma dzielnik pierwszy spoza listy.

Zobaczmy to na liczbach. Mnożąc kolejne liczby pierwsze i dodając jeden, dostajemy:

Ostatni przykład nie psuje dowodu: czynniki 5959 i 509509 też są liczbami pierwszymi spoza listy {2,3,5,7,11,13}\{2, 3, 5, 7, 11, 13\} - dokładnie tak, jak zapowiada krok 5.

Jak rzadkie są liczby pierwsze

Skoro jest ich nieskończenie wiele, naturalne jest pytanie: jak gęsto występują? Odpowiada na to twierdzenie o liczbach pierwszych (Hadamard i de la Vallée Poussin, 1896): liczba liczb pierwszych nie większych od xx, oznaczana π(x)\pi(x), spełnia

π(x)≈xln⁡x.\pi(x) \approx \frac{x}{\ln x}.

Dla x=106x = 10^6 daje to około 72 38272\,382, a naprawdę jest ich 78 49878\,498 - przybliżenie z błędem około 8%8\%, poprawiające się wraz ze wzrostem xx.

Jednocześnie w ciągu liczb naturalnych istnieją dowolnie długie przerwy bez liczb pierwszych. Dla dowolnego nn liczby

n!+2,n!+3,…,n!+nn! + 2, \quad n! + 3, \quad \ldots, \quad n! + n

są kolejno podzielne przez 2,3,…,n2, 3, \ldots, n, więc żadna z nich nie jest pierwsza. To ciąg n−1n - 1 kolejnych liczb złożonych - i można go zbudować dla dowolnie dużego nn.

Po co to komu

Cała współczesna kryptografia z kluczem publicznym opiera się na liczbach pierwszych. Algorytm RSA potrzebuje dwóch dużych liczb pierwszych (dziś zwykle po 10241024 bity, czyli ponad 300300 cyfr) - i musi mieć pewność, że takich liczb nie zabraknie oraz że da się je losowo znajdować.

Twierdzenie Euklidesa gwarantuje pierwsze, a twierdzenie o liczbach pierwszych - drugie: skoro wśród liczb 300300-cyfrowych mniej więcej jedna na 700700 jest pierwsza, wystarczy losować i testować, by w rozsądnym czasie trafić na liczbę pierwszą.

Kto i kiedy

Dowód pochodzi z Elementów Euklidesa (księga IX, twierdzenie 20), spisanych około 300300 roku p.n.e. w Aleksandrii. Sam Euklides sformułował go ostrożniej niż my dzisiaj - starożytni Grecy unikali pojęcia nieskończoności i mówili raczej: „liczb pierwszych jest więcej niż jakakolwiek zadana ich ilość”.

Rozumowanie przetrwało ponad dwa tysiące lat bez jednej poprawki i do dziś jest podręcznikowym przykładem dowodu nie wprost. Więcej o autorze: Euklides.

Najczęstsze pytania

Czy liczba NN z dowodu jest zawsze pierwsza? Nie. Najmniejszy kontrprzykład to 2⋅3⋅5⋅7⋅11⋅13+1=300312 \cdot 3 \cdot 5 \cdot 7 \cdot 11 \cdot 13 + 1 = 30031, które rozkłada się na 59⋅50959 \cdot 509. Dowód tego nie potrzebuje - wystarczy, że NN ma dzielnik pierwszy spoza listy.

Czy znamy największą liczbę pierwszą? Nie i nigdy nie poznamy - twierdzenie Euklidesa właśnie to wyklucza. Znamy natomiast największą odkrytą dotąd liczbę pierwszą; rekordy padają co kilka lat i są to zwykle liczby Mersenne’a postaci 2p−12^p - 1.

Czy jedynka jest liczbą pierwszą? Nie. Gdyby była, rozkład na czynniki pierwsze przestałby być jednoznaczny (można by dopisywać dowolnie wiele jedynek), a to zepsułoby podstawowe twierdzenie arytmetyki.

Dlaczego to dowód „nie wprost”? Bo zaczynamy od zaprzeczenia tezy („liczb pierwszych jest skończenie wiele”) i doprowadzamy do sprzeczności. Skoro założenie prowadzi do fałszu, musi być fałszywe - a więc teza jest prawdziwa.

Czy istnieje wzór na kolejne liczby pierwsze? Nie ma prostego wzoru, który dla każdego nn zwracałby nn-tą liczbę pierwszą. Są wzory teoretyczne, ale nie nadają się do rachunków - w praktyce liczby pierwsze wyszukuje się sitem Eratostenesa i testami pierwszości.

Podsumowanie