linear temporal logic (ltl)...overview overview5.2 introduction modelling parallel systems linear...

301
Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics of LTL automata-based LTL model checking ←− ←− ←− complexity of LTL model checking Computation-Tree Logic Equivalences and Abstraction 1 / 527

Upload: others

Post on 08-Sep-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Overview overview5.2

Introduction

Modelling parallel systems

Linear Time Properties

Regular Properties

Linear Temporal Logic (LTL)

syntax and semantics of LTLautomata-based LTL model checking ←−←−←−complexity of LTL model checking

Computation-Tree Logic

Equivalences and Abstraction

1 / 527

Page 2: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL model checking problem ltlmc3.2-19

2 / 527

Page 3: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL model checking problem ltlmc3.2-19

given: finite transition system TTT over APAPAP(without terminal states)LTL-formula ϕϕϕ over APAPAP

question: does T |= ϕT |= ϕT |= ϕ hold ?

3/527

Page 4: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL model checking problem ltlmc3.2-19

given: finite transition system TTT over APAPAP(without terminal states)LTL-formula ϕϕϕ over APAPAP

question: does T |= ϕT |= ϕT |= ϕ hold ?

basic idea: try to refute T |= ϕT |= ϕT |= ϕ

4 / 527

Page 5: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL model checking problem ltlmc3.2-19

given: finite transition system TTT over APAPAP(without terminal states)LTL-formula ϕϕϕ over APAPAP

question: does T |= ϕT |= ϕT |= ϕ hold ?

basic idea: try to refute T |= ϕT |= ϕT |= ϕ by searchingfor a path πππ in TTT s.t.

π �|= ϕπ �|= ϕπ �|= ϕ

5 / 527

Page 6: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL model checking problem ltlmc3.2-19

given: finite transition system TTT over APAPAP(without terminal states)LTL-formula ϕϕϕ over APAPAP

question: does T |= ϕT |= ϕT |= ϕ hold ?

basic idea: try to refute T |= ϕT |= ϕT |= ϕ by searchingfor a path πππ in TTT s.t.

π �|= ϕπ �|= ϕπ �|= ϕ, i.e., π |= ¬ϕπ |= ¬ϕπ |= ¬ϕ

6 / 527

Page 7: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

The LTL model checking problem ltlmc3.2-19a

given: finite transition system TTT over APAPAPLTL-formula ϕϕϕ over APAPAP

question: does T |= ϕT |= ϕT |= ϕ hold ?

1. construct an NBA AAA for Words(¬ϕ)Words(¬ϕ)Words(¬ϕ)

7 / 527

Page 8: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

The LTL model checking problem ltlmc3.2-19a

given: finite transition system TTT over APAPAPLTL-formula ϕϕϕ over APAPAP

question: does T |= ϕT |= ϕT |= ϕ hold ?

1. construct an NBA AAA for Words(¬ϕ)Words(¬ϕ)Words(¬ϕ)2. search a path πππ in TTT with

trace(π) ∈Words(¬ϕ)trace(π) ∈ Words(¬ϕ)trace(π) ∈ Words(¬ϕ)

8 / 527

Page 9: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

The LTL model checking problem ltlmc3.2-19a

given: finite transition system TTT over APAPAPLTL-formula ϕϕϕ over APAPAP

question: does T |= ϕT |= ϕT |= ϕ hold ?

1. construct an NBA AAA for Words(¬ϕ)Words(¬ϕ)Words(¬ϕ)2. search a path πππ in TTT with

trace(π) ∈Words(¬ϕ)trace(π) ∈ Words(¬ϕ)trace(π) ∈ Words(¬ϕ) = Lω(A)= Lω(A)= Lω(A)

9 / 527

Page 10: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

The LTL model checking problem ltlmc3.2-19a

given: finite transition system TTT over APAPAPLTL-formula ϕϕϕ over APAPAP

question: does T |= ϕT |= ϕT |= ϕ hold ?

1. construct an NBA AAA for Words(¬ϕ)Words(¬ϕ)Words(¬ϕ)2. search a path πππ in TTT with

trace(π) ∈Words(¬ϕ)trace(π) ∈ Words(¬ϕ)trace(π) ∈ Words(¬ϕ) = Lω(A)= Lω(A)= Lω(A)↑↑↑construct the product-TS T ⊗AT ⊗AT ⊗Asearch a path in the product that meets

the acceptance condition of AAA

10 / 527

Page 11: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Automata-based LTL model checking ltlmc3.2-18

finite transitionsystem TTT LTL formula ϕϕϕ

LTL model checking

does T |= ϕT |= ϕT |= ϕ hold ?

yes no11 / 527

Page 12: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Automata-based LTL model checking ltlmc3.2-18

finite transitionsystem TTT LTL formula ϕϕϕ

NBA AAA for ¬ϕ¬ϕ¬ϕ“bad behaviors”

LTL model checking

does T |= ϕT |= ϕT |= ϕ hold ?

yes no12 / 527

Page 13: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Automata-based LTL model checking ltlmc3.2-18

finite transitionsystem TTT LTL formula ϕϕϕ

NBA AAA for ¬ϕ¬ϕ¬ϕ“bad behaviors”

LTL model checking

via persistence checkingT ⊗ A |=T ⊗A |=T ⊗A |= “♦�♦�♦� no final state” ?

yes no13 / 527

Page 14: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Automata-based LTL model checking ltlmc3.2-18

finite transitionsystem TTT LTL formula ϕϕϕ

NBA AAA for ¬ϕ¬ϕ¬ϕ“bad behaviors”

LTL model checking

via persistence checkingT ⊗ A |=T ⊗A |=T ⊗A |= “♦�♦�♦� no final state” ?

yes no +++ error indication14 / 527

Page 15: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety and LTL model checking ltlmc3.2-20

15 / 527

Page 16: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety and LTL model checking ltlmc3.2-20

safety property EEE LTL-formula ϕϕϕ

16 / 527

Page 17: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety and LTL model checking ltlmc3.2-20

safety property EEE LTL-formula ϕϕϕ

NFA for thebad prefixes for EEEL(A) ⊆ (2AP)+L(A) ⊆ (2AP)+L(A) ⊆ (2AP)+

17 / 527

Page 18: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety and LTL model checking ltlmc3.2-20

safety property EEE LTL-formula ϕϕϕ

NFA for thebad prefixes for EEEL(A) ⊆ (2AP)+L(A) ⊆ (2AP)+L(A) ⊆ (2AP)+

NBA for the“bad behaviors”

Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)

18 / 527

Page 19: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety and LTL model checking ltlmc3.2-20

safety property EEE LTL-formula ϕϕϕ

NFA for thebad prefixes for EEEL(A) ⊆ (2AP)+L(A) ⊆ (2AP)+L(A) ⊆ (2AP)+

NBA for the“bad behaviors”

Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)

Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅

19 / 527

Page 20: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety and LTL model checking ltlmc3.2-20

safety property EEE LTL-formula ϕϕϕ

NFA for thebad prefixes for EEEL(A) ⊆ (2AP)+L(A) ⊆ (2AP)+L(A) ⊆ (2AP)+

NBA for the“bad behaviors”

Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)

Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅ Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅

20 / 527

Page 21: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety and LTL model checking ltlmc3.2-20

safety property EEE LTL-formula ϕϕϕ

NFA for thebad prefixes for EEEL(A) ⊆ (2AP)+L(A) ⊆ (2AP)+L(A) ⊆ (2AP)+

NBA for the“bad behaviors”

Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)

Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅ Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅

invariant checkingin the productT ⊗A |= �¬FT ⊗A |= �¬FT ⊗A |= �¬F ?

21/527

Page 22: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety and LTL model checking ltlmc3.2-20

safety property EEE LTL-formula ϕϕϕ

NFA for thebad prefixes for EEEL(A) ⊆ (2AP)+L(A) ⊆ (2AP)+L(A) ⊆ (2AP)+

NBA for the“bad behaviors”

Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)

Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅ Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅

invariant checkingin the productT ⊗A |= �¬FT ⊗A |= �¬FT ⊗A |= �¬F ?

persistence checkingin the productT ⊗A |= ♦�¬FT ⊗A |= ♦�¬FT ⊗A |= ♦�¬F ?

22/527

Page 23: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety and LTL model checking ltlmc3.2-20

safety property EEE LTL-formula ϕϕϕ

NFA for thebad prefixes for EEEL(A) ⊆ (2AP)+L(A) ⊆ (2AP)+L(A) ⊆ (2AP)+

NBA for the“bad behaviors”

Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)

Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅ Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅

invariant checkingin the productT ⊗A |= �¬FT ⊗A |= �¬FT ⊗A |= �¬F ?

persistence checkingin the productT ⊗A |= ♦�¬FT ⊗A |= ♦�¬FT ⊗A |= ♦�¬F ?

error indication:π ∈ Pathsfin(T )π ∈ Pathsfin(T )π ∈ Pathsfin(T )

s.t. trace(π) ∈ L(A)trace(π) ∈ L(A)trace(π) ∈ L(A)23 / 527

Page 24: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety and LTL model checking ltlmc3.2-20

safety property EEE LTL-formula ϕϕϕ

NFA for thebad prefixes for EEEL(A) ⊆ (2AP)+L(A) ⊆ (2AP)+L(A) ⊆ (2AP)+

NBA for the“bad behaviors”

Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)Lω(A) = Words(¬ϕ)

Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅ Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅

invariant checkingin the productT ⊗A |= �¬FT ⊗A |= �¬FT ⊗A |= �¬F ?

persistence checkingin the productT ⊗A |= ♦�¬FT ⊗A |= ♦�¬FT ⊗A |= ♦�¬F ?

error indication:π ∈ Pathsfin(T )π ∈ Pathsfin(T )π ∈ Pathsfin(T )

s.t. trace(π) ∈ L(A)trace(π) ∈ L(A)trace(π) ∈ L(A)

error indication:prefix of a path πππ

s.t. trace(π) ∈ Lω(A)trace(π) ∈ Lω(A)trace(π) ∈ Lω(A)24 / 527

Page 25: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety vs LTL model checking ltlmc3.2-10

25 / 527

Page 26: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety vs LTL model checking ltlmc3.2-10

T |=T |=T |= safety property EEE

iff Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅

where AAA is an NFA for the bad prefixes

T |=T |=T |= LTL-formula ϕϕϕ

iff Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅

where AAA is an NBA for ¬ϕ¬ϕ¬ϕ

26 / 527

Page 27: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety vs LTL model checking ltlmc3.2-10

T |=T |=T |= safety property EEE

iff Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅

iff there is no path fragment 〈s0, q0〉 〈s1, q1〉 . . . 〈sn, qn〉〈s0, q0〉 〈s1, q1〉 . . . 〈sn, qn〉〈s0, q0〉 〈s1, q1〉 . . . 〈sn, qn〉in T ⊗ AT ⊗AT ⊗A s. t. qn ∈ Fqn ∈ Fqn ∈ F

T |=T |=T |= LTL-formula ϕϕϕ

iff Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅

iff there is no path 〈s0, q0〉 〈s1, q1〉 〈s2, q2〉 . . .〈s0, q0〉 〈s1, q1〉 〈s2, q2〉 . . .〈s0, q0〉 〈s1, q1〉 〈s2, q2〉 . . .in T ⊗ AT ⊗AT ⊗A s.t. qi ∈ Fqi ∈ Fqi ∈ F for infinitely many i ∈ Ni ∈ Ni ∈ N

27 / 527

Page 28: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety vs LTL model checking ltlmc3.2-10

T |=T |=T |= safety property EEE

iff Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅

iff there is no path fragment 〈s0, q0〉 〈s1, q1〉 . . . 〈sn, qn〉〈s0, q0〉 〈s1, q1〉 . . . 〈sn, qn〉〈s0, q0〉 〈s1, q1〉 . . . 〈sn, qn〉in T ⊗ AT ⊗AT ⊗A s. t. qn ∈ Fqn ∈ Fqn ∈ F

iff T ⊗A |= �¬FT ⊗ A |= �¬FT ⊗ A |= �¬F

T |=T |=T |= LTL-formula ϕϕϕ

iff Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅

iff there is no path 〈s0, q0〉 〈s1, q1〉 〈s2, q2〉 . . .〈s0, q0〉 〈s1, q1〉 〈s2, q2〉 . . .〈s0, q0〉 〈s1, q1〉 〈s2, q2〉 . . .in T ⊗ AT ⊗AT ⊗A s.t. qi ∈ Fqi ∈ Fqi ∈ F for infinitely many i ∈ Ni ∈ Ni ∈ N

iff T ⊗A |= ♦�¬FT ⊗ A |= ♦�¬FT ⊗ A |= ♦�¬F28 / 527

Page 29: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Safety vs LTL model checking ltlmc3.2-10

T |=T |=T |= safety property EEE

iff Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅Tracesfin(T ) ∩ L(A) = ∅

iff there is no path fragment 〈s0, q0〉 〈s1, q1〉 . . . 〈sn, qn〉〈s0, q0〉 〈s1, q1〉 . . . 〈sn, qn〉〈s0, q0〉 〈s1, q1〉 . . . 〈sn, qn〉in T ⊗ AT ⊗AT ⊗A s. t. qn ∈ Fqn ∈ Fqn ∈ F

iff T ⊗A |= �¬FT ⊗ A |= �¬FT ⊗ A |= �¬F ←−←−←− invariant checking

T |=T |=T |= LTL-formula ϕϕϕ

iff Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅Traces(T ) ∩ Lω(A) = ∅

iff there is no path 〈s0, q0〉 〈s1, q1〉 〈s2, q2〉 . . .〈s0, q0〉 〈s1, q1〉 〈s2, q2〉 . . .〈s0, q0〉 〈s1, q1〉 〈s2, q2〉 . . .in T ⊗ AT ⊗AT ⊗A s.t. qi ∈ Fqi ∈ Fqi ∈ F for infinitely many i ∈ Ni ∈ Ni ∈ N

iff T ⊗A |= ♦�¬FT ⊗ A |= ♦�¬FT ⊗ A |= ♦�¬F ←−←−←− persistence checking29 / 527

Page 30: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

From LTL to NBA ltlmc3.2-thm-LTL-2-NBA

34 / 527

Page 31: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

From LTL to NBA ltlmc3.2-thm-LTL-2-NBA

For each LTL formula ϕϕϕ over APAPAP there is anNBA AAA over the alphabet 2AP2AP2AP such that

• Words(ϕ) = Lω(A)Words(ϕ) = Lω(A)Words(ϕ) = Lω(A)

• size(A) = O(exp(|ϕ|)

)size(A) = O

(exp(|ϕ|)

)size(A) = O

(exp(|ϕ|)

)

36 / 527

Page 32: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

From LTL to NBA ltlmc3.2-thm-LTL-2-NBA

For each LTL formula ϕϕϕ over APAPAP there is anNBA AAA over the alphabet 2AP2AP2AP such that

• Words(ϕ) = Lω(A)Words(ϕ) = Lω(A)Words(ϕ) = Lω(A)

• size(A) = O(exp(|ϕ|)

)size(A) = O

(exp(|ϕ|)

)size(A) = O

(exp(|ϕ|)

)proof: ... later ...

37 / 527

Page 33: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formulas ltlmc3.2-3

q0q0q0 q1q1q1 qFqFqF

truetrue ¬a¬a¬a Lω(A) =Lω(A) =Lω(A) = ?

38/527

Page 34: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formulas ltlmc3.2-3

q0q0q0 q1q1q1 qFqFqF

truetrue ¬a¬a¬a Lω(A) =Lω(A) =Lω(A) = Words(©¬a)Words(©¬a)Words(©¬a)

39 / 527

Page 35: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formulas ltlmc3.2-3

q0q0q0 q1q1q1 qFqFqF

truetrue ¬a¬a¬a Lω(A) =Lω(A) =Lω(A) = Words(©¬a)Words(©¬a)Words(©¬a)

q0q0q0 qFqFqF trueaaa

p0p0p0 pFpFpF truebbb Lω(A) =Lω(A) =Lω(A) = ?

40/527

Page 36: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formulas ltlmc3.2-3

q0q0q0 q1q1q1 qFqFqF

truetrue ¬a¬a¬a Lω(A) =Lω(A) =Lω(A) = Words(©¬a)Words(©¬a)Words(©¬a)

q0q0q0 qFqFqF trueaaa

p0p0p0 pFpFpF truebbbLω(A) =Lω(A) =Lω(A) = Words(a ∨ b)Words(a ∨ b)Words(a ∨ b)

41 / 527

Page 37: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formulas ltlmc3.2-3

q0q0q0 q1q1q1 qFqFqF

truetrue ¬a¬a¬a Lω(A) =Lω(A) =Lω(A) = Words(©¬a)Words(©¬a)Words(©¬a)

q0q0q0 qFqFqF trueaaa

p0p0p0 pFpFpF truebbbLω(A) =Lω(A) =Lω(A) = Words(a ∨ b)Words(a ∨ b)Words(a ∨ b)

qFqFqF q1q1q1

aaa

bbbbbb

Lω(A) =Lω(A) =Lω(A) = ?

42/527

Page 38: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formulas ltlmc3.2-3

q0q0q0 q1q1q1 qFqFqF

truetrue ¬a¬a¬a Lω(A) =Lω(A) =Lω(A) = Words(©¬a)Words(©¬a)Words(©¬a)

q0q0q0 qFqFqF trueaaa

p0p0p0 pFpFpF truebbbLω(A) =Lω(A) =Lω(A) = Words(a ∨ b)Words(a ∨ b)Words(a ∨ b)

qFqFqF q1q1q1

aaa

bbbbbb

Lω(A) =Lω(A) =Lω(A) = Words(�a)Words(�a)Words(�a)

43 / 527

Page 39: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formulas ltlmc3.2-4

q0q0q0 q1q1q1

¬a¬a¬a aaa

aaa

¬a¬a¬a Lω(A) =Lω(A) =Lω(A) = ?

44/527

Page 40: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formulas ltlmc3.2-4

q0q0q0 q1q1q1

¬a¬a¬a aaa

aaa

¬a¬a¬a Lω(A) =Lω(A) =Lω(A) = Words(�♦a)Words(�♦a)Words(�♦a)

45 / 527

Page 41: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formulas ltlmc3.2-4

q0q0q0 q1q1q1

¬a¬a¬a aaa

aaa

¬a¬a¬a Lω(A) =Lω(A) =Lω(A) = Words(�♦a)Words(�♦a)Words(�♦a)

q0q0q0 q1q1q1

¬a ∨ b¬a ∨ b¬a ∨ b ¬b¬b¬b

a ∧ ¬ba ∧ ¬ba ∧ ¬b

bbb Lω(A) =Lω(A) =Lω(A) = ?

46/527

Page 42: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formulas ltlmc3.2-4

q0q0q0 q1q1q1

¬a¬a¬a aaa

aaa

¬a¬a¬a Lω(A) =Lω(A) =Lω(A) = Words(�♦a)Words(�♦a)Words(�♦a)

q0q0q0 q1q1q1

¬a ∨ b¬a ∨ b¬a ∨ b ¬b¬b¬b

a ∧ ¬ba ∧ ¬ba ∧ ¬b

bbb Lω(A) =Lω(A) =Lω(A) = ?

e.g., ∅ ∅ ∅ ∅ . . . = ∅ω∅ ∅ ∅ ∅ . . . = ∅ω

∅ ∅ ∅ ∅ . . . = ∅ω

({a} {b})ω({a} {b})ω({a} {b})ω}

are accepted by AAA

47 / 527

Page 43: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formulas ltlmc3.2-4

q0q0q0 q1q1q1

¬a¬a¬a aaa

aaa

¬a¬a¬a Lω(A) =Lω(A) =Lω(A) = Words(�♦a)Words(�♦a)Words(�♦a)

q0q0q0 q1q1q1

¬a ∨ b¬a ∨ b¬a ∨ b ¬b¬b¬b

a ∧ ¬ba ∧ ¬ba ∧ ¬b

bbb Lω(A) =Lω(A) =Lω(A) = Words(�(a→ ♦b))Words(�(a→ ♦b))Words(�(a→ ♦b))

e.g., ∅ ∅ ∅ ∅ . . . = ∅ω∅ ∅ ∅ ∅ . . . = ∅ω

∅ ∅ ∅ ∅ . . . = ∅ω

({a} {b})ω({a} {b})ω({a} {b})ω}

are accepted by AAA

48 / 527

Page 44: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formula ltlmc3.2-5

q0q0q0 q1q1q1 q1q1q1

true aaa true

aaa ¬a¬a¬a

Lω(A) =Lω(A) =Lω(A) = ?

49/527

Page 45: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formula ltlmc3.2-5

q0q0q0 q1q1q1 q1q1q1

true aaa true

aaa ¬a¬a¬a

Lω(A) =Lω(A) =Lω(A) = Words(♦�a)Words(♦�a)Words(♦�a)

50 / 527

Page 46: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NBA for LTL formula ltlmc3.2-5

q0q0q0 q1q1q1 q1q1q1

true aaa true

aaa ¬a¬a¬a

Lω(A) =Lω(A) =Lω(A) = Words(♦�a)Words(♦�a)Words(♦�a)

possible runs for {a}ω{a}ω{a}ω

q0 q0 q0 q0 q0 q0 ...q0 q0 q0 q0 q0 q0 ...q0 q0 q0 q0 q0 q0 ... not acceptingq0 q1 q1 q1 q1 q1 ...q0 q1 q1 q1 q1 q1 ...q0 q1 q1 q1 q1 q1 ... acceptingq0 q0 q1 q1 q1 q1 ...q0 q0 q1 q1 q1 q1 ...q0 q0 q1 q1 q1 q1 ... acceptingq0 q0 q0 q1 q1 q1 ...q0 q0 q0 q1 q1 q1 ...q0 q0 q0 q1 q1 q1 ... accepting

...

...

...

51 / 527

Page 47: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NFA and NBA for safety properties ltlmc3.2-6

52 / 527

Page 48: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NFA and NBA for safety properties ltlmc3.2-6

Let AAA be an NFA for the language of all bad prefixesfor a safety property EEE .

53 / 527

Page 49: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NFA and NBA for safety properties ltlmc3.2-6

Let AAA be an NFA for the language of all bad prefixesfor a safety property EEE . Then:

Lω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ E

54 / 527

Page 50: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NFA and NBA for safety properties ltlmc3.2-6

Let AAA be an NFA for the language of all bad prefixesfor a safety property EEE . Then:

Lω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ E

Example: EEE === “never aaa twice in a row”

q0q0q0 q1q1q1 q2q2q2aaa

true

aaa

true55 / 527

Page 51: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NFA and NBA for safety properties ltlmc3.2-6

Let AAA be an NFA for the language of all bad prefixesfor a safety property EEE . Then:

Lω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ E = Words(¬ϕ)= Words(¬ϕ)= Words(¬ϕ)

Example: EEE === “never aaa twice in a row”

q0q0q0 q1q1q1 q2q2q2aaa

true

aaa

true

ϕ = �(a→©¬a)ϕ = �(a→©¬a)ϕ = �(a→©¬a)

56 / 527

Page 52: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NFA and NBA for safety properties ltlmc3.2-6

Let AAA be an NFA for the language of all bad prefixesfor a safety property EEE . Then:

Lω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ E = Words(¬ϕ)= Words(¬ϕ)= Words(¬ϕ)

wrong, if L(A) =L(A) =L(A) = language of minimal bad prefixes

Example: EEE === “never aaa twice in a row”

q0q0q0 q1q1q1 q2q2q2aaa

true

aaa

true

ϕ = �(a→©¬a)ϕ = �(a→©¬a)ϕ = �(a→©¬a)

57 / 527

Page 53: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NFA and NBA for safety properties ltlmc3.2-6

Let AAA be an NFA for the language of all bad prefixesfor a safety property EEE . Then:

Lω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ E = Words(¬ϕ)= Words(¬ϕ)= Words(¬ϕ)

wrong, if L(A) =L(A) =L(A) = language of minimal bad prefixes

Example: EEE === “never aaa twice in a row”

q0q0q0 q1q1q1 q2q2q2aaa

¬a¬a¬a

aaa q3q3q3

true

true Lω(A) = ∅Lω(A) = ∅Lω(A) = ∅

58 / 527

Page 54: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NFA and NBA for safety properties ltlmc3.2-6

Let AAA be an NFA for the language of all bad prefixesfor a safety property EEE . Then:

Lω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ E = Words(¬ϕ)= Words(¬ϕ)= Words(¬ϕ)

wrong, if L(A) =L(A) =L(A) = language of minimal bad prefixeseven if AAA is a non-blocking DFA

Example: EEE === “never aaa twice in a row”

q0q0q0 q1q1q1 q2q2q2aaa

¬a¬a¬a

aaa q3q3q3

true

true Lω(A) = ∅Lω(A) = ∅Lω(A) = ∅

59 / 527

Page 55: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

NFA and NBA for safety properties ltlmc3.2-6

Let AAA be an NFA for the language of all bad prefixesfor a safety property EEE . Then:

Lω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ ELω(A) = E =(2AP

)ω \ E = Words(¬ϕ)= Words(¬ϕ)= Words(¬ϕ)

wrong, if L(A) =L(A) =L(A) = language of minimal bad prefixeseven if AAA is a non-blocking DFA

Example: EEE === “never aaa twice in a row”

q0q0q0 q1q1q1 q2q2q2aaa

¬a¬a¬a

aaa

¬a¬a¬aq3q3q3

true

true Lω(A) = ∅Lω(A) = ∅Lω(A) = ∅

60 / 527

Page 56: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL model checking ltlmc3.2-2a

finite transitionsystem TTT

LTL model checking

persistence checkingT ⊗A |= ♦�¬FT ⊗ A |= ♦�¬FT ⊗ A |= ♦�¬F ?

LTL formula ϕϕϕ

NBA AAA for ¬ϕ¬ϕ¬ϕ

yes no +++ counterexample61 / 527

Page 57: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL model checking ltlmc3.2-2a

finite transitionsystem TTT

LTL model checking

persistence checkingT ⊗A |= ♦�¬FT ⊗ A |= ♦�¬FT ⊗ A |= ♦�¬F ?

LTL formula ϕϕϕ

NBA AAA for ¬ϕ¬ϕ¬ϕ

yes no +++ counterexample

later

62 / 527

Page 58: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL model checking ltlmc3.2-38

given: finite TS TTT , LTL-formula ϕϕϕquestion: does T |= ϕT |= ϕT |= ϕ hold ?

82/527

Page 59: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL model checking ltlmc3.2-38

given: finite TS TTT , LTL-formula ϕϕϕquestion: does T |= ϕT |= ϕT |= ϕ hold ?

construct an NBA AAA for ¬ϕ¬ϕ¬ϕ and the product T ⊗AT ⊗AT ⊗Acheck whether T ⊗ A |= ♦�¬FT ⊗ A |= ♦�¬FT ⊗A |= ♦�¬F ←−←−←− persistence

checkingnested DFS

84/527

Page 60: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL model checking ltlmc3.2-38

given: finite TS TTT , LTL-formula ϕϕϕquestion: does T |= ϕT |= ϕT |= ϕ hold ?

construct an NBA AAA for ¬ϕ¬ϕ¬ϕ and the product T ⊗AT ⊗AT ⊗Acheck whether T ⊗ A |= ♦�¬FT ⊗ A |= ♦�¬FT ⊗A |= ♦�¬F ←−←−←− persistence

checkingnested DFS

IF T ⊗A |= ♦�¬FT ⊗ A |= ♦�¬FT ⊗A |= ♦�¬FTHEN return “yes”ELSE compute a counterexample

〈s0, p0〉 . . . 〈sn, pn〉 . . . 〈sn, pn〉〈s0, p0〉 . . . 〈sn, pn〉 . . . 〈sn, pn〉〈s0, p0〉 . . . 〈sn, pn〉 . . . 〈sn, pn〉for T ⊗AT ⊗AT ⊗A and ♦�¬F♦�¬F♦�¬F

return “no” and s0 . . . sn . . . sns0 . . . sn . . . sns0 . . . sn . . . sn

85 / 527

Page 61: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Complexity of LTL model checking ltlmc3.2-38

given: finite TS TTT , LTL-formula ϕϕϕquestion: does T |= ϕT |= ϕT |= ϕ hold ?

����������������������������������construct an NBA AAA for ¬ϕ¬ϕ¬ϕ and the product T ⊗ AT ⊗AT ⊗Acheck whether T ⊗ A |= ♦�¬FT ⊗ A |= ♦�¬FT ⊗A |= ♦�¬F ←−←−←− persistence

checkingnested DFS

IF T ⊗A |= ♦�¬FT ⊗ A |= ♦�¬FT ⊗A |= ♦�¬FTHEN return “yes”ELSE compute a counterexample

〈s0, p0〉 . . . 〈sn, pn〉 . . . 〈sn, pn〉〈s0, p0〉 . . . 〈sn, pn〉 . . . 〈sn, pn〉〈s0, p0〉 . . . 〈sn, pn〉 . . . 〈sn, pn〉for T ⊗AT ⊗AT ⊗A and ♦�¬F♦�¬F♦�¬F

return “no” and s0 . . . sn . . . sns0 . . . sn . . . sns0 . . . sn . . . sn

time complexity: O(size(T ) · size(A))O(size(T ) · size(A))O(size(T ) · size(A))86 / 527

Page 62: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL model checking ltlmc3.2-2

finite transitionsystem TTT

LTL model checking

persistence checkingT ⊗A |= ♦�¬FT ⊗ A |= ♦�¬FT ⊗ A |= ♦�¬F ?

LTL formula ϕϕϕ

NBA AAA for ¬ϕ¬ϕ¬ϕ

yes no +++ counterexample87 / 527

Page 63: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL model checking ltlmc3.2-2

finite transitionsystem TTT

LTL model checking

persistence checkingT ⊗A |= ♦�¬FT ⊗ A |= ♦�¬FT ⊗ A |= ♦�¬F ?

LTL formula ϕϕϕ

NBA AAA for ¬ϕ¬ϕ¬ϕ

yes no +++ counterexample88 / 527

Page 64: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

From LTL to NBA ltlmc3.2-46

89 / 527

Page 65: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

From LTL to NBA ltlmc3.2-46

For each LTL formula ϕϕϕ there is an NBA AAA s.t.Lω(A) = Words(ϕ)Lω(A) = Words(ϕ)Lω(A) = Words(ϕ)

90 / 527

Page 66: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

From LTL to NBA ltlmc3.2-46

For each LTL formula ϕϕϕ there is an NBA AAA s.t.Lω(A) = Words(ϕ)Lω(A) = Words(ϕ)Lω(A) = Words(ϕ)

LTL formula ϕϕϕ

NBA AAA s.t.Lω(A) = Words(ϕ)Lω(A) = Words(ϕ)Lω(A) = Words(ϕ)

nondeterministicBuchi automaton

91 / 527

Page 67: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

From LTL to NBA ltlmc3.2-46

For each LTL formula ϕϕϕ there is an NBA AAA s.t.Lω(A) = Words(ϕ)Lω(A) = Words(ϕ)Lω(A) = Words(ϕ)

LTL formula ϕϕϕ

GNBA GGG s.t.Lω(G) = Words(ϕ)Lω(G) = Words(ϕ)Lω(G) = Words(ϕ)

NBA AAA s.t.Lω(A) = Lω(G)Lω(A) = Lω(G)Lω(A) = Lω(G)

generalized NBAseveral acceptance sets

nondeterministicBuchi automaton111 acceptance set

92 / 527

Page 68: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

From LTL to NBA ltlmc3.2-46

For each LTL formula ϕϕϕ there is an NBA AAA s.t.Lω(A) = Words(ϕ)Lω(A) = Words(ϕ)Lω(A) = Words(ϕ)

LTL formula ϕϕϕ

GNBA GGG s.t.Lω(G) = Words(ϕ)Lω(G) = Words(ϕ)Lω(G) = Words(ϕ)

NBA AAA s.t.Lω(A) = Lω(G)Lω(A) = Lω(G)Lω(A) = Lω(G)

generalized NBAkkk acceptance sets

nondeterministicBuchi automaton111 acceptance set

kkk copies of GGG

93 / 527

Page 69: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Encoding of LTL semantics in a GNBA ltlmc3.2-39

94 / 527

Page 70: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Encoding of LTL semantics in a GNBA ltlmc3.2-39

idea: encode the semantics of the operators appearingin ϕϕϕ by appropriate components of the GNBA GGG

95 / 527

Page 71: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Encoding of LTL semantics in a GNBA ltlmc3.2-39

idea: encode the semantics of the operators appearingin ϕϕϕ by appropriate components of the GNBA GGG

semantics of ... encoding

propositional logictruetruetrue, ¬¬¬, ∧∧∧next©©©until UUU

96 / 527

Page 72: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Encoding of LTL semantics in a GNBA ltlmc3.2-39

idea: encode the semantics of the operators appearingin ϕϕϕ by appropriate components of the GNBA GGG

semantics of ... encoding

propositional logictruetruetrue, ¬¬¬, ∧∧∧ in the states

next©©© in the transition relation

until UUU via expansion law

99 / 527

Page 73: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Encoding of LTL semantics in a GNBA ltlmc3.2-39

idea: encode the semantics of the operators appearingin ϕϕϕ by appropriate components of the GNBA GGG

semantics of ... encoding

propositional logictruetruetrue, ¬¬¬, ∧∧∧ in the states

next©©© in the transition relation

until UUU via expansion law

ψ1 Uψ2ψ1 Uψ2ψ1 Uψ2 ≡≡≡ ψ2 ∨ (ψ1 ∧©(ψ1 Uψ2))ψ2 ∨ (ψ1 ∧©(ψ1 Uψ2))ψ2 ∨ (ψ1 ∧©(ψ1 Uψ2))↖↖↖↗↗↗ ↑↑↑

encoded inthe states

encoded in thetransition relation

102 / 527

Page 74: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Encoding of LTL semantics in a GNBA ltlmc3.2-39

idea: encode the semantics of the operators appearingin ϕϕϕ by appropriate components of the GNBA GGG

semantics of ... encoding

propositional logictruetruetrue, ¬¬¬, ∧∧∧ in the states

next©©© in the transition relation

until UUU expansion law, least fixed point

ψ1 Uψ2ψ1 Uψ2ψ1 Uψ2 ≡≡≡ ψ2 ∨ (ψ1 ∧©(ψ1 Uψ2))ψ2 ∨ (ψ1 ∧©(ψ1 Uψ2))ψ2 ∨ (ψ1 ∧©(ψ1 Uψ2)) ↑↑↑↖↖↖↗↗↗ ↑↑↑

encoded inthe states

encoded in thetransition relation

acceptancecondition

103 / 527

Page 75: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-46a

104 / 527

Page 76: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-46a

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

105 / 527

Page 77: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-46a

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕ

106 / 527

Page 78: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-46a

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

107 / 527

Page 79: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-46a

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

A0A0A0 A1A1A1 A2A2A2 A3A3A3 ......... ∈ Words(ϕ)∈ Words(ϕ)∈Words(ϕ)

108 / 527

Page 80: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-46a

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

A0A0A0 A1A1A1 A2A2A2 A3A3A3 ......... ∈ Words(ϕ)∈ Words(ϕ)∈Words(ϕ)↓↓↓ ↓↓↓ ↓↓↓ ↓↓↓B0B0B0 B1B1B1 B2B2B2 B3B3B3 ......... accepting run

where Bi ={ψ ∈ cl(ϕ) : AiAi+1Ai+2... |= ψ

}Bi =

{ψ ∈ cl(ϕ) : AiAi+1Ai+2... |= ψ

}Bi =

{ψ ∈ cl(ϕ) : AiAi+1Ai+2... |= ψ

}

109 / 527

Page 81: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-46a

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

A0A0A0 A1A1A1 A2A2A2 A3A3A3 ......... ∈ Words(ϕ)∈ Words(ϕ)∈Words(ϕ)↓↓↓ ↓↓↓ ↓↓↓ ↓↓↓B0B0B0 B1B1B1 B2B2B2 B3B3B3 ......... accepting run

where Bi ={ψ ∈ cl(ϕ) : AiAi+1Ai+2... |= ψ

}Bi =

{ψ ∈ cl(ϕ) : AiAi+1Ai+2... |= ψ

}Bi =

{ψ ∈ cl(ϕ) : AiAi+1Ai+2... |= ψ

}���set of subformulas of ϕϕϕ and their negations

110 / 527

Page 82: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-47

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)

111 / 527

Page 83: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-47

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

112 / 527

Page 84: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-47

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓B0 B1 B2 B3 B4 B5

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓B0 B1 B2 B3 B4 B5

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓B0 B1 B2 B3 B4 B5

113 / 527

Page 85: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-47

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓B0 B1 B2 B3 B4 B5

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓B0 B1 B2 B3 B4 B5

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓B0 B1 B2 B3 B4 B5

where the BiBiBi ’s are subsets of{a,¬a, b,¬b, ψ,¬ψ, ϕ,¬ϕ}{a,¬a, b,¬b, ψ,¬ψ, ϕ,¬ϕ}{a,¬a, b,¬b, ψ,¬ψ, ϕ,¬ϕ}

114 / 527

Page 86: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-47

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓a¬b¬ψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓a¬b¬ψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓a¬b¬ψϕ

just for better readability:tuple rather than set notation

115 / 527

Page 87: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-47

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

116 / 527

Page 88: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-47

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

117 / 527

Page 89: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-47

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

118 / 527

Page 90: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-47

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

¬a¬b¬ψ¬ϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

¬a¬b¬ψ¬ϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

¬a¬b¬ψ¬ϕ

119 / 527

Page 91: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LTL ��� GNBA ltlmc3.2-47

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === (certain) sets of subformulas of ϕϕϕs.t. each word σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

¬a¬b¬ψ¬ϕ

¬a¬b¬ψ¬ϕ

. . .. . .. . .

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓ ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

¬a¬b¬ψ¬ϕ

¬a¬b¬ψ¬ϕ

. . .. . .. . .

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

¬a¬b¬ψ¬ϕ

¬a¬b¬ψ¬ϕ

. . .. . .. . .

120 / 527

Page 92: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Closure of LTL formulas ltlmc3.2-48

121 / 527

Page 93: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Closure of LTL formulas ltlmc3.2-48

Let ϕϕϕ be an LTL formula. Then:

subf (ϕ)subf (ϕ)subf (ϕ)def=def=def= set of all subformulas of ϕϕϕ

122 / 527

Page 94: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Closure of LTL formulas ltlmc3.2-48

Let ϕϕϕ be an LTL formula. Then:

subf (ϕ)subf (ϕ)subf (ϕ)def=def=def= set of all subformulas of ϕϕϕ

cl(ϕ)cl(ϕ)cl(ϕ)def=def=def= subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}

where ψψψ and ¬¬ψ¬¬ψ¬¬ψ are identified

123 / 527

Page 95: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Closure of LTL formulas ltlmc3.2-48

Let ϕϕϕ be an LTL formula. Then:

subf (ϕ)subf (ϕ)subf (ϕ)def=def=def= set of all subformulas of ϕϕϕ

cl(ϕ)cl(ϕ)cl(ϕ)def=def=def= subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}

where ψψψ and ¬¬ψ¬¬ψ¬¬ψ are identified

Example: if ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) then

cl(ϕ) = {a, b,¬a ∧ b, ϕ} ∪ {¬a,¬b,¬(¬a ∧ b),¬ϕ}cl(ϕ) = {a, b,¬a ∧ b, ϕ} ∪ {¬a,¬b,¬(¬a ∧ b),¬ϕ}cl(ϕ) = {a, b,¬a ∧ b, ϕ} ∪ {¬a,¬b,¬(¬a ∧ b),¬ϕ}

124 / 527

Page 96: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Closure of LTL formulas ltlmc3.2-48

Let ϕϕϕ be an LTL formula. Then:

subf (ϕ)subf (ϕ)subf (ϕ)def=def=def= set of all subformulas of ϕϕϕ

cl(ϕ)cl(ϕ)cl(ϕ)def=def=def= subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}

where ψψψ and ¬¬ψ¬¬ψ¬¬ψ are identified

Example: if ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) then

cl(ϕ) = {a, b,¬a ∧ b, ϕ} ∪ {¬a,¬b,¬(¬a ∧ b),¬ϕ}cl(ϕ) = {a, b,¬a ∧ b, ϕ} ∪ {¬a,¬b,¬(¬a ∧ b),¬ϕ}cl(ϕ) = {a, b,¬a ∧ b, ϕ} ∪ {¬a,¬b,¬(¬a ∧ b),¬ϕ}

Example: if ϕ′ = �aϕ′ = �aϕ′ = �a

125 / 527

Page 97: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Closure of LTL formulas ltlmc3.2-48

Let ϕϕϕ be an LTL formula. Then:

subf (ϕ)subf (ϕ)subf (ϕ)def=def=def= set of all subformulas of ϕϕϕ

cl(ϕ)cl(ϕ)cl(ϕ)def=def=def= subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}

where ψψψ and ¬¬ψ¬¬ψ¬¬ψ are identified

Example: if ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) then

cl(ϕ) = {a, b,¬a ∧ b, ϕ} ∪ {¬a,¬b,¬(¬a ∧ b),¬ϕ}cl(ϕ) = {a, b,¬a ∧ b, ϕ} ∪ {¬a,¬b,¬(¬a ∧ b),¬ϕ}cl(ϕ) = {a, b,¬a ∧ b, ϕ} ∪ {¬a,¬b,¬(¬a ∧ b),¬ϕ}

Example: if ϕ′ = �aϕ′ = �aϕ′ = �a = ¬♦¬a = ¬(true U¬a)= ¬♦¬a = ¬(true U¬a)= ¬♦¬a = ¬(true U¬a)

126 / 527

Page 98: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Closure of LTL formulas ltlmc3.2-48

Let ϕϕϕ be an LTL formula. Then:

subf (ϕ)subf (ϕ)subf (ϕ)def=def=def= set of all subformulas of ϕϕϕ

cl(ϕ)cl(ϕ)cl(ϕ)def=def=def= subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}subf (ϕ) ∪ {¬ψ : ψ ∈ subf (ϕ)}

where ψψψ and ¬¬ψ¬¬ψ¬¬ψ are identified

Example: if ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) then

cl(ϕ) = {a, b,¬a ∧ b, ϕ} ∪ {¬a,¬b,¬(¬a ∧ b),¬ϕ}cl(ϕ) = {a, b,¬a ∧ b, ϕ} ∪ {¬a,¬b,¬(¬a ∧ b),¬ϕ}cl(ϕ) = {a, b,¬a ∧ b, ϕ} ∪ {¬a,¬b,¬(¬a ∧ b),¬ϕ}

Example: if ϕ′ = �aϕ′ = �aϕ′ = �a = ¬♦¬a = ¬(true U¬a)= ¬♦¬a = ¬(true U¬a)= ¬♦¬a = ¬(true U¬a) then

cl(ϕ′) = {a,¬a, true,¬true,�a,¬�a}cl(ϕ′) = {a,¬a, true,¬true,�a,¬�a}cl(ϕ′) = {a,¬a, true,¬true,�a,¬�a}127 / 527

Page 99: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Elementary formula-sets ltlmc3.2-50a

B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ) is elementary iff:

(i) BBB is maximal consistent w.r.t. prop. logic,i.e., if ψψψ, ψ1 ∧ ψ2 ∈ cl(ϕ)ψ1 ∧ ψ2 ∈ cl(ϕ)ψ1 ∧ ψ2 ∈ cl(ϕ) then:

ψ �∈ Bψ �∈ Bψ �∈ B iff ¬ψ ∈ B¬ψ ∈ B¬ψ ∈ B

ψ1 ∧ ψ2 ∈ Bψ1 ∧ ψ2 ∈ Bψ1 ∧ ψ2 ∈ B iff ψ1 ∈ Bψ1 ∈ Bψ1 ∈ B and ψ2 ∈ Bψ2 ∈ Bψ2 ∈ B

true ∈ cl(ϕ)true ∈ cl(ϕ)true ∈ cl(ϕ) implies true ∈ Btrue ∈ Btrue ∈ B

(ii) BBB is locally consistent with respect to until UUU,i.e., if ψ1 Uψ2 ∈ cl(ϕ)ψ1 Uψ2 ∈ cl(ϕ)ψ1 Uψ2 ∈ cl(ϕ) then:

if ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B and ψ2 �∈ Bψ2 �∈ Bψ2 �∈ B then ψ1 ∈ Bψ1 ∈ Bψ1 ∈ B

if ψ2 ∈ Bψ2 ∈ Bψ2 ∈ B then ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B138 / 527

Page 100: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Elementary or not? ltlmc3.2-49

Let ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b).

B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ}

139 / 527

Page 101: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Elementary or not? ltlmc3.2-49

Let ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b).

B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ} not elementarypropositional inconsistent

140 / 527

Page 102: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Elementary or not? ltlmc3.2-49

Let ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b).

B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ} not elementarypropositional inconsistent

B2 = {¬a, b, ϕ}B2 = {¬a, b, ϕ}B2 = {¬a, b, ϕ}

141 / 527

Page 103: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Elementary or not? ltlmc3.2-49

Let ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b).

B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ} not elementarypropositional inconsistent

B2 = {¬a, b, ϕ}B2 = {¬a, b, ϕ}B2 = {¬a, b, ϕ} not elementary, not maximalas ¬a ∧ b �∈ B2¬a ∧ b �∈ B2¬a ∧ b �∈ B2

¬(¬a ∧ b) �∈ B2¬(¬a ∧ b) �∈ B2¬(¬a ∧ b) �∈ B2

142 / 527

Page 104: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Elementary or not? ltlmc3.2-49

Let ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b).

B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ} not elementarypropositional inconsistent

B2 = {¬a, b, ϕ}B2 = {¬a, b, ϕ}B2 = {¬a, b, ϕ} not elementary, not maximalas ¬a ∧ b �∈ B2¬a ∧ b �∈ B2¬a ∧ b �∈ B2

¬(¬a ∧ b) �∈ B2¬(¬a ∧ b) �∈ B2¬(¬a ∧ b) �∈ B2

B3 = {¬a, b,¬a ∧ b,¬ϕ}B3 = {¬a, b,¬a ∧ b,¬ϕ}B3 = {¬a, b,¬a ∧ b,¬ϕ}

143 / 527

Page 105: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Elementary or not? ltlmc3.2-49

Let ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b).

B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ} not elementarypropositional inconsistent

B2 = {¬a, b, ϕ}B2 = {¬a, b, ϕ}B2 = {¬a, b, ϕ} not elementary, not maximalas ¬a ∧ b �∈ B2¬a ∧ b �∈ B2¬a ∧ b �∈ B2

¬(¬a ∧ b) �∈ B2¬(¬a ∧ b) �∈ B2¬(¬a ∧ b) �∈ B2

B3 = {¬a, b,¬a ∧ b,¬ϕ}B3 = {¬a, b,¬a ∧ b,¬ϕ}B3 = {¬a, b,¬a ∧ b,¬ϕ} not elementarynot locally consistent for UUU

144 / 527

Page 106: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Elementary or not? ltlmc3.2-49

Let ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b).

B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ} not elementarypropositional inconsistent

B2 = {¬a, b, ϕ}B2 = {¬a, b, ϕ}B2 = {¬a, b, ϕ} not elementary, not maximalas ¬a ∧ b �∈ B2¬a ∧ b �∈ B2¬a ∧ b �∈ B2

¬(¬a ∧ b) �∈ B2¬(¬a ∧ b) �∈ B2¬(¬a ∧ b) �∈ B2

B3 = {¬a, b,¬a ∧ b,¬ϕ}B3 = {¬a, b,¬a ∧ b,¬ϕ}B3 = {¬a, b,¬a ∧ b,¬ϕ} not elementarynot locally consistent for UUU

B4 = {¬a,¬b,¬(¬a ∧ b),¬ϕ}B4 = {¬a,¬b,¬(¬a ∧ b),¬ϕ}B4 = {¬a,¬b,¬(¬a ∧ b),¬ϕ}

145 / 527

Page 107: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Elementary or not? ltlmc3.2-49

Let ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b).

B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ}B1 = {a, b,¬a ∧ b, ϕ} not elementarypropositional inconsistent

B2 = {¬a, b, ϕ}B2 = {¬a, b, ϕ}B2 = {¬a, b, ϕ} not elementary, not maximalas ¬a ∧ b �∈ B2¬a ∧ b �∈ B2¬a ∧ b �∈ B2

¬(¬a ∧ b) �∈ B2¬(¬a ∧ b) �∈ B2¬(¬a ∧ b) �∈ B2

B3 = {¬a, b,¬a ∧ b,¬ϕ}B3 = {¬a, b,¬a ∧ b,¬ϕ}B3 = {¬a, b,¬a ∧ b,¬ϕ} not elementarynot locally consistent for UUU

B4 = {¬a,¬b,¬(¬a ∧ b),¬ϕ}B4 = {¬a,¬b,¬(¬a ∧ b),¬ϕ}B4 = {¬a,¬b,¬(¬a ∧ b),¬ϕ} elementary

146 / 527

Page 108: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: elementary formula-sets ltlmc3.2-51

closure cl(ϕ)cl(ϕ)cl(ϕ):• set of all subformulas of ϕϕϕ and their negations• ψψψ and ¬¬ψ¬¬ψ¬¬ψ are identified

elementary formula-sets: subsets BBB of cl(ϕ)cl(ϕ)cl(ϕ)• maximal consistent w.r.t. propositional logic• locally consistent w.r.t. UUU

For ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b), the elementary sets are:

{ a, b,¬(¬a ∧ b), ϕ}{ a, b,¬(¬a ∧ b), ϕ}{ a, b,¬(¬a ∧ b), ϕ}{ a,¬b,¬(¬a ∧ b), ϕ}{ a,¬b,¬(¬a ∧ b), ϕ}{ a,¬b,¬(¬a ∧ b), ϕ}{¬a, b, ¬a ∧ b , ϕ}{¬a, b, ¬a ∧ b , ϕ}{¬a, b, ¬a ∧ b , ϕ}

{ a, b,¬(¬a ∧ b),¬ϕ}{ a, b,¬(¬a ∧ b),¬ϕ}{ a, b,¬(¬a ∧ b),¬ϕ}{ a,¬b,¬(¬a ∧ b),¬ϕ}{ a,¬b,¬(¬a ∧ b),¬ϕ}{ a,¬b,¬(¬a ∧ b),¬ϕ}{¬a,¬b,¬(¬a ∧ b),¬ϕ}{¬a,¬b,¬(¬a ∧ b),¬ϕ}{¬a,¬b,¬(¬a ∧ b),¬ϕ}

147 / 527

Page 109: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Encoding of LTL semantics in a GNBA ltlmc3.2-39-copy

idea: encode the semantics of the operators appearingin ϕϕϕ by appropriate components of the GNBA GGG:

semantics of ... encoding

propositional logictruetruetrue, ¬¬¬, ∧∧∧ in the states

next©©© in the transition relation

until UUU expansion law, least fixed point

ψ1 Uψ2ψ1 Uψ2ψ1 Uψ2 ≡≡≡ ψ2 ∨ (ψ1 ∧©(ψ1 Uψ2))ψ2 ∨ (ψ1 ∧©(ψ1 Uψ2))ψ2 ∨ (ψ1 ∧©(ψ1 Uψ2))���

↖↖↖↗↗↗ ↑↑↑encoded inthe states

encoded in thetransition relation

acceptancecondition

148 / 527

Page 110: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Encoding of LTL semantics in a GNBA ltlmc3.2-39-copy

idea: encode the semantics of the operators appearingin ϕϕϕ by appropriate components of the GNBA GGG:

semantics of ... encoding

propositional logictruetruetrue, ¬¬¬, ∧∧∧ in the states ←−←−←− elementary

formula sets

next©©© in the transition relation

until UUU expansion law, least fixed point

ψ1 Uψ2ψ1 Uψ2ψ1 Uψ2 ≡≡≡ ψ2 ∨ (ψ1 ∧©(ψ1 Uψ2))ψ2 ∨ (ψ1 ∧©(ψ1 Uψ2))ψ2 ∨ (ψ1 ∧©(ψ1 Uψ2))���

↖↖↖↗↗↗ ↑↑↑elementaryformula sets

encoded in thetransition relation

acceptancecondition

149 / 527

Page 111: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

GNBA for LTL-formula ϕϕϕ ltlmc3.2-57

150 / 527

Page 112: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

GNBA for LTL-formula ϕϕϕ ltlmc3.2-57

G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)

151 / 527

Page 113: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

GNBA for LTL-formula ϕϕϕ ltlmc3.2-57

G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)

state space: QQQ ==={B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B is elementary

}}}

152 / 527

Page 114: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

GNBA for LTL-formula ϕϕϕ ltlmc3.2-57

G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)

state space: QQQ ==={B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B is elementary

}}}initial states: Q0Q0Q0 ===

{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}

153 / 527

Page 115: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

GNBA for LTL-formula ϕϕϕ ltlmc3.2-57

G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)

state space: QQQ ==={B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B is elementary

}}}initial states: Q0Q0Q0 ===

{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}transition relation: for B ∈ QB ∈ QB ∈ Q and A ∈ 2APA ∈ 2APA ∈ 2AP :

if A �= B ∩ APA �= B ∩ APA �= B ∩ AP then δ(B,A) = ∅δ(B ,A) = ∅δ(B ,A) = ∅

154 / 527

Page 116: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

GNBA for LTL-formula ϕϕϕ ltlmc3.2-57

G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)

state space: QQQ ==={B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B is elementary

}}}initial states: Q0Q0Q0 ===

{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}transition relation: for B ∈ QB ∈ QB ∈ Q and A ∈ 2APA ∈ 2APA ∈ 2AP :

if A �= B ∩ APA �= B ∩ APA �= B ∩ AP then δ(B,A) = ∅δ(B ,A) = ∅δ(B ,A) = ∅

if A = B ∩ APA = B ∩ APA = B ∩ AP then δ(B,A) =δ(B ,A) =δ(B ,A) = set of all B ′ ∈ QB ′ ∈ QB ′ ∈ Q s.t.

©ψ ∈ B©ψ ∈ B©ψ ∈ B iff ψ ∈ B ′ψ ∈ B ′ψ ∈ B ′

ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B iff (ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)

155 / 527

Page 117: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

GNBA for LTL-formula ϕϕϕ ltlmc3.2-57

G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)

state space: QQQ ==={B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B is elementary

}}}initial states: Q0Q0Q0 ===

{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}transition relation: for B ∈ QB ∈ QB ∈ Q and A ∈ 2APA ∈ 2APA ∈ 2AP :

if A �= B ∩ APA �= B ∩ APA �= B ∩ AP then δ(B,A) = ∅δ(B ,A) = ∅δ(B ,A) = ∅

if A = B ∩ APA = B ∩ APA = B ∩ AP then δ(B,A) =δ(B ,A) =δ(B ,A) = set of all B ′ ∈ QB ′ ∈ QB ′ ∈ Q s.t.

©ψ ∈ B©ψ ∈ B©ψ ∈ B iff ψ ∈ B ′ψ ∈ B ′ψ ∈ B ′

ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B iff (ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)

acceptance set F ={Fψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

F ={F ψ1 Uψ2 : ψ1 Uψ2 ∈ cl(ϕ)

}F =

{F ψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

156 / 527

Page 118: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

GNBA for LTL-formula ϕϕϕ ltlmc3.2-57

G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)

state space: QQQ ==={B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B is elementary

}}}initial states: Q0Q0Q0 ===

{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}transition relation: for B ∈ QB ∈ QB ∈ Q and A ∈ 2APA ∈ 2APA ∈ 2AP :

if A �= B ∩ APA �= B ∩ APA �= B ∩ AP then δ(B,A) = ∅δ(B ,A) = ∅δ(B ,A) = ∅

if A = B ∩ APA = B ∩ APA = B ∩ AP then δ(B,A) =δ(B ,A) =δ(B ,A) = set of all B ′ ∈ QB ′ ∈ QB ′ ∈ Q s.t.

©ψ ∈ B©ψ ∈ B©ψ ∈ B iff ψ ∈ B ′ψ ∈ B ′ψ ∈ B ′

ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B iff (ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)

acceptance set F ={Fψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

F ={F ψ1 Uψ2 : ψ1 Uψ2 ∈ cl(ϕ)

}F =

{F ψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

where Fψ1 Uψ2=

{B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}F ψ1 Uψ2

={B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}Fψ1 Uψ2

={B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}157 / 527

Page 119: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-52

158 / 527

Page 120: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-52

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

159 / 527

Page 121: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-52

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

initial states: formula-sets BBB with©a ∈ B©a ∈ B©a ∈ B

160 / 527

Page 122: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-52

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

initial states: formula-sets BBB with©a ∈ B©a ∈ B©a ∈ B

transition relation:

if©a ∈ B©a ∈ B©a ∈ B then δ(B ,B ∩ {a}) = {B ′ : a ∈ B ′}δ(B ,B ∩ {a}) = {B ′ : a ∈ B ′}δ(B,B ∩ {a}) = {B ′ : a ∈ B ′}

161 / 527

Page 123: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-52

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

aaaaaa

initial states: formula-sets BBB with©a ∈ B©a ∈ B©a ∈ B

transition relation:

if©a ∈ B©a ∈ B©a ∈ B then δ(B ,B ∩ {a}) = {B ′ : a ∈ B ′}δ(B ,B ∩ {a}) = {B ′ : a ∈ B ′}δ(B,B ∩ {a}) = {B ′ : a ∈ B ′}

162 / 527

Page 124: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-52

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

aaaaaa

¬a¬a¬a

¬a¬a¬a

initial states: formula-sets BBB with©a ∈ B©a ∈ B©a ∈ B

transition relation:

if©a ∈ B©a ∈ B©a ∈ B then δ(B ,B ∩ {a}) = {B ′ : a ∈ B ′}δ(B ,B ∩ {a}) = {B ′ : a ∈ B ′}δ(B,B ∩ {a}) = {B ′ : a ∈ B ′}

163 / 527

Page 125: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-52

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

aaaaaa

¬a¬a¬a

¬a¬a¬a

initial states: formula-sets BBB with©a ∈ B©a ∈ B©a ∈ B

transition relation:

if©a ∈ B©a ∈ B©a ∈ B then δ(B ,B ∩ {a}) = {B ′ : a ∈ B ′}δ(B ,B ∩ {a}) = {B ′ : a ∈ B ′}δ(B,B ∩ {a}) = {B ′ : a ∈ B ′}if©a /∈ B©a /∈ B©a /∈ B then δ(B ,B ∩ {a}) = {B ′ : a �∈ B ′}δ(B ,B ∩ {a}) = {B ′ : a �∈ B ′}δ(B,B ∩ {a}) = {B ′ : a �∈ B ′}

164 / 527

Page 126: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-52

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

aaaaaa

aaa¬a¬a¬a

¬a¬a¬a

aaa

initial states: formula-sets BBB with©a ∈ B©a ∈ B©a ∈ B

transition relation:

if©a ∈ B©a ∈ B©a ∈ B then δ(B ,B ∩ {a}) = {B ′ : a ∈ B ′}δ(B ,B ∩ {a}) = {B ′ : a ∈ B ′}δ(B,B ∩ {a}) = {B ′ : a ∈ B ′}if©a /∈ B©a /∈ B©a /∈ B then δ(B ,B ∩ {a}) = {B ′ : a �∈ B ′}δ(B ,B ∩ {a}) = {B ′ : a �∈ B ′}δ(B,B ∩ {a}) = {B ′ : a �∈ B ′}

165 / 527

Page 127: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-52

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

aaa

¬a¬a¬a

aaa

aaa

¬a¬a¬a

¬a¬a¬a

¬a¬a¬a

aaa

initial states: formula-sets BBB with©a ∈ B©a ∈ B©a ∈ B

transition relation:

if©a ∈ B©a ∈ B©a ∈ B then δ(B ,B ∩ {a}) = {B ′ : a ∈ B ′}δ(B ,B ∩ {a}) = {B ′ : a ∈ B ′}δ(B,B ∩ {a}) = {B ′ : a ∈ B ′}if©a /∈ B©a /∈ B©a /∈ B then δ(B ,B ∩ {a}) = {B ′ : a �∈ B ′}δ(B ,B ∩ {a}) = {B ′ : a �∈ B ′}δ(B,B ∩ {a}) = {B ′ : a �∈ B ′}

166 / 527

Page 128: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

¬a¬a¬a

aaaaaa

¬a¬a¬a

aaa

¬a¬a¬a

¬a¬a¬a

aaa

set of acceptance sets:

167 / 527

Page 129: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

¬a¬a¬a

aaaaaa

¬a¬a¬a

aaa

¬a¬a¬a

¬a¬a¬a

aaa

set of acceptance sets: F = ∅F = ∅F = ∅

hence: all words having an infinite run are accepted

168 / 527

Page 130: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

¬a¬a¬a

aaaaaa

¬a¬a¬a

aaa

¬a¬a¬a

¬a¬a¬a

aaa

set of acceptance sets: F = ∅F = ∅F = ∅

∅∅∅ {a}{a}{a} {a}{a}{a} ∅∅∅ ∅∅∅ . . .. . .. . . |= ©a|= ©a|= ©a

169 / 527

Page 131: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

¬a¬a¬a

aaaaaa

¬a¬a¬a

aaa

¬a¬a¬a

¬a¬a¬a

aaa

set of acceptance sets: F = ∅F = ∅F = ∅

∅∅∅

↓↓↓¬a¬a¬a©a©a©a

{a}{a}{a} {a}{a}{a} ∅∅∅ ∅∅∅ . . .. . .. . . |= ©a|= ©a|= ©a

170 / 527

Page 132: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

¬a¬a¬a

aaaaaa

¬a¬a¬a

aaa

¬a¬a¬a

¬a¬a¬a

aaa

set of acceptance sets: F = ∅F = ∅F = ∅

∅∅∅

↓↓↓¬a¬a¬a©a©a©a

{a}{a}{a}↓↓↓aaa

©a©a©a

{a}{a}{a} ∅∅∅ ∅∅∅ . . .. . .. . . |= ©a|= ©a|= ©a

171 / 527

Page 133: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

¬a¬a¬a

aaaaaa

¬a¬a¬a

aaa

¬a¬a¬a

¬a¬a¬a

aaa

set of acceptance sets: F = ∅F = ∅F = ∅

∅∅∅

↓↓↓¬a¬a¬a©a©a©a

{a}{a}{a}↓↓↓aaa

©a©a©a

{a}{a}{a} ∅∅∅

↓↓↓aaa

©a©a©a

∅∅∅ . . .. . .. . . |= ©a|= ©a|= ©a

172 / 527

Page 134: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

¬a¬a¬a

aaaaaa

¬a¬a¬a

aaa

¬a¬a¬a

¬a¬a¬a

aaa

set of acceptance sets: F = ∅F = ∅F = ∅

∅∅∅

↓↓↓¬a¬a¬a©a©a©a

{a}{a}{a}↓↓↓aaa

©a©a©a

{a}{a}{a} ∅∅∅

↓↓↓aaa

©a©a©a

∅∅∅ . . .. . .. . .↓↓↓¬a¬a¬a

©a©a©a

|= ©a|= ©a|= ©a

173 / 527

Page 135: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

¬a¬a¬a

aaaaaa

¬a¬a¬a

aaa

¬a¬a¬a

¬a¬a¬a

aaa

set of acceptance sets: F = ∅F = ∅F = ∅

∅∅∅

↓↓↓¬a¬a¬a©a©a©a

{a}{a}{a}↓↓↓aaa

©a©a©a

{a}{a}{a} ∅∅∅

↓↓↓aaa

©a©a©a

∅∅∅ . . .. . .. . .↓↓↓¬a¬a¬a

©a©a©a. . .. . .. . .

|= ©a|= ©a|= ©a

acceptingrun

174 / 527

Page 136: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness of the GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53a

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

{a}{a}{a}

∅∅∅

{a}{a}{a}

{a}{a}{a}

∅∅∅

∅∅∅

∅∅∅

{a}{a}{a}

for all words σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G): A1 = {a}A1 = {a}A1 = {a}

175 / 527

Page 137: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness of the GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53a

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

{a}{a}{a}

∅∅∅

{a}{a}{a}

{a}{a}{a}

∅∅∅

∅∅∅

∅∅∅

{a}{a}{a}

for all words σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G): A1 = {a}A1 = {a}A1 = {a}proof:

176 / 527

Page 138: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness of the GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53a

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

{a}{a}{a}

∅∅∅

{a}{a}{a}

{a}{a}{a}

∅∅∅

∅∅∅

∅∅∅

{a}{a}{a}

for all words σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G): A1 = {a}A1 = {a}A1 = {a}proof: Let B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . be an accepting run for σσσ.

177 / 527

Page 139: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness of the GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53a

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

{a}{a}{a}

∅∅∅

{a}{a}{a}

{a}{a}{a}

∅∅∅

∅∅∅

∅∅∅

{a}{a}{a}

for all words σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G): A1 = {a}A1 = {a}A1 = {a}proof: Let B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . be an accepting run for σσσ.

=⇒=⇒=⇒ ©a ∈ B0©a ∈ B0©a ∈ B0

178 / 527

Page 140: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness of the GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53a

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

{a}{a}{a}

∅∅∅

{a}{a}{a}

{a}{a}{a}

∅∅∅

∅∅∅

∅∅∅

{a}{a}{a}

for all words σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G): A1 = {a}A1 = {a}A1 = {a}proof: Let B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . be an accepting run for σσσ.

=⇒=⇒=⇒ ©a ∈ B0©a ∈ B0©a ∈ B0 and therefore a ∈ B1a ∈ B1a ∈ B1

179 / 527

Page 141: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness of the GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53a

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

{a}{a}{a}

∅∅∅

{a}{a}{a}

{a}{a}{a}

∅∅∅

∅∅∅

∅∅∅

{a}{a}{a}

for all words σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G): A1 = {a}A1 = {a}A1 = {a}proof: Let B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . be an accepting run for σσσ.

=⇒=⇒=⇒ ©a ∈ B0©a ∈ B0©a ∈ B0 and therefore a ∈ B1a ∈ B1a ∈ B1

=⇒=⇒=⇒ the outgoing edges of B1B1B1 have label {a}{a}{a}

180 / 527

Page 142: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness of the GNBA for ϕ =©aϕ =©aϕ =©a ltlmc3.2-53a

a,©aa,©aa,©a a,¬©aa,¬©aa,¬©a

¬a,©a¬a,©a¬a,©a ¬a,¬©a¬a,¬©a¬a,¬©a

{a}{a}{a}

∅∅∅

{a}{a}{a}

{a}{a}{a}

∅∅∅

∅∅∅

∅∅∅

{a}{a}{a}

for all words σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G)σ = A0 A1 A2 A3 . . . ∈ Lω(G): A1 = {a}A1 = {a}A1 = {a}proof: Let B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . be an accepting run for σσσ.

=⇒=⇒=⇒ ©a ∈ B0©a ∈ B0©a ∈ B0 and therefore a ∈ B1a ∈ B1a ∈ B1

=⇒=⇒=⇒ the outgoing edges of B1B1B1 have label {a}{a}{a}=⇒=⇒=⇒ {a} = B1 ∩ AP = A1{a} = B1 ∩ AP = A1{a} = B1 ∩ AP = A1

181 / 527

Page 143: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-54

182 / 527

Page 144: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-54

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b

a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b, a U ba,¬b, a U ba,¬b, a U b

locally inconsistent: {a, b,¬(a U b)}{a, b,¬(a U b)}{a, b,¬(a U b)}{¬a, b,¬(a U b)}{¬a, b,¬(a U b)}{¬a, b,¬(a U b)}{¬a,¬b, a U b}{¬a,¬b, a U b}{¬a,¬b, a U b}

183 / 527

Page 145: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-54

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b

a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b, a U ba,¬b, a U ba,¬b, a U b

initial states: BBB with ϕ = a U b ∈ Bϕ = a U b ∈ Bϕ = a U b ∈ B

184 / 527

Page 146: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-54

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b

a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b, a U ba,¬b, a U ba,¬b, a U b

initial states: BBB with ϕ = a U b ∈ Bϕ = a U b ∈ Bϕ = a U b ∈ B

185 / 527

Page 147: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-54

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b

a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b, a U ba,¬b, a U ba,¬b, a U b

initial states: BBB with ϕ = a U b ∈ Bϕ = a U b ∈ Bϕ = a U b ∈ B

acceptance condition: just one set of accept states

F =F =F = set of all BBB with ϕ �∈ Bϕ �∈ Bϕ �∈ B or b ∈ Bb ∈ Bb ∈ B

186 / 527

Page 148: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: GNBA for ϕ = a U bϕ = a U bϕ = a U b ←−←−←−NBA ltlmc3.2-54

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b

a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b, a U ba,¬b, a U ba,¬b, a U b

initial states: BBB with ϕ = a U b ∈ Bϕ = a U b ∈ Bϕ = a U b ∈ B

acceptance condition: just one set of accept states

F =F =F = set of all BBB with ϕ �∈ Bϕ �∈ Bϕ �∈ B or b ∈ Bb ∈ Bb ∈ B

187 / 527

Page 149: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-54

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b

a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b, a U ba,¬b, a U ba,¬b, a U b

initial states: BBB with ϕ = a U b ∈ Bϕ = a U b ∈ Bϕ = a U b ∈ B

acceptance condition: just one set of accept states

F =F =F = set of all BBB with ϕ �∈ Bϕ �∈ Bϕ �∈ B or b ∈ Bb ∈ Bb ∈ B

188 / 527

Page 150: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-54

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b

a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b, a U ba,¬b, a U ba,¬b, a U b

transition relation: B ′ ∈ δ(B,B ∩ AP)B ′ ∈ δ(B ,B ∩ AP)B ′ ∈ δ(B,B ∩ AP) iff

a U b ∈ B ⇐⇒(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)a U b ∈ B ⇐⇒

(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)a U b ∈ B ⇐⇒

(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)189 / 527

Page 151: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-54

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b

a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b, a U ba,¬b, a U ba,¬b, a U b

¬a ∧ b¬a ∧ b¬a ∧ b

¬a ∧ b¬a ∧ b¬a ∧ b

¬a ∧ b¬a ∧ b¬a ∧ b

transition relation: B ′ ∈ δ(B,B ∩ AP)B ′ ∈ δ(B ,B ∩ AP)B ′ ∈ δ(B,B ∩ AP) iff

a U b ∈ B ⇐⇒(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)a U b ∈ B ⇐⇒

(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)a U b ∈ B ⇐⇒

(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)190 / 527

Page 152: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-54

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b

a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b, a U ba,¬b, a U ba,¬b, a U b

a ∧ ba ∧ ba ∧ ba ∧ ba ∧ ba ∧ b

transition relation: B ′ ∈ δ(B,B ∩ AP)B ′ ∈ δ(B ,B ∩ AP)B ′ ∈ δ(B,B ∩ AP) iff

a U b ∈ B ⇐⇒(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)a U b ∈ B ⇐⇒

(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)a U b ∈ B ⇐⇒

(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)191 / 527

Page 153: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-54

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b

a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b, a U ba,¬b, a U ba,¬b, a U ba ∧ ¬ba ∧ ¬ba ∧ ¬b

transition relation: B ′ ∈ δ(B,B ∩ AP)B ′ ∈ δ(B ,B ∩ AP)B ′ ∈ δ(B,B ∩ AP) iff

a U b ∈ B ⇐⇒(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)a U b ∈ B ⇐⇒

(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)a U b ∈ B ⇐⇒

(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)192 / 527

Page 154: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-54

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b

a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b, a U ba,¬b, a U ba,¬b, a U b

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬b

transition relation: B ′ ∈ δ(B,B ∩ AP)B ′ ∈ δ(B ,B ∩ AP)B ′ ∈ δ(B,B ∩ AP) iff

a U b ∈ B ⇐⇒(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)a U b ∈ B ⇐⇒

(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)a U b ∈ B ⇐⇒

(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)193 / 527

Page 155: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-54

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b

a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b, a U ba,¬b, a U ba,¬b, a U b

a ∧ ¬ba ∧ ¬ba ∧ ¬b

transition relation: B ′ ∈ δ(B,B ∩ AP)B ′ ∈ δ(B ,B ∩ AP)B ′ ∈ δ(B,B ∩ AP) iff

a U b ∈ B ⇐⇒(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)a U b ∈ B ⇐⇒

(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)a U b ∈ B ⇐⇒

(b ∈ B ∨ ( a ∈ B ∧ a U b ∈ B ′ )

)194 / 527

Page 156: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-55

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)

a,¬b, a U ba,¬b, a U ba,¬b, a U b

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬ba ∧ ba ∧ ba ∧ b

¬a ∧ b¬a ∧ b¬a ∧ b a ∧ ¬ba ∧ ¬ba ∧ ¬b

195 / 527

Page 157: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-55

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)

a,¬b, a U ba,¬b, a U ba,¬b, a U b

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬ba ∧ ba ∧ ba ∧ b

¬a ∧ b¬a ∧ b¬a ∧ b a ∧ ¬ba ∧ ¬ba ∧ ¬b

{a}{a}{a} {a}{a}{a} {a, b}{a, b}{a, b} ∅∅∅ ∅∅∅ ∅∅∅ . . . |= a U b. . . |= a U b. . . |= a U b

196 / 527

Page 158: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-55

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)

a,¬b, a U ba,¬b, a U ba,¬b, a U b

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬ba ∧ ba ∧ ba ∧ b

¬a ∧ b¬a ∧ b¬a ∧ b a ∧ ¬ba ∧ ¬ba ∧ ¬b

{a}{a}{a} {a}{a}{a} {a, b}{a, b}{a, b} ∅∅∅ ∅∅∅ ∅∅∅ . . . |= a U b. . . |= a U b. . . |= a U b↓↓↓aaa¬b¬b¬bϕϕϕ

197 / 527

Page 159: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-55

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)

a,¬b, a U ba,¬b, a U ba,¬b, a U b

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬ba ∧ ba ∧ ba ∧ b

¬a ∧ b¬a ∧ b¬a ∧ b a ∧ ¬ba ∧ ¬ba ∧ ¬b

{a}{a}{a} {a}{a}{a} {a, b}{a, b}{a, b} ∅∅∅ ∅∅∅ ∅∅∅ . . . |= a U b. . . |= a U b. . . |= a U b↓↓↓aaa¬b¬b¬bϕϕϕ

↓↓↓aaa¬b¬b¬bϕϕϕ

198 / 527

Page 160: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-55

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)

a,¬b, a U ba,¬b, a U ba,¬b, a U b

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬ba ∧ ba ∧ ba ∧ b

¬a ∧ b¬a ∧ b¬a ∧ b a ∧ ¬ba ∧ ¬ba ∧ ¬b

{a}{a}{a} {a}{a}{a} {a, b}{a, b}{a, b} ∅∅∅ ∅∅∅ ∅∅∅ . . . |= a U b. . . |= a U b. . . |= a U b↓↓↓aaa¬b¬b¬bϕϕϕ

↓↓↓aaa¬b¬b¬bϕϕϕ

↓↓↓aaabbbϕϕϕ

{ } { } { b} ∅199 / 527

Page 161: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-55

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)

a,¬b, a U ba,¬b, a U ba,¬b, a U b

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬ba ∧ ba ∧ ba ∧ b

¬a ∧ b¬a ∧ b¬a ∧ b a ∧ ¬ba ∧ ¬ba ∧ ¬b

{a}{a}{a} {a}{a}{a} {a, b}{a, b}{a, b} ∅∅∅ ∅∅∅ ∅∅∅ . . . |= a U b. . . |= a U b. . . |= a U b↓↓↓aaa¬b¬b¬bϕϕϕ

↓↓↓aaa¬b¬b¬bϕϕϕ

↓↓↓aaabbbϕϕϕ

↓↓↓¬a¬a¬a¬b¬b¬b¬ϕ¬ϕ¬ϕ

{ } { } { b} ∅200 / 527

Page 162: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-55

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)

a,¬b, a U ba,¬b, a U ba,¬b, a U b

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬ba ∧ ba ∧ ba ∧ b

¬a ∧ b¬a ∧ b¬a ∧ b a ∧ ¬ba ∧ ¬ba ∧ ¬b

{a}{a}{a} {a}{a}{a} {a, b}{a, b}{a, b} ∅∅∅ ∅∅∅ ∅∅∅ . . . |= a U b. . . |= a U b. . . |= a U b↓↓↓aaa¬b¬b¬bϕϕϕ

↓↓↓aaa¬b¬b¬bϕϕϕ

↓↓↓aaabbbϕϕϕ

↓↓↓¬a¬a¬a¬b¬b¬b¬ϕ¬ϕ¬ϕ

↓↓↓¬a¬a¬a¬b¬b¬b¬ϕ¬ϕ¬ϕ

{ } { } { b} ∅201 / 527

Page 163: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-55

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)

a,¬b, a U ba,¬b, a U ba,¬b, a U b

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬ba ∧ ba ∧ ba ∧ b

¬a ∧ b¬a ∧ b¬a ∧ b a ∧ ¬ba ∧ ¬ba ∧ ¬b

{a}{a}{a} {a}{a}{a} {a, b}{a, b}{a, b} ∅∅∅ ∅∅∅ ∅∅∅ . . . |= a U b. . . |= a U b. . . |= a U b↓↓↓aaa¬b¬b¬bϕϕϕ

↓↓↓aaa¬b¬b¬bϕϕϕ

↓↓↓aaabbbϕϕϕ

↓↓↓¬a¬a¬a¬b¬b¬b¬ϕ¬ϕ¬ϕ

↓↓↓¬a¬a¬a¬b¬b¬b¬ϕ¬ϕ¬ϕ

↓↓↓¬a¬a¬a¬b¬b¬b¬ϕ¬ϕ¬ϕ

{ } { } { b} ∅202 / 527

Page 164: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-55

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)

a,¬b, a U ba,¬b, a U ba,¬b, a U b

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬ba ∧ ba ∧ ba ∧ b

¬a ∧ b¬a ∧ b¬a ∧ b a ∧ ¬ba ∧ ¬ba ∧ ¬b

{a}{a}{a} {a}{a}{a} {a, b}{a, b}{a, b} ∅∅∅ ∅∅∅ ∅∅∅ . . . |= a U b. . . |= a U b. . . |= a U b↓↓↓aaa¬b¬b¬bϕϕϕ

↓↓↓aaa¬b¬b¬bϕϕϕ

↓↓↓aaabbbϕϕϕ

↓↓↓¬a¬a¬a¬b¬b¬b¬ϕ¬ϕ¬ϕ

↓↓↓¬a¬a¬a¬b¬b¬b¬ϕ¬ϕ¬ϕ

↓↓↓¬a¬a¬a¬b¬b¬b¬ϕ¬ϕ¬ϕ

acceptingrun

{ } { } { b} ∅203 / 527

Page 165: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-56

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)

a,¬b, a U ba,¬b, a U ba,¬b, a U b

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬ba ∧ ba ∧ ba ∧ b

¬a ∧ b¬a ∧ b¬a ∧ b a ∧ ¬ba ∧ ¬ba ∧ ¬b

{a} {a} {a} {a} . . . �|= ϕ{a} {a} {a} {a} . . . �|= ϕ{a} {a} {a} {a} . . . �|= ϕ

204 / 527

Page 166: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-56

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)

a,¬b, a U ba,¬b, a U ba,¬b, a U b

q0q0q0

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬ba ∧ ba ∧ ba ∧ b

¬a ∧ b¬a ∧ b¬a ∧ b a ∧ ¬ba ∧ ¬ba ∧ ¬b

{a} {a} {a} {a} . . . �|= ϕ{a} {a} {a} {a} . . . �|= ϕ{a} {a} {a} {a} . . . �|= ϕ

only 111 infinite run: q0 q0 q0 . . .q0 q0 q0 . . .q0 q0 q0 . . .

205 / 527

Page 167: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-56

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)

a,¬b, a U ba,¬b, a U ba,¬b, a U b

q0q0q0

{a}{a}{a}

∅∅∅...........................

.........

{a, b}{a, b}{a, b}..................

..................

{b}{b}{b}

..................

.........

.........

{a}{a}{a}

.........

{a} {a} {a} {a} . . . �|= ϕ{a} {a} {a} {a} . . . �|= ϕ{a} {a} {a} {a} . . . �|= ϕ

only 111 infinite run: q0 q0 q0 . . .q0 q0 q0 . . .q0 q0 q0 . . .

206 / 527

Page 168: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Example: (G)NBA for ϕ = a U bϕ = a U bϕ = a U b ltlmc3.2-56

a, b, a U ba, b, a U ba, b, a U b ¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)¬a,¬b,¬(a U b)

¬a, b, a U b¬a, b, a U b¬a, b, a U b a,¬b,¬(a U b)a,¬b,¬(a U b)a,¬b,¬(a U b)

a,¬b, a U ba,¬b, a U ba,¬b, a U b

q0q0q0

{a}{a}{a}

∅∅∅...........................

.........

{a, b}{a, b}{a, b}..................

..................

{b}{b}{b}

..................

.........

.........

{a}{a}{a}

.........

{a} {a} {a} {a} . . . �|= ϕ{a} {a} {a} {a} . . . �|= ϕ{a} {a} {a} {a} . . . �|= ϕ

only 111 infinite run: q0 q0 q0 . . .q0 q0 q0 . . .q0 q0 q0 . . . not accepting

207 / 527

Page 169: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

GNBA for LTL-formula ϕϕϕ ltlmc3.2-57a

G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)

state space: QQQ ==={B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B is elementary

}}}initial states: Q0Q0Q0 ===

{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}transition relation: for B ∈ QB ∈ QB ∈ Q and A ∈ 2APA ∈ 2APA ∈ 2AP :

if A �= B ∩ APA �= B ∩ APA �= B ∩ AP then δ(B,A) = ∅δ(B ,A) = ∅δ(B ,A) = ∅

if A = B ∩ APA = B ∩ APA = B ∩ AP then δ(B,A) =δ(B ,A) =δ(B ,A) = set of all B ′ ∈ QB ′ ∈ QB ′ ∈ Q s.t.

©ψ ∈ B©ψ ∈ B©ψ ∈ B iff ψ ∈ B ′ψ ∈ B ′ψ ∈ B ′

ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B iff (ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)

acceptance set F ={Fψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

F ={F ψ1 Uψ2 : ψ1 Uψ2 ∈ cl(ϕ)

}F =

{F ψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

where Fψ1 Uψ2=

{B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}F ψ1 Uψ2

={B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}Fψ1 Uψ2

={B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}208 / 527

Page 170: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness ltlmc3.2-soundness-LTL-2-GNBA

.... of the construction LTL formula ϕϕϕ��� GNBA GGG

209 / 527

Page 171: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness ltlmc3.2-soundness-LTL-2-GNBA

Let ϕϕϕ be an LTL-formula and G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F) bethe constructed GNBA.

Claim: Words(ϕ) = Lω(G)Words(ϕ) = Lω(G)Words(ϕ) = Lω(G)

210 / 527

Page 172: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness ltlmc3.2-soundness-LTL-2-GNBA

Let ϕϕϕ be an LTL-formula and G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F) bethe constructed GNBA.

Claim: Words(ϕ) = Lω(G)Words(ϕ) = Lω(G)Words(ϕ) = Lω(G)

“⊆⊆⊆” show: each infinite word A0 A1 A2 ... ∈ (2AP)ωA0 A1 A2 ... ∈ (2AP)ωA0 A1 A2 ... ∈ (2AP)ω

with A0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕ

has an accepting run in GGG

211 / 527

Page 173: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness ltlmc3.2-soundness-LTL-2-GNBA

Let ϕϕϕ be an LTL-formula and G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F) bethe constructed GNBA.

Claim: Words(ϕ) = Lω(G)Words(ϕ) = Lω(G)Words(ϕ) = Lω(G)

“⊆⊆⊆” show: each infinite word A0 A1 A2 ... ∈ (2AP)ωA0 A1 A2 ... ∈ (2AP)ωA0 A1 A2 ... ∈ (2AP)ω

with A0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕ

has an accepting run in GGG

“⊇⊇⊇” show: for all infinite words A0 A1 A2 ... ∈ Lω(G)A0 A1 A2 ... ∈ Lω(G)A0 A1 A2 ... ∈ Lω(G) :

A0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕ

212 / 527

Page 174: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness ltlmc3.2-soundness-LTL-2-GNBA

Let ϕϕϕ be an LTL-formula and G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F) bethe constructed GNBA.

Claim: Words(ϕ) = Lω(G)Words(ϕ) = Lω(G)Words(ϕ) = Lω(G)

“⊆⊆⊆” show: each infinite word A0 A1 A2 ... ∈ (2AP)ωA0 A1 A2 ... ∈ (2AP)ωA0 A1 A2 ... ∈ (2AP)ω

with A0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕ

has an accepting run in GGG

“⊇⊇⊇” show: for all infinite words A0 A1 A2 ... ∈ Lω(G)A0 A1 A2 ... ∈ Lω(G)A0 A1 A2 ... ∈ Lω(G) :

A0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕ

213 / 527

Page 175: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Accepting runs for the elements of Words(ϕ)Words(ϕ)Words(ϕ) ltlmc3.2-47-copy

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === elementary formula-sets B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ)

214 / 527

Page 176: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Accepting runs for the elements of Words(ϕ)Words(ϕ)Words(ϕ) ltlmc3.2-47-copy

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === elementary formula-sets B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ)

s.t. each word σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

215 / 527

Page 177: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Accepting runs for the elements of Words(ϕ)Words(ϕ)Words(ϕ) ltlmc3.2-47-copy

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === elementary formula-sets B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ)

s.t. each word σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)

216 / 527

Page 178: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Accepting runs for the elements of Words(ϕ)Words(ϕ)Words(ϕ) ltlmc3.2-47-copy

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === elementary formula-sets B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ)

s.t. each word σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

217 / 527

Page 179: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Accepting runs for the elements of Words(ϕ)Words(ϕ)Words(ϕ) ltlmc3.2-47-copy

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === elementary formula-sets B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ)

s.t. each word σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓B0 B1 B2 B3 B4 B5

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓B0 B1 B2 B3 B4 B5

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓B0 B1 B2 B3 B4 B5

218 / 527

Page 180: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Accepting runs for the elements of Words(ϕ)Words(ϕ)Words(ϕ) ltlmc3.2-47-copy

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === elementary formula-sets B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ)

s.t. each word σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓B0 B1 B2 B3 B4 B5

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓B0 B1 B2 B3 B4 B5

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓B0 B1 B2 B3 B4 B5

where the BiBiBi ’s are states in GGG, i.e., elementarysubsets of {a,¬a, b,¬b, ψ,¬ψ, ϕ,¬ϕ}{a,¬a, b,¬b, ψ,¬ψ, ϕ,¬ϕ}{a,¬a, b,¬b, ψ,¬ψ, ϕ,¬ϕ}

219 / 527

Page 181: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Accepting runs for the elements of Words(ϕ)Words(ϕ)Words(ϕ) ltlmc3.2-47-copy

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === elementary formula-sets B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ)

s.t. each word σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓a¬b¬ψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓a¬b¬ψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓a¬b¬ψϕ

220 / 527

Page 182: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Accepting runs for the elements of Words(ϕ)Words(ϕ)Words(ϕ) ltlmc3.2-47-copy

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === elementary formula-sets B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ)

s.t. each word σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

221 / 527

Page 183: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Accepting runs for the elements of Words(ϕ)Words(ϕ)Words(ϕ) ltlmc3.2-47-copy

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === elementary formula-sets B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ)

s.t. each word σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

222 / 527

Page 184: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Accepting runs for the elements of Words(ϕ)Words(ϕ)Words(ϕ) ltlmc3.2-47-copy

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === elementary formula-sets B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ)

s.t. each word σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

223 / 527

Page 185: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Accepting runs for the elements of Words(ϕ)Words(ϕ)Words(ϕ) ltlmc3.2-47-copy

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === elementary formula-sets B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ)

s.t. each word σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

¬a¬b¬ψ¬ϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

¬a¬b¬ψ¬ϕ

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

¬a¬b¬ψ¬ϕ

224 / 527

Page 186: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Accepting runs for the elements of Words(ϕ)Words(ϕ)Words(ϕ) ltlmc3.2-47-copy

LTL formula ϕϕϕ��� GNBA GGG for Words(ϕ)Words(ϕ)Words(ϕ)

states of GGG === elementary formula-sets B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ)

s.t. each word σ = A0 A1 A2... ∈Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ)σ = A0 A1 A2... ∈ Words(ϕ) can beextended to an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . in GGG

Example: ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b)ϕ = a U(¬a ∧ b) ψ = ¬a ∧ bψ = ¬a ∧ bψ = ¬a ∧ b

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓ ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

¬a¬b¬ψ¬ϕ

¬a¬b¬ψ¬ϕ

. . .. . .. . .

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ↓ ↓ ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

¬a¬b¬ψ¬ϕ

¬a¬b¬ψ¬ϕ

. . .. . .. . .

{a} {a} {a, b} {b} ∅ ∅ . . . |= ϕ

↓ ↓ ↓ ↓ ↓ ↓a¬b¬ψϕ

a¬b¬ψϕ

ab¬ψϕ

¬abψϕ

¬a¬b¬ψ¬ϕ

¬a¬b¬ψ¬ϕ

. . .. . .. . .

225 / 527

Page 187: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

GNBA for LTL-formula ϕϕϕ ltlmc3.2-57a

G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)

state space: QQQ ==={B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B is elementary

}}}initial states: Q0Q0Q0 ===

{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}transition relation: for B ∈ QB ∈ QB ∈ Q and A ∈ 2APA ∈ 2APA ∈ 2AP :

if A �= B ∩ APA �= B ∩ APA �= B ∩ AP then δ(B,A) = ∅δ(B ,A) = ∅δ(B ,A) = ∅

if A = B ∩ APA = B ∩ APA = B ∩ AP then δ(B,A) =δ(B ,A) =δ(B ,A) = set of all B ′ ∈ QB ′ ∈ QB ′ ∈ Q s.t.

©ψ ∈ B©ψ ∈ B©ψ ∈ B iff ψ ∈ B ′ψ ∈ B ′ψ ∈ B ′

ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B iff (ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)

acceptance set F ={Fψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

F ={F ψ1 Uψ2 : ψ1 Uψ2 ∈ cl(ϕ)

}F =

{F ψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

where Fψ1 Uψ2=

{B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}F ψ1 Uψ2

={B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}Fψ1 Uψ2

={B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}226 / 527

Page 188: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Elementary formula-sets ltlmc3.2-50a-copy

B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ) is elementary iff:

(i) BBB is maximal consistent w.r.t. prop. logic,i.e., if ψψψ, ψ1 ∧ ψ2 ∈ cl(ϕ)ψ1 ∧ ψ2 ∈ cl(ϕ)ψ1 ∧ ψ2 ∈ cl(ϕ) then:

ψ �∈ Bψ �∈ Bψ �∈ B iff ¬ψ ∈ B¬ψ ∈ B¬ψ ∈ B

ψ1 ∧ ψ2 ∈ Bψ1 ∧ ψ2 ∈ Bψ1 ∧ ψ2 ∈ B iff ψ1 ∈ Bψ1 ∈ Bψ1 ∈ B and ψ2 ∈ Bψ2 ∈ Bψ2 ∈ B

true ∈ cl(ϕ)true ∈ cl(ϕ)true ∈ cl(ϕ) implies true ∈ Btrue ∈ Btrue ∈ B

(ii) BBB is locally consistent with respect to until UUU,i.e., if ψ1 Uψ2 ∈ cl(ϕ)ψ1 Uψ2 ∈ cl(ϕ)ψ1 Uψ2 ∈ cl(ϕ) then:

if ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B and ψ2 �∈ Bψ2 �∈ Bψ2 �∈ B then ψ1 ∈ Bψ1 ∈ Bψ1 ∈ B

if ψ2 ∈ Bψ2 ∈ Bψ2 ∈ B then ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B227 / 527

Page 189: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness ltlmc3.2-soundness-LTL-2-GNBA2

Let ϕϕϕ be an LTL-formula and G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F) bethe constructed GNBA.

Claim: Words(ϕ) = Lω(G)Words(ϕ) = Lω(G)Words(ϕ) = Lω(G)

“⊆⊆⊆” show: each infinite word A0 A1 A2 ... ∈ (2AP)ωA0 A1 A2 ... ∈ (2AP)ωA0 A1 A2 ... ∈ (2AP)ω

with A0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕ

has an accepting run in GGG

“⊇⊇⊇” show: for all infinite words A0 A1 A2 ... ∈ Lω(G)A0 A1 A2 ... ∈ Lω(G)A0 A1 A2 ... ∈ Lω(G) :

A0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕ

228 / 527

Page 190: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Soundness ltlmc3.2-soundness-LTL-2-GNBA2

Let ϕϕϕ be an LTL-formula and G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F) bethe constructed GNBA.

Claim: Words(ϕ) = Lω(G)Words(ϕ) = Lω(G)Words(ϕ) = Lω(G)

“⊆⊆⊆” show: each infinite word A0 A1 A2 ... ∈ (2AP)ωA0 A1 A2 ... ∈ (2AP)ωA0 A1 A2 ... ∈ (2AP)ω

with A0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕ

has an accepting run in GGG

“⊇⊇⊇” show: for all infinite words A0 A1 A2 ... ∈ Lω(G)A0 A1 A2 ... ∈ Lω(G)A0 A1 A2 ... ∈ Lω(G) :

A0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕA0 A1 A2 ... |= ϕ

229 / 527

Page 191: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Proof of Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ) ltlmc3.2-59

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

230 / 527

Page 192: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Proof of Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ) ltlmc3.2-59

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

The claim yields that for each σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G):

231 / 527

Page 193: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Proof of Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ) ltlmc3.2-59

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

The claim yields that for each σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G):=⇒=⇒=⇒ there is an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . for σσσ

232 / 527

Page 194: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Proof of Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ) ltlmc3.2-59

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

The claim yields that for each σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G):=⇒=⇒=⇒ there is an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . for σσσ

=⇒=⇒=⇒ B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG

233 / 527

Page 195: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Proof of Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ) ltlmc3.2-59

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

The claim yields that for each σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G):=⇒=⇒=⇒ there is an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . for σσσ

=⇒=⇒=⇒ B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t. ϕ ∈ B0ϕ ∈ B0ϕ ∈ B0

234 / 527

Page 196: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Proof of Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ) ltlmc3.2-59

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

The claim yields that for each σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G):=⇒=⇒=⇒ there is an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . for σσσ

=⇒=⇒=⇒ B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t. ϕ ∈ B0ϕ ∈ B0ϕ ∈ B0

↑↑↑as B0 ∈ Q0B0 ∈ Q0B0 ∈ Q0

235 / 527

Page 197: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Proof of Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ) ltlmc3.2-59

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F (*)

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

The claim yields that for each σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G):=⇒=⇒=⇒ there is an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . for σσσ

=⇒=⇒=⇒ B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t. ϕ ∈ B0ϕ ∈ B0ϕ ∈ B0

and (*) holds ↑↑↑as B0 ∈ Q0B0 ∈ Q0B0 ∈ Q0

236 / 527

Page 198: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Proof of Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ) ltlmc3.2-59

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F (*)

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

The claim yields that for each σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G):=⇒=⇒=⇒ there is an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . for σσσ

=⇒=⇒=⇒ B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t. ϕ ∈ B0ϕ ∈ B0ϕ ∈ B0

and (*) holds ↑↑↑as B0 ∈ Q0B0 ∈ Q0B0 ∈ Q0

=⇒=⇒=⇒ σ = A0 A1 A2 . . . |= ϕσ = A0 A1 A2 . . . |= ϕσ = A0 A1 A2 . . . |= ϕ237 / 527

Page 199: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Proof of Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ) ltlmc3.2-59

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F (*)

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

The claim yields that for each σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G)σ = A0 A1 A2 . . . ∈ Lω(G):=⇒=⇒=⇒ there is an accepting run B0 B1 B2 . . .B0 B1 B2 . . .B0 B1 B2 . . . for σσσ

=⇒=⇒=⇒ B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t. ϕ ∈ B0ϕ ∈ B0ϕ ∈ B0

and (*) holds ↑↑↑as B0 ∈ Q0B0 ∈ Q0B0 ∈ Q0

=⇒=⇒=⇒ σ = A0 A1 A2 . . . |= ϕσ = A0 A1 A2 . . . |= ϕσ = A0 A1 A2 . . . |= ϕ238 / 527

Page 200: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Proof of Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ) ltlmc3.2-59

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F (*)

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Proof by structural induction on ψψψ

239 / 527

Page 201: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Proof of Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ) ltlmc3.2-59

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F (*)

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Proof by structural induction on ψψψ

base of induction:ψ = trueψ = trueψ = trueψ = a ∈ APψ = a ∈ APψ = a ∈ AP

240 / 527

Page 202: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Proof of Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ)Lω(G) ⊆ Words(ϕ) ltlmc3.2-59

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F (*)

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Proof by structural induction on ψψψ

base of induction:ψ = trueψ = trueψ = trueψ = a ∈ APψ = a ∈ APψ = a ∈ AP

induction step:ψ = ¬ψ′ψ = ¬ψ′ψ = ¬ψ′ψ = ψ1 ∧ ψ2ψ = ψ1 ∧ ψ2ψ = ψ1 ∧ ψ2

ψ =©ψ′ψ =©ψ′ψ =©ψ′ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2

241 / 527

Page 203: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Base of induction ltlmc3.2-60

Claim: If B0A0→ B1B0A0→ B1B0A0→ B1

A1→ B2A2→ ...

A1→ B2A2→ ...

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Base of induction:

242 / 527

Page 204: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Base of induction ltlmc3.2-60

Claim: If B0A0→ B1B0A0→ B1B0A0→ B1

A1→ B2A2→ ...

A1→ B2A2→ ...

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Base of induction:

Suppose ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ).

243 / 527

Page 205: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Base of induction ltlmc3.2-60

Claim: If B0A0→ B1B0A0→ B1B0A0→ B1

A1→ B2A2→ ...

A1→ B2A2→ ...

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Base of induction:

Suppose ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ). Then true ∈ B0true ∈ B0true ∈ B0

note: truetruetrue is contained in all elementary formula-sets

244 / 527

Page 206: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Base of induction ltlmc3.2-60

Claim: If B0A0→ B1B0A0→ B1B0A0→ B1

A1→ B2A2→ ...

A1→ B2A2→ ...

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Base of induction:

Suppose ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ). Then true ∈ B0true ∈ B0true ∈ B0 andA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= true

note: truetruetrue is contained in all elementary formula-setstruetruetrue holds for all paths/traces

245 / 527

Page 207: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Base of induction ltlmc3.2-60

Claim: If B0A0→ B1B0A0→ B1B0A0→ B1

A1→ B2A2→ ...

A1→ B2A2→ ...

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Base of induction:

Suppose ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ). Then true ∈ B0true ∈ B0true ∈ B0 andA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= true

Let ψ = a ∈ APψ = a ∈ APψ = a ∈ AP.

246 / 527

Page 208: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Base of induction ltlmc3.2-60

Claim: If B0A0→ B1B0A0→ B1B0A0→ B1

A1→ B2A2→ ...

A1→ B2A2→ ...

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Base of induction:

Suppose ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ). Then true ∈ B0true ∈ B0true ∈ B0 andA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= true

Let ψ = a ∈ APψ = a ∈ APψ = a ∈ AP. Then:

a ∈ B0a ∈ B0a ∈ B0

247 / 527

Page 209: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Base of induction ltlmc3.2-60

Claim: If B0A0→ B1B0A0→ B1B0A0→ B1

A1→ B2A2→ ...

A1→ B2A2→ ...

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Base of induction:

Suppose ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ). Then true ∈ B0true ∈ B0true ∈ B0 andA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= true

Let ψ = a ∈ APψ = a ∈ APψ = a ∈ AP. Then:

a ∈ B0 ⇐⇒ a ∈ A0a ∈ B0 ⇐⇒ a ∈ A0a ∈ B0 ⇐⇒ a ∈ A0

248 / 527

Page 210: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Base of induction ltlmc3.2-60

Claim: If B0A0→ B1B0A0→ B1B0A0→ B1

A1→ B2A2→ ...

A1→ B2A2→ ...

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Base of induction:

Suppose ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ). Then true ∈ B0true ∈ B0true ∈ B0 andA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= true

Let ψ = a ∈ APψ = a ∈ APψ = a ∈ AP. Then:

a ∈ B0 ⇐⇒ a ∈ A0a ∈ B0 ⇐⇒ a ∈ A0a ∈ B0 ⇐⇒ a ∈ A0

249 / 527

Page 211: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Base of induction ltlmc3.2-60

Claim: If B0A0→ B1B0A0→ B1B0A0→ B1

A1→ B2A2→ ...

A1→ B2A2→ ...

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F A0 = B0 ∩ APA0 = B0 ∩ APA0 = B0 ∩ AP

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Base of induction:

Suppose ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ). Then true ∈ B0true ∈ B0true ∈ B0 andA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= true

Let ψ = a ∈ APψ = a ∈ APψ = a ∈ AP. Then:

a ∈ B0 ⇐⇒ a ∈ A0a ∈ B0 ⇐⇒ a ∈ A0a ∈ B0 ⇐⇒ a ∈ A0

250 / 527

Page 212: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Base of induction ltlmc3.2-60

Claim: If B0A0→ B1B0A0→ B1B0A0→ B1

A1→ B2A2→ ...

A1→ B2A2→ ...

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F A0 = B0 ∩ APA0 = B0 ∩ APA0 = B0 ∩ AP

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Base of induction:

Suppose ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ)ψ = true ∈ cl(ϕ). Then true ∈ B0true ∈ B0true ∈ B0 andA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= trueA0 A1 A2 . . . |= true

Let ψ = a ∈ APψ = a ∈ APψ = a ∈ AP. Then:

a ∈ B0 ⇐⇒ a ∈ A0 ⇐⇒ A0 A1 A2 . . . |= aa ∈ B0 ⇐⇒ a ∈ A0 ⇐⇒ A0 A1 A2 . . . |= aa ∈ B0 ⇐⇒ a ∈ A0 ⇐⇒ A0 A1 A2 . . . |= a

251 / 527

Page 213: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: negation ltlmc3.2-61

252 / 527

Page 214: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: negation ltlmc3.2-61

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ = ¬ψ′ψ = ¬ψ′ψ = ¬ψ′:

253 / 527

Page 215: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: negation ltlmc3.2-61

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ = ¬ψ′ψ = ¬ψ′ψ = ¬ψ′:ψ ∈ B0ψ ∈ B0ψ ∈ B0

254 / 527

Page 216: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: negation ltlmc3.2-61

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ = ¬ψ′ψ = ¬ψ′ψ = ¬ψ′:ψ ∈ B0ψ ∈ B0ψ ∈ B0

iff ψ′ �∈ B0ψ′ �∈ B0ψ′ �∈ B0 (maximal consistency)

255 / 527

Page 217: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: negation ltlmc3.2-61

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ = ¬ψ′ψ = ¬ψ′ψ = ¬ψ′:ψ ∈ B0ψ ∈ B0ψ ∈ B0

iff ψ′ �∈ B0ψ′ �∈ B0ψ′ �∈ B0 (maximal consistency)

iff A0 A1 A2 . . . �|= ψ′A0 A1 A2 . . . �|= ψ′A0 A1 A2 . . . �|= ψ′ (induction hypothesis)

256 / 527

Page 218: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: negation ltlmc3.2-61

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ = ¬ψ′ψ = ¬ψ′ψ = ¬ψ′:ψ ∈ B0ψ ∈ B0ψ ∈ B0

iff ψ′ �∈ B0ψ′ �∈ B0ψ′ �∈ B0 (maximal consistency)

iff A0 A1 A2 . . . �|= ψ′A0 A1 A2 . . . �|= ψ′A0 A1 A2 . . . �|= ψ′ (induction hypothesis)

iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ (semantics of ¬¬¬)257 / 527

Page 219: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Elementary formula-sets ltlmc3.2-50a-copy2

B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ) is elementary iff:

(i) BBB is maximal consistent w.r.t. prop. logic,i.e., if ψψψ, ψ1 ∧ ψ2 ∈ cl(ϕ)ψ1 ∧ ψ2 ∈ cl(ϕ)ψ1 ∧ ψ2 ∈ cl(ϕ) then:

ψ �∈ Bψ �∈ Bψ �∈ B iff ¬ψ ∈ B¬ψ ∈ B¬ψ ∈ B

ψ1 ∧ ψ2 ∈ Bψ1 ∧ ψ2 ∈ Bψ1 ∧ ψ2 ∈ B iff ψ1 ∈ Bψ1 ∈ Bψ1 ∈ B and ψ2 ∈ Bψ2 ∈ Bψ2 ∈ B

true ∈ cl(ϕ)true ∈ cl(ϕ)true ∈ cl(ϕ) implies true ∈ Btrue ∈ Btrue ∈ B

(ii) BBB is locally consistent with respect to until UUU,i.e., if ψ1 Uψ2 ∈ cl(ϕ)ψ1 Uψ2 ∈ cl(ϕ)ψ1 Uψ2 ∈ cl(ϕ) then:

if ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B and ψ2 �∈ Bψ2 �∈ Bψ2 �∈ B then ψ1 ∈ Bψ1 ∈ Bψ1 ∈ B

if ψ2 ∈ Bψ2 ∈ Bψ2 ∈ B then ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B258 / 527

Page 220: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Elementary formula-sets ltlmc3.2-50a-copy2

B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ) is elementary iff:

(i) BBB is maximal consistent w.r.t. prop. logic,i.e., if ψψψ, ψ1 ∧ ψ2 ∈ cl(ϕ)ψ1 ∧ ψ2 ∈ cl(ϕ)ψ1 ∧ ψ2 ∈ cl(ϕ) then:

ψ �∈ Bψ �∈ Bψ �∈ B iff ¬ψ ∈ B¬ψ ∈ B¬ψ ∈ B

ψ1 ∧ ψ2 ∈ Bψ1 ∧ ψ2 ∈ Bψ1 ∧ ψ2 ∈ B iff ψ1 ∈ Bψ1 ∈ Bψ1 ∈ B and ψ2 ∈ Bψ2 ∈ Bψ2 ∈ B

true ∈ cl(ϕ)true ∈ cl(ϕ)true ∈ cl(ϕ) implies true ∈ Btrue ∈ Btrue ∈ B

(ii) BBB is locally consistent with respect to until UUU,i.e., if ψ1 Uψ2 ∈ cl(ϕ)ψ1 Uψ2 ∈ cl(ϕ)ψ1 Uψ2 ∈ cl(ϕ) then:

if ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B and ψ2 �∈ Bψ2 �∈ Bψ2 �∈ B then ψ1 ∈ Bψ1 ∈ Bψ1 ∈ B

if ψ2 ∈ Bψ2 ∈ Bψ2 ∈ B then ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B259 / 527

Page 221: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: conjunction ltlmc3.2-61a

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ = ψ1 ∧ ψ2ψ = ψ1 ∧ ψ2ψ = ψ1 ∧ ψ2

260 / 527

Page 222: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: conjunction ltlmc3.2-61a

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ = ψ1 ∧ ψ2ψ = ψ1 ∧ ψ2ψ = ψ1 ∧ ψ2

ψ ∈ B0ψ ∈ B0ψ ∈ B0

261 / 527

Page 223: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: conjunction ltlmc3.2-61a

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ = ψ1 ∧ ψ2ψ = ψ1 ∧ ψ2ψ = ψ1 ∧ ψ2

ψ ∈ B0ψ ∈ B0ψ ∈ B0

iff ψ1, ψ2 ∈ B0ψ1, ψ2 ∈ B0ψ1, ψ2 ∈ B0 (maximal consistency)

262 / 527

Page 224: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: conjunction ltlmc3.2-61a

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ = ψ1 ∧ ψ2ψ = ψ1 ∧ ψ2ψ = ψ1 ∧ ψ2

ψ ∈ B0ψ ∈ B0ψ ∈ B0

iff ψ1, ψ2 ∈ B0ψ1, ψ2 ∈ B0ψ1, ψ2 ∈ B0 (maximal consistency)

iff A0 A1 A2 . . . |= ψ1A0 A1 A2 . . . |= ψ1A0 A1 A2 . . . |= ψ1 and A0 A1 A2 . . . |= ψ2A0 A1 A2 . . . |= ψ2A0 A1 A2 . . . |= ψ2 (IH)

263 / 527

Page 225: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: conjunction ltlmc3.2-61a

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ = ψ1 ∧ ψ2ψ = ψ1 ∧ ψ2ψ = ψ1 ∧ ψ2

ψ ∈ B0ψ ∈ B0ψ ∈ B0

iff ψ1, ψ2 ∈ B0ψ1, ψ2 ∈ B0ψ1, ψ2 ∈ B0 (maximal consistency)

iff A0 A1 A2 . . . |= ψ1A0 A1 A2 . . . |= ψ1A0 A1 A2 . . . |= ψ1 and A0 A1 A2 . . . |= ψ2A0 A1 A2 . . . |= ψ2A0 A1 A2 . . . |= ψ2 (IH)

iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ (semantics of ∧∧∧)264 / 527

Page 226: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: next step ltlmc3.2-57b

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ =©ψ′ψ =©ψ′ψ =©ψ′:

265 / 527

Page 227: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

GNBA for LTL-formula ϕϕϕ ltlmc3.2-57b

G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)

state space: QQQ ==={B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B is elementary

}}}initial states: Q0Q0Q0 ===

{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}transition relation: for B ∈ QB ∈ QB ∈ Q and A ∈ 2APA ∈ 2APA ∈ 2AP :

if A �= B ∩ APA �= B ∩ APA �= B ∩ AP then δ(B,A) = ∅δ(B ,A) = ∅δ(B ,A) = ∅

if A = B ∩ APA = B ∩ APA = B ∩ AP then δ(B,A) =δ(B ,A) =δ(B ,A) = set of all B ′ ∈ QB ′ ∈ QB ′ ∈ Q s.t.

©ψ ∈ B©ψ ∈ B©ψ ∈ B iff ψ ∈ B ′ψ ∈ B ′ψ ∈ B ′

ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B iff (ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)

acceptance set F ={Fψ1 Uψ2 : ψ1 Uψ2 ∈ cl(ϕ)

}F =

{F ψ1 Uψ2 : ψ1 Uψ2 ∈ cl(ϕ)

}F =

{F ψ1 Uψ2 : ψ1 Uψ2 ∈ cl(ϕ)

}where Fψ1 Uψ2

={B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}F ψ1 Uψ2

={B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}Fψ1 Uψ2

={B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}266 / 527

Page 228: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: next step ltlmc3.2-62

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ =©ψ′ψ =©ψ′ψ =©ψ′:

267 / 527

Page 229: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: next step ltlmc3.2-62

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ =©ψ′ψ =©ψ′ψ =©ψ′:ψ ∈ B0ψ ∈ B0ψ ∈ B0

268 / 527

Page 230: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: next step ltlmc3.2-62

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F B1 ∈ δ(B0,A0)B1 ∈ δ(B0,A0)B1 ∈ δ(B0,A0)

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ =©ψ′ψ =©ψ′ψ =©ψ′:ψ ∈ B0ψ ∈ B0ψ ∈ B0

iff ψ′ ∈ B1ψ′ ∈ B1ψ′ ∈ B1 (definition of δδδ)

269 / 527

Page 231: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: next step ltlmc3.2-62

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F B1 ∈ δ(B0,A0)B1 ∈ δ(B0,A0)B1 ∈ δ(B0,A0)

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ =©ψ′ψ =©ψ′ψ =©ψ′:ψ ∈ B0ψ ∈ B0ψ ∈ B0

iff ψ′ ∈ B1ψ′ ∈ B1ψ′ ∈ B1 (definition of δδδ)

iff A1 A2 A3 . . . |= ψ′A1 A2 A3 . . . |= ψ′A1 A2 A3 . . . |= ψ′ (induction hypothesis)

270 / 527

Page 232: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: next step ltlmc3.2-62

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F B1 ∈ δ(B0,A0)B1 ∈ δ(B0,A0)B1 ∈ δ(B0,A0)

then for all formulas ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ):

ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step: for ψ =©ψ′ψ =©ψ′ψ =©ψ′:ψ ∈ B0ψ ∈ B0ψ ∈ B0

iff ψ′ ∈ B1ψ′ ∈ B1ψ′ ∈ B1 (definition of δδδ)

iff A1 A2 A3 . . . |= ψ′A1 A2 A3 . . . |= ψ′A1 A2 A3 . . . |= ψ′ (induction hypothesis)

iff A0 A1 A2 A3 . . . |= ψA0 A1 A2 A3 . . . |= ψA0 A1 A2 A3 . . . |= ψ (semantics of©©©)271 / 527

Page 233: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until ltlmc3.2-63

272 / 527

Page 234: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Recall: elementary formula-sets ltlmc3.2-63

B ⊆ cl(ϕ)B ⊆ cl(ϕ)B ⊆ cl(ϕ) is elementary iff:

(i) BBB is maximal consistent w.r.t. prop. logic,i.e., if ψψψ, ψ1 ∧ ψ2 ∈ cl(ϕ)ψ1 ∧ ψ2 ∈ cl(ϕ)ψ1 ∧ ψ2 ∈ cl(ϕ) then:

ψ �∈ Bψ �∈ Bψ �∈ B iff ¬ψ ∈ B¬ψ ∈ B¬ψ ∈ B

ψ1 ∧ ψ2 ∈ Bψ1 ∧ ψ2 ∈ Bψ1 ∧ ψ2 ∈ B iff ψ1 ∈ Bψ1 ∈ Bψ1 ∈ B and ψ2 ∈ Bψ2 ∈ Bψ2 ∈ B

true ∈ cl(ϕ)true ∈ cl(ϕ)true ∈ cl(ϕ) implies true ∈ Btrue ∈ Btrue ∈ B

(ii) BBB is locally consistent with respect to until UUU,i.e., if ψ1 Uψ2 ∈ cl(ϕ)ψ1 Uψ2 ∈ cl(ϕ)ψ1 Uψ2 ∈ cl(ϕ) then:

if ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B and ψ2 �∈ Bψ2 �∈ Bψ2 �∈ B then ψ1 ∈ Bψ1 ∈ Bψ1 ∈ B

if ψ2 ∈ Bψ2 ∈ Bψ2 ∈ B then ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B

273 / 527

Page 235: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Recall: GNBA for LTL-formula ϕϕϕ ltlmc3.2-57d

G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)

state space: QQQ ==={B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B is elementary

}}}initial states: Q0Q0Q0 ===

{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}transition relation: for B ∈ QB ∈ QB ∈ Q and A ∈ 2APA ∈ 2APA ∈ 2AP :

if A �= B ∩ APA �= B ∩ APA �= B ∩ AP then δ(B,A) = ∅δ(B ,A) = ∅δ(B ,A) = ∅

if A = B ∩ APA = B ∩ APA = B ∩ AP then δ(B,A) =δ(B ,A) =δ(B ,A) = set of all B ′ ∈ QB ′ ∈ QB ′ ∈ Q s.t.

©ψ ∈ B©ψ ∈ B©ψ ∈ B iff ψ ∈ B ′ψ ∈ B ′ψ ∈ B ′

ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B iff (ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)

acceptance set F ={Fψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

F ={F ψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

F ={F ψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

where Fψ1 Uψ2=

{B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}F ψ1 Uψ2 =

{B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}Fψ1 Uψ2

={B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}274 / 527

Page 236: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Recall: GNBA for LTL-formula ϕϕϕ ltlmc3.2-57d

G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)G = (Q, 2AP , δ,Q0,F)

state space: QQQ ==={B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B

{B ⊆ cl(ϕ) : B is elementary

}}}initial states: Q0Q0Q0 ===

{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}{B ∈ Q : ϕ ∈ B

}transition relation: for B ∈ QB ∈ QB ∈ Q and A ∈ 2APA ∈ 2APA ∈ 2AP :

if A �= B ∩ APA �= B ∩ APA �= B ∩ AP then δ(B,A) = ∅δ(B ,A) = ∅δ(B ,A) = ∅

if A = B ∩ APA = B ∩ APA = B ∩ AP then δ(B,A) =δ(B ,A) =δ(B ,A) = set of all B ′ ∈ QB ′ ∈ QB ′ ∈ Q s.t.

©ψ ∈ B©ψ ∈ B©ψ ∈ B iff ψ ∈ B ′ψ ∈ B ′ψ ∈ B ′

ψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ Bψ1 Uψ2 ∈ B iff (ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)(ψ2 ∈ B) ∨ (ψ1 ∈ B ∧ ψ1 Uψ2 ∈ B ′)

acceptance set F ={Fψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

F ={F ψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

F ={F ψ1 Uψ2

: ψ1 Uψ2 ∈ cl(ϕ)}

where Fψ1 Uψ2=

{B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}F ψ1 Uψ2 =

{B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}Fψ1 Uψ2

={B ∈ Q : ψ1 Uψ2 /∈ B ∨ ψ2 ∈ B

}275 / 527

Page 237: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until ltlmc3.2-63

276 / 527

Page 238: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until ltlmc3.2-63

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

277 / 527

Page 239: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “⇐=⇐=⇐=”) ltlmc3.2-63

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“⇐=⇐=⇐=”: Suppose A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ.

278 / 527

Page 240: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “⇐=⇐=⇐=”) ltlmc3.2-63

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“⇐=⇐=⇐=”: Suppose A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ. Let j ≥ 0j ≥ 0j ≥ 0 s.t.

Aj Aj+1 Aj+2 . . .Aj Aj+1 Aj+2 . . .Aj Aj+1 Aj+2 . . . |= ψ2|= ψ2|= ψ2

Aj−1 Aj Aj−1 . . .Aj−1 Aj Aj−1 . . .Aj−1 Aj Aj−1 . . . |= ψ1|= ψ1|= ψ1

Aj−2 Aj−1 Aj . . .Aj−2 Aj−1 Aj . . .Aj−2 Aj−1 Aj . . . |= ψ1|= ψ1|= ψ1.........

A0 A1 A2 A3 . . .A0 A1 A2 A3 . . .A0 A1 A2 A3 . . . |= ψ1|= ψ1|= ψ1

279 / 527

Page 241: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “⇐=⇐=⇐=”) ltlmc3.2-63

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“⇐=⇐=⇐=”: Suppose A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ. Let j ≥ 0j ≥ 0j ≥ 0 s.t.

Aj Aj+1 Aj+2 . . .Aj Aj+1 Aj+2 . . .Aj Aj+1 Aj+2 . . . |= ψ2|= ψ2|= ψ2IH⇒⇒⇒ ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

Aj−1 Aj Aj−1 . . .Aj−1 Aj Aj−1 . . .Aj−1 Aj Aj−1 . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ Bj−1ψ1 ∈ Bj−1ψ1 ∈ Bj−1

Aj−2 Aj−1 Aj . . .Aj−2 Aj−1 Aj . . .Aj−2 Aj−1 Aj . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ Bj−2ψ1 ∈ Bj−2ψ1 ∈ Bj−2.........

...

...

...A0 A1 A2 A3 . . .A0 A1 A2 A3 . . .A0 A1 A2 A3 . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ B0ψ1 ∈ B0ψ1 ∈ B0

280 / 527

Page 242: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “⇐=⇐=⇐=”) ltlmc3.2-63

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F BjBjBj is elementary

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“⇐=⇐=⇐=”: Suppose A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ. Let j ≥ 0j ≥ 0j ≥ 0 s.t.

Aj Aj+1 Aj+2 . . .Aj Aj+1 Aj+2 . . .Aj Aj+1 Aj+2 . . . |= ψ2|= ψ2|= ψ2IH⇒⇒⇒ ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj ⇒⇒⇒ ψ ∈ Bjψ ∈ Bjψ ∈ Bj

Aj−1 Aj Aj−1 . . .Aj−1 Aj Aj−1 . . .Aj−1 Aj Aj−1 . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ Bj−1ψ1 ∈ Bj−1ψ1 ∈ Bj−1

Aj−2 Aj−1 Aj . . .Aj−2 Aj−1 Aj . . .Aj−2 Aj−1 Aj . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ Bj−2ψ1 ∈ Bj−2ψ1 ∈ Bj−2.........

...

...

...A0 A1 A2 A3 . . .A0 A1 A2 A3 . . .A0 A1 A2 A3 . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ B0ψ1 ∈ B0ψ1 ∈ B0

281 / 527

Page 243: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “⇐=⇐=⇐=”) ltlmc3.2-63

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F Bj ∈ δ(Bj−1,Aj−1)Bj ∈ δ(Bj−1,Aj−1)Bj ∈ δ(Bj−1,Aj−1)

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“⇐=⇐=⇐=”: Suppose A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ. Let j ≥ 0j ≥ 0j ≥ 0 s.t.

Aj Aj+1 Aj+2 . . .Aj Aj+1 Aj+2 . . .Aj Aj+1 Aj+2 . . . |= ψ2|= ψ2|= ψ2IH⇒⇒⇒ ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj ⇒⇒⇒ ψ ∈ Bjψ ∈ Bjψ ∈ Bj

Aj−1 Aj Aj−1 . . .Aj−1 Aj Aj−1 . . .Aj−1 Aj Aj−1 . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ Bj−1ψ1 ∈ Bj−1ψ1 ∈ Bj−1 ∧∧∧ ψ ∈ Bj−1ψ ∈ Bj−1ψ ∈ Bj−1

Aj−2 Aj−1 Aj . . .Aj−2 Aj−1 Aj . . .Aj−2 Aj−1 Aj . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ Bj−2ψ1 ∈ Bj−2ψ1 ∈ Bj−2.........

...

...

...A0 A1 A2 A3 . . .A0 A1 A2 A3 . . .A0 A1 A2 A3 . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ B0ψ1 ∈ B0ψ1 ∈ B0

282 / 527

Page 244: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “⇐=⇐=⇐=”) ltlmc3.2-63

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F Bj−1 ∈ δ(Bj−2,Aj−2)Bj−1 ∈ δ(Bj−2,Aj−2)Bj−1 ∈ δ(Bj−2,Aj−2)

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“⇐=⇐=⇐=”: Suppose A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ. Let j ≥ 0j ≥ 0j ≥ 0 s.t.

Aj Aj+1 Aj+2 . . .Aj Aj+1 Aj+2 . . .Aj Aj+1 Aj+2 . . . |= ψ2|= ψ2|= ψ2IH⇒⇒⇒ ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj ⇒⇒⇒ ψ ∈ Bjψ ∈ Bjψ ∈ Bj

Aj−1 Aj Aj−1 . . .Aj−1 Aj Aj−1 . . .Aj−1 Aj Aj−1 . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ Bj−1ψ1 ∈ Bj−1ψ1 ∈ Bj−1 ∧∧∧ ψ ∈ Bj−1ψ ∈ Bj−1ψ ∈ Bj−1

Aj−2 Aj−1 Aj . . .Aj−2 Aj−1 Aj . . .Aj−2 Aj−1 Aj . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ Bj−2ψ1 ∈ Bj−2ψ1 ∈ Bj−2 ∧∧∧ ψ ∈ Bj−2ψ ∈ Bj−2ψ ∈ Bj−2.........

...

...

...A0 A1 A2 A3 . . .A0 A1 A2 A3 . . .A0 A1 A2 A3 . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ B0ψ1 ∈ B0ψ1 ∈ B0

283 / 527

Page 245: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “⇐=⇐=⇐=”) ltlmc3.2-63

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F B1 ∈ δ(B0,A0)B1 ∈ δ(B0,A0)B1 ∈ δ(B0,A0)

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“⇐=⇐=⇐=”: Suppose A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ. Let j ≥ 0j ≥ 0j ≥ 0 s.t.

Aj Aj+1 Aj+2 . . .Aj Aj+1 Aj+2 . . .Aj Aj+1 Aj+2 . . . |= ψ2|= ψ2|= ψ2IH⇒⇒⇒ ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj ⇒⇒⇒ ψ ∈ Bjψ ∈ Bjψ ∈ Bj

Aj−1 Aj Aj−1 . . .Aj−1 Aj Aj−1 . . .Aj−1 Aj Aj−1 . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ Bj−1ψ1 ∈ Bj−1ψ1 ∈ Bj−1 ∧∧∧ ψ ∈ Bj−1ψ ∈ Bj−1ψ ∈ Bj−1

Aj−2 Aj−1 Aj . . .Aj−2 Aj−1 Aj . . .Aj−2 Aj−1 Aj . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ Bj−2ψ1 ∈ Bj−2ψ1 ∈ Bj−2 ∧∧∧ ψ ∈ Bj−2ψ ∈ Bj−2ψ ∈ Bj−2.........

...

...

............

A0 A1 A2 A3 . . .A0 A1 A2 A3 . . .A0 A1 A2 A3 . . . |= ψ1|= ψ1|= ψ1 ⇒⇒⇒ ψ1 ∈ B0ψ1 ∈ B0ψ1 ∈ B0 ∧∧∧ ψ ∈ B0ψ ∈ B0ψ ∈ B0

284 / 527

Page 246: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-64

285 / 527

Page 247: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-64

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

286 / 527

Page 248: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-64

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“=⇒=⇒=⇒” Suppose ψ ∈ B0ψ ∈ B0ψ ∈ B0.

287 / 527

Page 249: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-64

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“=⇒=⇒=⇒” Suppose ψ ∈ B0ψ ∈ B0ψ ∈ B0. There exists j ≥ 0j ≥ 0j ≥ 0 with ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj ,

288 / 527

Page 250: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-64

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“=⇒=⇒=⇒” Suppose ψ ∈ B0ψ ∈ B0ψ ∈ B0. There exists j ≥ 0j ≥ 0j ≥ 0 with ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj ,since otherwise ∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj

289 / 527

Page 251: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-64

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“=⇒=⇒=⇒” Suppose ψ ∈ B0ψ ∈ B0ψ ∈ B0. There exists j ≥ 0j ≥ 0j ≥ 0 with ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj ,since otherwise ∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj and therefore:

ψ ∈ B0ψ ∈ B0ψ ∈ B0 ∧∧∧ ψ2 �∈ B0ψ2 �∈ B0ψ2 �∈ B0

290 / 527

Page 252: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-64

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F Bi+1 ∈ δ(Bi ,Ai)Bi+1 ∈ δ(Bi ,Ai)Bi+1 ∈ δ(Bi ,Ai)

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“=⇒=⇒=⇒” Suppose ψ ∈ B0ψ ∈ B0ψ ∈ B0. There exists j ≥ 0j ≥ 0j ≥ 0 with ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj ,since otherwise ∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj and therefore:

ψ ∈ B0ψ ∈ B0ψ ∈ B0 ∧∧∧ ψ2 �∈ B0ψ2 �∈ B0ψ2 �∈ B0

⇒⇒⇒ ψ ∈ B1ψ ∈ B1ψ ∈ B1

291 / 527

Page 253: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-64

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F Bi+1 ∈ δ(Bi ,Ai)Bi+1 ∈ δ(Bi ,Ai)Bi+1 ∈ δ(Bi ,Ai)

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“=⇒=⇒=⇒” Suppose ψ ∈ B0ψ ∈ B0ψ ∈ B0. There exists j ≥ 0j ≥ 0j ≥ 0 with ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj ,since otherwise ∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj and therefore:

ψ ∈ B0ψ ∈ B0ψ ∈ B0 ∧∧∧ ψ2 �∈ B0ψ2 �∈ B0ψ2 �∈ B0

⇒⇒⇒ ψ ∈ B1ψ ∈ B1ψ ∈ B1 ∧∧∧ ψ2 �∈ B1ψ2 �∈ B1ψ2 �∈ B1

292 / 527

Page 254: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-64

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F Bi+1 ∈ δ(Bi ,Ai)Bi+1 ∈ δ(Bi ,Ai)Bi+1 ∈ δ(Bi ,Ai)

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“=⇒=⇒=⇒” Suppose ψ ∈ B0ψ ∈ B0ψ ∈ B0. There exists j ≥ 0j ≥ 0j ≥ 0 with ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj ,since otherwise ∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj and therefore:

ψ ∈ B0ψ ∈ B0ψ ∈ B0 ∧∧∧ ψ2 �∈ B0ψ2 �∈ B0ψ2 �∈ B0

⇒⇒⇒ ψ ∈ B1ψ ∈ B1ψ ∈ B1 ∧∧∧ ψ2 �∈ B1ψ2 �∈ B1ψ2 �∈ B1

⇒⇒⇒ ψ ∈ B2ψ ∈ B2ψ ∈ B2

293 / 527

Page 255: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-64

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F Bi+1 ∈ δ(Bi ,Ai)Bi+1 ∈ δ(Bi ,Ai)Bi+1 ∈ δ(Bi ,Ai)

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“=⇒=⇒=⇒” Suppose ψ ∈ B0ψ ∈ B0ψ ∈ B0. There exists j ≥ 0j ≥ 0j ≥ 0 with ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj ,since otherwise ∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj and therefore:

ψ ∈ B0ψ ∈ B0ψ ∈ B0 ∧∧∧ ψ2 �∈ B0ψ2 �∈ B0ψ2 �∈ B0

⇒⇒⇒ ψ ∈ B1ψ ∈ B1ψ ∈ B1 ∧∧∧ ψ2 �∈ B1ψ2 �∈ B1ψ2 �∈ B1

⇒⇒⇒ ψ ∈ B2ψ ∈ B2ψ ∈ B2 ∧∧∧ ψ2 �∈ B2ψ2 �∈ B2ψ2 �∈ B2.........

294 / 527

Page 256: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-64

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“=⇒=⇒=⇒” Suppose ψ ∈ B0ψ ∈ B0ψ ∈ B0. There exists j ≥ 0j ≥ 0j ≥ 0 with ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj ,since otherwise ∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj and therefore:

ψ ∈ B0ψ ∈ B0ψ ∈ B0 ∧∧∧ ψ2 �∈ B0ψ2 �∈ B0ψ2 �∈ B0

⇒⇒⇒ ψ ∈ B1ψ ∈ B1ψ ∈ B1 ∧∧∧ ψ2 �∈ B1ψ2 �∈ B1ψ2 �∈ B1

⇒⇒⇒ ψ ∈ B2ψ ∈ B2ψ ∈ B2 ∧∧∧ ψ2 �∈ B2ψ2 �∈ B2ψ2 �∈ B2.........

=⇒ ∀j ≥ 0=⇒ ∀j ≥ 0=⇒ ∀j ≥ 0. Bj �∈ FψBj �∈ FψBj �∈ Fψ where

Fψ = {B : ψ �∈ BFψ = {B : ψ �∈ BFψ = {B : ψ �∈ B or ψ2 ∈ B}ψ2 ∈ B}ψ2 ∈ B}

295 / 527

Page 257: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-64

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

“=⇒=⇒=⇒” Suppose ψ ∈ B0ψ ∈ B0ψ ∈ B0. There exists j ≥ 0j ≥ 0j ≥ 0 with ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj ,since otherwise ∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj∀j ≥ 0. ψ2 /∈ Bj and therefore:

ψ ∈ B0ψ ∈ B0ψ ∈ B0 ∧∧∧ ψ2 �∈ B0ψ2 �∈ B0ψ2 �∈ B0

⇒⇒⇒ ψ ∈ B1ψ ∈ B1ψ ∈ B1 ∧∧∧ ψ2 �∈ B1ψ2 �∈ B1ψ2 �∈ B1

⇒⇒⇒ ψ ∈ B2ψ ∈ B2ψ ∈ B2 ∧∧∧ ψ2 �∈ B2ψ2 �∈ B2ψ2 �∈ B2.........

=⇒ ∀j ≥ 0=⇒ ∀j ≥ 0=⇒ ∀j ≥ 0. Bj �∈ FψBj �∈ FψBj �∈ Fψ where

Fψ = {B : ψ �∈ BFψ = {B : ψ �∈ BFψ = {B : ψ �∈ B or ψ2 ∈ B}ψ2 ∈ B}ψ2 ∈ B}Contradiction!

296 / 527

Page 258: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

297 / 527

Page 259: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

Let ψ ∈ B0ψ ∈ B0ψ ∈ B0 and j ≥ 0j ≥ 0j ≥ 0 minimal s.t. ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

298 / 527

Page 260: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

Let ψ ∈ B0ψ ∈ B0ψ ∈ B0 and j ≥ 0j ≥ 0j ≥ 0 minimal s.t. ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

IH=⇒=⇒=⇒ Aj Aj+1 . . .Aj Aj+1 . . .Aj Aj+1 . . . |= ψ2|= ψ2|= ψ2

299 / 527

Page 261: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

Let ψ ∈ B0ψ ∈ B0ψ ∈ B0 and j ≥ 0j ≥ 0j ≥ 0 minimal s.t. ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

IH=⇒=⇒=⇒ Aj Aj+1 . . .Aj Aj+1 . . .Aj Aj+1 . . . |= ψ2|= ψ2|= ψ2

¬ψ2 ∈ Bj−1¬ψ2 ∈ Bj−1¬ψ2 ∈ Bj−1

¬ψ2 ∈ Bj−2¬ψ2 ∈ Bj−2¬ψ2 ∈ Bj−2.........

¬ψ2 ∈ B1¬ψ2 ∈ B1¬ψ2 ∈ B1

¬ψ2 ∈ B0¬ψ2 ∈ B0¬ψ2 ∈ B0300 / 527

Page 262: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

Let ψ ∈ B0ψ ∈ B0ψ ∈ B0 and j ≥ 0j ≥ 0j ≥ 0 minimal s.t. ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

IH=⇒=⇒=⇒ Aj Aj+1 . . .Aj Aj+1 . . .Aj Aj+1 . . . |= ψ2|= ψ2|= ψ2

¬ψ2 ∈ Bj−1¬ψ2 ∈ Bj−1¬ψ2 ∈ Bj−1

¬ψ2 ∈ Bj−2¬ψ2 ∈ Bj−2¬ψ2 ∈ Bj−2.........

¬ψ2 ∈ B1¬ψ2 ∈ B1¬ψ2 ∈ B1

¬ψ2, ψ ∈ B0¬ψ2, ψ ∈ B0¬ψ2, ψ ∈ B0 ←−←−←− by assumption301 / 527

Page 263: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

Let ψ ∈ B0ψ ∈ B0ψ ∈ B0 and j ≥ 0j ≥ 0j ≥ 0 minimal s.t. ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

IH=⇒=⇒=⇒ Aj Aj+1 . . .Aj Aj+1 . . .Aj Aj+1 . . . |= ψ2|= ψ2|= ψ2

¬ψ2 ∈ Bj−1¬ψ2 ∈ Bj−1¬ψ2 ∈ Bj−1

¬ψ2 ∈ Bj−2¬ψ2 ∈ Bj−2¬ψ2 ∈ Bj−2.........

¬ψ2 ∈ B1¬ψ2 ∈ B1¬ψ2 ∈ B1

¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0 ←←← local consistency w.r.t. UUU302 / 527

Page 264: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F Bi+1 ∈ δ(Bi ,Ai)Bi+1 ∈ δ(Bi ,Ai)Bi+1 ∈ δ(Bi ,Ai)

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

Let ψ ∈ B0ψ ∈ B0ψ ∈ B0 and j ≥ 0j ≥ 0j ≥ 0 minimal s.t. ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

IH=⇒=⇒=⇒ Aj Aj+1 . . .Aj Aj+1 . . .Aj Aj+1 . . . |= ψ2|= ψ2|= ψ2

¬ψ2 ∈ Bj−1¬ψ2 ∈ Bj−1¬ψ2 ∈ Bj−1

¬ψ2 ∈ Bj−2¬ψ2 ∈ Bj−2¬ψ2 ∈ Bj−2.........

¬ψ2, ψ1, ψ ∈ B1¬ψ2, ψ1, ψ ∈ B1¬ψ2, ψ1, ψ ∈ B1

¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0 ←←← local consistency w.r.t. UUU303 / 527

Page 265: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F Bi+1 ∈ δ(Bi ,Ai)Bi+1 ∈ δ(Bi ,Ai)Bi+1 ∈ δ(Bi ,Ai)

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

Let ψ ∈ B0ψ ∈ B0ψ ∈ B0 and j ≥ 0j ≥ 0j ≥ 0 minimal s.t. ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

IH=⇒=⇒=⇒ Aj Aj+1 . . .Aj Aj+1 . . .Aj Aj+1 . . . |= ψ2|= ψ2|= ψ2

¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1

¬ψ2, ψ1, ψ ∈ Bj−2¬ψ2, ψ1, ψ ∈ Bj−2¬ψ2, ψ1, ψ ∈ Bj−2.........

¬ψ2, ψ1, ψ ∈ B1¬ψ2, ψ1, ψ ∈ B1¬ψ2, ψ1, ψ ∈ B1

¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0 ←←← local consistency w.r.t. UUU304 / 527

Page 266: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

Let ψ ∈ B0ψ ∈ B0ψ ∈ B0 and j ≥ 0j ≥ 0j ≥ 0 minimal s.t. ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

IH=⇒=⇒=⇒ Aj Aj+1 . . .Aj Aj+1 . . .Aj Aj+1 . . . |= ψ2|= ψ2|= ψ2

¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1 =⇒=⇒=⇒ Aj−1 Aj . . .Aj−1 Aj . . .Aj−1 Aj . . . |= ψ1|= ψ1|= ψ1

¬ψ2, ψ1, ψ ∈ Bj−2¬ψ2, ψ1, ψ ∈ Bj−2¬ψ2, ψ1, ψ ∈ Bj−2.........

¬ψ2, ψ1, ψ ∈ B1¬ψ2, ψ1, ψ ∈ B1¬ψ2, ψ1, ψ ∈ B1

¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0 ←←← local consistency w.r.t. UUU305 / 527

Page 267: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

Let ψ ∈ B0ψ ∈ B0ψ ∈ B0 and j ≥ 0j ≥ 0j ≥ 0 minimal s.t. ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

IH=⇒=⇒=⇒ Aj Aj+1 . . .Aj Aj+1 . . .Aj Aj+1 . . . |= ψ2|= ψ2|= ψ2

¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1 =⇒=⇒=⇒ Aj−1 Aj . . .Aj−1 Aj . . .Aj−1 Aj . . . |= ψ1|= ψ1|= ψ1

¬ψ2, ψ1, ψ ∈ Bj−2¬ψ2, ψ1, ψ ∈ Bj−2¬ψ2, ψ1, ψ ∈ Bj−2 =⇒=⇒=⇒ Aj−2 Aj−1 . . .Aj−2 Aj−1 . . .Aj−2 Aj−1 . . . |= ψ1|= ψ1|= ψ1.........

¬ψ2, ψ1, ψ ∈ B1¬ψ2, ψ1, ψ ∈ B1¬ψ2, ψ1, ψ ∈ B1

¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0 ←←← local consistency w.r.t. UUU306 / 527

Page 268: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

Let ψ ∈ B0ψ ∈ B0ψ ∈ B0 and j ≥ 0j ≥ 0j ≥ 0 minimal s.t. ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

IH=⇒=⇒=⇒ Aj Aj+1 . . .Aj Aj+1 . . .Aj Aj+1 . . . |= ψ2|= ψ2|= ψ2

¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1 =⇒=⇒=⇒ Aj−1 Aj . . .Aj−1 Aj . . .Aj−1 Aj . . . |= ψ1|= ψ1|= ψ1

¬ψ2, ψ1, ψ ∈ Bj−2¬ψ2, ψ1, ψ ∈ Bj−2¬ψ2, ψ1, ψ ∈ Bj−2 =⇒=⇒=⇒ Aj−2 Aj−1 . . .Aj−2 Aj−1 . . .Aj−2 Aj−1 . . . |= ψ1|= ψ1|= ψ1.........

...

...

............

...

...

...¬ψ2, ψ1, ψ ∈ B1¬ψ2, ψ1, ψ ∈ B1¬ψ2, ψ1, ψ ∈ B1 =⇒=⇒=⇒ A1 A2 A3 . . .A1 A2 A3 . . .A1 A2 A3 . . . |= ψ1|= ψ1|= ψ1

¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0307 / 527

Page 269: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

Let ψ ∈ B0ψ ∈ B0ψ ∈ B0 and j ≥ 0j ≥ 0j ≥ 0 minimal s.t. ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

IH=⇒=⇒=⇒ Aj Aj+1 . . .Aj Aj+1 . . .Aj Aj+1 . . . |= ψ2|= ψ2|= ψ2

¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1 =⇒=⇒=⇒ Aj−1 Aj . . .Aj−1 Aj . . .Aj−1 Aj . . . |= ψ1|= ψ1|= ψ1

¬ψ2, ψ1, ψ ∈ Bj−2¬ψ2, ψ1, ψ ∈ Bj−2¬ψ2, ψ1, ψ ∈ Bj−2 =⇒=⇒=⇒ Aj−2 Aj−1 . . .Aj−2 Aj−1 . . .Aj−2 Aj−1 . . . |= ψ1|= ψ1|= ψ1.........

...

...

............

...

...

...¬ψ2, ψ1, ψ ∈ B1¬ψ2, ψ1, ψ ∈ B1¬ψ2, ψ1, ψ ∈ B1 =⇒=⇒=⇒ A1 A2 A3 . . .A1 A2 A3 . . .A1 A2 A3 . . . |= ψ1|= ψ1|= ψ1

¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0 =⇒=⇒=⇒ A0 A1 A2 . . .A0 A1 A2 . . .A0 A1 A2 . . . |= ψ1|= ψ1|= ψ1308 / 527

Page 270: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

Let ψ ∈ B0ψ ∈ B0ψ ∈ B0 and j ≥ 0j ≥ 0j ≥ 0 minimal s.t. ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

IH=⇒=⇒=⇒ Aj Aj+1 . . .Aj Aj+1 . . .Aj Aj+1 . . . |= ψ2|= ψ2|= ψ2

¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1 =⇒=⇒=⇒ Aj−1 Aj . . .Aj−1 Aj . . .Aj−1 Aj . . . |= ψ1|= ψ1|= ψ1.........

...

...

............

...

...

...¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0 =⇒=⇒=⇒ A0 A1 A2 . . .A0 A1 A2 . . .A0 A1 A2 . . . |= ψ1|= ψ1|= ψ1

⇓⇓⇓

309 / 527

Page 271: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Induction step: until (part “=⇒=⇒=⇒”) ltlmc3.2-65

Claim: If B0A0→ B1

A1→ B2A2→ ...B0

A0→ B1A1→ B2

A2→ ...B0A0→ B1

A1→ B2A2→ ... is a path in GGG s.t.

∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F∀F ∈ F∞∃ j ≥ 0.Bj ∈ F

then for all ψ ∈ cl(ϕ)ψ ∈ cl(ϕ)ψ ∈ cl(ϕ): ψ ∈ B0ψ ∈ B0ψ ∈ B0 iff A0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψA0 A1 A2 . . . |= ψ

Induction step for ψ = ψ1 Uψ2ψ = ψ1 Uψ2ψ = ψ1 Uψ2:

Let ψ ∈ B0ψ ∈ B0ψ ∈ B0 and j ≥ 0j ≥ 0j ≥ 0 minimal s.t. ψ2 ∈ Bjψ2 ∈ Bjψ2 ∈ Bj

IH=⇒=⇒=⇒ Aj Aj+1 . . .Aj Aj+1 . . .Aj Aj+1 . . . |= ψ2|= ψ2|= ψ2

¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1¬ψ2, ψ1, ψ ∈ Bj−1 =⇒=⇒=⇒ Aj−1 Aj . . .Aj−1 Aj . . .Aj−1 Aj . . . |= ψ1|= ψ1|= ψ1.........

...

...

............

...

...

...¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0¬ψ2, ψ1, ψ ∈ B0 =⇒=⇒=⇒ A0 A1 A2 . . .A0 A1 A2 . . .A0 A1 A2 . . . |= ψ1|= ψ1|= ψ1

⇓⇓⇓A0 A1 A2 . . . |= ψ = ψ1 Uψ2A0 A1 A2 . . . |= ψ = ψ1 Uψ2A0 A1 A2 . . . |= ψ = ψ1 Uψ2

310 / 527

Page 272: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Complexity: LTL ��� NBA ltlmc3.2-67

311 / 527

Page 273: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Complexity: LTL ��� NBA ltlmc3.2-67

For each LTL formula ϕϕϕ, there is an NBA AAA s.t.

Lω(A)Lω(A)Lω(A) === Words(ϕ)Words(ϕ)Words(ϕ)

312 / 527

Page 274: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Complexity: LTL ��� NBA ltlmc3.2-67

For each LTL formula ϕϕϕ, there is an NBA AAA s.t.

Lω(A)Lω(A)Lω(A) === Words(ϕ)Words(ϕ)Words(ϕ)

LTL formula ϕϕϕ

GNBA GGG

NBA AAA313 / 527

Page 275: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Complexity: LTL ��� NBA ltlmc3.2-67

For each LTL formula ϕϕϕ, there is an NBA AAA s.t.

Lω(A)Lω(A)Lω(A) === Words(ϕ)Words(ϕ)Words(ϕ)

LTL formula ϕϕϕ

GNBA GGG

NBA AAA size: size(G) · |F|size(G) · |F|size(G) · |F|314 / 527

Page 276: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Complexity: LTL ��� NBA ltlmc3.2-67

For each LTL formula ϕϕϕ, there is an NBA AAA s.t.

Lω(A)Lω(A)Lω(A) === Words(ϕ)Words(ϕ)Words(ϕ)

LTL formula ϕϕϕ

GNBA GGG

NBA AAA size: size(G) · |F|size(G) · |F|size(G) · |F|

|F||F||F| === number ofacceptancesets in GGG

315 / 527

Page 277: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Complexity: LTL ��� NBA ltlmc3.2-67

For each LTL formula ϕϕϕ, there is an NBA AAA s.t.

Lω(A)Lω(A)Lω(A) === Words(ϕ)Words(ϕ)Words(ϕ)

LTL formula ϕϕϕ

GNBA GGG

NBA AAA size: size(G) · |F|size(G) · |F|size(G) · |F|

|F||F||F| === number ofacceptancesets in GGG

≤≤≤ |ϕ||ϕ||ϕ|

316 / 527

Page 278: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Complexity: LTL ��� NBA ltlmc3.2-67

For each LTL formula ϕϕϕ, there is an NBA AAA s.t.

Lω(A)Lω(A)Lω(A) === Words(ϕ)Words(ϕ)Words(ϕ)

LTL formula ϕϕϕ

GNBA GGG

NBA AAA

size: 2|cl(ϕ)|2|cl(ϕ)|2|cl(ϕ)|

size: size(G) · |F|size(G) · |F|size(G) · |F|

|F||F||F| === number ofacceptancesets in GGG

≤≤≤ |ϕ||ϕ||ϕ|

317 / 527

Page 279: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Complexity: LTL ��� NBA ltlmc3.2-67

For each LTL formula ϕϕϕ, there is an NBA AAA s.t.

Lω(A)Lω(A)Lω(A) === Words(ϕ)Words(ϕ)Words(ϕ) and

size(A)size(A)size(A) ≤≤≤ 2|cl(ϕ)| · |ϕ|2|cl(ϕ)| · |ϕ|2|cl(ϕ)| · |ϕ|

LTL formula ϕϕϕ

GNBA GGG

NBA AAA

size: 2|cl(ϕ)|2|cl(ϕ)|2|cl(ϕ)|

size: size(G) · |F|size(G) · |F|size(G) · |F|

|F||F||F| === number ofacceptancesets in GGG

≤≤≤ |ϕ||ϕ||ϕ|

318 / 527

Page 280: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Complexity: LTL ��� NBA ltlmc3.2-67

For each LTL formula ϕϕϕ, there is an NBA AAA s.t.

Lω(A)Lω(A)Lω(A) === Words(ϕ)Words(ϕ)Words(ϕ) and

size(A)size(A)size(A) ≤≤≤ 2|cl(ϕ)| · |ϕ|2|cl(ϕ)| · |ϕ|2|cl(ϕ)| · |ϕ| = 2O(|ϕ|)= 2O(|ϕ|)= 2O(|ϕ|)

LTL formula ϕϕϕ

GNBA GGG

NBA AAA

size: 2|cl(ϕ)|2|cl(ϕ)|2|cl(ϕ)|

size: size(G) · |F|size(G) · |F|size(G) · |F|

|F||F||F| === number ofacceptancesets in GGG

≤≤≤ |ϕ||ϕ||ϕ|

319 / 527

Page 281: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Size of NBA for LTL formulas ltlmc3.2-68

320 / 527

Page 282: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Size of NBA for LTL formulas ltlmc3.2-68

For the proposed transformation LTL��� NBA:

The constructed NBA for LTL formulas are oftenunnecessarily complicated

321 / 527

Page 283: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Size of NBA for LTL formulas ltlmc3.2-68

For the proposed transformation LTL��� NBA:

The constructed NBA for LTL formulas are oftenunnecessarily complicated

NBA for©a©a©a

q0q0q0

q1q1q1

q2q2q2 true

true

aaa

constructed GNBA has444 states and 888 edges

322 / 527

Page 284: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Size of NBA for LTL formulas ltlmc3.2-68

For the proposed transformation LTL��� NBA:

The constructed NBA for LTL formulas are oftenunnecessarily complicated

NBA for a U ba U ba U b

q0q0q0

q1q1q1

aaa

true

bbb

constructed (G)NBA has555 states and 202020 edges

323 / 527

Page 285: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

Size of NBA for LTL formulas ltlmc3.2-68

For the proposed transformation LTL��� NBA:

The constructed NBA for LTL formulas are oftenunnecessarily complicated

... but there exists LTL formulas ϕnϕnϕn such that

• |ϕn| = O(poly(n))|ϕn| = O(poly(n))|ϕn| = O(poly(n))

• each NBA for ϕnϕnϕn has at least 2n2n2n states

324 / 527

Page 286: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT-properties that have no “small” NBA ltlmc3.2-69

325 / 527

Page 287: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT-properties that have no “small” NBA ltlmc3.2-69

consider the following family of LT-properties (En)n≥1(En)n≥1(En)n≥1:

En =En =En =

{set of all infinite words over 2AP2AP2AP of the form

A1 A2 A3. . .An A1 A2 A3. . .An B1 B2 B3 B4 . . .A1 A2 A3. . .An A1 A2 A3. . .An B1 B2 B3 B4 . . .A1 A2 A3. . .An A1 A2 A3. . .An B1 B2 B3 B4 . . .

326 / 527

Page 288: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT-properties that have no “small” NBA ltlmc3.2-69

consider the following family of LT-properties (En)n≥1(En)n≥1(En)n≥1:

En =En =En =

{set of all infinite words over 2AP2AP2AP of the form

A1 A2 A3. . .An A1 A2 A3. . .AnA1 A2 A3. . .An A1 A2 A3. . .AnA1 A2 A3. . .An A1 A2 A3. . .An︸ ︷︷ ︸B1 B2 B3 B4 . . .B1 B2 B3 B4 . . .B1 B2 B3 B4 . . .︸ ︷︷ ︸= xx= xx= xx

for some x ∈(2AP

)∗x ∈

(2AP

)∗x ∈

(2AP

)∗of length nnn

∈(2AP

)ω∈(2AP

)ω∈(2AP

)ωarbitrary

327 / 527

Page 289: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT-properties that have no “small” NBA ltlmc3.2-69

consider the following family of LT-properties (En)n≥1(En)n≥1(En)n≥1:

En =En =En =

{set of all infinite words over 2AP2AP2AP of the form

A1 A2 A3. . .An A1 A2 A3. . .AnA1 A2 A3. . .An A1 A2 A3. . .AnA1 A2 A3. . .An A1 A2 A3. . .An︸ ︷︷ ︸B1 B2 B3 B4 . . .B1 B2 B3 B4 . . .B1 B2 B3 B4 . . .︸ ︷︷ ︸= xx= xx= xx

for some x ∈(2AP

)∗x ∈

(2AP

)∗x ∈

(2AP

)∗of length nnn

∈(2AP

)ω∈(2AP

)ω∈(2AP

)ωarbitrary

LTL formula ϕnϕnϕn with Words(ϕn) = EnWords(ϕn) = EnWords(ϕn) = En

328 / 527

Page 290: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT-properties that have no “small” NBA ltlmc3.2-69

consider the following family of LT-properties (En)n≥1(En)n≥1(En)n≥1:

En =En =En =

{set of all infinite words over 2AP2AP2AP of the form

A1 A2 A3. . .An A1 A2 A3. . .AnA1 A2 A3. . .An A1 A2 A3. . .AnA1 A2 A3. . .An A1 A2 A3. . .An︸ ︷︷ ︸B1 B2 B3 B4 . . .B1 B2 B3 B4 . . .B1 B2 B3 B4 . . .︸ ︷︷ ︸= xx= xx= xx

for some x ∈(2AP

)∗x ∈

(2AP

)∗x ∈

(2AP

)∗of length nnn

∈(2AP

)ω∈(2AP

)ω∈(2AP

)ωarbitrary

LTL formula ϕnϕnϕn with Words(ϕn) = EnWords(ϕn) = EnWords(ϕn) = En

ϕn =∧

a∈AP

∧0≤i<n

(©ia↔©i+na

)ϕn =

∧a∈AP

∧0≤i<n

(©ia↔©i+na

)ϕn =

∧a∈AP

∧0≤i<n

(©ia↔©i+na

)329 / 527

Page 291: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT-properties that have no “small” NBA ltlmc3.2-69

consider the following family of LT-properties (En)n≥1(En)n≥1(En)n≥1:

En =En =En =

{set of all infinite words over 2AP2AP2AP of the form

A1 A2 A3. . .An A1 A2 A3. . .AnA1 A2 A3. . .An A1 A2 A3. . .AnA1 A2 A3. . .An A1 A2 A3. . .An︸ ︷︷ ︸B1 B2 B3 B4 . . .B1 B2 B3 B4 . . .B1 B2 B3 B4 . . .︸ ︷︷ ︸= xx= xx= xx

for some x ∈(2AP

)∗x ∈

(2AP

)∗x ∈

(2AP

)∗of length nnn

∈(2AP

)ω∈(2AP

)ω∈(2AP

)ωarbitrary

LTL formula ϕnϕnϕn with Words(ϕn) = EnWords(ϕn) = EnWords(ϕn) = En

ϕn =∧

a∈AP

∧0≤i<n

(©ia↔©i+na

)ϕn =

∧a∈AP

∧0≤i<n

(©ia↔©i+na

)ϕn =

∧a∈AP

∧0≤i<n

(©ia↔©i+na

)←−←−←− length

O(poly(n))O(poly(n))O(poly(n))

330 / 527

Page 292: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT-property EnEnEn for n=1n=1n=1 ltlmc3.2-69a

E1 =E1 =E1 =

{set of all infinite words over 2AP2AP2AP of the form

A A B1 B2 B3 B4 . . .A A B1 B2 B3 B4 . . .A A B1 B2 B3 B4 . . . where AAA,Bj ⊆ APBj ⊆ APBj ⊆ AP for j ≥ 0j ≥ 0j ≥ 0

331 / 527

Page 293: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT-property EnEnEn for n=1n=1n=1 ltlmc3.2-69a

E1 =E1 =E1 =

{set of all infinite words over 2AP2AP2AP of the form

A A B1 B2 B3 B4 . . .A A B1 B2 B3 B4 . . .A A B1 B2 B3 B4 . . . where AAA,Bj ⊆ APBj ⊆ APBj ⊆ AP for j ≥ 0j ≥ 0j ≥ 0

NBA for E1E1E1 if AP = {a}AP = {a}AP = {a}:

q0q0q0

q1q1q1

q2q2q2

q2q2q2

trueaaa aaa

¬a¬a¬a ¬a¬a¬a

332 / 527

Page 294: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT-property EnEnEn for n=1n=1n=1 ltlmc3.2-69a

E1 =E1 =E1 =

{set of all infinite words over 2AP2AP2AP of the form

A A B1 B2 B3 B4 . . .A A B1 B2 B3 B4 . . .A A B1 B2 B3 B4 . . . where AAA,Bj ⊆ APBj ⊆ APBj ⊆ AP for j ≥ 0j ≥ 0j ≥ 0

NBA for E1E1E1 if AP = {a}AP = {a}AP = {a}:

q0q0q0

q1q1q1

q2q2q2

q2q2q2

trueaaa aaa

¬a¬a¬a ¬a¬a¬a

LTL-formula:a↔©aa↔©aa↔©a

333 / 527

Page 295: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT-property EnEnEn for n=1n=1n=1 ltlmc3.2-69a

E1 =E1 =E1 =

{set of all infinite words over 2AP2AP2AP of the form

A A B1 B2 B3 B4 . . .A A B1 B2 B3 B4 . . .A A B1 B2 B3 B4 . . . where AAA,Bj ⊆ APBj ⊆ APBj ⊆ AP for j ≥ 0j ≥ 0j ≥ 0

NBA for E1E1E1 if AP = {a, b}AP = {a, b}AP = {a, b}:

q0q0q0

q1q1q1

q2q2q2

q3q3q3

q4q4q4

q2q2q2

truea ∧ ba ∧ ba ∧ b a ∧ ba ∧ ba ∧ b

a ∧ ¬ba ∧ ¬ba ∧ ¬b a ∧ ¬ba ∧ ¬ba ∧ ¬b

¬a ∧ b¬a ∧ b¬a ∧ b ¬a ∧ b¬a ∧ b¬a ∧ b

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬b ¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬b

334 / 527

Page 296: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT-property EnEnEn for n=1n=1n=1 ltlmc3.2-69a

E1 =E1 =E1 =

{set of all infinite words over 2AP2AP2AP of the form

A A B1 B2 B3 B4 . . .A A B1 B2 B3 B4 . . .A A B1 B2 B3 B4 . . . where AAA,Bj ⊆ APBj ⊆ APBj ⊆ AP for j ≥ 0j ≥ 0j ≥ 0

NBA for E1E1E1 if AP = {a, b}AP = {a, b}AP = {a, b}:

q0q0q0

q1q1q1

q2q2q2

q3q3q3

q4q4q4

q2q2q2

truea ∧ ba ∧ ba ∧ b a ∧ ba ∧ ba ∧ b

a ∧ ¬ba ∧ ¬ba ∧ ¬b a ∧ ¬ba ∧ ¬ba ∧ ¬b

¬a ∧ b¬a ∧ b¬a ∧ b ¬a ∧ b¬a ∧ b¬a ∧ b

¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬b ¬a ∧ ¬b¬a ∧ ¬b¬a ∧ ¬b

LTL-formula:

(a(a(a ↔↔↔ ©a)©a)©a) ∧∧∧(b(b(b ↔↔↔ ©b)©b)©b)

335 / 527

Page 297: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT property EnEnEn for n=2n=2n=2 and AP = {a}AP = {a}AP = {a} ltlmc3.2-70

p0p0p0

q1q1q1

q0q0q0

q11q11q11

q10q10q10

q01q01q01

q00q00q00

q111q111q111

q101q101q101

q010q010q010

q000q000q000

qFqFqF

aaa

¬a¬a¬a

aaa

¬a¬a¬a

aaa

¬a¬a¬a

aaa

aaa

¬a¬a¬a

¬a¬a¬a

aaa

¬a¬a¬a

aaa

¬a¬a¬a

true

E2 ={A1A2A1A2σ : A1,A2 ⊆ AP , σ ∈

(2AP)ω

}E2 =

{A1A2A1A2σ : A1,A2 ⊆ AP , σ ∈

(2AP)ω

}E2 =

{A1A2A1A2σ : A1,A2 ⊆ AP, σ ∈

(2AP)ω

}

336 / 527

Page 298: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT property EnEnEn for n=2n=2n=2 and AP = {a}AP = {a}AP = {a} ltlmc3.2-70

p0p0p0

q1q1q1

q0q0q0

q11q11q11

q10q10q10

q01q01q01

q00q00q00

q111q111q111

q101q101q101

q010q010q010

q000q000q000

qFqFqF

aaa

¬a¬a¬a

aaa

¬a¬a¬a

aaa

¬a¬a¬a

aaa

aaa

¬a¬a¬a

¬a¬a¬a

aaa

¬a¬a¬a

aaa

¬a¬a¬a

true

E2 ={A1A2A1A2σ : A1,A2 ⊆ AP , σ ∈

(2AP)ω

}E2 =

{A1A2A1A2σ : A1,A2 ⊆ AP , σ ∈

(2AP)ω

}E2 =

{A1A2A1A2σ : A1,A2 ⊆ AP, σ ∈

(2AP)ω

}LTL-formula: (a↔©©a) ∧ (©a↔©©©a)(a↔©©a) ∧ (©a↔©©©a)(a↔©©a) ∧ (©a↔©©©a)

337 / 527

Page 299: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT property EnEnEn for n=2n=2n=2 and AP = {a}AP = {a}AP = {a} ltlmc3.2-70

p0p0p0

q1q1q1

q0q0q0

q11q11q11

q10q10q10

q01q01q01

q00q00q00

q111q111q111

q101q101q101

q010q010q010

q000q000q000

qFqFqF

aaa

¬a¬a¬a

aaa

¬a¬a¬a

aaa

¬a¬a¬a

aaa

aaa

¬a¬a¬a

¬a¬a¬a

aaa

¬a¬a¬a

aaa

¬a¬a¬a

true

general case: each NBA for EnEnEn has ≥ 2n≥ 2n≥ 2n states

338 / 527

Page 300: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT property EnEnEn for n=2n=2n=2 and AP = {a}AP = {a}AP = {a} ltlmc3.2-70

p0p0p0

q1q1q1

q0q0q0

q11q11q11

q10q10q10

q01q01q01

q00q00q00

q111q111q111

q101q101q101

q010q010q010

q000q000q000

qFqFqF

aaa

¬a¬a¬a

aaa

¬a¬a¬a

aaa

¬a¬a¬a

aaa

aaa

¬a¬a¬a

¬a¬a¬a

aaa

¬a¬a¬a

aaa

¬a¬a¬a

true

general case: each NBA for EnEnEn has ≥ 2n≥ 2n≥ 2n states

En = Words(ϕn)En = Words(ϕn)En = Words(ϕn) where ϕn =∧

a∈AP

∧0≤i<n

(©ia↔©n+ia

)ϕn =

∧a∈AP

∧0≤i<n

(©ia↔©n+ia

)ϕn =

∧a∈AP

∧0≤i<n

(©ia↔©n+ia

)339 / 527

Page 301: Linear Temporal Logic (LTL)...Overview overview5.2 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) syntax and semantics

LT property EnEnEn for n=2n=2n=2 and AP = {a}AP = {a}AP = {a} ltlmc3.2-70

p0p0p0

q1q1q1

q0q0q0

q11q11q11

q10q10q10

q01q01q01

q00q00q00

q111q111q111

q101q101q101

q010q010q010

q000q000q000

qFqFqF

aaa

¬a¬a¬a

aaa

¬a¬a¬a

aaa

¬a¬a¬a

aaa

aaa

¬a¬a¬a

¬a¬a¬a

aaa

¬a¬a¬a

aaa

¬a¬a¬a

true

general case: each NBA for EnEnEn has ≥ 2n≥ 2n≥ 2n states

En = Words(ϕn)En = Words(ϕn)En = Words(ϕn) where ϕn =∧

a∈AP

∧0≤i<n

(©ia↔©n+ia

)ϕn =

∧a∈AP

∧0≤i<n

(©ia↔©n+ia

)ϕn =

∧a∈AP

∧0≤i<n

(©ia↔©n+ia

)340 / 527