Upload
trevor
View
39
Download
0
Embed Size (px)
DESCRIPTION
Process Algebra (2IF45) Basic notions of Equational theory. Dr. Suzana Andova. Deduction system for “Counting down”. Language (signature) 0 “zero ” s (_) “ successor function” a (_, _) “ addition” m (_, _) “ multiplication”. Deduction rules. 0 . . . . . - PowerPoint PPT Presentation
Citation preview
Process Algebra (2IF45)
Basic notions of Equational theory
Dr. Suzana Andova
2
Deduction system for “Counting down”
Process Algebra (2IF45)
Language (signature)
0 “zero”
s(_) “successor function”
a(_, _) “addition”
m(_, _) “multiplication”
s(s(0))
s(0)
0
1
1
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)
Deduction rules
Terms s(s(0))
a(s(0),s(0))
a(s(0),0)
0
1
1
Terms a(s(0),s(0))
3
Deduction system for “Counting down”
Process Algebra (2IF45)
Language (signature)
0 “zero”
s(_) “successor function”
a(_, _) “addition”
m(_, _) “multiplication”
s(s(0))
s(0)
0
1
1
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)
Deduction rules
Terms s(s(0))
a(s(0),s(0))
a(s(0),0)
0
1
1
Terms a(s(0),s(0))
specification
dynamic behaviour
equivalent behaviours
equal specification
4
Deduction system vs. Equational theory
Process Algebra (2IF45)
Language (signature) 0 “zero”
s(_) “successor function”
a(_, _) “addition”
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)
Deduction rules
Terms e.g. a(s(0),s(0)), 0,. a(x,y)
s(s(0))
s(0)
0
1
1
a(s(0),s(0))
a(s(0),0)
0
1
1
Equivalence relation
Equalities on terms
…├ a(s(0),s(0)) = s(s(0))
5 Process Algebra (2IF45)
componts’ specifications
Equational theory
the whole system specification
the state space
reductionon specification
reductionon specification
reductionon LTSs
composition by axiom
SOS rules
• simpler• smaller• in a particular form (basic)• …
6
Example: Towards Equational theory for Arithmetic of Natural numbers P(eano) A(rith.)
Process Algebra (2IF45)
a(0,s(0))
0
1
s(0)
0
1
So we need a set of axioms from which we can derive:
PA ├ a(0,s(0)) = …..= s(0) and also PA ├ a(0,0) = …..= 0 and also …..
a(0,0) 0
1. Maybe axioms
(Ax11) a(0,s(0)) = s(0)(Ax12) a(0,0) = 0
2. Maybe axioms
(Ax21) a(0,s(x)) = s(x)(Ax22) a(0,0) = 0
3. Maybe axioms
(Ax31) a(0,y) = y
7
Example: Towards Equational theory for Arithmetic of Natural numbers PA (cont.)
Process Algebra (2IF45)
a(0,s(0))
0
1
s(a(0,0))
0
1
So we need a set of axioms from which we can derive:
PA ├ a(0,s(0)) = …..= s(a(0,0)) and also PA ├ a(s(0),s(0)) = …..= s(s(0)) …..
1’. Maybe axioms
(Ax11) a(s(0),s(0)) = s(s(0))(Ax12) a(0,s(0)) = s(0)
2’. Maybe axioms
(Ax21) a(s(x),s(y)) = s(s(a(x,y)))
3’. Maybe axioms
(Ax31) a(x,s(y)) = s(a(x,y))(Ax32) a(s(x),y) = s(a(x,y))
8
Example: Towards Equational theory for Arithmetic of Natural numbers PA (cont.)
Process Algebra (2IF45)
(Ax11) a(s(0),s(0)) = s(s(0))(Ax12) a(0,s(0)) = s(0)
(Ax21) a(s(x),s(y)) = s(s(a(x,y)))
(Ax31) a(x,s(y)) = s(a(x,y))(Ax32) a(s(x),y) = s(a(x,y))
1. Maybe axioms
(Ax11) a(0,s(0)) = s(0)(Ax12) a(0,0) = 0
2. Maybe axioms
(Ax21) a(0,s(x)) = s(x)(Ax22) a(0,0) = 0
3. Maybe axioms
(Ax31) a(0,y) = ynot generalinfinite
9
Example: Towards Equational theory for Arithmetic of Natural numbers PA (cont.)
Process Algebra (2IF45)
(Ax11) a(s(0),s(0)) = s(s(0))(Ax12) a(0,s(0)) = s(0)
(Ax21) a(s(x),s(y)) = s(s(a(x,y)))
(Ax31) a(x,s(y)) = s(a(x,y))(Ax32) a(s(x),y) = s(a(x,y))
1. Maybe axioms
(Ax11) a(0,s(0)) = s(0)(Ax12) a(0,0) = 0
2. Maybe axioms
(Ax21) a(0,s(x)) = s(x)(Ax22) a(0,0) = 0
3. Maybe axioms
(Ax31) a(0,y) = ynot generalinfinite
inst
ance
of
10
Example: Towards Equational theory for Arithmetic of Natural numbers PA (cont.)
Process Algebra (2IF45)
(Ax11) a(s(0),s(0)) = s(s(0))(Ax12) a(0,s(0)) = s(0)
(Ax21) a(s(x),s(y)) = s(s(a(x,y)))
(Ax31) a(x,s(y)) = s(a(x,y))(Ax32) a(s(x),y) = s(a(x,y))
1. Maybe axioms
(Ax11) a(0,s(0)) = s(0)(Ax12) a(0,0) = 0
3. Maybe axioms
(Ax31) a(0,y) = ynot generalinfinite
3. Maybe axioms
(Ax31) a(0,y) = y
? but can we derive here
a(s(x),0) = s(x) ?
11
Example: Equational theory for Arithmetic of Natural numbers PA (cont.)
Process Algebra (2IF45)
(Ax31) a(x,s(y)) = s(a(x,y))(Ax32) a(s(x),y) = s(a(x,y))
3. Maybe axioms
(Ax31) a(0,y) = y
Axioms in PA
(PA1) a(x,0) = x(PA2) a(x,s(y)) = s(a(x,y))
12
Equational Theory
Process Algebra (2IF45)
Question: • What did we have to take into account during our quest for the right set of axioms?
Answer: • Consistency between
bisimulation and
derivation in PA using the axioms
13
Consistency
Process Algebra (2IF45)
Questions: • How do you understand “consistency” between the deduction system (semantics) and the equational theory?
Answer: • Consistency is two-directional
1. Everything that I am able to derive equal using the axioms must be bisimilar, namely
if PA ├ t = r then t r
2. Everything that I can show bisimilar, I have to be able to derive equial using the axioms, namely
if t r then PA ├ t = r
soundness
completeness
14
Consistency
Process Algebra (2IF45)
Questions: • How do you understand “consistency” between the deduction system (semantics) and the equational theory?
Answer: • Consistency is two-directional
1. Everything that I am able to derive equal using the axiomsmust be bisimilar, namely
if PA ├ t = r then t r
2. Every closed terms that I can show bisimilar, I have to be able to derive equial using the axioms, namely
if t r then PA ├ t = r, for t and r closed terms
soundness
ground completeness
15
Prerequisites for soundness of axioms
Process Algebra (2IF45)
Questions:• Are we on a safe ground now?
Soundness: Everything that I am able to derive equal using the axioms must be bisimilar, namely
if PA ├ t = r then t r
16
Derivation in equational theory
Process Algebra (2IF45)
Questions:• What is allowed (can be used) in derivation?
PA ├ t = r
1.Axioms (as ‘basic’ equalities)
2.Properties of = such as• reflexivity PA ├ t = t • symmetry if PA ├ t = r then PA ├ r = t • transitivity if PA ├ t = r and PA ├ r = u then PA ├ t = u
3.Substitution (substituting variables by terms)e.g. from PA ├ a(x,y) = a(y,x) follows PA ├ a(s(0),0) = a(0, s(0)) where s(0)/x and 0/y
4.Context rule
17
Derivation in equational theory
Process Algebra (2IF45)
Questions:• What is allowed (can be used) in derivation?
PA ├ t = r
4.Context rulee.g. if PA ├ t1 = r1 and PA ├ t2 = r2
then PA├ s(t1) = s(r1) and also PA├ a(t1 ,t2) = a(r1, r2) …
‘Mapping’ the context rule back to semantics and
e.g. if PA ├ t1 r1 and PA ├ t2 r2
then PA├ s(t1) s(r1)
and also PA├ a(t1 ,t2) a(r1, r2) …
18
Prerequisites for soundness
Process Algebra (2IF45)
‘Mapping’ the context rule back to semantics and
e.g. if t1 r1 and t2 r2
then s(t1) s(r1)
and also a(t1 ,t2) a(r1, r2) …
a(0,s(0))
0
1
s(a(0,0))
0
1
Sincethen
a(0,s(0))
0
1
s(a(0,0))
0
1
s(a(0,s(0)))
1
s(s(a(0,0)))
1
congruence
19
Prerequisites for soundnessCongruence relation
Process Algebra (2IF45)
Congruence relation1. it is equivalence relation
• reflexive• symmetric• transitive
2. it is preserved by any context C[ _ ]
if t1 r1 then C[t1] C[r1]
Examples: Bisimilarity is congruence on the set of all terms
20 Process Algebra (2IF45)
Prerequisites for soundnessCongruence relation
!tea !coffee
?coin
!tea !coffee
?coin ?coin
complete trace equivalent LTSs {?coin !coffee, ?coin !tea}
put in the context “communicate with the User”
!coin ?coffee
coin
coffee coffee
coin coin
NOT complete trace equivalent LTSs {coin coffee} vs. {coin coffee, coin}
21
Towards ground completeness
Process Algebra (2IF45)
Questions:• Is the set of axioms in PA (PA1) a(x,0) = x
(PA2) a(x,s(y)) = s(a(x,y))ground complete wrt the derivation rules and ?
Every closed terms that I can show bisimilar, I have to be able to derive equal using the axioms, namely
if t r then PA ├ t = r, for t and r closed terms
• What about PA ├ a(t,r) = a(r,t)? Can we derive this equality from the two axioms, for closed terms t and r?
22
Towards ground completeness
Process Algebra (2IF45)
Working with closed terms: 1. Basic terms
• defined in a structural way, such as: I. 0 is a basic term in PAII. if t is a basic term in PA then s(t) is also a basic term in
PA• Thus, in PA basic terms are 0, s(0), s(s(0)), ….
2. Elimination of ‘other’ operators from the signature• In PA every closed term can be rewritten to a basic term, e.g.
PA ├ a(s(0),a(s(0),0)) = s(s(0))
• the elimination proof goes by structural induction on the structure on closed terms
3.Any property on closed terms can be proven by structural induction on basic terms only instead on all closed terms
23
Towards ground completeness
Process Algebra (2IF45)
Property1: For any closed term t, PA ├ a(0, t) = t.
Proof: By structural induction on basic terms (knowing the elimination property)
Basic step t 0. Directly from PA1
Inductive step t s(t’) for some basic term t’. DerivePA ├ a(0, t) = a(0, s(t’)) = s(a(0,t’)) = s(t’) = t
PA2 by induction
24
Towards ground completeness
Process Algebra (2IF45)
Property2: For any closed term t and r, PA ├ a(s(t), r) = a(t, s(r)).
Proof: By structural induction on basic terms (knowing the elimination property)
Basic step r 0. PA ├ a(s(t), r) = a(s(t), 0) = s(t) by axiom PA1PA ├ a(t, s(r)) = a(t, s(0)) = s(a(t, 0)) = s(t) by PA2 and PA1
Inductive step r s(r’) for some basic term r’. DerivePA ├ a(s(t), r) = a(s(t), s(r’)) = s( a(s(t), r’) ) = s( a(t, s(r’)) )
= a( t, s(s(r’)) ) = a(t, s(r))
PA2 by induction
PA2
25
Towards ground completeness
Process Algebra (2IF45)
Property3: For any closed term t and r, PA ├ a(t, r) = a(r, t).
Proof: Home Work
Process Algebra (2IF45)
Basic Process Algebra
Dr. Suzana Andova