ON-THE-FLY, LTL MODEL CHECKING with SPIN

Spin

Contents

For downloading and installation instructions, see Spin's Readme file.

General Description

[acm_logo] Spin is a popular software tool that can be used for the formal verification of distributed software systems. The tool was developed at Bell Labs in the original Unix group of the Computing Sciences Research Center, starting in 1980. The software has been available freely since 1991, and continues to evolve to keep pace with new developments in the field. In April 2002 the tool was awarded the prestigious System Software Award for 2001 by the ACM.

Some of the features that set this tool apart from related verification systems are:

To verify a design, a formal model is built using PROMELA, Spin's input language. PROMELA is a non-deterministic language, loosely based on Dijkstra's guarded command language notation and borrowing the notation for i/o operations from Hoare's CSP language.

Spin can be used in three basic modes:

  1. as a simulator, allowing for rapid prototyping with a random, guided, or interactive simulations
  2. as an exhaustive verifier, capable of rigorously proving the validity of user specified correctness requirements (using partial order reduction theory to optimize the search)
  3. as proof approximation system that can validate even very large protocol systems with maximal coverage of the state space.

All software is written in ANSI standard C, and is portable across all versions of Unix, Linux, Plan9, Inferno, Solaris, and Windows operating systems.

Tool Documentation

Documentation for Spin consists of published papers and books, documentation distributed with the Spin sources, online manual pages, the Spin Newsletters, and the Spin Workshop proceedings. The following list points to the online documentation; some relevant papers and books can be found in the next section.

Theoretical Background

NewsLetters

Annual Workshops

[logo] The next, 10th, Spin workshop will be organized by Thomas Ball and Sriram Rajamani from Microsoft Research, co-located with ICSE2003, May 3-10, 2003, in Portland, Oregon, USA.
Online proceedings for previous workshops can be found in:

Valid HTML 4.0!

[check me]


spin_list@spinroot.com (Page Updated: 25 January 2003)