{"title":"经典高阶逻辑中的高阶抽象语法","authors":"Douglas J. Howe","doi":"10.1145/1577824.1577826","DOIUrl":null,"url":null,"abstract":"Higher-Order Abstract Syntax, or HOAS, is a technique for using a higher-order logic as a metalanguage for an object language with binding operators. It avoids formalizing syntactic details related to variable binding. This paper gives an extension to classical higher-order logic that supports HOAS. The logic we work with is the core of the logics employed in the widely used systems HOL and Isabelle/HOL. The extension adds recursive types, and a new type constructor for parametric functions. Using these additions, we can solve, for example, the archetypal recursive type equation for a HOAS representation of the syntax of the untyped lambda-calculus: T = (T x T) + (T ↪ T), where the function type is the new parametric one. The usual HOAS induction principles can be derived. The bulk of the technical development in the paper is a semantics of the new logic, extending the usual set-theoretic semantics of classical higher-order logic.","PeriodicalId":262518,"journal":{"name":"International Workshop on Logical Frameworks and Meta-Languages: Theory and Practice","volume":"18 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2009-08-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":"{\"title\":\"Higher-order abstract syntax in classical higher-order logic\",\"authors\":\"Douglas J. Howe\",\"doi\":\"10.1145/1577824.1577826\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Higher-Order Abstract Syntax, or HOAS, is a technique for using a higher-order logic as a metalanguage for an object language with binding operators. It avoids formalizing syntactic details related to variable binding. This paper gives an extension to classical higher-order logic that supports HOAS. The logic we work with is the core of the logics employed in the widely used systems HOL and Isabelle/HOL. The extension adds recursive types, and a new type constructor for parametric functions. Using these additions, we can solve, for example, the archetypal recursive type equation for a HOAS representation of the syntax of the untyped lambda-calculus: T = (T x T) + (T ↪ T), where the function type is the new parametric one. The usual HOAS induction principles can be derived. The bulk of the technical development in the paper is a semantics of the new logic, extending the usual set-theoretic semantics of classical higher-order logic.\",\"PeriodicalId\":262518,\"journal\":{\"name\":\"International Workshop on Logical Frameworks and Meta-Languages: Theory and Practice\",\"volume\":\"18 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2009-08-02\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"4\",\"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/1577824.1577826\",\"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/1577824.1577826","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4
摘要
高阶抽象语法(HOAS)是一种使用高阶逻辑作为具有绑定操作符的对象语言的元语言的技术。它避免形式化与变量绑定相关的语法细节。本文给出了支持HOAS的经典高阶逻辑的一个扩展。我们使用的逻辑是广泛使用的系统HOL和Isabelle/HOL中使用的逻辑的核心。该扩展增加了递归类型,并为参数函数添加了一个新的类型构造函数。使用这些补充,我们可以求解,例如,一个HOAS表示的无类型lambda演算语法的原型递归类型方程:T = (T x T) + (T“previous T”),其中函数类型是新的参数类型。可以推导出通常的HOAS归纳原理。本文的大部分技术发展是新逻辑的语义,扩展了经典高阶逻辑的常用集合论语义。
Higher-order abstract syntax in classical higher-order logic
Higher-Order Abstract Syntax, or HOAS, is a technique for using a higher-order logic as a metalanguage for an object language with binding operators. It avoids formalizing syntactic details related to variable binding. This paper gives an extension to classical higher-order logic that supports HOAS. The logic we work with is the core of the logics employed in the widely used systems HOL and Isabelle/HOL. The extension adds recursive types, and a new type constructor for parametric functions. Using these additions, we can solve, for example, the archetypal recursive type equation for a HOAS representation of the syntax of the untyped lambda-calculus: T = (T x T) + (T ↪ T), where the function type is the new parametric one. The usual HOAS induction principles can be derived. The bulk of the technical development in the paper is a semantics of the new logic, extending the usual set-theoretic semantics of classical higher-order logic.