Causality-based Model Checking
Abstract
Model checking is usually based on a comprehensive traversal of the state space. Causality-based model checking is a radically different approach that instead analyzes the cause-effect relationships in a program. We give an overview on a new class of model checking algorithms that capture the causal relationships in a special data structure called concurrent traces. Concurrent traces identify key events in an execution history and link them through their cause-effect relationships. The model checker builds a tableau of concurrent traces, where the case splits represent different causal explanations of a hypothetical error. Causality-based model checking has been implemented in the ARCTOR tool, and applied to previously intractable multi-threaded benchmarks.
Cite
@article{arxiv.1710.03391,
title = {Causality-based Model Checking},
author = {Bernd Finkbeiner and Andrey Kupriyanov},
journal= {arXiv preprint arXiv:1710.03391},
year = {2017}
}
Comments
In Proceedings CREST 2017, arXiv:1710.02770