【24h】

HALO: Haskell to Logic through Denotational Semantics

机译:光晕:Haskell通过指称语义学走向逻辑

获取原文

摘要

Even well-typed programs can go wrong in modern functional languages, by encountering a pattern-match failure, or simply returning the wrong answer. An increasingly-popular response is to allow programmers to write contracts that express semantic properties, such as crash-freedom or some useful post-condition. We study the static verification of such contracts. Our main contribution is a novel translation to first-order logic of both Haskell programs, and contracts written in Haskell, all justified by denotational semantics. This translation enables us to prove that functions satisfy their contracts using an off-the-shelf first-order logic theorem prover.
机译:在现代功能语言中,即使类型正确的程序也可能会出错,因为它会遇到模式匹配失败,或者只是返回错误的答案。越来越流行的响应是允许程序员编写表达语义属性(例如,无崩溃或某些有用的后置条件)的合同。我们研究了此类合同的静态验证。我们的主要贡献是对Haskell程序和用Haskell编写的合同的一阶逻辑进行了新颖的翻译,所有这些都通过指称语义加以证明。这种转换使我们能够使用现成的一阶逻辑定理证明器来证明函数满足其契约。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号