An amateur's introduction to recursive query processing strategies
SIGMOD '86 Proceedings of the 1986 ACM SIGMOD international conference on Management of data
Computing with logic: logic programming with Prolog
Computing with logic: logic programming with Prolog
Proof-tree transformation theorems and their applications
PODS '89 Proceedings of the eighth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Logic programming and databases
Logic programming and databases
On compile-time query optimization in deductive databases by means of static filtering
ACM Transactions on Database Systems (TODS)
Necessary and sufficient conditions to linearize doubly recursive programs in logic databases
ACM Transactions on Database Systems (TODS)
Grammar-related transformations of logic programs
New Generation Computing
Journal of Logic Programming
SIGMOD '94 Proceedings of the 1994 ACM SIGMOD international conference on Management of data
Tabled evaluation with delaying for general logic programs
Journal of the ACM (JACM)
GraphLog: a visual formalism for real life recursion
PODS '90 Proceedings of the ninth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Interconvertibility of a class of set constraints and context-free-language reachability
Theoretical Computer Science - Partial evaluation and semantics-based program manipulation
Partial Evaluation - Practice and Theory, DIKU 1998 International Summer School
From datalog rules to efficient programs with time and space guarantees
Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programming
Monadic datalog and the expressive power of languages for Web information extraction
Journal of the ACM (JACM)
Linearisability on datalog programs
Theoretical Computer Science
Parametric regular path queries
Proceedings of the ACM SIGPLAN 2004 conference on Programming language design and implementation
Efficient and flexible access control via logic program specialisation
Proceedings of the 2004 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Context-sensitive program analysis as database queries
Proceedings of the twenty-fourth ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems
Efficient type inference for secure information flow
Proceedings of the 2006 workshop on Programming languages and analysis for security
Efficient trust management policy analysis from rules
Proceedings of the 9th ACM SIGPLAN international conference on Principles and practice of declarative programming
PADL'06 Proceedings of the 8th international conference on Practical Aspects of Declarative Languages
Improved algorithm complexities for linear temporal logic model checking of pushdown systems
VMCAI'06 Proceedings of the 7th international conference on Verification, Model Checking, and Abstract Interpretation
Hi-index | 0.00 |
Many complex analysis problems can be most clearly and easily specified as logic rules and queries, where rules specify how given facts can be combined to infer new facts, and queries select facts of interest to the analysis problem at hand. However, it has been extremely challenging to obtain efficient implementations from logic rules and to understand their time and space complexities, especially for on-demand analysis driven by queries.This paper describes a powerful method for generating specialized rules and programs for demand-driven analysis from Datalog rules and queries, and further for providing time and space complexity guarantees. The method combines recursion conversion with specialization of rules and then uses a method for program generation and complexity calculation from rules. We compare carefully with the best prior methods by examining many variants of rules and queries for the same graph reachability problems, and show the application of our method in implementing graph query languages in general.