Metric interval temporal logic  In model checking, the Metric Interval Temporal Logic (MITL) is a fragment of Metric Temporal Logic (MTL). This fragment is often preferred to MTL because some problems that are undecidable for MTL become decidable for MITL. A MITL formula is an MTL formula, such that each set of reals used in subscript are intervals, which are not singletons, and whose bounds are either a natural number or are infinite. MTL can express a statement such as the sentence S: "P holed exactly ten time units ago". This is impossible in MITL. Instead, MITL can say T: "P holed between 9 and 10 time units ago". Since MITL can express T but not S, in a sense, MITL is a restriction of MTL which allows only less precise statements. One reason to want to avoid a statement such as S is that its truth value may change an arbitrary number of times in a single time unit. Indeed, the truth value of this statement may change as many times as the truth value of P change, and P itself may change an arbitrary number of time in a single time unit. Let us now consider a system, such as a timed automaton or a signal automaton, which want to know at each instant whether S holds or not. This system should recall everything that occurred in the last 10 time units. As seen above, it means that it must recall an arbitrarily large number of events. This can not be implemented by a system with finite memory and clocks. One of the main advantage of MITL is that each operator has the bounded variability property. Example:  Given the statement T defined above. Each time the truth value of T switches from false to true, it remains true for at least one time unit. Proof: At a time t where T becomes true, it means that:   Hence, P was true exactly 9 time units ago. It follows that, for each formula_1, at time formula_2, P was true formula_3 time units ago. Since formula_4, at time formula_5, T holds. A system, at each instant, wants to know the value of T. Such a system must recall what occurred during the last ten time units. However, thanks to the bounded variability property, it must recall at most 10 time units when T becomes true. And hence 11 times when T becomes false. Thus this system must recall at most 21 events, and hence can be implemented as a timed automaton or a signal automaton.