Title: Parallel LTLX Model Checking of HighLevel Petri Nets Based on Unfoldings
1Parallel LTL-X Model Checking of High-Level Petri
Nets Based on Unfoldings
UNIVERSITY OF STUTTGART
- Claus Schröter and Victor Khomenko
- University of Stuttgart, Germany
- University of Newcastle upon Tyne, UK
2Basis for our work
Esparza and Heljanko (ICALP 2000, SPIN 2001) A
New Unfolding Approach to LTL Model-Checking
- Net system is constructed as the product of
- the original net system and
- an Büchi automaton accepting ??
- Model-checking problem is reduced to detection
of - illegal ?-traces and
- illegal livelocks
- by exploiting finite complete prefixes
3Basis for our work
- Simplicity of this approach
- Partial order semantics of Petri nets
- Alleviates the state space explosion problem
? Input are low level Petri nets ? Low level
Petri nets are not convenient for modelling
4Coloured PNs
a good intermediate formalism
- Low-level PNs
- Can be efficiently verified
- Not convenient for modelling
- High-level descriptions
- Verification is hard
- ? Convenient for modelling
Gap
5Coloured PNs
1,2
1,2
1
2
v
u
wltuv
w
1..4
6Coloured PNs
1,2
1,2
1
2
v
u
wltuv
w
1..4
7Coloured PNs
1,2
1,2
v
u
wltuv
w
1..4
1
8Coloured PNs
1,2
1,2
v
u
wltuv
w
1..4
2
9Expansion
10Expansion
?
?
11Expansion
?
12Expansion
?
?
13Expansion
?
14Expansion
1,2
1,2
1
2
u
v
wltuv
w
1..4
? Blow up in size
- The expansion faithfully models the original net
15Finite complete prefix
- Introduced by McMillan in 1992
- Relies on the partial order view of concurrent
computation - Represents system states implicitly, using an
acyclic net - Satisfies two key properties
- Completeness Each reachable marking of the
original net is represented by at least one
reachable marking in the prefix
- Finiteness The prefix is finite and thus can be
used as an input to model-checking algorithms
16Relationship diagram
expansion
Low-level PNs
Coloured PNs
unfolding
unfolding
?
Low-level prefix
Coloured prefix
17Relationship diagram
expansion
Low-level PNs
Coloured PNs
unfolding
unfolding
Low-level prefix
Coloured prefix
Khomenko and Koutny proved isomorphism (TACAS03)
18Relationship diagram
1,2
1,2
1
2
u
v
wltuv
w
1..4
19Example Buffer of capacity 2
20Example Buffer of capacity 2
p10,1
p30,1
0
1
a
a
a
a
t1
t2
t3
a
a
b
b
p20,1
p40,1
21Example Buffer of capacity 2
p10,1
p30,1
0
a
a
a
a
t1
t2
t3
a
a
b
b
1
p20,1
p40,1
22Example Buffer of capacity 2
p10,1
p30,1
0
a
a
a
a
t1
t2
t3
a
a
b
b
1
p20,1
p40,1
23Example Buffer of capacity 2
p10,1
p30,1
0
1
a
a
a
a
t1
t2
t3
a
a
b
b
p20,1
p40,1
24Example Buffer of capacity 2
p10,1
p30,1
0
a
a
a
a
t1
t2
t3
a
a
b
b
1
p20,1
p40,1
25Example Buffer of capacity 2
p10,1
p30,1
a
a
a
a
t1
t2
t3
a
a
b
b
0
1
p20,1
p40,1
26Example Buffer of capacity 2
Property f ??(p2?0)
Büchi automaton A?f
27Synchronisation
- Standard technique Synchronisation on all
transitions - ? Synchronisation sequentialises the system
- ? Not suitable for unfolding based
verification
- Solution Synchronisation just on those
transitions which touch the atomic
propositions of the formula - ? Concurrency can be exploited
28Synchronisation
29Synchronisation
p2
p2
30Synchronisation
S?
B?
p2
p2
31Synchronisation
B?
p2
p2
32Synchronisation
B?
p2
p2
33Synchronisation
S?
p2
p2
34Synchronisation
S?
p2
p2
35Synchronisation
p2
p2
36Illegal ?-traces
- Infinite transition sequence that touches q1
infinitely often violates f
- To detect such runs we introduce a set I off all
transitions putting a token into an accepting
Büchi place
- An infinite transition sequence of the
synchronised net which is fireable from the
initial marking and contains infinitely many
occurrences of I-transitions violates f (illegal
?-trace)
37Synchronisation
p2
p2
38Synchronisation
p2
L1
p2
39Synchronisation
p2
p2
L2
p2
?(p2?0)
40Synchronisation
p2
p2
p2
?(p2?0)
41Prefix
p10
p31
p31
t3
p41
S
q0
I0
S
u0
p10
q0
q0
B
42Prefix
p10
p31
p31
t3
p41
S
q0
I0
S
u0
p10
q0
q0
B
43Prefix
p10
p31
p31
t3
p41
S
q0
I0
S
u0
p10
q0
q0
B
44Prefix
p10
p31
p31
t3
p41
S
q0
I0
S
u0
p10
q0
q0
B
45Prefix
p10
p31
p31
t3
p41
S
q0
I0
S
u0
p10
q0
q0
B
46Experimental Results
47More Results
48More Results
49Results for Parallel Mode
50Conclusions
- Efficient parallel LTL-X model-checker for high
level Petri nets - Based on partial order techniques (unfoldings)
- Alleviates the state space explosion problem
- Experimental results showed a good performance of
our checker for several examples