VSL 2014: VIENNA SUMMER OF LOGIC 2014

Causal Termination of Multi-threaded Programs

Authors: Andrey Kupriyanov and Bernd Finkbeiner

PapersPapers with AbstractsPrefaceAuthor IndexKeyword Index

Paper Information

Title:Causal Termination of Multi-threaded Programs
Authors:Andrey Kupriyanov and Bernd Finkbeiner
Proceedings:CAV 2014 LNCS Proceedings
Editors: Armin Biere, Swen Jacobs and Roderick Bloem
Keywords:Verification, Termination, Concurrency, Causality, Tableau
Abstract:

ABSTRACT. We present a new model checking procedure for the termination analysis of multi-threaded programs. Current termination provers scale badly in the number of threads; our new approach easily handles 100 threads on multi-threaded benchmarks like Producer-Consumer. In our procedure, we characterize the existence of non-terminating executions as Mazurkiewicz-style concurrent traces and apply causality-based transformation rules to refine them until a contradiction can be shown. The termination proof is organized into a tableau, where the case splits represent a novel type of modular reasoning according to different causal explanations of a hypothetical error. We report on experimental results obtained with a tool implementation of the new procedure, called Arctor, on previously intractable multi-threaded benchmarks.

Pages:17
Talk:Jul 22 15:50
Paper:
Disclaimer | Powered by EasyChair Smart Program