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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Hence, if we limit the length <strong>of</strong> the sequence <strong>of</strong> input variables, there<br />

could be several cases in which only the transition to get input values<br />

again is taken instead <strong>of</strong> a real transition action in the system. Therefore,<br />

<strong>model</strong>ing the restriction in this way does not help to show the<br />

actual workload <strong>of</strong> Uppaal in the verification.<br />

Although the aforementioned solution does help to make Uppaal finish<br />

the verification, it does not solve the problem at its root since doing that way<br />

means we only verify a small part <strong>of</strong> the real state space. We are looking<br />

for a solution to re<strong>model</strong> the Nbac output <strong>model</strong> in such a way that the<br />

resulting <strong>model</strong> becomes finite for Uppaal. Solving the verification problem<br />

for infinite systems is a research problem that is still on progress in many<br />

research groups. For such systems, theorem proving has been relied on[20,<br />

18]. Abstraction techniques have also been used to solve that problem[9, 14,<br />

10]. However, we ran out <strong>of</strong> time for any further investigation.<br />

5.4 Summary<br />

We have presented experimental results that we obtained on the verification<br />

<strong>of</strong> abstract <strong>model</strong>s <strong>of</strong> case studies. Uppaal could finish verification on the<br />

tiny example and the asynchronous reader/writer algorithm in a short time.<br />

However, it could not verify the Fischer’s protocol and Subway system.<br />

We measured the memory usage in the verification for a range <strong>of</strong> number<br />

<strong>of</strong> iterations around the good location that the system can take. It turned<br />

out that the memory usage grew very quickly and thus state space explosion<br />

was unavoidable. We investigated the problem <strong>through</strong> several trials to<br />

figure out the reason for the state space explosion. The reason is that those<br />

systems are infinite due to the unlimited increment <strong>of</strong> Integer variables and<br />

thus the fixed point can not be reached. Uppaal will only terminate verification<br />

when it reaches the bounded integer value. However, the memory<br />

resource was exhausted before Uppaal could reach that limit when <strong>model</strong><br />

<strong>checking</strong> the Fischer’s protocol and Subway system.<br />

We tried to solve the problem by restricting the number <strong>of</strong> iterations so<br />

that Uppaal can finish the verification. Among two different ways to do it,<br />

we chose to implement the counter and limit the value <strong>of</strong> the counter in the<br />

system graph.<br />

55

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

Saved successfully!

Ooh no, something went wrong!