A framework for defining logics
Journal of the ACM (JACM)
Introduction to HOL: a theorem proving environment for higher order logic
Introduction to HOL: a theorem proving environment for higher order logic
Higher-Order Abstract Syntax in Coq
TLCA '95 Proceedings of the Second International Conference on Typed Lambda Calculi and Applications
Combining Higher Order Abstract Syntax with Tactical Theorem Proving and (Co)Induction
TPHOLs '02 Proceedings of the 15th International Conference on Theorem Proving in Higher Order Logics
PVS: A Prototype Verification System
CADE-11 Proceedings of the 11th International Conference on Automated Deduction: Automated Deduction
Nominal logic, a first order theory of names and binding
Information and Computation - TACS 2001
Consistency of the theory of contexts
Journal of Functional Programming
Boxes go bananas: Encoding higher-order abstract syntax with parametric polymorphism*
Journal of Functional Programming
Isabelle/HOL: a proof assistant for higher-order logic
Isabelle/HOL: a proof assistant for higher-order logic
Mechanized metatheory for the masses: the PoplMark challenge
TPHOLs'05 Proceedings of the 18th international conference on Theorem Proving in Higher Order Logics
Nominal techniques in Isabelle/HOL
CADE' 20 Proceedings of the 20th international conference on Automated Deduction
Higher-Order abstract syntax in Isabelle/HOL
ITP'10 Proceedings of the First international conference on Interactive Theorem Proving
Hi-index | 0.00 |
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.