A Foundation Calculus for Attribute-based

0 downloads 0 Views 825KB Size Report
Attribute-based Communication. Yehia Abd Alrahman. Joint work with Rocco De Nicola, Michele Loreti,. Francesco Tiezzi and Roberto Vigo. Salamanca, Spain.
A Foundation Calculus for Attribute-based Communication Yehia Abd Alrahman Joint work with Rocco De Nicola, Michele Loreti, Francesco Tiezzi and Roberto Vigo Salamanca, Spain April 12-18, 2015

Motivations Collective Adaptive Systems (CAS) I

Consist of a large number of components that might exhibit an autonomic behaviour.

I

Components behaviour depends on their attributes, objectives, environment, . . .

I

Systems are open and contain heterogeneous components.

I

Might rely on complex decision-making

I

Interactions introduce new, emerging, behaviours.

The Challenge Our objective is the development of a theoretical framework that helps us in understanding the essence of CAS and to tackle the main issues raised by them. Introduction

Yehia Abd Alrahman

1/14

Open Problems for Research Main Priorities According to FoCAS I

Operating Principles: to guarantee the ability to learn, adapt, evolve, reason ... while functioning.

I

Design Principles: to design, engineer and manage CAS to guarantee the expected functionalities.

I

Developmental Principles: to study the evolutionary nature of CAS, understanding the trade-off between learning and evolution)

Our Focus We are interested in the design principles and specifically in the way CAS-components interact and organise themselves in collectives.

Introduction

Yehia Abd Alrahman

2/14

Some Related Work Constraint-based Communication I

M. John, C. Lhoussaine, J. Niehren, A. M. Uhrmacher: I The Attributed Pi Calculus. CMSB 2008: 83-102 , I π imp (L) Attributed Pi Calculus extended with priorities T. Comp. Sys. Biology 12: 13-76 (2010).

I

T. Given-Wilson, D. Gorla, Barry Jay: Concurrent Pattern Calculus. IFIP TCS 2010: 244-258

I

Interaction primitives: point-to-point communication filtered by constraints

I

Scalability: limited scalability due to the number of actions needed to model message exchanges with big groups

Introduction

Yehia Abd Alrahman

3/14

Some Related Work Broadcast-based Communication I

CBS - K. V. S. Prasad: A Calculus of Broadcasting Systems. Sci. Comput. Program. 25(2-3): 285-327 (1995)

I

bπ-calculus - Cristian Ene, Traian Muntean: A Broadcast-based Calculus for Communicating Systems. IPDPS 2001: 149

I

Interaction primitives: broadcasting communication

I

Scalability: scales well, but still expensive, it is unfeasible to consider all listening processes in large systems and to possibly exclude some of them.

Attribute-based Communication An alternative to point-to-point communication and broadcasting could be Attribute-based Communication Introduction

Yehia Abd Alrahman

4/14

Attribute-based Communication I

The term Attribute-based Communication was coined in SCEL, but similar notions can be found in actorspaces model (G. Agha et al.), location-graphs (J.B. Stefani).

I

System structure: I A set of parallel components equipped with a set of attributes I All operating in an environment where predicates over attributes can be evaluated

I

Interaction primitives: broadcasting filtered by predicates over components attributes

Initial results A process calculus named AbC - for Attribute-based Communication Calculus. Preliminarly Results

Yehia Abd Alrahman

5/14

AbC Calculus (Components) C ::= Γ : P

| C1 |C2

(Processes) (Inaction) (Input) (Output) (Update) (Choice) (Call)

P ::=

(Predicates)

Π ::= tt

|

(Data)

u ::= v

| x

Preliminarly Results

| | | | |

0 Π(x).P (u)@Π.P (a := u).P P1 + P2 K a=u

Yehia Abd Alrahman

| Π 1 ∧ Π2

|

¬Π

6/14

AbC Calculus (Components) C ::= Γ : P

| C1 |C2

(Processes) (Inaction) (Input) (Output) (Update) (Choice) (Call)

P ::=

(Predicates)

Π ::= tt

|

(Data)

u ::= v

| x

Preliminarly Results

| | | | |

0 Π(x).P (u)@Π.P (a := u).P P1 + P2 K a=u

Yehia Abd Alrahman

| Π 1 ∧ Π2

|

¬Π

6/14

AbC Calculus (Components) C ::= Γ : P

| C1 |C2

(Processes) (Inaction) (Input) (Output) (Update) (Choice) (Call)

P ::=

(Predicates)

Π ::= tt

|

(Data)

u ::= v

| x

Preliminarly Results

| | | | |

0 Π(x).P (u)@Π.P (a := u).P P1 + P2 K a=u

Yehia Abd Alrahman

| Π 1 ∧ Π2

|

¬Π

6/14

AbC Calculus (Components) C ::= Γ : P

| C1 |C2

(Processes) (Inaction) (Input) (Output) (Update) (Choice) (Call)

P ::=

(Predicates)

Π ::= tt

|

(Data)

u ::= v

| x

Preliminarly Results

| | | | |

0 Π(x).P (u)@Π.P (a := u).P P1 + P2 K a=u

Yehia Abd Alrahman

| Π 1 ∧ Π2

|

¬Π

6/14

AbC Calculus (Components) C ::= Γ : P

| C1 |C2

(Processes) (Inaction) (Input) (Output) (Update) (Choice) (Call)

P ::=

(Predicates)

Π ::= tt

|

(Data)

u ::= v

| x

Preliminarly Results

| | | | |

0 Π(x).P (u)@Π.P (a := u).P P1 + P2 K a=u

Yehia Abd Alrahman

| Π 1 ∧ Π2

|

¬Π

6/14

AbC Calculus (Components) C ::= Γ : P

| C1 |C2

(Processes) (Inaction) (Input) (Output) (Update) (Choice) (Call)

P ::=

(Predicates)

Π ::= tt

|

(Data)

u ::= v

| x

Preliminarly Results

| | | | |

0 Π(x).P (u)@Π.P (a := u).P P1 + P2 K a=u

Yehia Abd Alrahman

| Π 1 ∧ Π2

|

¬Π

6/14

AbC Calculus (Components) C ::= Γ : P

| C1 |C2

(Processes) (Inaction) (Input) (Output) (Update) (Choice) (Call)

P ::=

(Predicates)

Π ::= tt

|

(Data)

u ::= v

| x

Preliminarly Results

| | | | |

0 Π(x).P (u)@Π.P (a := u).P P1 + P2 K a=u

Yehia Abd Alrahman

| Π 1 ∧ Π2

|

¬Π

6/14

AbC Calculus (Components) C ::= Γ : P

| C1 |C2

(Processes) (Inaction) (Input) (Output) (Update) (Choice) (Call)

P ::=

(Predicates)

Π ::= tt

|

(Data)

u ::= v

| x

Preliminarly Results

| | | | |

0 Π(x).P (u)@Π.P (a := u).P P1 + P2 K a=u

Yehia Abd Alrahman

| Π 1 ∧ Π2

| ¬Π

6/14

AbC Calculus (Components) C ::= Γ : P

| C1 |C2

(Processes) (Inaction) (Input) (Output) (Update) (Choice) (Call)

P ::=

(Predicates)

Π ::= tt

|

(Data)

u ::= v

| x

Preliminarly Results

| | | | |

0 Π(x).P (u)@Π.P (a := u).P P1 + P2 K a=u

Yehia Abd Alrahman

| Π 1 ∧ Π2

|

¬Π

6/14

Reduction Semantics

Reduction Semantics Γ : (a := v ).P + Q | C

Γ : (v )@Π.P + Q |

m Q

. Γ[a 7→ v ] : P | C

Γi : Πi (xi ).Pi + Qi | C

i=1

. Γ :P |

m Q

Γi : Pi [v /xi ] | C

i=1

s.t. ∀i = 1, . . . , m (Γi |= Π ∧ Γ |= Πi ) ∧ 0 0 (C 6≡ Γ0 : Π0 (x).P 0 + Q 0 | C 0 where Γ |= Π ∧ Γ |= Π )

Preliminarly Results

Yehia Abd Alrahman

7/14

TV-Streaming with AbC I

We consider a TV broadcaster, say CNN, and two receivers RcvA and RcvB.

I

CNN broadcasts news for free, but sports are only for subscribers.

I

CNN might internally change the quality of broadcast (Qbrd) to cope with some situations (i.e., low bandwidth).

I

RcvA and RcvB can receive broadcast or change the genre. CNN , (vs )@Πsport .CNN + (vn )@Πnews .CNN + (Qbrd := LD).CNN + (Qbrd := HD).CNN RcvA , ΠQ (x).RcvA + (Genre := Sport).RcvA + (Genre := News).RcvA RcvB , (tt)(x).RcvB + (Genre := Sport).RcvA + (Genre := News).RcvA

Preliminarly Results

Yehia Abd Alrahman

8/14

Satisfaction Relation Γ |= Π Γcnn = {(Qbrd, HD), . . . }

Preliminarly Results

Yehia Abd Alrahman

9/14

Satisfaction Relation Γ |= Π Γcnn = {(Qbrd, HD), . . . } ΓA = {(Genre, News), . . . }

Preliminarly Results

Yehia Abd Alrahman

9/14

Satisfaction Relation Γ |= Π Γcnn = {(Qbrd, HD), . . . } ΓA = {(Genre, News), . . . } ΓB = {(Genre, News), . . . }

Preliminarly Results

Yehia Abd Alrahman

9/14

Satisfaction Relation Γ |= Π Γcnn = {(Qbrd, HD), . . . } ΓA = {(Genre, News), . . . } ΓB = {(Genre, News), . . . } ΠNews = (Genre = News)

Preliminarly Results

Yehia Abd Alrahman

9/14

Satisfaction Relation Γ |= Π Γcnn = {(Qbrd, HD), . . . } ΓA = {(Genre, News), . . . } ΓB = {(Genre, News), . . . } ΠNews = (Genre = News) ΠQ = (Qbrd = HD)

Preliminarly Results

Yehia Abd Alrahman

9/14

Satisfaction Relation Γ |= Π Γcnn = {(Qbrd, (Qbrd, HD HD), . . . } ΓA = {(Genre, News), . . . } ΓB = {(Genre, News), . . . } ΠNews = (Genre = News) ΠQ = (Qbrd = HD) Γcnn |= ΠQ

Preliminarly Results

Yehia Abd Alrahman

9/14

Satisfaction Relation Γ |= Π Γcnn = {(Qbrd, HD), . . . } (Genre, News ΓA = {(Genre, News), . . . } ΓB = {(Genre, News), . . . } ΠNews = (Genre = News) ΠQ = (Qbrd = HD) Γcnn |= ΠQ ΓA |= ΠNews

Preliminarly Results

Yehia Abd Alrahman

9/14

Satisfaction Relation Γ |= Π Γcnn = {(Qbrd, HD), . . . } ΓA = {(Genre, News), . . . } ΓB = {(Genre, (Genre, News), News . . . } ΠNews = (Genre = News) ΠQ = (Qbrd = HD) Γcnn |= ΠQ ΓA |= ΠNews ΓB |= ΠNews

Preliminarly Results

Yehia Abd Alrahman

9/14

Interaction Fragment Γcnn : CNN | ΓA : RcvA | . . . . . . | ΓB : RcvB

Preliminarly Results

Yehia Abd Alrahman

10/14

Interaction Fragment Γcnn : CNN | ΓA : RcvA | . . . . . . | ΓB : RcvB Γcnn :(vn )@ΠNews

-

Preliminarly Results

Yehia Abd Alrahman

10/14

Interaction Fragment Γcnn : CNN | ΓA : RcvA | . . . . . . | ΓB : RcvB Γcnn :(vn )@ΠNews

-

Preliminarly Results

Yehia Abd Alrahman

10/14

Interaction Fragment Γcnn : CNN | ΓA : RcvA | . . . . . . | ΓB : RcvB Γcnn :(vn )@ΠNews

-

Preliminarly Results

Γcnn : CNN | ΓA : RcvA | . . . . . . | ΓB : RcvB

Yehia Abd Alrahman

10/14

Interaction Fragment Γcnn : CNN | ΓA : RcvA | . . . . . . | ΓB : RcvB Γcnn :(vn )@ΠNews

-

Γcnn : CNN | ΓA : RcvA | . . . . . . | ΓB : RcvB

.. . τ

-

Now

Preliminarly Results

Γcnn [Qbrd 7→ LD] : CNN

| ΓA : RcvA | . . . . . . | ΓB : RcvB

Γcnn 6|= ΠQ

Yehia Abd Alrahman

10/14

Interaction Fragment Γcnn : CNN | ΓA : RcvA | . . . . . . | ΓB : RcvB Γcnn :(vn )@ΠNews

-

Γcnn : CNN | ΓA : RcvA | . . . . . . | ΓB : RcvB

.. . τ

-

Now

Γcnn [Qbrd 7→ LD] : CNN

| ΓA : RcvA | . . . . . . | ΓB : RcvB

Γcnn 6|= ΠQ

Γcnn :(vn )@ΠNews

-

Preliminarly Results

Yehia Abd Alrahman

10/14

Interaction Fragment Γcnn : CNN | ΓA : RcvA | . . . . . . | ΓB : RcvB Γcnn :(vn )@ΠNews

Γcnn : CNN | ΓA : RcvA | . . . . . . | ΓB : RcvB

-

.. . τ

-

Now

Γcnn [Qbrd 7→ LD] : CNN

| ΓA : RcvA | . . . . . . | ΓB : RcvB

Γcnn 6|= ΠQ

Γcnn :(vn )@ΠNews

-

Γcnn : CNN | ΓA : RcvA | . . . . . . | ΓB : RcvB

RcvA Leaves the collective Preliminarly Results

Yehia Abd Alrahman

10/14

Studying Relative Expressiveness Modelling Channels in AbC ¯ ba.S | b(x).¯ x d.P

Future Goals

τ

- S | a¯d.P

Yehia Abd Alrahman

π − calculus

11/14

Studying Relative Expressiveness Modelling Channels in AbC ¯ ba.S | b(x).¯ x d.P

τ

- S | a¯d.P

Γ1 : (a)@Π1 .S | Γ2 : (tt)(x).(d)@Π2 .P -

π − calculus AbC − calculus

Γ1 : S | Γ2 : (d)@Π02 .P

Π1 = (port = b) Π2 = (port = x)

Π02 = (port = a)

Initially Γ2 = {(port, b)}

Future Goals

Yehia Abd Alrahman

11/14

The Current State of AbC I

AbC is provided with new operators at process level (i.e., parallel composition, attribute-hiding)

I

AbC is provided with a labeled semantics and we proved the correspondence with the reduction one.

I

We studied the behavioural theory of AbC by relying on labeled bisimilarity and reduction barbed congruence. We proved that our bisimilarity is a congruence.

I

We proved the soundness of our bisimilarity (i.e., bisimilarity is a proof technique for reduction barbed congruence).

I

We proved that our labeled bisimilarity represents a complete characterisation of reduction barbed congruence.

Future Goals

Yehia Abd Alrahman

12/14

Future Work Further steps on AbC I

Consider alternative semantics for our language

I

Consider new operators at process level

I

Study the impact of bisimulation (axioms, proof techniques, . . . )

I

Consider alternative behavioural equivalences

I

Study the relative expressiveness of the calculus

I

Implementing the calculus

I

Define a language based on our calculus (an alternative version of SCEL?)

Future Goals

Yehia Abd Alrahman

13/14

Future Work Further steps on AbC I

Consider alternative semantics for our language

I

Consider new operators at process level

I

Study the impact of bisimulation (axioms, proof techniques, . . . )

I

Consider alternative behavioural equivalences

I

Study the relative expressiveness of the calculus

I

Implementing the calculus

I

Define a language based on our calculus (an alternative version of SCEL?)

I

Consider stochastic variants and their relationships with CASPA (and alternatives to it?)

Future Goals

Yehia Abd Alrahman

13/14

Thank You

Future Goals

Yehia Abd Alrahman

14/14