DDC: A Deductive Database Machine

This article presents the “Delta Driven Computer” (DDC) project and describes the design decisions made for its first implementation. DDC is composed of a set interconnected PCM (Processor, Communication Device, Memory) nodes. DDC is a parallel inference computer. For the first implementation we have studied how to efficiently process a deductive data base. In this article, special consideration is given to: the Virtual Inference Machine (VIM) which is based on a production rule language. The unique operation achieved at this abstract level is “saturation”. It is executed with a forward chaining strategy. A special effort has been made to study methods to optimize the execution of VIM programs (Alexander Method); the specific execution model DDEM and the data partitioning method which allow us to achieve full parallelism independently in each node of the machine; DDCL, the language of the machine, which is a small but powerful language and is oriented toward the execution of operations on relations; the internal representation of the data structures and the optimized algorithms which enable us to accelerate the operations on the data base. This project is under development at the BULL Research Center and is partially supported by ESPRIT-415.

[1]  Laurent Fribourg,et al.  SLOG: A Logic Programming Language Interpreter Based on Clausal Superposition and Rewriting , 1985, SLP.

[2]  Catriel Beeri,et al.  On the power of magic , 1987, J. Log. Program..

[3]  Rubén González-Rubio,et al.  DDC Delta Driven Computer - a Parallel Machine for Symbolic Processing , 1986, Future Parallel Computers.

[4]  Kjell Bratbergsengen,et al.  Hashing Methods and Relational Algebra Operations , 1984, VLDB.

[5]  A. Bradier La-join: un algorithme de jonction en mémoire et sa mise en oeuvre sur le filtre SCHUSS , 1986, BDA.

[6]  Rubén González-Rubio,et al.  An Overview of DDC: Delta Driven Computer , 1987, PARLE.

[7]  Rubén González-Rubio,et al.  The schuss filter: A processor for non-numerical data processing. , 1984, ISCA 1984.

[8]  Antonio Pizzarello,et al.  Introduction to the WELLMADE design methodology , 1978, ICSE '78.

[9]  Paul J. Voda,et al.  RF-Maple: A Logic Programming Language with Functions, Types, and Concurrency , 1984, FGCS.

[10]  John Darlington,et al.  The Unification of Functional and Logic Languages , 1986, Logic Programming: Functions, Relations, and Equations.

[11]  Björn Bergsten,et al.  DDC: Delta Driven Computer , 1988 .

[12]  Jeffrey D. Ullman,et al.  Implementation of logical query languages for databases , 1985, TODS.

[13]  Frederick Hayes-Roth,et al.  AN OVERVIEW OF PATTERN-DIRECTED INFERENCE SYSTEMS , 1978 .

[14]  Yehoshua Sagiv,et al.  Optimizing datalog programs , 1987, Foundations of Deductive Databases and Logic Programming..

[15]  J M Pugin,et al.  BOUM–an instantiation of the (PS) 2 concept , 1987 .

[16]  Roberto Barbuti,et al.  LEAF: A Language which Integrates Logic, Equations and Functions , 1986, Logic Programming: Functions, Relations, and Equations.

[17]  Steven A. Vere,et al.  Relational Production Systems , 1977, Artificial Intelligence.

[18]  Jerome A. Feldman,et al.  High level programming for distributed computing , 1979, CACM.

[19]  Donald A. Waterman,et al.  Pattern-Directed Inference Systems , 1981, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[20]  Charles Lanny Forgy,et al.  On the efficient implementation of production systems. , 1979 .

[21]  Subrata Dasgupta,et al.  The design and description of computer architectures , 1984 .

[22]  Erik Swyngedouw,et al.  First Annual Report , 1985 .

[23]  David J. DeWitt,et al.  GAMMA - A High Performance Dataflow Database Machine , 1986, VLDB.

[24]  Harold S. Stone,et al.  Fifth-Generation Computer Systems: A Japanese Project , 1984, Computer.