×

Set constructors in a logic database language. (English) Zbl 0724.68016

Summary: \({\mathcal L}{\mathcal D}{\mathcal L}\)- 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. 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.

MSC:

68N17 Logic programming
68P15 Database theory
68Q55 Semantics in the theory of computing
68T99 Artificial intelligence
Full Text: DOI