A logic for reasoning with higher-order abstract syntax

被引:18
|
作者
McDowell, R
Miller, D
机构
关键词
D O I
10.1109/LICS.1997.614968
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
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 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.
引用
收藏
页码:434 / 445
页数:12
相关论文
共 50 条
  • [1] Reasoning with Higher-Order Abstract Syntax and Contexts: A Comparison
    Felty, Amy
    Pientka, Brigitte
    [J]. INTERACTIVE THEOREM PROVING, PROCEEDINGS, 2010, 6172 : 227 - +
  • [2] Hybrid: Reasoning with Higher-Order Abstract Syntax in Coq and Isabelle
    Felty, Amy P.
    [J]. MSFP 2010: PROCEEDINGS OF THE 2010 ACM SIGPLAN WORKSHOP ON MATHEMATICALLY STRUCTURED FUNCTIONAL PROGRAMMING, 2010, : 1 - 1
  • [3] HIGHER-ORDER ABSTRACT SYNTAX
    PFENNING, F
    ELLIOTT, C
    [J]. SIGPLAN NOTICES, 1988, 23 (07): : 199 - 208
  • [4] Focusing and higher-order abstract syntax
    Zeilberger, Noam
    [J]. ACM SIGPLAN NOTICES, 2008, 43 (01) : 359 - 369
  • [5] Focusing and Higher-Order Abstract Syntax
    Zeilberger, Noam
    [J]. POPL'08: PROCEEDINGS OF THE 35TH ANNUAL ACM SIGPLAN-SIGACT SYMPOSIUM ON PRINCIPLES OF PROGRAMMING LANGUAGES, 2008, : 359 - 369
  • [6] Multi-level meta-reasoning with Higher-Order Abstract Syntax
    Momigliano, A
    Ambler, SJ
    [J]. FOUNDATIONS OF SOFTWARE SCIENCE AND COMPUTATION STRUCTURES, PROCEEDINGS, 2003, 2620 : 375 - 391
  • [7] Primitive recursion for higher-order abstract syntax
    Schürmann, C
    Despeyroux, J
    Pfenning, F
    [J]. THEORETICAL COMPUTER SCIENCE, 2001, 266 (1-2) : 1 - 57
  • [8] Higher-Order Abstract Syntax in Isabelle/HOL
    Howe, Douglas J.
    [J]. INTERACTIVE THEOREM PROVING, PROCEEDINGS, 2010, 6172 : 481 - 484
  • [9] Primitive recursion for higher-order abstract syntax
    Despeyroux, J
    Pfenning, F
    Schurmann, C
    [J]. TYPED LAMBDA CALCULI AND APPLICATIONS, 1997, 1210 : 147 - 163
  • [10] Two-Level Hybrid: A System for Reasoning Using Higher-Order Abstract Syntax
    Momigliano, Alberto
    Martin, Alan J.
    Felty, Amy P.
    [J]. ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2008, 196 : 85 - 93