#### Filter Results:

- Full text PDF available (46)

#### Publication Year

1984

2017

- This year (4)
- Last 5 years (15)
- Last 10 years (38)

#### Publication Type

#### Co-author

#### Journals and Conferences

#### Key Phrases

Learn More

- Stephen F. Siegel, George S. Avrunin
- SPIN
- 2004

We explore issues related to the application of finite-state verification techniques to scientific computation software employing the widely-used Message-Passing Interface (MPI). Many of the features of MPI that are important for programmers present significant difficulties for model checking. In this paper, we examine a small parallel program that computes… (More)

- Stephen F. Siegel, Timothy K. Zirkel
- Mathematics in Computer Science
- 2011

We present a method to verify the correctness of parallel programs that perform complex numerical computations, including computations involving floating-point arithmetic. The method requires that a sequential version of the program be provided, to serve as the specification for the parallel one. The key idea is to use model checking, together with symbolic… (More)

- Stephen F. Siegel
- VMCAI
- 2007

This paper explores a way to apply model checking techniques to parallel programs that use the nonblocking primitives of the Message Passing Interface (MPI). The method has been implemented as an extension to the model checker Spin called Mpi-Spin. It has been applied to 17 examples from a widely-used textbook on MPI. Many correctness properties of these… (More)

- Stephen F. Siegel, George S. Avrunin
- PPOPP
- 2005

We give several theorems that can be used to substantially reduce the state space that must be considered in applying finite-state verification techniques, such as model checking, to parallel programs written using a subset of MPI. We illustrate the utility of these theorems by applying them to a small but realistic example.

- Stephen F. Siegel
- VMCAI
- 2005

We are concerned with the verification of certain properties, such as freedom from deadlock, for parallel programs that are written using the Message Passing Interface (MPI). It is known that for MPI programs containing no “wildcard receives” (and restricted to a certain subset of MPI) freedom from deadlock can be established by considering only synchronous… (More)

The Toolkit for Accurate Scientific Software (TASS) is a suite of integrated tools for the formal verification of programs used in computational science, including numerically-intensive message-passing-based parallel programs. While TASS can verify a number of standard safety properties (such as absence of deadlocks and out-of-bound array indexing), its… (More)

- Stephen F. Siegel, Timothy K. Zirkel
- Mathematics in Computer Science
- 2011

Scientific computing poses many challenges to formal verification, including the facts that typical programs (1) are numericallyintensive, (2) are highly-optimized (often by hand), and (3) often employ parallelism in complex ways. Another challenge is specifying correctness. One approach is to provide a very simple, sequential version of an algorithm… (More)

- Stephen F. Siegel, Manchun Zheng, +5 authors Michael S. Rogers
- SC
- 2015

There are many ways to express parallel programs: message-passing libraries (MPI) and multithreading/GPU language extensions such as OpenMP, Pthreads, and CUDA, are but a few. This multitude creates a serious challenge for developers of software verification tools: it takes enormous effort to develop such tools, but each development effort typically targets… (More)

We investigate the application of formal verification techniques to parallel programs which employ the Message Passing Interface (MPI). We develop a formal model of a subset of MPI, and then prove a number of theorems about that model which ameliorate or eliminate altogether the state explosion problem. As an example, we show that if one wishes to verify… (More)