On Expressiveness and Behavioural Theory of Attribute-based Communication

Size: px
Start display at page:

Download "On Expressiveness and Behavioural Theory of Attribute-based Communication"

Transcription

1 On Expressiveness and Behavioural Theory of Attribute-based Communication Rocco De Nicola Joint work with Y. A. Alrahman and M. Loreti Final Meeting CINA Civitanova Marche January 2016

2 Contents 1 Introduction 2 Programming Abstractions for CAS 3 AbC: A Process Calculus for CAS 4 Encoding other communication paradigms 5 A Behavioural Theory for AbC 6 Ongoing and Future work R. De Nicola 1/31

3 Collective Adaptive Systems - CAS CAS are software-intensive systems featuring massive numbers of components complex interactions among components, and other systems operating in open and non-deterministic environments dynamically adapting to new requirements, technologies and environmental conditions Challenges for software development for CAS the dimension of the systems the need to adapt to changing environments and requirements the emergent behaviour resulting from complex interactions the uncertainty during design-time and run-time Introduction R. De Nicola 2/31

4 Examples of CAS Introduction R. De Nicola 3/31

5 Programming abstractions for CAS The Service-Component Ensemble Language (SCEL) currently provides primitives and constructs for dealing with 4 programming abstractions. 1. Knowledge: to describe how data, information and (local and global) knowledge is managed 2. Behaviours: to describe how systems of components progress 3. Aggregations: to describe how different entities are brought together to form components, systems and, possibly, ensembles 4. Policies: to model and enforce the wanted evolutions of computations. Programming Abstractions for CAS R. De Nicola 4/31

6 Components and Systems Aggregations describe how different entities are brought together and controlled: Components: I Interface K Knowledge Π Policies P Processes Systems: I Interface I Interface I Interface K Knowledge Π Policies P Processes K Knowledge Π Policies P Processes... K Knowledge Π Policies P Processes Programming Abstractions for CAS R. De Nicola 5/31

7 Collective Adaptive Systems as Ensembles Ensembles Systems are structured as sets of components dynamically forming ensembles, i.e. groups of components that collaborate to achieve specific tasks; Ensembles are not rigid networks but highly flexible structures where components linkages are dynamically established; Interaction is based on a novel communication paradigm different from one-to-one message passing and from broadcast. Predicate based interaction Components expose their attributes in the interface; Interaction between components is based on predicates over attributes that permit dynamically specifying all targets of a given communication action. Programming Abstractions for CAS R. De Nicola 6/31

8 Predicate-based ensembles Ensembles are determined by the predicates validated by each component. There is no coordinator, hence no bottleneck or critical point of failure A component might be part of more than one ensemble Programming Abstractions for CAS R. De Nicola 7/31

9 Example Predicates id {n, m, p} active = yes battery level > 30% range max > (this.x x) 2 + (this.y y) 2 true trust level > medium... trousers = red shirt = green Programming Abstractions for CAS R. De Nicola 8/31

10 Distilling a calculus from SCEL Towards a Theory of CAS We aim at developing a theoretical foundation of CAS, starting from their distinctive features, summarized as follows: CAS consist of large numbers of interacting components which exhibit complex behaviours depending on their attributes, objectives and actions. CAS components may enter or leave the collective at anytime and might have different (possibly conflicting) objectives and need to dynamically adapt to new requirements and contextual conditions. AbC: A calculus with Attribute based Communication We have defined AbC, a calculus inspired by SCEL and focusing on a minimal set of primitives that rely on attribute-based communication for systems interaction. AbC: A Process Calculus for CAS R. De Nicola 9/31

11 AbC at a glance Systems are represented as sets of parallel components, each of them equipped with a set of attributes whose values can be modified by internal actions. Communication actions (send and receive) are decorated with predicates over attributes that partners have to satisfy to make the interaction possible. Communication takes place in an implicit multicast fashion, and communication partners are selected by relying on predicates over the attributes exposed in their interfaces. Components are unaware of the existence of each other and they receive messages only if they satisfy partners requirements. Components can offer different views of themselves and can interact with different partners according to different criteria. Semantics for output actions is non-blocking while input actions are blocking in that they can only take place through synchronisation with an available sent message. AbC: A Process Calculus for CAS R. De Nicola 10/31

12 AbC through a running example A swarm of robots is spread throughout a disaster area with the goal of locating victims to rescue. Robots have rôles modelled via functional behaviours that can be changed via appropriate adaptation mechanisms. Initially all robots are explorers; a robot that finds a victim becomes a rescuer and sends info about the victim to nearby explorers; to form ensembles. An explorer that receives information about a victim changes its rôle into helper and joins the rescuers ensemble. The rescuing procedure starts when the ensemble is complete. Some of the attributes (e.g. battery level) are the projection of the robot internal state controlled via sensors and actuators. AbC: A Process Calculus for CAS R. De Nicola 11/31

13 AbC Components (Components) C ::= Γ :P C 1 C 2 νxc Single component Γ :P Γ denotes sets of attributes and P processes Parallel composition of components Name restriction νx (to delimit the scope of name x) in C 1 (νx)c 2, name x is invisible from within C 1 Running example (step 1/5) Each robot is modeled as an AbC component (Robot i ) of the following form (Γ i :P R ). Robots execute in parallel and collaborate. Robot 1... Robot n AbC: A Process Calculus for CAS R. De Nicola 12/31

14 AbC Processes P ::= 0 Act.P new(x)p Π P P 1 + P 2 P 1 P 2 K new(x)p Process name restriction Π P blocks P until the evaluation of Π under the local environment becomes true (awareness operator). Act communication and attribute update actions Running example (step 2/5) P R running on a robot has the following form: P R ( Π a 1.P 1 + a 2.P 2 ) P 3 When Π evaluates to true (e.g., victim detection), the process performs action a 1 and continues as P 1 ; Otherwise P R performs a 2 to continue as P 2 (help rescuing a victim). AbC: A Process Calculus for CAS R. De Nicola 13/31

15 Example Cont. AbC Actions Act ::= Π( x) {s} [a := E] Π( x) receive from any component satisfying Π; {s} send to components satisfying Π while exposing only the attributes in set s; [a := E]: updates the value of a with the result of evaluating E. AbC: A Process Calculus for CAS R. De Nicola 14/31

16 Example Cont. AbC Actions Act ::= Π( x) {s} [a := E] Π( x) receive from any component satisfying Π; {s} send to components satisfying Π while exposing only the attributes in set s; [a := E]: updates the value of a with the result of evaluating E. Running example (step 3/5) By specifying Π, a 1, and a 2, P R becomes: P R ( this.victimperceived = tt [this.state := stop].p 1 + (this.id, qry)@(role = rescuer role = helping) {role}.p 2 ) P 3 AbC: A Process Calculus for CAS R. De Nicola 14/31

17 Example Cont. AbC Actions Act ::= Π( x) {s} [a := E] Π( x) receive from any component satisfying Π; {s} send to components satisfying Π while exposing only the attributes in set s; [a := E]: updates the value of a with the result of evaluating E. Running example (step 3/5) By specifying Π, a 1, and a 2, P R becomes: P R ( this.victimperceived = tt [this.state := stop].p 1 + (this.id, qry)@(role = rescuer role = helping) {role}.p 2 ) P 3 We are dwelling whether to use Π( x)(σ) with σ = [a 1 E 1,..., a n E n ] as input action to atomically update the local environment of the receiver. AbC: A Process Calculus for CAS R. De Nicola 14/31

18 AbC Calculus (Components) C ::= Γ :P C 1 C 2 νxc (Processes) P ::= (Inaction) 0 (Input) Π( x).p (Output) (Ẽ)@Π {s}.p (Update) [a := E].P (New) new(x)p (Match) Π P (Choice) P 1 + P 2 (Par) P 1 P 2 (Call) K (Predicates) Π ::= tt ff E 1 E 2 Π 1 Π 2... (Data) E ::= v x a this.a... AbC: A Process Calculus for CAS R. De Nicola 15/31

19 Operational Semantics Transitions Labels we use the λ-label to range over broadcast, input, update and internal labels respectively λ {ν [a := v], τ} we use the α-label to range over all λ-labels plus the input-discarding label as follows: α λ { Γ:(ṽ)@Π} AbC: A Process Calculus for CAS R. De Nicola 16/31

20 Operational Semantics Processes and Systems Semantics AbC is equipped with a two levels labelled semantics. 1. the behaviour of processes is modelled by the transition relation Proc PLAB Proc 2. the behaviour of component is modelled by the transition relation: Comp CLAB Comp where Proc stands for Processes and Comp stands for a Components, PLAB stands stands for {ν xγ:(ṽ)@π, Γ:(ṽ)@Π, [a := v], τ, Γ:(ṽ)@Π} CLAB stands for {ν xγ:(ṽ)@π, Γ:(ṽ)@Π, τ} AbC: A Process Calculus for CAS R. De Nicola 17/31

21 Semantics of Processes (excerpt) (Brd) Ẽ Γ = ṽ Π 1 Γ = Π (Ẽ)@Π 1 s.p Γ s:(ṽ)@π Γ P Γ s = { Γ(a) if a s otherwise Running example (step 4/5) (Rcv) Π 1[ṽ/ x] Γ =Π 1 (Γ =Π 1 ) Π 1 ( x).p Γ :(ṽ)@π 2 Γ P[ṽ/ x] P R resides within a robot with Γ(id) = 1 Some possible evolutions where Γ = Γ 1 {role} are: P R P R [this.state:=stop] Γ1 P 1 P 3 Γ :(1, qry)@(role=rescuer role=helping) Γ1 P 2 P 3 AbC: A Process Calculus for CAS R. De Nicola 18/31

22 Semantics of Processes (excerpt) Discarding Label (FBrd) 1 s.p Γ 2 Γ 1 s.p (FSum) P Γ :(ṽ)@π 1 Γ P 1 P Γ :(ṽ)@π 2 Γ P 2 P 1 + P Γ :(ṽ)@π 2 Γ P 1 + P 2 Rules like (FBrd) models the non-blocking nature of the broadcast; Rules like (FSum)), are instead used to control internal non-determinism as side-effect and avoid unwanted evolutions. Running example (step 4/6) P R resides within a robot with explorer role. P R can discard unwanted broadcasts. P R Γ 2 :(info)@(role=explorer) Γ1 P R AbC: A Process Calculus for CAS R. De Nicola 19/31

23 From Processes to Components (excerpt) Γ (C-Brd) P Γ P (Com) C 1 Γ : P Γ :(ṽ)@π Γ:P ν xγ:(ṽ)@π C 1 Γ:(ṽ)@Π C 2 C 2 C 1 C 2 ν xγ:(ṽ)@π C 1 C 2 Γ :(ṽ)@π (C-Rcv) P Γ P Γ : P Π ff Γ :(ṽ)@π (Γ =Π) Γ:P x fn(c 2 ) = Running example (step 5/5): Further specifying P 2 in P R Query (this.id, qry)@(role = rescuer role = helper) {role}. ( ((role = rescuer role = helper) x = ack) (victim pos, x).p 2 + Query ) AbC: A Process Calculus for CAS R. De Nicola 20/31

24 From Processes to Components (excerpt) Running example (step 5/5): Cont. Assume Robot 2 is rescuer, Robot 3 is helper, and all others are explorers. Robot 3 received victim information from Robot 2 and now is in charge. Robot 1 sent a msg containing its identity this.id and qry request and Robot 3 caught it. Now by using rule (C-Brd), Robot 3 sends the victim position < 3, 4 > and ack back to Robot 1 as follows: Γ 3 :P R3 Γ:(<3,4>, ack)@(id=1) Γ 3 :P R 3 where Γ = Γ 3 {role}. Robot 1 applies rule (C-Rcv) to receive victim information and generates this transition. Γ 1 :P R1 Γ:(<3,4>, ack)@(id=1) Γ 1 :P 2 [< 3, 4 >/victim pos, ack/x] AbC: A Process Calculus for CAS R. De Nicola 21/31

25 From Processes to Components (excerpt) Running example (step 5/5): Cont. Robots can perform the above transitions since Γ 1 = (id = 1) and Γ = ((role = rescuer role = helper) x = ack). Other robots discard the broadcast. Now the overall system evolves by applying rule (Com) as follows: S Γ:(<3,4>, ack)@(id=1) Γ 1 :P 2 [< 3, 4 >/victim pos, ack/x] Γ 2 :P R2 Γ 3 :P R 3... Γ n :P Rn AbC: A Process Calculus for CAS R. De Nicola 22/31

26 Encoding other communication paradigms A number of alternative communication paradigms such as: Explicit Message Passing Group based Communications Publish-Subscribe can be easily modelled by relying on AbC primitives Communication Paradigms R. De Nicola 23/31

27 Encoding the bπ-calculus A bπ-calculus process P is rendered as an AbC component Γ:P where Γ =. Possible problem Impossibility of specifying the channel along which the exchange has to happen instantaneously. Way out Send the communication channel as a part of the transmitted values and the receiver checks its compatibility. āx.p (a, x)@(a = a) {}. P a(x).p Π(y, x). P with Π = (y = a) and y n( P ) Communication Paradigms R. De Nicola 24/31

28 Group-based interaction Group based communication A group name is encoded as an attribute in AbC. The constructs for joining or leaving a given group can be encoded as attribute updates.... Γ 1 : (msg)@(group = b) {group} Γ 2 : (group = a)(x). Γ 7 : (group = a)(x) [this.group := b] Let Γ 1 (group) = a, Γ 2 (group) = b, Γ 7 (group) = c Communication Paradigms R. De Nicola 25/31

29 Publish-Subscribe Publish-Subscribe interaction is a simple special case of attribute-based communication: A Publisher sends tagged messages for all subscribers by exposing from his environment only the current topic. Subscribers check compatibility of messages according to their subscriptions. Γ 1 : (msg)@(tt) {topic} Γ 2 : (topic = this.subscription)(x). Γ n : (topic = this.subscription)(x) Observation Dynamic updates of attributes and the possibility of controlling their visibility give AbC great flexibility and expressive power. Communication Paradigms R. De Nicola 26/31

30 Behavioural Theory for AbC Some Notations = denotes τ γ = denotes = γ = if (γ τ) ˆγ = denotes = if (γ = τ) and γ = otherwise. denotes { γ γ is an output or γ = τ} denotes( ) AbC Contexts A context C[ ] is a component term with a hole, denoted by [ ] and AbC contexts are generated by the following grammar: C[ ] ::= [ ] [ ] C C [ ] νx[ ] A Behavioural Theory for AbC R. De Nicola 27/31

31 Barbed Congruence Observable Barbs Let C Π mean that component C can broadcast a message with a predicate Π (i.e., C ν xγ:(ṽ)@π where Π ff). We write C Π if C C Π. Weak Reduction Barbed Congruence Relations A Weak Reduction Barbed Relation is a symmetric relation R over the set of AbC-components which is barb-preserving, reduction-closed, and context-closed. Barbed Bisimilarity Two components are weakly reduction barbed congruent, written C 1 = C2, if (C 1, C 2 ) R for some weak reduction barbed congruent relation R. The strong reduction congruence is obtained in a similar way by replacing with and with. A Behavioural Theory for AbC R. De Nicola 28/31

32 Bisimulation for AbC Components Weak Labelled Bisimulation A symmetric binary relation R over the set of AbC-components is a weak bisimulation if for every action γ, whenever (C 1, C 2 ) R and γ is of the form τ, Γ:(ṽ)@Π, or (ν xγ:(ṽ)@π with Π ff), it holds that C 1 γ C 1 implies C 2 ˆγ = C 2 and (C 1, C 2 ) R Bisimilarity Two components C 1 and C 2 are weak bisimilar, written C 1 C 2 if there exists a weak bisimulation R relating them. Strong bisimilarity,, is defined in a similar way by replacing = with. Bisimilarity and Barbed Congruence do coincide C 1 = C2 if and only if C 1 C 2. A Behavioural Theory for AbC R. De Nicola 29/31

33 Ongoing & Future Work We are currently continuing our investigations by: Looking for simpler operators and semantics, aiming at minimality; Evaluating the relative expressiveness of the calculus Developing quantitative variants to support components in taking decisions (e.g. via probabilistic model checking). Considering alternative semantics and behavioural equivalences for AbC Studying the impact of bisimulation (algebraic laws, proof techniques,... ) Implementing the calculus and devising a full fledged language based on it, as alternative to SCEL. Ongoing and Future work R. De Nicola 30/31

34 Many thanks for your time. Questions? Ongoing and Future work R. De Nicola 31/31

Trace Refinement of π-calculus Processes

Trace Refinement of π-calculus Processes Trace Refinement of pi-calculus Processes Trace Refinement of π-calculus Processes Manuel Gieseking manuel.gieseking@informatik.uni-oldenburg.de) Correct System Design, Carl von Ossietzky University of

More information

A Note on Scope and Infinite Behaviour in CCS-like Calculi p.1/32

A Note on Scope and Infinite Behaviour in CCS-like Calculi p.1/32 A Note on Scope and Infinite Behaviour in CCS-like Calculi GERARDO SCHNEIDER UPPSALA UNIVERSITY DEPARTMENT OF INFORMATION TECHNOLOGY UPPSALA, SWEDEN Joint work with Pablo Giambiagi and Frank Valencia A

More information

An introduction to process calculi: Calculus of Communicating Systems (CCS)

An introduction to process calculi: Calculus of Communicating Systems (CCS) An introduction to process calculi: Calculus of Communicating Systems (CCS) Lecture 2 of Modelli Matematici dei Processi Concorrenti Paweł Sobociński University of Southampton, UK Intro to process calculi:

More information

Business Process Management

Business Process Management Business Process Management Theory: The Pi-Calculus Frank Puhlmann Business Process Technology Group Hasso Plattner Institut Potsdam, Germany 1 What happens here? We discuss the application of a general

More information

Review of The π-calculus: A Theory of Mobile Processes

Review of The π-calculus: A Theory of Mobile Processes Review of The π-calculus: A Theory of Mobile Processes Riccardo Pucella Department of Computer Science Cornell University July 8, 2001 Introduction With the rise of computer networks in the past decades,

More information

A Weak Bisimulation for Weighted Automata

A Weak Bisimulation for Weighted Automata Weak Bisimulation for Weighted utomata Peter Kemper College of William and Mary Weighted utomata and Semirings here focus on commutative & idempotent semirings Weak Bisimulation Composition operators Congruence

More information

Concurrency theory. proof-techniques for syncronous and asynchronous pi-calculus. Francesco Zappa Nardelli. INRIA Rocquencourt, MOSCOVA research team

Concurrency theory. proof-techniques for syncronous and asynchronous pi-calculus. Francesco Zappa Nardelli. INRIA Rocquencourt, MOSCOVA research team Concurrency theory proof-techniques for syncronous and asynchronous pi-calculus Francesco Zappa Nardelli INRIA Rocquencourt, MOSCOVA research team francesco.zappa nardelli@inria.fr together with Frank

More information

The State Explosion Problem

The State Explosion Problem The State Explosion Problem Martin Kot August 16, 2003 1 Introduction One from main approaches to checking correctness of a concurrent system are state space methods. They are suitable for automatic analysis

More information

Formal Techniques for Software Engineering: CCS: A Calculus for Communicating Systems

Formal Techniques for Software Engineering: CCS: A Calculus for Communicating Systems Formal Techniques for Software Engineering: CCS: A Calculus for Communicating Systems Rocco De Nicola IMT Institute for Advanced Studies, Lucca rocco.denicola@imtlucca.it June 2013 Lesson 10 R. De Nicola

More information

Models of Concurrency

Models of Concurrency Models of Concurrency GERARDO SCHNEIDER UPPSALA UNIVERSITY DEPARTMENT OF INFORMATION TECHNOLOGY UPPSALA, SWEDEN Thanks to Frank Valencia Models of Concurrency p.1/57 Concurrency is Everywhere Concurrent

More information

Modelling Membranes with Brane Calculi

Modelling Membranes with Brane Calculi Modelling Membranes with Brane Calculi (and translation of Brane Calculi into CLS) 1/42 Introduction A biological cellular membrane is an closed surface that can perform various molecular functions. Membranes

More information

Self-Adaptation and Information Flow in Multiparty Communications

Self-Adaptation and Information Flow in Multiparty Communications Self-Adaptation and Information Flow in Multiparty Communications Joint work with Ilaria Castellani (INRIA, FR) Jorge A. Pérez (University of Groningen, NL) ABCD meeting London, 20th April, 2015 1 / 36

More information

Communicating and Mobile Systems

Communicating and Mobile Systems Communicating and Mobile Systems Overview:! Programming Model! Interactive Behavior! Labeled Transition System! Bisimulation! The π-calculus! Data Structures and λ-calculus encoding in the π-calculus References:!

More information

Distributed Data Fusion with Kalman Filters. Simon Julier Computer Science Department University College London

Distributed Data Fusion with Kalman Filters. Simon Julier Computer Science Department University College London Distributed Data Fusion with Kalman Filters Simon Julier Computer Science Department University College London S.Julier@cs.ucl.ac.uk Structure of Talk Motivation Kalman Filters Double Counting Optimal

More information

Time. To do. q Physical clocks q Logical clocks

Time. To do. q Physical clocks q Logical clocks Time To do q Physical clocks q Logical clocks Events, process states and clocks A distributed system A collection P of N single-threaded processes (p i, i = 1,, N) without shared memory The processes in

More information

Proving Safety Properties of the Steam Boiler Controller. Abstract

Proving Safety Properties of the Steam Boiler Controller. Abstract Formal Methods for Industrial Applications: A Case Study Gunter Leeb leeb@auto.tuwien.ac.at Vienna University of Technology Department for Automation Treitlstr. 3, A-1040 Vienna, Austria Abstract Nancy

More information

A Graph Rewriting Semantics for the Polyadic π-calculus

A Graph Rewriting Semantics for the Polyadic π-calculus A Graph Rewriting Semantics for the Polyadic π-calculus BARBARA KÖNIG Fakultät für Informatik, Technische Universität München Abstract We give a hypergraph rewriting semantics for the polyadic π-calculus,

More information

Formal Methods for Specifying and Verifying Distributed Algorithms Process Algebra vs I/O Automata

Formal Methods for Specifying and Verifying Distributed Algorithms Process Algebra vs I/O Automata Formal Methods for Specifying and Verifying Distributed Algorithms Process Algebra vs I/O Automata Marina Gelastou, Chryssis Georgiou and Anna Philippou Department of Computer Science, University of Cyprus,

More information

Linear Forwarders. 1 Introduction. Philippa Gardner 1, Cosimo Laneve 2, and Lucian Wischik 2

Linear Forwarders. 1 Introduction. Philippa Gardner 1, Cosimo Laneve 2, and Lucian Wischik 2 Linear Forwarders Philippa Gardner 1, Cosimo Laneve 2, and Lucian Wischik 2 1 Imperial College, London. pg@doc.ic.ac.uk 2 University of Bologna, Italy. laneve@cs.unibo.it, lu@wischik.com Abstract. A linear

More information

The Join calculus A calculus of mobile agents

The Join calculus A calculus of mobile agents The Join calculus p. 1/32 The Join calculus A calculus of mobile agents Martin Mosegaard Jensen Mobile Computing seminar 2004, DAIMI The Join calculus p. 2/32 Plan Motivation The reflexive CHAM Distribution:

More information

CS 395T. Probabilistic Polynomial-Time Calculus

CS 395T. Probabilistic Polynomial-Time Calculus CS 395T Probabilistic Polynomial-Time Calculus Security as Equivalence Intuition: encryption scheme is secure if ciphertext is indistinguishable from random noise Intuition: protocol is secure if it is

More information

Concurrent Processes and Reaction

Concurrent Processes and Reaction Concurrent Processes and Reaction Overview External and internal actions Observations Concurrent process expressions Structural congruence Reaction References Robin Milner, Communication and Concurrency

More information

Strong bisimilarity can be opened

Strong bisimilarity can be opened Strong bisimilarity can be opened Henning E. Andersen Hans Hüttel Karina N. Jensen June 7, 2002 Abstract We present an extension of the semantics of the π-calculus without match where strong bisimilarity

More information

A Brief Introduction to Model Checking

A Brief Introduction to Model Checking A Brief Introduction to Model Checking Jan. 18, LIX Page 1 Model Checking A technique for verifying finite state concurrent systems; a benefit on this restriction: largely automatic; a problem to fight:

More information

The Bell-LaPadula Model

The Bell-LaPadula Model The Bell-LaPadula Model CSM27 Computer Security Dr Hans Georg Schaathun University of Surrey Autumn 2007 Dr Hans Georg Schaathun The Bell-LaPadula Model Autumn 2007 1 / 25 The session Session objectives

More information

Connectivity and Energy-aware Preorders for Mobile Ad-Hoc Networks

Connectivity and Energy-aware Preorders for Mobile Ad-Hoc Networks Telecommunication Systems manuscript o. (will be inserted by the editor) Connectivity and Energy-aware Preorders for Mobile Ad-Hoc etworks Lucia Gallina Andrea Marin Sabina Rossi Received: date / Accepted:

More information

From CCS to Hybrid π via baby steps. Bill Rounds CSE, U of Michigan

From CCS to Hybrid π via baby steps. Bill Rounds CSE, U of Michigan From CCS to Hybrid π via baby steps Bill Rounds CSE, U of Michigan Main idea The hybrid pi-calculus extends pi-calculus by adding a component called the continuous environment, which evolves over time

More information

Theoretical Foundations of the UML

Theoretical Foundations of the UML Theoretical Foundations of the UML Lecture 17+18: A Logic for MSCs Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group moves.rwth-aachen.de/teaching/ws-1718/fuml/ 5.

More information

A π-calculus with preorders

A π-calculus with preorders A π-calculus with preorders Daniel Hirschkoff, Jean-Marie Madiot, Davide Sangiorgi École Normale Supérieure de Lyon Università di Bologna PACE kick-off meeting, 2013-04-23 Jean-Marie Madiot (Lyon, Bologna)

More information

Concurrent Non-malleable Commitments from any One-way Function

Concurrent Non-malleable Commitments from any One-way Function Concurrent Non-malleable Commitments from any One-way Function Margarita Vald Tel-Aviv University 1 / 67 Outline Non-Malleable Commitments Problem Presentation Overview DDN - First NMC Protocol Concurrent

More information

Imperial College of Science, Technology and Medicine Department of Computing. A Study of Bisimulation Theory for Session Types. Dimitrios Kouzapas

Imperial College of Science, Technology and Medicine Department of Computing. A Study of Bisimulation Theory for Session Types. Dimitrios Kouzapas Imperial College of Science, Technology and Medicine Department of Computing A Study of Bisimulation Theory for Session Types Dimitrios Kouzapas Submitted in part fulfilment of the requirements for the

More information

Denotational Semantics of Programs. : SimpleExp N.

Denotational Semantics of Programs. : SimpleExp N. Models of Computation, 2010 1 Denotational Semantics of Programs Denotational Semantics of SimpleExp We will define the denotational semantics of simple expressions using a function : SimpleExp N. Denotational

More information

Understanding Process Semantics

Understanding Process Semantics TU München March, 2017 Understanding Process Semantics David de Frutos Escrig In collaboration with: Carlos Gregorio Rodríguez, Miguel Palomino and Ignacio Fábregas Departamento de Sistemas Informáticos

More information

Real Time Operating Systems

Real Time Operating Systems Real Time Operating ystems Luca Abeni luca.abeni@unitn.it Interacting Tasks Until now, only independent tasks... A job never blocks or suspends A task only blocks on job termination In real world, jobs

More information

Bicubical Directed Type Theory

Bicubical Directed Type Theory Bicubical Directed Type Theory Matthew Weaver General Examination May 7th, 2018 Advised by Andrew Appel and Dan Licata Bicubical Directed Type Theory Bicubical directed type theory is a constructive model

More information

Semantic Equivalences and the. Verification of Infinite-State Systems 1 c 2004 Richard Mayr

Semantic Equivalences and the. Verification of Infinite-State Systems 1 c 2004 Richard Mayr Semantic Equivalences and the Verification of Infinite-State Systems Richard Mayr Department of Computer Science Albert-Ludwigs-University Freiburg Germany Verification of Infinite-State Systems 1 c 2004

More information

A Behavioral Congruence for Concurrent Constraint Programming with Nondeterministic Choice

A Behavioral Congruence for Concurrent Constraint Programming with Nondeterministic Choice A Behavioral Congruence for Concurrent Constraint Programming with Nondeterministic Choice Luis Pino*, Filippo Bonchi** and Frank Valencia* (Presented by: Jorge A. Pe rez) *E quipe Come te, LIX, Laboratoire

More information

Expressing Dynamics of Mobile Programs by Typing

Expressing Dynamics of Mobile Programs by Typing 5 th Slovakian-Hungarian Joint Symposium on Applied Machine Intelligence and Informatics January 25-26, 2007 Poprad, Slovakia Expressing Dynamics of Mobile Programs by Typing Martin Tomášek Department

More information

On Prediction and Planning in Partially Observable Markov Decision Processes with Large Observation Sets

On Prediction and Planning in Partially Observable Markov Decision Processes with Large Observation Sets On Prediction and Planning in Partially Observable Markov Decision Processes with Large Observation Sets Pablo Samuel Castro pcastr@cs.mcgill.ca McGill University Joint work with: Doina Precup and Prakash

More information

Probabilistic Model Checking and Strategy Synthesis for Robot Navigation

Probabilistic Model Checking and Strategy Synthesis for Robot Navigation Probabilistic Model Checking and Strategy Synthesis for Robot Navigation Dave Parker University of Birmingham (joint work with Bruno Lacerda, Nick Hawes) AIMS CDT, Oxford, May 2015 Overview Probabilistic

More information

EMBEDDED SYSTEMS WILLIAM C. ROUNDS AND HOSUNG SONG

EMBEDDED SYSTEMS WILLIAM C. ROUNDS AND HOSUNG SONG THE φ-calculus A HYBRID EXTENSION OF THE π-calculus TO EMBEDDED SYSTEMS WILLIAM C. ROUNDS AND HOSUNG SONG 1. Introduction Embedded systems are software systems which reside in a physical environment and

More information

Dynamic Noninterference Analysis Using Context Sensitive Static Analyses. Gurvan Le Guernic July 14, 2007

Dynamic Noninterference Analysis Using Context Sensitive Static Analyses. Gurvan Le Guernic July 14, 2007 Dynamic Noninterference Analysis Using Context Sensitive Static Analyses Gurvan Le Guernic July 14, 2007 1 Abstract This report proposes a dynamic noninterference analysis for sequential programs. This

More information

Angelo Troina. Joint work with: Ruggero Lanotte (University of Insubria at Como) Andrea Maggiolo Schettini (University of Pisa)

Angelo Troina. Joint work with: Ruggero Lanotte (University of Insubria at Como) Andrea Maggiolo Schettini (University of Pisa) Angelo Troina Dipartimento di Informatica, Università di Pisa, Italy Probabilistic Joint work with: Ruggero Lanotte (University of Insubria at Como) Andrea Maggiolo Schettini (University of Pisa) 1/23

More information

Reversibility in the higher-order π-calculus

Reversibility in the higher-order π-calculus Reversibility in the higher-order π-calculus Ivan Lanese, Claudio Antares Mezzina, Jean-Bernard Stefani To cite this version: Ivan Lanese, Claudio Antares Mezzina, Jean-Bernard Stefani. Reversibility in

More information

Stochastic Simulation of Biological Systems with Dynamical Compartments

Stochastic Simulation of Biological Systems with Dynamical Compartments Frontmatter Stochastic Simulation of Biological Systems with Dynamical Compartments Cristian Versari versari(at)cs.unibo.it Department of Computer Science University of Bologna Workshop on Computational

More information

Failure detectors Introduction CHAPTER

Failure detectors Introduction CHAPTER CHAPTER 15 Failure detectors 15.1 Introduction This chapter deals with the design of fault-tolerant distributed systems. It is widely known that the design and verification of fault-tolerent distributed

More information

The π-calculus Semantics. Equivalence and Value-Passing. Infinite Sums 4/12/2004

The π-calculus Semantics. Equivalence and Value-Passing. Infinite Sums 4/12/2004 The π-calculus Semantics Overview ate and early semantics Bisimulation and congruence Variations of the calculus eferences obin Milner, Communicating and Mobil Systems Davide Sangiorgi and David Walker,

More information

Communication and Concurrency: CCS

Communication and Concurrency: CCS Communication and Concurrency: CCS R. Milner, A Calculus of Communicating Systems, 1980 cours SSDE Master 1 Why calculi? Prove properties on programs and languages Principle: tiny syntax, small semantics,

More information

Introduction to process algebra

Introduction to process algebra Introduction to process algebra Luís S. Barbosa DI-CCTC Universidade do Minho Braga, Portugal March, 2010 Actions & processes Action is a latency for interaction for a L, L denoting a set of names Act

More information

Mobile Processes in Bigraphs. Ole Høgh Jensen. October 2006

Mobile Processes in Bigraphs. Ole Høgh Jensen. October 2006 Mobile Processes in Bigraphs Ole Høgh Jensen October 2006 Abstract Bigraphical reactive systems (BRSs) are a formalism for modelling mobile computation. A bigraph consists of two combined mathematical

More information

Formal Methods and Systems Biology: The Calculus of Looping Sequences

Formal Methods and Systems Biology: The Calculus of Looping Sequences Formal Methods and Systems Biology: The Calculus of Looping Sequences Paolo Milazzo Dipartimento di Informatica, Università di Pisa, Italy Verona January 22, 2008 Paolo Milazzo (Università di Pisa) Formal

More information

A Theory for Comparing the Expressive Power of Access Control Models

A Theory for Comparing the Expressive Power of Access Control Models A Theory for Comparing the Expressive Power of Access Control Models Mahesh V. Tripunitara Ninghui Li Department of Computer Sciences and CERIAS, Purdue University, West Lafayette, IN 47905. {tripunit,ninghui}@cerias.purdue.edu

More information

Situation. The XPS project. PSO publication pattern. Problem. Aims. Areas

Situation. The XPS project. PSO publication pattern. Problem. Aims. Areas Situation The XPS project we are looking at a paradigm in its youth, full of potential and fertile with new ideas and new perspectives Researchers in many countries are experimenting with particle swarms

More information

PRISM: Probabilistic Model Checking for Performance and Reliability Analysis

PRISM: Probabilistic Model Checking for Performance and Reliability Analysis PRISM: Probabilistic Model Checking for Performance and Reliability Analysis Marta Kwiatkowska, Gethin Norman and David Parker Oxford University Computing Laboratory, Wolfson Building, Parks Road, Oxford,

More information

Bounded Retransmission in Event-B CSP: a Case Study

Bounded Retransmission in Event-B CSP: a Case Study Available online at www.sciencedirect.com Electronic Notes in Theoretical Computer Science 280 (2011) 69 80 www.elsevier.com/locate/entcs Bounded Retransmission in Event-B CSP: a Case Study Steve Schneider

More information

One can use elliptic curves to factor integers, although probably not RSA moduli.

One can use elliptic curves to factor integers, although probably not RSA moduli. Elliptic Curves Elliptic curves are groups created by defining a binary operation (addition) on the points of the graph of certain polynomial equations in two variables. These groups have several properties

More information

Communication and Concurrency: CCS. R. Milner, A Calculus of Communicating Systems, 1980

Communication and Concurrency: CCS. R. Milner, A Calculus of Communicating Systems, 1980 Communication and Concurrency: CCS R. Milner, A Calculus of Communicating Systems, 1980 Why calculi? Prove properties on programs and languages Principle: tiny syntax, small semantics, to be handled on

More information

Coinductive big-step semantics and Hoare logics for nontermination

Coinductive big-step semantics and Hoare logics for nontermination Coinductive big-step semantics and Hoare logics for nontermination Tarmo Uustalu, Inst of Cybernetics, Tallinn joint work with Keiko Nakata COST Rich Models Toolkit meeting, Madrid, 17 18 October 2013

More information

Session Types Revisited

Session Types Revisited Session Types Revisited Ornela Dardha a, Elena Giachino b, Davide Sangiorgi b a School of Computing Science, University of Glasgow, United Kingdom b INRIA Focus Team / DISI, University of Bologna, Italy

More information

Mixing Finite Success and Finite Failure. Automated Prover

Mixing Finite Success and Finite Failure. Automated Prover in an Automated Prover Alwen Tiu 1, Gopalan Nadathur 2 and Dale Miller 3 1 INRIA Lorraine, France 2 University of Minnesota, USA 3 INRIA Futurs/École polytechnique, France ESHOL 2005 Montego Bay, Jamaica

More information

An object-oriented design process. Weather system description. Layered architecture. Process stages. System context and models of use

An object-oriented design process. Weather system description. Layered architecture. Process stages. System context and models of use An object-oriented design process Process stages Structured design processes involve developing a number of different system models. They require a lot of effort for development and maintenance of these

More information

PART FIVE: SOME VERIFICATION CHALLENGES

PART FIVE: SOME VERIFICATION CHALLENGES PART FIVE: SOME VERIFICATION CHALLENGES a DFC case study with several verification problems, all concerning signaling properties and event-based feature interactions SIGNALING INTERACTIONS transparency:

More information

Subtyping for Session Types in the Pi Calculus

Subtyping for Session Types in the Pi Calculus Acta Informatica manuscript No. (will be inserted by the editor) Subtyping for Session Types in the Pi Calculus Simon Gay 1, Malcolm Hole 2 1 Department of Computing Science, University of Glasgow, UK

More information

Technical Report Communicating Secret Information Without Secret Messages

Technical Report Communicating Secret Information Without Secret Messages Technical Report 013-605 Communicating Secret Information Without Secret Messages Naya Nagy 1, Marius Nagy 1, and Selim G. Akl 1 College of Computer Engineering and Science Prince Mohammad Bin Fahd University,

More information

Deducing Interactions in Partially Unspecified Biological Systems

Deducing Interactions in Partially Unspecified Biological Systems Deducing Interactions in Partially Unspecified Biological Systems P. Baldan 1 A. Bracciali 2 L. Brodo 3 R. Bruni 2 1 Università di Padova 2 Università di Pisa 3 Università di Sassari Algebraic Biology

More information

University of Surrey. Bounded Retransmission in Event-B CSP: A Case Study. Steve Schneider, Helen Treharne and Heike Wehrheim

University of Surrey. Bounded Retransmission in Event-B CSP: A Case Study. Steve Schneider, Helen Treharne and Heike Wehrheim University of Surrey Bounded Retransmission in Event-B CSP: A Case Study Department of Computing Steve Schneider, Helen Treharne and Heike Wehrheim March 21 st 2011 Computing Sciences Report CS-11-04 Bounded

More information

A theory of modular and dynamic knowledge representation

A theory of modular and dynamic knowledge representation A theory of modular and dynamic knowledge representation Ján Šefránek Institute of Informatics, Comenius University, Mlynská dolina, 842 15 Bratislava, Slovakia, phone: (421-7) 6029 5436, e-mail: sefranek@fmph.uniba.sk

More information

Incomplete Information in RDF

Incomplete Information in RDF Incomplete Information in RDF Charalampos Nikolaou and Manolis Koubarakis charnik@di.uoa.gr koubarak@di.uoa.gr Department of Informatics and Telecommunications National and Kapodistrian University of Athens

More information

Shared Memory vs Message Passing

Shared Memory vs Message Passing Shared Memory vs Message Passing Carole Delporte-Gallet Hugues Fauconnier Rachid Guerraoui Revised: 15 February 2004 Abstract This paper determines the computational strength of the shared memory abstraction

More information

Process Algebras and Concurrent Systems

Process Algebras and Concurrent Systems Process Algebras and Concurrent Systems Rocco De Nicola Dipartimento di Sistemi ed Informatica Università di Firenze Process Algebras and Concurrent Systems August 2006 R. De Nicola (DSI-UNIFI) Process

More information

On Compensation Primitives as Adaptable Processes

On Compensation Primitives as Adaptable Processes On Compensation Primitives as Adaptable Processes Jovana Dedeić University of Novi Sad Jovanka Pantović (Novi Sad) and Jorge A. Pérez (Groningen) LAP 2015 - Dubrovnik, September 24, 2015 Outline 1 Context

More information

Opus: University of Bath Online Publication Store

Opus: University of Bath Online Publication Store Lam, V. S. W. (2006) A formal execution semantics and rigorous analytical approach for communicating UML statechart diagrams. Other. Department of Computer Science, University of Bath. Link to official

More information

Ability to Count Messages Is Worth Θ( ) Rounds in Distributed Computing

Ability to Count Messages Is Worth Θ( ) Rounds in Distributed Computing Ability to Count Messages Is Worth Θ( ) Rounds in Distributed Computing Tuomo Lempiäinen Aalto University, Finland LICS 06 July 7, 06 @ New York / 0 Outline Introduction to distributed computing Different

More information

Charter for the. Information Transfer and Services Architecture Focus Group

Charter for the. Information Transfer and Services Architecture Focus Group for the Information Transfer and Services Architecture Focus Group 1. PURPOSE 1.1. The purpose of this charter is to establish the Information Transfer and Services Architecture Focus Group (ITSAFG) as

More information

Change-point models and performance measures for sequential change detection

Change-point models and performance measures for sequential change detection Change-point models and performance measures for sequential change detection Department of Electrical and Computer Engineering, University of Patras, 26500 Rion, Greece moustaki@upatras.gr George V. Moustakides

More information

Information Systems Business Process Modelling I: Models

Information Systems Business Process Modelling I: Models Information Systems 2 Information Systems 2 5. Business Process Modelling I: Models Lars Schmidt-Thieme Information Systems and Machine Learning Lab (ISMLL) Institute for Business Economics and Information

More information

Model-based engineering of embedded systems using the hybrid process algebra Chi

Model-based engineering of embedded systems using the hybrid process algebra Chi LIX Colloquium 2006 Model-based engineering of embedded systems using the hybrid process algebra Chi J.C.M. Baeten, D.A. van Beek, P.J.L. Cuijpers, M.A. Reniers J.E. Rooda, R.R.H. Schiffelers, R.J.M. Theunissen

More information

6.867 Machine learning, lecture 23 (Jaakkola)

6.867 Machine learning, lecture 23 (Jaakkola) Lecture topics: Markov Random Fields Probabilistic inference Markov Random Fields We will briefly go over undirected graphical models or Markov Random Fields (MRFs) as they will be needed in the context

More information

Geostatistics and Spatial Scales

Geostatistics and Spatial Scales Geostatistics and Spatial Scales Semivariance & semi-variograms Scale dependence & independence Ranges of spatial scales Variable dependent Fractal dimension GIS implications Spatial Modeling Spatial Analysis

More information

An Observational Theory for Mobile Ad Hoc Networks

An Observational Theory for Mobile Ad Hoc Networks Dipartimento di Informatica Università degli Studi di Verona Rapporto di ricerca Research report December 2006 44/2006 An Observational Theory for Mobile Ad Hoc Networks Massimo Merro Department of Computer

More information

Eventually consistent failure detectors

Eventually consistent failure detectors J. Parallel Distrib. Comput. 65 (2005) 361 373 www.elsevier.com/locate/jpdc Eventually consistent failure detectors Mikel Larrea a,, Antonio Fernández b, Sergio Arévalo b a Departamento de Arquitectura

More information

Introduction to mcrl2

Introduction to mcrl2 Introduction to mcrl2 Luís S. Barbosa DI-CCTC Universidade do Minho Braga, Portugal May, 2011 mcrl2: A toolset for process algebra mcrl2 provides: a generic process algebra, based on Acp (Bergstra & Klop,

More information

Deducing Interactions in Partially Unspecified Biological Systems

Deducing Interactions in Partially Unspecified Biological Systems Deducing Interactions in Partially Unspecified Biological Systems P. Baldan 1 A. Bracciali 2 L. Brodo 3 R. Bruni 2 1 Università di Padova 2 Università di Pisa 3 Università di Sassari Algebraic Biology

More information

Interpreting the Full λ-calculus in the π-calculus

Interpreting the Full λ-calculus in the π-calculus Interpreting the Full λ-calculus in the π-calculus Xiaojuan Cai Joint work with Yuxi Fu BASICS Lab October 12, 2009 Motivation The λ-calculus: sequential model; The π-calculus: concurrent model A deep

More information

Equations, contractions, and unique solutions

Equations, contractions, and unique solutions Equations, contractions, and unique solutions Davide Sangiorgi To cite this version: Davide Sangiorgi. Equations, contractions, and unique solutions. POPL 2015 - Proceedings of the 42nd Annual ACM SIGPLAN-SIGACT

More information

Partial model checking via abstract interpretation

Partial model checking via abstract interpretation Partial model checking via abstract interpretation N. De Francesco, G. Lettieri, L. Martini, G. Vaglini Università di Pisa, Dipartimento di Ingegneria dell Informazione, sez. Informatica, Via Diotisalvi

More information

Geological information for Europe : Towards a pan-european Geological Data Infrastructure

Geological information for Europe : Towards a pan-european Geological Data Infrastructure Geological information for Europe : Towards a pan-european Geological Data Infrastructure Integrating geoscientific information for EU competitiveness Co-funded by the European Union European societal

More information

Modeling and Analysis of Communicating Systems

Modeling and Analysis of Communicating Systems Modeling and Analysis of Communicating Systems Lecture 5: Sequential Processes Jeroen Keiren and Mohammad Mousavi j.j.a.keiren@vu.nl and m.r.mousavi@hh.se Halmstad University March 2015 Outline Motivation

More information

Information Theory Meets Quantum Physics

Information Theory Meets Quantum Physics Information Theory Meets Quantum Physics The magic of wave dynamics Apoorva Patel Centre for High Energy Physics Indian Institute of Science, Bangalore 30 April 2016 (Commemorating the 100th birthday of

More information

Dynamic Multirole Session Types

Dynamic Multirole Session Types Dynamic Multirole Session Types Pierre-Malo Deniélou Nobuko Yoshida Imperial College London client Map Reduce server. server client Deniélou, Yoshida (Imperial) Dynamic Multirole Session Types POPL 11

More information

California Common Core State Standards for Mathematics Standards Map Mathematics I

California Common Core State Standards for Mathematics Standards Map Mathematics I A Correlation of Pearson Integrated High School Mathematics Mathematics I Common Core, 2014 to the California Common Core State s for Mathematics s Map Mathematics I Copyright 2017 Pearson Education, Inc.

More information

Recent results on Timed Systems

Recent results on Timed Systems Recent results on Timed Systems Time Petri Nets and Timed Automata Béatrice Bérard LAMSADE Université Paris-Dauphine & CNRS berard@lamsade.dauphine.fr Based on joint work with F. Cassez, S. Haddad, D.

More information

Formal Techniques for Software Engineering: Denotational Semantics

Formal Techniques for Software Engineering: Denotational Semantics Formal Techniques for Software Engineering: Denotational Semantics Rocco De Nicola IMT Institute for Advanced Studies, Lucca rocco.denicola@imtlucca.it May 2013 Lesson 4 R. De Nicola (IMT-Lucca) FoTSE@LMU

More information

Spatial and stochastic equivalence relations for PALOMA. Paul Piho

Spatial and stochastic equivalence relations for PALOMA. Paul Piho Spatial and stochastic equivalence relations for PALOMA Paul Piho Master of Science by Research CDT in Pervasive Parallelism School of Informatics University of Edinburgh 2016 Abstract This dissertation

More information

Lecture 4 Event Systems

Lecture 4 Event Systems Lecture 4 Event Systems This lecture is based on work done with Mark Bickford. Marktoberdorf Summer School, 2003 Formal Methods One of the major research challenges faced by computer science is providing

More information

Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events

Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events Massimo Franceschet Angelo Montanari Dipartimento di Matematica e Informatica, Università di Udine Via delle

More information

TTA and PALS: Formally Verified Design Patterns for Distributed Cyber-Physical

TTA and PALS: Formally Verified Design Patterns for Distributed Cyber-Physical TTA and PALS: Formally Verified Design Patterns for Distributed Cyber-Physical DASC 2011, Oct/19 CoMMiCS Wilfried Steiner wilfried.steiner@tttech.com TTTech Computertechnik AG John Rushby rushby@csl.sri.com

More information

Linear Logic Pages. Yves Lafont (last correction in 2017)

Linear Logic Pages. Yves Lafont (last correction in 2017) Linear Logic Pages Yves Lafont 1999 (last correction in 2017) http://iml.univ-mrs.fr/~lafont/linear/ Sequent calculus Proofs Formulas - Sequents and rules - Basic equivalences and second order definability

More information

SPA for quantitative analysis: Lecture 6 Modelling Biological Processes

SPA for quantitative analysis: Lecture 6 Modelling Biological Processes 1/ 223 SPA for quantitative analysis: Lecture 6 Modelling Biological Processes Jane Hillston LFCS, School of Informatics The University of Edinburgh Scotland 7th March 2013 Outline 2/ 223 1 Introduction

More information

On a Monadic Encoding of Continuous Behaviour

On a Monadic Encoding of Continuous Behaviour On a Monadic Encoding of Continuous Behaviour Renato Neves joint work with: Luís Barbosa, Manuel Martins, Dirk Hofmann INESC TEC (HASLab) & Universidade do Minho October 1, 2015 1 / 27 The main goal A

More information