Abstract
We develop a modular approach to statically analyse imperative processes communicating by synchronous message passing. The approach is modular in that it only needs to analyze one process at a time, but will in general have to do so repeatedly. The approach combines lattice-valued regular expressions to capture network communication with a dedicated shuffle operator for composing individual process analysis results. We present both a soundness proof and a prototype implementation of the approach for a synchronous subset of the Go programming language. Overall our approach tackles the combinatorial explosion of concurrent programs by suitable static analysis approximations, thereby lifting traditional sequential analysis techniques to a concurrent setting.
Original language | English |
---|---|
Title of host publication | Static Analysis |
Publisher | Springer |
Publication date | 2018 |
Pages | 284-305 |
ISBN (Print) | 9783319997254 |
DOIs | |
Publication status | Published - 2018 |
Event | 25th Static Analysis Symposium - Katholische Akademie , Freiburg im Breisgau, Germany Duration: 29 Aug 2018 → 31 Aug 2018 Conference number: 25 |
Conference
Conference | 25th Static Analysis Symposium |
---|---|
Number | 25 |
Location | Katholische Akademie |
Country/Territory | Germany |
City | Freiburg im Breisgau |
Period | 29/08/2018 → 31/08/2018 |
Series | Lecture Notes in Computer Science |
---|---|
Volume | 11002 |
ISSN | 0302-9743 |