Skip to main content

Verifying Probabilistic Programs Using a Hoare like Logic

  • Conference paper
  • First Online:
Advances in Computing Science — ASIAN’99 (ASIAN 1999)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1742))

Included in the following conference series:

Abstract

Hoare logic can be used to verify properties of deterministic programs by deriving correctness formulae, also called Hoare triples. The goal of this paper is to extend the Hoare logic to be able to deal with probabilistic programs. To this end a generic non-uniform language Lpw with a probabilistic choice operator is introduced and a denotational semantics D is given for the language. A notion of probabilistic predicate is defined to express claims about the state of a probabilistic program. To reason about the probabilistic predicates a derivation system pH, similar to that of standard Hoare logic, is given. The derivation system is shown to be correct with respect to the semantics D. Some basic examples illustrate the use of the system.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. L. de Alfaro. Formal Verification of Probabilistic Systems. PhD thesis, Stanford University, 1997.

    Google Scholar 

  2. S. Andova. Probabilistic process algebra. In Proceedings of ARTS’99, Bamberg, Germany, 1999.

    Google Scholar 

  3. K.R. Apt and E.-R. Olderog. Verification of Sequential and Concurrent Programs. Texts and Monographs in Computer Science. Springer-Verlag, 1991.

    Google Scholar 

  4. C. Baier, M. Kwiatkowska, and G. Norman. Computing probabilistic lower and upper bounds for ltl formulae over sequential and concurrent markov chains. Technical Report CSR-98-4, University of Birmingham, June 1998.

    Google Scholar 

  5. J.W. de Bakker. Mathematical Theory of Program Correctness. Series in Computer Science. Prentice-Hall Internationall, 1980.

    Google Scholar 

  6. P.R. D’Argenio, J.-P. Katoen, and E. Brinksma. A stochastic process algebra for discrete event simulation. Technical report, University of Twente, 1998.

    Google Scholar 

  7. N. Francez. Program Verification. International Computer Science Series. Addison-Wesley, 1992.

    Google Scholar 

  8. J.I. den Hartog. Comparative semantics for a process language with probabilistic choice and non-determinism. Technical Report IR-445, Vrije Universiteit, Ams-terdam, February 1998.

    Google Scholar 

  9. J.I. den Hartog and E.P. de Vink. Mixing up nondeterminism and probability: A preliminary report. ENTCS, 1999. to appear.

    Google Scholar 

  10. J.I. den Hartog and E.P. de Vink. Taking chances on merge and fail: Extending strong and probabilistic bisimulation. Technical Report IR-454, Vrije Universiteit, Amsterdam, March 1999.

    Google Scholar 

  11. H. Hermanns. Interactive Markov Chains. PhD thesis, University of Erlangen-Nurnberg, July 1998.

    Google Scholar 

  12. J. Hooman. Program design in PVS. In Proceedings Workshop on Tool Support for System Development and Verification, June 1996.

    Google Scholar 

  13. D. Kozen. A probabilistic PDL. Journal of Computer and System Sciences, 30:162–178, 1985.

    Article  MATH  MathSciNet  Google Scholar 

  14. K.G. Larsen and A. Skou. Bisimulation through probabilistic testing. Information and Computation, 94:1–28, 1991.

    Article  MATH  MathSciNet  Google Scholar 

  15. N. Lynch. Distributed Algorithms. The Morgan Kaufmann series in data manage-ment systems. Kaufmann, 1996.

    Google Scholar 

  16. C. Morgan and A. McIver. pGCL: formal reasoning for random algorithms. South African Computer Journal, 1999. to appear.

    Google Scholar 

  17. C. Morgan, A. McIver, and K. Seidel. Probabilistic predicate transformers. ACM Transactions on Programming Languages and Systems, 18(3):325–353, May 1996.

    Article  Google Scholar 

  18. R. Motwani and P. Raghavan. Randomized Algorithms. Cambridge University Press, 1995.

    Google Scholar 

  19. R. Segala. Modeling and Verification of Randomized Distributed Real-Time Systems. PhD thesis, Massachusetts Institute of Technology, June 1995.

    Google Scholar 

  20. S.-H. Wu, S.A. Smolka, and E.W. Stark. Composition and behavior of probabilistic I/O automata. Theoretical Computer Science, 176:1–38, 1999.

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

den Hartog, J.I. (1999). Verifying Probabilistic Programs Using a Hoare like Logic. In: Thiagarajan, P.S., Yap, R. (eds) Advances in Computing Science — ASIAN’99. ASIAN 1999. Lecture Notes in Computer Science, vol 1742. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46674-6_11

Download citation

  • DOI: https://doi.org/10.1007/3-540-46674-6_11

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-66856-5

  • Online ISBN: 978-3-540-46674-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics