Authors
Magnus O Myreen, Scott Owens
Publication date
2014/5
Journal
Journal of Functional Programming
Volume
24
Issue
2-3
Pages
284-315
Publisher
Cambridge University Press
Description
The higher-order logic found in proof assistants such as Coq and various HOL systems provides a convenient setting for the development and verification of functional programs. However, to efficiently run these programs, they must be converted (or ‘extracted’) to functional programs in a programming language such as ML or Haskell. With current techniques, this step, which must be trusted, relates similar looking objects that have very different semantic definitions, such as the set-theoretic model of a logic and the operational semantics of a programming language. In this paper, we show how to increase the trustworthiness of this step with an automated technique. Given a functional program expressed in higher-order logic, our technique provides the corresponding program for a functional language defined with an operational semantics, and it provides a mechanically checked theorem relating the two. This …
Total citations
201420152016201720182019202020212022202320242635131378785
Scholar articles