Model Checking in Bits and Pieces

  title={Model Checking in Bits and Pieces},
  author={Kedar S. Namjoshi},
  booktitle={Festschrift for Dave Schmidt},
  • K. Namjoshi
  • Published in Festschrift for Dave Schmidt 19 September 2013
  • Computer Science
Fully automated verification of concurrent programs is a difficult problem, primarily because of state explosion: the exponential growth of a program state space with the number of its concurrently active components. It is natural to apply a divide and conquer strategy to ameliorate state explosion, by analyzing only a single component at a time. We show that this strategy leads to the notion of a "split" invariant, an assertion which is globally inductive, while being structured as the… 

Tables from this paper



Exploiting symmetry in temporal logic model checking

What it means for a finite state system to be symmetric is formalized and techniques for reducing such systems when the transition relation is given explicitly in terms of states or symbolically as a BDD are described.

Better verification through symmetry

This work provides a proof of the soundness of the new symmetry-based verification algorithm based on a definition of the formal semantics of a simple description language with scalarsets, and leads to an alternative characterization of data independence.

Reducing Model Checking of the Many to the Few

Decidability of PMCP is established as it is only necessary to model check a finite number of relatively small systems, and efficient decidability can be obtained in some cases.

Environment Abstraction for Parameterized Verification

This paper introduces environment abstraction as a tool for the verification of concurrent parameterized systems with unbounded variables and demonstrates the feasibility of the approach by verifying the safety and liveness properties of Lamport's bakery algorithm and Szymanski's mutual exclusion algorithm.

Learning Assumptions for Compositional Verification

This paper presents a novel framework for performing assume-guarantee reasoning in an incremental and fully automated fashion and has implemented this approach in the LTSA tool and applied it to a NASA system.

Invisible Invariants and Abstract Interpretation

The method of Invisible Invariants provides a way to verify safety properties of infinite parameterized classes of finite- state systems using finite-state model checking techniques and suggests a generic strategy for computing abstract fixed points in the case where the best abstract transformer has a high computational cost.

Parallelizing a Symbolic Compositional Model-Checking Algorithm

A parallel, symbolic, model-checking algorithm, built around a compositional reasoning method that constructs a collection of per-process invariants, which together imply a desired global safety property, leading to good parallel performance.

Predicate abstraction and refinement for verifying multi-threaded programs

This paper proposes a method for safety verification of multi-threaded programs that applies (transition) predicate abstraction-based discovery of environment transitions, exposing a minimal amount of information about the thread interleaving.

Concurrency Verification: Introduction to Compositional and Noncompositional Methods

This is a systematic and comprehensive introduction both to compositional proof methods for the state-based verification of concurrent programs, such as the assumption-commitment and rely-guarantee