29.04.2014 Views

Presburger Arithmetic and Its Use in Verification

Presburger Arithmetic and Its Use in Verification

Presburger Arithmetic and Its Use in Verification

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

CHAPTER 5.<br />

DURATION CALCULUS AND PRESBURGER FRAGMENTS<br />

Figure 5.1. Observation <strong>in</strong>tervals [10].<br />

Figure 5.2. AsimpleKripkestructure[15].<br />

where P is <strong>in</strong> the set of state variable names, k, c i ∈ Z <strong>and</strong> ⊲⊳ ∈{}.<br />

The above fragments of DC are undecidable already; if the duration is limited <strong>in</strong><br />

the form ∫ S⊲⊳k,thediscrete-timesatisfiabilityproblemisdecidable[10]. Withthe<br />

decidable fragments of DC, the model-check<strong>in</strong>g problem is described <strong>in</strong> the follow<strong>in</strong>g<br />

manner: models are expressed by means of automata (normally, a labelled automata<br />

like Kripke structures) <strong>and</strong> durations are calculated bas<strong>in</strong>g on traces of execution.<br />

Here the notion of traces is abstracted to the notion of visit<strong>in</strong>g frequencies of nodes.<br />

Therefore, given a DC formula φ <strong>and</strong> a Kripke structure K, K is a model of φ when<br />

every trace of K satisfies φ, writtenK |= φ. We consider an example of Kripke<br />

structures described <strong>in</strong> Figure 5.2 <strong>and</strong> check it aga<strong>in</strong>st the property ∫ P < 2.<br />

Certa<strong>in</strong>ly the answer is false because there exist some traces which visit P at least<br />

twice.<br />

When abstract<strong>in</strong>g from traces, some frequencies are not correspond<strong>in</strong>g to any<br />

real trace, so a count<strong>in</strong>g semantic <strong>in</strong> a multiset m is <strong>in</strong>troduced [10]. The multiset<br />

guarantees the consistency between visit<strong>in</strong>g frequencies <strong>and</strong> traces. The modelcheck<strong>in</strong>g<br />

algorithm does a bottom-up mark<strong>in</strong>g <strong>and</strong> generates side-condition <strong>in</strong> a<br />

form of <strong>Presburger</strong> formulas. The consistency condition C(K, i 0 ,j 0 , m, e) isexpressed<br />

by l<strong>in</strong>ear constra<strong>in</strong>ts of <strong>in</strong>flow <strong>and</strong> outflow equations, <strong>and</strong> there are some<br />

36

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

Saved successfully!

Ooh no, something went wrong!