A new approach to proving the correctness of multiprocess programs

L Lamport - ACM Transactions on Programming Languages and …, 1979 - dl.acm.org
L Lamport
ACM Transactions on Programming Languages and Systems (TOPLAS), 1979dl.acm.org
A new, nonassertional approach to proving multiprocess program correctness is described
by proving the correctness of a new algorithm to solve the mutual exclusion problem. The
algorithm is an improved version of the bakery algorithm. It is specified and proved correct
without being decomposed into indivisible, atomic operations. This allows two different
implementations for a conventional, nondistributed system. Moreover, the approach
provides a sufficiently general specification of the algorithm to allow nontrivial …
A new, nonassertional approach to proving multiprocess program correctness is described by proving the correctness of a new algorithm to solve the mutual exclusion problem. The algorithm is an improved version of the bakery algorithm. It is specified and proved correct without being decomposed into indivisible, atomic operations. This allows two different implementations for a conventional, nondistributed system. Moreover, the approach provides a sufficiently general specification of the algorithm to allow nontrivial implementations for a distributed system as well.
ACM Digital Library