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
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
4 D. Lepri, E. Ábrahám, and P. Cs. Ölveczky<br />
studies: a <strong>Real</strong>-<strong>Time</strong> Maude model of a simple network of embedded medical<br />
devices, a Ptolemy II model of a railroad cross<strong>in</strong>g system, and a Ptolemy II<br />
model of a fault-tolerant traffic light system.<br />
An important benefit of our work is that a T<strong>CTL</strong> model checker for <strong>Real</strong>-<br />
<strong>Time</strong> Maude also gives us a T<strong>CTL</strong> model checker for free for Ptolemy II DE<br />
models, synchronous AADL models, and other model<strong>in</strong>g languages for which<br />
<strong>Real</strong>-<strong>Time</strong> Maude models can be generated. As shown <strong>in</strong> Section 6, our model<br />
checker has already been <strong>in</strong>tegrated <strong>in</strong>to the Ptolemy II tool, allow<strong>in</strong>g the user<br />
to model check T<strong>CTL</strong> properties of Ptolemy II models from with<strong>in</strong> Ptolemy II.<br />
Related Work. The tools Kronos [39], Redlib [37], and TSMV [22] implement<br />
T<strong>CTL</strong> model checkers for, respectively, timed automata, l<strong>in</strong>ear hybrid automata,<br />
and timed Kripke structures. The tool Uppaal [9] provides an efficient symbolic<br />
model check<strong>in</strong>g procedure for timed automata for a subset of non-nested T<strong>CTL</strong><br />
properties. The Roméo tool [17, 11], based on a timed extension of Petri nets [1,<br />
23], has an <strong>in</strong>tegrated timed model checker for some non-nested T<strong>CTL</strong> modalities,<br />
with the addition of bounded response properties. These formalisms are<br />
significantly less expressive than real-time rewrite theories [28], which makes<br />
their model check<strong>in</strong>g problems decidable. The first approaches to model check<strong>in</strong>g<br />
timed temporal properties for <strong>Real</strong>-<strong>Time</strong> Maude are described <strong>in</strong> [20, 38]<br />
and analyze important specific classes of timed temporal logic formulas (timebounded<br />
response, time-bounded safety, and m<strong>in</strong>imum separation), but only for<br />
flat object-based specifications. Unlike <strong>in</strong> [20, 38], our new model checker is not<br />
limited to specific classes of temporal logic properties, but offers the full T<strong>CTL</strong>.<br />
The new model checker is also not limited to flat object-oriented systems, but<br />
can also analyze any (sensible) <strong>Real</strong>-<strong>Time</strong> Maude model, <strong>in</strong>clud<strong>in</strong>g hierarchical<br />
object-oriented specifications, which is crucial, s<strong>in</strong>ce both AADL and Ptolemy II<br />
models are hierarchical.<br />
Paper Structure. Section 2 <strong>in</strong>troduces real-time rewrite theories and <strong>Real</strong>-<strong>Time</strong><br />
Maude. Section 3 describes our model checker and its semantics. Section 4<br />
presents our soundness and completeness results. We discuss our model checker<br />
implementation <strong>in</strong> Section 5, and demonstrate its applicability on three case<br />
studies <strong>in</strong> Section 6. F<strong>in</strong>ally, conclud<strong>in</strong>g remarks are given <strong>in</strong> Section 7.<br />
2 <strong>Real</strong>-<strong>Time</strong> Rewrite Theories and <strong>Real</strong>-<strong>Time</strong> Maude<br />
A rewrite theory is a tuple (Σ, E, R), where (Σ, E) is a membership equational<br />
logic theory [15] that def<strong>in</strong>es the state space of a system as an algebraic data<br />
type, with Σ a signature declar<strong>in</strong>g sorts, subsorts, and function symbols, and<br />
E a set of conditional equations and membership axioms, and where R is a set<br />
of labeled conditional rewrite rules of the form [l] : t −→ t ′ if cond, where<br />
l is a label, t, t ′ are Σ-terms, and cond is a conjunction of rewrite conditions<br />
u −→ u ′ , equational conditions v = v ′ , and membership conditions w : s, where<br />
u, u ′ , v, v ′ , w are Σ-terms and s is a sort <strong>in</strong> Σ. A rule is implicitly universally