首页> 外文期刊>Mathematical structures in computer science >A case study in programming coinductive proofs: Howe’s method
【24h】

A case study in programming coinductive proofs: Howe’s method

机译:编程共归证明的案例研究:Howe的方法

获取原文
获取原文并翻译 | 示例

摘要

Bisimulation proofs play a central role in programming languages in establishing rich properties such as contextual equivalence. They are also challenging to mechanize, since they require a combination of inductive and coinductive reasoning on open terms. In this paper, we describe mechanizing the property that similarity in the call-by-name lambda calculus is a pre-congruence using Howe's method in the Beluga formal reasoning system. The development relies on three key ingredients: (1) we give a higher order abstract syntax (HOAS) encoding of lambda terms together with their operational semantics as intrinsically typed terms, thereby avoiding not only the need to deal with binders, renaming and substitutions, but keeping all typing invariants implicit; (2) we take advantage of Beluga's support for representing open terms using built-in contexts and simultaneous substitutions: this allows us to directly state central definitions such as open simulation without resorting to the usual inductive closure operation and to encode very elegantly notoriously painful proofs such as the substitutivity of the Howe relation; (3) we exploit the possibility of reasoning by coinduction in Beluga's reasoning logic. The end result is succinct and elegant, thanks to the high-level abstractions and primitives Beluga provides. We believe that this mechanization is a significant example that illustrates Beluga's strength at mechanizing challenging (co)inductive proofs using HOAS encodings.
机译:双仿真证明在编程语言中建立丰富的属性(如上下文对等)方面起着核心作用。它们还需要机械化,因为它们需要在开放条件下结合归纳推理和共归推理。在本文中,我们描述了机械化的性质,即在Beluga形式推理系统中使用Howe方法,按名字调用的lambda演算中的相似性是预先一致的。开发过程依赖于三个关键要素:(1)我们为lambda术语提供了更高阶的抽象语法(HOAS)编码,并将它们的操作语义作为固有类型的术语,从而不仅避免了处理绑定器,重命名和替换的需要,但保留所有类型不变量的隐式; (2)我们利用Beluga的支持来使用内置上下文和同时替换来表示开放术语:这使我们可以直接陈述诸如开放模拟之类的中心定义,而无需借助通常的归纳闭包运算,并且可以对非常优雅而臭名昭著的证明进行编码例如Howe关系的替代性; (3)我们在Beluga的推理逻辑中探索了通过共归进行推理的可能性。最终的结果是简洁优雅,这要归功于Beluga提供的高级抽象和基元。我们认为,这种机械化是一个重要的例子,说明了Beluga在使用HOAS编码对具有挑战性的(共)归纳证明进行机械化方面的实力。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号