Proof-producing synthesis of ML from higher-order logic
Proof-producing synthesis of ML from higher-order logic
复制标题
从高阶逻辑对 ML 进行证明综合
DOI:
10.1145/2364527.2364545
复制
发表时间:
2012
期刊:
影响因子:
--
通讯作者:
Myreen M
中科院分区:
文献类型:
--
作者:
Myreen M
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 pure 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 theorem can then be used to transfer verified properties of the logical function to the program.We have implemented our technique in the HOL4 theorem prover, translating functions to a core subset of Standard ML, and have applied it to examples including functional data structures, a parser generator, cryptographic algorithms, and a garbage collector.
登录
查看更多内容
DOI:
--
发表时间:
2010
期刊:
ACM-SIGACT Symposium on Principles of Programming Languages
影响因子:
--
作者:
A. Chlipala
通讯作者:
A. Chlipala
DOI:
--
发表时间:
2003
期刊:
J. Log. Algebraic Methods Program.
影响因子:
--
作者:
Joe Hurd
通讯作者:
Joe Hurd
DOI:
--
发表时间:
2008
期刊:
High. Order Symb. Comput.
影响因子:
--
作者:
Scott Owens;Konrad Slind
通讯作者:
Konrad Slind
DOI:
--
发表时间:
2009
期刊:
影响因子:
--
作者:
M. Felleisen;R. Findler;M. Flatt
通讯作者:
M. Flatt
DOI:
--
发表时间:
2002
期刊:
Computer/law journal
影响因子:
--
作者:
Michael Norrish;Konrad Slind
通讯作者:
Konrad Slind