A logic for reasoning with higher-order abstract syntax

R. McDowell, D. Miller
{"title":"A logic for reasoning with higher-order abstract syntax","authors":"R. McDowell, D. Miller","doi":"10.1109/LICS.1997.614968","DOIUrl":null,"url":null,"abstract":"Logical frameworks based on intuitionistic or linear logics with higher-type quantification have been successfully used to give high-level, modular, and formal specifications of many important judgments in the area of programming languages and inference systems. Given such specifications, it is natural to consider proving properties about the specified systems in the framework: for example, given the specification of evaluation for a functional programming language, prove that the language is deterministic or that the subject-reduction theorem holds. One challenge in developing a framework for such reasoning is that higher-order abstract syntax (HOAS), an elegant and declarative treatment of object-level abstraction and substitution, is difficult to treat in proofs involving induction. In this paper we present a meta-logic that can be used to reason about judgments coded using HOAS; this meta-logic is an extension of a simple intuitionistic logic that admits higher-order quantification over simply typed /spl lambda/-terms (key ingredients for HOAS) as well as induction and a notion of definition. The latter concept of a definition is a proof-theoretic device that allows certain theories to be treated as \"closed\" or as defining fixed points. The resulting meta-logic can specify various logical frameworks and a large range of judgments regarding programming languages and inference systems. We illustrate this point through examples, including the admissibility of cut for a simple logic and subject reduction, determinacy of evaluation, and the equivalence of SOS and natural semantics presentations of evaluation for a simple functional programming language.","PeriodicalId":272903,"journal":{"name":"Proceedings of Twelfth Annual IEEE Symposium on Logic in Computer Science","volume":"40 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1997-06-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"67","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of Twelfth Annual IEEE Symposium on Logic in Computer Science","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/LICS.1997.614968","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 67

Abstract

Logical frameworks based on intuitionistic or linear logics with higher-type quantification have been successfully used to give high-level, modular, and formal specifications of many important judgments in the area of programming languages and inference systems. Given such specifications, it is natural to consider proving properties about the specified systems in the framework: for example, given the specification of evaluation for a functional programming language, prove that the language is deterministic or that the subject-reduction theorem holds. One challenge in developing a framework for such reasoning is that higher-order abstract syntax (HOAS), an elegant and declarative treatment of object-level abstraction and substitution, is difficult to treat in proofs involving induction. In this paper we present a meta-logic that can be used to reason about judgments coded using HOAS; this meta-logic is an extension of a simple intuitionistic logic that admits higher-order quantification over simply typed /spl lambda/-terms (key ingredients for HOAS) as well as induction and a notion of definition. The latter concept of a definition is a proof-theoretic device that allows certain theories to be treated as "closed" or as defining fixed points. The resulting meta-logic can specify various logical frameworks and a large range of judgments regarding programming languages and inference systems. We illustrate this point through examples, including the admissibility of cut for a simple logic and subject reduction, determinacy of evaluation, and the equivalence of SOS and natural semantics presentations of evaluation for a simple functional programming language.
用高阶抽象语法进行推理的逻辑
基于具有更高类型量化的直觉逻辑或线性逻辑的逻辑框架已经成功地用于编程语言和推理系统领域的许多重要判断的高级、模块化和形式化规范。给定这样的规范,考虑证明框架中指定系统的属性是很自然的:例如,给定函数式编程语言的求值规范,证明该语言是确定性的或主体约简定理成立。开发这种推理框架的一个挑战是,高阶抽象语法(HOAS)是对对象级抽象和替换的一种优雅的声明性处理,在涉及归纳法的证明中很难处理。在本文中,我们提出了一个元逻辑,可以用来对使用HOAS编码的判断进行推理;这个元逻辑是简单直觉逻辑的扩展,它允许对简单类型/spl lambda/-项(HOAS的关键成分)以及归纳和定义概念进行高阶量化。定义的后一个概念是一种证明理论的手段,它允许某些理论被视为“封闭的”或定义不动点。由此产生的元逻辑可以指定关于编程语言和推理系统的各种逻辑框架和大范围的判断。我们通过例子来说明这一点,包括简单逻辑的割的可接受性和主题约简,评估的确定性,以及简单函数式编程语言评估的SOS和自然语义表示的等价性。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
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学术文献互助群
群 号:481959085
Book学术官方微信