Det är Akstraet. I detta dokument beskrivs kortfattat ett programmeringsspråk, dess genomförande på en mikroprocessor via en kompilator och länkmonter och det mekaniskt kontrollerade beviset på att genomförandet är korrekt. Programmeringsspråket, som kallas Piton, är ett monteringsspråk på hög nivå avsett för verifierade tillämpningar och som målspråk för språkkompilatorer på hög nivå. Det ger exekverade program, rekursiva subrutin samtal och retur, stack baserad parameter passerar, lokala variabler, globala variabler och matriser, en användarsynlig stack för mellanliggande resultat, och sju abstrakta datatyper inklusive heltal, dataadresser, programadresser och subrutinnamn. Piton är formellt specificerat av en tolk skriven för det i beräkningslogiken av Boyer och Moore. Piton har implementerats på FM8502, en allmän mikroprocessor vars gate-nivå design har mekaniskt visat sig genomföra sin maskinkod tolk. Den FM8502 implementationen av Piton är via en funktion i Boyer-Moore logik som kartlägger en Piton initialtillstånd till en FM8502 binär kärnbild. Kompilatorn och länkmonteringen definieras båda som funktioner i logiken. Implementeringen kräver cirka 36K byte och 1400 rader av prettyprinted källkod i Pure Lisp-liknande syntax av logiken. Genomförandet har mekaniskt visat sig vara korrekt. I synnerhet, om en Piton-stat kan köras till färdigställande utan fel, då kan de slutliga värdena för alla globala datastrukturer fastställas från en inspektion av en FM8502 kärnavbildning som erhålls genom att köra kärnavbildningen som produceras av kompilatorn och länkmonteringen. Således kan verifierade Piton program som körs på FM8502 anses ha verifierats ner till grindnivån.
Tidig forskning om kompilatorverifiering utfördes i Boyer-Moore theorem prover med tanke på översättningen av programmeringsspråket Piton REF.
A mechanically verified language implementation
{'venue': 'Journal of Automated Reasoning', 'journal': 'Journal of Automated Reasoning', 'mag_field_of_study': ['Computer Science']}