Linear temporal logic

from Wikipedia, the free encyclopedia

Linear temporal logic ( LTL or Linear temporal logic ) is a formal modal temporal logic that is set up and used for model testing. In LTL formulas about the future of paths are set up, for example, that a condition eventually becomes true or a condition remains true until another condition is fulfilled.

syntax

LTL is made up of a set of statement variables , the logical links and the following temporal modal operators:

  • X for successor (ne x t; N is used synonymously)
  • G for g lobal
  • F for sometime ( f inally)
  • U for to ( u ntil)
  • R for r elease.

The first three operators are unary , so X is a syntactically correct formula if it is syntactically correct. The last two operators are binary, so U is a syntactically correct formula if and are syntactically correct formulas.

semantics

An LTL formula can be evaluated over an infinite sequence of statements as well as a single position on the path. An LTL formula is fulfilled on a path if and only if it is fulfilled in position 0 of the path. The semantics of the modal operators are as follows.

Text form symbol Explanation Sample path
One-digit links :
X next (Ne X t): applies to the next state. Ltlnext.png
G G lobal: applies to the entire subsequent path. Ltlalways.png
F. F inally: applies sometime on the following path. Ltlevently.png
Two-digit links :
U U ntil: applies to the current or a subsequent position and applies at least until this position is reached. In this position no longer has to apply. Ltluntil.png
R. R elease: applies up to and including the first position at which applies, or forever if such a position does not exist. Ltlrelease1.png

Ltlrelease2.png

Two of the operators are already fundamental, that is, they define the others using suitable links:

  • F = true U
  • G = false R = F
  • R = ( U )

Special links

Some authors define a weak-to-operator ( weak until , with W hereinafter) of as having a similar semantics to operator, however, no holding condition is required. Sometimes it makes sense if U and R can be defined using formulas of the weak to operator:

  • U = F ( W )
  • R = W ( )
  • W = R ( )
  • W = ( U ) G

Important properties

There are two major classes of properties that can be described by linear temporal logic: security ( safety ), indicates that something undesirable never occurs ( G ) and vitality ( liveness ), which says that something Erwünschtes happens all the time ( GF or G F ). In general: Security properties are those for which a finite prefix is ​​sufficient as a counterexample , the infinite extension of which always violates the property. In the case of liveliness properties, any finite prefix of a path can be extended to an infinite path that satisfies the formula.

Equivalent transformations

The following equivalent transformations are possible:

Relationships with other logics

Linear temporal logic (LTL) is a subset of Computation Tree Logic * (CTL *), has a common subset with CTL , but is neither a superset nor a subset of CTL.

LTL is equivalent to predicate logic with single-digit relation symbols and the smaller relation , as well as asterisk -free regular expressions .

Automata-theoretical LTL model checking

An important way to validate the model is to express the desired properties (as described above) using LTL operators and then verify that the model meets those properties.

It is also possible to create a Büchi automaton that is equivalent to the model and one that is equivalent to negating the property to be tested. The intersection of the two non-deterministic Büchi automata is empty if the model fulfills the properties.

See also

Web links

Commons : Linear Temporal Logic  - collection of images, videos and audio files