Abstraction-guided synthesis of synchronization

Martin Vechev, Eran Yahav, Greta Yorsh

Research output: Contribution to journalArticlepeer-review

Abstract

We present a novel framework for automatic inference of efficient synchronization in concurrent programs, a task known to be difficult and error-prone when done manually. Our framework is based on abstract interpretation and can infer synchronization for infinite state programs. Given a program, a specification, and an abstraction, we infer synchronization that avoids all (abstract) interleavings that may violate the specification, but permits as many valid interleavings as possible. Combined with abstraction refinement, our framework can be viewed as a new approach for verification where both the program and the abstraction can be modified on-the-fly during the verification process. The ability to modify the program, and not only the abstraction, allows us to remove program interleavings not only when they are known to be invalid, but also when they cannot be verified using the given abstraction. We implemented a prototype of our approach using numerical abstractions and applied it to verify several example programs.

Original languageEnglish
Pages (from-to)413-431
Number of pages19
JournalInternational Journal on Software Tools for Technology Transfer
Volume15
Issue number5-6
DOIs
StatePublished - Oct 2013

Keywords

  • Abstract interpretation
  • Concurrency
  • Synthesis
  • Verification

All Science Journal Classification (ASJC) codes

  • Software
  • Information Systems

Fingerprint

Dive into the research topics of 'Abstraction-guided synthesis of synchronization'. Together they form a unique fingerprint.

Cite this