Authors
Pavol Černý, Thomas A Henzinger, Arjun Radhakrishna, Leonid Ryzhyk, Thorsten Tarrach
Publication date
2013/7/13
Book
International Conference on Computer Aided Verification
Pages
951-967
Publisher
Springer Berlin Heidelberg
Description
We develop program synthesis techniques that can help programmers fix concurrency-related bugs. We make two new contributions to synthesis for concurrency, the first improving the efficiency of the synthesized code, and the second improving the efficiency of the synthesis procedure itself. The first contribution is to have the synthesis procedure explore a variety of (sequential) semantics-preserving program transformations. Classically, only one such transformation has been considered, namely, the insertion of synchronization primitives (such as locks). Based on common manual bug-fixing techniques used by Linux device-driver developers, we explore additional, more efficient transformations, such as the reordering of independent instructions. The second contribution is to speed up the counterexample-guided removal of concurrency bugs within the synthesis procedure by considering partial-order …
Total citations
2013201420152016201720182019202020212022202320241591226362612
Scholar articles
P Černý, TA Henzinger, A Radhakrishna, L Ryzhyk… - International Conference on Computer Aided …, 2013