Decidable optimization problems for database logic programs
STOC '88 Proceedings of the twentieth annual ACM symposium on Theory of computing
Computability and logic
A finite presentation theorem for approximating logic programs
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Finding nonrecursive envelopes for Datalog predicate
PODS '93 Proceedings of the twelfth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Equivalence of datalog queries is undecidable
Journal of Logic Programming
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
Denotational abstract interpretation of logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
PODS '94 Proceedings of the thirteenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Stratified least fixpoint logic
Theoretical Computer Science
Containment of Conjunctive Queries with Safe Negation
ICDT '03 Proceedings of the 9th International Conference on Database Theory
PADL '02 Proceedings of the 4th International Symposium on Practical Aspects of Declarative Languages
A Performance Study of BDD-Based Model Checking
FMCAD '98 Proceedings of the Second International Conference on Formal Methods in Computer-Aided Design
Verification of Synchronous Sequential Machines Based on Symbolic Execution
Proceedings of the International Workshop on Automatic Verification Methods for Finite State Systems
Superposition with Simplification as a Desision Procedure for the Monadic Class with Equality
KGC '93 Proceedings of the Third Kurt Gödel Colloquium on Computational Logic and Proof Theory
Optimal implementation of conjunctive queries in relational data bases
STOC '77 Proceedings of the ninth annual ACM symposium on Theory of computing
Keynote Address: .QL for Source Code Analysis
SCAM '07 Proceedings of the Seventh IEEE International Working Conference on Source Code Analysis and Manipulation
Type inference for datalog and its application to query optimisation
Proceedings of the twenty-seventh ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems
Techniques for scaling up analyses based on pre-interpretations
ICLP'05 Proceedings of the 21st international conference on Logic Programming
Descriptive typing rules for xcerpt
PPSWR'05 Proceedings of the Third international conference on Principles and Practice of Semantic Web Reasoning
Semantic query optimization in the presence of types
Proceedings of the twenty-ninth ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems
Detecting specification errors in declarative languages with constraints
MODELS'12 Proceedings of the 15th international conference on Model Driven Engineering Languages and Systems
Semantic query optimization in the presence of types
Journal of Computer and System Sciences
Hi-index | 0.00 |
Type inference for Datalog can be understood as the problem of mapping programs to a sublanguage for which containment is decidable. To wit, given a program in Datalog, a schema describing the types of extensional relations, and a user-supplied set of facts about the basic types (stating conditions such as disjointness, implication or equivalence), we aim to infer an over-approximation of the semantics of the program, which should be expressible in a suitable sublanguage of Datalog. We argue that Datalog with monadic extensionals is an appropriate choice for that sublanguage of types, and we present an inference algorithm. The inference algorithm is proved sound, and we also show that it infers the tightest possible over-approximation for a large class of Datalog programs. Furthermore, we present a practical containment check for a large subset of our type language. The crux of that containment check is a novel generalisation of Quine's procedure for computing prime implicants. The type system has been implemented in a state-of-the-art industrial database system, and we report on experiments with this implementation.