Local proofs for global safety properties

  • Authors:
  • Ariel Cohen;Kedar S. Namjoshi

  • Affiliations:
  • New York University, Courant Institute, New York, USA 10012;Bell Labs, Murray Hill, USA 07974

  • Venue:
  • Formal Methods in System Design
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper explores locality in proofs of global safety properties of concurrent programs. Model checking on the full state space is often infeasible due to state explosion. A local proof, in contrast, is a collection of per-process invariants, which together imply the desired global safety property. Local proofs can be more compact than global proofs, but local reasoning is also inherently incomplete. In this paper, we present an algorithm for safety verification that combines local reasoning with gradual refinement. The algorithm gradually exposes facts about the internal state of components, until either a local proof or a real error is discovered. The refinement mechanism ensures completeness. Experiments show that local reasoning can have significantly better performance over the traditional reachability computation. Moreover, for some parameterized protocols, a local proof can be used as the basis of a correctness proof over all instances.