Formal Verification of Concurrent programs: How to specify UNITY using the Larch Prover
Abstract
Prover to verify concurrent programs. The chosen specification environment is {\sc UNITY}, because it provides a higher level of abstraction to express solutions to parallel programming problems. We investigate how the syntax and the semantic of {\sc UNITY} can be mechanized in {\sc LP}, a theorem prover designed to check and reason about algebraic specifications, and how we can use the theorem proving methodology to prove safety and liveness.