PROBMELA: a modeling language for communicating probabilistic processes

Building automated tools to address the analysis of reactive probabilistic systems requires a simple, but expressive input language with a formal semantics based on a probabilistic operational model that can serve as starting point for verification algorithms. We introduce for probabilistic parallel programs with shared variables, message passing via synchronous and (perfect or lossy) fifo channels and atomic regions and provide a structured operational semantics. Applied to finite-state systems, the semantics can serve as basis for the algorithmic generation of a Markov decision process that models the stepwise behavior of the given system.

[1]  Bengt Jonsson,et al.  A calculus for communicating systems with time and probabilities , 1990, [1990] Proceedings 11th Real-Time Systems Symposium.

[2]  Erik P. de Vink,et al.  Verifying Probabilistic Programs Using a Hoare Like Logic , 2002, Int. J. Found. Comput. Sci..

[3]  Krzysztof R. Apt,et al.  Correctness proofs of distributed termination algorithms , 1986, TOPL.

[4]  Gordon D. Plotkin,et al.  A structural approach to operational semantics , 2004, J. Log. Algebraic Methods Program..

[5]  Wang Yi,et al.  Probabilistic Extensions of Process Algebras , 2001, Handbook of Process Algebra.

[6]  Kim G. Larsen,et al.  Compositional Verification of Probabilistic Processes , 1992, CONCUR.

[7]  C. Baier,et al.  Domain equations for probabilistic processes , 2000, Mathematical Structures in Computer Science.

[8]  Amir Pnueli,et al.  Probabilistic Verification , 1993, Information and Computation.

[9]  Claire Jones,et al.  Probabilistic non-determinism , 1990 .

[10]  Gavin Lowe,et al.  Probabilistic and Prioritized Models of Timed CSP , 1995, Theor. Comput. Sci..

[11]  Christel Baier,et al.  Domain equations for probabilistic processes , 2000, Mathematical Structures in Computer Science.

[12]  Susan S. Owicki Verifying Concurrent Programs With Shared Data Classes , 1977, Formal Description of Programming Concepts.

[13]  Thomas A. Henzinger,et al.  Reactive Modules , 1996, Proceedings 11th Annual IEEE Symposium on Logic in Computer Science.

[14]  Parosh Aziz Abdulla,et al.  Reasoning about Probabilistic Lossy Channel Systems , 2000, CONCUR.

[15]  Samson Abramsky,et al.  Domain Theory in Logical Form , 1991, LICS.

[16]  Marta Z. Kwiatkowska,et al.  Probabilistic Metric Semantics for a Simple Language with Recursion , 1996, MFCS.

[17]  Scott A. Smolka,et al.  Algebraic Reasoning for Probabilistic Concurrent Systems , 1990, Programming Concepts and Methods.

[18]  Marta Z. Kwiatkowska,et al.  PRISM: Probabilistic Symbolic Model Checker , 2002, Computer Performance Evaluation / TOOLS.

[19]  Jerry den Hartog,et al.  Verifying Probabilistic Programs Using a Hoare Like Logic , 1999, Int. J. Found. Comput. Sci..

[20]  Leslie Lamport,et al.  Proving the Correctness of Multiprocess Programs , 1977, IEEE Transactions on Software Engineering.

[21]  Ernst-Rüdiger Olderog,et al.  Verification of Sequential and Concurrent Programs , 1997, Graduate Texts in Computer Science.

[22]  Chris M. N. Tofts,et al.  A Synchronous Calculus of Relative Frequency , 1990, CONCUR.

[23]  Thomas A. Henzinger,et al.  Reactive Modules , 1999, Formal Methods Syst. Des..

[24]  Mihalis Yannakakis,et al.  The complexity of probabilistic verification , 1995, JACM.

[25]  Sérgio Vale Aguiar Campos,et al.  ProbVerus: Probabilistic Symbolic Model Checking , 1999, ARTS.

[26]  Gordon Plotkin,et al.  An Operational Semantics for CSP. , 1982 .

[27]  Martin L. Puterman,et al.  Markov Decision Processes: Discrete Stochastic Dynamic Programming , 1994 .

[28]  Frits W. Vaandrager,et al.  Cost-optimization of the IPv4 zeroconf protocol , 2003, 2003 International Conference on Dependable Systems and Networks, 2003. Proceedings..

[29]  Anish Arora,et al.  Book Review: Verification of Sequential and Concurrent Programs by Krzysztof R. Apt and Ernst-Riidiger Olderog (Springer-Verlag New York, 1997) , 1998, SIGA.

[30]  Pierre Wolper,et al.  An Automata-Theoretic Approach to Automatic Program Verification (Preliminary Report) , 1986, LICS.

[31]  Nancy A. Lynch,et al.  Probabilistic Simulations for Probabilistic Processes , 1994, Nord. J. Comput..

[32]  Annabelle McIver,et al.  Probabilistic predicate transformers , 1996, TOPL.

[33]  Edsger W. Dijkstra,et al.  Guarded commands, nondeterminacy and formal derivation of programs , 1975, Commun. ACM.

[34]  Richard J. Lipton,et al.  Reduction: a method of proving properties of parallel programs , 1975, CACM.

[35]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

[36]  Hans A. Hansson Time and probability in formal design of distributed systems , 1991, DoCS.

[37]  Stuart Cheshire,et al.  Dynamic Configuration of IPv4 Link-Local Addresses , 2005, RFC.

[38]  Carroll Morgan,et al.  pGCL: formal reasoning for random algorithms , 1998 .

[39]  Erik P. de Vink,et al.  Bisimulation for Probabilistic Transition Systems: A Coalgebraic Approach , 1997, Theor. Comput. Sci..

[40]  Annabelle McIver,et al.  Probabilistic Models for the Guarded Command Language , 1997, Sci. Comput. Program..

[41]  C. Baier,et al.  Partial order reduction for probabilistic systems , 2004 .

[42]  Jerrold L. Wagener Guarded command , 2003 .

[43]  Andrea Bianco,et al.  Model Checking of Probabalistic and Nondeterministic Systems , 1995, FSTTCS.

[44]  Samson Abramsky,et al.  Domain theory , 1995, LICS 1995.

[45]  Bengt Jonsson,et al.  A logic for reasoning about time and reliability , 1990, Formal Aspects of Computing.

[46]  Joost-Pieter Katoen,et al.  MoDeST - A Modelling and Description Language for Stochastic Timed Systems , 2001, PAPM-PROBMIV.

[47]  Susan Owicki,et al.  An axiomatic proof technique for parallel programs I , 1976, Acta Informatica.