Krivine realizability for compiler correctness - Archive ouverte HAL Access content directly
Conference Papers Year : 2010

Krivine realizability for compiler correctness

Abstract

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
Origin : Files produced by the author(s)
Loading...

Dates and versions

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

Identifiers

  • HAL Id : hal-00475210 , version 2

Cite

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⟩
565 View
209 Download

Share

Gmail Facebook X LinkedIn More