Hoofdstuk 5 Mersenne- en Fermatgetallen 5.1 Mersennegetallen Uit Hoofdstuk 4 is naar voren gekomen dat getallen van de vorm 2 n 1 met n 2 en hun al of niet priem zijn van belang is voor de constructie van perfecte getallen. We noemen dergelijke getallen Mersennegetallen. Als zo n getal ook nog priem is dan noemen we het een Mersenne priemgetal. Voor de aardigheid reproduceren we op de volgende bladzij de eerste dertig Mersennegetallen en hun priemontbinding. Ongetwijfeld hebben veel tijdgenoten van Fermat naar dergelijke tabellen gekeken en erover nagedacht. Het blijkt dat er voldoende zaken zijn die de aandacht verdienen. We noemen er hier een paar. 1. Om te beginnen zien we dat 2 n 1 priem is voor n = 2, 3, 5, 7, 13, 17, 19, 31. Merk op dat deze waarden van n zelf ook priem zijn. Het omgekeerde geldt niet, primaliteit van n impliceert niet altijd de primaliteit van 2 n 1. In de tabel zien we bijvoorbeeld dat 2 11 1 samengesteld is. 2. Bij n = 30 zien we in de ontbinding van 2 30 1 de priemfaktoren 151, 331. Deze getallen zijn allebei 30-vouden plus 1. Dat is opvallend. Echter, niet alle priemfactoren zijn een 30-voud plus 1, want 2 30 1 bevat ook de faktoren 3, 7, 11. Maar deze priemfaktoren hebben de eigenschap dat ze al in eerdere ontbindingen zijn voorgekomen. Dit is mogelijk een verklaring voor het feit dat het geen 30-vouden plus 1 zijn. Bij n = 25 zien we ook iets dergelijks. De priemfaktoren 601 en 1801 zijn nog niet eerder voorgekomen in de tabel en we observeren dat het allebei 25-vouden plus 1 zijn. De lezer kan zelf constateren dat in de tabel zich het volgende lijkt af te spelen. Als q een priemdeler is van 2 n 1 en q is geen deler van 2 m 1 voor 2 m < n, dan is q een n-voud plus 1. 3. Het getal 2 30 1 is deelbaar door 7. Het kleinste Mersenne-getal deelbaar door 7 is 2 3 1. Merk op dat 3 30. Een andere deler van 2 30 1 is 11. Het 29
30 HOOFDSTUK 5. MERSENNE- EN FERMATGETALLEN kleinste Mersenne-getal deelbaar door 11 is 2 10 1. Merk op dat 10 30. Dit suggereert het volgende. Zij q een priemdeler van 2 n 1 en m het kleinste natuurlijke getal zó dat 2 m 1 door q deelbaar is. Dan is m een deler van n. 4. Dan een laatste, maar niettemin belangrijke, observatie. Als p een oneven priemgetal is, dan deelt p het Mersennegetal 2 p 1 1. n 2 n 1 ontbinding 2 3 3 3 7 7 4 15 3 5 5 31 31 6 63 3 2 7 7 127 127 8 255 3 5 17 9 511 7 73 10 1023 3 11 31 11 2047 23 89 12 4095 3 2 5 7 13 13 8191 8191 14 16383 3 43 127 15 32767 7 31 151 16 65535 3 5 17 257 17 131071 131071 18 262143 3 3 7 19 73 19 524287 524287 20 1048575 3 5 2 11 31 41 21 2097151 7 2 127 337 22 4194303 3 23 89 683 23 8388607 47 178481 24 16777215 3 2 5 7 13 17 241 25 33554431 31 601 1801 26 67108863 3 2731 8191 27 134217727 7 73 262657 28 268435455 3 5 29 43 113 127 29 536870911 233 1103 2089 30 1073741823 3 2 7 11 31 151 331 31 2147483647 2147483647 Misschien dat de lezer ook een aantal van deze eigenschappen had kunnen constateren als hij of zij er lang genoeg naar had gekeken. In ieder geval was Fermat ermee bekend. Het mooiste van dit alles is dat met enig nadenken het mogelijk
5.1. MERSENNEGETALLEN 31 is bovenstaande observaties in hun algemeenheid aan te tonen. Dit is precies wat Fermat deed en wat we hier nu gaan nadoen. Stelling 5.1.1 Stel a Z 2 en m, n N. Dan geldt, 1. Als m een deler is van n, dan is a m 1 een deler van a n 1. 2. Als an 1 priem is, dan is n priem. In het geval dat a = 2 zegt onderdeel (2) van deze stelling dat 2 n 1 priem impliceert dat n priem is. Dit was precies observatie 1. Als a > 2 dan kan a n 1 nooit priem zijn voor n 2 omdat we volgens onderdeel (1) van de stelling altijd a 1 als deler hebben. Dit is de reden dat we in onderdeel (2) naar an 1 kijken in plaats van a n 1. Als we a = 10 nemen dan is (10 n 1)/(10 1) het getal dat uit n enen bestaat. We noemen dergelijke getallen rep-units (uit het Engels, repeating units). Bijvoorbeeld, 10 15 1 10 1 = 999999999999999 = 111111111111111. 9 Als n samengesteld is, dan is het heel makkelijk in te zien dat de n-de rep-unit niet priem is. Bijvoorbeeld bij n = 15, of 111111111111111 = 11111 10000100001 111111111111111 = 111 1001001001001. Laten we nu even de Stelling bewijzen. Voor het bewijs van deel (1) stellen we k = n/m. We gebruiken nu de identiteit, Vul hier x = a m in. We vinden x k 1 = (x 1)(x k 1 + + x 2 + x + 1). a km 1 = (a m 1)(a mk m + + a m + 1). Dus a n 1 is een veelvoud van a m 1. Dit was het eerste deel van de stelling. Stel dat an 1 priem is. Neem aan dat n een echte deler m heeft ( echt wil zeggen, niet 1 en niet n). Dan heeft an 1 de echte deler am 1, in tegenspraak met het gegeven dat an 1 priem is. Dus moet n ook priem zijn. Onze derde observatie kan ook bewezen worden. Stelling 5.1.2 Stel a Z 2 en n N. Zij q een priemdeler van a n 1. Zij m het kleinste natuurlijke getal zó dat a m 1 deelbaar is door q. Dan is m een deler van n.
32 HOOFDSTUK 5. MERSENNE- EN FERMATGETALLEN Voor het bewijs gaan we Stelling 3.2.3 gebruiken met als verzameling V alle k N zó dat a k 1 deelbaar is door q. We tonen eerst aan dat V een verschillenverzameling is. Stel dat s, t V en s > t. Merk op dat a s 1 = a s t (a t 1) + a s t 1. Omdat q zowel a s 1 als a t 1 deelt volgt uit deze gelijkheid dat q ook a s t 1 deelt. Met andere woorden, s t V en V is een verschillenverzameling. Volgens Stelling 3.2.3 bestaat V uit veelvouden van zijn kleinste element. Maar dit kleinste element is juist m. Dus in het bijzonder, omdat n V, geldt dat m n. Voor de vierde observatie blijken we de binomiaalcoëfficienten uit de Appendix nodig te hebben. Stelling 5.1.3 (Kleine stelling van Fermat) Stel a N en p priem. Dan is p een deler van a p a. Bovendien, als p geen deler is van a dan deelt p het getal a p 1 1. Merk op dat als p een deler is van a p a = a(a p 1 1) en p deelt niet a, dan deelt p natuurlijk a p 1 1. Het tweede deel van de stelling volgt dus direkt uit het eerste. Voor het eerste deel passen we volledige induktie naar a toe. Als a = 1 dan is a p a gelijk aan nul en is de stelling waar. Stel nu k N en stel dat de stelling waar is voor a = k. Uit het binomium van Newton, Stelling 21.1, volgt (k + 1) p = k p + ( ) p k p 1 + + p 1 ( ) p k + 1. 1 Volgens Stelling 21.1.4 zijn de coëfficienten ( p r) voor r = 1, 2,..., p 1 allen deelbaar door p. Dus is (k + 1) p k p 1 deelbaar door p. Onze induktieveronderstelling zegt dat k p k deelbaar is door p. Dan is ook (k + 1) p (k + 1), de som van (k + 1) p k p 1 en k p k, deelbaar door p. Hiermee is onze stelling voor a = k + 1 bewezen en de induktiestap voltooid. Er moet bij gezegd worden dat bovenstaand bewijs een tamelijk folkloristische is. Het is mogelijk een veel eleganter en conceptueler bewijs te geven, maar dan moeten we eerst iets weten over congruenties, zie Gevolg 7.2.2. Onze tweede observatie is een gevolg van de kleine stelling van Fermat en Stelling 5.1.2. Stelling 5.1.4 Stel a N 2 en p een priemgetal dat niet a deelt. Zij m het kleinste natuurlijke getal zó dat a m 1 deelbaar is door p. Dan is p een m-voud plus 1.
5.2. MERSENNE PRIEMGETALLEN 33 Uit Stelling 5.1.3 weten we dat a p 1 1 deelbaar is door p. Uit Stelling 5.1.2 met n = p 1 volgt dat m een deler moet zijn van p 1. Dus is p een veelvoud van m plus 1. We kunnen nu uitleggen hoe Fermat de priemdeler 223 van 2 37 1 vond. De priemgetallen één voor één als deler proberen is een heidens werk, zeker als je geen computer hebt. Fermat redeneerde als volgt. Stel dat p een priemdeler is van 2 37 1. De kleinste m zó dat 2 m 1 deelbaar is door p is volgens Stelling 5.1.2 een deler van 37. Dus 1 of 37. De mogelijkheid 1 vervalt, dus blijft m = 37 over. Dus moet volgens Stelling 5.1.4 gelden dat p een 37-voud plus 1 is. Sterker nog, omdat p oneven is, is p zelfs een veelvoud van 74 plus 1. We gaan nu priemgetallen van deze vorm proberen. De eerste mogelijkheid, 75, is niet priem. De tweede, 149, deelt 2 37 1 niet. De derde, 223, is raak. Fermat had hier overigens wel geluk, de kleinste priemdeler van 2 41 1 is bijvoorbeeld 13367 en deze is niet zo simpel met pen en papier te vinden. 5.2 Mersenne priemgetallen De belangstelling voor Mersenne priemgetallen was groot in de 17e eeuw, onder anderen door hun verband met de perfekte getallen. In 1644 beweerde Mersenne in dit verband dat de volledige lijst van priemgetallen p zó dat p 257 en 2 p 1 priem is, gegeven wordt door 2, 3, 5, 7, 13, 17, 19, 31, 67, 127, 257. Hoe Mersenne aan deze bewering kwam is niet duidelijk. Hoe dan ook, de rij bevat vijf fouten. Allereerst hadden er nog p = 61, 89, 107 bij gemoeten, verder blijken 2 67 1 en 2 257 1 samengesteld te zijn. Tegenwoordig is men ook zeer geïnteresseerd in Mersenne priemgetallen. Het grootst bekende priemgetal, waarvan ongeveer eens per jaar het grootte-record wordt verbeterd en die vervolgens de kranten haalt, is vrijwel altijd een Mersennegetal. De reden is dat we het zogenaamde Lucas-Lehmer criterium hebben, een erg eenvoudig recept om na te gaan of een Mersennegetal priem is of niet. Het werd in de vorige eeuw door Lucas ontdekt en door D.H.Lehmer in 1931 tot het volgende recept vereenvoudigd. Kies een priemgetal p. We willen nu weten of het Mersennegetal M p = 2 p 1 priem is. Construeer hiertoe de rij getallen S 1, S 1, S 2,..., S p 1 als volgt. Kies S 1 = 4 en vervolgens voor iedere k 2 het getal S k als de rest van Sk 1 2 2 bij deling door M p. We hebben nu de opmerkelijke stelling dat M p precies dan priem is als S p 1 = 0. Hier volgt een tweetal voorbeelden (controleer maar). Eerst nemen we p = 7. S 1 = 4, S 2 = 14, S 3 = 67, S 4 = 42, S 5 = 111, S 6 = 0 Het getal 2 7 1 is dus priem. In het tweede voorbeeld kiezen we p = 11. S 1 = 4, S 2 = 14, S 3 = 194, S 4 = 788, S 5 = 701, S 6 = 119
34 HOOFDSTUK 5. MERSENNE- EN FERMATGETALLEN S 7 = 1877, S 8 = 240, S 9 = 282, S 10 = 1736 Dus 2 11 1 is niet priem. De negentiende eeuwse wiskundige Lucas gebruikte dit criterium om aan te tonen dat 2 127 1 priem is. In 1877 was dit een formidabel karwei als we bedenken dat 2 127 1 uit 39 cijfers bestaat. Lucas vondst stond dan ook aan de grens van wat in die tijd mogelijk was en gedurende 75 jaar bleef dit getal het grootst bekende priemgetal. In de vijftiger jaren namen computers dit soort werk over en sinds die tijd is de lijst bekende Mersenne priemgetallen steeds groter geworden. In onderstaande tabel geven we alle n waarvoor nu (mei 2008) bekend is dat 2 n 1 priem is. In de tabel geven we ook de naam van de ontdekker(s) en, indien van toepassing, de machine waarmee het gebeurde. De zoektocht naar nog grotere priemgetallen gaat onverminderd voort. Waren het vroeger supercomputers die men liet zoeken naar Mersenne priemgetallen, tegenwoordig kan iedereen met een PC het volgende getal vinden door mee te doen aan GIMPS (Great Internet Mersenne Prime Search) een zoekactie gecoördineerd op de internet site http://www.mersenne.org. n jaar machine ontdekker 2 3 5 7 13 1461 anoniem 17 1588 Cataldi 19 1588 Cataldi 31 1750 Euler 61 1883 Pervushin 89 1911 Powers 107 1913 Fauquembergue 127 1876 Lucas 521 1952 SWAC Robinson 607 1952 SWAC Robinson 1279 1952 SWAC Robinson 2203 1952 SWAC Robinson 2281 1952 SWAC Robinson 3217 1957 BESK Riesel 4253 1961 IBM7090 Hurwitz 4423 1961 IBM7090 Hurwitz 9689 1963 ILIAC2 Gillies 9941 1963 ILIAC2 Gillies 11213 1963 ILIAC2 Gillies wordt vervolgd...
5.2. MERSENNE PRIEMGETALLEN 35 n jaar machine ontdekker 19937 1971 IBM360/91 Tuckerman 21701 1978 Cyber 174 Noll, Nickel 23209 1979 Cyber 174 Noll 44497 1979 Cray 1 Nelson, Slowinski 86243 1982 Cray 1 Slowinski 110503 1988 Colquitt, Welsch 132049 1983 Cray X-MP Slowinski 216091 1985 Cray X-MP Slowinski 756839 1992 Cray 2 Slowinski, Gage 859433 1994 Cray C90 Slowinski, Gage 1257787 1996 Cray T94 Slowinski, Gage 1398269 1996 Pentium 90 MHz J.Armengaud (GIMPS) 2976221 1997 Pentium 100 MHz G.Spence (GIMPS) 3021377 1998 Pentium 200 MHz R.Clarkson (GIMPS) 6972593 1999 Pentium 350 MHz N. Hajratwala (GIMPS) 13466917 2001 AMD 800 MHz M.Cameron (GIMPS) 20996011 2003 Pentium 2GHz M.Shafer (GIMPS) 24036583 2004 Pentium 2,4 GHz J.Findley (GIMPS) 25964951 2005 24 PC s M.Nowak (GIMPS) 30402457 2005 C.Cooper, S.Boone (GIMPS) 32582657 2006 C.Cooper, S.Boone (GIMPS) 37156667 2008 H-M.Elvenich (GIMPS) 42643801 2009 O.M.Strindmo (GIMPS) 43112609 2008 E.Smith (GIMPS) 57885161 2013 C.Cooper (GIMPS) In vergelijking tot priemtesten voor willekeurige getallen is de Lucas-Lehmer test een wonder van eenvoud. Kijken we daarentegen naar de repunits, dat wil zeggen getallen van de vorm 1111... 111, dan is er niet zo n mooie test bekend. Daarom is de lijst met rep-units, waarvan we weten dat ze priem zijn, veel kleiner. Zij E n = (10 n 1)/9 de repunit bestaande uit n enen. Voor n < 10000 is het bekend dat E n alleen priem is als n = 2, 19, 23, 317, 1031 De volgende kandidaten zijn E 49081, E 86453, E 109297, E 270343. Van deze getallen heeft men het sterke vermoeden dat ze priem zijn. Wat wij daarmee bedoelen lees je in de tekst volgend op Stelling 8.2.5. Maar zoals gezegd, door het ontbreken van een goede test hebben we geen absolute zekerheid. De huidige algemene priemtesten kunnen redelijkerwijs getallen tot zo n duizend cijfers aan, en dus zal het wel enige tijd duren voor we absolute zekerheid over bijvoorbeeld E 49081 hebben. Tenslotte zij opgemerkt dat zelfs vergeleken met dit grote getal de Mersenne priemgetallen gigantisch zijn.
36 HOOFDSTUK 5. MERSENNE- EN FERMATGETALLEN 5.3 Fermatgetallen Laten we eens kijken naar getallen van de vorm 2 m + 1 en ons afvragen wanneer deze priem kunnen zijn. Er blijkt het volgende te gelden. Als 2 m +1 priem is, dan is m een macht van 2. Dat wil zeggen er is een n zó dat m = 2 n. De verklaring is als volgt. Stel dat m een oneven priemdeler heeft, zeg p. We weten dat voor willekeurige x geldt, (x p + 1) = (x + 1)(x p 1 x p 2 + x + 1). Vul hier x = 2 m/p in. dan zien we dat 2 m/p + 1 een echte deler is van 2 m + 1. Dus als 2 m + 1 priem is, dan heeft m alleen maar de priemdeler 2. Onze vraag is nu dus geworden, voor welke n is 2 2n + 1 priem? De getallen F n = 2 2n +1 noemen we de Fermatgetallen. Fermat constateerde dat F 1 = 5, F 2 = 17, F 3 = 257, F 4 = 65537 allemaal priemgetallen zijn en sprak het vermoeden uit dat al deze getallen wel eens priem zouden kunnen zijn. De geschiedenis heeft uitgewezen dat Fermat het niet vaak mis had, maar dat hij hier een vergissing van de eerste orde maakte. Euler liet namelijk zien dat 641 een priemdeler van F 5 is. Dit had Fermat ook makkelijk kunnen zien, op bijna dezelfde wijze als waarmee hij aantoonde dat 223 een deler van 2 37 1 is. Er geldt namelijk de volgende stelling Stelling 5.3.1 Zij p een priemdeler van 2 2n +1. Dan is p 1 deelbaar door 2 n+1. Als p een deler is van 2 2n +1 dan is p ook deler van het Mersennegetal 2 2n+1 1 = (2 2n + 1)(2 2n 1). Als we kunnen aantonen dat p geen enkel getal 2 m 1 met m < 2 n+1 deelt, dan volgt uit Stelling 5.1.4 dat p een 2 n+1 -voud plus 1 is, en we zijn klaar. Zij nu m het kleinste getal zódat p een deler is van 2 m 1. Dan volgt uit Stelling 5.1.2 dat m een deler van 2 n+1 is. Dus m = 2 k voor zekere k. We willen laten zien dat k = n + 1. Stel k n. Dan is 2 m 1 = 2 2k 1 een deler van 2 2n 1. Dus deelt p ook het getal 2 2n 1. Maar dit wordt erg lastig als we bedenken dat p ook een deler is van 2 2n + 1. Het verschil van deze getallen, 2, is immers ook deelbaar door p en we krijgen een onmogelijkheid. Daarom kan k n niet optreden en concluderen we dat k = n + 1. Ons bewijs is hiermee klaar. Om delers van F 5 te vinden hoeven we alleen maar priemgetallen die een 64-voud plus 1 zijn als deler te proberen. De priemgetallen die hiervoor in aanmerking komen zijn 193, 257, 449, 577, 641,... en 641 doet het. Het is heel goed mogelijk dat Fermat deze getallen inderdaad heeft geprobeerd maar bij 577 de moed heeft opgegeven. Voor Fermatgetallen blijkt er ook een simpele priemtest te zijn, namelijk de test van Pepin. Deze gaat als volgt. Construeer de rij getallen S 0, S 1, S 2,..., S 2 n 1 door S 0 = 3 en voor elke k 1 nemen we voor het getal S k de rest van S 2 k 1
5.3. FERMATGETALLEN 37 bij deling door F n. Het blijkt dat F n priem is precies dan als S 2 n 1 = F n 1. In Hoofstuk 11 leggen we uit waarom Pepin s test werkt. Ironisch genoeg is er buiten de getallen F 1, F 2, F 3, F 4 geen enkel Fermatgetal gevonden dat priem is. Omdat F n een dubbel exponentiële funktie van n zal de rij Fermatgetallen zeer snel stijgen. Zo past F 30 nog wel in een PC-geheugen, maar getallen van de grootte-orde van F 40 niet meer. Het zal daarom niemand verbazen dat van weinig Fermatgetallen de volledige priemontbinding bekend is. Hieronder volgen de tot nu toe (2014) bekende volledige ontbindingen. F 5 = 641 6700417 (Euler, 1732) F 6 = 274177 67280421310721 (Landry, Le Lasseur, 1880) F 7 = 59649589127497217 5704689200685129054721 (Morrison, Brillhart, 1974) F 8 = 1238926361552897 P 62 (Brent, Pollard, 1980) F 9 = 2424833 7455602825647884208337395736200454918783366342657 P 99 (Lenstra, Manasse, 1990) F 10 = 45592577 6487031809 4659775785220018543264560743076778192897 P 252 (Brent, 1995) F 11 = 319489 974849 167988556341760475137 3560841906445833920513 P 564 (Brent, Morain, 1988) De getallen P 62, P 99, P 252, P 564 zijn allen priem en van de aangegeven lengte. De lezer kan ze desgewenst zelf uitrekenen op een computer. Voor de huidige stand van zaken zie de website /www.prothsearch.net/fermat.html.