Course on Probabilistic Methods in Concurrency (Concurrent Languages for Probabilistic Asynchronous Communication) Lecture 1 The pi-calculus and the asynchronous.

Slides:



Advertisements
Similar presentations
Process Algebra Book: Chapter 8. The Main Issue Q: When are two models equivalent? A: When they satisfy different properties. Q: Does this mean that the.
Advertisements

08 April PPS - Groupe de Travail en Concurrence The probabilistic asynchronous -calculus Catuscia Palamidessi, INRIA Futurs, France.
Parallel Processing & Parallel Algorithm May 8, 2003 B4 Yuuki Horita.
Paris, 3 Dec 2007MPRI Course on Concurrency MPRI – Course on Concurrency Lecture 12 Probabilistic process calculi Catuscia Palamidessi LIX, Ecole Polytechnique.
Formal Semantics of Programming Languages 虞慧群 Topic 6: Advanced Issues.
1 Programming Languages (CS 550) Lecture Summary Functional Programming and Operational Semantics for Scheme Jeremy R. Johnson.
Programming Paradigms for Concurrency Lecture 11 Part III – Message Passing Concurrency TexPoint fonts used in EMF. Read the TexPoint manual before you.
01/05/2015 Agay Spring School, March'02 Mobility 1 : the Pi Calculus Cédric Fournet Microsoft Research Cambridge.
Process Algebra (2IF45) Probabilistic Process Algebra Suzana Andova.
Probabilistic Methods in Concurrency Lecture 9 Other uses of randomization: a randomized protocol for anonymity Catuscia Palamidessi
Bangalore, 2 Feb 2005Probabilistic security protocols 1 CIMPA School on Security Specification and verification of randomized security protocols Lecture.
Probabilistic Methods in Concurrency Lecture 3 The pi-calculus hierarchy: separation results Catuscia Palamidessi
Foundations of Interaction ETAPS `05 0 Ex nihilo: a reflective higher- order process calculus The  -calculus L.G. Meredith 1 & Matthias Radestock.
Dependable Composition of Web Services and Process Calculi Manuel Mazzara Newcastle University.
1 Synchronization strategies for global computing models Ivan Lanese Computer Science Department University of Bologna.
Distributed querying of Web by using dynamically created mobile agents Vadim Guzev, University of Pereslavl-Zalessky Vladimir Sazonov, University of Liverpool.
Chair of Software Engineering 1 Concurrent Object-Oriented Programming Arnaud Bailly, Bertrand Meyer and Volkan Arslan.
1 Ivan Lanese Computer Science Department University of Bologna Roberto Bruni Computer Science Department University of Pisa A mobile calculus with parametric.
Focusing in Proof-search and Concurrent Synchronization Deepak Garg Carnegie Mellon University (Based on joint work with Frank Pfenning)
1 Ivan Lanese Computer Science Department University of Bologna Italy Behavioural Theory for SSCC Joint work with Luis Cruz-Filipe, Francisco Martins,
1 Formal Models for Distributed Negotiations Concurrent Languages Translation Roberto Bruni Dipartimento di Informatica Università di Pisa XVII Escuela.
1212 Models of Computation: Automata and Processes Jos Baeten.
Formal Modeling of Concurrent Processes: PI and API Calculi Shahram Rahimi.
1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in π-calculus.
1 CoMeta, final workshop, /12/2003 Ivan Lanese Dipartimento di Informatica Università di Pisa Ugo Montanari A graphical Fusion Calculus Joint work.
1 Ivan Lanese Computer Science Department University of Bologna Italy Behavioural Theory at Work: Program Transformations in a Service-centred Calculus.
1212 Models of Computation: Automata and Processes Jos Baeten.
Mobile Ambients Luca Cardelli Digital Equipment Corporation, Systems Research Center Andrew D. Gordon University of Cambridge, Computer Laboratory Presented.
1 Ivan Lanese Computer Science Department University of Bologna Synchronization strategies for global computing models.
Fundamentals of Python: From First Programs Through Data Structures
Prof. Diletta Romana Cacciagrano.  From sequential over concurrent to mobile systems  Introduction to the Pi-Calculus  Operational Equivalences based.
Ryan McAlister CONNECTORS. Introduction Integration and interaction As important as developing functionality More challenging decisions Transfer control.
Probabilistic Methods in Concurrency Lecture 4 Problems in distributed systems for which only randomized solutions exist Catuscia Palamidessi
11 February CdP INRIA Futurs Catuscia Palamidessi INRIA Saclay.
Advanced Topics in SE Spring Process Algebra Hossein Hojjat Formal Methods Lab University of Tehran.
10 December 2002ENS Cachan1 Generalized dining philosophers Catuscia Palamidessi, INRIA in collaboration with Mihaela Oltea Herescu, IBM Michael Pilquist,
2G1516 Formal Methods2005 Mads Dam IMIT, KTH 1 CCS: Operational Semantics And Process Algebra Mads Dam Reading: Peled 8.3, 8.4, 8.6 – rest of ch. 8.
CS5204 – Operating Systems 1  -Calculus Reasoning about concurrency and communication (Part 1).
A Locally Nameless Theory of Objects 1.Introduction:  -calculus and De Bruijn notation 2.locally nameless technique 3.formalization in Isabelle and proofs.
Programming Paradigms for Concurrency Pavol Cerny Vasu Singh Thomas Wies Part III – Message Passing Concurrency.
MPRI – Course on Concurrency Probabilistic methods in Concurrency Catuscia Palamidessi INRIA Futurs and LIX
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 3 Mälardalen University 2010.
© Kenneth C. Louden, Chapter 11 - Functional Programming, Part III: Theory Programming Languages: Principles and Practice, 2nd Ed. Kenneth C. Louden.
UW CSE 503 ▪ Software Engineering ▪ Spring 2004 ▪ Rob DeLine1 CSE 503 – Software Engineering Lecture 7: Process calculi and refinement Rob DeLine 19 Apr.
11/19/20151 Metodi formali nello sviluppo software a.a.2013/2014 Prof.Anna Labella.
Types and Programming Languages Lecture 6 Simon Gay Department of Computing Science University of Glasgow 2006/07.
Paris, 17 December 2007MPRI Course on Concurrency MPRI – Course on Concurrency Lecture 14 Application of probabilistic process calculi to security Catuscia.
MPRI 3 Dec 2007Catuscia Palamidessi 1 Why Probability and Nondeterminism? Concurrency Theory Nondeterminism –Scheduling within parallel composition –Unknown.
MPRI – Course on Concurrency Lectures 11 and 12 The pi-calculus expressiveness hierarchy Catuscia Palamidessi INRIA Futurs and LIX
2G1516/2G1521 Formal Methods2004 Mads Dam IMIT, KTH 1 CCS: Processes and Equivalences Mads Dam Reading: Peled 8.1, 8.2, 8.5.
14 October BASICS'09, Shanghai On the expressive power of synchronization primitives in the π-calculus Catuscia Palamidessi, INRIA Saclay, France.
Concurrency 5 The theory of CCS Specifications and Verification Expressive Power Catuscia Palamidessi
Communication Complexity Guy Feigenblat Based on lecture by Dr. Ely Porat Some slides where adapted from various sources Complexity course Computer science.
非同期マルチキャスト通 信を行う言語 Scope の操 作的意味 増山隆
A Mechanized Model of the Theory of Objects 1.Functional  -calculus in Isabelle 2.Confluence Proof in Isabelle 3.Ongoing Work, Applications, Conclusion.
High Performance Embedded Computing © 2007 Elsevier Lecture 4: Models of Computation Embedded Computing Systems Mikko Lipasti, adapted from M. Schulte.
Probabilistic Methods in Concurrency Lecture 6 Progress statements: A tool for verification of probabilistic automata Catuscia Palamidessi
6 October PPDP / GPCE 2002 Mobile Calculi Catuscia Palamidessi, INRIA Futurs, France joint work with Mihaela Herescu, IBM, Austin for Distributed.
1 Theoretical Foundations of Concurrency A formal study of concurrency enables: understanding the essential nature of concurrency reasoning about the behavior.
Types and Programming Languages Lecture 16 Simon Gay Department of Computing Science University of Glasgow 2006/07.
6/21/20161 Programming Languages and Compilers (CS 421) Reza Zamani Based in part on slides by Mattox Beckman,
16 January 2004LIX1 Equipe Comète Concurrency, Mobility, and Transactions Catuscia Palamidessi INRIA-Futurs and LIX.
Catuscia Palamidessi, INRIA Saclay, France
Probabilistic Methods in Concurrency Lecture 5 Basics of Measure Theory and Probability Theory Probabilistic Automata Catuscia Palamidessi
Course 2 Introduction to Formal Languages and Automata Theory (part 2)
Reasoning about concurrency and communication (Part 1).
Programming Languages and Compilers (CS 421)
Formal Methods in software development
Probabilistic Methods in Concurrency Lecture 7 The probabilistic asynchronous p-calculus Catuscia Palamidessi
Expressive Power of CCS
Presentation transcript:

Course on Probabilistic Methods in Concurrency (Concurrent Languages for Probabilistic Asynchronous Communication) Lecture 1 The pi-calculus and the asynchronous pi-calculus. Catuscia Palamidessi INRIA Futurs & LIX France

Pisa, 28 june 2004Prob methods in concurrency2 Administrativia Homepage of the course: –Slides –Some copies of the papers/books used as references Exam Schedule

Pisa, 28 june 2004Prob methods in concurrency3 Plan of the lectures 1.The pi-calculus and the asynchonous pi-calculus 2.The pi-calculus hierarchy: encodings –Encoding of output prefix in the asynchonous pi-calculus –Encoding of input guarded choice in the asynchonous pi-calculus 3.The pi-calculus hierarchy: separation results –Separation between the pi-calculus and the asynchonous pi-calculus –Separation between the pi-calculus and CCS 4.Problems in distributed algorithms for which only randomized solutions exists 5.Basics of Measure Theory and Probability Theory 6.Probabilistic Automata 7.The probabilistic pi-calculus 8.Encoding of the pi-calculus into the asynchronous pi-calculus 9.Other uses of randomization: randomized protocols for anonymity and contract signing. 10.A proof search specification of the pi-calculus (speaker: Dale Miller)

Pisa, 28 june 2004Prob methods in concurrency4 The  -calculus Milner, Parrow, Walker 1989 A concurrent calculus where the communication structure among existing processes can change over time. –Link mobility.

Pisa, 28 june 2004Prob methods in concurrency5 The  calculus: scope extrusion A private channel name can be communicated and its scope can be extended to include the recipient –Channel: the name can be used to communicate –Privacy: no one else can interfere An example of link mobility: xy R Q P z

Pisa, 28 june 2004Prob methods in concurrency6 The  calculus: scope extrusion A private channel name can be communicated and its scope can be extended to include the recipient –Channel: the name can be used to communicate –Privacy: no one else can interfere An example of link mobility: xy z R Q P

Pisa, 28 june 2004Prob methods in concurrency7 The  calculus: scope extrusion A private channel name can be communicated and its scope can be extended to include the recipient –Channel: the name can be used to communicate –Privacy: no one else can interfere An example of link mobility: xy z z R Q P

Pisa, 28 june 2004Prob methods in concurrency8 The  calculus: some suggested bibliography Robin Milner. Communicating and mobile systems: the pi-calculus. Cambridge University Press, 1999Robin Milner Benjamin Pierce. Foundational Calculi for Programming Languages. Chapter in the CRC Handbook of Computer Science and Engineering, 1996Benjamin PierceFoundational Calculi for Programming Languages Davide Sangiorgi and David Walker. The pi-calculus. A Theory of Mobile Processes. Cambridge University Press, 2001 Joachim Parrow. An Introduction to the pi-Calculus. In Handbook of Process Algebra, ed. Bergstra, Ponse, Smolka, pages , Elsevier BRICS RS 99-42An Introduction to the pi-CalculusBRICS RS 99-42

Pisa, 28 june 2004Prob methods in concurrency9 The  -calculus: syntax Similar to CCS with value passing, but values are channel names, and recursion is replaced by replication ( ! ) action prefixes (input, output, silent) x, y are channel names inaction prefix parallel sum restriction, new name replication

Pisa, 28 june 2004Prob methods in concurrency10 The  -calculus: syntax Names: –Free –Bound Input and restriction are binders –Exercise: give the formal definition of Example: Alpha conversion Example:

Pisa, 28 june 2004Prob methods in concurrency11 The  -calculus: structural equivalence Introduced to simplify the description of the operational semantics –If P ´  Q then P ´ Q –P | Q ´ Q | P –P + Q ´ Q + P –! P ´ P | ! P Some presentations include other equivalences, for instance: –P | 0 ´ P, ( P | Q ) | R ´ P | ( Q | R ) –P + 0 ´ P, ( P + Q ) + R ´ P + ( Q + R ), P + P ´ P –( x ) ( y ) P ´ ( y ) ( x ) P, ( x ) P ´ P if x  fn ( P ) –P | ( x ) Q ´ ( x ) ( P | Q ) if x  fn ( P ) (scope extrusion)

Pisa, 28 june 2004Prob methods in concurrency12 The  calculus: operational semantics The operational semantics of the  -calculus is defined as a labeled transition system. Transitions have the form Here P and Q are processes and  is an action There are various operational semantics for the  -calculus. We describe here the late semantics. Actions are defined as follows:

Pisa, 28 june 2004Prob methods in concurrency13 The  calculus: late semantics Questions: 1) Why the side condition in Par? 2) Could we write x(z) in L-Com and avoid the substitution?

Pisa, 28 june 2004Prob methods in concurrency14 The  calculus: early semantics New kind of action: free input xz Add E-input and replace L-Com by E-Com

Pisa, 28 june 2004Prob methods in concurrency15 The  calculus: late bisimulation

Pisa, 28 june 2004Prob methods in concurrency16 The  calculus: early bisimulation

Pisa, 28 june 2004Prob methods in concurrency17 Late vs early bisimulation Late bisimulation is strictly more discriminating than early bisimulation. Example Exercise: write a similar example without using the match operator (i.e. the if-then-else). Hint: use synchronization

Pisa, 28 june 2004Prob methods in concurrency18 Congruence Question: are  L,  E congruences? Answer: No. Example: There are other equivalences which are defined to be congruences. In particular Open bisimulation. Cfr. lecture by Dale

Pisa, 28 june 2004Prob methods in concurrency19 The asynchronous  -calculus If P | Q is interpreted as the composition of two remote processes P and Q, then the mechanism of synchronous communication seems unrealistic Synchronization combined with choice seems even less realistic In a distributed system, communication is asynchronous (exchange of messages). The send takes place independently of the readiness of a receiver, and it is not blocking The asynchnous  -calculus: A calculus for representing asynchnous communication. It was introduced independently by Honda-Tokoro [1991] and by Boudol [1992]  

Pisa, 28 june 2004Prob methods in concurrency20 The asynchronous  -calculus: syntax It differs from the  -calculus for the absence of the output prefix (replaced by output action) and also for the absence of the + action prefixes (input, silent) x, y are channel names inaction prefix output action parallel restriction, new name replication

Pisa, 28 june 2004Prob methods in concurrency21 The  asynchronous  -calculus: OS The operational semantics of the asynchronous  -calculus (  a ) are the same as those of the (synchronous)  -calculus (  ), we only eliminate the rule for + and replace the output rule with the following: The early and late bisimulations are obtained as usual The interpretation is as follows: –The send takes place when the output action is at the top-level –The receive takes place when the output action matches a corresponding input, i.e. when we apply the rule comm or close