Chiarimento del documento funzionale Python

4

Sto rileggendo questo link documento e prendo nota di questa riga,

'... Sfortunatamente, provare i programmi corretti è in gran parte poco pratico e non rilevante per il software Python. Persino i programmi banali richiedono prove lunghe diverse pagine; la dimostrazione di correttezza per un programma moderatamente complicato sarebbe enorme, e pochi o nessuno dei programmi che usi quotidianamente ( l'interprete Python , il tuo parser XML, il tuo browser web) potrebbero essere dimostrati corretti. Anche se annotassi o generassi una prova, ci sarebbe allora la questione di verificare la prova; forse c'è un errore e credete erroneamente di aver provato il programma corretto.

/ Enfasi mine sulla parte dell'interprete Python /

Che cosa significa che l'interprete Python non può essere dimostrato corretto? È perché sarebbe una prova lunga o che in linea di principio non può essere dimostrato corretto, ala Godel come teorema? Sta usando l'Interprete quindi una finzione utile che per tutto il tempo che la usiamo, potrebbe essere sbagliata per tutto il tempo, e cosa sarebbe sbagliato? Voglio dire, l'interprete mi ha dato risposte corrette sull'aritmetica integrale, finora ...

Chiarimento molto apprezzato.

    
posta Edgar Aroutiounian 18.09.2013 - 17:16
fonte

1 risposta

3

Può essere fatto (teoricamente) ma avresti bisogno di una specifica formale completa del linguaggio Python e degli interni dell'interprete Python. Dopodiché dovrai dimostrare che l'implementazione corrisponde alle specifiche e dovresti dimostrare che la specifica aderisce a tutte le proprietà desiderate (ad esempio, tutte le possibili esecuzioni si comportano in determinati modi).

Come puoi vedere, è un compito enorme e non pratico. Implica anche l'aggiornamento delle specifiche con ogni commit, patch o modifica della configurazione relativa all'interprete. Quindi, quando avrai finalmente dimostrato che una versione dell'interprete Python è corretta, sarebbe già obsoleta.

    
risposta data 18.09.2013 - 17:57
fonte

Leggi altre domande sui tag