「‍」 Lingenic

Linear Temporal Logic

(⤓.md ◇.md); γ ≜ [2026-07-17T120407.600, 2026-07-17T135416.643] ∧ |γ| = 3

Linear Temporal Logic

Origin. Pnueli introduced LTL for program verification (1977). Temporal operators over infinite sequences. Linear time: one future path. Foundation for model checking (Vardi, Wolper). Tools: SPIN, NuSMV, SPOT. Turing Award to Pnueli (1996).

Models. Properties of infinite traces. System execution: infinite sequence of states. LTL: properties that hold along any such sequence. Safety: nothing bad happens (G¬error). Liveness: something good happens (GF response). Fairness expressible.

Formalism.

Syntax: φ ::= p | ¬φ | φ ∧ ψ | Xφ | φUψ | Fφ | Gφ

Semantics (over infinite word w = w₀w₁w₂...):

  • w, i ⊨ p iff p ∈ wᵢ
  • w, i ⊨ Xφ iff w, i+1 ⊨ φ (next)
  • w, i ⊨ Fφ iff ∃j≥i. w, j ⊨ φ (finally/eventually)
  • w, i ⊨ Gφ iff ∀j≥i. w, j ⊨ φ (globally/always)
  • w, i ⊨ φUψ iff ∃j≥i. (w, j ⊨ ψ ∧ ∀k. i≤k<j → w, k ⊨ φ) (until)

Derived operators:

  • Fφ = ⊤Uφ
  • Gφ = ¬F¬φ
  • φRψ = ¬(¬φU¬ψ) (release)
  • φWψ = (φUψ) ∨ Gφ (weak until)

Common patterns:

  • Response: G(request → F response)
  • Precedence: (¬q)U p ∨ G¬q
  • Invariance: Gφ
  • Recurrence: GFφ
  • Persistence: FGφ

Automata connection: LTL formula → Büchi automaton. Model checking: product with system, check emptiness.

Symbols.

SymbolUnicodeNameMeaning
XNextNext state
FFinallyEventually
GGloballyAlways
UUntilStrong until
RReleaseDual of until
WWeak untilUntil or always
ωU+03C9OmegaInfinite sequence

Metatheory. LTL satisfiability is PSPACE-complete. Model checking is PSPACE in formula, NLOGSPACE in model. Expressively equivalent to first-order logic over (ω, <). Star-free regular ω-languages. Büchi automata: doubly exponential translation. Complete axiomatization exists.

Applies to. Hardware verification. Software model checking (SPIN). Reactive systems. Protocol verification. Requirements specification. Runtime verification. Robotics (mission specification).

Limitations. Linear time: no branching choices. Cannot express "there exists a path." Doubly-exponential automata translation. Some properties need CTL (reset, all paths). Past operators sometimes needed (PLTL). Finite traces require adaptation (LTLf).

© 2026 Lingenic LLC