TWAM: A Certifying Abstract Machine for Logic Programs
TWAM: A Certifying Abstract Machine for Logic Programs
复制标题
TWAM:逻辑程序的验证抽象机
DOI:
10.1007/978-3-030-03592-1_7
复制
发表时间:
2018
期刊:
影响因子:
--
通讯作者:
Karl Crary
中科院分区:
文献类型:
--
作者:
Rose Bohrer;Karl Crary
Type-preserving (or typed) compilation uses typing derivations to certify correctness properties of compilation. We have designed and implemented a type-preserving compiler for a simply-typed dialect of Prolog we call T-Prolog. The crux of our approach is a new certifying abstract machine which we call the Typed Warren Abstract Machine (TWAM). The TWAM has a dependent type system strong enough to specify the semantics of a logic program in the logical framework LF. We present a soundness metatheorem which constitutes a partial correctness guarantee: well-typed programs implement the logic program specified by their type. This metatheorem justifies our design and implementation of a certifying compiler from T-Prolog to TWAM.