Formalizing the Real Numbers in Homotopy Type Theory with Cubical Agda
Questo articolo presenta una formalizzazione della costruzione dei numeri reali di Cauchy nella Teoria dei Tipi Omotopica in Cubical Agda, dimostrando che tale approccio evita la scelta numerabile, l'overhead dei setoidi e i problemi di tracciamento dei livelli di universo intrinseci ad altre definizioni costruttive, verificando al contempo il tipo senza postulati.
Articolo originale sotto licenza CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Questa è una spiegazione generata dall'IA dell'articolo qui sotto. Non è stata scritta né approvata dagli autori. Per precisione tecnica, consulta l'articolo originale. Leggi il disclaimer completo
Immagina di cercare di costruire un righello perfetto e infinito per misurare tutto nell'universo. Nel mondo della matematica classica, questo righello è facile da descrivere: basta prendere tutte le possibili misurazioni "approssimate" (come 3,1; 3,14; 3,141; ecc.) e dire: "Se due sequenze di misurazioni si avvicinano sempre di più, rappresentano lo stesso punto sul righello".
Tuttavia, nella Matematica Costruttiva — uno stile di matematica che insiste sul fatto che devi essere in grado di effettivamente costruire o calcolare la cosa di cui stai parlando — questo approccio semplice si scontra con un muro. Per dimostrare che il tuo righello è completo, devi fare una scelta magica: devi scegliere una misurazione specifica da un elenco infinito di opzioni per rappresentare il punto finale. La matematica costruttiva dice: "Nessuna magia consentita. Se non puoi mostrarmi come l'hai scelta, non hai ancora costruito il righello".
Per decenni, i matematici hanno dovuto compromettere. O hanno usato trucchi di "contabilità" che rendevano ogni calcolo disordinato, oppure hanno costruito il righello in un modo che richiedeva il tracciamento di complessi "livelli di universo" (come tenere il punteggio di quanto sono grandi le tue scatole).
Il Nuovo Progetto (Reali del Libro HoTT)
Questa tesi presenta un nuovo progetto per costruire il righello, tratto dal famoso libro Homotopy Type Theory (HoTT). Invece di costruire il righello incollando pezzi insieme e poi cercando di lisciarli, questo metodo costruisce il righello e le regole di "lisciatura" simultaneamente.
Pensaci come alla costruzione di una casa in cui i muri e il progetto vengono disegnati esattamente nello stesso momento.
- I Mattoni: Si inizia con numeri semplici e noti (come le frazioni).
- La Colla: Si aggiunge una regola speciale che dice: "Se due punti sono abbastanza vicini, sono effettivamente lo stesso punto".
- La Magia: Poiché la regola della "vicinanza" è integrata nella definizione della casa stessa, non è necessario fare quelle scelte magiche in seguito. La casa è completa nel momento in cui si finisce di posare i mattoni.
La Sfida: Il Traduttore per Computer
L'autore, Jackson Brough, ha preso questo progetto teorico e ha cercato di tradurlo in un linguaggio che un computer possa comprendere e verificare: Cubical Agda.
Immagina di cercare di spiegare una complessa coreografia a un robot che comprende solo istruzioni rigide e letterali.
- Il Problema: I precedenti tentativi di tradurre questo progetto fallirono perché il linguaggio informatico non disponeva delle giuste "mosse" (in particolare, non poteva gestire la definizione simultanea del righello e delle regole di vicinanza). I traduttori dovevano dire: "Assumiamo che questa mossa esista", il che è barare in matematica.
- La Soluzione: Cubical Agda è un robot più nuovo e intelligente che nativamente comprende queste mosse complesse. Permette all'autore di scrivere il progetto esattamente come è stato progettato, senza barare.
Cosa è Accaduto Durante la Traduzione?
La tesi non riguarda solo la digitazione del codice; riguarda ciò che è accaduto quando l'autore ha cercato di far comprendere la matematica al computer. La rigidità del computer ha costretto l'autore a trovare lacune nascoste nella spiegazione originale:
- La Mappa "Alternativa": Il libro originale descriveva come verificare se due punti sono vicini. Ma quando l'autore ha cercato di scrivere il codice, ha realizzato che il metodo del libro era come un "senso unico". Si potevano provare i punti vicini, ma non si poteva facilmente lavorare all'indietro per vedere perché. L'autore ha dovuto costruire una seconda mappa "computazionale" (chiamata relazione alternativa) che agisce come una retromarcia, permettendo al computer di calcolare effettivamente la risposta.
- L'Ingrediente Mancante: Il libro descriveva una regola per costruire funzioni (come la moltiplicazione) come se il computer potesse "ricordare" l'elenco originale delle approssimazioni. La prima versione del codice dell'autore aveva dimenticato questa memoria. Il computer l'ha respinta. L'autore ha dovuto riscrivere la regola per trasportare esplicitamente la memoria lungo il percorso, rendendosi conto che il testo originale era stato troppo vago per una macchina.
- Il Puzzle a Variabili Multiple: Il libro accennava che le regole per i singoli numeri potevano essere facilmente applicate a coppie o terzine di numeri. Il computer non ne era convinto. L'autore ha dovuto dimostrare un nuovo lemma specifico che mostrava che, se una regola funziona per una variabile, funziona anche per due, a condizione che vengano controllate una alla volta.
Il Risultato
Il prodotto finale è una vasta libreria di codice open-source (oltre 13.000 righe) che dimostra che i reali del libro HoTT funzionano perfettamente.
- Dimostra che questi numeri formano un campo ordinato completo (si possono aggiungere, sottrarre, moltiplicare, dividere e confrontare).
- Dimostra che il righello è "Archimedeo" (il che significa che non importa quanto piccolo sia un intervallo, si può sempre trovare una frazione che ci sta dentro).
- Soprattutto, fa tutto questo senza barare. Il computer ha controllato ogni singolo passaggio e il codice funziona senza alcuna "assunzione magica".
In Sintesi
Questa tesi è la storia di come un'idea matematica alta e bella sia stata portata a sopravvivere nel mondo rigoroso e letterale della verifica informatica. Facendo ciò, l'autore non ha solo costruito un righello digitale; ha lucidato lo stesso progetto, rivelando dettagli nascosti e rendendo la teoria più forte e precisa di quanto non fosse prima. Il codice è ora disponibile per chiunque voglia utilizzarlo come una solida base per future scoperte matematiche.
Sommerso dagli articoli nel tuo campo?
Ricevi digest giornalieri degli articoli più recenti corrispondenti alle tue parole chiave di ricerca — con riassunti tecnici, nella tua lingua.