On the design and implementation of a top-down datalog interpreter in C++

Datalog is a database query language based on the logic programming paradigm. Datalog is the language of deductive databases, obtained by extending the basic relational database model with the reasoning capability, that is, one can not only query about the facts stored explicitly in the database but...

Full description

Bibliographic Details
Main Author: Tadisetty, Mohan Rao
Format: Others
Published: 1997
Online Access:http://spectrum.library.concordia.ca/351/1/MQ40235.pdf
Tadisetty, Mohan Rao <http://spectrum.library.concordia.ca/view/creators/Tadisetty=3AMohan_Rao=3A=3A.html> (1997) On the design and implementation of a top-down datalog interpreter in C++. Masters thesis, Concordia University.
Description
Summary:Datalog is a database query language based on the logic programming paradigm. Datalog is the language of deductive databases, obtained by extending the basic relational database model with the reasoning capability, that is, one can not only query about the facts stored explicitly in the database but also query about derived facts. Datalog provides the clauses with parameters, called logical variables. The interpreter for Datalog requires the matching of predicates and of logical variables, through unification and substitution. Datalog behaves like a programming language because it can return values as answers to queries, rather than just "yes" and "no" answers. In this report, the syntax and semantics of Datalog, the efforts to design and implement a top-down version of the Datalog interpreter in C++ and the experimental results are presented. The name "Datalog" is chosen because of its connection with database query languages. In this implementation, the Datalog interpreter can process one query at a time.