An algebraic perspective of constraint logic programming

Research output: Contribution to journalReview articlepeer-review

Abstract

We develop a denotational, fully abstract semantics for constraint logic programming (clp) with respect to successful and failed observables. The denotational approach turns out very useful for the definition of new operators on the language as the counterpart of some abstract operations on the denotational domain. In particular, by defining our domain as a cylindric Heyting algebra, we can exploit, to this aim, operations of both cylindric algebras (such as cylindrification), and Heyting algebras (such as implication and negation). The former allows us to generalize the clp language by introducing an explicit hiding operator; the latter allows us to define a notion of negation which extends the classical negation used in logic programming. In particular, we show that our notion subsumes both negation as failure and negation as instantiation.

Original languageEnglish
Pages (from-to)1-38
Number of pages38
JournalJournal of Logic and Computation
Volume7
Issue number1
DOIs
Publication statusPublished - 1 Jan 1997
Externally publishedYes

Keywords

  • Constraint logic programming
  • Cylindric algebras
  • Distributive lattices
  • Heyting negation
  • Negation as instantiation

Fingerprint

Dive into the research topics of 'An algebraic perspective of constraint logic programming'. Together they form a unique fingerprint.

Cite this