Hierarchical correctness proofs for distributed algorithms
PODC '87 Proceedings of the sixth annual ACM Symposium on Principles of distributed computing
Modular verification of asynchronous networks
PODC '87 Proceedings of the sixth annual ACM Symposium on Principles of distributed computing
Verifying temporal properties without temporal logic
ACM Transactions on Programming Languages and Systems (TOPLAS)
A lattice-structured proof of a minimum spanning
PODC '88 Proceedings of the seventh annual ACM Symposium on Principles of distributed computing
A fully abstract trace model for dataflow networks
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A fully abstract trace model for dataflow and asynchronous networks
Distributed Computing
Hi-index | 0.00 |
This thesis investigates a particular approach, called state-transition specification, to the problem of describing the behavior of modules in a distributed or concurrent computer system. A state-transition specification consists of: (1) a state machine, which incorporates the safety or invariance properties of the module, and (2) validity conditions on the computations of the machine, which capture the desired liveness or eventuality properties. The theory and techniques of state-transition specification are developed from first principles to a point at which it is possible to write example specifications to check the specifications for consistency, and to perform correctness proofs using the specifications. The utility of the techniques is demonstrated through examples. Major contributions of the thesis include: (1) the definition of a semantic model that incorporates hierarchy of abstraction and modular decomposition as fundamental notions; (2) specification and proof techniques that smoothly handle both safety and liveness properties; (3) techniques that use liveness properties stated in rely-/guarantee-condition form to obtain simple proofs of correctness; (4) an interesting and useful notion of consistency for specifications involving liveness properties.