2018
DOI: 10.1007/978-3-319-89884-1_35
|View full text |Cite
|
Sign up to set email alerts
|

A Verified Compiler from Isabelle/HOL to CakeML

Abstract: Many theorem provers can generate functional programs from definitions or proofs. However, this code generation needs to be trusted. Except for the HOL4 system, which has a proof producing code generator for a subset of ML. We go one step further and provide a verified compiler from Isabelle/HOL to CakeML. More precisely we combine a simple proof producing translation of recursion equations in Isabelle/HOL into a deeply embedded term language with a fully verified compilation chain to the target language CakeM… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
24
0
1

Year Published

2018
2018
2021
2021

Publication Types

Select...
5
3

Relationship

1
7

Authors

Journals

citations
Cited by 33 publications
(25 citation statements)
references
References 39 publications
0
24
0
1
Order By: Relevance
“…Examples include the online social media platform and the SAT solver reported in two of this special issue's papers. The framework also supports current work on a verified optimized model checker, as well as an effort to not only extract code, but to extract verified code [7] using the verified CakeML compiler.…”
Section: Overview Of the Contentsmentioning
confidence: 98%
“…Examples include the online social media platform and the SAT solver reported in two of this special issue's papers. The framework also supports current work on a verified optimized model checker, as well as an effort to not only extract code, but to extract verified code [7] using the verified CakeML compiler.…”
Section: Overview Of the Contentsmentioning
confidence: 98%
“…Proof engineering for certified compilers has had applications directly to the languages these compilers are verified in. For example, there are certified compilers both from HOL4 (Myreen and Owens, 2012) and from Isabelle/HOL (Hupel and Nipkow, 2018) to CakeML; it is possible to produce machine code by composing these compilers with the certified CakeML compiler. Both CertiCoq (Anand et al, 2017) and OEuf (Mullen et al, 2018) describe certified compilers for Coq's specification language Gallina.…”
Section: Certified Compilersmentioning
confidence: 99%
“…Most recently, Hupel [HN18] has provided an alternative verified code generator that translates HOL into CakeML, an ML-like functional language with a verified compiler [KMNO14]. CakeML is the only backend for code generation that doesn't have to be trusted, since the CakeML compiler has itself been verified formally.…”
Section: Historymentioning
confidence: 99%