Total Haskell is reasonable Coq
Total Haskell is reasonable Coq
复制标题
DOI:
10.1145/3167092
复制
发表时间:
2017-11
期刊:
影响因子:
--
通讯作者:
Antal Spector-Zabusky;Joachim Breitner;C. Rizkallah;Stephanie Weirich
中科院分区:
文献类型:
--
作者:
Antal Spector-Zabusky;Joachim Breitner;C. Rizkallah;Stephanie Weirich
We would like to use the Coq proof assistant to mechanically verify properties of Haskell programs. To that end, we present a tool, named hs-to-coq, that translates total Haskell programs into Coq programs via a shallow embedding. We apply our tool in three case studies – a lawful Monad instance, “Hutton’s razor”, and an existing data structure library – and prove their correctness. These examples show that this approach is viable: both that hs-to-coq applies to existing Haskell code, and that the output it produces is amenable to verification.