Traversal techniques for concurrent systems. Marc Solé & Enric Pastor Departament of Computer Architecture UPC [email protected] Introduction. General objective: checking of safety properties in concurrent systems. Accomplished through Reachability Analisys.
Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.
Traversal techniques for concurrent systems
Marc Solé & Enric Pastor
Departament of Computer Architecture
UPC
In this work: traversal methods for concurrent systems.
s0
a
b
s0
s1
s2
{a,b}
b
a
s3
s3
Synchronous
Concurrent
s0
s0
BFS
BFS with chaining
s0
s0
a
b
a
b
s1
s2
s1
s2
b
a
b
a
s3
s3
BFS
BFS with chaining
s0
s0
a
b
a
b
s1
s2
s1
s1
s2
b
a
b
a
s3
s3
BFS
BFS with chaining
s0
s0
a
b
a
b
s1
s2
s1
s2
b
a
b
a
s3
s3
s0
b
a
s1
s2
b
a
c
b
s3
s4
s5
e
d
c
e
d
s6
s7
s8
a
b
e
b
f
f
d
s9
s10
s11
a
g
s12
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s1
s1
s2
s2
s2
b
b
b
a
a
a
c
c
c
b
b
b
s3
s3
s3
s4
s4
s4
s5
s5
s5
e
e
e
d
d
d
c
c
c
e
e
e
d
d
d
s6
s6
s6
s7
s7
s7
s8
s8
s8
a
a
a
b
b
b
e
e
e
b
b
b
f
f
f
f
f
f
d
d
d
s9
s9
s9
s10
s10
s10
s11
s11
s11
a
a
a
g
g
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
BFS
BFS with chaining
BFS with chaining
s0
s0
s0
b
b
b
a
a
a
s1
s2
s1
s2
s1
s2
b
a
b
a
b
a
c
c
c
b
b
b
s3
s4
s5
s3
s4
s5
s3
s4
s5
e
d
e
d
e
d
c
c
c
e
e
e
d
d
d
s6
s7
s8
s6
s7
s8
s6
s7
s8
a
b
a
b
a
b
e
e
e
b
f
b
f
b
f
f
d
f
d
f
d
s9
s10
s11
s9
s10
s11
s9
s10
s11
a
g
a
g
a
g
s12
s12
s12
{a,b,c,d,e,f,g}
{a,b,c,d,e,f,g}
{e,a,g,c,b,f,d}
Causality analisys between events.
a
b
s0
s1
s2
b
a
c
b
s3
s4
s5
e
d
c
e
d
s6
s7
s8
a
b
e
b
f
f
d
s9
s10
s11
a
g
s12
FF(a)
FF(b)
FF(a)·!FF(b)
To
a
a
a
FF(a)·!FF(b)
To = Firing a on FF(a)*!FF(b)
If this set exists
[To · FF(b) ]
then event bpotentially becomes fireable after event a
To
FF(b)
FF(a)·!FF(b)
s0
b
a
s1
s2
a
b
b
a
s3
c
s4
a
b
c
s5
s6
b
a
s7
Traversal methods
s0
b
a
s1
s2
a
b
b
a
s3
c
s4
a
b
c
s5
s6
b
a
s7
s0
b
a
s1
s2
a
b
b
a
s3
c
s4
a
b
c
s5
s6
b
a
Same number of tokens in a and b :
Chose at random which to fire
s7
s0
b
a
s1
s2
a
b
b
a
s3
c
s4
a
b
c
s5
s6
b
a
Same number of tokens in b and c :
Chose at random which to fire
s7
s0
b
a
s1
s2
a
b
b
a
s3
c
s4
a
b
c
s5
s6
Worst case: c is fired
No new state produced,
token absorbed
b
a
s7
s0
b
a
s1
s2
a
b
b
a
s3
c
s4
a
b
c
s5
s6
b
a
s7
s0
b
a
s1
s2
a
b
b
a
s3
c
s4
a
b
c
s5
s6
b
a
s7
s0
a
b
b
a
s1
s2
b
a
s3
c
c
s0
a
b
b
a
s1
s2
b
a
s3
c
c
s0
a
b
b
a
s1
s2
b
a
s3
c
c
s0
a
b
b
a
s1
s2
b
a
s3
2 states but only 1 token
c
c
Dynamic eventclustered traverse
s0
Event a
b
s0
a
s1
s2
Event b
s0
b
a
s3
Ø
Event c
c
s4
a
b
s5
s6
b
a
s7
s1
s0
Ø
Event a
b
a
s1
s2
Event b
s0
b
a
s3
Ø
Event c
c
s4
a
b
s5
s6
b
a
s7
s2
s3
s0
Ø
Event a
b
a
s1
s2
Ø
Event b
b
a
s3
Ø
Event c
c
s4
a
b
s5
s6
b
a
s7
Original
Combined
Closure
a
b
b
a
a
b
b
a
Steps
#Events
Peak
Time (s)
BFS
>38
>1786
>1755
>14400
BFS chain
24
1175
1755
1476
TOK
8
1430
20
30
WTOK
10
1280
20
26
DEC
N/A
1334
50
82
TRCC man
10
55
63
45
[1] M. R. Greenstreet et al, Proceedings of 5th Int. Symp. on ARACS, pp. 173185, IEEE, Apr. 1999
Steps
#Events
Peak
Time (s)
BFS
>329
>33000

>8800
BFS chain
127
12800
440
2435
TOK
>34
N/A
>1590
>10800
WTOK
67
10555
698
8890
DEC
N/A
8135
572
7997
TRCC man
48
5550
852
138
[2] M. R. Greenstreet, STARI: A TECHNIQUE for HighBandwidth COMMUNICATION, PhD. Thesis, 1993