We present a satisfiability-preserving reduction from MITL interpreted over finitely-variable continuous behaviors to Constraint LTL over clocks, a variant of CLTL that is decidable, and for which an SMT-based bounded satisfiability checker is available. The result is a new complete and effective decision procedure for MITL. Although decision procedures for MITL already exist, the automata-based techniques they employ appear to be very difficult to realize in practice, and, to the best of our knowledge, no implementation currently exists for them. A prototype tool for MITL based on the encoding presented here has, instead, been implemented and is publicly available.
IntroductionComputer systems are inherently discrete-time objects, but their application to real-time control and monitoring often requires to deal with external asynchronous events that may not always happen at integer-valued times. Hence, a discrete-time assumption requires to approximate continuous time by choosing some fixed minimal interval, thus limiting the accuracy of modeling, verification and validation of such systems. To overcome this restriction, many continuoustime models have been developed, most notably Timed Automata [4], a densetime operational model based on finite-state machines, but also descriptive models such as the continuous-time temporal logics MTL (Metric Temporal Logic) [5,6] and MITL (Metric Interval Temporal Logic) [6]. In general, the role of temporal logics in verification and validation is two-fold. First, temporal logic allows abstract, concise and convenient expression of required properties of $ This research was supported by the Programme IDEAS-ERC, Project 227977-SMScom, and by PRIN Project 2010LYA9RH. $$ Parts of this work were previously published in [1], [2] and [3], of which this article is an extension.Email addresses: marcellomaria.bersani@polimi.it (Marcello M. Bersani), matteo.rossi@polimi.it (Matteo Rossi), pierluigi.sanpietro@polimi.it (Pierluigi San Pietro)
Preprint submitted to ElsevierJanuary 9, 2015 a system. Linear Temporal Logic (LTL) is often used with this goal in the verification of finite-state models, e.g., in model checking [7]. Second, temporal logic allows a descriptive approach to specification and modeling (see, e.g., [8,9]). A descriptive model is based on axioms, written in some (temporal) logic, defining a system by means of its general properties, rather than by an operational model based on some kind of machine (e.g., a Timed Automaton) behaving in the desired way. In this case, verification typically consists of satisfiability checking of the conjunction of the model and of the (negation of) its desired properties. An example of the latter approach is Bounded Satisfiability Checking (BSC) [10], where MTL specifications and properties on discrete time are translated into Boolean logic, in an approach similar to Bounded Model Checking of LTL properties of finite-state machines.In general, verification of continuous-time temporal logics is not as well supported as for discre...