155 research outputs found
Towards Intelligent Databases
This article is a presentation of the objectives and techniques
of deductive databases. The deductive approach to databases aims at extending
with intensional definitions other database paradigms that describe
applications extensionaUy. We first show how constructive specifications can
be expressed with deduction rules, and how normative conditions can be defined
using integrity constraints. We outline the principles of bottom-up and
top-down query answering procedures and present the techniques used for
integrity checking. We then argue that it is often desirable to manage with
a database system not only database applications, but also specifications of
system components. We present such meta-level specifications and discuss
their advantages over conventional approaches
Datalog: Bases de datos Deductivas
Este artículo muestra un breve estudio sobre Datalog, el cual es considerado como una extensión de Prolog que es uno de los sofware más utilizados en la inteligencia artificial. Sistemas importantes como SWI-Prolog[22], Ciao Prolog[4], Sictus-Prolog[20], han sido compiladores utilizados para hacer uso de la funcionalidad del lenguaje lógico para bases de datos deductivas y han logrado la implementación de consultas recursivas sobre las bases de datos relacionales. En este estudio también se presentan conceptos básicos de Datalog, así como algunos sistemas que se han desarrollado para trabajar con este lenguaje.Palabra(s) Clave(s): Programación lógica, Prolog, Datalog
Storing and Querying Ontologies in Logic Databases
The intersection of Description Logic inspired ontology languages with Logic Programs has been recently analyzed in [GHVD03]. The resulting language, called Description Logic Programs, covers RDF Schema and a notable portion of OWL Lite. However, the proposed mapping in [GHVD03] from the corresponding OWL fragment into Logic Programs has shown scalability as well as representational de�cits within
our experiments and analysis. In this paper we propose an alternative mapping resulting in lower computational complexity and more representational exibility. We also present benchmarking results for both mappings with ontologies of di�erent size and complexity
Semantic Query Optimization for Bottom-Up Evaluation
Semantic query optimization uses semantic knowledge in databases
(represented in the form of integrity constraints) to rewrite queries and
logic programs for the purpose of more efficient query evaluation. Much
work has been done to develop various techniques for optimization. Most of
it, however, is only applicable to top-down query evaluation strategies.
Moreover, little attention has been paid to the cost of the optimization
itself. In this paper, we address the issue of semantic query optimization
for bottom-up query evaluation strategies with an emphasis on overall
efficiency. We restrict our attention to a single optimization technique,
join elimination. We discuss various factors that influence the cost of
semantic optimization, and present two abstract algorithms for different
optimization approaches. The first one pre-processes a query statically
before it is evaluated; the second approach combines query evaluation with
semantic optimization using heuristics to achieve the largest possible
savings.
(Also cross-referenced as UMIACS-TR-95-109
Implementation of recursive queries for information systems
Sophisticated information systems require a powerful query language and an efficient implementation strategy. In practice, these information systems are either built on the top of an existing database management system or built as an expert system with deductive capabilities. Both of these implementations must provide a mechanism to express recursive queries. It is therefore a necessity for the system to have an efficient algorithm to evaluate these queries. In this thesis, we give a detailed description of a bibliographic database, a set of recursive queries, an overview of some standard query processing algorithms, and an implementation of these queries in DATALOG
Making logic programs reactive
Logic programming languages based on linear logic have been of recent interest, particularly as such languages provide a logical basis for programs which execute within a dynamic environment. Most of these languages are implemented using standard resolution or backward-chaining techniques. However, there are applications for which the use of forward-chaining techniques within a dynamic environment are appropriate, such as genetic algorithms, active databases and agent-based systems, and for which it is difficult or impossible to specify an appropriate goal in advance. In this paper we discuss the foundations for a forward-chaining approach (or in logic programming parlance, a bottom-up approach) to the execution of linear logic programs, which thus provides forward-chaining within a dynamic environment. In this way it is possible not only to execute programs in a forward-chaining manner, but also to combine forward- and backward-chaining execution. We describe and discuss the appropriate inference rules for such a system, the formal results about such rules, the role of search strategies, and applications
- …