A wide range of real-time systems, formalisms, and modeling languages can be naturally represented in rewriting logic as real-time rewrite theories. In this paper we propose a language in which the user can conveniently define execution strategies—including state- and history-dependent ones—for real-time rewrite theories in a modular way, by specifying: (i) how to apply instantaneous transitions; (ii) how to advance time in the system; and (iii) the interplay between instantaneous transitions and advancing time. The user can easily specify more “time sampling strategies” than those supported by the Real-Time Maude tool, and we identify a new time sampling strategy that provides both efficient and exhaustive analysis for many distributed real-time systems. We provide unbounded and time-bounded simulation, reachability analysis, and LTL model checking commands for real-time rewrite theories whose executions are constrained by the user-defined discrete and timed strategies. These analysis methods are implemented by defining a strategy which extends the user's strategy, so that all analysis boils down to standard Maude rewriting with strategies. We exemplify the use of our strategy language and our analyses on a round trip time protocol and a train door controller. Our work also provides analysis with respect to user-defined strategies for formalisms that can be seen as real-time theories; we illustrate this for timed automata. Finally, we compare the performance of standard Maude search, where the desired time sampling strategy has been hardcoded into the model, with our strategy-implemented reachability analyses on the CASH scheduling algorithm benchmark.
扫码关注我们
求助内容:
应助结果提醒方式:
