Graph-Based Algorithms for Boolean Function Manipulation
IEEE Transactions on Computers
A tree-based algorithm for distributed mutual exclusion
ACM Transactions on Computer Systems (TOCS)
Stabilizing Communication Protocols
IEEE Transactions on Computers - Special issue on protocol engineering
Binary self-stabilization in distributed systems
Information Processing Letters
Leader election in uniform rings
ACM Transactions on Programming Languages and Systems (TOPLAS)
An exercise in fault-containment: self-stabilizing leader election
Information Processing Letters
IEEE Transactions on Software Engineering - Special issue on formal methods in software practice
Self-stabilizing routing and related protocols
Journal of Parallel and Distributed Computing
Designing Masking Fault-Tolerance via Nonmasking Fault-Tolerance
IEEE Transactions on Software Engineering
Self-stabilization
Self-stabilizing systems in spite of distributed control
Communications of the ACM
Symbolic Model Checking for Self-Stabilizing Algorithms
IEEE Transactions on Parallel and Distributed Systems
IEEE Transactions on Computers
Mechanically Verified Self-Stabilizing Hierarchical Algorithms
TACAS '97 Proceedings of the Third International Workshop on Tools and Algorithms for Construction and Analysis of Systems
Verifying a self-stabilizing mutual exclusion algorithm
PROCOMET '98 Proceedings of the IFIP TC2/WG2.2,2.3 International Conference on Programming Concepts and Methods
A case-study in component-based mechanical verification of fault-tolerant programs
ICDCS '99 Workshop on Self-stabilizing Systems
The Theory of Weak Stabilization
WSS '01 Proceedings of the 5th International Workshop on Self-Stabilizing Systems
Weak vs. Self vs. Probabilistic Stabilization
ICDCS '08 Proceedings of the 2008 The 28th International Conference on Distributed Computing Systems
PAT: Towards Flexible Verification under Fairness
CAV '09 Proceedings of the 21st International Conference on Computer Aided Verification
Constraint Based Automated Synthesis of Nonmasking and Stabilizing Fault-Tolerance
SRDS '09 Proceedings of the 2009 28th IEEE International Symposium on Reliable Distributed Systems
Hi-index | 0.00 |
Existing approaches for verifying self-stabilization with a symbolic model checker have relied on the use of weak fairness. We point out that this approach has limited scalability. To overcome this limitation, first, we show that if self-stabilization is possible without fairness then the cost of verifying self-stabilization is substantially lower. In fact, we observe from several case studies that the cost of verification under weak fairness is more than 1000 times that of the cost without fairness. For the case where weak fairness is essential for self-stabilization, we demonstrate the feasibility of two approaches for improving scalability: (1) decomposition and (2) utilizing the weaker version of self-stabilization, namely weak stabilization. In the first approach, the designer partitions the program into components where each component satisfies its property without fairness. We show that the first approach enables us to verify Huang's mutual exclusion program for uniform rings with 31 processes (state space 10^1^3^8) whereas without this approach, it was not possible to verify the same program with 5 processes (state space 10^1^0). In the second approach, a weaker version of self-stabilization is verified. For Hoepman's ring-orientation program on odd-length ring, we show that it is possible to verify weak stabilization for 301 processes (state space 10^1^8^1) whereas self-stabilization could not be verified for 9 processes (state space 10^5) under weak fairness. Furthermore, one can utilize transformation algorithms to convert weak stabilizing programs to probabilistically stabilizing programs. Hence, for the case where it is not possible to verify deterministic self-stabilization, one can obtain the assurance provided by probabilistic self-stabilization at a significantly reduced cost. Finally, we also present 5 case studies to illustrate the scalability of stabilization with techniques suggested in this paper.