Process Algebra (2IF45) Abstraction and Recursions in Process Algebra Suzana Andova.

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

CommUnity, Tiles and Connectors joint work with Roberto Bruni José Luiz Fiadeiro Antónia Lopes Ugo Montanari Ivan Lanese Dipartimento di Informatica Università.
Process Algebra (2IF45) Some Extensions of Basic Process Algebra Dr. Suzana Andova.
Process Algebra (2IF45) Recursion in Process Algebra Suzana Andova
Inference of progress properties for (multi party) sessions Mario Coppo (Universita’ di Torino) joint work with Mariangiola Dezani, Nobuko Yoshida Lisbon,
Process Algebra (2IF45) Abstraction in Process Algebra Suzana Andova.
Chapter 4 Probability and Probability Distributions
Process Algebra (2IF45) Probabilistic Process Algebra Suzana Andova.
Process Algebra (2IF45) Probabilistic Process Algebra Suzana Andova.
Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.
Process Algebra (2IF45) Probabilistic extension: semantics Parallel composition Dr. Suzana Andova.
The Derivative. Definition Example (1) Find the derivative of f(x) = 4 at any point x.
C LAUS B RABRAND © S EMANTICS (Q1,’06) A UG 31, 2006 C LAUS B RABRAND © 2005–2006, University of Aarhus [ ] [
Operational Semantics Semantics with Applications Chapter 2 H. Nielson and F. Nielson
An algebra of Connectors for modeling CommUnity with Tiles joint work with Roberto Bruni Ugo Montanari Dipartimento di Informatica Università di Pisa Ivan.
Algebra 1: Solving Equations with variables on BOTH sides.
Process Algebra (2IF45) Basic Process Algebra (Soundness proof) Dr. Suzana Andova.
ME751 Advanced Computational Multibody Dynamics Introduction January 21, 2010 Dan Negrut University of Wisconsin, Madison © Dan Negrut, 2010 ME751, UW-Madison.
CSE 755, part3 Axiomatic Semantics Will consider axiomatic semantics (A.S.) of IMP: ::=skip | | | | ; | | Only integer vars; no procedures/fns; vars declared.
 Vocabulary: ◦ Variable – A symbol, usually a letter of the alphabet, such as the letter n, that is used to represent a number. ◦ Variable expression.
Process Algebra (2IF45) Probabilistic Branching Bisimulation: Exercises Dr. Suzana Andova.
SDS Foil no 1 Process Algebra Process Algebra – calculating with behaviours.
Communication and Concurrency: CCS
Reactive systems – general
15. Implicit Differentiation Objectives: Refs: B&Z Learn some new techniques 2.Examples 3.An application.
Mathematics What is it? What is it about?. Terminology: Definition Axiom – a proposition that is assumed without proof for the sake of studying the consequences.
Factor: Factor: 1. s 2 r 2 – 4s 4 1. s 2 r 2 – 4s b b 3 c + 18b 2 c b b 3 c + 18b 2 c 2 3. xy + 3x – 2y xy + 3x – 2y -
Algebraic Plane Solution Let’s solve the system of equations: 2x – 5y + 2z = 15 x + 3y - z = -4 2x - y - z = 2 First we make our assumption that they all.
Copyright © Cengage Learning. All rights reserved. 14 Partial Derivatives.
Continuity Chapter 2: Limits and Continuity.
CS6133 Software Specification and Verification
MPRI 3 Dec 2007Catuscia Palamidessi 1 Why Probability and Nondeterminism? Concurrency Theory Nondeterminism –Scheduling within parallel composition –Unknown.
Sixth lecture Concepts of Probabilities. Random Experiment Can be repeated (theoretically) an infinite number of times Has a well-defined set of possible.
MPRI – Course on Concurrency Lectures 11 and 12 The pi-calculus expressiveness hierarchy Catuscia Palamidessi INRIA Futurs and LIX
Copyright © Cengage Learning. All rights reserved The Chain Rule.
Discrete Simulation of Behavioural Hybrid Process Calculus Tomas Krilavičius Helen Shonenberg University of Twente.
Verifying Properties of Parallel Programs: An Axiomatic Approach Susan Owicki and David Gries Communications of the ACM, 1976 Presented by Almog Benin.
1 Lecture 15: Stability and Control III — Control Philosophy of control: closed loop with feedback Ad hoc control thoughts Controllability Three link robot.
Process Algebra (2IF45) Basic Process Algebra (Completeness proof) Dr. Suzana Andova.
11 PARTIAL DERIVATIVES.
Evaluating Expressions and Combining Like Terms
Process Algebra (2IF45) Abstraction Parallel composition (short intro) Suzana Andova.
Process Algebra (2IF45) Analysing Probabilistic systems Dr. Suzana Andova.
Holt Algebra Adding and Subtracting Radical Expressions Warm Up Simplify each expression x + 15y – 12y + x 2. 9xy + 2xy – 8xy 3. –3(a + b)
Operational Semantics Mooly Sagiv Tel Aviv University Sunday Scrieber 8 Monday Schrieber.
Process Algebra (2IF45) Basic Process Algebra Dr. Suzana Andova.
Process Algebra (2IF45) Assignments Dr. Suzana Andova.
CS5270 Lecture 41 Timed Automata I CS 5270 Lecture 4.
Chapter 2: Lambda Calculus
Evaluating Expressions and Combining Like Terms
Spring 2017 Program Analysis and Verification
Remainder Theorem What’s left over?.
Process Algebra (2IF45) Extending Process Algebra: Abstraction
Process Algebra (2IF45) Expressiveness of BPArec
Copyright © Cengage Learning. All rights reserved.
Lecture 03: Linear Algebra
Other Models of Computation
Copyright © Cengage Learning. All rights reserved.
Phys102 Lecture 12 Kirchhoff’s Rules
SS 2018 Software Verification ML, state machines
Exercise Solutions: Functional Verification
Copyright © Cengage Learning. All rights reserved.
Algebra 1 Section 10.3.
Axiomatic Semantics Will consider axiomatic semantics (A.S.) of IMP:
Instructor: Alexander Stoytchev
Functional Verification II
Factorization.
Symbols, Variables, and Types of Sentences used in Algebra.
Copyright © Cengage Learning. All rights reserved.
Phys102 Lecture 12 Kirchhoff’s Rules
Presentation transcript:

Process Algebra (2IF45) Abstraction and Recursions in Process Algebra Suzana Andova

1 Outline of the lecture Combining silent steps with recursion Fairness rules Some examples Fairness: is this what it is really about? Process Algebra (2IF45)

2 Axiomatizing Rooted Branching Bisimulations Language: BPA  (A) Signature: 0, 1, (a._ ) a  A, , +, Language terms T(BPA  (A,)) Closed terms C(BPA  (A)) Rooted Branching Bisimilarity on LTSs Equality of terms x+ y = y+x (x+y) + z = x+ (y + z) x + x = x x+ 0 = x (x+ y)  z = x  z+y  z (x  y)  z = x  (y  z) 0  x = 0 x  1 = x 1  x = x a.x  y = a.(x  y) a.( .(x+y) + x) = a.(x+y) Completeness Soundness Deduction rules for BPA  (A) (a  A  ): x  x’ x + y  x’ a a  11  x  (x + y)   a.x  x  a  y  y’ x + y  y’ a a y  (x + y)  ⑥ x  x’ x  y  x’  y a a x  y  (x  y)     x  y  y’ x  y  y’ a a

3 Process Algebra (2IF45) Combining internal step with other operators: Hiding operator Language: BPA  (A) Signature: 0, 1, (a._ ) a  A, , +,,  I (I  A) Language terms T(BPA  (A,)) Closed terms C(BPA  (A)) turns external actions into internal steps

4 Process Algebra (2IF45) Combining internal step with other operators: Encapsulation operator Language with Signature: 0, 1, (a._ ) a  A, , +,  H (H  A) blocks actions

5 Process Algebra (2IF45) Combining internal step with other operators: Parallel composition and communication Language: TCP  (A) Signature : 0, 1, (a._ ) a  A, , +,,  I (I  A), ||, |, ╙,  H, Language terms T(BPA  (A,  )) Closed terms C(BPA  (A,  )) Axioms for parallel composition with silent step: x ╙ .y = x ╙ y x | .y = 0

6 Exercises Process Algebra (2IF45)

7 Home work You DID prove soundness of B axiom wrt rooted BB! You DID Read the proof of ground completeness Process Algebra (2IF45)

8 Bisimilarity vs. Derivability Process Algebra (2IF45) Rooted branching bisimulation TCP  (A,  ) …. a.( .(x+y) +x) = a.(x+y) … a  a b b Language: TCP  (A) Signature : 0, 1, (a._ ) a  A, , +,,  I (I  A), ||, |, ╙,  H, Language terms T(BPA  (A,  )) Closed terms C(BPA  (A,  ))

9 Process Algebra (2IF45) Rooted branching bisimulation TCP  (A,  ) …. a.( .(x+y) +x) = a.(x+y) … a  a b b  a   a TCP  (A,  ) (+RSP,RDP,…) X = . Y Y = . Y +a.0 Can we derive X = . a.0? Language: TCP  (A) Signature : 0, 1, (a._ ) a  A, , +,,  I (I  A), ||, |, ╙,  H, Language terms T(BPA  (A,  )) Closed terms C(BPA  (A,  )) Bisimilarity vs. Derivability

10 Abstraction, silent steps and Recursion Guardedness and silent steps:  cannot be a guard of a variable X = . X has solutions . . a.1 but also . . b.1 (Do you remember what a solution of a rec. spec. is?) Guardedness and hiding operator:  I cannot appear in t X in X = t X X = i.  I (X), where i  I has solutions i.a.1 but also i. b.1 Process Algebra (2IF45) Guardedness with silent step is defined 

11 Abstraction and Recursion and Fairness Process Algebra (2IF45) X Y  a 0  Z U  a 0

12 Abstraction and Recursion and Fairness Process Algebra (2IF45) X Y  a 0  X = .Y Y = .Y + a.0 Z U  a 0 Z = .U U = a.0 HOW? RSP+RDP ? X = Z Observation on LTSs: 1.they are rooted bb bisimilar 2.implicitly internal loop is left eventually = fairness As recursive specifications:

13 Abstraction and Recursion and Fairness Process Algebra (2IF45) X Y  a 0  X = .Y Y = .Y + a.0 Z U  a 0 Z = .U U = a.0 X = Z At least two problems: 1.One is not guarder recursive specification! 2.Even if it is somehow made guarded, (but how?) B axiom is not sufficient to rewrite one spec into another Observation on LTSs: 1.they are rooted bb bisimilar 2.implicitly internal loop is left eventually = fairness As recursive specifications: HOW? RSP+RDP ?

14 Process Algebra (2IF45) X = .Y Y = .Y + a.0 X’ = i.Y’ Y’ = i.Y’ + a.0 for some action i to be turned internal “soon” by applying  I for I = {i} represents X Y  a 0  X’ Y’ i a 0 i applying  {i} (X’) Abstraction and Recursion and Fairness: problem 1. dealing with guardedness

15 Process Algebra (2IF45) Z = .U U = a.0 Z’ = i.U’ U’ = a.0 Abstraction and Recursion and Fairness: problem 1. dealing with guardedness X = .Y Y = .Y + a.0 X’ = i.Y’ Y’ = i.Y’ + a.0 for some action i to be turned internal “soon” by applying  I for I = {i} represents X Y  a 0  X’ Y’ i a 0 i applying  {i} (X’) represents Z’ U’ i a 0 applying  {i} (Z’) Z U  0 a

16 Process Algebra (2IF45) Z = .U U = a.0 Z’ = i.U’ U’ = a.0 Z’ U’ i a 0 applying  {i} (Z’) Z U  0 a Abstraction and Recursion and Fairness: problem 1. dealing with guardedness X = .Y Y = .Y + a.0 X’ = i.Y’ Y’ = i.Y’ + a.0 for some action i to be turned internal “soon” by applying  I for I = {i} represents X Y  a 0  X’ Y’ i a 0 i applying  {i} (X’) represents OK! How to connect them ?

17 Process Algebra (2IF45) X’ = i.Y’ Y’ = i.Y’ + a.0 Something like this shall help: Y’ = i.Y’ + a.0, i  I .  I (Y’) = .  I (a.0) Abstraction and Recursion and Fairness: problem 2. derivation rules We want to derive that  I (X’) = . a.0 =  I (Z’)! We need new rules for this!

18 Process Algebra (2IF45) a bit more general rule: x 1 = i 1.x 1 + y 1, i 1  I, I  A .  I (x 1 ) = .  I (y 1 ) Abstraction and Recursion and Fairness: Fairness rules KFAR b General KFAR n b rule is: x 1 = i 1.x 2 + y 1, x 2 = i 2.x 3 + y 2, … x n = i n.x 1 + y n, {i 1, … i n }  I  {  }, there is i k   .  I (x 1 ) = . (  I (y 1 ) + … +  I (y n ))

19 Process Algebra (2IF45) General KFAR n b rule is: x 1 = i 1.x 2 + y 1, x 2 = i 2.x 3 + y 2, … x n = i n.x 1 + y n, i 1, … i n  I, there is i k   .  I (x 1 ) = . (  I (y 1 ) + … +  I (y n )) Abstraction and Recursion and Fairness: Fairness rule KFAR n b

20 Process Algebra (2IF45) Abstraction and Recursion and Fairness: Example of tossing coins This exercise has be worked out during the lecture. If you didn’t attend the lecture you can find a similar exercise in [1] to show applicability of the KFAR rule

21 Process Algebra (2IF45) Abstraction and Recursion and Fairness: Example of throwing a die This exercise has be worked out during the lecture. If you didn’t attend the lecture you can find a similar exercise in [1] to show applicability of the CFAR rule

22 Process Algebra (2IF45) There will be no lecture on 29 th of May