Krivine realizability for compiler correctness - Archive ouverte HAL
Communication Dans Un Congrès Année : 2010

Krivine realizability for compiler correctness

Résumé

We propose a semantic type soundness result, formalized in the Coq proof assistant, for a compiler from a simple functional language to SECD machine code. Our result is quite independent from the source language as it uses Krivine's realizability to give a denotational semantics to SECD machine code using only the type system of the source language. We use realizability to prove the correctness of both a call-by-name (CBN) and a call-by-value (CBV) compiler with the same notion of orthogonality. We abstract over the notion of observation (e.g. divergence or termination) and derive an operational correctness result that relates the reduction of a term with the execution of its compiled SECD machine code.
Fichier principal
Vignette du fichier
lola2010-jaber-tabareau.pdf (205.34 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-00475210 , version 1 (21-04-2010)
hal-00475210 , version 2 (12-05-2010)

Identifiants

  • HAL Id : hal-00475210 , version 2

Citer

Guilhem Jaber, Nicolas Tabareau. Krivine realizability for compiler correctness. Workshop LOLA 2010, Syntax and Semantics of Low Level Languages, Jul 2010, Edinburgh, United Kingdom. ⟨hal-00475210v2⟩
611 Consultations
236 Téléchargements

Partager

More