matematica_light

mate-light 2026, matematica_light

Come si fattorizzano i numeri RSA

Uno dei metodi più noti di crittografia a chiave pubblica, RSA, si basa sul fatto che è difficile trovare i due fattori primi di un numero molto grande. Per dimostrare che in effetti i loro algoritmi sono robusti, nel 1991 gli RSA Laboratories hanno indetto una gara nella quale bisognava  trovare quali erano i due numeri primi che moltiplicati tra loro davano i numeri da loro presentati. La gara è stata ufficialmente chiusa nel 2007, ma comunque gli appassionati hanno continuato a lavorarci su. Era dal 2020 (subito prima del lockdown, nel caso qualcuno volesse fare delle battutine) che non c’erano nuove fattorizzazioni, ma a settembre 2026 ne sono state pubblicate due di nuove: RSA-260, un numero di 260 cifre, e RSA-896, un numero di 896 bit cioè 270 cifre. Come è stato possibile?

Per il caso di RSA-260 Alan Woodward ha scritto una spiegazione (relativamente) semplice della matematica che sta dietro la fattorizzazione di un numero N così grande. Usare il metodo banale (dividere N per tutti i numeri primi fino alla radice quadrata di N, e fermarsi quando il resto è zero) è impraticabile. L’idea che al momento funziona meglio è un’altra: cercare due numeri X e Y tali che X²−Y² sia un multiplo di N. Prendiamo per esempio N=91, un numero che tutti sanno non essere primo. Se X=20 e Y=6, abbiamo X²−Y² = 400−36 = 364 = 4·91. Ora, sappiamo che X²−Y² = (X+Y)(X−Y). Se non siamo così sfortunati per cui uno dei due fattori è un multiplo di N, sappiamo che i suoi due fattori primi sono uno da una parte e uno dall’altra; ci basta quindi trovare il massimo comun divisore tra X−Y e N. Nel nostro caso abbiamo 14 e 91; l’MCD è 7, che è uno dei fattori di 91. Ovviamente avremmo potuto fare la stessa cosa con X+Y, nel qual caso avremmo trovato 13. Questa è la prima idea alla base del General Number Field Sieve, GNFS per gli amici.

Tutto bellissimo, ma come troviamo X e Y? Qui arriva la seconda idea. Un numero si dice essere “facile” se è il prodotto di numeri primi piccoli. Per esempio 300 è 2·2·3·5·5, e 2, 3, 5 sono primi piccoli. Invece 1372081 è un numero primo, e quindi di primi piccoli nella sua fattorizzazione non ce ne sono. Il GNFS setaccia i numeri dell’ordine di N per trovare quelli che sono prodotti di primi piccoli e si salva la loro fattorizzazione; un crivello (sieve) che non è quello di Eratostene ma è pur sempre un crivello. Una volta che abbiamo tante fattorizzazioni, è relativamente semplice costruire dei quadrati perfetti: basta provare a moltiplicare coppie di candidati per avere un risultato dove tutti i primi appaiono un numero pari di volte. Lavorare con primi piccoli rende più semplice fare questi accoppiamenti, tutto qua. Tutto qua si fa per dire, perché comunque anche questo accoppiamento equivale a una moltiplicazione di matrici sparse di elementi 0 e 1. (“sparse” perché di 1 ce ne sono pochi.) Proprio il tipo di operazioni che fanno gli LLM, tra l’altro. In realtà non si usano gli interi ma gli anelli Z[r], dove r è la radice di un polinomio irriducibile, che cioè non ha radici intere; in questo modo si riducono molto i candidati possibili e quindi si velocizza la computazione.

Naturalmente “velocizzare” è sempre relativo: Eric Lu, che ha fattorizzato RSA-260 con la sua startup Cognition, ha detto che l’operazione è costata 13,5 anni di GPU, per un costo teorico di 400000 dollari. In realtà ha usato tempo morto dei computer di Cognition, quindi il costo è teorico. Inolte ha usato un assistente software IA, Devin, per accelerare le operazioni. La stima di Lu è che si potrebbe dimezzare il costo senza grandi modifiche, e il costo per craccare RSA-1024 sarebbe intorno ai 30 milioni di dollari. Considerando che le chiavi a 1024 bit sono state deprecate nel 2013; la lunghezza minima di chiave suggerita è 2048 bit, e anche il GNFS non può fare molto. Si potranno fare miglioramenti? Non si sa, ma così ad occhio non credo che l’IA possa aiutare in questo campo, se non appunto a migliorare il software attuale.

 

,
mate-light 2026, matematica_light

Somme di quadrati

Forse non tutti sanno che un qualunque numero intero positivo può essere scritto come somma di al più quattro quadrati di interi positivi, o se preferite di esattamente quattro quadrati di numeri naturali (compreso lo zero). L’affermazione è stata congetturata già da Diofanto; Bachet la tradusse dal greco, Lagrange lo dimostrò e Legendre è considerato colui che nel 1798 ha anche dimostrato che gli unici numeri che richiedono effettivamente tutti e quattro i quadrati sono quelli della forma $4^k (8m+7)$, con k e m numeri naturali. A dire il vero Legendre per dimostrarlo assunse che dati due numeri interi a e b primi tra loro esistono infiniti primi della forma a + nb, con n intero; e Dirichlet dimostrò questo fatto solo quarant’anni dopo. La prima dimostrazione corretta fu del solito Gauss.

C’è però un altro problema apparentemente simile ma in pratica più complicato. Quali sono i numeri interi positivi che non possono essere scritti come somma di quadrati tutti diversi? È facile vedere che tra i numeri di una cifra ci sono 2, 3, 6, 7, 8; relativamente facile trovare 11, 12, 15, 18, 19, 22, 23, 24, 27, 28, 31, 32, 33; poi la cosa si fa più complicata. Gli altri numeri sono 43, 44, 47, 48, 60, 67, 72, 76, 92, 96, 108, 112, 128. Fine. Dopo questi 31 non ce ne sono altri, come del resto dice OEIS. Il tutto è stato dimostrato da Sprague nel 1948, quindi ben dopo il teorema dei quattro quadrati.

Il guaio è che la dimostrazione è per induzione, e passi: ma per la più brutta forma di induzione che io abbia mai visto. Se la guardate su ProofWiki, vedrete che il passo di base è verificare che tutti i numeri da 129 a 324 = 18² sono esprimibili, mostrare che dato un numero k > 324 e calcolato il numero i per cui i² < k ≤ (i+1)² possiamo scrivere k  − (i − 4)² come somma di quadrati distinti nessuno dei quali è (i − 4)², e infine controllare tutti i numeri da 1 a 128 per vedere se possono o no essere scritti in quel modo.

Occhei, non siamo certo al livello delle dimostrazioni IA, ma direi che comunque non è che si impari molto da questa dimostrazione!

mate-light 2026, matematica_light

Il teorema di Miquel

il teorema di Miquel
Po immagine di inductiveload, da https://commons.wikimedia.org/wiki/Image:Miquel_Circles.svg

Potreste pensare che dal Rinascimento, a esser buoni, non si possa più trovare alcun nuovo teorema “simpatico” in geometria euclidea. Occhei, potreste anche pensare che il concetto di “teorema simpatico” sia un ossimoro, ma tralasciamo. E invece non è così.

Un po’ prima della metà del XIX secolo, il francese Auguste Miquel (non lo trovate neppure nella Wikipedia in lingua inglese, il che è tutto detto) scoprì il teorema che ha preso il suo nome, noto anche come il teorema del perno (pivot). Dato un qualunque triangolo ABC, si prendano tre punti A’, B’, C’ sui lati o sui loro prolungamenti, e si costruiscano i tre cerchi che passano per un vertice del triangolo e per i due punti costruiti sui lati che partono da quel vertice. Bene: i tre cerchi si incontrano in un punto, detto (mavalà?) punto di Miquel.

È vero che non ce ne facciamo molto di un teorema come questo: ma non trovate inaspettato che ci sia un vincolo così forte sulla costruzione fatta?

,
mate-light 2026, matematica_light

Formula dell’emisenoverso

Se vogliamo trovare il terzo lato $\overline{AB}$ di un triangolo quando conosciamo gli altri due lati $\overline{AC}$ e $\overline{BC}$ e l’angolo $γ$ tra di loro possiamo usare il teorema del coseno:

$$ \overline{AB}^2=\overline{AC}^2+\overline{BC}^2-2\cdot\overline{AC}\cdot\overline{BC}\cos\gamma $$

Fin qua nulla di così strano, anche se questo teorema di solito non si studia a scuola. Ma se stiamo navigando, la formula non funziona perché non tiene conto della sfericità della terra: ci vuole un teorema dei coseni apposito. La cosa buffa è che in trigonometria sferica non ci sono triangoli simili, quindi le lunghezze dei “lati” di un triangolo sferico (parti di un cerchio massimo sulla superficie sferica) sono indicate dal coseno dell’angolo al centro. Il teorema del coseno sferico è pertanto

$$ \cos c = \cos a \cos b + \sin a \sin b \cos C\ $$

dove $C$ è l’angolo interno del triangolo.

triangolo sferico

Fin qua ancora nulla di strano. Il problema è che i triangoli in mare sono sì sferici ma relativamente piccoli rispetto al raggio terrestre; quindi $a$ e $b$ sono numeri piccoli, i loro coseni sono molto vicini a 1 e i loro seni molto vicini a 0. Moltiplicando $\sin a \sin b$ otteniamo un numero ancora più piccolo, che sommato a un “quasi 1” si perde. Questo significa tra l’altro che anche adesso che abbiamo le calcolatrici non possiamo usare quella formula perché sballerebbe comunque. Brutta storia. Ma già gli indiani, nel loro trattato di astronomia Surya Siddhanta, avevano trovato la soluzione: la funzione senoverso, definita come

$$\textrm{versin}\theta := 1 – \cos\theta = 2\sin^2\frac{\theta}{2}$$

L’emisenoverso (haversine in inglese) è ovviamente la metà del senoverso, cioè $\textrm{hav}\theta := (1 – \cos\theta)/2$. Il nostro teorema del coseno sferico diventa così

$$\textrm{hav}(c) = \textrm{hav}(a − b) + \sin(a) \sin(b) \textrm{hav}(C)$$

Visto il trucco? La differenza di due valori piccoli è quasi zero, quindi il coseno è quasi 1 e l’emisenoverso quasi zero. Sommiamo insomma due numeri molto piccoli e non abbiamo problemi di perdita di precisione. Sembra incredibile, ma le prime tavole numeriche che tabulavano l’emisenoverso apparvero solo nel 1805, nonostante la loro indubbia utilità; evidentemente già in passato la matematica teorica e quella pratica andavano per conto loro…

PS: Per un algoritmo che uso nel mio lavoro dobbiamo calcolare la distanza di un’abitazione dalla cella telefonica che la serve. I miei colleghi avevano fatto una ricerca in rete e scoperto la formula dell’emisenoverso: non sono riuscito a convincerli che date le distanze in gioco (massimo 35 km) e la (scarsa) precisione dei dati a nostra disposizione l’errore che avremmo avuto usando banalmente il teorema di Pitagora era trascurabile…

mate-light 2026, matematica_light

Quando Google Maps ci frega

La mia auto è vecchiotta: ha un navigatore GPS, ma le mappe sono statiche. Né io né Anna spesso ci ricordiamo di usare Google Maps o Waze sui nostri telefoni e tablet e così può capitare che ci troviamo imbottigliati come la scorsa settimana. Ma questi sistemi sono davvero un toccasana? Un paio di settimane fa un articolo di Guerre di rete parlava proprio di questo. Questi algoritmi danno a tutti gli utenti lo stesso percorso, giudicato migliore in base alle condizioni istantanee del traffico: è insomma un’ottimizzazione locale. Ma quando ci si trova in situazioni congestionate, il risultato pratico è che spostare tanti veicoli da una strada molto trafficata ma ampia a una strada momentaneamente meno trafficata ma più stretta la rende più trafficata e dà a tutti un risultato peggiore sia in termini di tempo che di inquinamento. Questo è ben noto almeno ai matematici e spero a qualche urbanista: è il paradosso di Braess, di cui ho già parlato in passato.

Il fatto è che il traffico è un sistema complesso, il che significa che un’ottimizzazione locale (ognuno segue il percorso migliore qualunque cosa facciano gli altri: è l’equilibrio di Nash) non corrisponde necessariamente a un’ottimizzazione globale (i percorsi sono studiati in modo che tutti abbiano un vantaggio). Gli studi citati da Guerre di rete mostrano che in presenza di traffico elevato la soglia di adozione dei navigatori oltre la quale si ha un peggioramento delle condizioni è il 60%. Google potrebbe fare qualcosa per ovviare a questo problema? Chiaramente sì. Sa quanti dispositivi sono in movimento in quella zona in quell’istante e potrebbe smistarli casualmente su due o più strade distinte per equilibrare il traffico. Google ha voglia di fare qualcosa per ovviare a questo problema? Evidentemente non lo ritiene così importante, altrimenti l’avrebbe già fatto. Poi è ovvio che nel caso mio personale dell’autostrada chiusa avrebbe comunque fatto uscire tutti al casello precedente, ma quello è un caso diverso: non ingorgo ma blocco vero e proprio.

Che possiamo fare noi, allora? Niente. Non è nemmeno utile un comportamento luddista che chiuda il cellulare e faccia ritornare alle mappe cartacee: il guaio del paradosso di Braess è che proprio perché la nuova soluzione è un equilibrio di Nash la risposta non può essere di una singola persona. Insomma preparatevi a una transumanza di pecoroni guidati da un algoritmo.

, ,
mate-light 2026, matematica_light

algebrica.org

In un mondo dove le dimostrazioni le fanno le IA, ha ancora senso cercare di spiegare la matematica? Per Antonio Lupetti sì: ecco perché sta assemblando (in inglese…) il sito algebrica.org, che ha come scopo il creare una base di conoscenza matematica libera, aperta e distribuita dedicata a rendere la matematica chiara, accessibile, e spiegata in modo rigoroso. La parte più interessante del progetto è che è è scritto in markdown (con le formule matematiche scritte in LaTeX, se vi stavate chiedendo come facesse a farle) mentre le figure sono in formato svg: questo, unito al fatto che il sito ha la licenza CC-BY-NC 4.0, permette a chiunque di prenderlo e crearsi dei documenti personali (ma non di postarlo su Wikipedia, che richiedere di avere anche la clausola di uso commerciale).

Se il progetto vi piace, potete finanziarlo oppure contribuire con testi matematici… o magari convincere Antonio ad avere una versione multilingua :-)

mate-light 2026, matematica_light

Questa storia di Navier-Stokes

Se persino il Corsera ieri mattina parlava della risoluzione da parte di OpenAI delle equazioni di Navier-Stokes (altri italici quotidiani non pervenuti). Quelle equazioni intendono modellare il comportamento dei fluidi viscosi (quindi reali), ed è stata trovata e verificata formalmente una soluzione alle equazioni che parte da una condizione normale e arriva in un tempo finito ad avere un comportamento che esplode, il che significa che come modello non possono essere davvero corrette.
Se volete una spiegazione più dettagliata ma comprensibile, vi consiglio il post dei miei amici di MaddMaths!, che oltre alla storia delle equazioni e della loro importanza (sono uno dei sette Problemi del Millennio) racconta di tutto quello che ci sta dietro oltre alla matematica. Due matematici spagnoli, Diego Córdoba e Luis Martínez-Zoroa, avevano avuto qualche anno fa un’idea promettente che aveva portato ad alcuni nuovi risultati nel caso in cui veniva aggiunta energia al sistema in modo non fisico; l’anno scorso Tristan Buckmaster della New York University e Levent Alpöge di Anthropic (!) hanno cominciato a lavorare sul problema e ad agosto avevano formalizzato il caso di energia “naturale” ma senza viscosità con una nuova tecnica assistita dall’IA; a quel punto a OpenAI hanno sentito delle voci che Anthropic aveva una soluzione e si sono buttati a pesce con un attacco a forza bruta (si calcola che hanno speso l’equivalente di 22 milioni e mezzo di dollari, ai prezzi di computazione correnti) per arrivare per primi alla soluzione. Ma quello che è peggio è che Buckmaster afferma che gli avevano telefonato da OpenAI dicendo che gli lasciavano la paternità dell’articolo se affermava che il lavoro era stato completato da un modello OpenAI… e non avesse indicato Alpöge come coautore, essendo della concorrenza.

Il sospetto è che OpenAI abbia recuperato le informazioni che Buckmaster e Alpöge si sono scambiati con OpenAI Codex. Il comunicato di OpenAI è piuttosto fumoso: afferma che gli esseri umani non hanno guardato quelle informazioni (probabilmente vero), né l’hanno fatto gli agent AI (e qua avrei qualche dubbio, visto come stanno facendo: vedi il caso HuggingFace), ma non possono escludere che nel materiale di addestramento del loro nuovo modello possa esserci stata qualche informazione anonima sul tema (vedete il loro naso che si allunga?)

Alla fine della fiera, il risultato pratico è che il teorema è stato dimostrato ma è partito un casino tale che sembra di essere tornati alle disfide matematiche del Cinquecento, con la differenza che le dimostrazioni dei risultati ottenuti sembrano troppo oscure per portare avanti la ricerca matematica. E comunque l’IA è brava, ma solo se la si sa indirizzare.

Ultimo aggiornamento: 2026-09-10 11:13

mate-light 2026, matematica_light

Il teorema di Balinski e Young

Forse è vero che la democrazia è il peggior sistema di governo, eccetto tutti gli altri. Sicuramente è vero che non può essere sempre davvero equo come si crede, e questo lo si dimostra matematicamente. Uno dei risultati probabilmente meno noti è quello pubblicato dai matematici Michel Balinski e Peyton Young nel loro libro del 1982 Fair Representation: Meeting the Ideal of One Man (ma il teorema era già stato reso noto nel 1980). Esso afferma che in un sistema elettorale proporzionale con almeno quattro partiti non è possibile garantire che vengano rispettate la regola del quoziente e la monotonicità del rapporto dei voti.

Per prima cosa, le definizioni. La regola del quoziente afferma che se in un sistema elettorale si calcolano i seggi ottenuti da ciascun partito moltiplicando il numero totale di seggi per il rapporto tra i voti dati al partito e quelli totali, il numero di seggi si deve ottenere arrotondando per difetto o per eccesso il valore trovato. Se ci fossero 7 seggi, 1000 voti validi e il partito A ne ha presi 300, il numero teorico di seggi ottenuti sarebbe (300/1000)×7 = 2,1 e quindi gli si devono assegnare due oppure tre seggi. La monotonicità del rapporto dei voti afferma invece che se da un’elezione alla successiva il rapporto A/B tra i voti presi da A e quelli presi da B aumenta, quindi A cresce più di B (oppure cala meno di B), allora A non può perdere seggi a favore di B. Inoltre se all’interno dell’elezione A ha più voti di B allora non può avere meno seggi.

Entrambe le richieste sembrano logiche ed eque. Balinski e Young hanno però costruito un esempio che non permette di soddisfare entrambe le richieste. Supponiamo che ci siano 7  seggi disponibili, e nella prima elezione la distribuzione dei voti dà questo risultato: A 5,01 seggi, B 0,67 seggi, C 0,67 seggi, D 0,65 seggi. Avendo solo il dato di una elezione non possiamo applicare la monotonicità ma solo il quoziente: l’unica possibilità è dare cinque seggi ad A, un seggio ciascuno a B e C, e nessun seggio a D. Andiamo all’elezione successiva, dove c’è stato un mezzo ribaltone: stavolta A avrebbe 3,99 seggi, B 2,00 seggi, C 0,50 e D 0,51. Per il quoziente A può avere 3 o 4 seggi, B ne ha sicuramente 2, C e D ne possono avere 0 oppure 1. I due casi possibili, considerando che D non può avere meno seggi di C, sono pertanto 3-2-1-1 e 4-2-0-1.  In ogni caso A ha perso almeno un seggio e D ne ha guadagnato 1. Ma il rapporto A/D nella prima elezione era 7,71 mentre nella seconda è 7,82; quindi la monotonicità del rapporto dei voti non è rispettata.

Cosa succede in pratica? Nulla. Innanzitutto la regola del quoziente è applicata in maniera molto più rigida: si parla infatti di metodo dei resti, che assegna i “seggi frazionari” a chi ha la frazione maggiore una volta assegnati i “seggi interi”; in questo modo la monotonicità all’interno della singola elezione è assicurata. Per quanto riguarda la monotonicità tra un’elezione e l’altra, ce lo vedete il leader di un partito a dire “non è giusto, in percentuale sono andato meglio di quell’altro partito ma ho perso comunque un seggio che è andato a loro”? E ce li vedete i simpatizzanti di quel partito capirci qualcosa? Questo risultato è insomma interessante in teoria, ma non ci cambia la vita se non per sapere che ancora una volta i principi di rappresentatività sono solo un’approssimazione e non una regola matematica.

Nota: corretto l’errore nei rapporti AD, come da commento

Ultimo aggiornamento: 2026-09-09 17:45

Torna in alto