Naive evaluation of recursively defined relations
On knowledge base management systems: integrating artificial intelligence and d atabase technologies
Magic sets and other strange ways to implement logic programs (extended abstract)
PODS '86 Proceedings of the fifth ACM SIGACT-SIGMOD symposium on Principles of database systems
An amateur's introduction to recursive query processing strategies
SIGMOD '86 Proceedings of the 1986 ACM SIGMOD international conference on Management of data
The Alexander method-a technique for the processing of recursive axioms in deductive databases
New Generation Computing
An overview of DDC: Delta Driven Computer
Volume I: Parallel architectures on PARLE: Parallel Architectures and Languages Europe
Sets and negation in a logic data base language (LDL1)
PODS '87 Proceedings of the sixth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
PODS '87 Proceedings of the sixth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
A generalization of the differential approach to recursive query evaluation
Journal of Logic Programming
Principles of database and knowledge-base systems, Vol. I
Principles of database and knowledge-base systems, Vol. I
Meta-level control for deductive database systems
Meta-level control for deductive database systems
Explicit control of logic programs through rule algebra
Proceedings of the seventh ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Proceedings of the seventh ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
The Semantics of Predicate Logic as a Programming Language
Journal of the ACM (JACM)
Expression continuity and the formal differentiation of algorithms
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Efficient Implementation of Loops in Bottom-Up Evaluation of Logic Queries
VLDB '90 Proceedings of the 16th International Conference on Very Large Data Bases
New Strategies for Computing the Transitive Closure of a Database Relation
VLDB '87 Proceedings of the 13th International Conference on Very Large Data Bases
Induction variables in very high level languages
POPL '76 Proceedings of the 3rd ACM SIGACT-SIGPLAN symposium on Principles on programming languages
Database research at Wisconsin
ACM SIGMOD Record
Ripple joins for online aggregation
SIGMOD '99 Proceedings of the 1999 ACM SIGMOD international conference on Management of data
The VLDB Journal — The International Journal on Very Large Data Bases - Prototypes of deductive database systems
Learning Recursive Theories in the Normal ILP Setting
Fundamenta Informaticae
Representing and querying validity time in RDF and OWL: A logic-based approach
Web Semantics: Science, Services and Agents on the World Wide Web
Speeding up the counting method by computing heritage functions in topological order
ADBIS'97 Proceedings of the First East-European conference on Advances in Databases and Information systems
Learning Recursive Theories in the Normal ILP Setting
Fundamenta Informaticae
Hi-index | 0.00 |
Logic programs can be evaluated bottom-up by repeatedly applying all rules, in "iterations", until the fixpoint is reached. However, it is often desirable-and, in some cases, e.g. programs with stratified negation, it is even necessary to guarantee the semantics-to apply the rules in some order. We present two algorithms that apply rules in a specified order without repeating inferences. One of them (GSN) is capable of dealing with a wide range of rule orderings, but with a little more overhead than the well-known seminaive algorithm (which we call BSN). The other (PSN) handles a smaller class of rule orderings, but with no overheads beyond those in BSN. We also demonstrate that by choosing a good ordering, we can reduce the number of rule applications (and thus the number of joins). We present a theoretical analysis of rule orderings and identify orderings that minimize the number of rule applications (for all possible instances of the base relations) with respect to a class of orderings called fair orderings. We also show that though nonfair orderings may do a little better on some data sets, they can do much worse on others. The analysis is supplemented by performance results.