219
Overview overview6 Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation Tree Logic Equivalences and Abstraction 1 / 357

Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Overview overview6

Introduction

Modelling parallel systems

Linear Time Properties

Regular Properties

Linear Temporal Logic (LTL)

Computation Tree Logic

Equivalences and Abstraction

1 / 357

Page 2: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Linear vs branching time ctlss4.1-1

2 / 357

Page 3: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Linear vs branching time ctlss4.1-1

transition systemT = (S ,Act,→, S0,AP, L)T = (S ,Act,→, S0,AP , L)T = (S ,Act,→, S0,AP, L)

state graph+++ labeling

abstraction from actions

linear-time view

state sequences

branching-time view

states & branches

3 / 357

Page 4: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Linear vs branching time ctlss4.1-1

transition systemT = (S ,Act,→, S0,AP, L)T = (S ,Act,→, S0,AP , L)T = (S ,Act,→, S0,AP, L)

state graph+++ labeling

abstraction from actions

linear-time view

state sequences⇓⇓⇓

traces

branching-time view

states & branches⇓⇓⇓

computation tree

projectionon APAPAP

4 / 357

Page 5: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Computation tree ctlss4.1-1b

5 / 357

Page 6: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Computation tree ctlss4.1-1b

The computation tree of a transition systemT = (S ,Act,→, s0,AP , L)T = (S ,Act,→, s0,AP, L)T = (S ,Act,→, s0,AP, L) arises by:

• unfolding into a tree

• abstraction from the actions

• projection of the states sss to their labels L(s) ⊆ APL(s) ⊆ APL(s) ⊆ AP

6 / 357

Page 7: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Computation tree ctlss4.1-1c

The computation tree of state s0s0s0 in a transition systemT = (S ,Act,→, S0,AP, L)T = (S ,Act,→, S0,AP, L)T = (S ,Act,→, S0,AP, L) arises by:

• unfolding Ts0 = (S ,Act,→, s0,AP, L)Ts0 = (S ,Act,→, s0,AP, L)Ts0 = (S ,Act,→, s0,AP, L) into a tree

• abstraction from the actions

• projection of the states sss to their labels L(s) ⊆ APL(s) ⊆ APL(s) ⊆ AP

7 / 357

Page 8: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: computation tree ctlss4.1-1a

mutual exclusion with semaphore and AP = {crit1, crit2}AP = {crit1, crit2}AP = {crit1, crit2}:∅∅∅

∅∅∅ ∅∅∅

{crit1}{crit1}{crit1} ∅∅∅ ∅∅∅ {crit2}{crit2}{crit2}

∅∅∅ {crit1}{crit1}{crit1} {crit2}{crit2}{crit2} {crit1}{crit1}{crit1}{crit2}{crit2}{crit2}{crit1}{crit1}{crit1}{crit2}{crit2}{crit2} ∅∅∅

...

...

............

...

...

............

...

...

............

...

...

............

...

...

............

8 / 357

Page 9: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: computation tree ctlss4.1-1a

mutual exclusion with semaphore and AP = {crit1, crit2}AP = {crit1, crit2}AP = {crit1, crit2}:∅∅∅

∅∅∅ ∅∅∅

{crit1}{crit1}{crit1} ∅∅∅ ∅∅∅ {crit2}{crit2}{crit2}

∅∅∅ {crit1}{crit1}{crit1} {crit2}{crit2}{crit2} {crit1}{crit1}{crit1}{crit2}{crit2}{crit2}{crit1}{crit1}{crit1}{crit2}{crit2}{crit2} ∅∅∅

...

...

............

...

...

............

...

...

............

...

...

............

...

...

............

path 〈nc1, nc2〉〈nc1, nc2〉〈nc1, nc2〉 〈wait1, nc2〉〈wait1, nc2〉〈wait1, nc2〉 〈crit1, nc2〉〈crit1, nc2〉〈crit1, nc2〉 〈crit1,wait2〉〈crit1,wait2〉〈crit1,wait2〉 . . .. . .. . .

9 / 357

Page 10: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: computation tree ctlss4.1-1a

mutual exclusion with semaphore and AP = {crit1, crit2}AP = {crit1, crit2}AP = {crit1, crit2}:∅∅∅

∅∅∅ ∅∅∅

{crit1}{crit1}{crit1} ∅∅∅ ∅∅∅ {crit2}{crit2}{crit2}

∅∅∅ {crit1}{crit1}{crit1} {crit2}{crit2}{crit2} {crit1}{crit1}{crit1}{crit2}{crit2}{crit2}{crit1}{crit1}{crit1}{crit2}{crit2}{crit2} ∅∅∅

...

...

............

...

...

............

...

...

............

...

...

............

...

...

............

path 〈nc1, nc2〉〈nc1, nc2〉〈nc1, nc2〉 〈wait1, nc2〉〈wait1, nc2〉〈wait1, nc2〉 〈crit1, nc2〉〈crit1, nc2〉〈crit1, nc2〉 〈crit1,wait2〉〈crit1,wait2〉〈crit1,wait2〉 . . .. . .. . .��� ��� ��� ��� ���trace ∅∅∅ ∅∅∅ {crit1}{crit1}{crit1} {crit1}{crit1}{crit1} . . .. . .. . .

10 / 357

Page 11: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Linear vs. branching time ctlss4.1-2

linear time branching time

behaviorpath based state based

11 / 357

Page 12: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Linear vs. branching time ctlss4.1-2

linear time branching time

behaviorpath based

tracesstate based

computation tree

12 / 357

Page 13: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Linear vs. branching time ctlss4.1-2

linear time branching time

behaviorpath based

tracesstate based

computation tree

temporallogic

LTLpath formulas

CTLstate formulas

13 / 357

Page 14: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Linear vs. branching time ctlss4.1-2

linear time branching time

behaviorpath based

tracesstate based

computation tree

temporallogic

LTLpath formulas

CTLstate formulas

modelchecking

PSPACE-completeO

(size(T ) · exp(|ϕ|)

)O

(size(T ) · exp(|ϕ|)

)O

(size(T ) · exp(|ϕ|)

) PTIMEO

(size(T ) · |Φ|

)O

(size(T ) · |Φ|

)O

(size(T ) · |Φ|

)

14 / 357

Page 15: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Linear vs. branching time ctlss4.1-2

linear time branching time

behaviorpath based

tracesstate based

computation tree

temporallogic

LTLpath formulas

CTLstate formulas

modelchecking

PSPACE-completeO

(size(T ) · exp(|ϕ|)

)O

(size(T ) · exp(|ϕ|)

)O

(size(T ) · exp(|ϕ|)

) PTIMEO

(size(T ) · |Φ|

)O

(size(T ) · |Φ|

)O

(size(T ) · |Φ|

)

impl.relation

trace inclusiontrace equivalencePSPACE-complete

simulationbisimulation

PTIME

15 / 357

Page 16: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Linear vs. branching time ctlss4.1-2

linear time branching time

behaviorpath based

tracesstate based

computation tree

temporallogic

LTLpath formulas

CTLstate formulas

modelchecking

PSPACE-completeO

(size(T ) · exp(|ϕ|)

)O

(size(T ) · exp(|ϕ|)

)O

(size(T ) · exp(|ϕ|)

) PTIMEO

(size(T ) · |Φ|

)O

(size(T ) · |Φ|

)O

(size(T ) · |Φ|

)

impl.relation

trace inclusiontrace equivalencePSPACE-complete

simulationbisimulation

PTIME

fairnesscan beencoded

requires specialtreatment

16 / 357

Page 17: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Overview overview6.1

Introduction

Modelling parallel systems

Linear Time Properties

Regular Properties

Linear Temporal Logic (LTL)

Computation Tree Logic

syntax and semantics of CTL ←−←−←−expressiveness of CTL and LTLCTL model checkingfairness, counterexamples/witnessesCTL+++ and CTL∗∗∗

Equivalences and Abstraction17 / 357

Page 18: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Computation Tree Logic (CTL) ctlss4.1-4

18 / 357

Page 19: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Computation Tree Logic (CTL) ctlss4.1-4

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

19 / 357

Page 20: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Computation Tree Logic (CTL) ctlss4.1-4

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

eventually:

∃♦Φ∃♦Φ∃♦Φdef=def=def= ∃(true U Φ)∃(true UΦ)∃(true U Φ)

20 / 357

Page 21: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Computation Tree Logic (CTL) ctlss4.1-4

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

eventually:

∃♦Φ∃♦Φ∃♦Φdef=def=def= ∃(true U Φ)∃(true UΦ)∃(true U Φ)

∀♦Φ∀♦Φ∀♦Φdef=def=def= ?

21/357

Page 22: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Computation Tree Logic (CTL) ctlss4.1-4

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

eventually:

∃♦Φ∃♦Φ∃♦Φdef=def=def= ∃(true U Φ)∃(true UΦ)∃(true U Φ)

∀♦Φ∀♦Φ∀♦Φdef=def=def= ∀(true U Φ)∀(true UΦ)∀(true U Φ)

22 / 357

Page 23: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Computation Tree Logic (CTL) ctlss4.1-4

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

eventually:

∃♦Φ∃♦Φ∃♦Φdef=def=def= ∃(true U Φ)∃(true UΦ)∃(true U Φ)

∀♦Φ∀♦Φ∀♦Φdef=def=def= ∀(true U Φ)∀(true UΦ)∀(true U Φ)

always:

∃�Φ∃�Φ∃�Φdef=def=def= ?

23/357

Page 24: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Computation Tree Logic (CTL) ctlss4.1-4

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

eventually:

∃♦Φ∃♦Φ∃♦Φdef=def=def= ∃(true U Φ)∃(true UΦ)∃(true U Φ)

∀♦Φ∀♦Φ∀♦Φdef=def=def= ∀(true U Φ)∀(true UΦ)∀(true U Φ)

always:

∃�Φ∃�Φ∃�Φdef=def=def= ?

note: ∃¬♦¬Φ∃¬♦¬Φ∃¬♦¬Φ is no CTL formula

24 / 357

Page 25: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Computation Tree Logic (CTL) ctlss4.1-4

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

eventually:

∃♦Φ∃♦Φ∃♦Φdef=def=def= ∃(true U Φ)∃(true UΦ)∃(true U Φ)

∀♦Φ∀♦Φ∀♦Φdef=def=def= ∀(true U Φ)∀(true UΦ)∀(true U Φ)

always:

∃�Φ∃�Φ∃�Φdef=def=def= ¬∀♦¬Φ¬∀♦¬Φ¬∀♦¬Φ

note: ∃¬♦¬Φ∃¬♦¬Φ∃¬♦¬Φ is no CTL formula

25 / 357

Page 26: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Computation Tree Logic (CTL) ctlss4.1-4

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

eventually:

∃♦Φ∃♦Φ∃♦Φdef=def=def= ∃(true U Φ)∃(true UΦ)∃(true U Φ)

∀♦Φ∀♦Φ∀♦Φdef=def=def= ∀(true U Φ)∀(true UΦ)∀(true U Φ)

always:

∃�Φ∃�Φ∃�Φdef=def=def= ¬∀♦¬Φ¬∀♦¬Φ¬∀♦¬Φ

∀�Φ∀�Φ∀�Φdef=def=def= ¬∃♦¬Φ¬∃♦¬Φ¬∃♦¬Φ

note: ∃¬♦¬Φ∃¬♦¬Φ∃¬♦¬Φ is no CTL formula

26 / 357

Page 27: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Syntax of CTL ctlss4.1-3

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

©©© =̂̂=̂= next

UUU =̂̂=̂= until

27 / 357

Page 28: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Syntax of CTL ctlss4.1-3

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

∣∣ ♦Φ∣∣ �Φ

∣∣ ♦Φ∣∣ �Φ

∣∣ ♦Φ∣∣ �Φ

©©© =̂̂=̂= next

UUU =̂̂=̂= until

♦♦♦ =̂̂=̂= eventually

��� =̂̂=̂= always

28 / 357

Page 29: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Examples for CTL formulas ctlss4.1-3

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

∣∣ ♦Φ∣∣ �Φ

∣∣ ♦Φ∣∣ �Φ

∣∣ ♦Φ∣∣ �Φ

mutual exclusion (safety) ∀�(¬crit1 ∨ ¬crit2 )∀�(¬crit1 ∨ ¬crit2 )∀�(¬crit1 ∨ ¬crit2 )

29 / 357

Page 30: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Examples for CTL formulas ctlss4.1-3

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

∣∣ ♦Φ∣∣ �Φ

∣∣ ♦Φ∣∣ �Φ

∣∣ ♦Φ∣∣ �Φ

mutual exclusion (safety) ∀�(¬crit1 ∨ ¬crit2 )∀�(¬crit1 ∨ ¬crit2 )∀�(¬crit1 ∨ ¬crit2 )

“every request will be answered eventually”

∀�( request → ∀♦response )∀�( request → ∀♦response )∀�( request → ∀♦response )

30 / 357

Page 31: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Examples for CTL formulas ctlss4.1-3

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

∣∣ ♦Φ∣∣ �Φ

∣∣ ♦Φ∣∣ �Φ

∣∣ ♦Φ∣∣ �Φ

mutual exclusion (safety) ∀�(¬crit1 ∨ ¬crit2 )∀�(¬crit1 ∨ ¬crit2 )∀�(¬crit1 ∨ ¬crit2 )

“every request will be answered eventually”

∀�( request → ∀♦response )∀�( request → ∀♦response )∀�( request → ∀♦response )

traffic lights ∀�( yellow → ∀©red )∀�( yellow → ∀©red )∀�( yellow → ∀©red )

31 / 357

Page 32: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Examples for CTL formulas ctlss4.1-3

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

∣∣ ♦Φ∣∣ �Φ

∣∣ ♦Φ∣∣ �Φ

∣∣ ♦Φ∣∣ �Φ

mutual exclusion (safety) ∀�(¬crit1 ∨ ¬crit2 )∀�(¬crit1 ∨ ¬crit2 )∀�(¬crit1 ∨ ¬crit2 )

“every request will be answered eventually”

∀�( request → ∀♦response )∀�( request → ∀♦response )∀�( request → ∀♦response )

traffic lights ∀�( yellow → ∀©red )∀�( yellow → ∀©red )∀�( yellow → ∀©red )

reset possiblity ∀�∃♦start∀�∃♦start∀�∃♦start

32 / 357

Page 33: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Examples for CTL formulas ctlss4.1-3

CTL (state) formulas:

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕtrue

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣ ∃ϕ ∣∣ ∀ϕ

CTL path formulas:ϕϕϕ ::=::=::= ©Φ

∣∣ Φ1 U Φ2©Φ∣∣ Φ1 UΦ2©Φ∣∣ Φ1 U Φ2

∣∣ ♦Φ∣∣ �Φ

∣∣ ♦Φ∣∣ �Φ

∣∣ ♦Φ∣∣ �Φ

mutual exclusion (safety) ∀�(¬crit1 ∨ ¬crit2 )∀�(¬crit1 ∨ ¬crit2 )∀�(¬crit1 ∨ ¬crit2 )

“every request will be answered eventually”

∀�( request → ∀♦response )∀�( request → ∀♦response )∀�( request → ∀♦response )

traffic lights ∀�( yellow → ∀©red )∀�( yellow → ∀©red )∀�( yellow → ∀©red )

reset possiblity ∀�∃♦start∀�∃♦start∀�∃♦start

unconditional process fairness ∀�∀♦crit1 ∧ ∀�∀♦crit2∀�∀♦crit1 ∧ ∀�∀♦crit2∀�∀♦crit1 ∧ ∀�∀♦crit233 / 357

Page 34: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: 15-puzzle ctlss4.1-5

666 888 222 121212

444 111 131313 555

999 101010 141414

777 111111 151515 333

?�?�?�111 222 333 444

555 666 777 888

999 101010 111111 121212

131313 141414 151515

34 / 357

Page 35: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: 15-puzzle ctlss4.1-5

666 888 222 121212

444 111 131313 555

999 101010 141414

777 111111 151515 333

?�?�?�111 222 333 444

555 666 777 888

999 101010 111111 121212

131313 141414 151515

transition system has 16! ≈ 2 · 101316! ≈ 2 · 101316! ≈ 2 · 1013 states

35 / 357

Page 36: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: 15-puzzle ctlss4.1-5

666 888 222 121212

444 111 131313 555

999 101010 141414

777 111111 151515 333

?�?�?�111 222 333 444

555 666 777 888

999 101010 111111 121212

131313 141414 151515

transition system has 16! ≈ 2 · 101316! ≈ 2 · 101316! ≈ 2 · 1013 states���

states: game configurationstransitions: legal moves

36 / 357

Page 37: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: 15-puzzle ctlss4.1-5

666 888 222 121212

444 111 131313 555

999 101010 141414

777 111111 151515 333

?�?�?�111 222 333 444

555 666 777 888

999 101010 111111 121212

131313 141414 151515

• transition system has 16! ≈ 2 · 101316! ≈ 2 · 101316! ≈ 2 · 1013 states• representation as parallel system:

left ‖ up ‖ down ‖ rightleft ‖ up ‖ down ‖ rightleft ‖ up ‖ down ‖ right

with shared variables field [i ]field [i ]field [i ] for i = 1, . . . , 16i = 1, . . . , 16i = 1, . . . , 16

37 / 357

Page 38: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: 15-puzzle ctlss4.1-5

666 888 222 121212

444 111 131313 555

999 101010 141414

777 111111 151515 333

?�?�?�111 222 333 444

555 666 777 888

999 101010 111111 121212

131313 141414 151515

• transition system has 16! ≈ 2 · 101316! ≈ 2 · 101316! ≈ 2 · 1013 states• representation as parallel system:

left ‖ up ‖ down ‖ rightleft ‖ up ‖ down ‖ rightleft ‖ up ‖ down ‖ right

with shared variables field [i ]field [i ]field [i ] for i = 1, . . . , 16i = 1, . . . , 16i = 1, . . . , 16

CTL specification:

∃♦∧

1≤i≤15

∃♦∧

1≤i≤15∃♦

∧1≤i≤15

“piecepiecepiece iii on field [i ]field [i ]field [i ]”

38 / 357

Page 39: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: 15-puzzle ctlss4.1-5

666 888 222 121212

444 111 131313 555

999 101010 141414

777 111111 151515 333

?�?�?�111 222 333 444

555 666 777 888

999 101010 111111 121212

131313 141414 151515

• transition system has 16! ≈ 2 · 101316! ≈ 2 · 101316! ≈ 2 · 1013 states• representation as parallel system:

left ‖ up ‖ down ‖ rightleft ‖ up ‖ down ‖ rightleft ‖ up ‖ down ‖ right

with shared variables field [i ]field [i ]field [i ] for i = 1, . . . , 16i = 1, . . . , 16i = 1, . . . , 16

CTL specification: seeking for a witness for

∃♦∧

1≤i≤15

∃♦∧

1≤i≤15∃♦

∧1≤i≤15

“piecepiecepiece iii on field [i ]field [i ]field [i ]”

39 / 357

Page 40: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of CTL ctlss4.1-11

40 / 357

Page 41: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of CTL ctlss4.1-11

define a satisfaction relation |=|=|= for CTL formulasover APAPAP and a given TS T = (S ,Act,→, S0,AP , L)T = (S ,Act,→, S0,AP, L)T = (S ,Act,→, S0,AP, L)

41 / 357

Page 42: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of CTL ctlss4.1-11

define a satisfaction relation |=|=|= for CTL formulasover APAPAP and a given TS T = (S ,Act,→, S0,AP , L)T = (S ,Act,→, S0,AP, L)T = (S ,Act,→, S0,AP, L)without terminal states

42 / 357

Page 43: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of CTL ctlss4.1-11

define a satisfaction relation |=|=|= for CTL formulasover APAPAP and a given TS T = (S ,Act,→, S0,AP , L)T = (S ,Act,→, S0,AP, L)T = (S ,Act,→, S0,AP, L)without terminal states

• interpretation of state formulas over the states

• interpretation of path formulas over the paths(infinite path fragments)

43 / 357

Page 44: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Recall: semantics of LTL ctlss4.1-LTL-semantics

for infinite path fragment π = s0 s1 s2 . . .π = s0 s1 s2 . . .π = s0 s1 s2 . . .:

π |= trueπ |= trueπ |= true

π |= aπ |= aπ |= a iff s0 |= as0 |= as0 |= a ,i.e., a ∈ L(s0)a ∈ L(s0)a ∈ L(s0)

π |= ϕ1 ∧ ϕ2π |= ϕ1 ∧ ϕ2π |= ϕ1 ∧ ϕ2 iff π |= ϕ1π |= ϕ1π |= ϕ1 and π |= ϕ2π |= ϕ2π |= ϕ2

π |= ¬ϕπ |= ¬ϕπ |= ¬ϕ iff π �|= ϕπ �|= ϕπ �|= ϕ

π |=©ϕπ |=©ϕπ |=©ϕ iff suffix(π, 1) = s1 s2 s3 . . . |= ϕsuffix(π, 1) = s1 s2 s3 . . . |= ϕsuffix(π, 1) = s1 s2 s3 . . . |= ϕ

π |= ϕ1 Uϕ2π |= ϕ1 Uϕ2π |= ϕ1 Uϕ2 iff there exists j ≥ 0j ≥ 0j ≥ 0 such that

suffix(π, j)suffix(π, j)suffix(π, j) === sj sj+1 sj+2 . . . |= ϕ2sj sj+1 sj+2 . . . |= ϕ2sj sj+1 sj+2 . . . |= ϕ2 and

suffix(π, k)suffix(π, k)suffix(π, k) === sk sk+1 sk+2 . . . |= ϕ1sk sk+1 sk+2 . . . |= ϕ1sk sk+1 sk+2 . . . |= ϕ1 for 0 ≤ k < j0 ≤ k < j0 ≤ k < j

44 / 357

Page 45: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for path formulas ctlss4.1-11a

45 / 357

Page 46: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for path formulas ctlss4.1-11a

Let π = s0 s1 s2 . . .π = s0 s1 s2 . . .π = s0 s1 s2 . . . be an infinite path fragment.

46 / 357

Page 47: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for path formulas ctlss4.1-11a

Let π = s0 s1 s2 . . .π = s0 s1 s2 . . .π = s0 s1 s2 . . . be an infinite path fragment.

π |=©Φπ |=©Φπ |=©Φ iff s1 |= Φs1 |= Φs1 |= Φ

47 / 357

Page 48: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for path formulas ctlss4.1-11a

Let π = s0 s1 s2 . . .π = s0 s1 s2 . . .π = s0 s1 s2 . . . be an infinite path fragment.

π |=©Φπ |=©Φπ |=©Φ iff s1 |= Φs1 |= Φs1 |= Φ

π |= Φ1 UΦ2π |= Φ1 U Φ2π |= Φ1 UΦ2 iff there exists j ≥ 0j ≥ 0j ≥ 0 such that

sjsjsj |=|=|= Φ2Φ2Φ2

sksksk |=|=|= Φ1Φ1Φ1 for 0 ≤ k < j0 ≤ k < j0 ≤ k < j

48 / 357

Page 49: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for path formulas ctlss4.1-11a

Let π = s0 s1 s2 . . .π = s0 s1 s2 . . .π = s0 s1 s2 . . . be an infinite path fragment.

π |=©Φπ |=©Φπ |=©Φ iff s1 |= Φs1 |= Φs1 |= Φ

π |= Φ1 UΦ2π |= Φ1 U Φ2π |= Φ1 UΦ2 iff there exists j ≥ 0j ≥ 0j ≥ 0 such that

sjsjsj |=|=|= Φ2Φ2Φ2

sksksk |=|=|= Φ1Φ1Φ1 for 0 ≤ k < j0 ≤ k < j0 ≤ k < j

semantics of derived operators:

π |= ♦Φπ |= ♦Φπ |= ♦Φ iff there exists j ≥ 0j ≥ 0j ≥ 0 with sj |= Φsj |= Φsj |= Φ

49 / 357

Page 50: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for path formulas ctlss4.1-11a

Let π = s0 s1 s2 . . .π = s0 s1 s2 . . .π = s0 s1 s2 . . . be an infinite path fragment.

π |=©Φπ |=©Φπ |=©Φ iff s1 |= Φs1 |= Φs1 |= Φ

π |= Φ1 UΦ2π |= Φ1 U Φ2π |= Φ1 UΦ2 iff there exists j ≥ 0j ≥ 0j ≥ 0 such that

sjsjsj |=|=|= Φ2Φ2Φ2

sksksk |=|=|= Φ1Φ1Φ1 for 0 ≤ k < j0 ≤ k < j0 ≤ k < j

semantics of derived operators:

π |= ♦Φπ |= ♦Φπ |= ♦Φ iff there exists j ≥ 0j ≥ 0j ≥ 0 with sj |= Φsj |= Φsj |= Φ

π |= �Φπ |= �Φπ |= �Φ iff for all j ≥ 0j ≥ 0j ≥ 0 we have: sj |= Φsj |= Φsj |= Φ

50 / 357

Page 51: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for state formulas ctlss4.1-13

51 / 357

Page 52: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for state formulas ctlss4.1-13

s |= trues |= trues |= true

52 / 357

Page 53: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for state formulas ctlss4.1-13

s |= trues |= trues |= true

s |= as |= as |= a iff a ∈ L(s)a ∈ L(s)a ∈ L(s)

53 / 357

Page 54: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for state formulas ctlss4.1-13

s |= trues |= trues |= true

s |= as |= as |= a iff a ∈ L(s)a ∈ L(s)a ∈ L(s)

s |= Φ1 ∧ Φ2s |= Φ1 ∧ Φ2s |= Φ1 ∧ Φ2 iff s |= Φ1s |= Φ1s |= Φ1 and s |= Φ2s |= Φ2s |= Φ2

54 / 357

Page 55: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for state formulas ctlss4.1-13

s |= trues |= trues |= true

s |= as |= as |= a iff a ∈ L(s)a ∈ L(s)a ∈ L(s)

s |= Φ1 ∧ Φ2s |= Φ1 ∧ Φ2s |= Φ1 ∧ Φ2 iff s |= Φ1s |= Φ1s |= Φ1 and s |= Φ2s |= Φ2s |= Φ2

s |= ¬Φs |= ¬Φs |= ¬Φ iff s �|= Φs �|= Φs �|= Φ

55 / 357

Page 56: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for state formulas ctlss4.1-13

s |= trues |= trues |= true

s |= as |= as |= a iff a ∈ L(s)a ∈ L(s)a ∈ L(s)

s |= Φ1 ∧ Φ2s |= Φ1 ∧ Φ2s |= Φ1 ∧ Φ2 iff s |= Φ1s |= Φ1s |= Φ1 and s |= Φ2s |= Φ2s |= Φ2

s |= ¬Φs |= ¬Φs |= ¬Φ iff s �|= Φs �|= Φs �|= Φ

s |= ∃ϕs |= ∃ϕs |= ∃ϕ iff there is a path π ∈ Paths(s)π ∈ Paths(s)π ∈ Paths(s)s.t. π |= ϕπ |= ϕπ |= ϕ

56 / 357

Page 57: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for state formulas ctlss4.1-13

s |= trues |= trues |= true

s |= as |= as |= a iff a ∈ L(s)a ∈ L(s)a ∈ L(s)

s |= Φ1 ∧ Φ2s |= Φ1 ∧ Φ2s |= Φ1 ∧ Φ2 iff s |= Φ1s |= Φ1s |= Φ1 and s |= Φ2s |= Φ2s |= Φ2

s |= ¬Φs |= ¬Φs |= ¬Φ iff s �|= Φs �|= Φs �|= Φ

s |= ∃ϕs |= ∃ϕs |= ∃ϕ iff there is a path π ∈ Paths(s)π ∈ Paths(s)π ∈ Paths(s)s.t. π |= ϕπ |= ϕπ |= ϕ

s |= ∀ϕs |= ∀ϕs |= ∀ϕ iff for each path π ∈ Paths(s)π ∈ Paths(s)π ∈ Paths(s):π |= ϕπ |= ϕπ |= ϕ

57 / 357

Page 58: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Satisfaction relation for state formulas ctlss4.1-13

s |= trues |= trues |= true

s |= as |= as |= a iff a ∈ L(s)a ∈ L(s)a ∈ L(s)

s |= Φ1 ∧ Φ2s |= Φ1 ∧ Φ2s |= Φ1 ∧ Φ2 iff s |= Φ1s |= Φ1s |= Φ1 and s |= Φ2s |= Φ2s |= Φ2

s |= ¬Φs |= ¬Φs |= ¬Φ iff s �|= Φs �|= Φs �|= Φ

s |= ∃ϕs |= ∃ϕs |= ∃ϕ iff there is a path π ∈ Paths(s)π ∈ Paths(s)π ∈ Paths(s)s.t. π |= ϕπ |= ϕπ |= ϕ

s |= ∀ϕs |= ∀ϕs |= ∀ϕ iff for each path π ∈ Paths(s)π ∈ Paths(s)π ∈ Paths(s):π |= ϕπ |= ϕπ |= ϕ

satisfaction set for state formula ΦΦΦ:

Sat(Φ)def=Sat(Φ)def=Sat(Φ)def=

{s ∈ S : s |= Φ

}{s ∈ S : s |= Φ

}{s ∈ S : s |= Φ

}58 / 357

Page 59: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Interpretation of CTL formulas over a TS ctlss4.1-13a

59 / 357

Page 60: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Interpretation of CTL formulas over a TS ctlss4.1-13a

satisfaction of state formulas over a TS TTT :

T |= ΦT |= ΦT |= Φ iff S0 ⊆ Sat(Φ)S0 ⊆ Sat(Φ)S0 ⊆ Sat(Φ)

where S0S0S0 is the set of initial states

recall: Sat(Φ) =Sat(Φ) =Sat(Φ) ={s ∈ S : s |= Φ

}{s ∈ S : s |= Φ

}{s ∈ S : s |= Φ

}

60 / 357

Page 61: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Interpretation of CTL formulas over a TS ctlss4.1-13a

satisfaction of state formulas over a TS TTT :

T |= ΦT |= ΦT |= Φ iff S0 ⊆ Sat(Φ)S0 ⊆ Sat(Φ)S0 ⊆ Sat(Φ)

iff s0 |= Φs0 |= Φs0 |= Φ for all initial states s0s0s0 of TTT

where S0S0S0 is the set of initial states

recall: Sat(Φ) =Sat(Φ) =Sat(Φ) ={s ∈ S : s |= Φ

}{s ∈ S : s |= Φ

}{s ∈ S : s |= Φ

}

61 / 357

Page 62: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of the next operator ctlss4.1-8

62 / 357

Page 63: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of the next operator ctlss4.1-8

s |= ∃©Φs |= ∃©Φs |= ∃©Φ iff there exists π = s s1 s2 . . . ∈ Paths(s)π = s s1 s2 . . . ∈ Paths(s)π = s s1 s2 . . . ∈ Paths(s)s.t. π |= ©Φπ |= ©Φπ |= ©Φ

63 / 357

Page 64: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of the next operator ctlss4.1-8

s |= ∃©Φs |= ∃©Φs |= ∃©Φ iff there exists π = s s1 s2 . . . ∈ Paths(s)π = s s1 s2 . . . ∈ Paths(s)π = s s1 s2 . . . ∈ Paths(s)s.t. π |= ©Φπ |= ©Φπ |= ©Φ, i.e., s1 |= Φs1 |= Φs1 |= Φ

∃©Φ∃©Φ∃©Φ

Post(s) ∩ Sat(Φ) �= ∅Post(s) ∩ Sat(Φ) �= ∅Post(s) ∩ Sat(Φ) �= ∅

s1s1s1

sss

64 / 357

Page 65: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of the next operator ctlss4.1-8

s |= ∃©Φs |= ∃©Φs |= ∃©Φ iff there exists π = s s1 s2 . . . ∈ Paths(s)π = s s1 s2 . . . ∈ Paths(s)π = s s1 s2 . . . ∈ Paths(s)s.t. π |= ©Φπ |= ©Φπ |= ©Φ, i.e., s1 |= Φs1 |= Φs1 |= Φ

s |= ∀©Φs |= ∀©Φs |= ∀©Φ iff for all π = s s1 s2 . . . ∈ Paths(s)π = s s1 s2 . . . ∈ Paths(s)π = s s1 s2 . . . ∈ Paths(s):π |= ©Φπ |= ©Φπ |= ©Φ

∃©Φ∃©Φ∃©Φ

Post(s) ∩ Sat(Φ) �= ∅Post(s) ∩ Sat(Φ) �= ∅Post(s) ∩ Sat(Φ) �= ∅

s1s1s1

sss

65 / 357

Page 66: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of the next operator ctlss4.1-8

s |= ∃©Φs |= ∃©Φs |= ∃©Φ iff there exists π = s s1 s2 . . . ∈ Paths(s)π = s s1 s2 . . . ∈ Paths(s)π = s s1 s2 . . . ∈ Paths(s)s.t. π |= ©Φπ |= ©Φπ |= ©Φ, i.e., s1 |= Φs1 |= Φs1 |= Φ

s |= ∀©Φs |= ∀©Φs |= ∀©Φ iff for all π = s s1 s2 . . . ∈ Paths(s)π = s s1 s2 . . . ∈ Paths(s)π = s s1 s2 . . . ∈ Paths(s):π |= ©Φπ |= ©Φπ |= ©Φ, i.e., s1 |= Φs1 |= Φs1 |= Φ

∃©Φ∃©Φ∃©Φ

Post(s) ∩ Sat(Φ) �= ∅Post(s) ∩ Sat(Φ) �= ∅Post(s) ∩ Sat(Φ) �= ∅

s1s1s1

sss∀©Φ∀©Φ∀©Φ

Post(s) ⊆ Sat(Φ)Post(s) ⊆ Sat(Φ)Post(s) ⊆ Sat(Φ)

sss

66 / 357

Page 67: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of until ctlss4.1-9

∃(Φ1 U Φ2)∃(Φ1 U Φ2)∃(Φ1 UΦ2)

67 / 357

Page 68: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of until ctlss4.1-9

∃(Φ1 U Φ2)∃(Φ1 U Φ2)∃(Φ1 UΦ2) ∀(Φ1 U Φ2)∀(Φ1 U Φ2)∀(Φ1 UΦ2)

68 / 357

Page 69: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of until and eventually ctlss4.1-9

∃(Φ1 U Φ2)∃(Φ1 U Φ2)∃(Φ1 UΦ2) ∀(Φ1 U Φ2)∀(Φ1 U Φ2)∀(Φ1 UΦ2)

∃♦Φ∃♦Φ∃♦Φ

69 / 357

Page 70: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of until and eventually ctlss4.1-9

∃(Φ1 U Φ2)∃(Φ1 U Φ2)∃(Φ1 UΦ2) ∀(Φ1 U Φ2)∀(Φ1 U Φ2)∀(Φ1 UΦ2)

∃♦Φ∃♦Φ∃♦Φ ∀♦Φ∀♦Φ∀♦Φ

70 / 357

Page 71: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of eventually and always ctlss4.1-10

∀♦Φ∀♦Φ∀♦Φ ∃♦Φ∃♦Φ∃♦Φ

71 / 357

Page 72: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of eventually and always ctlss4.1-10

¬∀♦Φ¬∀♦Φ¬∀♦Φ ∃♦Φ∃♦Φ∃♦Φ

∃�Ψ∃�Ψ∃�Ψ

72 / 357

Page 73: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Semantics of eventually and always ctlss4.1-10

¬∀♦Φ¬∀♦Φ¬∀♦Φ ¬∃♦Φ¬∃♦Φ¬∃♦Φ

∃�Ψ∃�Ψ∃�Ψ ∀�Ψ∀�Ψ∀�Ψ

73 / 357

Page 74: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example for CTL semantics ctlss4.1-14

TTTstartstartstart

trytrytry

lostlostlost delivereddelivereddelivered

74 / 357

Page 75: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example for CTL semantics ctlss4.1-14

TTTstartstartstart

trytrytry

lostlostlost delivereddelivereddelivered

CTL formula

Φ = ∀�Φ = ∀�Φ = ∀�∀♦start∀♦start∀♦start

75 / 357

Page 76: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example for CTL semantics ctlss4.1-14

TTTstartstartstart

trytrytry

lostlostlost delivereddelivereddelivered

CTL formula

Φ = ∀�Φ = ∀�Φ = ∀� ∀♦start∀♦start∀♦start

Sat(∀♦start)Sat(∀♦start)Sat(∀♦start) === ?

76/357

Page 77: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example for CTL semantics ctlss4.1-14

TTTstartstartstart

trytrytry

lostlostlost delivereddelivereddelivered

CTL formula

Φ = ∀�Φ = ∀�Φ = ∀� ∀♦start∀♦start∀♦start

Sat(∀♦start)Sat(∀♦start)Sat(∀♦start) ==={start, delivered

}{start, delivered

}{start, delivered

}

77 / 357

Page 78: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example for CTL semantics ctlss4.1-14

TTTstartstartstart

trytrytry

lostlostlost delivereddelivereddelivered

CTL formula

Φ = ∀�Φ = ∀�Φ = ∀�∀♦start∀♦start∀♦start =̂̂=̂= ∀�(start ∨ delivered)∀�(start ∨ delivered)∀�(start ∨ delivered)

Sat(∀♦start)Sat(∀♦start)Sat(∀♦start) ==={start, delivered

}{start, delivered

}{start, delivered

}

78 / 357

Page 79: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example for CTL semantics ctlss4.1-14

TTTstartstartstart

trytrytry

lostlostlost delivereddelivereddelivered

CTL formula

Φ = ∀�Φ = ∀�Φ = ∀�∀♦start∀♦start∀♦start =̂̂=̂= ∀�(start ∨ delivered)∀�(start ∨ delivered)∀�(start ∨ delivered)

Sat(∀♦start)Sat(∀♦start)Sat(∀♦start) ==={start, delivered

}{start, delivered

}{start, delivered

}

Sat(Φ)Sat(Φ)Sat(Φ) === ∅∅∅

79 / 357

Page 80: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example for CTL semantics ctlss4.1-14

TTTstartstartstart

trytrytry

lostlostlost delivereddelivereddelivered

T �|= ∀�∀♦startT �|= ∀�∀♦startT �|= ∀�∀♦start

CTL formula

Φ = ∀�Φ = ∀�Φ = ∀�∀♦start∀♦start∀♦start =̂̂=̂= ∀�(start ∨ delivered)∀�(start ∨ delivered)∀�(start ∨ delivered)

Sat(∀♦start)Sat(∀♦start)Sat(∀♦start) ==={start, delivered

}{start, delivered

}{start, delivered

}

Sat(Φ)Sat(Φ)Sat(Φ) === ∅∅∅

80 / 357

Page 81: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example for CTL semantics ctlss4.1-14

TTTstartstartstart

trytrytry

lostlostlost delivereddelivereddelivered

T �|= ∀�∀♦startT �|= ∀�∀♦startT �|= ∀�∀♦start���“infinitely often startstartstart”

CTL formula

Φ = ∀�Φ = ∀�Φ = ∀�∀♦start∀♦start∀♦start =̂̂=̂= ∀�(start ∨ delivered)∀�(start ∨ delivered)∀�(start ∨ delivered)

Sat(∀♦start)Sat(∀♦start)Sat(∀♦start) ==={start, delivered

}{start, delivered

}{start, delivered

}

Sat(Φ)Sat(Φ)Sat(Φ) === ∅∅∅

81 / 357

Page 82: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Specifying “infinitely often” in CTL ctlss4.1-inf-often.tex

82 / 357

Page 83: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Specifying “infinitely often” in CTL ctlss4.1-inf-often.tex

If sss is a state in a TS and a ∈ APa ∈ APa ∈ AP then:

s |=CTL ∀�∀♦as |=CTL ∀�∀♦as |=CTL ∀�∀♦a

iff for all paths π = s0 s1 s2 . . . ∈ Paths(s)π = s0 s1 s2 . . . ∈ Paths(s)π = s0 s1 s2 . . . ∈ Paths(s):∞∃ i ≥ 0.∞∃ i ≥ 0.∞∃ i ≥ 0. s.t. si |= asi |= asi |= a

83 / 357

Page 84: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Specifying “infinitely often” in CTL ctlss4.1-inf-often.tex

If sss is a state in a TS and a ∈ APa ∈ APa ∈ AP then:

s |=CTL ∀�∀♦as |=CTL ∀�∀♦as |=CTL ∀�∀♦a

iff for all paths π = s0 s1 s2 . . . ∈ Paths(s)π = s0 s1 s2 . . . ∈ Paths(s)π = s0 s1 s2 . . . ∈ Paths(s):∞∃ i ≥ 0.∞∃ i ≥ 0.∞∃ i ≥ 0. s.t. si |= asi |= asi |= a

iff s |=LTL �♦as |=LTL �♦as |=LTL �♦a

84 / 357

Page 85: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start ?TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ1 = ∃♦∀�¬startΦ1 = ∃♦∀�¬startΦ1 = ∃♦∀�¬start

85 / 357

Page 86: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start ?TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ1 = ∃♦Φ1 = ∃♦Φ1 = ∃♦ ∀�¬start∀�¬start∀�¬start

Sat(∀�¬start)Sat(∀�¬start)Sat(∀�¬start) ==={error

}{error

}{error

}

86 / 357

Page 87: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start ?TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ1 = ∃♦Φ1 = ∃♦Φ1 = ∃♦ ∀�¬start∀�¬start∀�¬start ��� ∃♦∃♦∃♦ errorerrorerror

Sat(∀�¬start)Sat(∀�¬start)Sat(∀�¬start) ==={error

}{error

}{error

}

Sat(∃♦∀�¬start)Sat(∃♦∀�¬start)Sat(∃♦∀�¬start) === ?

87/357

Page 88: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start√√√TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ1 = ∃♦Φ1 = ∃♦Φ1 = ∃♦ ∀�¬start∀�¬start∀�¬start ��� ∃♦∃♦∃♦ errorerrorerror

Sat(∀�¬start)Sat(∀�¬start)Sat(∀�¬start) ==={error

}{error

}{error

}

Sat(∃♦∀�¬start)Sat(∃♦∀�¬start)Sat(∃♦∀�¬start) === Sat(∃♦error) =Sat(∃♦error) =Sat(∃♦error) = “all states”

88 / 357

Page 89: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start

T |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬start ?

TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ2 = ∀©∃©∀�¬startΦ2 = ∀©∃©∀�¬startΦ2 = ∀©∃©∀�¬start

89 / 357

Page 90: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start

T |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬start ?

TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ2 = ∀©∃©Φ2 = ∀©∃©Φ2 = ∀©∃© ∀�¬start∀�¬start∀�¬start

Sat(∀�¬start)Sat(∀�¬start)Sat(∀�¬start) === {error}{error}{error}

90 / 357

Page 91: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start

T |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬start ?

TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ2 = ∀©Φ2 = ∀©Φ2 = ∀© ∃©∀�¬start∃©∀�¬start∃©∀�¬start � ∀©� ∀©� ∀© ∃©error∃©error∃©error

Sat(∀�¬start)Sat(∀�¬start)Sat(∀�¬start) === {error}{error}{error}Sat(∃©∀�¬start)Sat(∃©∀�¬start)Sat(∃©∀�¬start) === {error , try}{error , try}{error , try}

91 / 357

Page 92: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start

T |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬start ?

TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ2 = ∀©∃©∀�¬startΦ2 = ∀©∃©∀�¬startΦ2 = ∀©∃©∀�¬start ��� ∀©(error ∨ try)∀©(error ∨ try)∀©(error ∨ try)

Sat(∀�¬start)Sat(∀�¬start)Sat(∀�¬start) === {error}{error}{error}Sat(∃©∀�¬start)Sat(∃©∀�¬start)Sat(∃©∀�¬start) === {error , try}{error , try}{error , try}

Sat(∀©∃©∀�¬start)Sat(∀©∃©∀�¬start)Sat(∀©∃©∀�¬start) === ?92/357

Page 93: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start

T |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬start√√√

TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ2 = ∀©∃©∀�¬startΦ2 = ∀©∃©∀�¬startΦ2 = ∀©∃©∀�¬start ��� ∀©(error ∨ try)∀©(error ∨ try)∀©(error ∨ try)

Sat(∀�¬start)Sat(∀�¬start)Sat(∀�¬start) === {error}{error}{error}Sat(∃©∀�¬start)Sat(∃©∀�¬start)Sat(∃©∀�¬start) === {error , try}{error , try}{error , try}

Sat(∀©∃©∀�¬start)Sat(∀©∃©∀�¬start)Sat(∀©∃©∀�¬start) === {error , lost, start}{error , lost, start}{error , lost, start}93 / 357

Page 94: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start

T |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬start

T |= ∃©∀©∀�¬startT |= ∃©∀©∀�¬startT |= ∃©∀©∀�¬start ?

TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ3 = ∃©∀©∀�¬startΦ3 = ∃©∀©∀�¬startΦ3 = ∃©∀©∀�¬start

94 / 357

Page 95: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start

T |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬start

T |= ∃©∀©∀�¬startT |= ∃©∀©∀�¬startT |= ∃©∀©∀�¬start ?

TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ3 = ∃©∀©Φ3 = ∃©∀©Φ3 = ∃©∀© ∀�¬start∀�¬start∀�¬start

Sat(∀�¬start)Sat(∀�¬start)Sat(∀�¬start) === {error}{error}{error}

95 / 357

Page 96: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start

T |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬start

T |= ∃©∀©∀�¬startT |= ∃©∀©∀�¬startT |= ∃©∀©∀�¬start ?

TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ3 = ∃©Φ3 = ∃©Φ3 = ∃© ∀©∀�¬start∀©∀�¬start∀©∀�¬start ��� ∃©∃©∃© ∀©error∀©error∀©error

Sat(∀�¬start)Sat(∀�¬start)Sat(∀�¬start) === {error}{error}{error}Sat(∀©∀�¬start)Sat(∀©∀�¬start)Sat(∀©∀�¬start) === {error}{error}{error}

96 / 357

Page 97: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start

T |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬start

T |= ∃©∀©∀�¬startT |= ∃©∀©∀�¬startT |= ∃©∀©∀�¬start ?

TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ3 = ∃©∀©∀�¬startΦ3 = ∃©∀©∀�¬startΦ3 = ∃©∀©∀�¬start ��� ∃©error∃©error∃©error

Sat(∀�¬start)Sat(∀�¬start)Sat(∀�¬start) === {error}{error}{error}Sat(∀©∀�¬start)Sat(∀©∀�¬start)Sat(∀©∀�¬start) === {error}{error}{error}

Sat(∃©∀©∀�¬start)Sat(∃©∀©∀�¬start)Sat(∃©∀©∀�¬start) === ?97/357

Page 98: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-16

T |= ∃♦∀�¬startT |= ∃♦∀�¬startT |= ∃♦∀�¬start

T |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬startT |= ∀©∃©∀�¬start

T �|= ∃©∀©∀�¬startT �|= ∃©∀©∀�¬startT �|= ∃©∀©∀�¬start

TTT startstartstart

trytrytry

lostlostlost delivereddelivereddeliverederrorerrorerror

Φ3 = ∃©∀©∀�¬startΦ3 = ∃©∀©∀�¬startΦ3 = ∃©∀©∀�¬start ��� ∃©error∃©error∃©error

Sat(∀�¬start)Sat(∀�¬start)Sat(∀�¬start) === {error}{error}{error}Sat(∀©∀�¬start)Sat(∀©∀�¬start)Sat(∀©∀�¬start) === {error}{error}{error}

Sat(∃©∀©∀�¬start)Sat(∃©∀©∀�¬start)Sat(∃©∀©∀�¬start) === {error , try}{error , try}{error , try}98 / 357

Page 99: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-17

s0s0s0 s1s1s1 s2s2s2

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

does T |= ∃©∀�¬aT |= ∃©∀�¬aT |= ∃©∀�¬a hold ?

99/357

Page 100: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-17

s0s0s0 s1s1s1 s2s2s2

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

does T |= ∃©∀�¬aT |= ∃©∀�¬aT |= ∃©∀�¬a hold ?

answer: no

100 / 357

Page 101: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-17

s0s0s0 s1s1s1 s2s2s2

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

does T |= ∃©∀�¬aT |= ∃©∀�¬aT |= ∃©∀�¬a hold ?

answer: no

Sat(∀�¬a)Sat(∀�¬a)Sat(∀�¬a) === {s2}{s2}{s2}

101 / 357

Page 102: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-17

s0s0s0 s1s1s1 s2s2s2

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

does T |= ∃©∀�¬aT |= ∃©∀�¬aT |= ∃©∀�¬a hold ?

answer: no

Sat(∀�¬a)Sat(∀�¬a)Sat(∀�¬a) === {s2}{s2}{s2}Sat(∃©∀�¬a)Sat(∃©∀�¬a)Sat(∃©∀�¬a) === {s2, s1}{s2, s1}{s2, s1}

102 / 357

Page 103: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-17

s0s0s0 s1s1s1 s2s2s2

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

does T |= ∃©∀�¬aT |= ∃©∀�¬aT |= ∃©∀�¬a hold ?

answer: no

does T |= ∀�∃©¬aT |= ∀�∃©¬aT |= ∀�∃©¬a hold ?

103/357

Page 104: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-17

s0s0s0 s1s1s1 s2s2s2

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

does T |= ∃©∀�¬aT |= ∃©∀�¬aT |= ∃©∀�¬a hold ?

answer: no

does T |= ∀�∃©¬aT |= ∀�∃©¬aT |= ∀�∃©¬a hold ?

answer: yes

104 / 357

Page 105: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-17

s0s0s0 s1s1s1 s2s2s2

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

does T |= ∃©∀�¬aT |= ∃©∀�¬aT |= ∃©∀�¬a hold ?

answer: no

does T |= ∀�∃©¬aT |= ∀�∃©¬aT |= ∀�∃©¬a hold ?

answer: yes

Sat(∃©¬a)Sat(∃©¬a)Sat(∃©¬a) === {s0, s1, s2}{s0, s1, s2}{s0, s1, s2}

105 / 357

Page 106: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-17

s0s0s0 s1s1s1 s2s2s2

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

does T |= ∃©∀�¬aT |= ∃©∀�¬aT |= ∃©∀�¬a hold ?

answer: no

does T |= ∀�∃©¬aT |= ∀�∃©¬aT |= ∀�∃©¬a hold ?

answer: yes

Sat(∃©¬a)Sat(∃©¬a)Sat(∃©¬a) === {s0, s1, s2}{s0, s1, s2}{s0, s1, s2}Sat(∀�∃©¬a)Sat(∀�∃©¬a)Sat(∀�∃©¬a) === {s0, s1, s2}{s0, s1, s2}{s0, s1, s2}

106 / 357

Page 107: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-18

sss

ttt uuu

=̂ {a}=̂ {a}=̂ {a}=̂ {b}=̂ {b}=̂ {b}=̂ ∅=̂ ∅=̂ ∅

T |= ∃�∃(a U b)T |= ∃�∃(a U b)T |= ∃�∃(a U b) ?

107/357

Page 108: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-18

sss

ttt uuu

=̂ {a}=̂ {a}=̂ {a}=̂ {b}=̂ {b}=̂ {b}=̂ ∅=̂ ∅=̂ ∅

T |= ∃�∃(a U b)T |= ∃�∃(a U b)T |= ∃�∃(a U b)√√√

as s |= ∃(a U b)s |= ∃(a U b)s |= ∃(a U b)

108 / 357

Page 109: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-18

sss

ttt uuu

=̂ {a}=̂ {a}=̂ {a}=̂ {b}=̂ {b}=̂ {b}=̂ ∅=̂ ∅=̂ ∅

T |= ∃�∃(a U b)T |= ∃�∃(a U b)T |= ∃�∃(a U b)√√√

as s s s . . . |= �∃(a U b)s s s . . . |= �∃(a U b)s s s . . . |= �∃(a U b)

109 / 357

Page 110: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-18

sss

ttt uuu

=̂ {a}=̂ {a}=̂ {a}=̂ {b}=̂ {b}=̂ {b}=̂ ∅=̂ ∅=̂ ∅

T |= ∃�∃(a U b)T |= ∃�∃(a U b)T |= ∃�∃(a U b)√√√

as s s s . . . |= �∃(a U b)s s s . . . |= �∃(a U b)s s s . . . |= �∃(a U b)

T |= ∃((∃©a) U b)T |= ∃((∃©a) U b)T |= ∃((∃©a) U b) ?

110/357

Page 111: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-18

sss

ttt uuu

=̂ {a}=̂ {a}=̂ {a}=̂ {b}=̂ {b}=̂ {b}=̂ ∅=̂ ∅=̂ ∅

T |= ∃�∃(a U b)T |= ∃�∃(a U b)T |= ∃�∃(a U b)√√√

as s s s . . . |= �∃(a U b)s s s . . . |= �∃(a U b)s s s . . . |= �∃(a U b)

T �|= ∃((∃©a) U b)T �|= ∃((∃©a) U b)T �|= ∃((∃©a) U b) as t �|= ∃©at �|= ∃©at �|= ∃©a, u �|= ∃©au �|= ∃©au �|= ∃©a

111 / 357

Page 112: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-18

sss

ttt uuu

=̂ {a}=̂ {a}=̂ {a}=̂ {b}=̂ {b}=̂ {b}=̂ ∅=̂ ∅=̂ ∅

T |= ∃�∃(a U b)T |= ∃�∃(a U b)T |= ∃�∃(a U b)√√√

as s s s . . . |= �∃(a U b)s s s . . . |= �∃(a U b)s s s . . . |= �∃(a U b)

T �|= ∃((∃©a) U b)T �|= ∃((∃©a) U b)T �|= ∃((∃©a) U b) as t �|= ∃©at �|= ∃©at �|= ∃©a, u �|= ∃©au �|= ∃©au �|= ∃©a

T |= ∃(a U∀(¬a U b))T |= ∃(a U ∀(¬a U b))T |= ∃(a U∀(¬a U b)) ?

112/357

Page 113: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-18

sss

ttt uuu

=̂ {a}=̂ {a}=̂ {a}=̂ {b}=̂ {b}=̂ {b}=̂ ∅=̂ ∅=̂ ∅

T |= ∃�∃(a U b)T |= ∃�∃(a U b)T |= ∃�∃(a U b)√√√

as s s s . . . |= �∃(a U b)s s s . . . |= �∃(a U b)s s s . . . |= �∃(a U b)

T �|= ∃((∃©a) U b)T �|= ∃((∃©a) U b)T �|= ∃((∃©a) U b) as t �|= ∃©at �|= ∃©at �|= ∃©a, u �|= ∃©au �|= ∃©au �|= ∃©a

T |= ∃(a U∀(¬a U b))T |= ∃(a U ∀(¬a U b))T |= ∃(a U∀(¬a U b))√√√

113 / 357

Page 114: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: CTL semantics ctlss4.1-18

sss

ttt uuu

=̂ {a}=̂ {a}=̂ {a}=̂ {b}=̂ {b}=̂ {b}=̂ ∅=̂ ∅=̂ ∅

T |= ∃�∃(a U b)T |= ∃�∃(a U b)T |= ∃�∃(a U b)√√√

as s s s . . . |= �∃(a U b)s s s . . . |= �∃(a U b)s s s . . . |= �∃(a U b)

T �|= ∃((∃©a) U b)T �|= ∃((∃©a) U b)T �|= ∃((∃©a) U b) as t �|= ∃©at �|= ∃©at �|= ∃©a, u �|= ∃©au �|= ∃©au �|= ∃©a

T |= ∃(a U∀(¬a U b))T |= ∃(a U ∀(¬a U b))T |= ∃(a U∀(¬a U b))√√√

sss uuu

aaa ∀(¬a U b)∀(¬a U b)∀(¬a U b)

. . .. . .. . . |= a U ∀(¬a U b)|= a U∀(¬a U b)|= a U∀(¬a U b)

114 / 357

Page 115: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-19

Let TTT be a transition system and ΦΦΦ a CTL formula.Is the following statement correct ?

if T �|= ¬ΦT �|= ¬ΦT �|= ¬Φ then T |= ΦT |= ΦT |= Φ

115 / 357

Page 116: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-19

Let TTT be a transition system and ΦΦΦ a CTL formula.Is the following statement correct ?

if T �|= ¬ΦT �|= ¬ΦT �|= ¬Φ then T |= ΦT |= ΦT |= Φ

answer: no

116 / 357

Page 117: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-19

Let TTT be a transition system and ΦΦΦ a CTL formula.Is the following statement correct ?

if T �|= ¬ΦT �|= ¬ΦT �|= ¬Φ then T |= ΦT |= ΦT |= Φ

answer: no

T |= ΦT |= ΦT |= Φ iff s0 |= Φs0 |= Φs0 |= Φ for all initial states s0s0s0

117 / 357

Page 118: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-19

Let TTT be a transition system and ΦΦΦ a CTL formula.Is the following statement correct ?

if T �|= ¬ΦT �|= ¬ΦT �|= ¬Φ then T |= ΦT |= ΦT |= Φ

answer: no

T |= ΦT |= ΦT |= Φ iff s0 |= Φs0 |= Φs0 |= Φ for all initial states s0s0s0

T �|= ¬ΦT �|= ¬ΦT �|= ¬Φ iff there exists an initial state s0s0s0 withs0 �|= ¬Φs0 �|= ¬Φs0 �|= ¬Φ

118 / 357

Page 119: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-19

Let TTT be a transition system and ΦΦΦ a CTL formula.Is the following statement correct ?

if T �|= ¬ΦT �|= ¬ΦT �|= ¬Φ then T |= ΦT |= ΦT |= Φ

answer: no

T |= ΦT |= ΦT |= Φ iff s0 |= Φs0 |= Φs0 |= Φ for all initial states s0s0s0

T �|= ¬ΦT �|= ¬ΦT �|= ¬Φ iff there exists an initial state s0s0s0 withs0 �|= ¬Φs0 �|= ¬Φs0 �|= ¬Φ

iff there exists an initial state s0s0s0 withs0 |= Φs0 |= Φs0 |= Φ

119 / 357

Page 120: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-19

Let TTT be a transition system and ΦΦΦ a CTL formula.Is the following statement correct ?

if T �|= ¬ΦT �|= ¬ΦT �|= ¬Φ then T |= ΦT |= ΦT |= Φ

answer: no

transition system TTT with 2 initial states:

{a}{a}{a} ∅∅∅ T �|= ∃�aT �|= ∃�aT �|= ∃�a

T �|= ¬∃�aT �|= ¬∃�aT �|= ¬∃�a

120 / 357

Page 121: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Hamilton path problem ctlss4.1-20

121 / 357

Page 122: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Hamilton path problem ctlss4.1-20

given: finite directed graph G = (V ,E )G = (V ,E )G = (V ,E )

question: does GGG have a Hamilton path, i.e., a paththat visits each node exactly once ?

122/357

Page 123: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Hamilton path problem ctlss4.1-20

given: finite directed graph G = (V ,E )G = (V ,E )G = (V ,E )

question: does GGG have a Hamilton path, i.e., a paththat visits each node exactly once ?

goal: provide an encoding of the Hamilton path problemin CTL

123/357

Page 124: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Hamilton path problem ctlss4.1-20

given: finite directed graph G = (V ,E )G = (V ,E )G = (V ,E )

question: does GGG have a Hamilton path, i.e., a paththat visits each node exactly once ?

goal: provide an encoding of the Hamilton path problemin CTL by means of a transformation

finitedigraph GGG

��� finite TS TGTGTG

+++ CTL formula ΦΦΦ

124 / 357

Page 125: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Hamilton path problem ctlss4.1-20

given: finite directed graph G = (V ,E )G = (V ,E )G = (V ,E )

question: does GGG have a Hamilton path, i.e., a paththat visits each node exactly once ?

goal: provide an encoding of the Hamilton path problemin CTL by means of a transformation

finitedigraph GGG

��� finite TS TGTGTG

+++ CTL formula ΦΦΦ

s.t. GGG has a Hamilton path iff TG �|= ΦTG �|= ΦTG �|= Φ

125 / 357

Page 126: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL-encoding of the Hamilton path problem ctlss4.1-20

finitedigraph GGG

��� finite TS TGTGTG

+++ CTL formula ΦΦΦ

s.t. GGG has a Hamilton path iff TG �|= ΦTG �|= ΦTG �|= Φ

126 / 357

Page 127: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL-encoding of the Hamilton path problem ctlss4.1-20

finitedigraph GGG

��� finite TS TGTGTG

+++ CTL formula ΦΦΦ

s.t. GGG has a Hamilton path iff TG �|= ΦTG �|= ΦTG �|= Φ

v1v1v1 v2v2v2 v3v3v3

digraph GGG

127 / 357

Page 128: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL-encoding of the Hamilton path problem ctlss4.1-20

finitedigraph GGG

��� finite TS TGTGTG

+++ CTL formula ΦΦΦ

s.t. GGG has a Hamilton path iff TG �|= ΦTG �|= ΦTG �|= Φ

v1v1v1 v2v2v2 v3v3v3

digraph GGG

��� v1v1v1 v2v2v2 v3v3v3

tttTS TGTGTG

128 / 357

Page 129: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL-encoding of the Hamilton path problem ctlss4.1-20

finitedigraph GGG

��� finite TS TGTGTG

+++ CTL formula ΦΦΦ

s.t. GGG has a Hamilton path iff TG �|= ΦTG �|= ΦTG �|= Φ

v1v1v1 v2v2v2 v3v3v3

digraph GGG

��� v1v1v1 v2v2v2 v3v3v3

tttTS TGTGTG

CTL formula ΦΦΦ

(v1 ∧ ∃©(v2 ∧ ∃©v3))(v1 ∧ ∃©(v2 ∧ ∃©v3))(v1 ∧ ∃©(v2 ∧ ∃©v3)) ∨∨∨ (v1 ∧ ∃©(v3 ∧ ∃©v2))(v1 ∧ ∃©(v3 ∧ ∃©v2))(v1 ∧ ∃©(v3 ∧ ∃©v2)) ∨∨∨(v2 ∧ ∃©(v1 ∧ ∃©v3))(v2 ∧ ∃©(v1 ∧ ∃©v3))(v2 ∧ ∃©(v1 ∧ ∃©v3)) ∨∨∨ (v2 ∧ ∃©(v3 ∧ ∃©v1))(v2 ∧ ∃©(v3 ∧ ∃©v1))(v2 ∧ ∃©(v3 ∧ ∃©v1)) ∨∨∨(v3 ∧ ∃©(v1 ∧ ∃©v2))(v3 ∧ ∃©(v1 ∧ ∃©v2))(v3 ∧ ∃©(v1 ∧ ∃©v2)) ∨∨∨ (v3 ∧ ∃©(v2 ∧ ∃©v1))(v3 ∧ ∃©(v2 ∧ ∃©v1))(v3 ∧ ∃©(v2 ∧ ∃©v1))

129 / 357

Page 130: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL-encoding of the Hamilton path problem ctlss4.1-20

finitedigraph GGG

��� finite TS TGTGTG

+++ CTL formula ΦΦΦ

s.t. GGG has a Hamilton path iff TG �|= ΦTG �|= ΦTG �|= Φ

v1v1v1 v2v2v2 v3v3v3

digraph GGG

��� v1v1v1 v2v2v2 v3v3v3

tttTS TGTGTG

CTL formula ΦΦΦ === negation of the formula

(v1 ∧ ∃©(v2 ∧ ∃©v3))(v1 ∧ ∃©(v2 ∧ ∃©v3))(v1 ∧ ∃©(v2 ∧ ∃©v3)) ∨∨∨ (v1 ∧ ∃©(v3 ∧ ∃©v2))(v1 ∧ ∃©(v3 ∧ ∃©v2))(v1 ∧ ∃©(v3 ∧ ∃©v2)) ∨∨∨(v2 ∧ ∃©(v1 ∧ ∃©v3))(v2 ∧ ∃©(v1 ∧ ∃©v3))(v2 ∧ ∃©(v1 ∧ ∃©v3)) ∨∨∨ (v2 ∧ ∃©(v3 ∧ ∃©v1))(v2 ∧ ∃©(v3 ∧ ∃©v1))(v2 ∧ ∃©(v3 ∧ ∃©v1)) ∨∨∨(v3 ∧ ∃©(v1 ∧ ∃©v2))(v3 ∧ ∃©(v1 ∧ ∃©v2))(v3 ∧ ∃©(v1 ∧ ∃©v2)) ∨∨∨ (v3 ∧ ∃©(v2 ∧ ∃©v1))(v3 ∧ ∃©(v2 ∧ ∃©v1))(v3 ∧ ∃©(v2 ∧ ∃©v1))

130 / 357

Page 131: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Equivalence of CTL formulas ctlss4.1-22

131 / 357

Page 132: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Equivalence of CTL formulas ctlss4.1-22

Φ1 ≡ Φ2Φ1 ≡ Φ2Φ1 ≡ Φ2 iff for all transition systems TTT :T |= Φ1 ⇐⇒ T |= Φ2T |= Φ1 ⇐⇒ T |= Φ2T |= Φ1 ⇐⇒ T |= Φ2

132 / 357

Page 133: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Equivalence of CTL formulas ctlss4.1-22

Φ1 ≡ Φ2Φ1 ≡ Φ2Φ1 ≡ Φ2 iff for all transition systems TTT :T |= Φ1 ⇐⇒ T |= Φ2T |= Φ1 ⇐⇒ T |= Φ2T |= Φ1 ⇐⇒ T |= Φ2

quantification over all transition systems TTT• without terminal states• over APAPAP if Φ1Φ1Φ1 and Φ2Φ2Φ2 are CTL formulas over APAPAP

133 / 357

Page 134: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Equivalence of CTL formulas ctlss4.1-22

Φ1 ≡ Φ2Φ1 ≡ Φ2Φ1 ≡ Φ2 iff for all transition systems TTT :T |= Φ1 ⇐⇒ T |= Φ2T |= Φ1 ⇐⇒ T |= Φ2T |= Φ1 ⇐⇒ T |= Φ2

iff for all transition systems TTT :Sat(Φ1) = Sat(Φ2)Sat(Φ1) = Sat(Φ2)Sat(Φ1) = Sat(Φ2)

quantification over all transition systems TTT• without terminal states• over APAPAP if Φ1Φ1Φ1 and Φ2Φ2Φ2 are CTL formulas over APAPAP

134 / 357

Page 135: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Equivalence of CTL formulas ctlss4.1-22

Φ1 ≡ Φ2Φ1 ≡ Φ2Φ1 ≡ Φ2 iff for all transition systems TTT :T |= Φ1 ⇐⇒ T |= Φ2T |= Φ1 ⇐⇒ T |= Φ2T |= Φ1 ⇐⇒ T |= Φ2

iff for all transition systems TTT :Sat(Φ1) = Sat(Φ2)Sat(Φ1) = Sat(Φ2)Sat(Φ1) = Sat(Φ2)

Examples:

¬¬Φ¬¬Φ¬¬Φ ≡≡≡ ΦΦΦ

¬(Φ ∧Ψ)¬(Φ ∧Ψ)¬(Φ ∧Ψ) ≡≡≡ ¬Φ ∨ ¬Ψ¬Φ ∨ ¬Ψ¬Φ ∨ ¬Ψ

135 / 357

Page 136: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Equivalence of CTL formulas ctlss4.1-22

Φ1 ≡ Φ2Φ1 ≡ Φ2Φ1 ≡ Φ2 iff for all transition systems TTT :T |= Φ1 ⇐⇒ T |= Φ2T |= Φ1 ⇐⇒ T |= Φ2T |= Φ1 ⇐⇒ T |= Φ2

iff for all transition systems TTT :Sat(Φ1) = Sat(Φ2)Sat(Φ1) = Sat(Φ2)Sat(Φ1) = Sat(Φ2)

Examples:

¬¬Φ¬¬Φ¬¬Φ ≡≡≡ ΦΦΦ

¬(Φ ∧Ψ)¬(Φ ∧Ψ)¬(Φ ∧Ψ) ≡≡≡ ¬Φ ∨ ¬Ψ¬Φ ∨ ¬Ψ¬Φ ∨ ¬Ψ.........

¬∀©Φ¬∀©Φ¬∀©Φ ≡≡≡ ∃©¬Φ∃©¬Φ∃©¬Φ

136 / 357

Page 137: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-23

∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b

137 / 357

Page 138: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-23

∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b

wrong, e.g,

138 / 357

Page 139: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-23

∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b

wrong, e.g,

∀♦(a ∧ b) ≡ ∀♦a ∧ ∀♦b∀♦(a ∧ b) ≡ ∀♦a ∧ ∀♦b∀♦(a ∧ b) ≡ ∀♦a ∧ ∀♦b

139 / 357

Page 140: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-23

∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b

wrong, e.g,

∀♦(a ∧ b) ≡ ∀♦a ∧ ∀♦b∀♦(a ∧ b) ≡ ∀♦a ∧ ∀♦b∀♦(a ∧ b) ≡ ∀♦a ∧ ∀♦b

wrong, e.g.,

140 / 357

Page 141: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-23

∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b∃♦(a ∧ b) ≡ ∃♦a ∧ ∃♦b

wrong, e.g,

∀♦(a ∧ b) ≡ ∀♦a ∧ ∀♦b∀♦(a ∧ b) ≡ ∀♦a ∧ ∀♦b∀♦(a ∧ b) ≡ ∀♦a ∧ ∀♦b

wrong, e.g.,

but:

∀�(Φ1 ∧ Φ2)∀�(Φ1 ∧ Φ2)∀�(Φ1 ∧ Φ2) ≡≡≡ ∀�Φ1∀�Φ1∀�Φ1 ∧∧∧ ∀�Φ2∀�Φ2∀�Φ2

∃♦(Φ1 ∨ Φ2)∃♦(Φ1 ∨ Φ2)∃♦(Φ1 ∨ Φ2) ≡≡≡ ∃♦Φ1∃♦Φ1∃♦Φ1 ∨∨∨ ∃♦Φ2∃♦Φ2∃♦Φ2

141 / 357

Page 142: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-24

∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a

142 / 357

Page 143: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-24

∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a

correct.

143/ 357

Page 144: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-24

∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a

correct.

both formulas require computation treesof the form:

|= a|= a|= a

arbitrary

144 / 357

Page 145: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-24

∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a

correct.

∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a

145 / 357

Page 146: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-24

∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a

correct.

∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a

wrong,

146/ 357

Page 147: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-24

∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a

correct.

∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a

wrong, e.g.,s0s0s0

147 / 357

Page 148: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-24

∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a

correct.

∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a

wrong, e.g.,s0s0s0 s0 �|= ∃©∃�as0 �|= ∃©∃�as0 �|= ∃©∃�a

148 / 357

Page 149: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-24

∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a

correct.

∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a

wrong, e.g.,s0s0s0 s0 �|= ∃©∃�as0 �|= ∃©∃�as0 �|= ∃©∃�a

note: Sat(∃�a) = ∅Sat(∃�a) = ∅Sat(∃�a) = ∅

149 / 357

Page 150: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-24

∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a

correct.

∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a

wrong, e.g.,s0s0s0 s0 �|= ∃©∃�as0 �|= ∃©∃�as0 �|= ∃©∃�a

s0 |= ∃�∃©as0 |= ∃�∃©as0 |= ∃�∃©a

150 / 357

Page 151: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-24

∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a

correct.

∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a

wrong, e.g.,s0s0s0 s0 �|= ∃©∃�as0 �|= ∃©∃�as0 �|= ∃©∃�a

s0 |= ∃�∃©as0 |= ∃�∃©as0 |= ∃�∃©a

s0 |= ∃©as0 |= ∃©as0 |= ∃©a

151 / 357

Page 152: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-24

∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a

correct.

∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a

wrong, e.g.,s0s0s0 s0 �|= ∃©∃�as0 �|= ∃©∃�as0 �|= ∃©∃�a

s0 |= ∃�∃©as0 |= ∃�∃©as0 |= ∃�∃©a

s0 |= ∃©as0 |= ∃©as0 |= ∃©a

=⇒=⇒=⇒ s0 s0 s0 . . . |= �∃©as0 s0 s0 . . . |= �∃©as0 s0 s0 . . . |= �∃©a

152 / 357

Page 153: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Correct or wrong? ctlss4.1-24

∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a∀©∀�a ≡ ∀�∀©a

correct.

∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a∃©∃�a ≡ ∃�∃©a

wrong, e.g.,s0s0s0 s0 �|= ∃©∃�as0 �|= ∃©∃�as0 �|= ∃©∃�a

s0 |= ∃�∃©as0 |= ∃�∃©as0 |= ∃�∃©a

s0 |= ∃©as0 |= ∃©as0 |= ∃©a

=⇒=⇒=⇒ s0 s0 s0 . . . |= �∃©as0 s0 s0 . . . |= �∃©as0 s0 s0 . . . |= �∃©a

=⇒=⇒=⇒ s0 |= ∃�∃©as0 |= ∃�∃©as0 |= ∃�∃©a153 / 357

Page 154: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW ctlss4.1-21

154 / 357

Page 155: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW ctlss4.1-21

in LTL: ϕ W ψdef= (ϕ U ψ) ∨ �ϕϕ W ψdef= (ϕ U ψ) ∨ �ϕϕ W ψdef= (ϕ U ψ) ∨ �ϕ

in CTL: ?

155/357

Page 156: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW ctlss4.1-21

in LTL: ϕ W ψdef= (ϕ U ψ) ∨ �ϕϕ W ψdef= (ϕ U ψ) ∨ �ϕϕ W ψdef= (ϕ U ψ) ∨ �ϕ

duality of UUU and WWW:

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

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

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

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

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

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

in CTL: ?

156/357

Page 157: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW ctlss4.1-21

in LTL: ϕ W ψdef= (ϕ U ψ) ∨ �ϕϕ W ψdef= (ϕ U ψ) ∨ �ϕϕ W ψdef= (ϕ U ψ) ∨ �ϕ

duality of UUU and WWW:

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

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

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

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

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

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

definition of WWW in CTL on the basis of duality rules:

∃(Φ W Ψ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )∃(Φ WΨ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )∃(ΦW Ψ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

157 / 357

Page 158: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW ctlss4.1-21

in LTL: ϕ W ψdef= (ϕ U ψ) ∨ �ϕϕ W ψdef= (ϕ U ψ) ∨ �ϕϕ W ψdef= (ϕ U ψ) ∨ �ϕ

duality of UUU and WWW:

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

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

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

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

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

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

definition of WWW in CTL on the basis of duality rules:

∃(Φ W Ψ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∀(Φ W Ψ)def= ¬∃( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∃(Φ WΨ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∀(Φ WΨ)def= ¬∃( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∃(ΦW Ψ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∀(ΦW Ψ)def= ¬∃( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

158 / 357

Page 159: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21a

definition of WWW in CTL on the basis of duality rules:

∃(Φ W Ψ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∀(Φ W Ψ)def= ¬∃( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∃(Φ WΨ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∀(Φ WΨ)def= ¬∃( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∃(ΦW Ψ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∀(ΦW Ψ)def= ¬∃( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

159 / 357

Page 160: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21a

definition of WWW in CTL on the basis of duality rules:

∃(Φ W Ψ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∀(Φ W Ψ)def= ¬∃( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∃(Φ WΨ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∀(Φ WΨ)def= ¬∃( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∃(ΦW Ψ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∀(ΦW Ψ)def= ¬∃( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

note that:

∃(Φ W Ψ) ≡ ∃(Φ U Ψ) ∨ ∃�Φ∃(Φ WΨ) ≡ ∃(Φ U Ψ) ∨ ∃�Φ∃(ΦW Ψ) ≡ ∃(Φ U Ψ) ∨ ∃�Φ

160 / 357

Page 161: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21a

definition of WWW in CTL on the basis of duality rules:

∃(Φ W Ψ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∀(Φ W Ψ)def= ¬∃( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∃(Φ WΨ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∀(Φ WΨ)def= ¬∃( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∃(ΦW Ψ)def= ¬∀( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

∀(ΦW Ψ)def= ¬∃( (Φ ∧ ¬Ψ) U (¬Φ ∧ ¬Ψ) )

note that:

∃(Φ W Ψ) ≡ ∃(Φ U Ψ) ∨ ∃�Φ

∀(Φ W Ψ) �≡ ∀(Φ U Ψ) ∨ ∀�Φ

∃(Φ WΨ) ≡ ∃(Φ U Ψ) ∨ ∃�Φ

∀(Φ WΨ) �≡ ∀(Φ U Ψ) ∨ ∀�Φ

∃(ΦW Ψ) ≡ ∃(Φ U Ψ) ∨ ∃�Φ

∀(ΦW Ψ) �≡ ∀(Φ U Ψ) ∨ ∀�Φ

161 / 357

Page 162: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21b

vvv

uuu

sss

ttt

• =̂ {a}=̂ {a}=̂ {a}• =̂ {b}=̂ {b}=̂ {b}• =̂ {c}=̂ {c}=̂ {c}

T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)T |= ∀♦∃(a W c) ?

162/357

Page 163: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21b

vvv

uuu

sss

ttt

• =̂ {a}=̂ {a}=̂ {a}• =̂ {b}=̂ {b}=̂ {b}• =̂ {c}=̂ {c}=̂ {c}

T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)√√√

as s |= ∃(a W c)s |= ∃(a W c)s |= ∃(a W c)

163 / 357

Page 164: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21b

vvv

uuu

sss

ttt

• =̂ {a}=̂ {a}=̂ {a}• =̂ {b}=̂ {b}=̂ {b}• =̂ {c}=̂ {c}=̂ {c}

T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)√√√

as s s1 s2 . . . |= ♦∃(a W c)s s1 s2 . . . |= ♦∃(a W c)s s1 s2 . . . |= ♦∃(a W c)

164 / 357

Page 165: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21b

vvv

uuu

sss

ttt

• =̂ {a}=̂ {a}=̂ {a}• =̂ {b}=̂ {b}=̂ {b}• =̂ {c}=̂ {c}=̂ {c}

T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)√√√

as s |= ∃(a W c)s |= ∃(a W c)s |= ∃(a W c)

T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)T |= ∃(a W ∃�b) ?

165/357

Page 166: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21b

vvv

uuu

sss

ttt

• =̂ {a}=̂ {a}=̂ {a}• =̂ {b}=̂ {b}=̂ {b}• =̂ {c}=̂ {c}=̂ {c}

T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)√√√

as s |= ∃(a W c)s |= ∃(a W c)s |= ∃(a W c)

T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)√√√

as s |= ∃�as |= ∃�as |= ∃�a

166 / 357

Page 167: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21b

vvv

uuu

sss

ttt

• =̂ {a}=̂ {a}=̂ {a}• =̂ {b}=̂ {b}=̂ {b}• =̂ {c}=̂ {c}=̂ {c}

T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)√√√

as s |= ∃(a W c)s |= ∃(a W c)s |= ∃(a W c)

T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)√√√

as s |= ∃�as |= ∃�as |= ∃�a

T |= ∀((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

)?

167/357

Page 168: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21b

vvv

uuu

sss

ttt

• =̂ {a}=̂ {a}=̂ {a}• =̂ {b}=̂ {b}=̂ {b}• =̂ {c}=̂ {c}=̂ {c}

T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)√√√

as s |= ∃(a W c)s |= ∃(a W c)s |= ∃(a W c)

T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)√√√

as s |= ∃�as |= ∃�as |= ∃�a

T |= ∀((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

) √√√

168 / 357

Page 169: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21b

vvv

uuu

sss

ttt

• =̂ {a}=̂ {a}=̂ {a}• =̂ {b}=̂ {b}=̂ {b}• =̂ {c}=̂ {c}=̂ {c}

T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)√√√

as s |= ∃(a W c)s |= ∃(a W c)s |= ∃(a W c)

T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)√√√

as s |= ∃�as |= ∃�as |= ∃�a

T |= ∀((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

) √√√↑↑↑

three types of paths: (s t)ω(s t)ω(s t)ω or (s t)+ vω(s t)+ vω(s t)+ vω or (s t)∗ s u vω(s t)∗ s u vω(s t)∗ s u vω

169 / 357

Page 170: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21b

vvv

uuu

sss

ttt

• =̂ {a}=̂ {a}=̂ {a}• =̂ {b}=̂ {b}=̂ {b}• =̂ {c}=̂ {c}=̂ {c}

T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)√√√

as s |= ∃(a W c)s |= ∃(a W c)s |= ∃(a W c)

T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)√√√

as s |= ∃�as |= ∃�as |= ∃�a

T |= ∀((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

) √√√↑↑↑

three types of paths: (s t)ω(s t)ω(s t)ω or (s t)+ vω(s t)+ vω(s t)+ vω or (s t)∗ s u vω(s t)∗ s u vω(s t)∗ s u vω

in all three cases: π |= �∃©(b ∨ c)π |= �∃©(b ∨ c)π |= �∃©(b ∨ c)

170 / 357

Page 171: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21b

vvv

uuu

sss

ttt

• =̂ {a}=̂ {a}=̂ {a}• =̂ {b}=̂ {b}=̂ {b}• =̂ {c}=̂ {c}=̂ {c}

T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)√√√

as s |= ∃(a W c)s |= ∃(a W c)s |= ∃(a W c)

T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)√√√

as s |= ∃�as |= ∃�as |= ∃�a

T |= ∀((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

) √√√

sss ttt sss ttt sss ttt. . .. . .. . . |= �∃©(b ∨ c)|= �∃©(b ∨ c)|= �∃©(b ∨ c)

171 / 357

Page 172: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21b

vvv

uuu

sss

ttt

• =̂ {a}=̂ {a}=̂ {a}• =̂ {b}=̂ {b}=̂ {b}• =̂ {c}=̂ {c}=̂ {c}

T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)√√√

as s |= ∃(a W c)s |= ∃(a W c)s |= ∃(a W c)

T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)√√√

as s |= ∃�as |= ∃�as |= ∃�a

T |= ∀((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

) √√√

sss ttt sss ttt vvv vvv. . .. . .. . . |= �∃©(b ∨ c)|= �∃©(b ∨ c)|= �∃©(b ∨ c)

172 / 357

Page 173: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Weak until WWW in CTL ctlss4.1-21b

vvv

uuu

sss

ttt

• =̂ {a}=̂ {a}=̂ {a}• =̂ {b}=̂ {b}=̂ {b}• =̂ {c}=̂ {c}=̂ {c}

T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)T |= ∀♦∃(a W c)√√√

as s |= ∃(a W c)s |= ∃(a W c)s |= ∃(a W c)

T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)T |= ∃(a W ∃�b)√√√

as s |= ∃�as |= ∃�as |= ∃�a

T |= ∀((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

)T |= ∀

((∃©(b ∨ c)) W (a ∧ b)

) √√√

sss ttt sss uuu vvv vvv. . .. . .. . . |= �∃©(b ∨ c)|= �∃©(b ∨ c)|= �∃©(b ∨ c)

173 / 357

Page 174: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Expansion laws ctlss4.1-26

174 / 357

Page 175: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Expansion laws ctlss4.1-26

∃(ΦU Ψ)∃(Φ UΨ)∃(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ UΨ))Ψ ∨ (Φ ∧ ∃©∃(ΦU Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ U Ψ))

175 / 357

Page 176: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Expansion laws ctlss4.1-26

∃(ΦU Ψ)∃(Φ UΨ)∃(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ UΨ))Ψ ∨ (Φ ∧ ∃©∃(ΦU Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ U Ψ))

∀(ΦU Ψ)∀(Φ UΨ)∀(Φ UΨ) ≡≡≡ ?

176/357

Page 177: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Expansion laws ctlss4.1-26

∃(ΦU Ψ)∃(Φ UΨ)∃(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ UΨ))Ψ ∨ (Φ ∧ ∃©∃(ΦU Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ U Ψ))

∀(ΦU Ψ)∀(Φ UΨ)∀(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∀©∀(Φ UΨ))Ψ ∨ (Φ ∧ ∀©∀(ΦU Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ U Ψ))

177 / 357

Page 178: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Expansion laws ctlss4.1-26

∃(ΦU Ψ)∃(Φ UΨ)∃(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ UΨ))Ψ ∨ (Φ ∧ ∃©∃(ΦU Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ U Ψ))

∀(ΦU Ψ)∀(Φ UΨ)∀(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∀©∀(Φ UΨ))Ψ ∨ (Φ ∧ ∀©∀(ΦU Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ U Ψ))

∃♦Ψ∃♦Ψ∃♦Ψ ≡≡≡ Ψ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦Ψ

∀♦Ψ∀♦Ψ∀♦Ψ ≡≡≡ Ψ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦Ψ

178 / 357

Page 179: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Expansion laws ctlss4.1-26

∃(ΦU Ψ)∃(Φ UΨ)∃(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ UΨ))Ψ ∨ (Φ ∧ ∃©∃(ΦU Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ U Ψ))

∀(ΦU Ψ)∀(Φ UΨ)∀(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∀©∀(Φ UΨ))Ψ ∨ (Φ ∧ ∀©∀(ΦU Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ U Ψ))

∃♦Ψ∃♦Ψ∃♦Ψ ≡≡≡ Ψ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦Ψ

∀♦Ψ∀♦Ψ∀♦Ψ ≡≡≡ Ψ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦Ψ

∃(Φ W Ψ)∃(Φ W Ψ)∃(Φ W Ψ) ≡≡≡

179 / 357

Page 180: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Expansion laws ctlss4.1-26

∃(ΦU Ψ)∃(Φ UΨ)∃(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ UΨ))Ψ ∨ (Φ ∧ ∃©∃(ΦU Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ U Ψ))

∀(ΦU Ψ)∀(Φ UΨ)∀(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∀©∀(Φ UΨ))Ψ ∨ (Φ ∧ ∀©∀(ΦU Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ U Ψ))

∃♦Ψ∃♦Ψ∃♦Ψ ≡≡≡ Ψ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦Ψ

∀♦Ψ∀♦Ψ∀♦Ψ ≡≡≡ Ψ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦Ψ

∃(Φ W Ψ)∃(Φ W Ψ)∃(Φ W Ψ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))

180 / 357

Page 181: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Expansion laws ctlss4.1-26

∃(ΦU Ψ)∃(Φ UΨ)∃(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ UΨ))Ψ ∨ (Φ ∧ ∃©∃(ΦU Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ U Ψ))

∀(ΦU Ψ)∀(Φ UΨ)∀(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∀©∀(Φ UΨ))Ψ ∨ (Φ ∧ ∀©∀(ΦU Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ U Ψ))

∃♦Ψ∃♦Ψ∃♦Ψ ≡≡≡ Ψ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦Ψ

∀♦Ψ∀♦Ψ∀♦Ψ ≡≡≡ Ψ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦Ψ

∃(Φ W Ψ)∃(Φ W Ψ)∃(Φ W Ψ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))

∀(Φ W Ψ)∀(Φ W Ψ)∀(Φ W Ψ) ≡≡≡ Ψ ∨ (Φ ∧ ∀©∀(Φ W Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ W Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ W Ψ))

181 / 357

Page 182: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Expansion laws ctlss4.1-26

∃(ΦU Ψ)∃(Φ UΨ)∃(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ UΨ))Ψ ∨ (Φ ∧ ∃©∃(ΦU Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ U Ψ))

∀(ΦU Ψ)∀(Φ UΨ)∀(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∀©∀(Φ UΨ))Ψ ∨ (Φ ∧ ∀©∀(ΦU Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ U Ψ))

∃♦Ψ∃♦Ψ∃♦Ψ ≡≡≡ Ψ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦Ψ

∀♦Ψ∀♦Ψ∀♦Ψ ≡≡≡ Ψ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦Ψ

∃(Φ W Ψ)∃(Φ W Ψ)∃(Φ W Ψ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))

∀(Φ W Ψ)∀(Φ W Ψ)∀(Φ W Ψ) ≡≡≡ Ψ ∨ (Φ ∧ ∀©∀(Φ W Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ W Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ W Ψ))

∃�Φ∃�Φ∃�Φ ≡≡≡ ?

182/357

Page 183: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Expansion laws ctlss4.1-26

∃(ΦU Ψ)∃(Φ UΨ)∃(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ UΨ))Ψ ∨ (Φ ∧ ∃©∃(ΦU Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ U Ψ))

∀(ΦU Ψ)∀(Φ UΨ)∀(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∀©∀(Φ UΨ))Ψ ∨ (Φ ∧ ∀©∀(ΦU Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ U Ψ))

∃♦Ψ∃♦Ψ∃♦Ψ ≡≡≡ Ψ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦Ψ

∀♦Ψ∀♦Ψ∀♦Ψ ≡≡≡ Ψ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦Ψ

∃(Φ W Ψ)∃(Φ W Ψ)∃(Φ W Ψ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))

∀(Φ W Ψ)∀(Φ W Ψ)∀(Φ W Ψ) ≡≡≡ Ψ ∨ (Φ ∧ ∀©∀(Φ W Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ W Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ W Ψ))

∃�Φ∃�Φ∃�Φ ≡≡≡ Φ ∧ ∃©∃�ΦΦ ∧ ∃©∃�ΦΦ ∧ ∃©∃�Φ

183 / 357

Page 184: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Expansion laws ctlss4.1-26

∃(ΦU Ψ)∃(Φ UΨ)∃(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ UΨ))Ψ ∨ (Φ ∧ ∃©∃(ΦU Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ U Ψ))

∀(ΦU Ψ)∀(Φ UΨ)∀(Φ UΨ) ≡≡≡ Ψ ∨ (Φ ∧ ∀©∀(Φ UΨ))Ψ ∨ (Φ ∧ ∀©∀(ΦU Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ U Ψ))

∃♦Ψ∃♦Ψ∃♦Ψ ≡≡≡ Ψ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦ΨΨ ∨ ∃©∃♦Ψ

∀♦Ψ∀♦Ψ∀♦Ψ ≡≡≡ Ψ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦ΨΨ ∨ ∀©∀♦Ψ

∃(Φ W Ψ)∃(Φ W Ψ)∃(Φ W Ψ) ≡≡≡ Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))Ψ ∨ (Φ ∧ ∃©∃(Φ W Ψ))

∀(Φ W Ψ)∀(Φ W Ψ)∀(Φ W Ψ) ≡≡≡ Ψ ∨ (Φ ∧ ∀©∀(Φ W Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ W Ψ))Ψ ∨ (Φ ∧ ∀©∀(Φ W Ψ))

∃�Φ∃�Φ∃�Φ ≡≡≡ Φ ∧ ∃©∃�ΦΦ ∧ ∃©∃�ΦΦ ∧ ∃©∃�Φ

∀�Φ∀�Φ∀�Φ ≡≡≡ Φ ∧ ∀©∀�ΦΦ ∧ ∀©∀�ΦΦ ∧ ∀©∀�Φ

184 / 357

Page 185: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Duality laws ctlss4.1-27

duality of ��� and ♦♦♦:

∀�Φ∀�Φ∀�Φ ≡≡≡ ¬∃♦¬Φ¬∃♦¬Φ¬∃♦¬Φ

∀♦Φ∀♦Φ∀♦Φ ≡≡≡ ¬∃�¬Φ¬∃�¬Φ¬∃�¬Φ

185 / 357

Page 186: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Duality laws ctlss4.1-27

duality of ��� and ♦♦♦:

∀�Φ∀�Φ∀�Φ ≡≡≡ ¬∃♦¬Φ¬∃♦¬Φ¬∃♦¬Φ

∀♦Φ∀♦Φ∀♦Φ ≡≡≡ ¬∃�¬Φ¬∃�¬Φ¬∃�¬Φ

self-duality of©©©:

∀©Φ∀©Φ∀©Φ ≡≡≡ ¬∃©¬Φ¬∃©¬Φ¬∃©¬Φ

∃©Φ∃©Φ∃©Φ ≡≡≡ ¬∀©¬Φ¬∀©¬Φ¬∀©¬Φ

186 / 357

Page 187: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Duality laws ctlss4.1-27

duality of ��� and ♦♦♦:

∀�Φ∀�Φ∀�Φ ≡≡≡ ¬∃♦¬Φ¬∃♦¬Φ¬∃♦¬Φ

∀♦Φ∀♦Φ∀♦Φ ≡≡≡ ¬∃�¬Φ¬∃�¬Φ¬∃�¬Φ

self-duality of©©©:

∀©Φ∀©Φ∀©Φ ≡≡≡ ¬∃©¬Φ¬∃©¬Φ¬∃©¬Φ

∃©Φ∃©Φ∃©Φ ≡≡≡ ¬∀©¬Φ¬∀©¬Φ¬∀©¬Φ

duality of UUU and WWW, e.g.:

187 / 357

Page 188: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Duality laws ctlss4.1-27

duality of ��� and ♦♦♦:

∀�Φ∀�Φ∀�Φ ≡≡≡ ¬∃♦¬Φ¬∃♦¬Φ¬∃♦¬Φ

∀♦Φ∀♦Φ∀♦Φ ≡≡≡ ¬∃�¬Φ¬∃�¬Φ¬∃�¬Φ

self-duality of©©©:

∀©Φ∀©Φ∀©Φ ≡≡≡ ¬∃©¬Φ¬∃©¬Φ¬∃©¬Φ

∃©Φ∃©Φ∃©Φ ≡≡≡ ¬∀©¬Φ¬∀©¬Φ¬∀©¬Φ

duality of UUU and WWW, e.g.:

∀(ΦU Ψ)∀(Φ UΨ)∀(Φ UΨ)

188 / 357

Page 189: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Duality laws ctlss4.1-27

duality of ��� and ♦♦♦:

∀�Φ∀�Φ∀�Φ ≡≡≡ ¬∃♦¬Φ¬∃♦¬Φ¬∃♦¬Φ

∀♦Φ∀♦Φ∀♦Φ ≡≡≡ ¬∃�¬Φ¬∃�¬Φ¬∃�¬Φ

self-duality of©©©:

∀©Φ∀©Φ∀©Φ ≡≡≡ ¬∃©¬Φ¬∃©¬Φ¬∃©¬Φ

∃©Φ∃©Φ∃©Φ ≡≡≡ ¬∀©¬Φ¬∀©¬Φ¬∀©¬Φ

duality of UUU and WWW, e.g.:

∀(ΦU Ψ) ≡ ¬∃((Φ ∧ ¬Ψ) W (¬Φ ∧ ¬Ψ))∀(Φ UΨ) ≡ ¬∃((Φ ∧ ¬Ψ) W (¬Φ ∧ ¬Ψ))∀(Φ UΨ) ≡ ¬∃((Φ ∧ ¬Ψ) W (¬Φ ∧ ¬Ψ))

189 / 357

Page 190: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Duality laws ctlss4.1-27

duality of ��� and ♦♦♦:

∀�Φ∀�Φ∀�Φ ≡≡≡ ¬∃♦¬Φ¬∃♦¬Φ¬∃♦¬Φ

∀♦Φ∀♦Φ∀♦Φ ≡≡≡ ¬∃�¬Φ¬∃�¬Φ¬∃�¬Φ

self-duality of©©©:

∀©Φ∀©Φ∀©Φ ≡≡≡ ¬∃©¬Φ¬∃©¬Φ¬∃©¬Φ

∃©Φ∃©Φ∃©Φ ≡≡≡ ¬∀©¬Φ¬∀©¬Φ¬∀©¬Φ

duality of UUU and WWW, e.g.:

∀(ΦU Ψ) ≡ ¬∃((Φ ∧ ¬Ψ) W (¬Φ ∧ ¬Ψ))

≡ ¬∃((¬Ψ) W (¬Φ ∧ ¬Ψ))

∀(Φ UΨ) ≡ ¬∃((Φ ∧ ¬Ψ) W (¬Φ ∧ ¬Ψ))

≡ ¬∃((¬Ψ) W (¬Φ ∧ ¬Ψ))

∀(Φ UΨ) ≡ ¬∃((Φ ∧ ¬Ψ) W (¬Φ ∧ ¬Ψ))

≡ ¬∃((¬Ψ) W (¬Φ ∧ ¬Ψ))

190 / 357

Page 191: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Duality laws ctlss4.1-27

duality of ��� and ♦♦♦:

∀�Φ∀�Φ∀�Φ ≡≡≡ ¬∃♦¬Φ¬∃♦¬Φ¬∃♦¬Φ

∀♦Φ∀♦Φ∀♦Φ ≡≡≡ ¬∃�¬Φ¬∃�¬Φ¬∃�¬Φ

self-duality of©©©:

∀©Φ∀©Φ∀©Φ ≡≡≡ ¬∃©¬Φ¬∃©¬Φ¬∃©¬Φ

∃©Φ∃©Φ∃©Φ ≡≡≡ ¬∀©¬Φ¬∀©¬Φ¬∀©¬Φ

duality of UUU and WWW, e.g.:

∀(ΦU Ψ) ≡ ¬∃((Φ ∧ ¬Ψ) W (¬Φ ∧ ¬Ψ))

≡ ¬∃((¬Ψ) W (¬Φ ∧ ¬Ψ))

≡ ¬∃((¬Ψ) U(¬Φ ∧ ¬Ψ)) ∧ ¬∃�¬Ψ

∀(Φ UΨ) ≡ ¬∃((Φ ∧ ¬Ψ) W (¬Φ ∧ ¬Ψ))

≡ ¬∃((¬Ψ) W (¬Φ ∧ ¬Ψ))

≡ ¬∃((¬Ψ) U(¬Φ ∧ ¬Ψ)) ∧ ¬∃�¬Ψ

∀(Φ UΨ) ≡ ¬∃((Φ ∧ ¬Ψ) W (¬Φ ∧ ¬Ψ))

≡ ¬∃((¬Ψ) W (¬Φ ∧ ¬Ψ))

≡ ¬∃((¬Ψ) U(¬Φ ∧ ¬Ψ)) ∧ ¬∃�¬Ψ

191 / 357

Page 192: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Duality laws ctlss4.1-27a

duality of ��� and ♦♦♦:

∀�Φ∀�Φ∀�Φ ≡≡≡ ¬∃♦¬Φ¬∃♦¬Φ¬∃♦¬Φ

∀♦Φ∀♦Φ∀♦Φ ≡≡≡ ¬∃�¬Φ¬∃�¬Φ¬∃�¬Φ

self-duality of©©©:

∀©Φ∀©Φ∀©Φ ≡≡≡ ¬∃©¬Φ¬∃©¬Φ¬∃©¬Φ

∃©Φ∃©Φ∃©Φ ≡≡≡ ¬∀©¬Φ¬∀©¬Φ¬∀©¬Φ

duality of UUU and WWW yields

∀(ΦU Ψ) ≡ ¬∃((¬Ψ) U(¬Φ ∧ ¬Ψ)) ∧ ¬∃�¬Ψ∀(ΦU Ψ) ≡ ¬∃((¬Ψ) U(¬Φ ∧ ¬Ψ)) ∧ ¬∃�¬Ψ∀(Φ UΨ) ≡ ¬∃((¬Ψ) U(¬Φ ∧ ¬Ψ)) ∧ ¬∃�¬Ψ

192 / 357

Page 193: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Duality laws ctlss4.1-27a

duality of ��� and ♦♦♦:

∀�Φ∀�Φ∀�Φ ≡≡≡ ¬∃♦¬Φ¬∃♦¬Φ¬∃♦¬Φ

∀♦Φ∀♦Φ∀♦Φ ≡≡≡ ¬∃�¬Φ¬∃�¬Φ¬∃�¬Φ

self-duality of©©©:

∀©Φ∀©Φ∀©Φ ≡≡≡ ¬∃©¬Φ¬∃©¬Φ¬∃©¬Φ

∃©Φ∃©Φ∃©Φ ≡≡≡ ¬∀©¬Φ¬∀©¬Φ¬∀©¬Φ

derivation of ∀U∀U∀U from ∃U∃U∃U and ∃�∃�∃�:

∀(ΦU Ψ) ≡ ¬∃((¬Ψ) U(¬Φ ∧ ¬Ψ)) ∧ ¬∃�¬Ψ∀(ΦU Ψ) ≡ ¬∃((¬Ψ) U(¬Φ ∧ ¬Ψ)) ∧ ¬∃�¬Ψ∀(Φ UΨ) ≡ ¬∃((¬Ψ) U(¬Φ ∧ ¬Ψ)) ∧ ¬∃�¬Ψ

∀U∀U∀U and ∀©∀©∀© are expressible via ∃U∃U∃U, ∃©∃©∃© and ∃�∃�∃�

193 / 357

Page 194: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Existential normalform for CTL ctlss4.1-28

For each CTL formula ΨΨΨ there is an equivalentCTL formula ΦΦΦ built by

• operators of propositional logic

• the modalities ∃©∃©∃©, ∃U∃U∃U and ∃�∃�∃�.

194 / 357

Page 195: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Existential normalform for CTL ctlss4.1-28

For each CTL formula ΨΨΨ there is an equivalentCTL formula ΦΦΦ built by

• operators of propositional logic

• the modalities ∃©∃©∃©, ∃U∃U∃U and ∃�∃�∃�.

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣true

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣true

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣

∃©Φ∣∣ ∃(Φ1 U Φ2)

∣∣ ∃�Φ∃©Φ∣∣ ∃(Φ1 UΦ2)

∣∣ ∃�Φ∃©Φ∣∣ ∃(Φ1 U Φ2)

∣∣ ∃�Φ

195 / 357

Page 196: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Existential normalform for CTL ctlss4.1-28

For each CTL formula ΨΨΨ there is an equivalentCTL formula ΦΦΦ built by

• operators of propositional logic

• the modalities ∃©∃©∃©, ∃U∃U∃U and ∃�∃�∃�.

ΦΦΦ ::=::=::= true∣∣ a

∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣true

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣true

∣∣ a∣∣ Φ1 ∧ Φ2

∣∣ ¬Φ∣∣

∃©Φ∣∣ ∃(Φ1 U Φ2)

∣∣ ∃�Φ∃©Φ∣∣ ∃(Φ1 UΦ2)

∣∣ ∃�Φ∃©Φ∣∣ ∃(Φ1 U Φ2)

∣∣ ∃�Φ

transformation Ψ� ΦΨ� ΦΨ� Φ relies on:

∀©Ψ∀©Ψ∀©Ψ ��� ¬∃©¬Ψ¬∃©¬Ψ¬∃©¬Ψ

∀(Ψ1 U Ψ2)∀(Ψ1 U Ψ2)∀(Ψ1 UΨ2) ��� ¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2196 / 357

Page 197: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: ∃∃∃-normal form for CTL formula ctlss4.1-28a

CTL formula ��� CTL formula in ∃∃∃-normal form

∀©Ψ∀©Ψ∀©Ψ ��� ¬∃©¬Ψ¬∃©¬Ψ¬∃©¬Ψ

∀(Ψ1 U Ψ2)∀(Ψ1 U Ψ2)∀(Ψ1 UΨ2) ��� ¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2

∀((∀©a) U¬c)∀((∀©a) U¬c)∀((∀©a) U¬c)

197 / 357

Page 198: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: ∃∃∃-normal form for CTL formula ctlss4.1-28a

CTL formula ��� CTL formula in ∃∃∃-normal form

∀©Ψ∀©Ψ∀©Ψ ��� ¬∃©¬Ψ¬∃©¬Ψ¬∃©¬Ψ

∀(Ψ1 U Ψ2)∀(Ψ1 U Ψ2)∀(Ψ1 UΨ2) ��� ¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2

∀((∀©a) U¬c)∀((∀©a) U¬c)∀((∀©a) U¬c)

≡≡≡ ¬∃(¬¬c U((¬∀©a) ∧ ¬¬c))¬∃(¬¬c U((¬∀©a) ∧ ¬¬c))¬∃(¬¬c U((¬∀©a) ∧ ¬¬c)) ∧ ¬∃�¬¬c∧ ¬∃�¬¬c∧ ¬∃�¬¬c

198 / 357

Page 199: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: ∃∃∃-normal form for CTL formula ctlss4.1-28a

CTL formula ��� CTL formula in ∃∃∃-normal form

∀©Ψ∀©Ψ∀©Ψ ��� ¬∃©¬Ψ¬∃©¬Ψ¬∃©¬Ψ

∀(Ψ1 U Ψ2)∀(Ψ1 U Ψ2)∀(Ψ1 UΨ2) ��� ¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2

∀((∀©a) U¬c)∀((∀©a) U¬c)∀((∀©a) U¬c)

≡≡≡ ¬∃(¬¬c U((¬∀©a) ∧ ¬¬c))¬∃(¬¬c U((¬∀©a) ∧ ¬¬c))¬∃(¬¬c U((¬∀©a) ∧ ¬¬c)) ∧ ¬∃�¬¬c∧ ¬∃�¬¬c∧ ¬∃�¬¬c

≡≡≡ ¬∃(c U((¬∀©a) ∧ c))¬∃(c U((¬∀©a) ∧ c))¬∃(c U((¬∀©a) ∧ c)) ∧ ¬∃�c∧ ¬∃�c∧ ¬∃�c

199 / 357

Page 200: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Example: ∃∃∃-normal form for CTL formula ctlss4.1-28a

CTL formula ��� CTL formula in ∃∃∃-normal form

∀©Ψ∀©Ψ∀©Ψ ��� ¬∃©¬Ψ¬∃©¬Ψ¬∃©¬Ψ

∀(Ψ1 U Ψ2)∀(Ψ1 U Ψ2)∀(Ψ1 UΨ2) ��� ¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2¬∃(¬Ψ2 U(¬Ψ1 ∧ ¬Ψ2)) ∧ ¬∃�¬Ψ2

∀((∀©a) U¬c)∀((∀©a) U¬c)∀((∀©a) U¬c)

≡≡≡ ¬∃(¬¬c U((¬∀©a) ∧ ¬¬c))¬∃(¬¬c U((¬∀©a) ∧ ¬¬c))¬∃(¬¬c U((¬∀©a) ∧ ¬¬c)) ∧ ¬∃�¬¬c∧ ¬∃�¬¬c∧ ¬∃�¬¬c

≡≡≡ ¬∃(c U((¬∀©a) ∧ c))¬∃(c U((¬∀©a) ∧ c))¬∃(c U((¬∀©a) ∧ c)) ∧ ¬∃�c∧ ¬∃�c∧ ¬∃�c

≡≡≡ ¬∃(c U((∃©¬a) ∧ c))¬∃(c U((∃©¬a) ∧ c))¬∃(c U((∃©¬a) ∧ c)) ∧ ¬∃�c∧ ¬∃�c∧ ¬∃�c

200 / 357

Page 201: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Positive normal form ctlss4.1-29

201 / 357

Page 202: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Positive normal form ctlss4.1-29

• negation only on the level of literals

202 / 357

Page 203: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Positive normal form ctlss4.1-29

• negation only on the level of literals

• uses for each operator its dual

203 / 357

Page 204: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Positive normal form ctlss4.1-29

• negation only on the level of literals

• uses for each operator its dual

∗∗∗ truetruetrue and falsefalsefalse

∗∗∗ conjunction and disjunction

204 / 357

Page 205: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Positive normal form for CTL ctlss4.1-29

• negation only on the level of literals

• uses for each operator its dual

∗∗∗ truetruetrue and falsefalsefalse

∗∗∗ conjunction and disjunction

∗∗∗ existential and universal path quantification

∗∗∗ until and weak until

205 / 357

Page 206: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Positive normal form for CTL ctlss4.1-29

• negation only on the level of literals

• uses for each operator (one of) its dual(s)

∗∗∗ truetruetrue and falsefalsefalse

∗∗∗ conjunction and disjunction

∗∗∗ existential and universal path quantification

∗∗∗ until and weak until

alternatively: until and release

206 / 357

Page 207: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Positive normal form for CTL ctlss4.1-29

• negation only on the level of literals

• uses for each operator (one of) its dual(s)

∗∗∗ truetruetrue and falsefalsefalse

∗∗∗ conjunction and disjunction

∗∗∗ existential and universal path quantification

∗∗∗ until and weak until

alternatively: until and release

but no additional operator for©©© required

207 / 357

Page 208: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Positive normal form for CTL ctlss4.1-30

syntax of CTL formulas in PNF:

state formulas:

ΦΦΦ ::=::=::= truetruetrue∣∣∣∣∣∣ false

∣∣ a∣∣ ¬a

∣∣ Φ1 ∧ Φ2

∣∣ Φ1 ∨ Φ2

∣∣false∣∣ a

∣∣ ¬a∣∣ Φ1 ∧ Φ2

∣∣ Φ1 ∨ Φ2

∣∣false∣∣ a

∣∣ ¬a∣∣ Φ1 ∧ Φ2

∣∣ Φ1 ∨ Φ2

∣∣∃ϕ∃ϕ∃ϕ

∣∣∣∣∣∣ ∀ϕ∀ϕ∀ϕpath formulas:

ϕϕϕ ::=::=::= ©Φ©Φ©Φ∣∣∣∣∣∣ Φ1 U Φ2

∣∣ Φ1 W Φ2Φ1 UΦ2

∣∣ Φ1 WΦ2Φ1 UΦ2

∣∣ Φ1 W Φ2

208 / 357

Page 209: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

Positive normal form for CTL ctlss4.1-30

syntax of CTL formulas in PNF:

state formulas:

ΦΦΦ ::=::=::= truetruetrue∣∣∣∣∣∣ false

∣∣ a∣∣ ¬a

∣∣ Φ1 ∧ Φ2

∣∣ Φ1 ∨ Φ2

∣∣false∣∣ a

∣∣ ¬a∣∣ Φ1 ∧ Φ2

∣∣ Φ1 ∨ Φ2

∣∣false∣∣ a

∣∣ ¬a∣∣ Φ1 ∧ Φ2

∣∣ Φ1 ∨ Φ2

∣∣∃ϕ∃ϕ∃ϕ

∣∣∣∣∣∣ ∀ϕ∀ϕ∀ϕpath formulas:

ϕϕϕ ::=::=::= ©Φ©Φ©Φ∣∣∣∣∣∣ Φ1 U Φ2

∣∣ Φ1 W Φ2Φ1 UΦ2

∣∣ Φ1 WΦ2Φ1 UΦ2

∣∣ Φ1 W Φ2

For each CTL formula ΨΨΨ there is an equivalentCTL formula ΦΦΦ in PNF

209/357

Page 210: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL ��� CTL-PNF ctlss4.1-31

CTL formula��� CTL formula in PNF

210 / 357

Page 211: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL ��� CTL-PNF ctlss4.1-31

CTL formula��� CTL formula in PNF

¬true¬true¬true ��� falsefalsefalse

211 / 357

Page 212: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL ��� CTL-PNF ctlss4.1-31

CTL formula��� CTL formula in PNF

¬true¬true¬true ��� falsefalsefalse

¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)��� ¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2 de Morgan laws

212 / 357

Page 213: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL ��� CTL-PNF ctlss4.1-31

CTL formula��� CTL formula in PNF

¬true¬true¬true ��� falsefalsefalse

¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)��� ¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2 de Morgan laws

¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ

213 / 357

Page 214: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL ��� CTL-PNF ctlss4.1-31

CTL formula��� CTL formula in PNF

¬true¬true¬true ��� falsefalsefalse

¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)��� ¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2 de Morgan laws

¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ

¬∀©Φ � ∃©¬Φ¬∀©Φ � ∃©¬Φ¬∀©Φ � ∃©¬Φ

214 / 357

Page 215: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL ��� CTL-PNF ctlss4.1-31

CTL formula��� CTL formula in PNF

¬true¬true¬true ��� falsefalsefalse

¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)��� ¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2 de Morgan laws

¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ

¬∀©Φ � ∃©¬Φ¬∀©Φ � ∃©¬Φ¬∀©Φ � ∃©¬Φ

¬∃(Φ1 U Φ2) � ∀((Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))¬∃(Φ1 UΦ2) � ∀((Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))¬∃(Φ1 U Φ2) � ∀((Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))

215 / 357

Page 216: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL ��� CTL-PNF ctlss4.1-31

CTL formula��� CTL formula in PNF

¬true¬true¬true ��� falsefalsefalse

¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)��� ¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2 de Morgan laws

¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ

¬∀©Φ � ∃©¬Φ¬∀©Φ � ∃©¬Φ¬∀©Φ � ∃©¬Φ

¬∃(Φ1 U Φ2) � ∀((Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))¬∃(Φ1 UΦ2) � ∀((Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))¬∃(Φ1 U Φ2) � ∀((Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))

¬∀(Φ1 U Φ2) � ∃((Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))¬∀(Φ1 UΦ2) � ∃((Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))¬∀(Φ1 U Φ2) � ∃((Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))

216 / 357

Page 217: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL ��� CTL-PNF ctlss4.1-31

CTL formula��� CTL formula in PNF

¬true¬true¬true ��� falsefalsefalse

¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)��� ¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2 de Morgan laws

¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ

¬∀©Φ � ∃©¬Φ¬∀©Φ � ∃©¬Φ¬∀©Φ � ∃©¬Φ

¬∃(Φ1 U Φ2) � ∀((����Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))¬∃(Φ1 UΦ2) � ∀((����Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))¬∃(Φ1 U Φ2) � ∀((����Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))

¬∀(Φ1 U Φ2) � ∃((����Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))¬∀(Φ1 UΦ2) � ∃((����Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))¬∀(Φ1 U Φ2) � ∃((����Φ1 ∧ ¬Φ2) W (¬Φ1 ∧ ¬Φ2))

217 / 357

Page 218: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL ��� CTL-PNF ctlss4.1-31

CTL formula��� CTL formula in PNF

¬true¬true¬true ��� falsefalsefalse

¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)��� ¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2 de Morgan laws

¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ

¬∀©Φ � ∃©¬Φ¬∀©Φ � ∃©¬Φ¬∀©Φ � ∃©¬Φ

¬∃(Φ1 U Φ2) � ∀(¬Φ2 W (¬Φ1 ∧ ¬Φ2))¬∃(Φ1 UΦ2) � ∀(¬Φ2 W (¬Φ1 ∧ ¬Φ2))¬∃(Φ1 U Φ2) � ∀(¬Φ2 W (¬Φ1 ∧ ¬Φ2))

¬∀(Φ1 U Φ2) � ∃(¬Φ2 W (¬Φ1 ∧ ¬Φ2))¬∀(Φ1 UΦ2) � ∃(¬Φ2 W (¬Φ1 ∧ ¬Φ2))¬∀(Φ1 U Φ2) � ∃(¬Φ2 W (¬Φ1 ∧ ¬Φ2))

218 / 357

Page 219: Introduction Modelling parallel systems Linear Time ...€¦ · Introduction Modelling parallel systems Linear Time Properties Regular Properties Linear Temporal Logic (LTL) Computation

CTL ��� CTL-PNF ctlss4.1-31

CTL formula��� CTL formula in PNF

¬true¬true¬true ��� falsefalsefalse

¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)¬(Φ1 ∧ Φ2)��� ¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2¬Φ1 ∨ ¬Φ2 de Morgan laws

¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ¬∃©Φ � ∀©¬Φ

¬∀©Φ � ∃©¬Φ¬∀©Φ � ∃©¬Φ¬∀©Φ � ∃©¬Φ

¬∃(Φ1 U Φ2) � ∀(¬Φ2 W (¬Φ1 ∧ ¬Φ2))¬∃(Φ1 UΦ2) � ∀(¬Φ2 W (¬Φ1 ∧ ¬Φ2))¬∃(Φ1 U Φ2) � ∀(¬Φ2 W (¬Φ1 ∧ ¬Φ2))

¬∀(Φ1 U Φ2) � ∃(¬Φ2 W (¬Φ1 ∧ ¬Φ2))¬∀(Φ1 UΦ2) � ∃(¬Φ2 W (¬Φ1 ∧ ¬Φ2))¬∀(Φ1 U Φ2) � ∃(¬Φ2 W (¬Φ1 ∧ ¬Φ2))

... exponential blowup possible ...

219 / 357