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.

achieve a more efficient <strong>model</strong> checker by combining Nbac and PMC. <strong>On</strong>the<br />

one hand, Nbac and PMC share the same idea <strong>of</strong> partition refinement in the<br />

sense that in both algorithms the starting point is a very coarse partition <strong>of</strong><br />

the state space then the partition is analyzed and refined until termination.<br />

<strong>On</strong> the other hand, they are very different from each other in computation<br />

method and typical systems they deal with.<br />

The study on Nbac and PMC leads to a proposed approach to combine<br />

them in a systematic way to improve <strong>efficiency</strong> <strong>of</strong> <strong>model</strong> <strong>checking</strong> for a class<br />

<strong>of</strong> <strong>model</strong>s. In the research report, we express our idea <strong>of</strong> a systematic combination<br />

and leave the implementation and evaluation <strong>of</strong> our approach for<br />

the second phase, the thesis project. The report also includes an experiment<br />

on Fischer’s protocol and some remarks on <strong>model</strong> <strong>checking</strong> in practice.<br />

1.3 Objectives<br />

The ultimate goal <strong>of</strong> our project is to improve <strong>efficiency</strong> <strong>of</strong> <strong>model</strong> <strong>checking</strong><br />

by <strong>systematically</strong> combining tools in a reasonable way. We utilize Nbac as a<br />

tool to bring abstraction capability to PMC/Uppaal 1 <strong>through</strong> a systematic<br />

approach. In our approach, the original system <strong>model</strong> is put into Nbac.<br />

Then, Nbac generates an abstract <strong>model</strong> based on abstract interpretation<br />

framework. The output astract <strong>model</strong> is fed into a transformation tool to<br />

be translated to an equivalent <strong>model</strong> that can be verified by PMC/Uppaal.<br />

Figure 1.1 depicts this approach. By preprocessing the system <strong>model</strong> in this<br />

way, we hope that we can obtain a smaller <strong>model</strong> for which verification by<br />

PMC/Uppaal is feasible.<br />

In Figure 1.1, the dashed box contains the transformation step which is<br />

taken by a tool. This tool does not only translate the syntax but also assures<br />

the semantics equivalence between an Nbac-like 2 <strong>model</strong> and a PMC/Uppaallike<br />

<strong>model</strong>. We characterize a PMC/Uppaal-like <strong>model</strong> as an XTG 3 <strong>model</strong><br />

for the sake <strong>of</strong> generality. An XTG <strong>model</strong> is a timed automata[7] extended<br />

with the notion <strong>of</strong> urgency and the synchronous communication mechanism.<br />

Due to the considerable size <strong>of</strong> an Nbac-like abstract <strong>model</strong>, the transformation<br />

process is very complicated and thus cannot be done manually.<br />

Therefore, the development <strong>of</strong> such a transformation tool is essential. Fur-<br />

1 Uppaal [8] was not involved in our project in the beginning. After quite a long time<br />

working with PMC, we eventually found that PMC was not suitable in our approach for some<br />

reasons explained later on. Therefore, we have chosen Uppaal to replace PMC to proceed<br />

with our project.<br />

2 called “Nbac <strong>model</strong>” for short later on<br />

3 Extended Timed Graph<br />

4

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

Saved successfully!

Ooh no, something went wrong!