Abstract
We present a detailed account of a translation from probabilistic call-by-value programs with procedures to Rabin’s probabilistic automata. The translation is fully abstract in that programs exhibit the same computational behaviour if and only if the corresponding automata are language-equivalent. Since probabilistic language equivalence is decidable, we can apply the translation to analyse the behaviour of probabilistic programs and protocols. We illustrate our approach on a number of case studies.
Similar content being viewed by others
Notes
Note that we need to talk about subdistributions because of divergence.
Readers familiar with game semantics will notice that we omit justification pointers. This is because they are uniquely recoverable in the sequences of moves under consideration.
References
Abramsky S (2002) Algorithmic games semantics: a tutorial introduction. In: Schwichtenberg H, Steinbruggen R (eds) Proof and system reliability. Kluwer Academic, Dordrecht, pp 21–47. Proceedings of the NATO Advanced Study Institute, Marktoberdorf
Abramsky S, McCusker G (1997) Call-by-value games. In: Proceedings of CSL. Lecture notes in computer science, vol 1414. Springer, Berlin, pp 1–17
Abramsky S, McCusker G (1998) Game semantics. In: Schwichtenberg H, Berger U (eds) Logic and computation. Springer, Berlin. Proceedings of the 1997 Marktoberdorf Summer School
Abramsky S, Jagadeesan R, Malacaria P (2000) Full abstraction for PCF. Inf Comput 163:409–470
Bause F, Buchholz P, Kemper P (1998) A toolbox for functional and quantitative analysis of DEDS. In: Proceedings of computer performance evaluation (tools). LNCS, vol 1469
Bernardo M, Cleaveland R, Sims S, Stewart W (1998) TwoTowers: a tool integrating functional and performance analysis of concurrent systems. In: Proceedings of FORTE. IFIP conference proceedings, vol 135
Bhargava M, Palamidessi C (2005) Probabilistic anonymity. In: CONCUR. Lecture notes in computer science, vol 3653. Springer, Berlin, pp 171–185
Chaum D (1988) The dining cryptographers problem: unconditional sender and recipient untraceability. J Cryptol 1(1):65–75
Ciesinski F, Baier C (2006) LiQuor: a tool for qualitative and quantitative linear time analysis of reactive systems. In: Proceedings of QEST. IEEE Computer Society, Washington
Cormen TH, Leiserson CE, Rivest RL, Stein C (2001) Introduction to algorithms, 2nd edn. MIT Press, Cambridge
Danos V, Harmer R (2002) Probabilistic game semantics. ACM Trans Comput Log 3(3):359–382
D’Argenio PR, Jeannet B, Jensen HE, Larsen KG (2001) Reachability analysis of probabilistic systems by successive refinements. In: Proceedings of PAPM-PROBMIV. LNCS, vol 2165
Dreyer D, Neis G, Birkedal L (2010) The impact of higher-order state and control effects on local relational reasoning. In: Proceedings of ICFP. ACM, New York, pp 143–156
Hartonas-Garmhausen V, Vale Aguiar Campos S, Clarke EM (1999) ProbVerus: probabilistic symbolic model checking. In: Proceedings of ARTS. LNCS, vol 1601
Hermanns H, Katoen J-P, Meyer-Kayser J, Siegle M (2000) A Markov chain model checker. In: Proceedings of TACAS. LNCS, vol 1785
Hibbard TN (1962) Some combinatorial properties of certain trees with applications to searching and sorting. J ACM 9(1):13–28
Honda K, Yoshida N (1999) Game-theoretic analysis of call-by-value computation. Theor Comput Sci 221(1–2):393–456
Hopkins D, Murawski AS, Ong C-HL (2011) A fragment of ML decidable by visibly pushdown automata. In: Proceedings of ICALP. Lecture notes in computer science, vol 6756. Springer, Berlin, pp 149–161
Hurd J (2002) Formal verification of probabilistic algorithms. PhD thesis, University of Cambridge
Hyland JME, Ong C-HL (2000) On full abstraction for PCF: I. Models, observables and the full abstraction problem, II. Dialogue games and innocent strategies, III. A fully abstract and universal game model. Inf Comput 163(2):285–408
Jonassen AT, Knuth DE (1978) A trivial algorithm whose analysis isn’t. J Comput Syst Sci 16(3):301–322
Kacprzak M, Lomuscio A, Niewiadomski A, Penczek W, Raimondi F, Szreter M (2006) Comparing bdd and sat based techniques for model checking Chaum’s dining cryptographers protocol. Fundam Inform 72(1–3):215–234
Katoen J-P, Khattri M, Zapreev IS (2005) A Markov reward model checker. In: Proceedings of QEST. IEEE Computer Society, Washington
Kiefer S, Murawski AS, Ouaknine J, Wachter B, Worrell J (2011) Language equivalence for probabilistic automata. In: CAV. Lecture notes in computer science, vol 6806. Springer, Berlin, pp 526–540
Knott GD (1975) Deletion in binary storage trees. PhD thesis, Stanford University. Computer Science Technical Report STAN-CS-75-491
Knuth DE (1973) Sorting and searching. In: The art of computer programming, vol 3 (first printing). Addison-Wesley, Reading
Kwiatkowska MZ, Norman G, Parker D (2011) Prism 4.0: verification of probabilistic real-time systems. In: CAV, pp 585–591
Legay A, Murawski AS, Ouaknine J, Worrell J (2008) On automated verification of probabilistic programs. In: Proceedings of TACAS. Lecture notes in computer science, vol 4963. Springer, Berlin, pp 173–187
McIver A, Morgan C (2005) Abstraction and refinement in probabilistic systems. SIGMETRICS Perform Eval Rev 32(4):41–47
McIver A, Morgan C (2010) The thousand-and-one cryptographers. In: Reflections on the work of CAR Hoare. Springer, Berlin
Milner R (1977) Fully abstract models of typed lambda-calculi. Theor Comput Sci 4(1):1–22
Mohri M (2002) Generic e-removal and input e-normalization algorithms for weighted transducers. Int J Found Comput Sci 13(1):129–143
Motwani R, Raghavan P (1995) Randomized algorithms. Cambridge University Press, Cambridge
Murawski AS (2005) Functions with local state: regularity and undecidability. Theor Comput Sci 338(1/3):315–349
Murawski AS, Ouaknine J (2005) On probabilistic program equivalence and refinement. In: Proceedings of CONCUR. Lecture notes in computer science, vol 3653. Springer, Berlin, pp 156–170
Nickau H (1994) Hereditarily sequential functionals. In: Proceedings of the symposium of logical foundations of computer science. LNCS. Springer, Berlin
Rabin MO (1963) Probabilistic automata. Inf Control 6(3):230–245
Rabin MO (1976) Probabilistic algorithms. In: Algorithms and complexity: new directions and results. Academic Press, New York, pp 21–39
Reiter MK, Rubin AD (1998) Crowds: anonymity for web transactions. ACM Trans Inf Syst Secur 1(1):66–92
Reynolds JC (1978) The essence of Algol. In: de Bakker JW, van Vliet JC (eds) Algorithmic languages. North-Holland, Amsterdam, pp 345–372
Sangiorgi D, Kobayashi N, Sumii E (2011) Environmental bisimulations for higher-order languages. ACM Trans Program Lang Syst 33(1):5
Schneider S, Sidiropoulos A (1996) Csp and anonymity. In: ESORICS. Lecture notes in computer science, vol 1146. Springer, Berlin, pp 198–218
Shmatikov V (2004) Probabilistic model checking of an anonymity system. J Comput Secur 12(3/4):355–377
van der Meyden R, Su K (2004) Symbolic model checking the knowledge of the dining cryptographers. In: CSFW. IEEE Computer Society, Washington, p 280
van Glabbeek RJ, Smolka SA, Steffen B (1995) Reactive, generative and stratified models of probabilistic processes. Inf Comput 121(2):285–408
Younes HLS (2005) Ymer: a statistical model checker. In: Proceedings of CAV. LNCS, vol 3576
Author information
Authors and Affiliations
Corresponding author
Additional information
Research funded by EPSRC (EP/G069158/1).
Rights and permissions
About this article
Cite this article
Kiefer, S., Murawski, A.S., Ouaknine, J. et al. Algorithmic probabilistic game semantics. Form Methods Syst Des 43, 285–312 (2013). https://doi.org/10.1007/s10703-012-0173-1
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10703-012-0173-1