Chapter 3 - LTL Model Checking Flashcards
LTL
Linear Temporal Logic
also <i>Linear-time Temporal Logic</i>
LTL Syntax
Be AP a set of atomic propositions.
The set of valid LTL formulas over AP is inductively defined as follow
- p aus AP is an LTL formula
- if psi is an LTL formula, so is not psi
- if psi and fi are LTL formulas, so is psi || fi
- if psi is an LTL formula so is X psi, G psi and F psi
- if psi and fi are LTL formulas, so is psi U fi
A formula without X, G, F or U is a state formula.
Trace of a path π = s0 s1 s2 … of M…
.. is an infinite sequence of labels of the states of π:
- trace(π) = L(s0)L(s1)…
- trace(π) ∈ (2^AP)^ω, since L(si) ∈ 2^AP where L(s) = (s, {set of APs true in the state s})
Trace language of M…
L(M) = { trace(π) | trace(π), π is a path of M}
Language accepted by φ…
…the set of all traces satisfying φ.
L(φ) = { trace(π) | π is a path of some Kripke structure and π ⊨ φ }
When does a KS M satisfy an LTL formula φ?
… iff for all paths π of M, π ⊨ φ holds.
Characterizing properties
A LTL formula can describe a SAFETY or LIVENESS property.
> safety: nothing bad ever happens
> liveness: eventually sth good will happen
when is φ a safety formula?
φ is a safety formula iff every path π such that π ⊭ φ has a prefixπ[0..k] such that for all infinite extensions π′ of π[0..k], π′ ⊭ φ holds
when is φ a liveness formula?
φ is a liveness formula iff every finite sequence of states s0, …, sk can be extended to an infinite path π such that π φ⊨ φ holds (or such that it does not hold)
Expressiveness: LTL vsCTL
• Two temporal logics L and L′ are equally expressive iff the following holds:
- ∀φ ∈ L ∃ψ ∈ L’: ∀M : M ⊨φ ⇔ M ⊨ψ
- ∀ψ ∈ L’ ∃φ ∈ L : ∀M : M ⊨φ ⇔ M ⊨ψ
• If just 1. holds then L is less expressive than L’
Büchi Automata…
Automata that accepts infinite words.
What does a LTL formula φ describe in a KS?
…describes a set of valid (infinite) traces.
Language of φ L(φ)?
…is the set of infinite traces in a KS described by a LTL formula φ.
Language of M, L(M)?
is defined by all the infinite traces of a KS M.
M ⊨ φ ⇔ L(M) ⊆ L(φ) ??
If M ⊨ φ holds for a KS M, then all traces of M must be in the set of valid traces described by φ.