A Logic Programming Language Based on Binding Algebras

  • Authors:
  • Makoto Hamana

  • Affiliations:
  • -

  • Venue:
  • TACS '01 Proceedings of the 4th International Symposium on Theoretical Aspects of Computer Software
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

We give a logic programming language based on Fiore, Plotkin and Turi's binding algebras.In this language, we can use not only first-order terms but also terms involving variable binding.The aim of this language is similar to Nadathur and Miller's 驴Prolog, which can also deal with binding structure by introducing 驴-terms in higher-order logic. But the notion of binding used here is finer in a sense than the usual 驴-binding. We explicitly manage names used for binding and treat 驴-conversion with respect to them. Also an important difference is the form of application related to 脽-conversion, i.e. we only allow the form (M x), where x is a (object) variable, instead of usual application (M N). This notion of binding comes from the semantics of binding by the category of presheaves. We firstly give a type theory which reflects this categorical semantics. Then we proceed along the line of first-order logic programming language, namely, we give a logic of this language, an operational semantics by SLD-resolution and unification algorithm for binding terms.