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
Principles of database and knowledge-base systems, Vol. I
Principles of database and knowledge-base systems, Vol. I
Logic programming and databases
Logic programming and databases
Conditional rewriting logic as a unified model of concurrency
Selected papers of the Second Workshop on Concurrency and compositionality
Model checking and boolean graphs
Theoretical Computer Science - Selected papers of the 17th Colloquium on Trees in Algebra and Programming (CAAP '92) and of the European Symposium on Programming (ESOP), Rennes, France, Feb. 1992
Membership algebra as a logical framework for equational specification
WADT '97 Selected papers from the 12th International Workshop on Recent Trends in Algebraic Development Techniques
Simple Linear-Time Algorithms for Minimal Fixed Points (Extended Abstract)
ICALP '98 Proceedings of the 25th International Colloquium on Automata, Languages and Programming
Solving Demand Versions of Interprocedural Analysis Problems
CC '94 Proceedings of the 5th International Conference on Compiler Construction
Logic Programs as term Rewriting Systems
ALP '94 Proceedings of the 4th International Conference on Algebraic and Logic Programming
Joeq: a virtual machine and compiler infrastructure
Proceedings of the 2003 workshop on Interpreters, virtual machines and emulators
Rewriting-Based Techniques for Runtime Verification
Automated Software Engineering
Demand-driven alias analysis for C
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A Model Checking Language for Concurrent Value-Passing Systems
FM '08 Proceedings of the 15th international symposium on Formal Methods
Instantiation for Parameterised Boolean Equation Systems
Proceedings of the 5th international colloquium on Theoretical Aspects of Computing
.QL: Object-Oriented Queries Made Easy
Generative and Transformational Techniques in Software Engineering II
From datalog rules to efficient programs with time and space guarantees
ACM Transactions on Programming Languages and Systems (TOPLAS)
Using Datalog and Boolean Equation Systems for Program Analysis
Formal Methods for Industrial Critical Systems
Optimizing joins in a map-reduce environment
Proceedings of the 13th International Conference on Extending Database Technology
Automated termination analysis for logic programs by term rewriting
LOPSTR'06 Proceedings of the 16th international conference on Logic-based program synthesis and transformation
CADP 2006: a toolbox for the construction and analysis of distributed processes
CAV'07 Proceedings of the 19th international conference on Computer aided verification
All about maude - a high-performance logical framework: how to specify, program and verify systems in rewriting logic
Using datalog with binary decision diagrams for program analysis
APLAS'05 Proceedings of the Third Asian conference on Programming Languages and Systems
APLAS'05 Proceedings of the Third Asian conference on Programming Languages and Systems
Defining datalog in rewriting logic
LOPSTR'09 Proceedings of the 19th international conference on Logic-Based Program Synthesis and Transformation
CodeQuest: scalable source code queries with datalog
ECOOP'06 Proceedings of the 20th European conference on Object-Oriented Programming
Distributed on-the-fly model checking and test case generation
SPIN'06 Proceedings of the 13th international conference on Model Checking Software
Equivalence checking for infinite systems using parameterized Boolean equation systems
CONCUR'07 Proceedings of the 18th international conference on Concurrency Theory
A model-extraction approach to verifying concurrent C programs with CADP
Science of Computer Programming
Hi-index | 0.00 |
This paper describes two techniques for Datalog query evaluation and their application to object-oriented program analysis. The first technique transforms Datalog programs into an implicit Boolean Equation System (Bes) that can then be solved by using linear-time complexity algorithms that are available in existing, general purpose verification toolboxes such as Cadp. In order to improve scalability and to enable analyses involving advanced meta-programming features, we develop a second methodology that transforms Datalog programs into rewriting logic (Rwl) theories. This method takes advantage of the preeminent features and facilities that are available within the high-performance system Maude, which provides a very efficient implementation of Rwl. We provide evidence of the practicality of both approaches by reporting on some experiments with a number of real-world Datalog-based analyses.