Abstract
We define the inverse operation for disjunctive completion, introducing the notion of least disjunctive basis for an abstract domain D: this is the most abstract domain inducing the same disjunctive completion as D. We show that the least disjunctive basis exists in most cases, and study its properties in relation with reduced product of abstract interpretations. The resulting framework is powerful enough to be applied to arbitrary abstract domains for analysis, providing advanced algebraic methods for domain manipulation and optimization. These notions are applied to abstract domains for analysis of functional and logic programming languages.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
T. Armstrong, K. Marriott, P. Schachte, and H. Søndergaard. Boolean functions for dependency analysis: algebraic properties and efficient representation. In Proc. of SAS '94, LNCS 864, pp. 266–280, 1994. To appear in Sci. of Comp. Programming.
R. Barbuti, R. Giacobazzi, and G. Levi. A general framework for semantics-based bottom-up abstract interpretation of logic programs. ACM TOPLAS, 15(1):133–181, 1993.
G. Birkhoff. Lattice Theory. AMS Colloq. Publ., vol. XXV, 3rd ed., 1967.
G.L. Burn, C.L. Hankin, and S. Abramsky. Strictness analysis of higher-order functions. Sci. of Comp. Programming, 7:249–278, 1986.
A. Cortesi, G. Filé, R. Giacobazzi, C. Palamidessi, and F. Ranzato. Complementation in abstract interpretation. In Proc. of SAS '95, LNCS 983, pp. 100–117, 1995.
A. Cortesi, G. Filé, and W. Winsborough. Prop revisited: propositional formula as abstract domain for groundness analysis. In Proc. of LICS '91, pp. 322–327, 1991.
P. Cousot and R. Cousot. Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In Proc. of ACM POPL '77, pp. 238–252. 1977.
P. Cousot and R. Cousot. Systematic design of program analysis frameworks. In Proc. of ACM POPL '79, pp. 269–282, 1979.
P. Cousot and R. Cousot. Abstract interpretation and application to logic programs. J. of Logic Programming, 13(2,3):103–179, 1992.
P. Cousot and R. Cousot. Higher-order abstract interpretation (and application to comportment analysis generalizing strictness, termination, projection and PER analysis of functional languages). In Proc. of IEEE ICCL '94, pp. 95–112, 1994.
P. Dart. On derived dependencies and connected databases. J. of Logic Programming, 11(2):163–188, 1991.
G. Filé and F. Ranzato. Improving abstract interpretations by systematic lifting to the powerset. In Proc. of ILPS '94, pp. 655–669, 1994.
G. Filé and F. Ranzato. The powerset operator on abstract interpretations. Tech. Rep., Dip. di Matematica Pura ed Appl., U. di Padova, 1995.
G. Gierz, K.H. Hofmann, K. Keimel, J.D. Lawson, M. Mislove, and D.S. Scott. A Compendium of Continuous Lattices. Springer-Verlag, 1980.
S. Hunt. PERs generalize projections for strictness analysis. In Proc. of the 1990 Glasgow Funct. Progr. Workshop, pp. 156–168. Springer Workshops in Comp., 1990.
D. Jacobs and A. Langen. Static analysis of logic programs for independent AND-parallelism. J. of Logic Programming, 13(2,3):154–165, 1992.
T.P. Jensen. Disjunctive strictness analysis. In Proc. of LICS '92, pp. 174–185. 1992.
N.D. Jones and S.S. Muchnick. Complexity of flow analysis, inductive assertion synthesis and a language due to Dijkstra. In Program Flow Analysis: Theory and Applications, pp. 380–393. Prentice-Hall, 1981.
K. Marriott and H. Søndergaard. Precise and efficient groundness analysis for logic programs. ACM LOPLAS, 2(1–4):181–196, 1993.
J. Morgado. Some results on the closure operators of partially ordered sets. Port. Math., 19(2):101–139, 1960.
A. Mycroft. The theory and practice of transforming call-by-need into call-by-value. In Proc. of the 4th Int. Symp. on Programming, LNCS 83, pp. 270–281, 1980.
A. Mycroft. Abstract interpretation and optimizing transformations for applicative programs. Ph.D. Thesis, Dept. of Computer Science, U. of Edinburgh, CST-15-81, 1981.
A. Mycroft and F. Nielson. Strong abstract interpretation using power domains. In Proc. of ICALP '83, LNCS 154, pp. 536–547, 1983.
F. Nielson. Abstract interpretation using domain theory. Ph.D. Thesis, Dept. of Computer Science, U. of Edinburgh, CST-31-84, 1984.
F. Nielson. Tensor products generalize the relational data flow analysis method. In Proc. of the 4th Hung. Computer Science Conf., pp. 211–225, 1985.
F. Nielson. Expected forms of data flow analysis. In Programs as Data Objects, LNCS 217, pp. 192–205, 1986.
P.L. Wadler and R.J.M. Hughes. Projections for strictness analysis. In Proc. of FPCA '87, LNCS 274, pp. 385–407, 1987.
M. Ward. The closure operators of a lattice. Ann. of Math., 43(2):191–196, 1942.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Giacobazzi, R., Ranzato, F. (1996). Compositional optimization of disjunctive abstract interpretations. In: Nielson, H.R. (eds) Programming Languages and Systems — ESOP '96. ESOP 1996. Lecture Notes in Computer Science, vol 1058. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61055-3_34
Download citation
DOI: https://doi.org/10.1007/3-540-61055-3_34
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61055-7
Online ISBN: 978-3-540-49942-8
eBook Packages: Springer Book Archive