An application of abstract interpretation of logic programs: occur check reduction
Proc. of the European symposium on programming on ESOP 86
Foundations of logic programming; (2nd extended ed.)
Foundations of logic programming; (2nd extended ed.)
Prolog and its performance: exploiting independent and-parallelism
Logic programming
Handbook of theoretical computer science (vol. B)
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
Compile-time derivation of variable dependency using abstract interpretation
Journal of Logic Programming
Precise and efficient groundness analysis for logic programs
ACM Letters on Programming Languages and Systems (LOPLAS)
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Precise pair-sharing analysis of logic programs
Proceedings of the 4th ACM SIGPLAN international conference on Principles and practice of declarative programming
Set-Sharing is Redundant for Pair-Sharing
SAS '97 Proceedings of the 4th International Symposium on Static Analysis
Precise pair-sharing analysis of logic programs
Proceedings of the 4th ACM SIGPLAN international conference on Principles and practice of declarative programming
Inverting abstract unification for set-sharing
PPDP '05 Proceedings of the 7th ACM SIGPLAN international conference on Principles and practice of declarative programming
Automated termination proofs for logic programs by term rewriting
ACM Transactions on Computational Logic (TOCL)
A general framework for variable aliasing: towards optimal operators for sharing properties
LOPSTR'02 Proceedings of the 12th international conference on Logic based program synthesis and transformation
FLOPS'06 Proceedings of the 8th international conference on Functional and Logic Programming
Pair-sharing analysis of object-oriented programs
SAS'05 Proceedings of the 12th international conference on Static Analysis
Hi-index | 0.00 |
The paper presents a novel approach to pair-sharing analysis of logic programs. The pair-sharing domain ASub of Søndergaard is known to be more efficient than the set-sharing domain Sharing of Jacobs and Langen and gains accuracy because of linearity tracking. However, it is less accurate because of weaker groundness information, and the fact that it loses track of where new groundness eliminates sharing. In this paper we present a new domain which inherits the advantages of both ASub and Sharing and is uniformly more accurate in terms of pair-sharing than each of the two domains.The proposed domain expresses pair-sharing in terms of existence of traversable paths in relation graphs derived from program constraints. Each edge of a relation graph has an attached groundness formula which defines under what groundness conditions it still causes sharing. This allows the domain to maintain information about when groundness can eliminate sharing. Relation graphs are augmented by separate groundness information (usually Def or Pos). The groundness analysis and groundness formulae can be represented using efficient ROBDD methods.