30.04.2013 Views

Timed CTL Model Checking in Real-Time Maude⋆ - IfI

Timed CTL Model Checking in Real-Time Maude⋆ - IfI

Timed CTL Model Checking in Real-Time Maude⋆ - IfI

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

6 D. Lepri, E. Ábrahám, and P. Cs. Ölveczky<br />

The <strong>Real</strong>-<strong>Time</strong> Maude tool [30] extends the Maude system [15] to support<br />

the specification, simulation, and analysis of real-time rewrite theories. <strong>Real</strong>-<br />

<strong>Time</strong> Maude is parametric <strong>in</strong> the time doma<strong>in</strong>, which may be discrete or dense,<br />

and def<strong>in</strong>es a supersort <strong>Time</strong>Inf of <strong>Time</strong> which adds the <strong>in</strong>f<strong>in</strong>ity element INF.<br />

To cover all time <strong>in</strong>stances <strong>in</strong> a dense time doma<strong>in</strong>, tick rules often have one of<br />

the forms<br />

crl [tick] : {t} => {t ′ } <strong>in</strong> time x if x {t ′ } <strong>in</strong> time x if cond [nonexec] . (∗), or<br />

rl [tick] : {t} => {t ′ } <strong>in</strong> time x [nonexec] . (§).<br />

where x is a new variable of sort <strong>Time</strong> not occurr<strong>in</strong>g <strong>in</strong> {t} and cond. This<br />

ensures that the tick rules can advance time by any amount <strong>in</strong> rules of the form<br />

(∗) or (§) and any amount less than or equal to u <strong>in</strong> rules of the form (†). Rules<br />

of these forms are called time-nondeterm<strong>in</strong>istic and are not directly executable<br />

<strong>in</strong> general, s<strong>in</strong>ce many choices are possible for <strong>in</strong>stantiat<strong>in</strong>g the new variable x.<br />

In contrast to, e.g., timed automata, where the restrictions <strong>in</strong> the formalism<br />

allow the abstraction of the dense time doma<strong>in</strong> by “clock regions” conta<strong>in</strong><strong>in</strong>g<br />

bisimilar states [3], for the more complex systems expressible <strong>in</strong> <strong>Real</strong>-<strong>Time</strong><br />

Maude there is not such a discrete “quotient”. Instead, <strong>Real</strong>-<strong>Time</strong> Maude executes<br />

time-nondeterm<strong>in</strong>istic tick rules by offer<strong>in</strong>g a choice of different time sampl<strong>in</strong>g<br />

strategies [30], so that only some moments <strong>in</strong> the time doma<strong>in</strong> are visited.<br />

For example, the maximal time sampl<strong>in</strong>g strategy advances time by the maximum<br />

possible time elapse u <strong>in</strong> rules of the form (†) (unless u equals INF), and<br />

tries to advance time by a user-given time value r <strong>in</strong> tick rules hav<strong>in</strong>g other<br />

forms. In the default mode each application of a time-nondeterm<strong>in</strong>istic tick rule<br />

will try to advance time by a given time value r.<br />

The paper [30] expla<strong>in</strong>s the semantics of <strong>Real</strong>-<strong>Time</strong> Maude <strong>in</strong> more detail.<br />

In particular, given a real-time rewrite theory R and a time sampl<strong>in</strong>g strategy<br />

σ, there is a real-time rewrite theory R σ that has been obta<strong>in</strong>ed from R<br />

by apply<strong>in</strong>g a theory transformation correspond<strong>in</strong>g to us<strong>in</strong>g the time sampl<strong>in</strong>g<br />

strategy σ when execut<strong>in</strong>g the tick rules. In particular, the real-time rewrite<br />

theory R maxDef (r) denotes the real-time rewrite theory R where the tick rules<br />

are applied accord<strong>in</strong>g to the maximal time sampl<strong>in</strong>g strategy, while R def(r) denotes<br />

R where the tick rules are applied accord<strong>in</strong>g to the default time sampl<strong>in</strong>g<br />

strategy (tick steps which advance time by 0 are not applied).<br />

A real-time rewrite theory R is time-robust if the follow<strong>in</strong>g hold for all ground<br />

terms t, t ′ , t ′′ of sort GlobalSystem and all ground terms r, r ′ , of sort <strong>Time</strong>:<br />

– t = t ′ holds <strong>in</strong> the underly<strong>in</strong>g equational theory for any 0-time tick step<br />

0<br />

t −→ t ′ .<br />

– t r+r′<br />

−→ t ′′ if and only if there is a t ′ r<br />

of sort <strong>Time</strong> such that t −→ t ′ and<br />

−→ t ′′ .<br />

r<br />

– If t −→ t ′ ′ <strong>in</strong>st<br />

is a tick step with r > 0, and t −→ t ′′ is an <strong>in</strong>stantaneous one-step<br />

r<br />

rewrite, then t −→ t ′′ is a maximal tick step.<br />

– for M = {r | ∃t ′ r<br />

. t −→ t ′ } we have that either there is a maximal element <strong>in</strong><br />

M or M is the whole doma<strong>in</strong> of <strong>Time</strong>.<br />

t ′ r ′

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

Saved successfully!

Ooh no, something went wrong!