English

Compositional Reasoning for Shared-variable Concurrent Programs

Formal Languages and Automata Theory 2018-03-28 v2 Logic in Computer Science Software Engineering

Abstract

Scalable and automatic formal verification for concurrent systems is always demanding. In this paper, we propose a verification framework to support automated compositional reasoning for concurrent programs with shared variables. Our framework models concurrent programs as succinct automata and supports the verification of multiple important properties. Safety verification and simulations of succinct automata are parallel compositional, and safety properties of succinct automata are preserved under refinements. We generate succinct automata from infinite state concurrent programs in an automated manner. Furthermore, we propose the first automated approach to checking rely-guarantee based simulations between infinite state concurrent programs. We have prototyped our algorithms and applied our tool to the verification of multiple refinements.

Keywords

Cite

@article{arxiv.1611.00574,
  title  = {Compositional Reasoning for Shared-variable Concurrent Programs},
  author = {Fuyuan Zhang and Yongwang Zhao and David Sanan and Yang Liu and Alwen Tiu and Shang-Wei Lin and Jun Sun},
  journal= {arXiv preprint arXiv:1611.00574},
  year   = {2018}
}