Lineare temporale Logik

modale Logik zur Modellprüfung

Lineare temporale Logik (LTL oder Linear temporal logic) ist eine formale modale temporale Logik, die zur Modellprüfung aufgestellt und benutzt wird. In LTL können Formeln über die Zukunft von Pfaden aufgestellt werden, beispielsweise dass eine Bedingung irgendwann wahr wird oder eine Bedingung wahr bleibt, bis eine andere Bedingung erfüllt wird.

Syntax Bearbeiten

LTL ist aus einer Menge von Aussagenvariablen  , den logischen Verknüpfungen   und den nachfolgenden temporalen modalen Operatoren aufgebaut:

  • X für Nachfolger (next; N wird synonym benutzt)
  • G für global
  • F für irgendwann (finally)
  • U für bis (until)
  • R für Auflösung (release).

Die ersten drei Operatoren sind unär, so dass X   eine syntaktisch korrekte Formel ist, wenn   syntaktisch korrekt ist. Die letzten zwei Operatoren sind binär, so dass   U   eine syntaktisch korrekte Formel ist, wenn   und   syntaktisch korrekte Formeln sind.

Semantik Bearbeiten

Eine LTL-Formel kann sowohl über einer unendlichen Sequenz von Aussagen als auch einer einzigen Position auf dem Pfad ausgewertet werden. Eine LTL-Formel ist genau dann auf einem Pfad erfüllt, wenn sie auf Position 0 des Pfades erfüllt ist. Die Semantik der modalen Operatoren ist wie folgt.

Textform Symbol Erklärung Beispielpfad
Einstellige Verknüpfungen:
X     nächster (NeXt):   gilt am nächsten Zustand.  
G     Global:   gilt auf dem kompletten nachfolgenden Pfad.  
F     Finally:   gilt irgendwann auf dem nachfolgenden Pfad.  
Zweistellige Verknüpfungen:
  U     Until:   gilt an der aktuellen oder einer nachfolgenden Position und   gilt mindestens solange, bis diese Position erreicht ist. An dieser Position muss   nicht mehr gelten.  
  R     Release:   gilt einschließlich bis zur ersten Position, an der   gilt, oder für immer, wenn eine solche Position nicht existiert.  

 

Bereits die zwei Operatoren X und U sind fundamental, das heißt, sie definieren die anderen durch geeignete Verknüpfungen:

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

Sonderverknüpfungen Bearbeiten

Einige Autoren definieren einen schwachen bis-Operator (weak until, mit W bezeichnet), der eine ähnliche Semantik wie der bis-Operator besitzt, jedoch keine Haltebedingung erforderlich ist. Manchmal ist es sinnvoll, wenn U und R mit Formeln des schwachen bis-Operators definiert werden können:

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

Wichtige Eigenschaften Bearbeiten

Es gibt zwei wichtige Klassen von Eigenschaften, die mittels linearer temporaler Logik beschrieben werden können: Sicherheit (safety), sagt aus, dass etwas Unerwünschtes nie auftritt (G  ) und Lebendigkeit (liveness), was aussagt, dass etwas Erwünschtes immer wieder passiert (GF  oder G F ). Generell: Sicherheitseigenschaften sind solche, für die als Gegenbeispiel ein endliches Präfix ausreicht, dessen beliebige unendliche Verlängerung die Eigenschaft stets verletzt. Bei Lebendigkeitseigenschaften wiederum kann jeder beliebige endliche Präfix eines Pfads noch zu einem unendlichen Pfad verlängert werden, welcher die Formel erfüllt.

Äquivalenzumformungen Bearbeiten

Folgende Äquivalenzumformungen sind möglich:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Beziehungen zu anderen Logiken Bearbeiten

Lineare temporale Logik (LTL) ist eine Teilmenge der Computation Tree Logic* (CTL*), besitzt eine gemeinsame Teilmenge mit CTL ist jedoch weder Ober- noch Untermenge von CTL.

LTL ist äquivalent zur Prädikatenlogik mit einstelligen Relationssymbolen   und der kleiner-Relation  , wie auch stern-freien regulären Ausdrücken.

Automatentheoretisches LTL Model Checking Bearbeiten

Ein wichtiger Weg zur Modellprüfung besteht darin, die gewünschten Eigenschaften (wie oben beschrieben) mit LTL-Operatoren auszudrücken und dann zu überprüfen, ob das Modell diese Eigenschaften erfüllt.

Ferner ist es möglich, einen zum Modell äquivalenten Büchi-Automaten zu erstellen und einen, der zur Negation der zu prüfenden Eigenschaft äquivalent ist. Der Schnitt der beiden nicht-deterministischen Büchi-Automaten ist leer, wenn das Modell die Eigenschaften erfüllt.

Siehe auch Bearbeiten

Weblinks Bearbeiten

Commons: Lineare temporale Logik – Sammlung von Bildern, Videos und Audiodateien