Zurück zur Übersicht

Begriff

Linear Temporal Logic (LTL)

Computer Science Verification S4
2 Quellen 0 Lernpfade 1 Backlink enriched

Warum wichtig?

Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.

Du willst beweisen, dass dein Programm in Zukunft keinen Mist baut. Die Zukunft ist aber ungewiss (User klickt A oder B). LTL geht davon aus, dass die Zeit ein einzelner Strahl ist (Linear). Eine "mögliche Ausführung" (Trace): $s_0 \to s_1 \to s_2 \dots$ Wir stellen Regeln auf, die für jeden möglichen Zeitstrahl gelten müssen. "Auf jedem Pfad gilt: Wenn ich den Knopf drücke, geht irgendwann das Licht an." LTL ist die Sprache der "Safety Engineers".

Merksatz: Eine modale Temporallogik, bei der die Zeit als eine lineare Abfolge von Zuständen betrachtet wird und Aussagen über unendliche Ausführungspfade eines Systems getroffen werden.


Quick-Check

  1. Unterschied zu CTL?
    LTL schaut auf "Pfade". CTL schaut auf den "Baum" (Verzweigungen). In LTL kann man nicht sagen: "Es ist möglich, dass X passiert". Man kann nur sagen "X passiert immer/nie". Für Possibility ("kann passieren, muss aber nicht") braucht man CTL.
  2. Was ist "Past LTL"?
    Erweiterung um Vergangenheit (Yesterday, Once). Macht die Logik für Menschen lesbarer, aber mathematisch nicht mächtiger (Gabbay's Theorem).
  3. Warum Linear?
    Weil wir uns immer nur einen Ablauf ansehen. Wenn der Fehler auftritt, ist es eine konkrete Geschichte ("Klick -> Crash").