21
Model Checking Timed Automata Material from “Principles of Model Checking” by C. Baier and J-.P Katoen Borzoo Bonakdarpour School of Computer Science University of Waterloo November 24, 2013 B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo) Model Checking Timed Automata November 24, 2013 1 / 18

Model Checking Timed Automata

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Model Checking Timed Automata

Model Checking Timed AutomataMaterial from “Principles of Model Checking” by C. Baier and J-.P Katoen

Borzoo Bonakdarpour

School of Computer ScienceUniversity of Waterloo

November 24, 2013

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 1 / 18

Page 2: Model Checking Timed Automata

Outline

1 Timed Computation Tree Logic (TCTL)

2 TCTL Model Checking

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 2 / 18

Page 3: Model Checking Timed Automata

Presentation outline

1 Timed Computation Tree Logic (TCTL)

2 TCTL Model Checking

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 3 / 18

Page 4: Model Checking Timed Automata

Timed Computation Tree Logic (TCTL)

Definition (Syntax of TCTL)

Formulae in TCTL are either state or path formulae. TCTL state formulae over the setAP of atomic propositions and set C of clocks are formed according to the followinggrammar:

Φ ::= true | a | g | Φ ∧ Φ | Eϕ | Aϕ

where a ∈ AP, g ∈ ACC(C) and ϕ is a path formula defined by:

ϕ ::= ΦUJ Φ

where J ⊆ R≥0 is an interval whose bounds are natural numbers.

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 4 / 18

Page 5: Model Checking Timed Automata

Timed Computation Tree Logic (TCTL)

TCTL Tempral Abbreviations

♦JΦ = true UJ Φ

E�JΦ = ¬A♦J¬Φ

A�JΦ = ¬E♦J¬Φ

TCTL Interval Abbreviations

Intervals are often denoted by shorthand, e.g., ♦≤2 denotes ♦[0,2] and �>8 denotes �(8,∞)

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 5 / 18

Page 6: Model Checking Timed Automata

Timed Computation Tree Logic (TCTL)

TCTL Tempral Abbreviations

♦JΦ = true UJ Φ

E�JΦ = ¬A♦J¬Φ

A�JΦ = ¬E♦J¬Φ

TCTL Interval Abbreviations

Intervals are often denoted by shorthand, e.g., ♦≤2 denotes ♦[0,2] and �>8 denotes �(8,∞)

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 5 / 18

Page 7: Model Checking Timed Automata

Example

Example

Consider the following timed automata

Example

The property:

“the light cannot be continously switched on for more than 2 minutes”

is expressed by the TCTL formula:

A�(on→ A♦>2¬on)

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 6 / 18

Page 8: Model Checking Timed Automata

Example

Example

Consider the following timed automata

Example

The property:

“the light cannot be continously switched on for more than 2 minutes”

is expressed by the TCTL formula:

A�(on→ A♦>2¬on)

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 6 / 18

Page 9: Model Checking Timed Automata

Semantics of TCTL

Definition (Satisfaction relation for TCTL)

Let TA = (L,Σ,E ,C , L0, I ) be a timed automaton, a ∈ AP, g ∈ ACC(C), and J ⊆ R≥0.For state s = 〈l , ν〉 in TS(TA) and TCTL formulea Φ and Ψ, and TCTL path formula ϕ,the satisfaction relation |= is defined for state formulae by

s |= true

s |= a iff a ∈ Label(l)

s |= g iff ν |= g

s |= ¬Φ iff not s |= Φ

s |= Φ ∧ Ψ iff (s |= Φ) ∧ (s |= Ψ)

s |= Eϕ iff π |= ϕ for some π ∈ Pathsdiv (s)

s |= Aϕ iff π |= ϕ for all π ∈ Pathsdiv (s)

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 7 / 18

Page 10: Model Checking Timed Automata

Semantics of TCTL (cont’d)

Definition (Satisfaction relation for TCTL (con’d))

For a time-divergent path π = s0d0==⇒ s1

d1==⇒ . . . , the satisfaction relation |= for pathformulae is defined by:

π |= ΦUJ Ψ iff ∃i ≥ 0.si + d |= Ψ for some d ∈ [0, di ] with

i−1∑k=0

dk + d ∈ J and

∀j ≤ i .sj + d ′ |= Φ ∨ Ψ for any d ′ ∈ [0, dj ] with

j−1∑k=0

dk + d ′ ≤i−1∑k=0

dk + d

where for si = 〈li , νi 〉 and d ≥ 0, we have si + d = 〈li , νi + d〉

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 8 / 18

Page 11: Model Checking Timed Automata

Semantics of TCTL (cont’d)

Definition (TCTL Semantics fot Timed Automata)

A timed automaton TA satisfies a TCTL formula Φ iff s0 |= Φ for each initial state s0 ofTA.

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 9 / 18

Page 12: Model Checking Timed Automata

Presentation outline

1 Timed Computation Tree Logic (TCTL)

2 TCTL Model Checking

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 10 / 18

Page 13: Model Checking Timed Automata

Reduction to CTL Model Checking

Idea

Given a time automaton TA and a TCTL formula Φ, our goal is to find a finite transitionsystem S and an CTL formula Φ̂, such that

TA |=TCTL Φ iff R(TA,Φ) |=CTL Φ̂

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 11 / 18

Page 14: Model Checking Timed Automata

Input: timed automaton TA and TCTL formula Φ (both overpropositions AP and clocks C .

Output: TA |= Φ

1 Φ̂ := eliminate the timing parameters from Φ;

2 determine the clock equivalence classes under ∼=;

3 construct the region transition system TS = R(TA,Φ);

4 apply the CTL model checking algorithm to check TS |= Φ̂

5 TA |= Φ if and only if TS |= Φ̂

Algorithm 1: A recipe for TCTL model checking

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 12 / 18

Page 15: Model Checking Timed Automata

Elimination of Timing Parameters

Notation

For clock evaluation ν, z 6∈ C , and d ∈ R≥0, let ν{z := d} denote the clock valuation forC ∪ {z} that extends ν by setting z to d while keeping the value of all other clocksunchanged:

ν{z := d}(x) =

{ν(x) if x ∈ C

d if x = z(1)

Notation

Let TA be a timed automaton over clocks C . For state s = 〈l , ν〉 in TS(TA) lets{z := d} denote the state, ν{z := d}. Note that s{z := d} is a state in TS(TA⊕ z)where TA⊕ z is the timed automaton TA with the set of clocks C ∪ {z}.

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 13 / 18

Page 16: Model Checking Timed Automata

Elimination of Timing Parameters

Notation

For clock evaluation ν, z 6∈ C , and d ∈ R≥0, let ν{z := d} denote the clock valuation forC ∪ {z} that extends ν by setting z to d while keeping the value of all other clocksunchanged:

ν{z := d}(x) =

{ν(x) if x ∈ C

d if x = z(1)

Notation

Let TA be a timed automaton over clocks C . For state s = 〈l , ν〉 in TS(TA) lets{z := d} denote the state, ν{z := d}. Note that s{z := d} is a state in TS(TA⊕ z)where TA⊕ z is the timed automaton TA with the set of clocks C ∪ {z}.

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 13 / 18

Page 17: Model Checking Timed Automata

Elimination of Timing Parameters

Theorem

Let TA be timed automaton (L,Σ,C ,E , L0, I ), and ΦUJ Ψ a TCTL formula over C andAP. For clock z 6∈ C and for any state s of TS(TA) it holds that

1 s |=TCTL E(ΦUJ Ψ) iff s{z := 0} |=CTL E((Φ ∨Ψ)U ((z ∈ J) ∧Ψ)).

2 s |=TCTL A(ΦUJ Ψ) iff s{z := 0} |=CTL A((Φ ∨Ψ)U ((z ∈ J) ∧Ψ)).

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 14 / 18

Page 18: Model Checking Timed Automata

Example

Example

Light Switch Consider the following timed automaton TA and the TCTL formulaΦ = E♦≤1on.

offon

x ≤ 1

x = 1switch on

x := 0

x = 1switch off

As a first step, Φ is replaced by Φ̂ = E♦((z ≤ 1) ∧ on) and TA is equipped with anadditional clock z . The maximal constants for the clocks x and z are cx = 1 and cz = 1.The region transition system TS = R(TA⊕ z ,Φ) is on the next slide.

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 15 / 18

Page 19: Model Checking Timed Automata

Example (con’d)

Example

Light Switch (cont’d)

offx = 0z = 0

off0 < x < 10 < z < 1

x = z

offx = 1z = 1

offx > 1z > 1

onx = 0z = 1

on0 < x < 1

z > 1

onx = 1z > 1

offx = 1z > 1

onx = 0z > 1

sw on

sw off

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 16 / 18

Page 20: Model Checking Timed Automata

Example (con’d)

Example

Light Switch (cont’d) The state region

〈on, [x = 0, z = 1]〉 |= (z ≤ 1) ∧ on

and is reachable from the initial state region. Therefore,

TS |=CTL E♦((z ≤ 1) ∧ on)

and thusTA| = E♦≤1on

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 17 / 18

Page 21: Model Checking Timed Automata

Handling Multiple Clocks

Eliminating Multiple Clocks

A simple way of treating formulae with nested time bounds is to introduce a fresh clockfor each subformula.

Example

For example, the followling TCTL formula

Φ = A�≥3E♦]1,2]on

is transformed into:

Φ̂ = A�((z1 ≥ 3) ⇒ E♦(z2 ∈]1, 2]) ∧ on))

B. Bonakdarpour (School of Computer ScienceUniversity of Waterloo)Model Checking Timed Automata November 24, 2013 18 / 18