Implementation of logical query languages for databases
ACM Transactions on Database Systems (TODS)
Design overview of the NAIL] system
Proceedings on Third international conference on logic programming
Convergence of sideways query evaluation
PODS '86 Proceedings of the fifth ACM SIGACT-SIGMOD symposium on Principles of database systems
A message passing framework for logical query evaluation
SIGMOD '86 Proceedings of the 1986 ACM SIGMOD international conference on Management of data
Combinatorial optimization: algorithms and complexity
Combinatorial optimization: algorithms and complexity
Efficient tests for top-down termination of logical rules
Journal of the ACM (JACM)
Complexity of a top-down capture rule
Complexity of a top-down capture rule
Termination detection in logic programs using argument sizes (extended abstract)
PODS '91 Proceedings of the tenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Inference of inequality constraints in logic programs (extended abstracts)
PODS '91 Proceedings of the tenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Constraints and redundancy in datalog
PODS '92 Proceedings of the eleventh ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
PODS '92 Proceedings of the eleventh ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Cost analysis of logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Constraints among argument sizes in logic programs (extended abstract)
PODS '94 Proceedings of the thirteenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Database querying and constraint programming
ACM SIGACT News
Constraint programming and database languages: a tutorial
PODS '95 Proceedings of the fourteenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Higher-Precision Groundness Analysis
Proceedings of the 17th International Conference on Logic Programming
The octahedron abstract domain
Science of Computer Programming
An abstract interpretation approach to termination of logic programs
LPAR'00 Proceedings of the 7th international conference on Logic for programming and automated reasoning
Hi-index | 0.00 |
In a logic program the feasible argument sizes of derivable facts involving an n-ary predicate are viewed as a set of points in the positive orthant of Rn. We investigate a method of deriving constraints on the feasible set in the form of a polyhedral convex set in the positive orthant, which we call a polycone. Faces of this polycone represent inequalities proven to hold among the argument sizes. These inequalities are often useful for selecting an evaluation method that is guaranteed to terminate for a given logic procedure. The methods may be applicable to other languages in which the sizes of data structures can be determined syntactically.We introduce a generalized Tucker representation for systems of linear equations and show how needed operations on polycones are performed in this representation. We prove that every polycone has a unique normal form in this representation, and give an algorithm to produce it. This in turn gives a decision procedure for the question of whether two set of linear equations define the same polycone.When a predicate has several rules, the union of the individual rule's polycones gives the set of feasible argument size vectors for the predicate. Because this set is not necessarily convex, we instead operate with the smallest enclosing polycone, which is the closure of the convex hull of the union. Retaining convexity is one of the key features of our technique.Recursion is handled by finding a polycone that is a fixpoint of a transformation that is derived from both the recursive and nonrecursive rules. Some methods for finding a fixpoint are presented, but there are many unresolved problems in this area.