Mechanizing programming logics in higher order logic
Current trends in hardware verification and automated theorem proving
Randomized mutual exclusion algorithms revisited
PODC '92 Proceedings of the eleventh annual ACM symposium on Principles of distributed computing
Introduction to HOL: a theorem proving environment for higher order logic
Introduction to HOL: a theorem proving environment for higher order logic
Probabilistic predicate transformers
ACM Transactions on Programming Languages and Systems (TOPLAS)
Partial correctness for probabilistic demonic programs
Theoretical Computer Science
A Discipline of Programming
Proceedings of the 11th International Conference on Theorem Proving in Higher Order Logics
STOC '83 Proceedings of the fifteenth annual ACM symposium on Theory of computing
Abstraction, Refinement And Proof For Probabilistic Systems (Monographs in Computer Science)
Abstraction, Refinement And Proof For Probabilistic Systems (Monographs in Computer Science)
Proofs and Refutations for Probabilistic Refinement
FM '08 Proceedings of the 15th international symposium on Formal Methods
Proofs of randomized algorithms in Coq
Science of Computer Programming
Formalization of entropy measures in HOL
ITP'11 Proceedings of the Second international conference on Interactive theorem proving
Proofs of randomized algorithms in CoQ
MPC'06 Proceedings of the 8th international conference on Mathematics of Program Construction
An approach for lifetime reliability analysis using theorem proving
Journal of Computer and System Sciences
Hi-index | 0.00 |
The probabilistic guarded-command language pGCL [Carroll Morgan, Annabelle McIver. pGCL: formal reasoning for random algorithms. South African Computer Journal (1999)] contains both demonic and probabilistic nondeterminism, which makes it suitable for reasoning about distributed random algorithms [Carroll Morgan. Proof rules for probabilistic loops. In Proceedings of the BCS-FACS 7th Refinement Workshop. He Jifeng, John Cooke and Peter Wallis (eds). Springer Verlag Workshops in Computing, 1996]. Proofs are based on weakest precondition semantics, using an underlying logic of real- (rather than Boolean-) valued functions. We present a mechanization of the quantitative logic for pGCL [Carroll Morgan, Annabelle McIver, and Karen Seidel, Probabilistic predicate transformers. ACM Transactions on Programming Languages and Systems, 18(3): 325-353, May 1996] using the HOL theorem prover [M.J.C. Gordon and T.F. Melham. Introduction to HOL (A theorem-proving environment for higher order logic). Cambridge University Press, 1993], including a proof that all pGCL commands satisfy the new condition sublinearity, the quantitative generalization of conjunctivity for standard GCL [E.W. Dijkstra. A Discipline of Programming. Prentice Hall, 1976]. The mechanized theory also supports the creation of an automatic proof tool which takes as input an annotated pGCL program and its partial correctness specification, and derives from that a sufficient set of verification conditions. This is employed to verify the partial correctness of the probabilistic voting stage in Rabin's mutual-exclusion algorithm [Eyal Kushilevitz and Michael O. Rabin. Randomized mutual exclusion algorithms revisited. In Maurice Herlihy, editor, Proceedings of the 11th Annual Symposium on Principles of Distributed Computing, pages 275-283, Vancouver, BC, Canada, August 1992. ACM Press].