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

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

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

Saved successfully!

Ooh no, something went wrong!