AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AbC: A calculus for attribute-based communication
1. 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
2. Motivations
Collective Adaptive Systems (CAS)
Consist of a large number of components that might exhibit an
autonomic behaviour.
Components behaviour depends on their attributes, objectives,
environment, . . .
Systems are open and contain heterogeneous components.
Might rely on complex decision-making
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
3. Open Problems for Research
Main Priorities According to FoCAS
Operating Principles: to guarantee the ability to learn, adapt, evolve,
reason ... while functioning.
Design Principles: to design, engineer and manage CAS to guarantee
the expected functionalities.
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
4. Some Related Work
Constraint-based Communication
M. John, C. Lhoussaine, J. Niehren, A. M. Uhrmacher:
The Attributed Pi Calculus. CMSB 2008: 83-102 ,
πimp(L) Attributed Pi Calculus extended with priorities T. Comp.
Sys. Biology 12: 13-76 (2010).
T. Given-Wilson, D. Gorla, Barry Jay: Concurrent Pattern Calculus.
IFIP TCS 2010: 244-258
Interaction primitives: point-to-point communication filtered by
constraints
Scalability: limited scalability due to the number of actions needed to
model message exchanges with big groups
Introduction Yehia Abd Alrahman 3/14
5. Some Related Work
Broadcast-based Communication
CBS - K. V. S. Prasad: A Calculus of Broadcasting Systems. Sci.
Comput. Program. 25(2-3): 285-327 (1995)
bπ-calculus - Cristian Ene, Traian Muntean: A Broadcast-based
Calculus for Communicating Systems. IPDPS 2001: 149
Interaction primitives: broadcasting communication
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
6. Attribute-based Communication
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).
System structure:
A set of parallel components equipped with a set of attributes
All operating in an environment where predicates over attributes
can be evaluated
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
7. AbC Calculus
(Components) C ::= Γ :P | C1|C2
(Processes) P ::=
(Inaction) 0
(Input) | Π(x).P
(Output) | (u)@Π.P
(Update) | (a := u).P
(Choice) | P1 + P2
(Call) | K
(Predicates) Π ::= tt | a = u | Π1 ∧ Π2 | ¬Π
(Data) u ::= v | x
Preliminarly Results Yehia Abd Alrahman 6/14
8. AbC Calculus
(Components) C ::= Γ :P | C1|C2Γ :P | C1|C2
(Processes) P ::=
(Inaction) 0
(Input) | Π(x).P
(Output) | (u)@Π.P
(Update) | (a := u).P
(Choice) | P1 + P2
(Call) | K
(Predicates) Π ::= tt | a = u | Π1 ∧ Π2 | ¬Π
(Data) u ::= v | x
Γ :P | C1|C2
Preliminarly Results Yehia Abd Alrahman 6/14
9. AbC Calculus
(Components) C ::= Γ :P | C1|C2
(Processes) P ::=
(Inaction) 00
(Input) | Π(x).P
(Output) | (u)@Π.P
(Update) | (a := u).P
(Choice) | P1 + P2
(Call) | K
(Predicates) Π ::= tt | a = u | Π1 ∧ Π2 | ¬Π
(Data) u ::= v | x
0
Preliminarly Results Yehia Abd Alrahman 6/14
10. AbC Calculus
(Components) C ::= Γ :P | C1|C2
(Processes) P ::=
(Inaction) 0
(Input) | Π(x).PΠ(x).P
(Output) | (u)@Π.P
(Update) | (a := u).P
(Choice) | P1 + P2
(Call) | K
(Predicates) Π ::= tt | a = u | Π1 ∧ Π2 | ¬Π
(Data) u ::= v | x
Π(x).P
Preliminarly Results Yehia Abd Alrahman 6/14
11. AbC Calculus
(Components) C ::= Γ :P | C1|C2
(Processes) P ::=
(Inaction) 0
(Input) | Π(x).P
(Output) | (u)@Π.P(u)@Π.P
(Update) | (a := u).P
(Choice) | P1 + P2
(Call) | K
(Predicates) Π ::= tt | a = u | Π1 ∧ Π2 | ¬Π
(Data) u ::= v | x
(u)@Π.P
Preliminarly Results Yehia Abd Alrahman 6/14
12. AbC Calculus
(Components) C ::= Γ :P | C1|C2
(Processes) P ::=
(Inaction) 0
(Input) | Π(x).P
(Output) | (u)@Π.P
(Update) | (a := u).P(a := u).P
(Choice) | P1 + P2
(Call) | K
(Predicates) Π ::= tt | a = u | Π1 ∧ Π2 | ¬Π
(Data) u ::= v | x
(a := u).P
Preliminarly Results Yehia Abd Alrahman 6/14
13. AbC Calculus
(Components) C ::= Γ :P | C1|C2
(Processes) P ::=
(Inaction) 0
(Input) | Π(x).P
(Output) | (u)@Π.P
(Update) | (a := u).P
(Choice) | P1 + P2P1 + P2
(Call) | KK
(Predicates) Π ::= tt | a = u | Π1 ∧ Π2 | ¬Π
(Data) u ::= v | x
P1 + P2
K
Preliminarly Results Yehia Abd Alrahman 6/14
14. AbC Calculus
(Components) C ::= Γ :P | C1|C2
(Processes) P ::=
(Inaction) 0
(Input) | Π(x).P
(Output) | (u)@Π.P
(Update) | (a := u).P
(Choice) | P1 + P2
(Call) | K
(Predicates) Π ::= tt | a = u | Π1 ∧ Π2 | ¬Πtt | a = u | Π1 ∧ Π2 | ¬Π
(Data) u ::= v | x
tt | a = u | Π1 ∧ Π2 | ¬Π
Preliminarly Results Yehia Abd Alrahman 6/14
15. AbC Calculus
(Components) C ::= Γ :P | C1|C2
(Processes) P ::=
(Inaction) 0
(Input) | Π(x).P
(Output) | (u)@Π.P
(Update) | (a := u).P
(Choice) | P1 + P2
(Call) | K
(Predicates) Π ::= tt | a = u | Π1 ∧ Π2 | ¬Π
(Data) u ::= v | xv | xv | x
Preliminarly Results Yehia Abd Alrahman 6/14
16. Reduction Semantics
Reduction Semantics
Γ :(a := v).P + Q | C Γ[a → v] : P | C
Γ :(v)@Π.P + Q |
m
i=1
Γi :Πi (xi ).Pi + Qi | C Γ :P |
m
i=1
Γi :Pi [v/xi ] | C
s.t. ∀i = 1, . . . , m (Γi |= Π ∧ Γ |= Πi )
∧
(C ≡ Γ : Π (x).P + Q | C where Γ |= Π ∧ Γ |= Π )
Preliminarly Results Yehia Abd Alrahman 7/14
17. TV-Streaming with AbC
We consider a TV broadcaster, say CNN, and two receivers RcvA and RcvB.
CNN broadcasts news for free, but sports are only for subscribers.
CNN might internally change the quality of broadcast (Qbrd) to cope with
some situations (i.e., low bandwidth).
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
35. The Current State of AbC
AbC is provided with new operators at process level (i.e., parallel
composition, attribute-hiding)
AbC is provided with a labeled semantics and we proved the
correspondence with the reduction one.
We studied the behavioural theory of AbC by relying on labeled
bisimilarity and reduction barbed congruence. We proved that our
bisimilarity is a congruence.
We proved the soundness of our bisimilarity (i.e., bisimilarity is a proof
technique for reduction barbed congruence).
We proved that our labeled bisimilarity represents a complete
characterisation of reduction barbed congruence.
Future Goals Yehia Abd Alrahman 12/14
36. Future Work
Further steps on AbC
Consider alternative semantics for our language
Consider new operators at process level
Study the impact of bisimulation (axioms, proof techniques, . . . )
Consider alternative behavioural equivalences
Study the relative expressiveness of the calculus
Implementing the calculus
Define a language based on our calculus (an alternative version of
SCEL?)
Future Goals Yehia Abd Alrahman 13/14
37. Future Work
Further steps on AbC
Consider alternative semantics for our language
Consider new operators at process level
Study the impact of bisimulation (axioms, proof techniques, . . . )
Consider alternative behavioural equivalences
Study the relative expressiveness of the calculus
Implementing the calculus
Define a language based on our calculus (an alternative version of
SCEL?)
Consider stochastic variants and their relationships with CASPA (and
alternatives to it?)
Future Goals Yehia Abd Alrahman 13/14