Predicate abstraction for relaxed memory models

Andrei Marian Dan, Yuri Meshman, Martin Vechev, Eran Yahav

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

We present a novel approach for predicate abstraction of programs running on relaxed memory models. Our approach consists of two steps. First, we reduce the problem of verifying a program P running on a memory model M to the problem of verifying a program PM that captures an abstraction of M as part of the program. Second, we present a new technique for discovering predicates that enable verification of PM. The core idea is to extrapolate from the predicates used to verify P under sequential consistency. A key new concept is that of cube extrapolation: it successfully avoids exponential state explosion when abstracting PM. We implemented our approach for the x86 TSO and PSO memory models and showed that predicates discovered via extrapolation are powerful enough to verify several challenging concurrent programs. This is the first time some of these programs have been verified for a model as relaxed as PSO.

Original languageEnglish
Title of host publicationStatic Analysis - 20th International Symposium, SAS 2013, Proceedings
Pages84-104
Number of pages21
DOIs
StatePublished - 2013
Event20th International Static Analysis Symposium, SAS 2013 - Seattle, WA, United States
Duration: 20 Jun 201322 Jun 2013

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume7935 LNCS

Conference

Conference20th International Static Analysis Symposium, SAS 2013
Country/TerritoryUnited States
CitySeattle, WA
Period20/06/1322/06/13

All Science Journal Classification (ASJC) codes

  • Theoretical Computer Science
  • General Computer Science

Fingerprint

Dive into the research topics of 'Predicate abstraction for relaxed memory models'. Together they form a unique fingerprint.

Cite this