Design patterns for tabled logic programming

Terrance Swift

Research output: Chapter in Book/Report/Conference proceedingConference contribution

1 Scopus citations

Abstract

The use of design patterns is common in many areas of software engineering and programming. While they are informal, patterns provide a repository of solutions to common problems, as well as a survey of the features of a given language or software system. This paper uses design patterns to survey features and applications of Tabled Logic Programming (TLP). Patterns for commonly available features are presented, such as those of various recursion types that arise when tabling is used with definite programs, of automatic tabling and of tabling with DCGs. In addition, various patterns capture well-developed uses of tabled negation for non-monotonic reasoning. A final set of patterns describes the approaches of answer subsumption and tabled constraints, features that have fewer applications to date due to the fact that robust implementations of them have only recently become available.

Original languageEnglish (US)
Title of host publicationApplications of Declarative Programming and Knowledge Management - 18th International Conference, INAP 2009, Revised Selected Papers
Pages1-19
Number of pages19
DOIs
StatePublished - 2011
Externally publishedYes
Event18th International Conference on Applications of Declarative Programming and Knowledge Management, INAP 2009 - Evora, Portugal
Duration: Nov 3 2009Nov 5 2009

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume6547 LNAI
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Other

Other18th International Conference on Applications of Declarative Programming and Knowledge Management, INAP 2009
Country/TerritoryPortugal
CityEvora
Period11/3/0911/5/09

ASJC Scopus subject areas

  • Theoretical Computer Science
  • General Computer Science

Fingerprint

Dive into the research topics of 'Design patterns for tabled logic programming'. Together they form a unique fingerprint.

Cite this