Abstract
The subject of groundness analysis for (constraint) logic programs has been widely studied, and interesting domains have been proposed. Pos has been recognized as the most suitable domain for capturing the kind of dependencies arising in groundness analysis, and Reduced Ordered Binary Decision Diagrams (ROBDDs) are generally accepted to be the most efficient representation for Pos. Unfortunately, the size of an ROBDDs is, in the worst case, exponential in the number of variables it depends upon. Earlier work [2] has shown that a hybrid representation that separates the definite information from the dependency information is considerably more efficient than keeping the two together. The aim of the present paper is to push this idea further, also separating out certain dependency information, in particular all pairs of variables that are always either both ground or neither ground. We find that this new hybrid representation is a significant improvement over previous work.
Much of this work was supported by EPSRC grant GR/L19515.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
T. Armstrong, K. Marriott, P. Schachte, and H. Søndergaard. Two classes of Boolean functions for dependency analysis. Science of Computer Programming, 31(1):3–45, 1998.
R. Bagnara. A reactive implementation of Pos using ROBDDs. In H. Kuchen and S. D. Swierstra, editors, Programming Languages: Implementations, Logics and Programs, Proceedings of the Eighth International Symposium, volume 1140 of Lecture Notes in Computer Science, pages 107–121, Aachen, Germany, 1996. Springer-Verlag, Berlin.
R. Bagnara. Data-Flow Analysis for Constraint Logic-Based Languages. PhD thesis, Dipartimento di Informatica, Università di Pisa, Corso Italia 40, I-56125 Pisa, Italy, March 1997. Printed as Report TD-1/97.
R. Bagnara and P. Schachte. Efficient implementation of Pos. Technical Report 98/5, Department of Computer Science, The University of Melbourne, Australia, 1998.
P. Bigot, S. K. Debray, and K. Marriott. Understanding finiteness analysis using abstract interpretation. In K. Apt, editor, Logic Programming: Proceedings of the Joint International Conference and Symposium on Logic Programming, MIT Press Series in Logic Programming, pages 735–749, Washington, USA, 1992. The MIT Press.
R. E. Bryant. Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers, C-35(8):677–691, August 1986.
R. E. Bryant. Symbolic boolean manipulation with ordered binary-decision diagrams. ACM Computing Surveys, 24(3):293–318, September 1992.
A. Cortesi, B. Le Charlier, and P. Van Hentenryck. Conceptual and software support for abstract domain design: Generic structural domain and open product. Technical Report CS-93-13, Brown University, Providence, RI, 1993.
A. Cortesi, B. Le Charlier, and P. Van Hentenryck. Combinations of abstract domains for logic programming. In Conference Record of POPL’ 94: 21st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 227–239, Portland, Oregon, 1994.
P. W. Dart. Dependency Analysis and Query Interfaces for Deductive Databases. PhD thesis, The University of Melbourne, Department of Computer Science, 1988. Printed as Technical Report 88/35.
M. Falaschi, M. Gabbrielli, K. Marriott, and C. Palamidessi. Conuence and concurrent constraint programming. In V. S. Alagar and M. Nivat, editors, Proceedings of the Fourth International Conference on Algebraic Methodology and Software Technology (AMAST’95), volume 936 of Lecture Notes in Computer Science, pages 531–545. Springer-Verlag, Berlin, 1995.
N. D. Jones and H. Søndergaard. A semantics-based framework for the abstract interpretation of Prolog. In S. Abramsky and C. Hankin, editors, Abstract Interpretation of Declarative Languages, chapter 6, pages 123–142. Ellis Horwood Ltd, West Sussex, England, 1987.
K. Marriott and H. Søndergaard. Notes for a tutorial on abstract interpretation of logic programs. North American Conference on Logic Programming, Cleveland, Ohio, USA, 1989.
C. S. Mellish. Some global optimizations for a Prolog compiler. Journal of Logic Programming, 2(1):43–66, 1985.
P. Schachte. Efficient ROBDD operations for program analysis. In K. Ramamohanarao, editor, ACSC’96: Proceedings of the 19th Australasian Computer Science Conference, pages 347–356. Australian Computer Science Communications, 1996.
H. Søndergaard. Immediate fixpoints and their use in groundness analysis. In V. Chandru and V. Vinay, editors, Foundations of Software Technology and Theoretical Computer Science, volume 1180 of Lecture Notes in Computer Science, pages 359–370. Springer-Verlag, Berlin, 1996.
J. Zobel. Analysis of Logic Programs. PhD thesis, The University of Melbourne, 1990.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bagnara, R., Schachte, P. (1998). Factorizing Equivalent Variable Pairs in ROBDD-Based Implementations of Pos . In: Haeberer, A.M. (eds) Algebraic Methodology and Software Technology. AMAST 1999. Lecture Notes in Computer Science, vol 1548. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-49253-4_33
Download citation
DOI: https://doi.org/10.1007/3-540-49253-4_33
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-65462-9
Online ISBN: 978-3-540-49253-5
eBook Packages: Springer Book Archive