On derived dependencies and connected databases
Journal of Logic Programming
Symbolic Boolean manipulation with ordered binary-decision diagrams
ACM Computing Surveys (CSUR)
Static analysis of logic programs for independent and parallelism
Journal of Logic Programming
Practical program analysis using general purpose logic programming systems—a case study
PLDI '96 Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation
Global analysis of constraint logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Complementation in abstract interpretation
ACM Transactions on Programming Languages and Systems (TOPLAS)
The quotient of an abstract interpretation
Theoretical Computer Science
Two classes of Boolean functions for dependency analysis
Science of Computer Programming
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Comparison of Abstract Interpretations
ICALP '92 Proceedings of the 19th International Colloquium on Automata, Languages and Programming
PLILP '93 Proceedings of the 5th International Symposium on Programming Language Implementation and Logic Programming
A Reactive Implementation of Pos Using ROBDDs
PLILP '96 Proceedings of the 8th International Symposium on Programming Languages: Implementations, Logics, and Programs
Memoing Evaluation by Source-to-Source Transformation
LOPSTR '95 Proceedings of the 5th International Workshop on Logic Programming Synthesis and Transformation
Set-Sharing is Redundant for Pair-Sharing
SAS '97 Proceedings of the 4th International Symposium on Static Analysis
Implementing Groundness Analysis with Definite Boolean Functions
ESOP '00 Proceedings of the 9th European Symposium on Programming Languages and Systems
The Def-inite Approach to Dependency Analysis
ESOP '01 Proceedings of the 10th European Symposium on Programming Languages and Systems
Hi-index | 0.00 |
Def, the domain of definite Boolean functions, expresses (sure) dependencies between the program variables of, say, a constraint program. Share, on the other hand, captures the (possible) variable sharing between the variables of a logic program. The connection between these domains has been explored in the domain comparison and decomposition literature. We develop this link further and show how the meet (as well as the join) of Def can be modelled with efficient (quadratic) operations on Share. Further, we show how by compressing and widening Share and by rescheduling meet operations, we can construct a dependency analysis that is surprisingly fast and precise, and comes with time-and space- performance guarantees. Unlike some other approaches, our analysis can be coded straightforwardly in Prolog.