English

Causality-based Model Checking

Logic in Computer Science 2017-10-11 v1 Programming Languages

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.

Keywords

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