25.12.2014 Views

On improving efficiency of model checking through systematically ...

On improving efficiency of model checking through systematically ...

On improving efficiency of model checking through systematically ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

nbac2uppaal.pl foo.ba foo.xml foo.q<br />

The first argument is the output abstract <strong>model</strong>. The second argument<br />

is the system graph and the last one contains the property to check.<br />

The tool also provides information about the physical size <strong>of</strong> the resulting<br />

XTG <strong>model</strong> including the number <strong>of</strong> locations, edges, Boolean<br />

operators and variables. For example, after transforming the Fischer’s<br />

protocol, the tool reports the following information:<br />

Successfully transformed fischer.ba to fischer.xml<br />

Number <strong>of</strong> shared variables:12<br />

Number <strong>of</strong> input variables:3<br />

Number <strong>of</strong> locations:3<br />

Number <strong>of</strong> edges:3<br />

Total number <strong>of</strong> boolean operations: 2353<br />

5. Verify the abstract <strong>model</strong>s using Uppaal. After obtaining the abstract<br />

<strong>model</strong>, we starts to verify the <strong>model</strong> using Uppaal. Weprefertousethe<br />

command line version instead <strong>of</strong> a GUI-supported version <strong>of</strong> Uppaal so<br />

that we can measure 1 the time and memory usage <strong>of</strong> the verification.<br />

The command to verify is as follows:<br />

>verifyta foo.xml foo.q<br />

where foo.xml is the file containing system graph and foo.q is the<br />

file containing the property specification.<br />

We use a threshold time <strong>of</strong> 4 hours to classify the <strong>model</strong> as practically<br />

verifiable or not.<br />

We have presented above the procedure we define to do experiments. Next,<br />

we report experimental results for each case study.<br />

5.2 Experimental results<br />

5.2.1 The tiny example<br />

The original <strong>model</strong> <strong>of</strong> the tiny example is specified in Nbac input file tiny.ba.<br />

Nbac generates only one abstract <strong>model</strong> which contains 3 locations along the<br />

run.<br />

1 using memtime utility created by the developers <strong>of</strong> Uppaal<br />

47

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!