Abstract
We abstract a denotational trace semantics for an imperative language into a compositional and focussed watchpoint semantics. Every abstraction of its computational domain induces an abstract, still compositional and focussed watchpoint semantics. We describe its implementation and instantiation with a domain of signs. It shows that its space and time costs are proportional to the number of watchpoints and that abstract compilation reduces those costs significantly.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
F. Bourdoncle. Abstract Interpretation by Dynamic Partitioning. Journal of Functional Programming, 2(4):407–423, 1992.
F. Bourdoncle. Abstract Debugging of High-Order Imperative Languages. In Proceedings of the 1993 SIGPLAN Conference on Programming Language Design and Implementation, pages 46–55, Albuquerque, New Mexico, June 1993. ACM Press.
M. Codish and B. Demoen. Deriving Polymorphic Type Dependencies for Logic Programs Using Multiple Incarnations of Prop. In Proc. of the first International Symposium on Static Analysis, volume 864 of Lecture Notes in Computer Science, pages 281–296. Springer-Verlag, 1994.
C. Colby and P. Lee. Trace-based Program Analysis. In Proc. of POPL’ 96, pages 195–207, St. Petersburg, FLA, USA, January 1996. ACM Press.
P. Cousot. Constructive Design of a Hierarchy of Semantics of a Transition System by Abstract Interpretation. In S. Brookes and M. Mislove, editors, Proc. of the 13th Conf. on Mathematical Foundations of Programming Semantics (MFPS XIII), volume 6 of Electronic Notes on Theoretical Computer Science, Pittsburgh, PA, USA, March 1997. Elsevier Science Publishers. Available at http://www.elsevier.nl/locate/entcs/volume6.html.
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 POPL’77, pages 238–252, 1977.
P. Cousot and R. Cousot. Systematic Design of Program Analysis Frameworks. In 6th ACM Symp. on Principles of Programming Languages, pages 269–282, 1979.
E. Duesterwald, R. Gupta, and M. Soffa. Demand-Driven Computation of Inter-procedural Data Flow. In Proceedings of POPL’95, pages 37–48, San Francisco, CA, January 1995.
E. Duesterwald, R. Gupta, and M. Soffa. A Practical Framework for Demand-Driven Interprocedural Data Flow Analysis. TOPLAS, 19(6):992–1030, 1997.
M. Gabbrielli, G. Levi, and M. C. Meo. Resultants Semantics for PROLOG. Journal of Logic and Computation, 6(4):491–521, 1995.
M. Hermenegildo, W. Warren, and S.K. Debray. Global Flow Analysis as a Practical Compilation Tool. Journal of Logic Programming, 13(2 & 3):349–366, 1992.
F. Nielson, H. R. Nielson, and C. Hankin. Principles of Program Analysis. Springer-Verlag, 1999.
T. Reps, S. Horwitz, and M. Sagiv. Precise Interprocedural Dataflow Analysis via Graph Reachability. In Proceedings of POPL’95, pages 49–61, San Francisco, CA, January 1995.
M. Sagiv, T. Reps, and R. Wilhelm. Solving Shape-Analysis Problems in Languages with Destructive Updates. In Proc. of POPL’96, pages 16–31, St. Petersburg, FLA, USA, January 1996. ACM Press.
D. A. Schmidt. Trace-based Abstract Interpretation of Operational Semantics. Journal of LISP and Symbolic Computation, 10(3):237–271, 1998.
G. Winskel. The Formal Semantics of Programming Languages. The MIT Press, 1993.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Spoto, F. (2001). Watchpoint Semantics: A Tool for Compositional and Focussed Static Analyses. In: Cousot, P. (eds) Static Analysis. SAS 2001. Lecture Notes in Computer Science, vol 2126. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-47764-0_8
Download citation
DOI: https://doi.org/10.1007/3-540-47764-0_8
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-42314-0
Online ISBN: 978-3-540-47764-8
eBook Packages: Springer Book Archive