Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer -...

28
Process Algebra (2IF45) Dr. Suzana Andova

Transcript of Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer -...

Page 1: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

Process Algebra (2IF45)

Dr. Suzana Andova

Page 2: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

2 Process Algebra (2IF45)

Practical issues

• Lecturer- Suzana Andova

- Group: Software Engineering and Technology group

- Section: Model Driven Software Engineering

• My coordinates:• office HG 5.36 • email [email protected]• phone: 5089

Page 3: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

3 Process Algebra (2IF45)

Organization

• Course information

- http://www.win.tue.nl/~andova/education/2IF45/201112/201112.html

• Course material• book:

− Jos C.M. Baeten, T. Basten, M.A. Reniers “Process Algebra: Equational Theories of Communicating Processes”

• lecture notes “Probabilistic Process Algebra” available at

http://www.win.tue.nl/~andova/education/2IF45/lnpa.pdf• distributed papers • slides

Page 4: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

4 Process Algebra (2IF45)

Organization

Lectures • Quarter 3 (06-02-2012 – 02-04-2012): laplace-gebouw -1.19• Quarter 4 (23-04-2012 – 18-06-2012): HG 6.09

Course activities• group assignments

− 3 assignments = 40% of the final grade• exam = 60% of the final grade• home works

− not compulsory but useful

• active participation, discussion• few questionnaires – evaluation

Page 5: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

5 Process Algebra (2IF45)

Content of the course

• Equational theories and Operational semantics• Equational theory of communication processes• Equational theories for probabilistic processes

Learning objectives: • be able to develop extensions of a process algebraic language,

axiomatically and semantically

• be able to establish and analyze relations and discover "inconsistencies" between a given equational theory and its operational semantics

• be able to decide the most suitable construct(s) to specify particular system behavior

• be able to specify and analyze probabilistic process specifications

Page 6: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

6 Process Algebra (2IF45)

Questions for you

• Where did you do your bachelor:• TU/e (CS, ES, WIN)• TU/e (Mechanical eng., Electrical eng. )• HBO• Manipal• other university?

• Who knows what formal methods are about?

• Who is familiar with labeled transition systems?• Who is familiar with (any level) mCRL2, Chi?• Who has knowledge (any level) on model checking? • Who has knowledge on bisimulation relations?• Who is acquainted with probability theory?

Page 7: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

7 Process Algebra (2IF45)

Questions for me?

Page 8: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

Process Algebra (2IF45)

Introduction

Dr. Suzana Andova

Page 9: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

9

Foundations (Example)

• Natural numbers N = {0, 1, 2, …}

• Operations: + and •

The Peano axioms define the arithmetical properties of natural numbers

• “ingredients” to build the set of natural numbers N

− 0 constant and

− s unary operator (successor function)

Axiom

If n is a natural number then s(n) is natural number,

n N s(n) N

Process Algebra (2IF45)

Page 10: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

10

Foundations (Example - cont.)

Addition of natural numbers

• “addition” a: N x N → N is axiomatized as

− a(x,0) = x

− a(x,s(y)) = s(a(x,y))

Multiplication of natural numbers

• “multiplication” m: N x N → N is axiomatized as

− m(x,0) = 0

− m(x,s(y)) = a(m(x,y),x)

Process Algebra (2IF45)

Page 11: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

11

Foundations (Example - cont.)

Derivation of other equalities

• use the axioms

• derive more equalities using the following rules:

− reflexivity x = x

− symmetry x= y y = x

− transitivity x = y y = z x = z

Example of a theorem: s(s(0)) = m(s(s(0)), s(0))

Process Algebra (2IF45)

Page 12: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

12

Foundations (Example – recap )

The Peano axioms define the arithmetical properties of natural numbers− 0 constant and − S unary operator− “addition” a: N x N → N binary function− “multiplication” m: N x N → N binary function

− Terms: s(s(0)), a(s(0),m(s(0),s(s(s(0))))), 0,

− n N s(n) N − a(x,0) = x− a(x,s(y)) = s(a(x,y))− m(x,0) = 0− m(x,s(y)) = a(m(x,y),x)

− reflexivity x = x− symmetry x= y y = x− transitivity x = y y = z x = z

Process Algebra (2IF45)

Signature

Axioms

Relation (derivation rules)

Page 13: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

13

Foundation

• Axiom is any mathematical statement that serves as a starting point from which other statements are logically derived “absolute truth”

• Derivation rules are also part of the theory used to form new “truths” from the old once.

• Theorems are mathematical statements that can be derived from the axioms by derivation.

• Interpretation and models of an equational theory

Process Algebra (2IF45)

Page 14: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

14

Alternative Representation of numbers: unary semantics

Process Algebra (2IF45)

• If we would like to represent numbers as

s(s(0))

s(0)

0

1

1

Page 15: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

15

Alternative Representation of numbers: unary semantics

0

1

1 y y’

a(x,y) a(x, y’)

s(x) x1

1

1 x x’ , y a(x,y) x’

x, y a(x,y)

1a( s(s(0)), s(s(s(0))) ) a( s(s(0)), s(s(0)) )

1a( s(s(0)), s(0) )

1a( s(s(0)), 0 )

s(0)

101

Page 16: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

16

Alternative Representation of numbers: unary semantics

1a( s(s(0)), s(s(s(0))) ) a( s(0), s(s(s(0))) )

1a( 0, s(s(s(0))) )

1

a(0, s(s(0)) )

a(0, s(0) )

1

a(0,0)

1

1a( s(s(0)), s(s(0)) ) a( s(0), s(s(0)) )

1

1

1

1

1

1a( s(s(0)), s(0) ) a( s(0), s(0) )

1

1

a( s(s(0)), 0 ) a( s(0), 0 )1

1 1

Page 17: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

Process Algebra (2IF45)

Representation of Reactive systems

Dr. Suzana Andova

Page 18: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

18 Process Algebra (2IF45)

Reactive systems

• Reactive systems execute by reacting to stimuli from its environment

• Many of them are control crucial and/or safety critical• These systems are large and usually consist of a number of

components which interact with each other

• Modeling reactive systems

• abstract model of the system

• unambiguous description

• methods and tools for model analysis (verification of qualitative properties, performance analysis)

Page 19: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

19 Process Algebra (2IF45)

Representation as Labeled transition systems

x:= 1;y:= x+1;out(y).

in(x);y:= x+1;while (true) { out(y);}.

?x

y:=x+1

!y

?x

y:=x+1

!y

out(x);in(y).

!x

?y

Page 20: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

20 Process Algebra (2IF45)

Representation as Labeled transition systems

!tea ?coin !coffee

?return

!tea !coffee

?coin

?return

!tea !coffee

error

VM1 VM2 VM3

?coin

User

!coin ?coffee

Page 21: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

21 Process Algebra (2IF45)

Representation as Labeled transition systems

!tea ?coin !coffee

VM1

User

!coin ?coffee

composition VM1 and User

coin

coffee

?coin !coffee !tea

Page 22: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

22 Process Algebra (2IF45)

Representation as Labeled transition systems

!coin

?return

!tea !coffee

VM2’

User

?coin

!coffee

?coffee

?tea

?coffee

?return

!tea !coffee

VM2

?coin

Page 23: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

23 Process Algebra (2IF45)

Representation as Labeled transition systems

!tea !coffee

VM1’

?coin

!tea !coffee

VM1’’

?coin ?coin

Using VM1’

coin

coffee

Using VM1’’

coffee

coin coin

Page 24: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

24 Process Algebra (2IF45)

Questions

• When modeling a system, is an LTS a model to start with or is it something to be obtained as a final or side product?

• What entities do we need to have predefined, to be able to produce an

LTS?

• What is a state?

• What is a transition?

• How do we know drawing a transition from a state s to a state s’ is

right? How do we know which label to assign to it?

• How do we combine LTSs?

Page 25: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

25 Process Algebra (2IF45)

Use of LTS representations

In (model checking) tools

manipulating the state space (LTSs):UPPAAL, Prism, MRMC

manipulating the specification (language):

mCRL2, Chi, CADP, FDR, PEPA, MRMC +IMC

components’ specifications

the whole system specification

the state space

verificationmodel checking

reductionon specification

reductionon specification

reductionon LTSs

composition by axiom

SSpace generation

property specification

Yes!

No!

Page 26: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

26 Process Algebra (2IF45)

components’ specifications

Equational theory in place

In (model checking) tools

manipulating the state space (LTSs):UPPAAL, Prism, MRMC

manipulating the specification (language):

mCRL2, Chi, CADP, FDR, PEPA, MRMC updated IMC

the whole system specification

the state space

verificationmodel checking

reductionon specification

reductionon specification

reductionon LTSs

composition by axiom

SS generation by the SOS rules

property specification

Yes!

No!

… equiational theory (a

xioms)

Semantic rules

Page 27: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

27 Process Algebra (2IF45)

components’ specifications

Equational theory in place

In (model checking) tools

manipulating the state space (LTSs):UPPAAL, Prism, MRMC

manipulating the specification (language):

mCRL2, Chi, CADP, FDR, PEPA, MRMC updated IMC

the whole system specification

the state space

verificationmodel checking

reductionon specification

reductionon specification

reductionon LTSs

composition by axiom

SS generation by the SOS rules

property specification

Yes!

No!

… equiational theory (a

xioms)

Operational semantics

(SOS)

reduction to

basic forms

reduction by

equations

reduction by

equivalence

relations

(bisimulation)

consistent

Page 28: Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer - Suzana Andova - Group: Software Engineering and Technology.

28 Process Algebra (2IF45)

components’ specifications

Equational theory in place

In (model checking) tools

manipulating the state space (LTSs):UPPAAL, Prism, MRMC

manipulating the specification (language):

mCRL2, Chi, CADP, FDR, PEPA, MRMC updated IMC

the whole system specification

the state space

verificationmodel checking

reductionon specification

reductionon specification

reductionon LTSs

composition by axiom

SS generation by the SOS rules

property specification

Yes!

No!

… equiational theory (a

xioms)

Operational semantics

(SOS)

reduction to

basic forms

reduction by

equations

reduction by

equivalence

relations

(bisimulation)

consistent

In this course we will learn HOW to build a consistent

Process Algebra = specification language

+ axioms

+ SOS rules

+ reduction equivalence relations

so that the initial specification and the model checked LTS, they both

describe the same system!