Metric temporal logic (MTL) is a special case of temporal logic. It is an extension of temporal logic in which temporal operators are replaced by time-constrained versions like until, next, since and previous operators. It is a linear-time logic that assumes both the interleaving and fictitious-clock abstractions. It is defined over a point-based weakly-monotonic integer-time semantics.
MTL has been described as a prominent specification formalism for real-time systems.[1] Full MTL over infinite timed words is undecidable.[2]
Syntax
editThe full metric temporal logic is defined similarly to linear temporal logic, where a set of non-negative real number is added to temporal modal operators U and S. Formally, MTL is built up from:
- a finite set of propositional variables AP,
- the logical operators ¬ and ∨, and
- the temporal modal operator UI (pronounced "φ until in I ψ."), with I an interval of non-negative numbers.
- the temporal modal operator SI (pronounced "φ since in I ψ."), with I as above.
When the subscript is omitted, it is implicitly equal to .
Note that the next operator N is not considered to be a part of MTL syntax. It will instead be defined from other operators.
Past and Future
editThe past fragment of metric temporal logic, denoted as past-MTL is defined as the restriction of the full metric temporal logic without the until operator. Similarly, the future fragment of metric temporal logic, denoted as future-MTL is defined as the restriction of the full metric temporal logic without the since operator.
Depending on the authors, MTL is either defined as the future fragment of MTL, in which case full-MTL is called MTL+Past.[1][3] Or MTL is defined as full-MTL.
In order to avoid ambiguity, this article uses the names full-MTL, past-MTL and future-MTL. When the statements holds for the three logic, MTL will simply be used.
Model
editLet intuitively represent a set of points in time. Let a function which associates a letter to each moment . A model of a MTL formula is such a function . Usually, is either a timed word or a signal. In those cases, is either a discrete subset or an interval containing 0.
Semantics
editLet and as above and let some fixed time. We are now going to explain what it means that a MTL formula holds at time , which is denoted .
Let and . We first consider the formula . We say that if and only if there exists some time such that:
- and
- for each with , .
We now consider the formula (pronounced " since in .") We say that if and only if there exists some time such that:
- and
- for each with , .
The definitions of for the values of not considered above is similar as the definition in the LTL case.
Operators defined from basic MTL operators
editSome formulas are so often used that a new operator is introduced for them. These operators are usually not considered to belong to the definition of MTL, but are syntactic sugar which denote more complex MTL formula. We first consider operators which also exists in LTL. In this section, we fix MTL formulas and .
Operators similar to the ones of LTL
editRelease and Back to
editWe denote by (pronounced " release in , ") the formula . This formula holds at time if either:
- there is some time such that holds, and hold in the interval .
- at each time , holds.
The name "release" come from the LTL case, where this formula simply means that should always hold, unless releases it.
The past counterpart of release is denote by (pronounced " back to in , ") and is equal to the formula .
Finally and Eventually
editWe denote by or (pronounced "Finally in , ", or "Eventually in , ") the formula . Intuitively, this formula holds at time if there is some time such that holds.
We denote by or (pronounced "Globally in , ",) the formula . Intuitively, this formula holds at time if for all time , holds.
We denote by and the formula similar to and , where is replaced by . Both formula has intuitively the same meaning, but when we consider the past instead of the future.
Next and previous
editThis case is slightly different from the previous ones, because the intuitive meaning of the "Next" and "Previously" formulas differs depending on the kind of function considered.
We denote by or (pronounced "Next in , ") the formula . Similarly, we denote by [4] (pronounced "Previously in , ) the formula . The following discussion about the Next operator also holds for the Previously operator, by reversing the past and the future.
When this formula is evaluated over a timed word , this formula means that both:
- at the next time in the domain of definition , the formula will holds.
- furthermore, the distance between this next time and the current time belong to the interval .
- In particular, this next time holds, thus the current time is not the end of the word.
When this formula is evaluated over a signal , the notion of next time does not makes sense. Instead, "next" means "immediately after". More precisely means:
- contains an interval of the form and
- for each , .
Other operators
editWe now consider operators which are not similar to any standard LTL operators.
Fall and Rise
editWe denote by (pronounced "rise "), a formula which holds when becomes true. More precisely, either did not hold in the immediate past, and holds at this time, or it does not hold and it holds in the immediate future. Formally is defined as .[5]
Over timed words, this formula always hold. Indeed and always hold. Thus the formula is equivalent to , hence is true.
By symmetry, we denote by (pronounced "Fall ), a formula which holds when becomes false. Thus, it is defined as .
History and Prophecy
editWe now introduce the prophecy operator, denoted by . We denote by [6] the formula . This formula asserts that there exists a first moment in the future such that holds, and the time to wait for this first moment belongs to .
We now consider this formula over timed words and over signals. We consider timed words first. Assume that where and represents either open or closed bounds. Let a timed word and in its domain of definition. Over timed words, the formula holds if and only if also holds. That is, this formula simply assert that, in the future, until the interval is met, should not hold. Furthermore, should hold sometime in the interval . Indeed, given any time such that hold, there exists only a finite number of time with and . Thus, there exists necessarily a smaller such .
Let us now consider signal. The equivalence mentioned above does not hold anymore over signal. This is due to the fact that, using the variables introduced above, there may exists an infinite number of correct values for , due to the fact that the domain of definition of a signal is continuous. Thus, the formula also ensures that the first interval in which holds is closed on the left.
By temporal symmetry, we define the history operator, denoted by . We define as . This formula asserts that there exists a last moment in the past such that held. And the time since this first moment belongs to .
Non-strict operator
editThe semantic of operators until and since introduced do not consider the current time. That is, in order for to holds at some time , neither nor has to hold at time . This is not always wanted, for example in the sentence "there is no bug until the system is turned-off", it may actually be wanted that there are no bug at current time. Thus, we introduce another until operator, called non-strict until, denoted by , which consider the current time.
We denote by and either:
- the formulas and if , and
- the formulas and otherwise.
For any of the operators introduced above, we denote the formula in which non-strict untils and sinces are used. For example is an abbreviation for .
Strict operator can not be defined using non-strict operator. That is, there is no formula equivalent to which uses only non-strict operator. This formula is defined as . This formula can never hold at a time if it is required that holds at time .
Example
editWe now give examples of MTL formulas. Some more example can be found on article of fragments of MITL, such as metric interval temporal logic.
- states that each letter is followed exactly one time unit later by a letter .
- states that no two successive occurrences of can occur at exactly one time unit from each other.
Comparison with LTL
editA standard (untimed) infinite word is a function from to . We can consider such a word using the set of time , and the function . In this case, for an arbitrary LTL formula, if and only if , where is considered as a MTL formula with non-strict operator and subscript. In this sense, MTL is an extension of LTL.[clarification needed]
For this reason, a formula using only non-strict operator with subscript is called an LTL formula. This is because the[further explanation needed]
Algorithmic complexity
editThe satisfiability of ECL over signals is EXPSPACE-complete.[6]
Fragments of MTL
editWe now consider some fragments of MTL.
MITL
editAn important subset of MTL is the Metric Interval Temporal Logic (MITL). This is defined similarly to MTL, with the restriction that the sets , used in and , are intervals which are not singletons, and whose bounds are natural numbers or infinity.
Some other subsets of MITL are defined in the article MITL.
Future Fragments
editFuture-MTL was already introduced above. Both over timed-words and over signals, it is less expressive than Full-MTL[3]: 3 .
Event-Clock Temporal Logic
editThe fragment Event-Clock Temporal Logic[6] of MTL, denoted EventClockTL or ECL, allows only the following operators:
- the boolean operators, and, or, not
- the untimed until and since operators.
- The timed prophecy and history operators.
Over signals, ECL is as expressive as MITL and as MITL0. The equivalence between the two last logics is explained in the article MITL0. We sketch the equivalence of those logics with ECL.
If is not a singleton and is a MITL formula, is defined as a MITL formula. If is a singleton, then is equivalent to which is a MITL-formula. Reciprocally, for an ECL-formula, and an interval whose lower bound is 0, is equivalent to the ECL-formula .
The satisfiability of ECL over signals is PSPACE-complete.[6]
Positive normal form
editA MTL-formula in positive normal form is defined almost as any MTL formula, with the two following change:
- the operators Release and Back are introduced in the logical language and are not considered anymore to be notations for some other formulas.
- negations can only be applied to letters.
Any MTL formula is equivalent to formula in normal form. This can be shown by an easy induction on formulas. For example, the formula is equivalent to the formula . Similarly, conjunctions and disjunctions can be considered using De Morgan's laws.
Strictly speaking, the set of formulas in positive normal form is not a fragment of MTL.
See also
edit- Timed propositional temporal logic, another extension of LTL in which time can be measured.
References
edit- ^ a b J. Ouaknine and J. Worrell, "On the decidability of metric temporal logic," 20th Annual IEEE Symposium on Logic in Computer Science (LICS' 05), 2005, pp. 188-197.
- ^ Ouaknine J., Worrell J. (2006) On Metric Temporal Logic and Faulty Turing Machines. In: Aceto L., Ingólfsdóttir A. (eds) Foundations of Software Science and Computation Structures. FoSSaCS 2006. Lecture Notes in Computer Science, vol 3921. Springer, Berlin, Heidelberg
- ^ a b Bouyer, Patricia; Chevalier, Fabrice; Markey, Nicolas (2005). "On the Expressiveness of TPTL and MTL". In Sundar Sarukkai; Sandeep Sen (eds.). FSTTCS 2005: Foundations of Software Technology and Theoretical Computer Science, Proceedings. 25th International Conference, Hyderabad, India, December 15–18, 2005. Lecture Notes in Computer Science. Vol. 3821. p. 436. doi:10.1007/11590156_35. ISBN 978-3-540-32419-5.
- ^ Maler, Oded; Nickovic, Dejan; Pnueli, Amir (2008). "Checking temporal properties of discrete, timed and continuous behaviors". Pillars of computer science. ACM. p. 478. ISBN 978-3-540-78126-4.
- ^ Nickovic, Dejan (31 August 2009). "3". Checking Timed and Hybrid Properties: Theory and Applications (Thesis).
- ^ a b c d Henzinger, T.A.; Raskin, J.F.; Schobbens, P.-Y. (1998). "The regular real-time languages". Automata, Languages and Programming. Lecture Notes in Computer Science. Vol. 1443. p. 590. doi:10.1007/BFb0055086. ISBN 978-3-540-64781-2.