Parallel program design: a foundation
Parallel program design: a foundation
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Computational Logic (TOCL)
Program Verification using HOL-UNITY
HUG '93 Proceedings of the 6th International Workshop on Higher Order Logic Theorem Proving and its Applications
A Modular Coding of UNITY in COQ
TPHOLs '96 Proceedings of the 9th International Conference on Theorem Proving in Higher Order Logics
A method for the specification, composition, and testing of distributed object systems
A method for the specification, composition, and testing of distributed object systems
A rigorous environment for development of concurrent systems
Nordic Journal of Computing
A Coq Library for Verification of Concurrent Programs
Electronic Notes in Theoretical Computer Science (ENTCS)
State Spaces --- The Locale Way
Electronic Notes in Theoretical Computer Science (ENTCS)
The rely-guarantee method in Isabelle/HOL
ESOP'03 Proceedings of the 12th European conference on Programming
Decision procedures for multisets with cardinality constraints
VMCAI'08 Proceedings of the 9th international conference on Verification, model checking, and abstract interpretation
Hi-index | 0.00 |
Compositional reasoning must be better understood if non-trivial concurrent programs are to be verified. Chandy and Sanders [2000] have proposed a new approach to reasoning about composition, which Charpentier and Chandy [1999] have illustrated by developing a large example in the UNITY formalism. The present paper describes extensive experiments on mechanizing the compositionality theory and the example, using the proof tool Isabelle. Broader issues are discussed, in particular, the formalization of program states. The usual representation based upon maps from variables to values is contrasted with the alternatives, such as a signature of typed variables. Properties need to be transferred from one program component's signature to the common signature of the system. Safety properties can be so transferred, but progress properties cannot be. Using polymorphism, this problem can be circumvented by making signatures sufficiently flexible. Finally the proof of the example itself is outlined.