函数程序的可验证转换框架

G. Nadathur
{"title":"函数程序的可验证转换框架","authors":"G. Nadathur","doi":"10.1145/2631172.2631175","DOIUrl":null,"url":null,"abstract":"The compilation of functional programs relies on transformations that simplify their structure while ostensibly preserving their meanings. We argue that the combination of the λProlog language and the Abella interactive theorem-prover provide a natural framework for the verified implementation of such transformations. Underlying this argument is the fact that the transformations are syntax-directed and rule-based, with the important proviso that they pay attention to and also modify the binding structure of programs. The logic of higher-order hereditary Harrop formulas, the HoHH logic for short, is well-suited to formalizing such descriptions especially because of the support it provides for the higher-order representation of syntax. By virtue of the computational interpretation of the HoHH logic embodied in λProlog, these formalizations become implementations of the corresponding transformations. The logic that underlies Abella embeds the HoHH logic and provides a complementary capability for reasoning flexibly and succinctly about the properties of specifications written in the HoHH logic. In this presentation, we will consider typical functional program transformations and show how these twin capabilities can be exploited in their verified implementation; we will especially focus on demonstrating the benefits of a higher-order representation of syntax in both specification and reasoning. We will also discuss an extension to the logic underlying Abella for treating logical relations, a notion that is often needed in semantics preservation arguments.","PeriodicalId":262518,"journal":{"name":"International Workshop on Logical Frameworks and Meta-Languages: Theory and Practice","volume":"76 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-07-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"A Framework for the Verified Transformation of Functional Programs\",\"authors\":\"G. Nadathur\",\"doi\":\"10.1145/2631172.2631175\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The compilation of functional programs relies on transformations that simplify their structure while ostensibly preserving their meanings. We argue that the combination of the λProlog language and the Abella interactive theorem-prover provide a natural framework for the verified implementation of such transformations. Underlying this argument is the fact that the transformations are syntax-directed and rule-based, with the important proviso that they pay attention to and also modify the binding structure of programs. The logic of higher-order hereditary Harrop formulas, the HoHH logic for short, is well-suited to formalizing such descriptions especially because of the support it provides for the higher-order representation of syntax. By virtue of the computational interpretation of the HoHH logic embodied in λProlog, these formalizations become implementations of the corresponding transformations. The logic that underlies Abella embeds the HoHH logic and provides a complementary capability for reasoning flexibly and succinctly about the properties of specifications written in the HoHH logic. In this presentation, we will consider typical functional program transformations and show how these twin capabilities can be exploited in their verified implementation; we will especially focus on demonstrating the benefits of a higher-order representation of syntax in both specification and reasoning. We will also discuss an extension to the logic underlying Abella for treating logical relations, a notion that is often needed in semantics preservation arguments.\",\"PeriodicalId\":262518,\"journal\":{\"name\":\"International Workshop on Logical Frameworks and Meta-Languages: Theory and Practice\",\"volume\":\"76 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2014-07-17\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"International Workshop on Logical Frameworks and Meta-Languages: Theory and Practice\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/2631172.2631175\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Workshop on Logical Frameworks and Meta-Languages: Theory and Practice","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2631172.2631175","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

函数式程序的编译依赖于简化其结构而表面上保留其含义的转换。我们认为λProlog语言和Abella交互式定理证明器的结合为这种转换的验证实现提供了一个自然的框架。这个论点的基础是这样一个事实,即转换是指向语法和基于规则的,具有重要的附带条件,即它们注意并修改程序的绑定结构。高阶遗传Harrop公式的逻辑(简称HoHH逻辑)非常适合形式化这种描述,特别是因为它为语法的高阶表示提供了支持。通过λProlog中包含的HoHH逻辑的计算解释,这些形式化成为相应转换的实现。Abella的底层逻辑嵌入了HoHH逻辑,并提供了一种补充能力,可以灵活而简洁地推理用HoHH逻辑编写的规范的属性。在本次演讲中,我们将考虑典型的功能程序转换,并展示如何在经过验证的实现中利用这些双重功能;我们将特别着重于演示高阶语法表示在规范和推理方面的好处。我们还将讨论对Abella底层逻辑的扩展,用于处理逻辑关系,这是语义保存论证中经常需要的概念。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
A Framework for the Verified Transformation of Functional Programs
The compilation of functional programs relies on transformations that simplify their structure while ostensibly preserving their meanings. We argue that the combination of the λProlog language and the Abella interactive theorem-prover provide a natural framework for the verified implementation of such transformations. Underlying this argument is the fact that the transformations are syntax-directed and rule-based, with the important proviso that they pay attention to and also modify the binding structure of programs. The logic of higher-order hereditary Harrop formulas, the HoHH logic for short, is well-suited to formalizing such descriptions especially because of the support it provides for the higher-order representation of syntax. By virtue of the computational interpretation of the HoHH logic embodied in λProlog, these formalizations become implementations of the corresponding transformations. The logic that underlies Abella embeds the HoHH logic and provides a complementary capability for reasoning flexibly and succinctly about the properties of specifications written in the HoHH logic. In this presentation, we will consider typical functional program transformations and show how these twin capabilities can be exploited in their verified implementation; we will especially focus on demonstrating the benefits of a higher-order representation of syntax in both specification and reasoning. We will also discuss an extension to the logic underlying Abella for treating logical relations, a notion that is often needed in semantics preservation arguments.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信