1,724 research outputs found
Constrained Query Answering
Traditional answering methods evaluate queries only against positive
and definite knowledge expressed by means of facts and deduction rules. They do
not make use of negative, disjunctive or existential information. Negative or indefinite
knowledge is however often available in knowledge base systems, either as
design requirements, or as observed properties. Such knowledge can serve to rule out
unproductive subexpressions during query answering. In this article, we propose an
approach for constraining any conventional query answering procedure with general,
possibly negative or indefinite formulas, so as to discard impossible cases and to
avoid redundant evaluations. This approach does not impose additional conditions
on the positive and definite knowledge, nor does it assume any particular semantics
for negation. It adopts that of the conventional query answering procedure it
constrains. This is achieved by relying on meta-interpretation for specifying the
constraining process. The soundness, completeness, and termination of the underlying
query answering procedure are not compromised. Constrained query answering
can be applied for answering queries more efficiently as well as for generating more
informative, intensional answers
An efficient, parametric fixpoint algorithm for analysis of java bytecode
Abstract interpretation has been widely used for the analysis of object-oriented languages and, in particular, Java source and bytecode. However, while most existing work deals with the problem of flnding expressive abstract domains that track accurately the characteristics of a particular concrete property, the underlying flxpoint algorithms have received comparatively less attention. In fact, many existing (abstract interpretation based—) flxpoint algorithms rely on relatively inefHcient techniques for solving inter-procedural caligraphs or are speciflc and tied to particular analyses. We also argüe that the design of an efficient fixpoint algorithm is pivotal to supporting the analysis of large programs. In this paper we introduce a novel algorithm for analysis of Java bytecode which includes a number of optimizations in order to reduce the number of iterations. The algorithm is parametric -in the sense that it is independent of the abstract domain used and it can be applied to different domains as "plug-ins"-, multivariant, and flow-sensitive. Also, is based on a program transformation, prior to the analysis, that results in a highly uniform representation of all the features in the language and therefore simplifies analysis. Detailed descriptions of decompilation solutions are given and discussed with an example. We also provide some performance data from a preliminary implementation of the analysis
Query Evaluation in Deductive Databases
It is desirable to answer queries posed to deductive databases by computing fixpoints because such computations are directly amenable to set-oriented fact processing. However, the classical fixpoint procedures based on bottom-up processing — the naive and semi-naive methods — are rather primitive and often inefficient. In this article, we rely on bottom-up meta-interpretation for formalizing a new fixpoint procedure that performs a different kind of reasoning: We specify a top-down query answering method, which we call the Backward Fixpoint Procedure. Then, we reconsider query evaluation methods for recursive databases. First, we show that the methods based on rewriting on the one hand, and the methods based on resolution on the other hand, implement the Backward Fixpoint Procedure. Second, we interpret the rewritings of the Alexander and Magic Set methods as specializations of the Backward Fixpoint Procedure. Finally, we argue that such a rewriting is also needed in a database context for implementing efficiently the resolution-based methods. Thus, the methods based on rewriting and the methods based on resolution implement the same top-down evaluation of the original database rules by means of auxiliary rules processed bottom-up
A Potpourri of Reason Maintenance Methods
We present novel methods to compute changes to materialized
views in logic databases like those used by rule-based reasoners.
Such reasoners have to address the problem of changing axioms in the
presence of materializations of derived atoms. Existing approaches have
drawbacks: some require to generate and evaluate large transformed programs
that are in Datalog - while the source program is in Datalog and
significantly smaller; some recompute the whole extension of a predicate
even if only a small part of this extension is affected by the change.
The methods presented in this article overcome these drawbacks and derive
additional information useful also for explanation, at the price of an
adaptation of the semi-naive forward chaining
Algebraic optimization of recursive queries
Over the past few years, much attention has been paid to deductive databases. They offer a logic-based interface, and allow formulation of complex recursive queries. However, they do not offer appropriate update facilities, and do not support existing applications. To overcome these problems an SQL-like interface is required besides a logic-based interface.\ud
\ud
In the PRISMA project we have developed a tightly-coupled distributed database, on a multiprocessor machine, with two user interfaces: SQL and PRISMAlog. Query optimization is localized in one component: the relational query optimizer. Therefore, we have defined an eXtended Relational Algebra that allows recursive query formulation and can also be used for expressing executable schedules, and we have developed algebraic optimization strategies for recursive queries. In this paper we describe an optimization strategy that rewrites regular (in the context of formal grammars) mutually recursive queries into standard Relational Algebra and transitive closure operations. We also describe how to push selections into the resulting transitive closure operations.\ud
\ud
The reason we focus on algebraic optimization is that, in our opinion, the new generation of advanced database systems will be built starting from existing state-of-the-art relational technology, instead of building a completely new class of systems
- …