reactive systems - theory of fixed points and …hs/aktivitaeten/2011_vino... · theory of fixed...
TRANSCRIPT
Reactive SystemsTheory of Fixed Points and Bisimulation Equivalence
Liam O’Reilly
VINO 2011 — 15.07.2011
Swansea University, UK
Overview
1. Background: Partially Ordered Sets & Complete Lattices
2. Theory: Tarski’s Fixed Point Theorem
3. Application: Bisimulation as a Fixed Point
Posets
DefinitionA partially ordered set (poset) is a pair (D,v) where D is a setand v is a binary relation over D (i.e., v ⊆ D × D), such that
I v is reflexive i.e., d v d ,
I v is antisymmetric i.e., d v e and e v d implies d = e, and
I v is transitive i.e., d v e and e v d ′ implies d v d ′.
Moreover (D,v) is a totally ordered set iff for all d , e ∈ D, eitherd v e or e v d holds.
Posets Examples
Examples
The following are posets
I (N,≤),
I (R,≤), and
I (A∗,≤) (where ≤ is prefix ordering).
QuestionIs the poset (2S ,⊆) totally ordered?
AnswerNo: {1, 2} * {3, 4} and {3, 4} * {1, 2}.
Posets Examples
Examples
The following are posets
I (N,≤),
I (R,≤), and
I (A∗,≤) (where ≤ is prefix ordering).
QuestionIs the poset (2S ,⊆) totally ordered?
AnswerNo: {1, 2} * {3, 4} and {3, 4} * {1, 2}.
Least Upper Bounds & Greatest Lower Bounds
DefinitionLet (D,v) be a poset and X ⊆ D.
I d ∈ D is an upper bound for X iff x v d for all x ∈ X .I d ∈ D is the least upper bound (lub) of X (written tX ) iff
I d is an upper bound for X , andI d v d ′ for every d ′ ∈ D that is an upper bound for X .
I d ∈ D is a lower bound for X iff d v x for all x ∈ X .I d ∈ D is the greatest lower bound (glb) of X (written uX ) iff
I d is a lower bound for X , andI d ′ v d for every d ′ ∈ D that is a lower bound for X .
Example
In (2S ,⊆), every subset X of 2S has a lub and glb given by⋃
Xand
⋂X , respectively.
Complete Lattices
DefinitionA poset (D,v) is a complete lattice iff tX and uX exist for everysubset X of D.
A complete lattice (D,v) has
I a least element ⊥ := uD (called bottom), and
I a greatest element > := tD (called top).
Examples
I In (2S ,v), ⊥ = ∅ and > = S .
I (N,≤) is not a complete lattice: there is no lub for infinitesubsets of N.
I (N ∪ {∞},≤) is a complete lattice.
A Nice Picture of a Complete Lattice
Let S = {1, 2, 3}, then (2S ,⊆) can be drawn as:
{1, 2, 3}
{1, 3}{1, 2} {2, 3}
{2}{1} {3}
∅
Monotonic Functions & Fixed Points
DefinitionLet (D,v) be a poset. A function f : D → D is monotonic iffd v d ′ implies f (d) v f (d ′) for all d , d ′ ∈ D.
An element d ∈ D is a fixed point iff d = f (d).
Example
The function f : 2N → 2N, defined for each X ⊆ N, by
f (X ) := X ∪ {1, 2}
is monotonic. The set {1, 2} is a fixed point of f .
QuestionCan you give another fixed point for f ?
AnswerThe set of all fixed points of f is {X ⊆ N | {1, 2} ⊆ X}.
Monotonic Functions & Fixed Points
DefinitionLet (D,v) be a poset. A function f : D → D is monotonic iffd v d ′ implies f (d) v f (d ′) for all d , d ′ ∈ D.
An element d ∈ D is a fixed point iff d = f (d).
Example
The function f : 2N → 2N, defined for each X ⊆ N, by
f (X ) := X ∪ {1, 2}
is monotonic. The set {1, 2} is a fixed point of f .
QuestionCan you give another fixed point for f ?
AnswerThe set of all fixed points of f is {X ⊆ N | {1, 2} ⊆ X}.
Tarski’s Fixed Point Theorem
TheoremLet (D,v) be a complete lattice and f : D → D be a monotonicfunction. Then f has a largest fixed point zmax and a least fixedpoint zmin given by
zmax = t{x ∈ D | x v f (x)},zmin = u{x ∈ D | f (x) v x}.
We prove zmax is the largest fixed point of f . To this end weprove:
1. zmax is a fixed point of f , i.e., zmax = f (zmax), and
2. For every d ∈ D that is a fixed point of f , it holds thatd v zmax .
Tarski’s Fixed Point Theorem
TheoremLet (D,v) be a complete lattice and f : D → D be a monotonicfunction. Then f has a largest fixed point zmax and a least fixedpoint zmin given by
zmax = t{x ∈ D | x v f (x)},zmin = u{x ∈ D | f (x) v x}.
We prove zmax is the largest fixed point of f . To this end weprove:
1. zmax is a fixed point of f , i.e., zmax = f (zmax), and
2. For every d ∈ D that is a fixed point of f , it holds thatd v zmax .
Proof of Tarski’s Fixed Point Theorem
Let A = {x ∈ D | x v f (x)}.
Proof that zmax is a fixed point of f , i.e., zmax = f (zmax)
To this end we show 1) zmax v f (zmax) and 2) f (zmax) v zmax .
1. We have that zmax = tA.Thus for every x ∈ A we have:
x v zmax as zmax is an upper bound of A.Thus f (x) v f (zmax) by monotonicity of f .Thus x v f (x) v f (zmax) by definition of A.
Thus f (zmax) is an upper bound for A.As zmax is the lub of A, we know zmax v f (zmax).
2. By 1) and monotonicity of f we have f (zmax) v f (f (zmax)).Thus f (zmax) ∈ A.Thus f (zmax) v zmax as zmax is an upper bound for A.
Thus zmax is a fixed point of f .
Proof of Tarski’s Fixed Point Theorem
Let A = {x ∈ D | x v f (x)}.
Proof that zmax is a fixed point of f , i.e., zmax = f (zmax)
To this end we show 1) zmax v f (zmax) and 2) f (zmax) v zmax .
1. We have that zmax = tA.
Thus for every x ∈ A we have:x v zmax as zmax is an upper bound of A.Thus f (x) v f (zmax) by monotonicity of f .Thus x v f (x) v f (zmax) by definition of A.
Thus f (zmax) is an upper bound for A.As zmax is the lub of A, we know zmax v f (zmax).
2. By 1) and monotonicity of f we have f (zmax) v f (f (zmax)).Thus f (zmax) ∈ A.Thus f (zmax) v zmax as zmax is an upper bound for A.
Thus zmax is a fixed point of f .
Proof of Tarski’s Fixed Point Theorem
Let A = {x ∈ D | x v f (x)}.
Proof that zmax is a fixed point of f , i.e., zmax = f (zmax)
To this end we show 1) zmax v f (zmax) and 2) f (zmax) v zmax .
1. We have that zmax = tA.Thus for every x ∈ A we have:
x v zmax as zmax is an upper bound of A.
Thus f (x) v f (zmax) by monotonicity of f .Thus x v f (x) v f (zmax) by definition of A.
Thus f (zmax) is an upper bound for A.As zmax is the lub of A, we know zmax v f (zmax).
2. By 1) and monotonicity of f we have f (zmax) v f (f (zmax)).Thus f (zmax) ∈ A.Thus f (zmax) v zmax as zmax is an upper bound for A.
Thus zmax is a fixed point of f .
Proof of Tarski’s Fixed Point Theorem
Let A = {x ∈ D | x v f (x)}.
Proof that zmax is a fixed point of f , i.e., zmax = f (zmax)
To this end we show 1) zmax v f (zmax) and 2) f (zmax) v zmax .
1. We have that zmax = tA.Thus for every x ∈ A we have:
x v zmax as zmax is an upper bound of A.Thus f (x) v f (zmax) by monotonicity of f .
Thus x v f (x) v f (zmax) by definition of A.Thus f (zmax) is an upper bound for A.As zmax is the lub of A, we know zmax v f (zmax).
2. By 1) and monotonicity of f we have f (zmax) v f (f (zmax)).Thus f (zmax) ∈ A.Thus f (zmax) v zmax as zmax is an upper bound for A.
Thus zmax is a fixed point of f .
Proof of Tarski’s Fixed Point Theorem
Let A = {x ∈ D | x v f (x)}.
Proof that zmax is a fixed point of f , i.e., zmax = f (zmax)
To this end we show 1) zmax v f (zmax) and 2) f (zmax) v zmax .
1. We have that zmax = tA.Thus for every x ∈ A we have:
x v zmax as zmax is an upper bound of A.Thus f (x) v f (zmax) by monotonicity of f .Thus x v f (x) v f (zmax) by definition of A.
Thus f (zmax) is an upper bound for A.As zmax is the lub of A, we know zmax v f (zmax).
2. By 1) and monotonicity of f we have f (zmax) v f (f (zmax)).Thus f (zmax) ∈ A.Thus f (zmax) v zmax as zmax is an upper bound for A.
Thus zmax is a fixed point of f .
Proof of Tarski’s Fixed Point Theorem
Let A = {x ∈ D | x v f (x)}.
Proof that zmax is a fixed point of f , i.e., zmax = f (zmax)
To this end we show 1) zmax v f (zmax) and 2) f (zmax) v zmax .
1. We have that zmax = tA.Thus for every x ∈ A we have:
x v zmax as zmax is an upper bound of A.Thus f (x) v f (zmax) by monotonicity of f .Thus x v f (x) v f (zmax) by definition of A.
Thus f (zmax) is an upper bound for A.
As zmax is the lub of A, we know zmax v f (zmax).
2. By 1) and monotonicity of f we have f (zmax) v f (f (zmax)).Thus f (zmax) ∈ A.Thus f (zmax) v zmax as zmax is an upper bound for A.
Thus zmax is a fixed point of f .
Proof of Tarski’s Fixed Point Theorem
Let A = {x ∈ D | x v f (x)}.
Proof that zmax is a fixed point of f , i.e., zmax = f (zmax)
To this end we show 1) zmax v f (zmax) and 2) f (zmax) v zmax .
1. We have that zmax = tA.Thus for every x ∈ A we have:
x v zmax as zmax is an upper bound of A.Thus f (x) v f (zmax) by monotonicity of f .Thus x v f (x) v f (zmax) by definition of A.
Thus f (zmax) is an upper bound for A.As zmax is the lub of A, we know zmax v f (zmax).
2. By 1) and monotonicity of f we have f (zmax) v f (f (zmax)).Thus f (zmax) ∈ A.Thus f (zmax) v zmax as zmax is an upper bound for A.
Thus zmax is a fixed point of f .
Proof of Tarski’s Fixed Point Theorem
Let A = {x ∈ D | x v f (x)}.
Proof that zmax is a fixed point of f , i.e., zmax = f (zmax)
To this end we show 1) zmax v f (zmax) and 2) f (zmax) v zmax .
1. We have that zmax = tA.Thus for every x ∈ A we have:
x v zmax as zmax is an upper bound of A.Thus f (x) v f (zmax) by monotonicity of f .Thus x v f (x) v f (zmax) by definition of A.
Thus f (zmax) is an upper bound for A.As zmax is the lub of A, we know zmax v f (zmax).
2. By 1) and monotonicity of f we have f (zmax) v f (f (zmax)).
Thus f (zmax) ∈ A.Thus f (zmax) v zmax as zmax is an upper bound for A.
Thus zmax is a fixed point of f .
Proof of Tarski’s Fixed Point Theorem
Let A = {x ∈ D | x v f (x)}.
Proof that zmax is a fixed point of f , i.e., zmax = f (zmax)
To this end we show 1) zmax v f (zmax) and 2) f (zmax) v zmax .
1. We have that zmax = tA.Thus for every x ∈ A we have:
x v zmax as zmax is an upper bound of A.Thus f (x) v f (zmax) by monotonicity of f .Thus x v f (x) v f (zmax) by definition of A.
Thus f (zmax) is an upper bound for A.As zmax is the lub of A, we know zmax v f (zmax).
2. By 1) and monotonicity of f we have f (zmax) v f (f (zmax)).Thus f (zmax) ∈ A.
Thus f (zmax) v zmax as zmax is an upper bound for A.
Thus zmax is a fixed point of f .
Proof of Tarski’s Fixed Point Theorem
Let A = {x ∈ D | x v f (x)}.
Proof that zmax is a fixed point of f , i.e., zmax = f (zmax)
To this end we show 1) zmax v f (zmax) and 2) f (zmax) v zmax .
1. We have that zmax = tA.Thus for every x ∈ A we have:
x v zmax as zmax is an upper bound of A.Thus f (x) v f (zmax) by monotonicity of f .Thus x v f (x) v f (zmax) by definition of A.
Thus f (zmax) is an upper bound for A.As zmax is the lub of A, we know zmax v f (zmax).
2. By 1) and monotonicity of f we have f (zmax) v f (f (zmax)).Thus f (zmax) ∈ A.Thus f (zmax) v zmax as zmax is an upper bound for A.
Thus zmax is a fixed point of f .
Proof of Tarski’s Fixed Point Theorem
Let A = {x ∈ D | x v f (x)}.
Proof that zmax is a fixed point of f , i.e., zmax = f (zmax)
To this end we show 1) zmax v f (zmax) and 2) f (zmax) v zmax .
1. We have that zmax = tA.Thus for every x ∈ A we have:
x v zmax as zmax is an upper bound of A.Thus f (x) v f (zmax) by monotonicity of f .Thus x v f (x) v f (zmax) by definition of A.
Thus f (zmax) is an upper bound for A.As zmax is the lub of A, we know zmax v f (zmax).
2. By 1) and monotonicity of f we have f (zmax) v f (f (zmax)).Thus f (zmax) ∈ A.Thus f (zmax) v zmax as zmax is an upper bound for A.
Thus zmax is a fixed point of f .
Proof of Tarski’s Fixed Point Theorem (Cont)
Reminder: A = {x ∈ D | x v f (x)}.
Proof that for every fixed point d ∈ D, it holds d v zmax
Let d be any fixed point of f .Then we have d v f (d).Therefore d ∈ A.Thus d v zmax as zmax is an upper bound for A.Thus zmax is the largest fixed point of f .
The proof that zmin is a least fixed point of f follows the samepattern.
Proof of Tarski’s Fixed Point Theorem (Cont)
Reminder: A = {x ∈ D | x v f (x)}.
Proof that for every fixed point d ∈ D, it holds d v zmax
Let d be any fixed point of f .
Then we have d v f (d).Therefore d ∈ A.Thus d v zmax as zmax is an upper bound for A.Thus zmax is the largest fixed point of f .
The proof that zmin is a least fixed point of f follows the samepattern.
Proof of Tarski’s Fixed Point Theorem (Cont)
Reminder: A = {x ∈ D | x v f (x)}.
Proof that for every fixed point d ∈ D, it holds d v zmax
Let d be any fixed point of f .Then we have d v f (d).
Therefore d ∈ A.Thus d v zmax as zmax is an upper bound for A.Thus zmax is the largest fixed point of f .
The proof that zmin is a least fixed point of f follows the samepattern.
Proof of Tarski’s Fixed Point Theorem (Cont)
Reminder: A = {x ∈ D | x v f (x)}.
Proof that for every fixed point d ∈ D, it holds d v zmax
Let d be any fixed point of f .Then we have d v f (d).Therefore d ∈ A.
Thus d v zmax as zmax is an upper bound for A.Thus zmax is the largest fixed point of f .
The proof that zmin is a least fixed point of f follows the samepattern.
Proof of Tarski’s Fixed Point Theorem (Cont)
Reminder: A = {x ∈ D | x v f (x)}.
Proof that for every fixed point d ∈ D, it holds d v zmax
Let d be any fixed point of f .Then we have d v f (d).Therefore d ∈ A.Thus d v zmax as zmax is an upper bound for A.
Thus zmax is the largest fixed point of f .
The proof that zmin is a least fixed point of f follows the samepattern.
Proof of Tarski’s Fixed Point Theorem (Cont)
Reminder: A = {x ∈ D | x v f (x)}.
Proof that for every fixed point d ∈ D, it holds d v zmax
Let d be any fixed point of f .Then we have d v f (d).Therefore d ∈ A.Thus d v zmax as zmax is an upper bound for A.Thus zmax is the largest fixed point of f .
The proof that zmin is a least fixed point of f follows the samepattern.
Proof of Tarski’s Fixed Point Theorem (Cont)
Reminder: A = {x ∈ D | x v f (x)}.
Proof that for every fixed point d ∈ D, it holds d v zmax
Let d be any fixed point of f .Then we have d v f (d).Therefore d ∈ A.Thus d v zmax as zmax is an upper bound for A.Thus zmax is the largest fixed point of f .
The proof that zmin is a least fixed point of f follows the samepattern.
Tarski’s Fixed Point Theorem Applied to (2S ,⊆)
Let S be a set and f : S → S be a monotonic function. ByTarski’s theorem we get
I zmax =⋃{X ⊆ S | X ⊆ f (X )}, and
I zmin =⋂{X ⊆ S | f (X ) ⊆ X}.
Example
The function f : 2N → 2N, defined for each X ⊆ N, by
f (X ) := X ∪ {1, 2}
is monotonic. By Tarski’s theorem we get
I zmax =⋃{X ⊆ N | X ⊆ X ∪ {1, 2}} = N, and
I zmin =⋂{X ⊆ N | X ∪ {1, 2} ⊆ X} = {1, 2}.
Definition: f n
DefinitionLet D be a set, d ∈ D, and f : D → D. For each natural numbern, we define f n(d) as
f 0(d) = df n+1(d) = f (f n(d))
Fixed Point Computation
TheoremLet (D,v) be a finite complete lattice and let f : D → D be amonotonic function.
I The least fixed point of f is obtained as zmin = f m(⊥) forsome natural number m.
I The greatest fixed point of f is obtained as zmax = f M(>) forsome natural number M.
Fixed Point Computation Proof
Proof.As f is monotonic we have the following non-decreasing sequenceof elements
⊥ v f (⊥) v f 2(⊥) v . . . f i (⊥) v f i+1(⊥) v . . .
As D is finite the sequence must eventually be constant, i.e., thereexists m such that f k(⊥) = f m(⊥) for all k ≥ m. In particular
f (f m(⊥)) = f m+1(⊥) = f m(⊥)
i.e., f m(⊥) is a fixed point.
Let d be a fixed point for f . Therefore we have ⊥ v d and thusf (⊥) v f (d) = d . Repeat m− 1 times to obtain f m(d) v d . Thusf m(d) is the least (greatest) fixed point for f .
Fixed Point Computation Example
To compute the least (greatest) fixed point of f for a finitecomplete lattice, start with ⊥ (>) and keep applying f until youreach a fixed point. This will be the least fixed point.
Example
Consider the function f : 2{0,1} → 2{0,1} defined as
f (X ) = X ∪ {0}.
f is monotonic and (2{0,1},⊆) is a complete lattice with ⊥ = ∅and > = {1, 2}.
I Least fixed point:f (∅) = ∅ ∪ {0} = {0}f ({0}) = {0} ∪ {0} = {0}
I Greatest fixed point:f ({0, 1}) = {0, 1} ∪ {0} = {0, 1}
Strong Bisimulation Recap
Let (Proc,Act, { α→| α ∈ Act}) be an LTS (throughout this talk)
R ⊆ Proc × Proc is a strong bisimulation iffwhenever (p, q) ∈ R then
I pα→ p′ implies q
α→ q′ for some q′ such that (p′, q′) ∈ R, and
I qα→ q′ implies p
α→ p′ for some p′ such that (p′, q′) ∈ R.
Strong bisimulation equivalence ∼ is defined as
∼:=⋃{R ∈ 2Proc×Proc | R is a strong bisimulation}.
Building a New Strong Bisimulation as a Fixed Point
First note that (2Proc×Proc ,⊆) is a complete lattice with⋃
and⋂
as lub and glb.
Let R be a relation over Proc (i.e., R ∈ 2Proc×Proc).Define F(R) by the following:(p, q) ∈ F(R) for all p, q ∈ Proc iff
I pα→ p′ implies q
α→ q′ for some q′ such that (p′, q′) ∈ R, and
I qα→ q′ implies p
α→ p′ for some p′ such that (p′, q′) ∈ R.
Idea: F(R) contains all the pairs of processes (states) from which,in one round of the bisimulation game, the defender can make surethat the players reach a current (state) already in R.
Tricky Part
Convince yourself that
R is a bisimulation iff R ⊆ F(R).
When you accept this we then have:
∼=⋃{R ∈ 2Proc×Proc | R ⊆ F(R)}.
Compare to Tarski’s zmax :
zmax = t{x ∈ D | x v f (x)}.
Thus ∼ is the largest fixed point of F .
Even better: if Proc is finite then ∼= FM(Proc × Proc) for somenatural number M ≥ 0.
Tricky Part
Convince yourself that
R is a bisimulation iff R ⊆ F(R).
When you accept this we then have:
∼=⋃{R ∈ 2Proc×Proc | R ⊆ F(R)}.
Compare to Tarski’s zmax :
zmax = t{x ∈ D | x v f (x)}.
Thus ∼ is the largest fixed point of F .
Even better: if Proc is finite then ∼= FM(Proc × Proc) for somenatural number M ≥ 0.
Tricky Part
Convince yourself that
R is a bisimulation iff R ⊆ F(R).
When you accept this we then have:
∼=⋃{R ∈ 2Proc×Proc | R ⊆ F(R)}.
Compare to Tarski’s zmax :
zmax = t{x ∈ D | x v f (x)}.
Thus ∼ is the largest fixed point of F .
Even better: if Proc is finite then ∼= FM(Proc × Proc) for somenatural number M ≥ 0.
An Algorithm for Bisimulation
To compute ∼ for finite LTS evaluate the non-increasing sequence
> = f 0(Proc ×Proc) ⊇ f 1(Proc ×Proc) ⊇ f 2(Proc ×Proc) ⊇ . . .
until the sequence stabilises.
A Final Example
Q1 := b.Q2 + a.Q3
Q2 := c .Q4
Q3 := c .Q4
Q4 := b.Q2 + a.Q3 + a.Q1
Q1 Q2
Q3 Q4
b
a c
c
b
a
a
Let’s compute the largest strong bisimulation of this LTS.
F0(Proc × Proc) = Proc × ProcF1(Proc × Proc) = {(Q1,Q4), (Q4,Q1), (Q2,Q3), (Q3,Q2)} ∪ IF2(Proc × Proc) = {(Q2,Q3), (Q3,Q2)} ∪ IF3(Proc × Proc) = {(Q2,Q3), (Q3,Q2)} ∪ I = F2(Proc × Proc)
A Final Example
Q1 := b.Q2 + a.Q3
Q2 := c .Q4
Q3 := c .Q4
Q4 := b.Q2 + a.Q3 + a.Q1
Q1 Q2
Q3 Q4
b
a c
c
b
a
a
Let’s compute the largest strong bisimulation of this LTS.F0(Proc × Proc) = Proc × Proc
F1(Proc × Proc) = {(Q1,Q4), (Q4,Q1), (Q2,Q3), (Q3,Q2)} ∪ IF2(Proc × Proc) = {(Q2,Q3), (Q3,Q2)} ∪ IF3(Proc × Proc) = {(Q2,Q3), (Q3,Q2)} ∪ I = F2(Proc × Proc)
A Final Example
Q1 := b.Q2 + a.Q3
Q2 := c .Q4
Q3 := c .Q4
Q4 := b.Q2 + a.Q3 + a.Q1
Q1 Q2
Q3 Q4
b
a c
c
b
a
a
Let’s compute the largest strong bisimulation of this LTS.F0(Proc × Proc) = Proc × ProcF1(Proc × Proc) = {(Q1,Q4), (Q4,Q1), (Q2,Q3), (Q3,Q2)} ∪ I
F2(Proc × Proc) = {(Q2,Q3), (Q3,Q2)} ∪ IF3(Proc × Proc) = {(Q2,Q3), (Q3,Q2)} ∪ I = F2(Proc × Proc)
A Final Example
Q1 := b.Q2 + a.Q3
Q2 := c .Q4
Q3 := c .Q4
Q4 := b.Q2 + a.Q3 + a.Q1
Q1 Q2
Q3 Q4
b
a c
c
b
a
a
Let’s compute the largest strong bisimulation of this LTS.F0(Proc × Proc) = Proc × ProcF1(Proc × Proc) = {(Q1,Q4), (Q4,Q1), (Q2,Q3), (Q3,Q2)} ∪ IF2(Proc × Proc) = {(Q2,Q3), (Q3,Q2)} ∪ I
F3(Proc × Proc) = {(Q2,Q3), (Q3,Q2)} ∪ I = F2(Proc × Proc)
A Final Example
Q1 := b.Q2 + a.Q3
Q2 := c .Q4
Q3 := c .Q4
Q4 := b.Q2 + a.Q3 + a.Q1
Q1 Q2
Q3 Q4
b
a c
c
b
a
a
Let’s compute the largest strong bisimulation of this LTS.F0(Proc × Proc) = Proc × ProcF1(Proc × Proc) = {(Q1,Q4), (Q4,Q1), (Q2,Q3), (Q3,Q2)} ∪ IF2(Proc × Proc) = {(Q2,Q3), (Q3,Q2)} ∪ IF3(Proc × Proc) = {(Q2,Q3), (Q3,Q2)} ∪ I = F2(Proc × Proc)