Download presentation
Presentation is loading. Please wait.
Published byDerek Bigg Modified over 9 years ago
1
Applying Petri Net Unfoldings for Verification of Mobile Systems Apostolos Niaouris Joint work with V. Khomenko, M. Koutny MOCA ‘06
2
2 Outline Mobility and π-calculus Model checking π-calculus p-nets Translation from π-calculus to p-nets Implementation issues Examples and experimental results Next steps
3
3 Mobility and π-calculus Mobility – one of the main features of many crucial modern distributed computing systems of ever growing complexity Formal analysis and verification using process algebras like π-calculus π-calculus can express dynamic changes in a process ability to communicate with the external environment, by passing references (channels) through interactions on previously known channels
4
4 π-calculus Syntax of π-calculus countably infinite set of channels Free channels of P: fn(P) Agent obtained from P by replacing all free occurrences of c by b: {b/c}P Well-formed π-calculus expression
5
5 Representing π-calculus Context-based expressions set of restricted channels set of channel holders partial mapping
6
6 Representing π-calculus Context-based expressions set of restricted channels set of channel holders partial mapping type-I type-K type-R
7
7 Model checking π-calculus Pi-calculus expression At the moment, only finite pi-calculus is supported
8
8 Model checking π-calculus Pi-calculus expression Safe High-level PN (p-nets) Automatic translation
9
9 p-nets Transitions Places
10
10 p-nets Transitions Places
11
11 p-nets Transitions Places
12
12 p-nets Transitions Places
13
13 p-nets Transitions Places Tag-place
14
14 Operators for p-nets Operators for choice, parallel composition and restriction
15
15 From π-calculus to p-nets 1.Translation of base process 0 and the three prefixes
16
16 From π-calculus to p-nets 2.For compound sub-expressions 3.Restriction operator 4.Tokens
17
17 Model checking π-calculus Pi-calculus expression Safe High-level PN (p-nets) PN unfolding Property Checking PUNF MPSat
18
18 Implementation issues Infinity of new channels Read arcs Non-safeness Partial-transition expansion Reducing the number of holder places
19
19 Example Classroom example Scalable specification 1 teacher process 3,4 student processes Check for proper termination
20
20 Example T ness NESS a h1 h2 h3 h4 a?ness
21
21 Example T ness NESS a h1 h2 h3 h4 h1!ness | h2!ness | h3!ness | h4!ness ness
22
22 Example T ness NESS a h1 h2 h3 h4 h1?addr1 | h2?addr2 | h3?addr3 | h4?addr4 ness
23
23 Example T ness NESS a h1 h2 h3 h4
24
24 Example T NESS a h1 h2 h3 h4 h h h!h1. h1!done. STOP + h?another1.addr1!h1. addr1!another1. h1!done.STOP ness
25
25 Experiments
26
26 Experiments
27
27 Experiments Problem Net Prefix |B| |E| Time Punf MPSat Time MWB |P| |T| Ness(2):III 157 200 1413 127 <1 Ness(3):III 319 415 5458 366 1 <1 Ness(4):III 537 72424561 1299 6 <1 7 Ness(5):III 811113993546 4078 46 <1 - Ness(6):III1141167228122110431 411 311 - Ness(7):III15272335701898226622904 8 -
28
28 Next steps We need efficient extensions of the unfolding approach for read arcs Introduce a restricted form of recursion still allowing one to use model-checking Deal with the state space explosion caused by aspects other than high level of concurrency Further performance comparisons of this model with other approaches
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.