The topic of logic programming and databases. has gained in- creasing
interest in recent years. Several events have marked the rapid evolution
of this field: the selection, by the Japanese Fifth Generation Project,
of Prolog and of the relational data model as the basis for the
development of new machine archi- tectures; the focusing of research in
database theory on logic queries and on recursive query processing; and
the pragmatic, application-oriented development of expert database
systems and of knowledge-base systems. As a result, an enormous amount
of work has been produced in the recent literature, coupled with the
spontaneous growth of several advanced projects in this area. The goal
of this book is to present a systematic overview of a rapidly evolving
discipline, which is presently not described with the same approach in
other books. We intend to introduce stu- dents and researchers to this
new discipline; thus we use a plain, tutorial style, and complement the
description of algorithms with examples and exercises. We attempt to
achieve a balance be- tween theoretical foundations and technological
issues; thus we present a careful introduction to the new language
Datalog, but we also focus on the efficient interfacing of logic
programming formalisms (such as Prolog and Datalog) with large
databases.