| Beeri, C., Naqvi, S., Shmueli, O., and Tsur., S. Set Constructors in a Logic Database Language. Journal of Logic Programming 10, 3 (1991), 181-232. |
....language LISP, and list predicates, such as member and append, are among the rst predicates that are taught to students in logic programming language courses. Sets are the main data structure used in speci cation languages (e.g. in Z [26] and in high level declarative programming languages [5, 13, 19, 17]; but also imperative programming languages may take advantage from the set data abstraction (e.g. SETL [27] Multisets (often called bags in the literature) emerge as the most natural data structure in several interesting applications. For instance, solutions to the equation x 2x 1 = 0 ....
C. Beeri, S. Naqvi, O. Shmueli, and S. Tsur. Set Constructors in a Logic Database Language. Journal of Logic Programming 10, 3 (1991), 181-232.
....hereditarily finite sets. Hybrid means that they can involve free Herbrand functors, i.e. distinct from the set constructor and the emptyset symbol ; In the literature two main approaches have been adopted for the (extensional) representation of sets: ACI terms [2, 5, 21] and list like terms [4, 15, 7, 13]. Each has advantages and disadvantages over the other. Regarding operations on sets, they include primarily the ability to compare sets. This, when considering the most general case of non ground and partially specified sets, amounts to solving a (non trivial) set unification problem [2, 7, 1, ....
....equational theory T. There are three main ways of representing sets as terms: ffl using the binary union symbol [ as the set constructor, as done, for instance, in [2, 5, 21] ffl using the binary element insertion operator f Delta j Deltag as the set constructor, as done, for instance, in [4, 15, 7, 13]; A few other proposals for logic programming with sets can be hardly classified as following one of these approaches. In CLPS [19] all three approaches appear viable, as no choice is explicitly made. In [12] instead, sets are intended as subsets of a finite domain D of objects. At the ....
[Article contains additional citation context not shown here]
C. Beeri, S. Naqvi, O. Shmueli, and S. Tsur. Set Constructors in a Logic Database Language. J. of Logic Programming, 10(3):181--232, 1991.
....of a constraint. A third approach allows set descriptions of the form fX ;Yg (also called set terms) where X and Y are variables denoting elements, and provide an associative, commutative, and idempotent unification procedure. This is the approach of systems like CLPS [14] flogg [5] and others [2, 13, 28]. Yet different approaches allow set comprehensions like fx j p(x)g with an intensional semantics [4] or consider non standard set domains for interpretation of cyclic set descriptions like X = fX ; fXgg [16] In comparison with its closest relatives CONJUNTO and ILOG SOLVER, our set constraint ....
C. Beeri, S. Nagvi, O. Shmueli, and S. Tsur. Set Constructors in a Logic Database Language. The Journal of Logic Programming, pages 181--232, 1991.
....This manuscript is available as Technical Report TR 94 030, Department of Computer Science, SUNYBuffalo, August 1994. 1 Introduction The use of sets has been advocated by several authors in the literature on logic programming ( DOPR91] Jay92] JP89] Kup90] and deductive databases ( AG91] [BNST91], NT89] In studying the inclusion of sets in logic programs, it is natural to study finite sets at first. A representation often chosen for finite sets is that of scons, parallel to the list constructor cons. The use of this constructor for declarative programming can be traced back to [MW85] ....
....development. In comparison with both these works, the main contribution of our work is that we provide a rigorous justification that our axioms are both plausible and sufficient to capture the notion of finite sets. Finally, we note that our work differs fundamentally in objectives from those of [AG91, BNST91, Kup90] in that we are interested in establishing logical foundations that will facilitate giving logical consequence semantics, whereas the above works are primarily interested in model theoretic semantics. 19 Acknowledgments This research was supported by grant CCR 9004357 from the National Science ....
Beeri, C., Naqvi, S., Shmueli, O., and Tsur, S.: Set Constructors in a Logic Database Language, Jnl. Logic Programming, 1991:10:181--232.
....that is, unification under associativity, commutativity, and idempotence. This approach, however, limits the kind of sets that can be represented to be flat sets. The listlike representation used in this paper (and in most papers dealing with sets in logic programming languages, such as [Kup90, BNST91, DOPR96, HL91, JP89]) on the contrary, naturally accommodates for nested sets (such as #, a, # ) 3 On the other hand, the # based representation allows us to write set terms that cannot be directly expressed using a listlike representation, for instance, the term X # a # Y . The listlike ....
C. Beeri, S. Naqvi, O. Shmueli, and S. Tsur. Set constructors in a logic database language. Journal of Logic Programming, 10(3):181--232, 1991.
....but also for the support of solving methods. This has been convincingly argued in [Bee88] and is demonstrated by the long life and renewed vitality of the imperative set based programming language described in [SDDS86] SETL. In recent years, the theme of embedding sets, either flat (cf. [BNST91]) or nested (cf. DOPR92, DR93, Leg93] in a logic programming language has been tackled by quite a number of articles. Accordingly, symbolic techniques regarding sets have been combined with the usual evaluation mechanisms of Datalog and of (constraint) logic programming. One can judge from ....
C. Beeri, S. Naqvi, O. Shmueli, and S. Tsur. Set constructors in a logic database language. J. of Logic Programming, pages 181--232, 1991.
....process is shown to be correct, complete, and always terminating. A number of possible future developments are also pointed out. 1 Introduction A number of di erent proposals have been put forward in the area of the integration between logic based programming paradigms and set theory (e.g. [1, 5, 8, 11, 12]) Most of them, however, limit their expressivity to extensional sets. In the practice of mathematics, only seldom a set S is denoted extensionally, that is by enumeration of its elements. Much more often, one provides a condition that is necessary and sucient for an element X to belong to S. ....
....dovier dimi.uniud.it 1 semantical characterization (an attempt to provide such a characterization can be found in [4] Intensional sets are supplied also by G odel, still, however, with little attention to semantics. Cleaner characterizations of intensional sets are provided by LDL (cf. e.g. [1]) Subset assertion Programming (cf. e.g. 10] and flogg [5] all of them using di erent approaches for embedding intensional sets in the language. However, all these proposals do not consider the case that intensional set formers represent in nite sets, though they do not exclude the ....
[Article contains additional citation context not shown here]
C. Beeri, S. Naqvi, O. Shmueli, and S. Tsur. Set Constructors in a Logic Database Language. Journal of Logic Programming, 10(3):181-232, 1991.
....in providing the suitable high level data abstractions required to make the language a vehicle for rapid experimentation with algorithms and program design. Attention to sets has also emerged in the area of database languages, and more speci cally in the context of deductive databases (e.g. LDL [Beeri et al. 1991], COL [Abiteboul and Grumbach. 1991] RelationLog [Liu 1995] and non rst normal form database models [Makinouchi 1977] where sets have been advocated as the most appropriate abstraction to deal with nested relations, complex and incomplete objects. More recently, various general purpose ....
....fa; b; cg and sets described through the use of properties and or characteristic functions (intensional sets) e.g. fX : X ]g. In this paper we restrict our attention to extensional sets. The problems implied by the introduction of intensional sets have been addressed in other related works [Beeri et al. 1991]. It is well accepted that this problem is strongly connected with that of introducing negation in a logic programming language [Apt and Bol 1994] A proposal for using constructive negation to embed intensional sets in a preliminary version of the CLP language described in this paper is presented ....
[Article contains additional citation context not shown here]
Beeri, C., Naqvi, S., Shmueli, O., and Tsur., S. 1991. Set Constructors in a Logic Database Language. Journal of Logic Programming 10, 3, 181-232.
....ACI uni cation, i.e. uni cation under Associativity, Commutativity, and Idempotence. This approach, however, limits the kind of sets that can be represented to be at sets. The listlike representation used in this paper (and in most papers dealing with sets in logic programming languages, such as [25, 11, 18, 22, 24]) on the contrary, naturally accommodates for nested sets (such as f; fa; f;ggg) 3 On the other hand, the [ based representation allows to write set terms that cannot be directly expressed using a list like representation, as for instance the term X [ a [ Y ; the list like representation, in ....
C. Beeri, S. Naqvi, O. Shmueli, and S. Tsur. Set Constructors in a Logic Database Language. Journal of Logic Programming, 10(3):181{ 232, 1991.
....our proposed solutions. 1.1. Subset Logic Programming Our interest in subset logic programming stems from the fact that it provides a declarative and efficient means of working with sets, a feature that has received considerable recent interest in logic programming and deductive databases [2, 4, 5, 15, 16]. While sets are ubiquitous in applications of logical reasoning, practical functional and logic languages (such as ML or Prolog) do not support bona fide sets, apparently due to the difficulty of implementing them efficiently. For example, Prolog s setof actually constructs an ordered list, not a ....
....used on the right hand sides of subset clauses for including an element X in a set T using fXnTg on the right hand sides of subset clauses would result in failure if X 2 T. The fX=Tg constructor has also been advocated by several other researchers in logic programming and deductive databases [4, 5]. In [11] we used a single constructor f g, which meant fXnTg on the left hand sides of clauses, and meant fX Tg on the right hand sides of clauses. We illustrate the use of both constructors in section 2. All functions defined by subset clauses are invoked with ground arguments (possibly ....
C. Beeri, S. Naqvi, O. Shmueli, and S. Tsur, Set Constructors in a Logic Database Language, JLP, 10:181--232, 1991.
....CLP framework. A distinguishing feature of our set constructor fXnTg is that it matches a set S such that X 2 S and T = S Gamma fXg. The ability to form the remainder set T is unique to our approach and is crucial in writing recursive definitions. Other related work includes COL [1] LDL [4] and Relationlog [16] According to [16] neither COL or LDL can give a semantics to a program like: ancestors(X; Y ) parents(X; Z ) ancestors(Z; Y ) A direct translation of this clause into a partial order clause gives us: ancestors(X) ancestors(Z) parents(X) fZ n g: This ....
C. Beeri, S. Naqvi, O. Shmueli, and S. Tsur, Set Constructors in a Logic Database Language, Journal of Logic Programming, 10:181--232, 1991.
....and cannot run using unrestricted quantifications whereas if restricted quantifications are employed, they will execute. 1.3 Collection types in Logic Programming and Deductive Databases In this section we survey three systems that handles collection types. The first system considered is from [5] where it is shown how semantics can be defined for the language LDL (Logical Data Language) and how to introduce set constructs into the language. The collection type in LDL is sets. There are two additional constructors used in LDL, the first one is set enumeration which is the process of ....
....(Logical Data Language) and how to introduce set constructs into the language. The collection type in LDL is sets. There are two additional constructors used in LDL, the first one is set enumeration which is the process of constructing a set by enumerating its elements. The following example from [5] defines the relation book deal. book deal(X; Y; Z) book(X; Px) book(Y; Py) book(Z; P z) X 6= Y; X 6= Z; Y 6= Z, Px Py P z 100. Where the relation book has a first component that is the title of a book and the second component is the price of the book. The relation book deal is ....
[Article contains additional citation context not shown here]
C. Beeri, S. Naqvi, O. Schmueli, and S. Tsur. Set constructors in a logic database language. Journal of Logic Programming, 10:181--232, 1991.
....by the term ft 1 j : ft n j;g : g. The only changes to the semantics of logic programming are the changes in the treatment of equality, since new predicate symbols are not free constructors. Such an approach is considered in a number of papers, for example (Gallier Raatz 1989, Kuper 1990, Beeri, Naqvi, Schmueli Tsur 1991, Schmueli, Tsur Zaniolo 1992, Dovier, Omodeo, Pontelli Rossi 1996, Dantsin Voronkov 1997b, Dantsin Voronkov 1997a) 2 Of course, a combination of the two approaches is also possible. This paper studies complexity of nonrecursive query answering in logic databases with complex values. ....
Beeri, C., Naqvi, S., Schmueli, O. & Tsur, S. (1991), `Set constructors in a logic database language', Journal of Logic Programming 10, 181--232.
....set ft1 ; tng will be denoted by the term ft1 j : ftnj;g : g. The only changes to the semantics of logic programming are the changes in the treatment of equality, since new predicate symbols are not free constructors. Such an approach is considered in a number of papers, for example [25, 37, 9, 50, 22, 21, 19]. Of course, a combination of the two approaches is also possible. This paper studies complexity of nonrecursive query answering in logic databases with complex values. By complexity we mean expression complexity formalized as the following decision problem: given both the database and a query, ....
C. Beeri, S. Naqvi, O. Schmueli, and S. Tsur. Set constructors in a logic database language. Journal of Logic Programming, 10:181--232, 1991.
....widely recognized as a valuable feature of high level programming languages. And logic programming languages seem to be the right candidates for hosting such a feature due to their potentially high declarative nature. Attention to this problem has come first from the field of deductive databases [1, 4, 14, 22]. However many other fields, including rapid software prototyping and knowledge based systems, may benefit from the availability of sets constructs. And, recently, a number of papers have addressed the problem also in a wider setting. General purpose set constructs and basic 1 Read setlog . ....
....significant set theory, with must exhibit a Right permutativity property (i.e. X withY )withZ = X withZ)withY ) and a Right absorption property (i.e. X with Y ) with Y = X with Y ) Representation ii is quite usual when dealing with sets in logic programming. It is used for instance in [14] in [4] (where with is called scons) and also in the Godel language [12] 15] uses the [ operator but actually its behaviour is that of the with operator of approach ii. Representation ii is also adopted, for instance, in [20] Representation i, on the contrary, is often used when dealing with the ....
C. Beeri, S. Naqvi, O. Shmuelli, and S. Tsur. Set Constructors in a Logic Database Language. J. of Logic Programming, vol.10, n.3, 1991.
....constraint X 2 a. Submitting the goal: p(X) few inference steps yield the goal 2 X;X 2. Recently, primitives aimed to allow intensional definitions of sets (namely, by providing the property characterizing their elements) have been introduced in (constraint) logic programming (e.g. LDL [2], Godel [6] flogg [4] However, in all such approaches, dealing with infinite sets may generate infinite computations. TLP allows a better handling of such sets: Example 4.5 Let T deal with natural numbers and with sets. Consider the following TLP program (notice that the first five clauses ....
C. Beeri, S. Naqvi, O. Shmueli, and S. Tsur. Set Constructors in a Logic Database Language. J. of Logic Programming, 10(3):181--232, 1991.
....devoted to embedding sets into logic programming languages. Indeed such languages seem to be good candidates for hosting set data abstractions, thanks to their highly declarative nature. Attention to incorporating sets into logic based languages has come first from the field of deductive databases [1, 6, 7, 33, 42]. Recently, however, a number of papers have addressed the problem also in a wider setting. General purpose set constructs and basic operations on sets have been added to general logic based frameworks: pure logic programming languages [16, 17] equational logic languages [28, 29] and Constraint ....
....the range of representable intensional sets. In particular only ground elements may appear in these sets. Nevertheless, the use of negation as failure is sufficient to give to flogg the same power (in terms of intensional definitions) offered by similar proposals described in the literature (e.g. [6, 7]) Constructive Negation: the use of constructive negation [13, 52] in flogg has been studied in detail in [8, 21] Constructive Negation fits quite elegantly in the constraint based framework of flogg and allows to overcome some of the limitations encountered in the case of negation as failure. ....
[Article contains additional citation context not shown here]
Beeri, C., Naqvi, S., Shmueli, O., and Tsur, S., Set Constructors in a Logic Database Language. J. Logic Programming, 10(3):181--232 (1991).
....axioms, set unification, Herbrand structure, logical semantics. y This is an expanded version of the paper [JJ92] 1 Introduction The use of sets has been advocated by several authors in the literature on logic programming ( DOPR96] Jay92] JP89] Kup90] and deductive databases ( AG91] [BNST91], NT89] In studying the inclusion of sets in logic programs, it is natural to study finite sets at first. A representation often chosen for finite sets is that of scons, parallel to the list constructor cons. The use of this constructor for declarative programming was first introduced in ....
....relation with (disjoint union) as scons bears with [ Unlike [ and , the first argument of scons and dscons does not have to be a set. We consider scons and dscons (rather than cup or ) because they have proven to be of more practical interest in setoriented declarative programming languages [JP87, BNST91, DOPR91, DOPR96, DR93, JP89, Sto95]. Finally, we establish the standard or Herbrand structure, and justify that the permutation and absorption properties of scons are indeed adequate for deriving the structure, as sometimes assumed in the literature. We also show that the Herbrand interpretations model SetAx, which is not immediate ....
[Article contains additional citation context not shown here]
Beeri, C., Naqvi, S., Shmueli, O., and Tsur, S.: Set Constructors in a Logic Database Language, Jnl. Logic Programming, vol. 10, pp. 181--232, 1991.
....we allow arbitrarily nested structures, we must define what the domain (or universe) of discourse is. In this we follow LDL, whose treatment of the universe is an extension of the Herbrand universe that is used as a standard in logic programming. The extended Herbrand universe is described in [BNST91] There are two ways in which sets and multisets can be created using rules, namely, set enumeration (f g) and set grouping ( as in LDL. However, the operations CORAL permits on sets are different from those supported by LDL, and we discuss the differences later. The following rule ....
Catriel Beeri, Shamim Naqvi, Oded Shmueli, and Shalom Tsur. Set constructors in a logic database language. The Journal of Logic Programming, pages 181--232, 1991.
No context found.
C. Beeri, S. Naqvi, O. Shmueli, and S. Tsur. "Set constructors in a logic database language," Logic Programming, to be published.
.... employee(name(joe, smart) mts, education( high school, 1967) college(harvard, bs, math) 1971) college(harvard, ms, engr) 1973) 6 Set terms in LDL are first class citizens, having the well known properties of sets, such as commutativity and idempotence but not associativity [BNST, ShTZ]. In addition to nested relations, LDL provides simple constructs for nesting and unnesting these relations. The problem of negated goals in recursive rules represents one of the main research challenges in defining a declarative semantics for LDL. This problem has been resolved with the ....
....has been resolved with the introduction of the rather natural concept of stratification [ApBW, Naq, Prz] Informally speaking, this result disallows the circular definition of a predicate using the negation of the same. Similar constraints must also be observed when defining the nesting of sets [BNST, ShNa]. Updates were defined so as to allow the full use of these constructs in rules and to support the notion of database transactions [NaKr] The di#cult problem of formalizing their semantics was solved through the use of dynamic logic [Har] The semantics so defined reduces to first order logic in ....
Beeri C., S. Naqvi, O. Shmueli, and S. Tsur. "Set Constructors in a Logic Database Language", to appear in the Journal of Logic Programming.
.... follows: employee(name(joe, smart) mts, education(f(high school, 1967) college(harvard, bs, math) 1971) college(harvard, ms, engr) 1973) g) Set terms in LDL are first class citizens, having the well known properties of sets, such as commutativity and idempotence but not associativity [BNST, ShTZ]. In addition to nested relations, LDL provides simple constructs for nesting and unnesting these relations. The problem of negated goals in recursive rules represents one of the main research challenges in defining a declarative semantics for LDL. This problem has been resolved with the ....
....has been resolved with the introduction of the rather natural concept of stratification [ApBW, Naq, Prz] Informally speaking, this result disallows the circular definition of a predicate using the negation of the same. Similar constraints must also be observed when defining the nesting of sets [BNST, ShNa]. Updates were defined so as to allow the full use of these constructs in rules and to support the notion of database transactions [NaKr] The difficult problem of formalizing their semantics was solved through the use of dynamic logic [Har] The semantics so defined reduces to first order logic ....
Beeri C., S. Naqvi, O. Shmueli, and S. Tsur. "Set Constructors in a Logic Database Language", to appear in the Journal of Logic Programming.
....that this semantics is consistent with the valid model semantics, and can be efficiently evaluated. 2 Databases and Programs Syntax We assume familiarity with the standard terminology of logic programming, such as variables, constants, function symbols, and terms. Following Beeri et al. [BNST91], we extend the definition of terms to allow sets in terms. We use simple terms to refer to the standard definition of terms. A grouping term has the form X , where X is a variable. In this paper, unless noted otherwise, term means a set term. We extend the standard definition of tuples, ....
....1. We allow ground facts to contain components that are sets, that may also contain other sets as components. Therefore, the traditional Herbrand universe is insufficient for the interpretation of databases and programs. We interpret databases and programs in a generalized universe, following [BNST91], and we refer the reader to that paper for more details. Following [BNST91] we assume that for any given program and database a universe of some fixed (but not necessarily finite) size has been chosen. 2. Given a universe for a deductive database P [D, the set of all possible ground facts is a ....
[Article contains additional citation context not shown here]
Catriel Beeri, Shamim Naqvi, Oded Shmueli, and Shalom Tsur. Set constructors in a logic database language. The Journal of Logic Programming, pages 181--232, 1991.
No context found.
Beeri, C., Naqvi, S., Shmueli, O., and Tsur., S. Set Constructors in a Logic Database Language. Journal of Logic Programming 10, 3 (1991), 181-232.
No context found.
) Beeri, C., Naqvi, S., Shmueli, O., and Tsur., S. Set Constructors in a Logic Database Language. Journal of Logic Programming, 10(3):181-232, 1991.
First 50 documents
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC