Set constructors in a logic database language

Catriel Beeri, Shamim Naqvi, Oded Shmueli, Shalom Tsur

Research output: Contribution to journalArticlepeer-review

59 Scopus citations

Abstract

LDL-Logical Data Language-is a language developed at MCC. The language supports various extensions of Horn-clause-based programming. In particular, it allows the use of negation, and the use of sets-either in enumerated form or as a result of element grouping. This paper investigates how semantics can be defined for the language. More broadly, it examines the intricacies arising from the introduction of set constructs into a logic-based language. The concept of a model is extended to account for the set constructs. It is shown that a program may have no model, or it may have several incomparable models. A syntactic restriction on programs, called layering, is introduced, and it is shown that, for programs satisfying this restriction that have models, there exists a minimal model that is, in a well-defined sense, preferable to all other models of the program. This model can be constructed bottom-up. Next, conditions guaranteeing that a program has models are presented. Finally, relationships to other language proposals, and relative merits of language constructs, are briefly considered.

Original languageEnglish
Pages (from-to)181-232
Number of pages52
JournalThe Journal of Logic Programming
Volume10
Issue number3-4
DOIs
StatePublished - 1991

Fingerprint

Dive into the research topics of 'Set constructors in a logic database language'. Together they form a unique fingerprint.

Cite this