Partial Order Reduction for Rewriting Semantics of Programming Languages

  • Authors:
  • Azadeh Farzan;José Meseguer

  • Affiliations:
  • Computer Science Department, University of Illinois at Urbana-Champaign, Urbana, USA;Computer Science Department, University of Illinois at Urbana-Champaign, Urbana, USA

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software model checkers are typically language-specific, require substantial development efforts, and are hard to reuse for other languages. Adding partial order reduction (POR) capabilities to such tools typically requires sophisticated changes to the tool's model checking algorithms. This paper proposes a new method to make software model checkers language-independent and improving their performance through POR. Getting the POR capabilities does not require making any changes to the underlying model checking algorithms: for each language L, they are instead achieved through a theory transformationR"L@?R"L"+"P"O"R of L's formal semantics, rewrite theory R"L. Under very minimal assumptions, this can be done for any language L with relatively little effort. Our experiments with the JVM, a Promela-like language and Maude indicate that significant state space reductions and time speedups can be gained for tools generated this way.