Computer algebra systems are a great help for mathematical research but sometimes unexpected errors in the software can also badly affect it. As an example, we show how we have detected an error of Mathematica computing determinants of matrices of integer numbers: not only it computes the determinants wrongly, but also it produces different results if one evaluates the same determinant twice.
academic
Disgrazie di un trio di matematici che utilizzano Sistemi di Algebra Computazionale: Possiamo fidarci?
I sistemi di algebra computazionale forniscono un grande aiuto alla ricerca matematica, ma gli errori inaspettati nel software a volte possono influenzare gravemente la ricerca. Come esempio, gli autori mostrano come hanno rilevato un errore in Mathematica nel calcolo del determinante di matrici intere: non solo calcola erroneamente il determinante, ma il calcolo dello stesso determinante due volte produce risultati diversi.
Problema da risolvere: Gli autori hanno scoperto errori gravi nel software Mathematica durante il calcolo di determinanti di matrici con interi grandi durante la ricerca matematica, inclusi risultati di calcolo errati e il problema della produzione di risultati diversi per lo stesso calcolo.
Importanza del problema:
I matematici dipendono sempre più dai sistemi di algebra computazionale per la ricerca
I risultati di calcolo errati possono portare a conclusioni matematiche errate
Il calcolo con interi grandi ha importanti applicazioni in campi come la crittografia
Limitazioni dei metodi esistenti:
I sistemi di algebra computazionale commerciali sono "scatole nere" con algoritmi non trasparenti
Gli errori noti di solito non vengono divulgati agli utenti
È difficile applicare tecniche moderne di verifica del software
Motivazione della ricerca: Gli autori, durante la ricerca dell'estensione dei risultati di Karlin e Szegő sui polinomi ortogonali, hanno scoperto che Mathematica e Maple fornivano risultati di calcolo diversi, portando a un'indagine più approfondita che ha rivelato errori sistematici in Mathematica.
Scoperta e segnalazione di gravi errori di calcolo in Mathematica: Produzione di risultati errati nel calcolo del determinante di matrici con interi grandi
Fornitura di un metodo riproducibile per generare errori: Progettazione di un programma casuale per generare matrici che attivano l'errore
Rivelazione della natura non deterministica dell'errore: Il calcolo del determinante della stessa matrice può produrre risultati diversi
Sollevamento di questioni sulla affidabilità dei sistemi di algebra computazionale: Avvio di una discussione importante su come fidarsi di questi sistemi
Gli autori, durante la ricerca del determinante di Casorati di polinomi ortogonali:
detPf1(ak)Pf2(ak)⋮Pfl(ak)Pf1(ak+1)Pf2(ak+1)⋮Pfl(ak+1)⋯⋯⋱⋯Pf1(ak+l)Pf2(ak+l)⋮Pfl(ak+l)
Utilizzando interi per costruire tutti gli esempi al fine di evitare problemi di numeri in virgola mobile, hanno scoperto che Mathematica e Maple fornivano risultati diversi.
Gli autori hanno segnalato l'errore a Wolfram Research il 7 ottobre 2013 (numero di caso: CASE:303438), ricevendo una risposta di conferma, ma il problema non è stato risolto nelle versioni successive.
Problemi di Affidabilità: Anche il calcolo simbolico (operazioni su interi) nei sistemi di algebra computazionale può produrre errori
Portata dell'Impatto: Gli errori nel calcolo con interi grandi influenzano non solo la matematica teorica, ma anche campi applicativi come la crittografia
Problema Sistematico: La natura "scatola nera" del software commerciale rende difficile prevedere e evitare errori
L'articolo cita le seguenti letterature importanti:
Karlin & Szegő (1960/1961) - Ricerca originale sui determinanti di polinomi ortogonali
Appel & Haken (1977) - Prova assistita da computer del problema dei quattro colori
Hales (2005) - Prova della congettura di Keplero
Ciaurri & Varona (2006) - Ricerca iniziale sull'affidabilità dei calcoli informatici
Sebbene questo articolo sia di breve lunghezza, rivela un problema importante: anche il calcolo simbolico apparentemente affidabile può contenere errori sistematici. Ci ricorda che quando dipendiam da computer per la ricerca matematica, dobbiamo mantenere cautela e sottolinea l'importanza della verifica del software e della trasparenza.