Home > Research > Publications & Outputs > Extracting Safe Thread Schedules from Incomplet...

Electronic data

  • patrick-extracting20

    Accepted author manuscript, 485 KB, PDF document

    Available under license: CC BY: Creative Commons Attribution 4.0 International License


Text available via DOI:

View graph of relations

Extracting Safe Thread Schedules from Incomplete Model Checking Results

Research output: Contribution to Journal/MagazineJournal articlepeer-review

<mark>Journal publication date</mark>31/10/2020
<mark>Journal</mark>International Journal on Software Tools for Technology Transfer
Number of pages17
Pages (from-to)565-581
Publication StatusPublished
Early online date26/06/20
<mark>Original language</mark>English


Model checkers frequently fail to completely verify a concurrent program, even if partial-order reduction is applied. The verification engineer is left in doubt whether the program is safe and the effort toward verifying the program is wasted. We present a technique that uses the results of such incomplete verification attempts to construct a (fair) scheduler that allows the safe execution of the partially verified concurrent program. This scheduler restricts the execution to schedules that have been proven safe (and prevents executions that were found to be erroneous). We evaluate the performance of our technique and show how it can be improved using partial-order reduction. While constraining the scheduler results in a considerable performance penalty in general, we show that in some cases our approach—somewhat surprisingly—even leads to faster executions.