Come molte persone, sono un appassionato utente di software matematico come Mathematica e Maple. Tuttavia, sono sempre più frustrato dai molti casi in cui tale software ti dà semplicemente la risposta sbagliata senza preavviso. Ciò può verificarsi durante l'esecuzione di tutti i tipi di operazioni da semplici somme di ottimizzazione tra molti altri esempi.
Mi chiedevo cosa si potesse fare per questo grave problema. Ciò che è necessario è un modo per consentire all'utente di verificare la correttezza di una risposta che viene data in modo che abbiano una certa fiducia in ciò che gli viene detto. Se dovessi ottenere una soluzione da un collega di matematica, potrebbe semplicemente sedersi e mostrarti il loro lavoro. Tuttavia, ciò non è fattibile per un computer nella maggior parte dei casi. Il computer potrebbe invece darti una testimonianza semplice e facilmente verificabile della correttezza della loro risposta? Il controllo potrebbe essere necessario da parte del computer, ma speriamo che controllare l'algoritmo di controllo sia molto più semplice che controllare l'algoritmo per produrre il testimone in primo luogo. Quando sarebbe possibile e come esattamente questo potrebbe essere formalizzato
Quindi, in sintesi, la mia domanda è la seguente.
Potrebbe essere possibile almeno in teoria per il software matematico fornire una breve prova verificabile insieme alla risposta che hai chiesto?
Un caso banale in cui possiamo farlo immediatamente è per la fattorizzazione di numeri interi o di molti dei classici problemi NP completi (ad esempio circuito Hamiltoniano, ecc.).