lecture iii: linear temporal logic - michtom school of … › ... › ltl-artale-slides.pdf ·...

44
F ORMAL M ETHODS L ECTURE III: L INEAR T EMPORAL L OGIC Alessandro Artale Faculty of Computer Science – Free University of Bolzano [email protected] http://www.inf.unibz.it/artale/ Some material (text, figures) displayed in these slides is courtesy of: M. Benerecetti, A. Cimatti, M. Fisher, F. Giunchiglia, M. Pistore, M. Roveri, R.Sebastiani. Alessandro Artale (FM – First Semester – 2007/2008) – p. 1/39

Upload: others

Post on 24-Jun-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

FORMAL M ETHODS

L ECTURE III: L INEAR TEMPORAL L OGIC

Alessandro Artale

Faculty of Computer Science – Free University of Bolzano

[email protected] http://www.inf.unibz.it/∼artale/

Some material (text, figures) displayed in these slides is courtesy of:

M. Benerecetti, A. Cimatti, M. Fisher, F. Giunchiglia, M. Pistore, M. Roveri, R.Sebastiani.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 1/39

Page 2: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Summary of Lecture III

Introducing Temporal Logics.

Intuitions beyond Linear Temporal Logic.

LTL: Syntax and Semantics.

LTL in Computer Science.

LTL Interpreted over Kripke Models.

LTL and Model Checking: Intuitions.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 2/39

Page 3: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

An Introduction to Temporal Logics

In classical logic, formulae are evaluated within a singlefixed world.

For example, a proposition such as “it is Monday” must beeither true or false.

Propositions are then combined using constructs such as‘∧’, ‘¬’, etc.

But, most (not just computational) systems are dynamic.

In temporal logics, evaluation takes place within a set ofworlds. Thus, “it is Monday” may be satisfied in someworlds, but not in others.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 3/39

Page 4: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

An Introduction to Temporal Logics (Cont.)

The set of worlds correspond to moments in time.

How we navigate between these worlds depends on ourparticular view of time.

The particular model of time is captured by a temporalaccessibility relation between worlds.

Essentially, temporal logic extends classical propositionallogic with a set of temporal operators that navigate betweenworlds using this accessibility relation.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 4/39

Page 5: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Typical Models of Time

Alessandro Artale (FM – First Semester – 2007/2008) – p. 5/39

Page 6: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Summary

Introducing Temporal Logics.

Intuitions beyond Linear Temporal Logic.

LTL: Syntax and Semantics.

LTL in Computer Science.

LTL Interpreted over Kripke Models.

LTL and Model Checking: Intuitions.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 6/39

Page 7: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Linear Temporal Logic (LTL): Intuitions

Consider a simple temporal logic (LTL) where theaccessibility relation characterises a discrete, linear modelisomorphic to the Natural Numbers.

Typical temporal operators used arekϕ ϕ is true in the next moment in time

ϕ ϕ is true in all future moments♦ϕ ϕ is true in some future momentϕU ψ ϕ is true until ψ is true

Examples:

((¬passport∨¬ticket) ⇒ k¬board_ f light)

Alessandro Artale (FM – First Semester – 2007/2008) – p. 7/39

Page 8: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Computational Example

(requested⇒ ♦received)

(received⇒ kprocessed)

(processed⇒ ♦ done)

From the above we should be able to infer that it is not thecase that the system continually re-sends a request, butnever sees it completed ( ¬done); i.e. the statement

requested∧ ¬done

should be inconsistent.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 8/39

Page 9: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Summary

Introducing Temporal Logics.

Intuitions beyond Linear Temporal Logic.

LTL: Syntax and Semantics.

LTL in Computer Science.

LTL Interpreted over Kripke Models.

LTL and Model Checking: Intuitions.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 9/39

Page 10: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

LTL: Syntax

Countable set Σ of atomic propositions: p,q, . . . the set FORM

of formulas is:ϕ,ψ → p | (atomic proposition)

⊤ | (true)⊥ | (false)¬ϕ | (complement)ϕ∧ψ | (conjunction)ϕ∨ψ | (disjunction)

kϕ | (next time)ϕ | (always)

♦ϕ | (sometime)ϕU ψ (until)

Alessandro Artale (FM – First Semester – 2007/2008) – p. 10/39

Page 11: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Temporal Semantics

We interpret our temporal formulae in a discrete, linearmodel of time. Formally, this structure is represented by

M = 〈N, I 〉

where• I : N 7→ 2Σ

maps each Natural number (representing a moment intime) to a set of propositions.

The semantics of a temporal formula is provided by thesatisfactionrelation:

|= : (M ×N×FORM) →{true, false}

Alessandro Artale (FM – First Semester – 2007/2008) – p. 11/39

Page 12: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Semantics: The Propositional Aspect

We start by defining when an atomic proposition is true at atime point “i”

〈M , i〉 |= p iff p∈ I (i) (for p∈ Σ)

The semantics for the classical operators is as expected:〈M , i〉 |= ¬ϕ iff 〈M , i〉 6|= ϕ

〈M , i〉 |= ϕ∧ψ iff 〈M , i〉 |= ϕ and〈M , i〉 |= ψ

〈M , i〉 |= ϕ∨ψ iff 〈M , i〉 |= ϕ or 〈M , i〉 |= ψ

〈M , i〉 |= ϕ ⇒ ψ iff if 〈M , i〉 |= ϕ then 〈M , i〉 |= ψ

M , i |= ⊤

M , i 6|= ⊥Alessandro Artale (FM – First Semester – 2007/2008) – p. 12/39

Page 13: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Temporal Operators: ‘next’

〈M , i〉 |= kϕ iff 〈M , i +1〉 |= ϕ

This operator provides a constraint on the next moment intime.

Examples:

(sad∧ ¬rich) ⇒ ksad

((x = 0) ∧ add3) ⇒ k(x = 3)

Alessandro Artale (FM – First Semester – 2007/2008) – p. 13/39

Page 14: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Temporal Operators: ‘sometime’

〈M , i〉 |=♦ϕ iff there existsj. ( j ≥ i) ∧ 〈M , j〉 |= ϕ

N.B. while we can be sure that ϕ will be true either now or inthe future, we can not be sure exactly when it will be true.

Examples:

(¬resigned∧ sad) ⇒ ♦famous

sad ⇒ ♦happy

send ⇒ ♦receive

Alessandro Artale (FM – First Semester – 2007/2008) – p. 14/39

Page 15: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Temporal Operators: ‘always’

〈M , i〉 |= ϕ iff for all j. if ( j ≥ i) then〈M , j〉 |= ϕ

This can represent invariant properties.

Examples:

lottery-win ⇒ rich

Alessandro Artale (FM – First Semester – 2007/2008) – p. 15/39

Page 16: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Temporal Operators: ‘until’

〈M , i〉 |= ϕUψ iff there existsj. ( j ≥ i) ∧ 〈M , j〉 |= ψ ∧

for all k. (i ≤ k < j) ⇒ 〈M , k〉 |= ϕ

Examples:

start_lecture ⇒ talkU end_lecture

born ⇒ aliveU dead

request ⇒ replyU acknowledgement

Alessandro Artale (FM – First Semester – 2007/2008) – p. 16/39

Page 17: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Satisfiability and Validity

A structure M = 〈N, I 〉 is a model of φ, if

〈M , i〉 |= φ, for some i ∈ N.

Similarly as in classical logic, an LTL formula φ can besatisfiable, unsatisfiableor valid. A formula φ is:

Satisfiable, if there is model for φ.

Unsatisfiable, if φ is not satisfiable.

Valid (i.e., a Tautology):|= φ iff ∀M ,∀i ∈ N. 〈M , i〉 |= φ.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 17/39

Page 18: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Entailment and Equivalence

Similarly as in classical logic we can define the notions ofentailment and equivalencebetween two LTL formulas

Entailment.φ |= ψ iff ∀M ,∀i ∈ N.〈M , i〉 |= φ ⇒ 〈M , i〉 |= ψEquivalence.φ ≡ ψ iff ∀M ,∀i ∈ N.〈M , i〉 |= φ ⇔ 〈M , i〉 |= ψ

Alessandro Artale (FM – First Semester – 2007/2008) – p. 18/39

Page 19: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Equivalences in LTL

The temporal operators and ♦ are duals

¬ ϕ ≡♦¬ϕ

♦ (and then ) can be rewritten in terms of U

♦ϕ ≡⊤U ϕ

All the temporal operators can be rewritten using the “Until”and “Next” operators

Alessandro Artale (FM – First Semester – 2007/2008) – p. 19/39

Page 20: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Equivalences in LTL (Cont.)

♦ distributes over ∨ while distributes over ∧

♦(ϕ∨ψ) ≡♦ϕ∨♦ψ

(ϕ∧ψ) ≡ ϕ∧ ψ

The following equivalences are useful for generatingformulas in Negated Normal Form.

¬ kϕ ≡ k¬ϕ

¬(ϕU ψ) ≡ (¬ψU (¬ϕ∧¬ψ))∨ ¬ψ

Alessandro Artale (FM – First Semester – 2007/2008) – p. 20/39

Page 21: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

LTL Vs. FOL

Linear Temporal Logic can be thought of as

a specific decidable (PSPACE-complete) fragmentof classical first-order logic

We just map each proposition to a unary predicate in FOL.In general, the following satisfiability preserving mapping( ) holds:

p p(t)kp p(t +1)

♦p ∃t ′. (t ′ ≥ t) ∧ p(t ′)

p ∀t ′. (t ′ ≥ t) ⇒ p(t ′)

Alessandro Artale (FM – First Semester – 2007/2008) – p. 21/39

Page 22: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Summary

Introducing Temporal Logics.

Intuitions beyond Linear Temporal Logic.

LTL: Syntax and Semantics.

LTL in Computer Science.

LTL Interpreted over Kripke Models.

LTL and Model Checking: Intuitions.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 22/39

Page 23: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Temporal Logic in Computer Science

Temporal logic was originally developed in order torepresent tense in natural language.

Within Computer Science, it has achieved a significant rolein the formal specification and verification of concurrentreactive systems.

Much of this popularity has been achieved as a number ofuseful concepts can be formally, and concisely, specifiedusing temporal logics, e.g.

• safety properties• liveness properties• fairness properties

Alessandro Artale (FM – First Semester – 2007/2008) – p. 23/39

Page 24: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Safety Properties

Safety:

“something bad will not happen”

Typical examples:

¬(reactor_temp> 1000)

¬(one_way∧ kother_way)

¬((x = 0)∧ k k k(y = z/x))

and so on.....

Usually: ¬....

Alessandro Artale (FM – First Semester – 2007/2008) – p. 24/39

Page 25: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Liveness Properties

Liveness:

“something good will happen”

Typical examples:

♦rich

♦(x > 5)

(start⇒♦terminate)

and so on.....

Usually: ♦....

Alessandro Artale (FM – First Semester – 2007/2008) – p. 25/39

Page 26: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Fairness Properties

Often only really useful when scheduling processes,responding to messages, etc.

Strong Fairness:

“if something is attempted/requested infinitelyoften, then it will be successful/allocated infinitelyoften”

Typical example:

♦ready ⇒ ♦run

Alessandro Artale (FM – First Semester – 2007/2008) – p. 26/39

Page 27: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Summary

Introducing Temporal Logics.

Intuitions beyond Linear Temporal Logic.

LTL: Syntax and Semantics.

LTL in Computer Science.

LTL Interpreted over Kripke Models.

LTL and Model Checking: Intuitions.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 27/39

Page 28: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Kripke Models and Linear Structures

Consider the following Kripke structure:

done!done

Its paths/computations can be seen as a set of linearstructures (computation tree):

done done done!done

!done

!done

!done

donedone

done!done !done

!done !done !done

!done

.....done

done

done done done

done

!done

!done

!done

!done

Alessandro Artale (FM – First Semester – 2007/2008) – p. 28/39

Page 29: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Path-Semantics for LTL

LTL formulae are evaluated over the set N of NaturalNumbers.

Paths in Kripke structures are infinite and linearsequences of states. Thus, they are isomorphic to theNatural Numbers:π = s0 → s1 → ·· · → si → si+1 → ·· ·

We want to interpret LTL formulas over Kripkestructures.

Given a Kripke structure, K M = (S, I ,R,AP,L), a path πin K M , a state s∈ S, and an LTL formula φ, we define:1. 〈K M ,π〉 |= φ, and then

2. 〈K M ,s〉 |= φBased on the LTL semantics over the Natural Numbers.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 29/39

Page 30: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Path-Semantics for LTL (Cont.)

We first extract an LTL model, M π = (π, Iπ), from theKripke structure K M . M π = (π, Iπ) is such that:• π is a path in K M• Iπ is the restriction of L to states in π:

∀s∈ π and ∀p∈ AP, p∈ Iπ(s) iff p∈ L(s)

Given a Kripke structure, K M = (S, I ,R,AP,L), a path πin K M , a state s∈ S, and an LTL formula φ:1. 〈K M ,π〉 |= φ iff 〈M π,s0〉 |= φ

with s0 initial state of π2. 〈K M ,s〉 |= φ iff 〈K M ,π〉 |= φ

for all paths π starting at s.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 30/39

Page 31: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

LTL Model Checking Definition

Given a Kripke structure, K M = (S, I ,R,AP,L), the LTL modelchecking problem K M |= φ:

Check if 〈K M ,s0〉 |= φ, for every s0 ∈ I initial state of theKripke structure K M .

Alessandro Artale (FM – First Semester – 2007/2008) – p. 31/39

Page 32: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Summary

Introducing Temporal Logics.

Intuitions beyond Linear Temporal Logic.

LTL: Syntax and Semantics.

LTL in Computer Science.

LTL Interpreted over Kripke Models.

LTL and Model Checking: Intuitions.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 32/39

Page 33: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Example 1: mutual exclusion (safety)

N1, N2

turn=0

turn=1

C1, T2

turn=1

T1, T2

T1, N2

turn=1

C1, N2

turn=1

T1, T2

turn=2

N = noncritical, T = trying, C = critical User 1 User 2

N1, T2

turn=2

T1, C2

turn=2

turn=2

N1, C2

K M |= ¬(C1∧C2) ?

Alessandro Artale (FM – First Semester – 2007/2008) – p. 33/39

Page 34: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Example 1: mutual exclusion (safety)

N1, N2

turn=0

turn=1

C1, T2

turn=1

T1, T2

T1, N2

turn=1

C1, N2

turn=1

T1, T2

turn=2

N = noncritical, T = trying, C = critical User 1 User 2

N1, T2

turn=2

T1, C2

turn=2

turn=2

N1, C2

K M |= ¬(C1∧C2) ?

YES: There is no reachable state in which (C1∧C2) holds!Alessandro Artale (FM – First Semester – 2007/2008) – p. 33/39

Page 35: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Example 2: mutual exclusion (liveness)

N1, N2

turn=0

turn=1

C1, T2

turn=1

T1, T2

T1, N2

turn=1

C1, N2

turn=1

T1, T2

turn=2

N = noncritical, T = trying, C = critical User 1 User 2

N1, T2

turn=2

T1, C2

turn=2

turn=2

N1, C2

K M |=♦C1 ?

Alessandro Artale (FM – First Semester – 2007/2008) – p. 34/39

Page 36: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Example 2: mutual exclusion (liveness)

N1, N2

turn=0

turn=1

C1, T2

turn=1

T1, T2

T1, N2

turn=1

C1, N2

turn=1

T1, T2

turn=2

N = noncritical, T = trying, C = critical User 1 User 2

N1, T2

turn=2

T1, C2

turn=2

turn=2

N1, C2

K M |=♦C1 ?

NO: the blue cyclic path is a counterexample!Alessandro Artale (FM – First Semester – 2007/2008) – p. 34/39

Page 37: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Example 3: mutual exclusion (liveness)

N1, N2

turn=0

turn=1

C1, T2

turn=1

T1, T2

T1, N2

turn=1

C1, N2

turn=1

T1, T2

turn=2

N = noncritical, T = trying, C = critical User 1 User 2

N1, T2

turn=2

T1, C2

turn=2

turn=2

N1, C2

K M |= (T1 ⇒♦C1) ?

Alessandro Artale (FM – First Semester – 2007/2008) – p. 35/39

Page 38: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Example 3: mutual exclusion (liveness)

N1, N2

turn=0

turn=1

C1, T2

turn=1

T1, T2

T1, N2

turn=1

C1, N2

turn=1

T1, T2

turn=2

N = noncritical, T = trying, C = critical User 1 User 2

N1, T2

turn=2

T1, C2

turn=2

turn=2

N1, C2

K M |= (T1 ⇒♦C1) ?

YES: in every path if T1 holds afterwards C1 holds!

Alessandro Artale (FM – First Semester – 2007/2008) – p. 35/39

Page 39: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Example 4: mutual exclusion (fairness)

N1, N2

turn=0

turn=1

C1, T2

turn=1

T1, T2

T1, N2

turn=1

C1, N2

turn=1

T1, T2

turn=2

N = noncritical, T = trying, C = critical User 1 User 2

N1, T2

turn=2

T1, C2

turn=2

turn=2

N1, C2

K M |= ♦C1 ?

Alessandro Artale (FM – First Semester – 2007/2008) – p. 36/39

Page 40: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Example 4: mutual exclusion (fairness)

N1, N2

turn=0

turn=1

C1, T2

turn=1

T1, T2

T1, N2

turn=1

C1, N2

turn=1

T1, T2

turn=2

N = noncritical, T = trying, C = critical User 1 User 2

N1, T2

turn=2

T1, C2

turn=2

turn=2

N1, C2

K M |= ♦C1 ?

NO: the blue cyclic path is a counterexample!

Alessandro Artale (FM – First Semester – 2007/2008) – p. 36/39

Page 41: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Example 4: mutual exclusion (strong fairness)

N1, N2

turn=0

turn=1

C1, T2

turn=1

T1, T2

T1, N2

turn=1

C1, N2

turn=1

T1, T2

turn=2

N = noncritical, T = trying, C = critical User 1 User 2

N1, T2

turn=2

T1, C2

turn=2

turn=2

N1, C2

K M |= ♦T1 ⇒ ♦C1 ?

Alessandro Artale (FM – First Semester – 2007/2008) – p. 37/39

Page 42: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Example 4: mutual exclusion (strong fairness)

N1, N2

turn=0

turn=1

C1, T2

turn=1

T1, T2

T1, N2

turn=1

C1, N2

turn=1

T1, T2

turn=2

N = noncritical, T = trying, C = critical User 1 User 2

N1, T2

turn=2

T1, C2

turn=2

turn=2

N1, C2

K M |= ♦T1 ⇒ ♦C1 ?

YES: every path which visits T1 infinitely often also visits C1

infinitely often!Alessandro Artale (FM – First Semester – 2007/2008) – p. 37/39

Page 43: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

LTL Alternative Notation

Alternative notations are used for temporal operators.

♦ F sometime in the Future G Globally in the future

k X neXtime

Alessandro Artale (FM – First Semester – 2007/2008) – p. 38/39

Page 44: LECTURE III: LINEAR TEMPORAL LOGIC - Michtom School of … › ... › LTL-Artale-Slides.pdf · 2008-10-17 · Summary of Lecture III Introducing Temporal Logics. Intuitions beyond

Summary of Lecture III

Introducing Temporal Logics.

Intuitions beyond Linear Temporal Logic.

LTL: Syntax and Semantics.

LTL in Computer Science.

LTL Interpreted over Kripke Models.

LTL and Model Checking: Intuitions.

Alessandro Artale (FM – First Semester – 2007/2008) – p. 39/39