Probabilistic Bisimulation for Parameterized Systems (Technical Report)

Probabilistic bisimulation is a fundamental notion of process equivalence for probabilistic systems. Among others, it has important applications including formalizing the anonymity property of several communication protocols. There is a lot of work on verifying probabilistic bisimulation for finite systems. This is however not the case for parameterized systems, where the problem is in general undecidable. In this paper we provide a generic framework for reasoning about probabilistic bisimulation for parameterized systems. Our approach is in the spirit of software verification, wherein we encode proof rules for probabilistic bisimulation and use a decidable first-order theory to specify systems and candidate bisimulation relations, which can then be checked automatically against the proof rules. As a case study, we show that our framework is sufficiently expressive for proving the anonymity property of the parameterized dining cryptographers protocol and the parameterized grades protocol, when supplied with a candidate regular bisimulation relation. Both of these protocols hitherto could not be verified by existing automatic methods. Moreover, with the help of standard automata learning algorithms, we show that the candidate relations can be synthesized fully automatically, making the verification fully automated.

[1]  Lukás Holík,et al.  Lazy Automata Techniques for WS1S , 2017, TACAS.

[2]  Joël Ouaknine,et al.  APEX: An Analyzer for Open Probabilistic Programs , 2012, CAV.

[3]  James Worrell,et al.  Bisimilarity of Probabilistic Pushdown Automata , 2012, FSTTCS.

[4]  Zohar Manna,et al.  The calculus of computation - decision procedures with applications to verification , 2007 .

[5]  Marta Z. Kwiatkowska,et al.  Model checking for probability and time: from theory to practice , 2003, 18th Annual IEEE Symposium of Logic in Computer Science, 2003. Proceedings..

[6]  David Chaum,et al.  The dining cryptographers problem: Unconditional sender and recipient untraceability , 1988, Journal of Cryptology.

[7]  Damien Pous,et al.  Checking NFA equivalence with bisimulations up to congruence , 2013, POPL.

[8]  William H. Sanders,et al.  Optimal state-space lumping in Markov chains , 2003, Inf. Process. Lett..

[9]  A. To Model Checking Infinite-State Systems: Generic and Specific Approaches , 2010 .

[10]  Gethin Norman,et al.  Bisimulation for Demonic Schedulers , 2009, FoSSaCS.

[11]  Pierre Wolper,et al.  Iterating Transducers in the Large (Extended Abstract) , 2003, CAV.

[12]  Rupak Majumdar,et al.  Fair Termination for Parameterized Probabilistic Concurrent Systems , 2017, TACAS.

[13]  Ronald Fagin,et al.  Reasoning about knowledge , 1995 .

[14]  Kousha Etessami,et al.  Verifying Probabilistic Procedural Programs , 2004, FSTTCS.

[15]  Christel Baier,et al.  Polynomial Time Algorithms for Testing Probabilistic Bisimulation and Simulation , 1996, CAV.

[16]  Giuliana Franceschinis,et al.  Simple O(m logn) Time Markov Chain Lumping , 2010, TACAS.

[17]  Tomás Vojnar,et al.  Regular Model Checking Using Inference of Regular Languages , 2004, INFINITY.

[18]  Anthony Widjaja Lin,et al.  Algorithmic metatheorems for decidable LTL model checking over infinite systems , 2010, FoSSaCS.

[19]  Parosh Aziz Abdulla,et al.  A Survey of Regular Model Checking , 2004, CONCUR.

[20]  James Worrell,et al.  On the Complexity of Computing Probabilistic Bisimilarity , 2012, FoSSaCS.

[21]  Sorin Lerner,et al.  Proving optimizations correct using parameterized program equivalence , 2009, PLDI '09.

[22]  Philipp Rümmer,et al.  L O ] 3 O ct 2 01 7 Learning to Prove Safety over Parameterised Concurrent Systems ( Full Version ) , 2018 .

[23]  Mahesh Viswanathan,et al.  Learning to verify systems , 2006 .

[24]  Christel Baier,et al.  Principles of model checking , 2008 .

[25]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[26]  Shmuel Sagiv,et al.  Paxos made EPR: decidable reasoning about distributed protocols , 2017, Proc. ACM Program. Lang..

[27]  Parosh Aziz Abdulla,et al.  Regular model checking for LTL(MSO) , 2004, International Journal on Software Tools for Technology Transfer.

[28]  Christof Löding,et al.  Transforming structures by set interpretations , 2007, Log. Methods Comput. Sci..

[29]  Nils Jansen,et al.  Regular Model Checking Using Solver Technologies and Automata Learning , 2013, NASA Formal Methods.

[30]  Achim Blumensath,et al.  Finite Presentations of Infinite Structures: Automata and Interpretations , 2004, Theory of Computing Systems.

[31]  Géraud Sénizergues,et al.  The Bisimulation Problem for Equational Graphs of Finite Out-Degree , 2000, SIAM J. Comput..

[32]  Mark Lillibridge,et al.  Extended static checking for Java , 2002, PLDI '02.

[33]  Kim G. Larsen,et al.  Bisimulation through Probabilistic Testing , 1991, Inf. Comput..

[34]  K. Rustan M. Leino,et al.  Dafny: An Automatic Program Verifier for Functional Correctness , 2010, LPAR.

[35]  Mahesh Viswanathan,et al.  Learning to Verify Safety Properties , 2004, ICFEM.

[36]  Dan Roth,et al.  Learning invariants using decision trees and implication counterexamples , 2016, POPL.

[37]  Nils Klarlund,et al.  MONA Implementation Secrets , 2000, Int. J. Found. Comput. Sci..

[38]  Kenneth L. McMillan,et al.  Ivy: safety verification by interactive generalization , 2016, PLDI.

[39]  Achim Blumensath,et al.  Automatic structures , 2000, Proceedings Fifteenth Annual IEEE Symposium on Logic in Computer Science (Cat. No.99CB36332).

[40]  Thomas Schwentick,et al.  Definable relations and first-order query languages over strings , 2003, JACM.

[41]  Philipp Rümmer,et al.  Liveness of Randomised Parameterised Systems under Arbitrary Schedulers , 2016, CAV.

[42]  Parosh Aziz Abdulla,et al.  Decisive Markov Chains , 2007, Log. Methods Comput. Sci..

[43]  Ufuk Topcu,et al.  An Automaton Learning Approach to Solving Safety Games over Infinite Graphs , 2016, TACAS.

[44]  Marcus Nilsson,et al.  Regular Model Checking , 2000, CAV.

[45]  Dana Angluin,et al.  Learning Regular Sets from Queries and Counterexamples , 1987, Inf. Comput..

[46]  Anthony Widjaja Lin,et al.  Recurrent Reachability Analysis in Regular Model Checking , 2008, LPAR.