• Nie Znaleziono Wyników

Computer aided verification

N/A
N/A
Protected

Academic year: 2022

Share "Computer aided verification"

Copied!
82
0
0

Pełen tekst

(1)

Computer aided verification

Lecture 3:

LTL model-checking by translation to ω -automata

Sławomir Lasota University of Warsaw

(2)

Example:

φ = ¬G(p =⇒ X F q) 7→ Aφ =

// ?>=< 89:;

s0

SS

p

// ?>=< 89:; 7654 0123

s1

¬q

SS

LTL ⊆ ω-automata

– p. 2/45

(3)

Plan

– ω-automata

– LTL 7→ ω-automata – exponential blow-up

– LTL 7→ alternating ω-automata

(4)

ω -automata

– p. 4/45

(5)

ω -automata (BA)

Def.: ω-automaton (Büchi automaton) A = hΣ, S, Sinit, σ, F i – Σ finite input alphabet

– S finite set of states

– Sinit ⊆ S nonempty subset of initial states – σ ⊆ S × Σ × S transition relation

– F ⊆ S nonempty subset of accepting states

(6)

ω -automata (BA)

Def.: ω-automaton (Büchi automaton) A = hΣ, S, Sinit, σ, F i – Σ finite input alphabet

– S finite set of states

– Sinit ⊆ S nonempty subset of initial states – σ ⊆ S × Σ × S transition relation

– F ⊆ S nonempty subset of accepting states

A is deterministic when |Sinit| = 1 and ∀s, a. |σ(s, a)| ≤ 1.

– p. 5/45

(7)

ω -automata (BA)

Def.: ω-automaton (Büchi automaton) A = hΣ, S, Sinit, σ, F i – Σ finite input alphabet

– S finite set of states

– Sinit ⊆ S nonempty subset of initial states – σ ⊆ S × Σ × S transition relation

– F ⊆ S nonempty subset of accepting states

A is deterministic when |Sinit| = 1 and ∀s, a. |σ(s, a)| ≤ 1.

ω-words: w = a0 a1 a2 . . .

(8)

ω -automata (BA)

Def.: For w = a0 a1 a2 . . ., a run of an automaton A is r = s0 s1 s2 . . . such that ∀i. (si, ai, si+1) ∈ σ.

– p. 6/45

(9)

ω -automata (BA)

Def.: For w = a0 a1 a2 . . ., a run of an automaton A is r = s0 s1 s2 . . . such that ∀i. (si, ai, si+1) ∈ σ.

A run is accepting when si ∈ F for infinitely many i.

(10)

ω -automata (BA)

Def.: For w = a0 a1 a2 . . ., a run of an automaton A is r = s0 s1 s2 . . . such that ∀i. (si, ai, si+1) ∈ σ.

A run is accepting when si ∈ F for infinitely many i.

Let inf(r) = {s ∈ S : s = si for infinitely many i}.

A run is accepting when inf(r) ∩ F 6= ∅.

– p. 6/45

(11)

ω -automata (BA)

Def.: For w = a0 a1 a2 . . ., a run of an automaton A is r = s0 s1 s2 . . . such that ∀i. (si, ai, si+1) ∈ σ.

A run is accepting when si ∈ F for infinitely many i.

Let inf(r) = {s ∈ S : s = si for infinitely many i}.

A run is accepting when inf(r) ∩ F 6= ∅.

Lω(A) := {w ∈ Σω : A has an accepting run for w}.

(12)

ω -automata (BA)

Def.: For w = a0 a1 a2 . . ., a run of an automaton A is r = s0 s1 s2 . . . such that ∀i. (si, ai, si+1) ∈ σ.

A run is accepting when si ∈ F for infinitely many i.

Let inf(r) = {s ∈ S : s = si for infinitely many i}.

A run is accepting when inf(r) ∩ F 6= ∅.

Lω(A) := {w ∈ Σω : A has an accepting run for w}.

Def.: A language is L ⊆ Σω is ω-regular if L = Lω(A) for some A.

– p. 6/45

(13)

ω -automata (BA)

An accepting run looks like:

// 7654 0123 ,, 7654 0123 '&%$ !"#

BCD

@GA 88 ECD

@GF && XX FED ABC

...

(14)

Examples

Σ = {a, b}

infinitely often a (b a)ω

7654 0123 

a

##

b

MM 7654 0123 '&%$ !"#

a,b

cc

– p. 8/45

(15)

Examples

Σ = {a, b}

infinitely often a (b a)ω

7654 0123 

a

##

b

MM 7654 0123 '&%$ !"#

a,b

cc

odd(a) (a (a + b))ω

7654 0123 

a

##7654 0123 '&%$ !"#

a,b

cc

(16)

Examples

Σ = {a, b}

infinitely often a (b a)ω

7654 0123 

a

##

b

MM 7654 0123 '&%$ !"#

a,b

cc

odd(a) (a (a + b))ω

7654 0123 

a

##7654 0123 '&%$ !"#

a,b

cc

LT L ( ω-automata

– p. 8/45

(17)

Exercise

– infinitely often a’s and b’s

– between any two consecutive a’s an even number of b’s

b (aa bb(bb))ω

(18)

Exercise

– infinitely often a’s and b’s

– between any two consecutive a’s an even number of b’s

b (aa bb(bb))ω

7654 0123

b



b

 oo

7654

0123 '&%$ !"#

a

** 7654 0123

b

]]

a

44 oo

(19)

Exercise

– infinitely often a’s and b’s

– between any two consecutive a’s an even number of b’s

b (aa bb(bb))ω

7654 0123

b



b

 oo

7654

0123 '&%$ !"#

a

** 7654 0123

b

]]

44 oo

(20)

Exercise

– infinitely often a’s and b’s

– between any two consecutive a’s an even number of b’s

b (aa bb(bb))ω

7654 0123

b



b

 oo

7654

0123 '&%$ !"#

a

** 7654 0123

b

]]

a

44 oo

and what about deterministic ?

7654 0123

b

 7654

0123 '&%$ !"#

a

**

b

66

7654 0123

b

]]

a

44 7654 0123

a

oo

b

44 oo

(21)

Exercise

– infinitely often a’s and b’s

– between any two consecutive a’s an even number of b’s

b (aa bb(bb))ω

7654 0123

b



b

 oo

7654

0123 '&%$ !"#

a

** 7654 0123

b

]]

a

44 oo

and what about deterministic ?

7654 0123

b

 7654

0123 '&%$ !"#

a

**

b

66

7654 0123

b

]]

a

44 7654 0123

a

oo

b

44 oo

7654 0123

b



a



7654 0123 oo

b

7654

0123 '&%$ !"#

a

**

b

66

7654 0123

b

]]

44 7654 0123

a

oo 44 oo

(22)

Exercise

finitely often a (b + a)bω

– p. 10/45

(23)

Exercise

finitely often a (b + a)bω

// 7654 0123

b

//

a,b

7654 0123 '&%$ !"#

b

tt

(24)

Exercise

finitely often a (b + a)bω

// 7654 0123

b

//

a,b

7654 0123 '&%$ !"#

b

tt

and what about deterministic ?

– p. 10/45

(25)

Determinisation?

– powerset construction does not work

(26)

No determinization!

Thm: (a + b)bω is not accepted by a deterministic automaton.

– p. 12/45

(27)

No determinization!

Thm: (a + b)bω is not accepted by a deterministic automaton.

Proof: Assume Lω(A) = (a + b)bω, A deterministic.

(28)

No determinization!

Thm: (a + b)bω is not accepted by a deterministic automaton.

Proof: Assume Lω(A) = (a + b)bω, A deterministic.

w0 = bω. For some k0, σ(s0, bk0) ∈ F .

– p. 12/45

(29)

No determinization!

Thm: (a + b)bω is not accepted by a deterministic automaton.

Proof: Assume Lω(A) = (a + b)bω, A deterministic.

w0 = bω. For some k0, σ(s0, bk0) ∈ F .

w1 = bk0abω. For some k1, σ(s0, bk0abk1) ∈ F . . . .

(30)

No determinization!

Thm: (a + b)bω is not accepted by a deterministic automaton.

Proof: Assume Lω(A) = (a + b)bω, A deterministic.

w0 = bω. For some k0, σ(s0, bk0) ∈ F .

w1 = bk0abω. For some k1, σ(s0, bk0abk1) ∈ F . . . .

∃i < j such that σ(s0, bk0abk1 . . . abki) = σ(s0, bk0abk1 . . . abkj)

– p. 12/45

(31)

No determinization!

Thm: (a + b)bω is not accepted by a deterministic automaton.

Proof: Assume Lω(A) = (a + b)bω, A deterministic.

w0 = bω. For some k0, σ(s0, bk0) ∈ F .

w1 = bk0abω. For some k1, σ(s0, bk0abk1) ∈ F . . . .

∃i < j such that σ(s0, bk0abk1 . . . abki) = σ(s0, bk0abk1 . . . abkj) Thus A accepts bk0abk1 . . . abki(a . . . abkj)ω

contradiction!

(32)

Operations

Thm: ω-regular languages are closed under ∪, ∩ and complementation.

∨, ∧ and ¬

A1, A2 7→ A

(1) Lω(A) = Lω(A1) ∪ Lω(A2) (2) Lω(A) = Lω(A1) ∩ Lω(A2)

A 7→ ¯A

(3) Lω( ¯A) = Σω \ Lω(A)

– p. 13/45

(33)

Intersection

(2) A1, A2 7→ A Lω(A) = Lω(A1) ∩ Lω(A2)

?

(34)

Intersection

(2) A1, A2 7→ A Lω(A) = Lω(A1) ∩ Lω(A2)

S = S1 × S2 × {1, 2}

Sinit = S1,init × S2,init × {1}

F = F1 × S2 × {1}

((s, t, i), a, (s, t, j)) ∈ σ ⇐⇒ (s, a, s) ∈ σ1, (t, a, t) ∈ σ2,

j =

2 if i = 1, s ∈ F1

1 if i = 2, t ∈ F2

i otherwise

– p. 15/45

(35)

Complementation?

(3) A 7→ ¯A Lω( ¯A) = Σω \ Lω(A)

– no determinization

(36)

Complementation?

(3) A 7→ ¯A Lω( ¯A) = Σω \ Lω(A)

– no determinization

– naive approach is not correct

// 7654 0123

b

//

a,b

7654 0123 '&%$ !"#

b

tt

7→

// 7654 0123 '&%$ !"#

b

//

a,b

7654 0123

b

tt

– p. 16/45

(37)

Complementation

(3) A 7→ ¯A Lω( ¯A) = Σω \ Lω(A)

– no determinization

(38)

Complementation

(3) A 7→ ¯A Lω( ¯A) = Σω \ Lω(A)

– no determinization

– a complex construction

– p. 17/45

(39)

Complementation

(3) A 7→ ¯A Lω( ¯A) = Σω \ Lω(A)

– no determinization

– a complex construction

– | ¯A| = 2O(n·log n), where n = |A|

(40)

Complementation

(3) A 7→ ¯A Lω( ¯A) = Σω \ Lω(A)

– no determinization

– a complex construction

– | ¯A| = 2O(n·log n), where n = |A|

Moral: Better to avoid complementation

φ

✤ //



¬φ



Aφ

!!!

//

¯Aφ A¬φ

– p. 17/45

(41)

Complementation

Question: How complementation is done if A is deterministic?

(42)

Complementation

Question: How complementation is done if A is deterministic?

A

✤ //

A¯

F

✤ //

F = Q\F¯

Lω( ¯A) = Σω \ Lω(A) ?

– p. 18/45

(43)

Complementation

Question: How complementation is done if A is deterministic?

A

✤ //

A¯

F

✤ //

F = Q\F¯

Lω( ¯A) = Σω \ Lω(A) ? NO!

 

7654 0123

a

##

b

MM 7654 0123 '&%$ !"#

a,b

cc

7→

7654 0123 '&%$ !"#

a

##

b

MM 7654 0123

a,b

cc

(44)

Complementation

Question: How complementation is done if A is deterministic?

A

✤ //

A¯

F

✤ //

F = Q\F¯

Lω( ¯A) = Σω \ Lω(A) ? NO!

 

7654 0123

a

##

b

MM 7654 0123 '&%$ !"#

a,b

cc

7→

7654 0123 '&%$ !"#

a

##

b

MM 7654 0123

a,b

cc

co-Büchi: a run r = s0 s1 s2 . . . is accepting when si ∈ ¯F for almost all i (inf(r) ⊆ ¯F ).

– p. 18/45

(45)

Decision problems

problem for problem for complexity cost of

finite automata ω-automata algorithm

L(A) 6= ∅ Lω(A) 6= ∅ NLOGSPACE O(n)

L(A) = Σ Lω(A) = Σω PSPACE 2O(n·log n) L(A) ⊆ L(B) Lω(A) ⊆ Lω(B) PSPACE 2O(n·log n)

L(AM) ⊆ L(Aφ)? vs L(AM) ∩ L(A¬φ) = ∅?

(46)

Decision problems

problem for problem for complexity cost of

finite automata ω-automata algorithm

L(A) 6= ∅ Lω(A) 6= ∅ NLOGSPACE O(n)

L(A) = Σ Lω(A) = Σω PSPACE 2O(n·log n) L(A) ⊆ L(B) Lω(A) ⊆ Lω(B) PSPACE 2O(n·log n)

L(AM) ⊆ L(Aφ)? vs L(AM) ∩ L(A¬φ) = ∅?

Lasso

// 7654 0123 ,, 7654 0123 '&%$ !"#FED XX ABC

Thm: Lω(A) 6= ∅ iff A has a lasso.

– p. 19/45

(47)

LTL 7→ ω-automata

(48)

SPIN – examples

F G¬progress

// 7654 0123 BCD

@GA 88

¬progress

// 7654 0123 '&%$ !"#FED XX ABC

¬progress

[Holzmann,Peled,Yannakakis 1996]

(co-Büchi ⊆ Büchi)

– p. 21/45

(49)

SPIN – examples (cont.)

SPIN’s doc

(50)

Generalized ω-automata (GBA)

– {F1, . . . , Fn} instead of F

– a run r is accepting when ∀i. inf(r) ∩ Fi 6= ∅

Question: Are generalized automata more expressive?

– p. 23/45

(51)

Generalized ω-automata (GBA)

– {F1, . . . , Fn} instead of F

– a run r is accepting when ∀i. inf(r) ∩ Fi 6= ∅

Question: Are generalized automata more expressive?

AF1...Fn 7→ AF

Lω(AF1...Fn) = Lω(AF)

(52)

Generalized ω-automata (GBA)

– {F1, . . . , Fn} instead of F

– a run r is accepting when ∀i. inf(r) ∩ Fi 6= ∅

Question: Are generalized automata more expressive?

AF1...Fn 7→ AF

Lω(AF1...Fn) = Lω(AF)

|AF | = O(|AF1,...,Fn| · n)

Lω(AF) ⊆ Lω(AF1) ∩ . . . ∩ Lω(AFn)

– p. 23/45

(53)

LTL 7→ BA

SPIN: LTL 7→ GBA 7→ BA

LTL2BA: LTL 7→ ABA 7→ GBA’ 7→ BA

– On-the-fly verification

(54)

LTL 7→ GBA (1)

LTL+ :

φ := p | ¬p | φ1 ∧ φ2 | φ1 ∨ φ2 | X φ | φ12 | φ12 | true | false

Intuition: φ ≡ now(φ) later(φ)

φ U ψ ≡ ψ ∨ (φ ∧ X (φ U ψ)) φ R ψ ≡ ψ ∧ (φ ∨ X (φ R ψ))

(fixed points)

– p. 25/45

(55)

LTL 7→ GBA (2)

. . . do not think about tomorrow! :)

P = {¬p : p ∈ P }¯

α 7→ today(α) – positive boolean formula over facts P ∪ ¯P ∪ { X φ : φ . . .}

today facts P ∪ ¯P tomorrow facts { X φ : φ . . .}

today(α) = α, when α = p, ¬p, X β, true, false today(α ∨ β) = today(α) ∨ today(β)

today(α ∧ β) = today(α) ∧ today(β)

today(α U β) = today(β) ∨ (today(α) ∧ X (α U β)) today(α R β) = today(β) ∧ (today(α) ∨ X (α R β))

(56)

LTL 7→ GBA (3)

α 7→ today(α) 7→ dnf(α) ⊆ P(P ∪ ¯P ∪ { X φ : φ . . .})

today(α) ≡ dnf(α) ≡ ∨X∈dnf(α) ∧ X

For example:

dnf(α) = {{α}}, when α = p, ¬p, X β dnf(α ∨ β) = dnf(α) ∪ dnf(β)

dnf(α ∧ β) = {X ∪ Y : X ∈ dnf(α), Y ∈ dnf(β)}

dnf(α U β) = dnf(β) ∪ dnf(α ∧ X (α U β)))

dnf(true) = {∅} ∧∅ ≡ true

dnf(false) = ∅ ∨∅ ≡ false

– p. 27/45

(57)

LTL 7→ GBA (4)

GBA Aφ = hΣ, S, Sinit, σ, F i:

– Σ = P(P )

– S = P(P ∪ ¯P ∪ { X φ : φ . . .}) – Sinit = dnf(φ)

– X −A→ Y iff

– X ∩ P ⊆ A X and A non-contradictory today

– (X ∩ ¯P ) ∩ A = ∅

– Y ∈ dnf( ∧ {α | X α ∈ X}) possible tomorrow – F = ?

(58)

LTL 7→ GBA (example 1)

φ = ¬a U b S = P(a, ¬a, b, ¬b, X (¬a U b))

Σ = {∅, {a}, {b}, {a, b}}

φ ≡ b ∨ (¬a ∧ X φ)

– p. 29/45

(59)

LTL 7→ GBA (example 1)

φ = ¬a U b S = P(a, ¬a, b, ¬b, X (¬a U b))

Σ = {∅, {a}, {b}, {a, b}}

φ ≡ b ∨ (¬a ∧ X φ)

 

GFED

@ABC

¬aX φ ∅,{b}

//

@AB GFE

∅,{b}

 ?>=< 89:;

b {b},{a,b}

//?>=< 89:;

FED ABC

Σ

\\

(60)

LTL 7→ GBA (example 1)

φ = ¬a U b S = P(a, ¬a, b, ¬b, X (¬a U b))

Σ = {∅, {a}, {b}, {a, b}}

φ ≡ b ∨ (¬a ∧ X φ)

 

GFED

@ABC

¬aX φ ∅,{b}

//

@AB GFE

∅,{b}

 ?>=< 89:;

b {b},{a,b}

//?>=< 89:;

FED ABC

Σ

\\

 

GFED

@ABC

¬aX φ ¬a

//

@AB GFE

¬a

 ?>=< 89:;

b b

//?>=< 89:;

FED ABC

true

\\

– p. 29/45

(61)

LTL 7→ GBA (example 1)

φ = ¬a U b S = P(a, ¬a, b, ¬b, X (¬a U b))

Σ = {∅, {a}, {b}, {a, b}}

φ ≡ b ∨ (¬a ∧ X φ)

 

GFED

@ABC

¬aX φ ∅,{b}

//

@AB GFE

∅,{b}

 ?>=< 89:;

b {b},{a,b}

//?>=< 89:;

FED ABC

Σ

\\

 

GFED

@ABC

¬aX φ ¬a

//

@AB GFE

¬a

 ?>=< 89:;

b b

//?>=< 89:;

FED ABC

true

\\

F = ?

(62)

LTL 7→ GBA (example 1)

φ = ¬a U b S = P(a, ¬a, b, ¬b, X (¬a U b))

Σ = {∅, {a}, {b}, {a, b}}

φ ≡ b ∨ (¬a ∧ X φ)

 

GFED

@ABC

¬aX φ ¬a

//

@AB GFE

¬a

 ?>=< 89:; /.-, ()*+

b b

//?>=< 89:; /.-, ()*+

FED ABC

true

\\

F = {∅, {b}}

– p. 30/45

(63)

LTL 7→ GBA (F)

– {αii | i = 1, . . . , n} ⊆ subformulas(φ)

(64)

LTL 7→ GBA (F)

– {αii | i = 1, . . . , n} ⊆ subformulas(φ)

– S \ Fi = {X ∈ S | αii ∈ X ∧ βi ∈ X}/ , i = 1, . . . , n

– p. 31/45

(65)

LTL 7→ GBA (F)

– {αii | i = 1, . . . , n} ⊆ subformulas(φ)

– S \ Fi = {X ∈ S | αii ∈ X ∧ βi ∈ X}/ , i = 1, . . . , n – S \ Fi = {X ∈ S | αii ∈ cons(X) ∧ βi ∈ cons(X)}/

(66)

LTL 7→ GBA (F)

– {αii | i = 1, . . . , n} ⊆ subformulas(φ)

– S \ Fi = {X ∈ S | αii ∈ X ∧ βi ∈ X}/ , i = 1, . . . , n – S \ Fi = {X ∈ S | αii ∈ cons(X) ∧ βi ∈ cons(X)}/

X ⊆ cons(X)

α ∨ β ∈ cons(X) if α ∈ cons(X) α ∨ β ∈ cons(X) if β ∈ cons(X)

α ∧ β ∈ cons(X) if α ∈ cons(X) and β ∈ cons(X) α U β ∈ cons(X) if β ∨ (α ∧ X (α U β)) ∈ cons(X) α R β ∈ cons(X) if β ∧ (α ∨ X (α R β)) ∈ cons(X) true ∈ cons(X)

α U β ∈ cons(X) if β ∈ cons(X) or

α ∈ cons(X) and X (α U β)) ∈ X

– p. 31/45

(67)

LTL 7→ GBA (F)

– {αii | i = 1, . . . , n} ⊆ subformulas(φ)

– S \ Fi = {X ∈ S | αii ∈ X ∧ βi ∈ X}/ , i = 1, . . . , n – S \ Fi = {X ∈ S | αii ∈ cons(X) ∧ βi ∈ cons(X)}/

X ⊆ cons(X)

α ∨ β ∈ cons(X) if α ∈ cons(X) α ∨ β ∈ cons(X) if β ∈ cons(X)

α ∧ β ∈ cons(X) if α ∈ cons(X) and β ∈ cons(X) α U β ∈ cons(X) if β ∨ (α ∧ X (α U β)) ∈ cons(X) α R β ∈ cons(X) if β ∧ (α ∨ X (α R β)) ∈ cons(X) true ∈ cons(X)

α U β ∈ cons(X) if β ∈ cons(X) or

α ∈ cons(X) and X (α U β)) ∈ X

(68)

LTL 7→ GBA (example 1 cont.)

φ = ¬a U b S = P(a, ¬a, b, ¬b, X (¬a U b))

Σ = {∅, {a}, {b}, {a, b}}

 

GFED

@ABC

¬aX φ ¬a

//

@AB GFE

¬a

 ?>=< 89:; /.-, ()*+

b b

//?>=< 89:; /.-, ()*+

FED ABC

true

\\

S \ F = {X ∈ S | ¬a ∈ X ∧ X φ ∈ X ∧ b /∈ X}

Can automaton Aφ be smaller?

– p. 32/45

(69)

LTL 7→ GBA (example 1 cont.)

φ = ¬a U b S = P(a, ¬a, b, ¬b, X (¬a U b))

Σ = {∅, {a}, {b}, {a, b}}

 

GFED

@ABC

¬aX φ ¬a

//

@AB GFE

¬a

 ?>=< 89:; /.-, ()*+

b b

//?>=< 89:; /.-, ()*+

FED ABC

true

\\

S \ F = {X ∈ S | ¬a ∈ X ∧ X φ ∈ X ∧ b /∈ X}

Can automaton Aφ be smaller? YES!

// 7654 0123

b

//

BCD

@GA

¬a

88 7654 0123 '&%$ !"#

BCD

@GA

true

88

(70)

exponential blow-up

– p. 33/45

(71)

LTL 7→ GBA (example 2)

θ = ¬ G (q =⇒ F r) ≡ F (q ∧ G ¬r)

S = P(q, ¬q, r, ¬r, X ( F (q ∧ G ¬r)), X G ¬r) F = ?

dnf( F α) = dnf(α) ∨ X F α Fα ≡ α ∨ X F α

dnf( G α) = dnf(α ∧ X G α) Gα ≡ α ∧ X G α

dnf( F (q ∧ G ¬r)) = X F (q ∧ G ¬r) ∨ q ∧ ¬r ∧ X G ¬r

 

X F(q ∧ G ¬r) true

//

BCD

@GA

true

||

q, ¬r, X G ¬r q∧¬r

//

¬r, X G ¬r

BCD

@GA

¬r

oo

(72)

LTL 7→ GBA (example 2)

θ = ¬( G F p =⇒ G (q =⇒ F r)) ≡ G F p ∧ F(q ∧ G ¬r)

dnf( F α) = dnf(α) ∨ X F α Fα ≡ α ∨ X F α

dnf( G α) = dnf(α ∧ X G α) Gα ≡ α ∧ X G α

dnf( F (q ∧ G ¬r)) = X F(q ∧ G ¬r) ∨ (q ∧ ¬r ∧ X G ¬r) dnf( G F p) = dnf((p ∨ X F p) ∧ X G F p) =

(p ∧ X G F p) ∨ ( X F p ∧ X G F p) dnf( G F p ∧ F(q ∧ G ¬r)) = . . . ∨ . . . ∨ . . . ∨ . . .

X F(q ∧ G ¬r), p, X G F p q, ¬r, X G ¬r, p, X G F p

X F(q ∧ G ¬r), X F p, X G F p q, ¬r, X G ¬r, X F p, X G F p

– p. 35/45

(73)

LTL 7→ GBA (example 2)

θn = ¬(( G F p1 ∧ . . . ∧ G F pn) =⇒ G (q =⇒ F r)) ≡

G Fp1 ∧ . . . ∧ G Fpn ∧ F(q ∧ G ¬r)

(74)

LTL 7→ GBA (example 3)

φn = p1 U(p2 U(. . . U pn) . . .)

?>=<

89:;

p1

p1

// BCD

@GA

p1

>>

p1



p1

'' ?>=<

89:;

p2 p2

//

p2

:: BCD

@GA

p2

>>

. . .

?>=< 89:; 7654 0123

pn pn

//

BCD

@GA

pn

>> ?>=< 89:; /.-, ()*+

FED ABC

Σ

\\

θn = ¬ p1 U(p2 U(. . . U pn) . . .)

≡ ¬p1 R(¬p2 R(. . . R ¬pn) . . .)

φ R ψ ≡ ψ ∧ (φ ∨ X (φ R ψ))

– p. 37/45

(75)

LTL 7→ ABA

(76)

Alternation (ABA)

?>=<

89:;

q

?>=<

89:;

p

a

❃ ❃ ❃ ❃

a

⑧ ⑧ ⑧ ⑧ ⑧ ??

or

GFED

@ABC

q

σ(p, a) = q ∨ q (p, a, q), (p, a, q) ∈ σ

?>=<

89:;

q

?>=<

89:;

p

a



a

KK

and

GFED

@ABC

q

σ(p, a) = q ∧ q

Example transition: σ(p, a) = p1 ∨ p2 ∧ p3 (think of positive DNF) run = tree (dag) labeled with states

– p. 39/45

(77)

LTL 7→ ABA (1)

ABA Aφ = hΣ, S, Sinit, σ, F i:

– S = modal subformulas ( Xα, α U β, α R β), literals (p, ¬p), true, false – Sinit = φ !!!

– σ : S × Σ → Bool+(S)

σ(p, A) = accepts, if p ∈ A (otherwise rejects) σ(¬p, A) = accepts, if p /∈ A (otherwise rejects) σ(true, A) = accepts

σ(false, A) = rejects

σ( X α, A) = α !!!

σ(α U β, A) = σ(β, A) ∨ (σ(α, A) ∧ α U β) σ(α R β, A) = σ(β, A) ∧ (σ(α, A) ∨ α R β)

σ( F α, A) = σ(α, A) ∨ F α σ( G α, A) = σ(α, A) ∧ G α

(78)

LTL 7→ ABA (example)

φ = ¬( G F p =⇒ G (q =⇒ F r)) ≡ G Fp ∧ F (q ∧ G ¬r) σ(p, A) = accepts, if p ∈ A (otherwise rejects)

σ(¬p, A) = accepts, if p /∈ A (otherwise rejects) σ(true, A) = accepts

σ(false, A) = rejects

σ( F α, A) = σ(α, A) ∨ F α σ( G α, A) = σ(α, A) ∧ G α

σ( GF α, A) = (σ(α, A) ∨ F α) ∧ GF α

[Gastin,Oddoux 2001]

– p. 41/45

(79)

LTL 7→ ABA (example)

φ = ¬( G F p =⇒ G (q =⇒ F r)) ≡ G Fp ∧ F (q ∧ G ¬r)

[Gastin,Oddoux 2001]

(80)

LTL 7→ ABA (2)

ABA Aφ = hΣ, S, Sinit, σ, F i:

– S = modal subformulas ( Xα, α U β, α R β), literals (p, ¬p), true, false – Sinit = φ

– σ : S × Σ → Bool+(S) . . .

– F = {α R β}

– p. 43/45

(81)

LTL 7→ GBA vs LTL 7→ ABA

θn = ¬(( G F p1 ∧ . . . ∧ G F pn) =⇒ G (q =⇒ F r))

[Gastin,Oddoux 2001]

(82)

LTL and ω-automata

LTL

  //

LTL +

linear alternating ω-automata

  //

alternating ω-automata

– p. 45/45

Cytaty

Powiązane dokumenty

It turns out that it is the only relation between rank and the cardinality of the quotient group C(T )/wcl{T n : n ∈ Z} in the class of ergodic dynamical systems.. There are

Presented P-V curves show an influence of solar radiation and temperature on electric power produced by the array.. The model simulation results were verified on computer aided

For which locally compact σ-compact Hausdorff topological groups does the characterization obtained in Theorem 1 hold.. S.concentrated and spread

We now make a start towards the proof of the Main Theorem with some preliminary technical results..

Loosely speaking, in order to obtain Z n+1 we stick a copy H n,k of Henderson’s space to each arc L n,k along the edge I n,k in such a way that the sets H n,k − I n,k are

Otóż ci aniołowie, którzy będą sądzeni przez apostołów, to są kapłani, którzy okazali się zdrajcami Prawa, jak to powiedział prorok: „Wargi kapłana strzegą wiedzy

Walentynianie, posługując się określeniem „communes et ecclesiastici”, w żadnym wypadku nie próbowali napiętnować swych słuchaczy, podkreślić ich podłego stanu

„Niech pamięć o nich nie zaginie…” : ruch oporu w powiecie radzyńskim w świetle relacji zebranych przez szczep harcerski „Węzeł” w 1963 roku.. Radzyński Rocznik