首页> 外文期刊>Science of Computer Programming >Verifying relational properties of functional programs by first-order refinement
【24h】

Verifying relational properties of functional programs by first-order refinement

机译:通过一阶优化来验证功能程序的关系属性

获取原文
           

摘要

Much progress has been made recently on fully automated verification of higher-order functional programs, based on refinement types and higher-order model checking. Most of those verification techniques are, however, based on first-order refinement types, hence unable to verify certain properties of functions (such as the equality of two recursive functions and the monotonicity of a function, which we call relational properties). To relax this limitation, we introduce a restricted form of higher-order refinement types where refinement predicates can refer to functions, and formalize a systematic program transformation to reduce type checking/inference for higher-order refinement types to that for first-order refinement types, so that the latter can be automatically solved by using an existing software model checker. We also prove the soundness of the transformation, and report on implementation and experiments.
机译:最近,基于细化类型和高阶模型检查,在对高阶功能程序进行全自动验证方面取得了很大进展。但是,大多数验证技术都是基于一阶优化类型,因此无法验证函数的某些属性(例如两个递归函数的相等性和函数的单调性,我们称之为关系属性)。为放松此限制,我们引入了一种受限形式的高阶精简类型,其中精炼谓词可以引用函数,并进行系统化的程序转换,以将高阶精炼类型的类型检查/推断减少为一阶精炼类型。 ,因此可以使用现有的软件模型检查器自动解决后者。我们还证明了转换的合理性,并报告了实施和实验。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号