Verification of multiprocess probabilistic protocols
Distributed Computing
Hierarchical correctness proofs for distributed algorithms
PODC '87 Proceedings of the sixth annual ACM Symposium on Principles of distributed computing
On achieving consensus using a shared memory
PODC '88 Proceedings of the seventh annual ACM Symposium on Principles of distributed computing
Bounded polynomial randomized consensus
Proceedings of the eighth annual ACM Symposium on Principles of distributed computing
Fast randomized consensus using shared memory
Journal of Algorithms
ISTCS'92 Symposium proceedings on Theory of computing and systems
Time- and space-efficient randomized consensus
Journal of Algorithms
Proving time bounds for randomized distributed algorithms
PODC '94 Proceedings of the thirteenth annual ACM symposium on Principles of distributed computing
Impossibility of distributed consensus with one faulty process
Journal of the ACM (JACM)
Forward and backward simulations I.: untimed systems
Information and Computation
Formal verification of timed properties of randomized distributed algorithms
Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing
Probabilistic predicate transformers
ACM Transactions on Programming Languages and Systems (TOPLAS)
Modeling and verification of randomized distributed real-time systems
Modeling and verification of randomized distributed real-time systems
Randomized Consensus in Expected O(n log^ 2 n) Operations Per Processor
SIAM Journal on Computing
Polylog randomized wait-free consensus
PODC '96 Proceedings of the fifteenth annual ACM symposium on Principles of distributed computing
Efficient asynchronous consensus with the weak adversary scheduler
PODC '97 Proceedings of the sixteenth annual ACM symposium on Principles of distributed computing
Termination of Probabilistic Concurrent Program
ACM Transactions on Programming Languages and Systems (TOPLAS)
Concurrent reading and writing
Communications of the ACM
Distributed Algorithms
Time and Probability in Formal Design of Distributed Systems
Time and Probability in Formal Design of Distributed Systems
POPL '81 Proceedings of the 8th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Finite State Markovian Decision Processes
Finite State Markovian Decision Processes
Analyzing Expected Time by Scheduler-Luck Games
IEEE Transactions on Software Engineering
Randomized Consensus in Expected O(n²log n) Operations
WDAG '91 Proceedings of the 5th International Workshop on Distributed Algorithms
Efficient Asynchronous Consensus with the Value-Oblivious Adversary Scheduler
ICALP '96 Proceedings of the 23rd International Colloquium on Automata, Languages and Programming
Time Optimal Self-Stabilizing Spanning Tree Algorithms
Proceedings of the 13th Conference on Foundations of Software Technology and Theoretical Computer Science
Model Checking of Probabalistic and Nondeterministic Systems
Proceedings of the 15th Conference on Foundations of Software Technology and Theoretical Computer Science
Time Optimal Self-Stabilizing Spanning Tree Algorithms
Time Optimal Self-Stabilizing Spanning Tree Algorithms
LIVENESS IN TIMED AND UNTIMED SYSTEMS
LIVENESS IN TIMED AND UNTIMED SYSTEMS
Verification of randomized distributed algorithms
Lectures on formal methods and performance analysis
Coin Lemmas with Random Variables
PAPM-PROBMIV '01 Proceedings of the Joint International Workshop on Process Algebra and Probabilistic Methods, Performance Modeling and Verification
Verifying Randomized Byzantine Agreement
FORTE '02 Proceedings of the 22nd IFIP WG 6.1 International Conference Houston on Formal Techniques for Networked and Distributed Systems
Self-stabilizing Neighborhood Unique Naming under Unfair Scheduler
Euro-Par '01 Proceedings of the 7th International Euro-Par Conference Manchester on Parallel Processing
Automated Verification of a Randomized Distributed Consensus Protocol Using Cadence SMV and PRISM
CAV '01 Proceedings of the 13th International Conference on Computer Aided Verification
Tight Space Self-stabilizing Uniform l-Mutual Exclusion
ICDCS '01 Proceedings of the The 21st International Conference on Distributed Computing Systems
Switched PIOA: parallel composition via distributed scheduling
Theoretical Computer Science - Components and objects
A testing scenario for probabilistic processes
Journal of the ACM (JACM)
Analyzing Security Protocols Using Time-Bounded Task-PIOAs
Discrete Event Dynamic Systems
Symbolic algorithms for qualitative analysis of Markov decision processes with Buchi objectives
CAV'11 Proceedings of the 23rd international conference on Computer aided verification
Switched probabilistic i/o automata
ICTAC'04 Proceedings of the First international conference on Theoretical Aspects of Computing
Proceedings of the twenty-second annual ACM-SIAM symposium on Discrete Algorithms
Probability and nondeterminism in operational models of concurrency
CONCUR'06 Proceedings of the 17th international conference on Concurrency Theory
Compositional reasoning for probabilistic finite-state behaviors
Processes, Terms and Cycles
Assume-Guarantee verification for probabilistic systems
TACAS'10 Proceedings of the 16th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Symbolic algorithms for qualitative analysis of Markov decision processes with Büchi objectives
Formal Methods in System Design
Faster algorithms for markov decision processes with low treewidth
CAV'13 Proceedings of the 25th international conference on Computer Aided Verification
Compositional probabilistic verification through multi-objective model checking
Information and Computation
Hi-index | 0.00 |
The Probabilistic I/O Automaton model of [31] is used as the basis for a formal presentation and proof of the randomized consensus algorithm of Aspnes and Herlihy. The algorithm guarantees termination within expected polynomial time. The Aspnes-Herlihy algorithm is a rather complex algorithm. Processes move through a succession of asynchronous rounds, attempting to agree at each round. At each round, the agreement attempt involves a distributed random walk. The algorithm is hard to analyze because of its use of nontrivial results of probability theory (specifically, random walk theory which is based on infinitely many coin flips rather than on finitely many coin flips), because of its complex setting, including asynchrony and both nondeterministic and probabilistic choice, and because of the interplay among several different sub-protocols. We formalize the Aspnes-Herlihy algorithm using probabilistic I/O automata. In doing so, we decompose it formally into three subprotocols: one to carry out the agreement attempts, one to conduct the random walks, and one to implement a shared counter needed by the random walks. Properties of all three subprotocols are proved separately, and combined using general results about automaton composition. It turns out that most of the work involves proving non-probabilistic properties (invariants, simulation mappings, non-probabilistic progress properties, etc.). The probabilistic reasoning is isolated to a few small sections of the proof. The task of carrying out this proof has led us to develop several general proof techniques for probabilistic I/O automata. These include ways to combine expectations for different complexity measures, to compose expected complexity properties, to convert probabilistic claims to deterministic claims, to use abstraction mappings to prove probabilistic properties, and to apply random walk theory in a distributed computational setting. We apply all of these techniques to analyze the expected complexity of the algorithm.