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

Post on 17-Dec-2015

223 views 4 download

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

Process Algebra (2IF45)

Dr. Suzana Andova

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 s.andova@tue.nl• phone: 5089

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

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

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

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?

7 Process Algebra (2IF45)

Questions for me?

Process Algebra (2IF45)

Introduction

Dr. Suzana Andova

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)

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)

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)

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)

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)

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

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

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

Process Algebra (2IF45)

Representation of Reactive systems

Dr. Suzana Andova

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)

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

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

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

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

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

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?

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!

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

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

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!