I numeri primi sono quei numeri maggiori di 1 che si possono dividere solo per 1 e per sé stessi. Si inizia con 2, poi abbiamo 3, 5, 7, 11, 13, 17 e così via. Già Euclide, 2.300 anni fa, sapeva che sono infiniti. Però, nonostante la loro apparente semplicità, i numeri primi nascondono problemi di incredibile complessità e un primo problema è proprio come trovarli. Infatti, anche se ce ne sono infiniti, a oggi non c’è nessuna regola veramente efficiente per individuarli. Se partiamo da un numero primo qualsiasi, non è facile trovare rapidamente quale sia il prossimo numero primo anche se esistono formule per dare una stima approssimata di quanto sia lontano, formule che però sono molto imprecise. Sappiamo che la distanza media tra due numeri primi cresce (abbastanza “lentamente”) quando i numeri crescono, in modo tale che sono sempre più rari. Per esempio, nei numeri fino a 1.000 ci sono 168 numeri primi, per cui in media tra un numero primo e il successivo ci sono circa 6 numeri. Tra i numeri fino a un miliardo ci sono poco più di 50 milioni di numeri primi, e quindi in media, tra un numero primo e il successivo, ce ne sono circa 20. Insomma, trovare un numero primo molto grande può rivelarsi un’impresa sempre più difficile, anche se poi a volte troviamo i primi gemelli, ovvero, due numeri primi separati solo da un numero pari, come 11 e 13 oppure 881 e 883 (si crede che ce ne siano infiniti, ma questo è un problema aperto).
Però i matematici sono curiosi e vorrebbero trovare una formula veloce per sapere esattamente dove si trovi almeno una sottoclasse dei numeri primi. E questo, anche se non è la loro principale motivazione, avrebbe anche delle applicazioni. Infatti, così come è difficile trovare un numero primo, è anche più difficile scomporre un numero qualsiasi nei suoi fattori primi. Su questa difficoltà si basano più o meno tutti gli algoritmi di criptografia esistenti, ossia quegli algoritmi che rendono sicure le nostre password o le nostre carte di credito.
E siamo arrivati a Marin Mersenne. Matematico, filosofo, teologo e prete cattolico, è stato un personaggio piuttosto curioso: nella prima metà del ’600 è stato in corrispondenza con scienziati come Galileo, Cartesio e Fermat, contribuendo a diffondere le loro idee. Si deve a lui una formula, abbastanza semplice, per produrre numeri candidati a essere numeri primi. Questi numeri particolari, chiamati appunto “numeri di Mersenne” sono della forma Mp=2p-1 dove p è un numero primo. Se p=2, allora M2=3. Poi abbiamo M3=7, M5=31.
Tutti questi sono numeri primi. Purtroppo, si vede facilmente che M11=2043=23x89 e quindi non è primo. Però questa forma particolare è una buona traccia per trovare nuovi numeri primi, anche se, in generale, resta sempre difficile capire se un numero di Mersenne è primo oppure no, specie quando p diventa grande. A questo scopo nel 1996 è nato il progetto “Great Internet Mersenne Prime Search” (GIMPS) che attraverso una rete mondiale di volontari e un sistema di calcolo distribuito, cerca, attraverso algoritmi di calcolo avanzati, di trovare nuovi numeri primi di Mersenne. Fino a oggi il progetto ne ha trovati 18, portando così il totale a 52. Il più grande di tutti (per ora!) è stato trovato da Luke Durant a ottobre 2024 ed è uguale a 2136.279.841 − 1 (che corrisponde a M136.279.841), ossia un numero che, se lo scrivessimo per intero, avrebbe oltre 40 milioni di cifre. Se pensiamo che si stima che gli atomi nell’Universo siano circa 2266, possiamo capire quanto sia grande questo numero. C’è voluto tanto tempo e ingegno per calcolarlo e verificarne la primalità, ma piano piano, e con tante persone impegnate a trovarlo, alla fine ci siamo arrivati. E stiamo andando avanti, perché la ricerca in matematica non si ferma mai, anche se a volte sembra procedere con calma.
Fonte: Roberto Natalini, Istituto per le applicazioni del calcolo "Mauro Picone", direttore@iac.cnr.it