Hva er et primtall?
Et primtall er et naturlig tall større enn 1 som ikke har andre positive divisorer enn 1 og seg selv. Eksempler: 2, 3, 5, 7, 11, 13... Alle primtall unntatt 2 er oddetall. Primtall er «tallenes atomer».
Primtallstest · Faktorisering · Primtallgenerering
Et primtall er et naturlig tall større enn 1 som ikke har andre positive divisorer enn 1 og seg selv. Eksempler: 2, 3, 5, 7, 11, 13... Alle primtall unntatt 2 er oddetall. Primtall er «tallenes atomer».
En gammel algoritme utviklet av den greske matematikeren Eratosthenes rundt 240 f.Kr. Den finner effektivt alle primtall opp til n ved å markere multiplene til hvert primtall som sammensatt.
Tvillingprimtall er par av primtall som skiller seg med 2: (3,5), (5,7), (11,13), (17,19)... Om det finnes uendelig mange tvillingprimtall er fortsatt et uløst problem.
• RSA-kryptering: Sikkerhet basert på at det er vanskelig å faktorisere store tall • Hash-funksjoner: Hashtabeller med primtallsstørrelse reduserer kollisjoner • Tilfeldig tallgenerering: Primtall i PRNG-algoritmer • Natur: Sikaders livssykluser bruker primtall
Et primtall er et naturlig tall større enn 1 uten andre divisorer enn 1 og seg selv. Det minste primtallet er 2, det eneste partallet som er et primtall. Tallrekke: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29... Den gamle greske matematikeren Euklid beviste rundt 300 f.Kr. at det finnes uendelig mange primtall. Primtall kalles «tallenes atomer» fordi hvert heltall > 1 kan faktoriseres entydig i primtall (arithmetikks fundamentalteorem). Eksempler: 60 = 2² × 3 × 5, 360 = 2³ × 3² × 5.
Den enkleste metoden tester delbarhet med alle tall fra 2 til n-1, men dette er ineffektivt. En forbedring tester bare 2 til √n, siden hvis n = a × b, så er a ≤ √n eller b ≤ √n. For 101: √101 ≈ 10.05, så test bare 2, 3, 5, 7. Miller-Rabin sannsynlighetstest håndterer svært store tall effektivt. AKS (2002) er den første deterministiske algoritmen med polynomisk tid. Moderne kryptografi bruker hundrevis av sifre, noe som krever effektiv testing.
Utviklet av den greske matematikeren Eratosthenes rundt 240 f.Kr. Prosess: ① List tallene 2 til n. ② Merk 2 som primtall, eliminer multiplene (4,6,8,10...). ③ Neste umerkede tall 3 er primtall, eliminer multiplene. ④ Fortsett med 5, 7 osv. opp til √n. ⑤ Gjenværende tall er primtall. For n=30: primtallene er 2, 3, 5, 7, 11, 13, 17, 19, 23, 29. Tidskompleksitet: O(n log log n). Kan finne alle primtall under 1 million på sekunder.
Primtallsfaktorisering uttrykker et tall som et produkt av primtall. Ifølge aritmetikks fundamentalteorem har hvert heltall > 1 en unik faktorisering. Metode: ① Start med det minste primtallet 2. ② Del gjentatte ganger på 2 til det ikke lenger går opp. ③ Prøv de neste primtallene 3, 5, 7... ④ Fortsett til kvotienten er 1. Eksempel 360: 360÷2=180, 180÷2=90, 90÷2=45, 45÷3=15, 15÷3=5, 5÷5=1. Resultat: 360 = 2³×3²×5. Bruksområder: beregning av GCD/LCM, brøkreduksjon, RSA-sikkerhet.
Tvillingprimtall skiller seg med 2: (3,5), (5,7), (11,13), (17,19), (29,31)... Tvillingprimtallformodningen sier at det finnes uendelig mange, men den er fortsatt ubeskrevet. I 2013 beviste Yitang Zhang at uendelig mange primtallpar skiller seg med ≤70 million, senere redusert til 246. Goldbachs formodning (1742): hvert partall > 2 er summen av to primtall. Eksempler: 4=2+2, 6=3+3, 8=3+5, 10=5+5. Verifisert opp til 4×10¹⁸, men fortsatt ubeskrevet.
RSA-kryptering, kjernen i nettsikkerhet, bygger på at multiplikasjon er enkel mens faktorisering av store primtall er vanskelig. Nøkkelgenerering: ① Velg store primtall p, q (1024+ bits hver). ② Beregn n = p×q (offentlig). ③ Beregn φ(n) = (p-1)(q-1). ④ Velg offentlig eksponent e som er relativt primtalls fremmed til φ(n) (vanligvis 65537). ⑤ Beregn privat eksponent d der e×d ≡ 1 (mod φ(n)). Offentlig nøkkel: (n,e), privat nøkkel: (n,d). Krypter: C = M^e mod n, dekrypter: M = C^d mod n. Å faktorisere n for å finne p,q ville knekke krypteringen, men faktorisering av hundrevis av sifre tar millioner av år. Andre bruksområder: primtallsstørrelser på hashtabeller reduserer kollisjoner, 13/17-årssykluser hos sikader unngår overlapping med rovdyr, primrytmer i musikk.