1 / 8

Probabilistic Methods in Concurrency Lecture 7 The probabilistic asynchronous p -calculus

This lecture explores the probabilistic asynchronous p-calculus, its operational semantics, expressive power, and implementation in Java.

sjustin
Download Presentation

Probabilistic Methods in Concurrency Lecture 7 The probabilistic asynchronous p -calculus

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Probabilistic Methods in ConcurrencyLecture 7The probabilistic asynchronous p-calculus Catuscia Palamidessi catuscia@lix.polytechnique.fr www.lix.polytechnique.fr/~catuscia Page of the course: www.lix.polytechnique.fr/~catuscia/teaching/Pisa/

  2. The probabilistic asynchronous p-calculus • Originally developed as an intermediate language for the fully distributed implementation of the p-calculus (Herescu and Palamidessi) • The results of Lecture 4 show that a fully distributed implementation of p must necessarily be randomized • A two-steps approach: p Advantages: the correctness proof is easier since [[ ]] (which is the difficult part of the implementation) is between two similar languages [[ ]] probabilistic asynchronous p << >> distributed machine Prob methods in Concurrency

  3. ppa: the Probabilistic Asynchonous p Syntax: based on the asynchronous p of Amadio, Castellani, Sangiorgi g ::= x(y) | tprefixes P ::= Sipigi . Pi pr. inp. guard. choiceSi pi = 1 | x^y output action | P | Pparallel | (x) P new name | recA P recursion | Aprocedure name Prob methods in Concurrency

  4. 1/2 1/3 1/2 1/3 1/2 1/3 1/3 1/3 1/2 1/3 1/2 1/2 1/2 1/3 1/3 1/3 1/2 1/2 1/2 1/3 1/3 1/3 1/3 1/3 1/3 1/2 1/2 1/2 1/3 1/3 1/3 1/2 1/2 1/2 2/3 1/3 1/3 1/3 1/3 1/3 1/3 1/3 2/3 1/3 2/3 2/3 2/3 2/3 2/3 2/3 1/3 1/3 1/3 1/3 1/3 1/3 1/2 1/3 1/3 1/2 1/3 2/3 1/3 The operational semantics of ppa • Based on the Probabilistic Automata of Segala and Lynch • Distinction between • nondeterministic behavior (choice of the scheduler)and • probabilistic behavior (choice of the process) Scheduling Policy: The scheduler chooses the group of transitions Execution: The process choosesprobabilistically the transition within the group Prob methods in Concurrency

  5. The operational semantics of ppa • Representation of a group of transition P { --gi-> piPi } i • Rules Choice Si pi gi . Pi {--gi-> piPi }i P{--gi-> piPi }i Par ____________________ Q | P {--gi-> piQ | Pi }i Prob methods in Concurrency

  6. The operational semantics of ppa • Rules (continued) P{--xi(yi)-> piPi }i Q{--x^z-> 1 Q’}i Com ____________________________________ P | Q {--t-> piPi[z/yi]|Q’ }xi=x U { --xi(yi)-> pi Pi |Q }xi=/=x P{--xi(yi)-> piPi }i Res ___________________ qi renormalized (x) P { --xi(yi)-> qi (x) Pi }xi =/= x Prob methods in Concurrency

  7. y P Q x The expressive power of p • Example of distributed agreement: the leader election problem Prob methods in Concurrency

  8. Implementation of ppa • Compilation in Java << >> : ppa Java • Distributed << P | Q >> = << P >>.start(); << Q >>.start(); • Compositional << P op Q >> = << P >> jop << Q >> for all op • Channels are one-position buffers with test-and-set (synchronized) methods for input and output • The probabilistic input guarded construct is implemented as a while loop in which channels to be tried are selected according to their probability. The loop repeats until an input is successful Prob methods in Concurrency

More Related