Abstract:
Deductive databases and object-oriented databases (DOOD) are two important extensions of the traditional relational database technology. Deductive databases provide a rule-based language called Datalog¬ (Datalog with negation) that uses function-free Horn clauses with negation to express deductive rules [1], and is a simplified version of the logic programming language Prolog [2]. A deductive database consists of an extensional database and an intensional database. The extensional database (EDB) consists of the relations stored in a relational database whereas the intensional database (IDB) consists of a Datalog¬ program that is a set of deductive rules used to derive relations that are the logical consequences of the program and the extensional database. Datalog¬ is more expressive than pure relational query languages such as relational algebra and relational calculus as it supports recursive deductive rules and recursive queries. Moreover, deductive databases have a firm logical foundation that consists of both model-theoretic semantics in terms of the minimal model [3], the stable model [4], and the well-founded model, and proof-theoretic semantics in terms of bottom-up fixpoint semantics.