## Designing Checkers for Programs that Run in Parallel (1994)

Venue: | Algorithmica |

Citations: | 13 - 2 self |

### BibTeX

@ARTICLE{Rubinfeld94designingcheckers,

author = {Ronitt Rubinfeld},

title = {Designing Checkers for Programs that Run in Parallel},

journal = {Algorithmica},

year = {1994},

volume = {15},

pages = {30--1}

}

### Years of Citing Articles

### OpenURL

### Abstract

Program correctness for parallel programs is an even more problematic issue than for serial programs. We extend the theory of program result checking to parallel programs, and find general techniques for designing such result checkers that work for many basic problems in parallel computation. These result checkers are simple to program and are more efficient than the actual computation of the result. For example, sorting, multiplication, parity, the all pairs shortest path problem and majority all have constant depth result checkers, and the result checkers for all but the last problem use a linear number of processors. We show that there are P-complete problems (evaluating straight-line programs, linear programming) that have very fast, even constant depth, result checkers. 1 Introduction Verifying a program to see if it is correct is a problem that every programmer has encountered. Even the seemingly simplest of programs can be full of hidden bugs, and in the age of massive software...