Static Trace-Based Deadlock Analysis for Synchronous Mini-Go

Kai Stadtmüller,Martin Sulzmann,Peter Thiemann
DOI: https://doi.org/10.48550/arXiv.1608.08330
2016-08-30
Programming Languages
Abstract:We consider the problem of static deadlock detection for programs in the Go programming language which make use of synchronous channel communications. In our analysis, regular expressions extended with a fork operator capture the communication behavior of a program. Starting from a simple criterion that characterizes traces of deadlock-free programs, we develop automata-based methods to check for deadlock-freedom. The approach is implemented and evaluated with a series of examples.
What problem does this paper attempt to address?