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
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong><strong>Time</strong>d</strong> <strong>CTL</strong> <strong>Model</strong> <strong>Check<strong>in</strong>g</strong> <strong>in</strong> <strong>Real</strong>-<strong>Time</strong> Maude 5<br />
quantified by the variables appear<strong>in</strong>g <strong>in</strong> t, t ′ and cond, and specifies a set of<br />
local one-step transitions <strong>in</strong> the system. Rules are applied modulo the equations<br />
E. The set T Σ/E,s of states of sort s is def<strong>in</strong>ed by the E-equivalence classes of<br />
ground terms of sort s.<br />
<strong>Real</strong>-time rewrite theories [28] are used to specify real-time systems <strong>in</strong> rewrit<strong>in</strong>g<br />
logic. Rules are divided <strong>in</strong>to tick rules, that model time elapse <strong>in</strong> a system,<br />
and <strong>in</strong>stantaneous rules, that model <strong>in</strong>stantaneous change. Formally a real-time<br />
rewrite theory R is a tuple (Σ, E, R, φ, τ) such that<br />
– (Σ, E, R) is a rewrite theory, with a sort System and a sort GlobalSystem<br />
with no subsorts or supersorts and with only one operator {_} : System →<br />
GlobalSystem which satisfies no non-trivial equations; furthermore, for any<br />
f : s1 . . . sn → s <strong>in</strong> Σ, the sort GlobalSystem does not appear <strong>in</strong> s1 . . . sn.<br />
– φ : TIME → (Σ, E) is an equational theory morphism which <strong>in</strong>terprets<br />
TIME <strong>in</strong> R; the theory TIME [28] def<strong>in</strong>es time abstractly as an ordered commutative<br />
monoid (<strong>Time</strong>, 0, +, r with t −→ t ′′ for some<br />
t ′′ r0 r1 r2<br />
. A timed path <strong>in</strong> R is an <strong>in</strong>f<strong>in</strong>ite sequence π = t0 −→ t1 −→ t2 −→ · · · such<br />
that<br />
ri<br />
– for all i ∈ N, ti −→ ti+1 is a one-step rewrite <strong>in</strong> R; or<br />
ri<br />
– there exists a k ∈ N such that ti −→ ti+1 is a one-step rewrite <strong>in</strong> R for all<br />
0 ≤ i < k, there is no one-step rewrite from tk <strong>in</strong> R, and tj = tk and rj = 0<br />
for each j ≥ k.<br />
For paths π of the above form we def<strong>in</strong>e dπ m = m−1 i=0 ri, tπ m = tm and rπ m = rm.<br />
r0 r1 r2<br />
We call the timed path π = t0 −→ t1 −→ t2 −→ · · · a timed fair path if<br />
– for any ground term ∆ of sort <strong>Time</strong>, if there is a k such that for each j > k<br />
r<br />
there is a one-step tick rewrite tj −→ t with ∆ ≤ dπ j + r then there is an l<br />
with ∆ ≤ dπ l , and<br />
– for each k, if for each j > k both a maximal tick step with duration 0 and an<br />
<strong>in</strong>st<br />
<strong>in</strong>stantaneous rule can be applied <strong>in</strong> tj then tl −→ tl+1 is a one-step rewrite<br />
apply<strong>in</strong>g an <strong>in</strong>stantaneous rule for some l > k.<br />
We denote the set of all timed fair paths of R start<strong>in</strong>g <strong>in</strong> t0 by tfPathsR(t0). A<br />
term t is reachable from t0 <strong>in</strong> R <strong>in</strong> time r iff there is a path π ∈ tfPathsR(t0) with tπ k = t and dπ k = r for some k. A path π is time-divergent iff for each time<br />
value r ∈ <strong>Time</strong> there is an i ∈ N such that dπ i > r.<br />
r ′