The reality of multi-core hardware has made concurrent programs pervasive. Unfortunately, writing correct concurrent programs is difficult. Addressing this challenge requires adva...
Program bugs remain a major challenge for software developers and various tools have been proposed to help with their localization and elimination. Most present-day tools are base...
Compositional semantics allow to reason about programs in an incremental way, thus providing the formal base for the development of modular data-flow analyses. The major drawback ...
We present the first shape analysis for multithreaded programs that avoids the explicit enumeration of execution-interleavings. Our approach is to automatically infer a resource ...
One of the most important decisions about the architecture of a server program is its concurrency mechanisms. However, a good concurrency model for general-purpose server programs ...