Catuscia Palamidessi Penn State University 9252020 LIX 1

















![Encoding p into ppa n Fully distributed [[ P | Q ]] = [[ Encoding p into ppa n Fully distributed [[ P | Q ]] = [[](https://slidetodoc.com/presentation_image/6648f94398ad5e66a0c4db8b8dacce2b/image-18.jpg)










- Slides: 28
Catuscia Palamidessi Penn State University 9/25/2020 LIX 1
Short cv l 98 – Professor at Penn State University (USA) 94 -98 Professor at University of Genova (Italy) 92 -94 Assoc. Prof. at the University of Genova 88 -91 CWI and University of Utrecht (NL) 84 -92 University of Pisa (Italy) l 1988 Ph. D in Comp. Science University of Pisa l l 2
Short cv l Scientific Interests: § l Editorial activity § l ACM PPDP, CONCUR, PLILP Conference chair § l Journal TPLP, ENTCS, special issues in TCS and Info&Comp Keynote speaker § l Principles of Programming Languages, Concurrency, Mobility, Distributed Computing, Security Protocols ICLP, CONCUR, PLILP/ALP PC member § POPL, CONCUR, ICLP, ICFP, PPDP, CSL, TACS, ICALP, ESOP, FOSSACS, … 3
Evolution of scientific interests 84 -92 Pisa Logic Programming group § § § Semantics of Logic Programming Integration of Functional and Logic Programming Negation 88 -96 CWI Concurrency group § § Concurrent Logic Programming Concurrent Constraint Programming Concurrency w/ Asynchronous Communication Expressiveness of concurrent languages 4
Evolution of scientific interests 96 - Concurrency w/ link mobility (p-calculus) l l Expressiveness of synchronous p Probabilistic Asynchronous p ( ppa ) Randomized implementation of p into ppa Testing semantics for ppa 2001 - Distributed resource allocation l l Generalized dining philosophers Drinking Philosophers 5
Evolution of scientific interests 2000 - BRICS Timed Concurrent Constr Prog l with M. Nielsen and F. Valencia Future work: Security protocols l l Application of Concurrency methods to the Specification and verification of properties of security protocols Use of ppa for § § Studying correctness under more powerful intruders Modeling certain protocols that require randomization 6
Main achievements 86 Design of K-LEAF § § § Integration of functions within LP Introduction of the concept of strict equality Influenced the design of various subsequent LF + LP proposals, including BABEL 87 S-Semantics for Logic Programming l l Declarative characterization of the answer substitutions Quite influential among the Italian LP community (it has been the basis for several works on the Semantics and Static Analysis of LP) 7
Main achievements l 91 (with Frank de Boer) Semantics of CCP l l l Asynchronous communication requires less information in the semantic domain / induces a coarser equality afterwards, Frank and I studied asynchronous communication in more general settings: § (with J. W. Klop) Asynchronous Process Algebra § (with J. Kok and J. Rutten) Abstract state-based comm Our approaches were different from the recent approaches to asynchonous communication like the asynchronous CCS and the asynchronous p. However, several of the laws that have been recently established in the latter contexts were analogous. 8
Main achievements l 92 (w/ F. de Boer) Expressiveness in Concurrency l l l Aim: define a concept of expressiveness subtle enough to capture the differences among concurrent languages wrt their capabilities of achieving a common goal in a fully distributed way Notion of Embedding. Separation between various CSP dialects and between various CCP dialects Project Express (94 -97) with INRIA S. -A. and several other European partners Workshop Express (94 -) Special issue on MSCS dedicated to Express (by initiative of the editor in chief Peppe Longo) 9
Main achievements l 97 Separation between p and § § § l l l Asynchonous p [Boudol – Honda/Tokoro] CCS p with internal mobility [Sangiorgi] The symmetric leader election problem can be solved in p for any ring of processes, while this is not possible for the other languages (an adversary scheduler can use the symmetry to induce a livelock). In p, we can use name mobility to fully connect the graph, and then mixed choice to break the symmetry. This is probably the most known of my works. 10
Main achievements l 2000 (with M. Herescu) Probabilistic Asynchronous p (ppa) l Aim: add the power of randomization to obtain a language that § § § is as expressive as p can be implemented in a fully distributed way (p cannot, for the leader election problem cannot be solved in a distributed system with a “deterministic” algorithm) Allows encoding p 2001 Solution to the generalized dining philosophers 2002 Encoding of p into ppa completed and proved correct wrt a notion of testing semantics 11
The Probabilistic Asynchonous p Syntax g : : = x(y) | t P : : = | | | Si pi gi. P i x^y P|P (x) P rec. A P A guards input guarded choice Si pi = 1 output action parallel new name recursion procedure name 12
The Asynchonous p (one of the variants) Syntax g : : = x(y) | t P : : = | | | Si gi. P i x^y P|P (x) P rec. A P A guards input guarded choice output action parallel new name recursion procedure name 13
The operational semantics of ppa n Based on the Probabilistic Automata of Segala and Lynch n Distinction between n n nondeterministic behavior (choice of the scheduler) and probabilistic behavior (choice of the process) 1/2 1/3 1/3 2/3 1/3 The scheduler chooses the group of transitions The process chooses probabilistically the transition within the group 14
The operational semantics of ppa n Representation of a group of transition P { --gi-> pi Pi } i n Rules Choice Si pi gi. Pi {--gi-> pi Pi }i Par P {--gi-> pi. Pi }i __________ Q | P {--gi-> pi. Q | Pi }i 15
The operational semantics of ppa n Rules (cont-ed) Com P {--xi(yi)-> pi. Pi }i Q {--x^z-> 1 Q’ }i __________________ P | Q {--t-> pi. Pi[z/yi] | Q’ }xi=x U { --xi(yi)-> pi Pi | Q }xi=/=x Res P {--xi(yi)-> pi. Pi }i __________ (x) P { --xi(yi)-> qi (x) Pi }xi =/= x qi renormalized 16
Implementation of ppa n Implementation in Java via compilation n Distributed << P | Q >> = << P >>. start(); << Q >>. start(); n Compositional << P op Q >> = << P >> jop << Q >> for all other 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 repeates until an input is successful 17
Encoding p into ppa n Fully distributed [[ P | Q ]] = [[ P ]] | [[ Q ]] n Uniform [[ P s ]] n = [[ P ]] s Correct wrt a notion of probabilistic testing semantics n P must O iff [[ P ]] must [[ O ]] with prob 1 18
Encoding p into ppa n Idea: n n n Every mixed choice is translated into a parallel comp. of processes corresponding to the branches, plus a lock f The input processes compete for acquiring both its own lock and the lock of the partner The input process which succeeds first, establishes the communication. The other alternatives are discarded R S Q f Pi P f R’i f Ri Si Qi f The problem is reduced to a generalized dining philosophers problem The classic algorithm of Lehmann and Rabin does not work in the generalized case, but we found another solution 19
Dining Philosophers: classic case Each fork is shared by exactly two philosophers 20
Dining Philosophers: deadlock Each philosopher is holding one fork 21
Dining Philosophers: generalized case Each fork can be shared by more than two philosophers 22
Security protocols n Propis: a small language ppa based on to express and verify security protocols and their properties, like n Secrecy n n Authentication n n evidence of the involvement of the other party Anonymity n n guarantees about the parties involved in the protocol Non-repudiation n n messages, keys, etc. remain secret protecting the identity of agents wrt particular events Formal tools for automatic verification 23
Features of PROPIS n PRObabilistic PI for Security n n n ppa enriched with cryptographic primitives similar to those of the spi-calculus [Abadi and Gordon] The probability features will allow to analyse security protocols at a finer level (cryptographic level), i. e. beyond the Dolew-Yao assumptions: In our approach an attacker can guess a key. The point is to prove that the probability that it actually guess the right key is negligible. The probability features will also allow to express protocols that require randomization. 24
Example: The dining cryptographers An example of achieving anonymity Crypt(0) notpays 0 Master Crypt(1) Crypt(2) 25
The dining cryptographers n The Problem: n n Three cryptographers share a meal The meal is paid either by the organization (master) or by one of them. The master decides who pays Each of the cryptographers is informed by the master whether or not he is paying GOAL: n The cryptographers would like to know whether the meal is being paid by the master or by one of them, but without knowing who is paying (if it is one of them). 26
The dining cryptographers: Solution n Solution: Each cryptographer tosses a coin (probabilistic choice). Each coin is in between two cryptographers. The result of each coin-tossing is visible to the adjacent cryptographers, and only to them. Each cryptographer examines the two adjacent coins n n If he is paying, he announces “agree” if the results are the same, and “disagree” otherwise. If he is not paying, he says the opposite Claim 1: if the number of “disagree” is even, then the master is paying. Otherwise, one of them is paying. Claim 2: In the latter case, if the coin is fair the non paying cryptographers will not be able to deduce whom exactly is paying 27
The dining cryptographers: Solution Crypt(0) notpays 0 Coin(0) Coin(1) Master out 1 Crypt(1) Coin(2) look 20 Crypt(2) 28




























