Krivine realizability for compiler correctness

Guilhem Jaber 1, 2 Nicolas Tabareau 2, 3
2 ASCOLA - Aspect and composition languages
LINA - Laboratoire d'Informatique de Nantes Atlantique, Département informatique - EMN, Inria Rennes – Bretagne Atlantique
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.
Document type :
Conference papers
Workshop LOLA 2010, Syntax and Semantics of Low Level Languages, Jul 2010, Edinburgh, United Kingdom
Liste complète des métadonnées

Cited literature [17 references]  Display  Hide  Download

https://hal.archives-ouvertes.fr/hal-00475210
Contributor : Nicolas Tabareau <>
Submitted on : Wednesday, May 12, 2010 - 1:58:59 PM
Last modification on : Thursday, December 7, 2017 - 1:25:17 AM
Document(s) archivé(s) le : Thursday, December 1, 2016 - 12:36:55 AM

File

lola2010-jaber-tabareau.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-00475210, version 2

Citation

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〉

Share

Metrics

Record views

469

Files downloads

178