+ All Categories
Home > Documents > Process Algebra (2IF45) Recursion in Process Algebra

Process Algebra (2IF45) Recursion in Process Algebra

Date post: 25-Feb-2016
Category:
Upload: zed
View: 44 times
Download: 3 times
Share this document with a friend
Description:
Process Algebra (2IF45) Recursion in Process Algebra . Suzana Andova. http://fusionanomaly.net/recursion.jpg. Equational theory: terms and LTSs. Language: BPA(A ) Signature: 0, 1, ( a._ ) a  A , +, … Language terms T(BPA(A)) Closed terms C(BPA(A)). Deduction rules for BPA(A): . - PowerPoint PPT Presentation
Popular Tags:
27
Process Algebra (2IF45) Recursion in Process Algebra Suzana Andova http://fusionanomaly.net/recursion.jpg
Transcript
Page 1: Process Algebra (2IF45) Recursion in Process Algebra

Process Algebra (2IF45)

Recursion in Process Algebra

Suzana Andova

http://fusionanomaly.net/recursion.jpg

Page 2: Process Algebra (2IF45) Recursion in Process Algebra

2

Language: BPA(A) Signature: 0, 1, (a._ )aA, +, … Language terms T(BPA(A)) Closed terms C(BPA(A))

Process Algebra (2IF45)

Deduction rules for BPA(A):

x x’ x + y x’

aa

1

x (x + y)

a.x x a

y y’ x + y y’

aa

y (x + y)

Equational theory: terms and LTSs

Axioms of BPA(A):(A1) x+ y = y+x

(A2) (x+y) + z = x+ (y + z)(A3) x + x = x(A4) x+ 0 = x

coin.coffee.1

coin

coffee

one-t

o-one

Page 3: Process Algebra (2IF45) Recursion in Process Algebra

3

Language: BPA(A) Signature: 0, 1, (a._ )aA, +, … Language terms T(BPA(A)) Closed terms C(BPA(A))

Process Algebra (2IF45)

Deduction rules for BPA(A):

x x’ x + y x’

aa

1

x (x + y)

a.x x a

y y’ x + y y’

aa

y (x + y)

Bisimilarity of LTSs Equality of termsSoundness

Completeness

Equational theory: terms and LTSs

Axioms of BPA(A):(A1) x+ y = y+x

(A2) (x+y) + z = x+ (y + z)(A3) x + x = x(A4) x+ 0 = x

coin.coffee.1

coin.coffee.1 + coin.coffee.1

coin

coffee

coin.coffee.1 = coin.coffee.1 + coin.coffee.1coin

coffee

coin

coffee

Page 4: Process Algebra (2IF45) Recursion in Process Algebra

4

Recursive processes

Process Algebra (2IF45)

Socrates_thinks

Socrates_eats

getHungry

goThinking

thinking

eating

Page 5: Process Algebra (2IF45) Recursion in Process Algebra

5

Recursive processes

Process Algebra (2IF45)

Socrates_thinks

Socrates_eats

getHungry

goThinking

Socrates_thinks = getHungry.Socrates_eats

Socrates_eats = goThinking.Socrates_thinks

thinking

eating

Page 6: Process Algebra (2IF45) Recursion in Process Algebra

6 Process Algebra (2IF45)

Deduction rules for BPA(A):

x x’ x + y x’

aa

1

x (x + y)

a.x x a

y y’ x + y y’

aa

y (x + y)

Recursive specifications and LTSs Language: BPA(A) Signature: 0, 1, (a._ )aA, +, … Language terms T(BPA(A)) Closed terms C(BPA(A)) Axioms of BPA(A):

(A1) x+ y = y+x(A2) (x+y) + z = x+ (y + z)

(A3) x + x = x(A4) x+ 0 = x

goThinking getHungry

Socrates_thinks = getHungry.Socrates_eats

Socrates_eats = goThinking.Socrates_thinks

Page 7: Process Algebra (2IF45) Recursion in Process Algebra

7 Process Algebra (2IF45)

Deduction rules for BPA(A):

x x’ x + y x’

aa

1

x (x + y)

a.x x a

y y’ x + y y’

aa

y (x + y)

Recursive specifications and LTSs Language: BPA(A) Signature: 0, 1, (a._ )aA, +, … Language terms T(BPA(A)) Closed terms C(BPA(A)) Axioms of BPA(A):

(A1) x+ y = y+x(A2) (x+y) + z = x+ (y + z)

(A3) x + x = x(A4) x+ 0 = x

GoThinking GetHungry

Socrates_thinks = getHungry.Socrates_eats

Socrates_eats = goThinking.Socrates_thinks

Page 8: Process Algebra (2IF45) Recursion in Process Algebra

8 Process Algebra (2IF45)

Recursive equations and specifications

E = { X = a.0 }

E1 = { X = a.Y, Y = b.0 }

Page 9: Process Algebra (2IF45) Recursion in Process Algebra

9 Process Algebra (2IF45)

Recursive Equations and Rec. Specification in Equational Theory

E = { X = a.Y + c.0,Y = b.X}

BPA(A), E ├ X = a.Y +c.0 = a.(b.X) +c.0 = a.(b.(a.Y + c.))) + c.0

Language: BPA(A) Signature: 0, 1, (a._ )aA, +, … Language terms T(BPA(A)) Closed terms C(BPA(A))

Axioms of BPA(A):(A1) x+ y = y+x

(A2) (x+y) + z = x+ (y + z)(A3) x + x = x(A4) x+ 0 = x

Recursive specification E

Page 10: Process Algebra (2IF45) Recursion in Process Algebra

10 Process Algebra (2IF45)

Solutions of recursive equations

Example: 1. E = { X = a.0 }

2. E1 = { X = a.Y, Y = b.0 }

Page 11: Process Algebra (2IF45) Recursion in Process Algebra

11 Process Algebra (2IF45)

Solutions of recursive equations

Example: 1. E = { X = X }

2. E1 = { X = X + a.0 }

Page 12: Process Algebra (2IF45) Recursion in Process Algebra

12 Process Algebra (2IF45)

Solutions of recursive equations

Example: 1. E = { X = a.X }

2. E1 = { X = a.(a.(X+1)) +1 }

Page 13: Process Algebra (2IF45) Recursion in Process Algebra

13 Process Algebra (2IF45)

Solutions of recursive specifications

E1 = { X = a.(a.(X+1)) +1 }

X

a

a.(X+1)

a a

X+1

This is a solution for X in the recursive spec. E1Substitute it on the left-hand side and on the right-hand side and check bisimilarity.

Page 14: Process Algebra (2IF45) Recursion in Process Algebra

14

This is also recursion ….

Process Algebra (2IF45)

Page 15: Process Algebra (2IF45) Recursion in Process Algebra

15 Process Algebra (2IF45)

Deduction rules for BPA(A):

x x’ x + y x’

aa

1

x (x + y)

a.x x a

y y’ x + y y’

aa

y (x + y)

Semantics of Recursive specifications Language: BPA(A) Signature: 0, 1, (a._ )aA, +, … Language terms T(BPA(A))

Axioms of BPA(A):(A1) x+ y = y+x

(A2) (x+y) + z = x+ (y + z)(A3) x + x = x(A4) x+ 0 = x

Page 16: Process Algebra (2IF45) Recursion in Process Algebra

16 Process Algebra (2IF45)

Deduction rules for BPA(A):

x x’ x + y x’

aa

1

x (x + y)

a.x x a

y y’ x + y y’

aa

y (x + y)

Semantics of Recursive specifications Language: BPArec(A)

Signature: 0, 1, (a._ )aA, +, X Language terms T(BPA(A))

Axioms of BPA(A):(A1) x+ y = y+x

(A2) (x+y) + z = x+ (y + z)(A3) x + x = x(A4) x+ 0 = x

Page 17: Process Algebra (2IF45) Recursion in Process Algebra

17 Process Algebra (2IF45)

Semantics of Recursive specifications

Page 18: Process Algebra (2IF45) Recursion in Process Algebra

18 Process Algebra (2IF45)

Semantics of Recursive specifications

tX,E w, X=t in E X w a

a

Page 19: Process Algebra (2IF45) Recursion in Process Algebra

19 Process Algebra (2IF45)

Deduction rules for BPA(A):

x x’ x + y x’

aa

1

x (x + y)

a.x x a

y y’ x + y y’

aa

y (x + y)

Semantics of Recursive specifications Language: BPArec(A)

Signature: 0, 1, (a._ )aA, +, XE

Language terms T(BPArec(A)) Axioms of BPA(A):

(A1) x+ y = y+x(A2) (x+y) + z = x+ (y + z)

(A3) x + x = x(A4) x+ 0 = x

GoThinking GetHungry

Socrates_thinks = getHungry.Socrates_eats

Socrates_eats = goThinking.Socrates_thinks

a term

….

Page 20: Process Algebra (2IF45) Recursion in Process Algebra

20 Process Algebra (2IF45)

Deduction rules for BPA(A):

x x’ x + y x’

aa

1

x (x + y)

a.x x a

y y’ x + y y’

aa

y (x + y)

Semantics of Recursive specifications Language: BPArec(A)

Signature: 0, 1, (a._ )aA, +, XE

Language terms T(BPArec(A)) Axioms of BPA(A):

(A1) x+ y = y+x(A2) (x+y) + z = x+ (y + z)

(A3) x + x = x(A4) x+ 0 = x

GoThinking GetHungry

Socrates_thinks = getHungry.Socrates_eats

Socrates_eats = goThinking.Socrates_thinks

a term

….

one-

to-o

ne

Page 21: Process Algebra (2IF45) Recursion in Process Algebra

21

Term model T(BPArec(A)) and BPArec(A)

• Bisimulation is congruence• Soundness holds (it is a model indeed) • Ground completeness does not hold

• Every recursive specification has a solution• Not every recursive specification has unique solution

Process Algebra (2IF45)

Page 22: Process Algebra (2IF45) Recursion in Process Algebra

22

Equational theories with recursion

• Model vs. Solution of recursive specification• Two important points for “useful models”

• Every recursive specification has a solution• Every recursive specification has a unique solution

Process Algebra (2IF45)

Page 23: Process Algebra (2IF45) Recursion in Process Algebra

23

Recursive Definition Principle (RDP)

For every recursive specification there is a solution in the model

Process Algebra (2IF45)

Page 24: Process Algebra (2IF45) Recursion in Process Algebra

24

Guarded recursions

• Does E = {X = a.Y, Y = Z, Z = b.X} has a solution and is this unique in T(BPArec(A))?

Process Algebra (2IF45)

Page 25: Process Algebra (2IF45) Recursion in Process Algebra

25

Recursive Specification Principle (RSP)

• Every guarded recursive specification has at most one solution.

Process Algebra (2IF45)

Page 26: Process Algebra (2IF45) Recursion in Process Algebra

26

Restricted Recursive Definition Principle (RSP-)

• Every guarded recursive specification has a solution.

Process Algebra (2IF45)

Page 27: Process Algebra (2IF45) Recursion in Process Algebra

27

Combining principles

• RDP- + RSP implies Every guarded recursive specification has a unique solution.

Example E = {X = a.X} E’ = {X’ = a.a.X’}

Process Algebra (2IF45)


Recommended