A lattice-structured proof of a minimum spanning
PODC '88 Proceedings of the seventh annual ACM Symposium on Principles of distributed computing
Understanding and verifying distributed algorithms using stratified decomposition
PODC '88 Proceedings of the seventh annual ACM Symposium on Principles of distributed computing
Petri nets and algebraic specifications
Theoretical Computer Science
The existence of refinement mappings
Theoretical Computer Science
PODC '92 Proceedings of the eleventh annual ACM symposium on Principles of distributed computing
A Distributed Algorithm for Minimum-Weight Spanning Trees
ACM Transactions on Programming Languages and Systems (TOPLAS)
An exercise in proving parallel programs correct
Communications of the ACM
Algebraic nets with flexible arcs
Theoretical Computer Science
Compositional Transformational Design for Concurrent Programs
COMPOS'97 Revised Lectures from the International Symposium on Compositionality: The Significant Difference
Action Systems and Action Refinement in the Development of Parallel Systems - An Algebraic Approach
CONCUR '91 Proceedings of the 2nd International Conference on Concurrency Theory
Property Preserving Transition Refinement with Concurrent Runs: An Example
ACSD '01 Proceedings of the Second International Conference on Application of Concurrency to System Design
Data Refinement: Model-Oriented Proof Methods and their Comparison
Data Refinement: Model-Oriented Proof Methods and their Comparison
A new proof of the GHS minimum spanning tree algorithm
DISC'06 Proceedings of the 20th international conference on Distributed Computing
Hi-index | 0.00 |
The algorithm of Gallager, Humblet, and Spira computes the minimum spanning tree of a weighted graph in a distributed fashion. Though based on a simple mathematical idea, this algorithm is hard to understand because of the complex communication between the distributed agents.There are several attempts to prove the correctness of this algorithm but most of the proofs are either incomplete or extremely long and technical and, therefore, difficult to comprehend.This paper reports on a new model and a new correctness proof for the algorithm. Model and proof are given in a sequence of 12 property preserving refinement steps, starting with a simple non-distributed algorithm. All algorithms are modelled by Algebraic Petri nets. We justify 8 of the refinement steps using well-known refinement methods for distributed algorithms. The other four steps can not be justified using traditional refinement methods. Their correctness is proved by using the new concept of transition refinement which we introduced in [16].