Process Algebra (2IF45) Dr. Suzana Andova. 1 Process Algebra (2IF45) Practical issues Lecturer -...
-
Upload
jessie-brown -
Category
Documents
-
view
223 -
download
4
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 [email protected]• 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!