A Family of Abstract Interpretations for Static Analysis of Concurrent Higher-Order Programs

  • Matthew Might
  • David Van Horn
Conference paper

DOI: 10.1007/978-3-642-23702-7_16

Part of the Lecture Notes in Computer Science book series (LNCS, volume 6887)
Cite this paper as:
Might M., Van Horn D. (2011) A Family of Abstract Interpretations for Static Analysis of Concurrent Higher-Order Programs. In: Yahav E. (eds) Static Analysis. SAS 2011. Lecture Notes in Computer Science, vol 6887. Springer, Berlin, Heidelberg

Abstract

We develop a framework for computing two foundational analyses for concurrent higher-order programs: (control-)flow analysis (CFA) and may-happen-in-parallel analysis (MHP). We pay special attention to the unique challenges posed by the unrestricted mixture of first-class continuations and dynamically spawned threads. To set the stage, we formulate a concrete model of concurrent higher-order programs: the P(CEK*)S machine. We find that the systematic abstract interpretation of this machine is capable of computing both flow and MHP analyses. Yet, a closer examination finds that the precision for MHP is poor. As a remedy, we adapt a shape analytic technique—singleton abstraction—to dynamically spawned threads (as opposed to objects in the heap). We then show that if MHP analysis is not of interest, we can substantially accelerate the computation of flow analysis alone by collapsing thread interleavings with a second layer of abstraction.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Matthew Might
    • 1
  • David Van Horn
    • 2
  1. 1.University of UtahUSA
  2. 2.Northeastern UniversityUSA

Personalised recommendations