models are in Σ Ï. ⨠and ¬ interpreted as usual abca ···|= a but bbca···|= a abca ···|= Xb but abca···|= Xc aaaaaaaaabca ···|= aUb but aaaaaaaaabca ···|= aUc.
#1
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Jean-Michel Couvreur, Nasser Saheb, Grégoire Sutre
LSV, Ecole Normale Sup. de Cachan, France LaBRI, Bordeaux University, France
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#2
Outline 1. Introduction 2. Probabilistic systems 3. Linear Temporal Logic and ω -automata 4. LTL verification and evaluation problems 5. Our approach 6. Conclusion
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#3
Outline 1. Introduction 2. Probabilistic systems 3. Linear Temporal Logic and ω -automata 4. LTL verification and evaluation problems 5. Our approach 6. Conclusion
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#4
Motivations (practical) Need for probabilistic modeling: randomized algorithms (distributed systems) message loss in protocols, stochastic delays... biological systems
LPAR - 25 September 2003
#4
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Motivations (practical) Need for probabilistic modeling: randomized algorithms (distributed systems) message loss in protocols, stochastic delays... biological systems Verification: is a given property almost surely satisfied by the system? Focus on linear time temporal properties
LPAR - 25 September 2003
#4
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Motivations (practical) Need for probabilistic modeling: randomized algorithms (distributed systems) message loss in protocols, stochastic delays... biological systems Verification: is a given property almost surely satisfied by the system? Focus on linear time temporal properties Evaluation: with which probability is a given property satisfied by the system?
LPAR - 25 September 2003
#5
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
LTL verification on probabilistic systems The best known automata-based algorithm runs in double exponential time [Var85] There is a non-automata based algorithm running in single exponential time and polynomial space [CY95] Open problem [Var99]: automata-based algorithm running in single exponential time?
LPAR - 25 September 2003
#5
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
LTL verification on probabilistic systems The best known automata-based algorithm runs in double exponential time [Var85] There is a non-automata based algorithm running in single exponential time and polynomial space [CY95] Open problem [Var99]: automata-based algorithm running in single exponential time? Yes On-the-fly implementation
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#6
Outline 1. Introduction 2. Probabilistic systems 3. Linear Temporal Logic and ω -automata 4. LTL verification and evaluation problems 5. Our approach 6. Conclusion
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#7
Measuring sets of infinite words Σ : finite alphabet
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#7
Measuring sets of infinite words Σ : finite alphabet CΣ : set of all basic cylindric sets w · Σω with w ∈ Σ∗
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#7
Measuring sets of infinite words Σ : finite alphabet CΣ : set of all basic cylindric sets w · Σω with w ∈ Σ∗ BΣ : σ -algebra (on Σω ) generated by CΣ BΣ closed under complementation BΣ closed under countable union (and intersection)
LPAR - 25 September 2003
#7
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Measuring sets of infinite words Σ : finite alphabet CΣ : set of all basic cylindric sets w · Σω with w ∈ Σ∗ BΣ : σ -algebra (on Σω ) generated by CΣ BΣ closed under complementation BΣ closed under countable union (and intersection) (Σω , BΣ ) : considered measurable space (Σ will depend on the context)
LPAR - 25 September 2003
#7
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Measuring sets of infinite words Σ : finite alphabet CΣ : set of all basic cylindric sets w · Σω with w ∈ Σ∗ BΣ : σ -algebra (on Σω ) generated by CΣ BΣ closed under complementation BΣ closed under countable union (and intersection) (Σω , BΣ ) : considered measurable space (Σ will depend on the context)
probability measure defined on CΣ and extended to BΣ
LPAR - 25 September 2003
#8
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Probabilistic systems M = hS, T, α, β, λ, P0 , P i
1. hS, T, α, β, λi finite labeled graph over Σ S : states and T : transitions α : T → V and β : T → V : source and target mappings (• · and ·• ) λ : T → Σ : transition labeling
LPAR - 25 September 2003
#8
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Probabilistic systems M = hS, T, α, β, λ, P0 , P i
1. hS, T, α, β, λi finite labeled graph over Σ S : states and T : transitions α : T → V and β : T → V : source and target mappings (• · and ·• ) λ : T → Σ : transition labeling
2. P0 : S → [0, 1] : initial probability distribution s.t.
s∈S
P0 (s) = 1
LPAR - 25 September 2003
#8
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Probabilistic systems M = hS, T, α, β, λ, P0 , P i
1. hS, T, α, β, λi finite labeled graph over Σ S : states and T : transitions α : T → V and β : T → V : source and target mappings (• · and ·• ) λ : T → Σ : transition labeling
2. P0 : S → [0, 1] : initial probability distribution s.t. 3. P : T →]0, 1] is a transition probability function s.t.
s∈S
P0 (s) = 1
t∈s•
P (t) = 1
LPAR - 25 September 2003
#8
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Probabilistic systems M = hS, T, α, β, λ, P0 , P i
1. hS, T, α, β, λi finite labeled graph over Σ S : states and T : transitions α : T → V and β : T → V : source and target mappings (• · and ·• ) λ : T → Σ : transition labeling
2. P0 : S → [0, 1] : initial probability distribution s.t. 3. P : T →]0, 1] is a transition probability function s.t.
s∈S
P0 (s) = 1
t∈s•
P (t) = 1
µM probability measure over (T ω , BT ) defined by µM (T ω ) = 1, and ω
µM (t0 t1 · · · tn ·T ) =
P0 (• t0 )P (t0 )P (t1 ) · · · P (tn ) if t0 t1 · · · tn ∈ P ath∗ (M ) 0 otherwise.
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#9
Properties initial states: S0 = {s ∈ S | P0 (s) 6= 0} P athω (M ) is measurable and µM (P athω (M )) = 1
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#9
Properties initial states: S0 = {s ∈ S | P0 (s) 6= 0} P athω (M ) is measurable and µM (P athω (M )) = 1
Notation. M [s] = M where P0 (s) = 1 (i.e. s unique initial state)
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#9
Properties initial states: S0 = {s ∈ S | P0 (s) 6= 0} P athω (M ) is measurable and µM (P athω (M )) = 1
Notation. M [s] = M where P0 (s) = 1 (i.e. s unique initial state) µM =
s∈S0
P0 (s) · µM [s]
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#9
Properties initial states: S0 = {s ∈ S | P0 (s) 6= 0} P athω (M ) is measurable and µM (P athω (M )) = 1
Notation. M [s] = M where P0 (s) = 1 (i.e. s unique initial state) µM =
s∈S0
P0 (s) · µM [s]
when L measurable, µM [s] (L) =
t∈s•
P (t) · µM [t• ] (t−1 L)
LPAR - 25 September 2003
#9
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Properties initial states: S0 = {s ∈ S | P0 (s) 6= 0} P athω (M ) is measurable and µM (P athω (M )) = 1
Notation. M [s] = M where P0 (s) = 1 (i.e. s unique initial state) µM =
s∈S0
P0 (s) · µM [s]
when L measurable, µM [s] (L) =
t∈s•
P (t) · µM [t• ] (t−1 L)
Proposition Let P ath∗max denote the set of all finite paths ending in a maximal SCC. We have µM (P ath∗max · T ω ) = 1
LPAR - 25 September 2003
#9
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Properties initial states: S0 = {s ∈ S | P0 (s) 6= 0} P athω (M ) is measurable and µM (P athω (M )) = 1
Notation. M [s] = M where P0 (s) = 1 (i.e. s unique initial state) µM =
s∈S0
P0 (s) · µM [s]
when L measurable, µM [s] (L) =
t∈s•
P (t) · µM [t• ] (t−1 L)
Proposition Let P ath∗max denote the set of all finite paths ending in a maximal SCC. We have µM (P ath∗max · T ω ) = 1 Let ρ be a finite path contained in some maximal SCC C , and let s ∈ C . We have µM [s] ((T ∗ · ρ)ω ) = 1. LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#10
Outline 1. Introduction 2. Probabilistic systems 3. Linear Temporal Logic and ω -automata 4. LTL verification and evaluation problems 5. Our approach 6. Conclusion
LPAR - 25 September 2003
#11
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
LTL f ::= a | f ∨ f | ¬f | Xf | f Uf
(with a ∈ Σ)
LPAR - 25 September 2003
#11
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
LTL f ::= a | f ∨ f | ¬f | Xf | f Uf
(with a ∈ Σ)
models are in Σω ∨ and ¬ interpreted as usual
LPAR - 25 September 2003
#11
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
LTL f ::= a | f ∨ f | ¬f | Xf | f Uf
(with a ∈ Σ)
models are in Σω ∨ and ¬ interpreted as usual abca · · · |= a
but
bbca · · · 6|= a
LPAR - 25 September 2003
#11
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
LTL f ::= a | f ∨ f | ¬f | Xf | f Uf
(with a ∈ Σ)
models are in Σω ∨ and ¬ interpreted as usual abca · · · |= a abca · · · |= Xb
but but
bbca · · · 6|= a abca · · · 6|= Xc
LPAR - 25 September 2003
#11
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
LTL f ::= a | f ∨ f | ¬f | Xf | f Uf
(with a ∈ Σ)
models are in Σω ∨ and ¬ interpreted as usual abca · · · |= a abca · · · |= Xb
but but
bbca · · · 6|= a abca · · · 6|= Xc
aaaaaaaaabca · · · |= aUb
but
aaaaaaaaabca · · · 6|= aUc
LPAR - 25 September 2003
#11
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
LTL f ::= a | f ∨ f | ¬f | Xf | f Uf
(with a ∈ Σ)
models are in Σω ∨ and ¬ interpreted as usual abca · · · |= a abca · · · |= Xb
but but
bbca · · · 6|= a abca · · · 6|= Xc
aaaaaaaaabca · · · |= aUb
but
aaaaaaaaabca · · · 6|= aUc
L(f ) : set of words w ∈ Σω such that w |= f
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#12
ω -automata A = hQ, T, α, β, λ, Q0 , Acci
1. hQ, T, α, β, λi finite labeled graph over Σ 2. Q0 ⊆ Q : initial locations 3. acc ⊆ 2T : acceptance condition
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#12
ω -automata A = hQ, T, α, β, λ, Q0 , Acci
1. hQ, T, α, β, λi finite labeled graph over Σ 2. Q0 ⊆ Q : initial locations 3. acc ⊆ 2T : acceptance condition a run ρ ∈ P athω (A) is accepting if {t | ρ ∈ (T ∗ · t)ω } ∈ Acc
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#12
ω -automata A = hQ, T, α, β, λ, Q0 , Acci
1. hQ, T, α, β, λi finite labeled graph over Σ 2. Q0 ⊆ Q : initial locations 3. acc ⊆ 2T : acceptance condition a run ρ ∈ P athω (A) is accepting if {t | ρ ∈ (T ∗ · t)ω } ∈ Acc a word w is accepted if w = λ(ρ) for some accepting run ρ
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#12
ω -automata A = hQ, T, α, β, λ, Q0 , Acci
1. hQ, T, α, β, λi finite labeled graph over Σ 2. Q0 ⊆ Q : initial locations 3. acc ⊆ 2T : acceptance condition a run ρ ∈ P athω (A) is accepting if {t | ρ ∈ (T ∗ · t)ω } ∈ Acc a word w is accepted if w = λ(ρ) for some accepting run ρ L(A) : set of accepted words
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#12
ω -automata A = hQ, T, α, β, λ, Q0 , Acci
1. hQ, T, α, β, λi finite labeled graph over Σ 2. Q0 ⊆ Q : initial locations 3. acc ⊆ 2T : acceptance condition a run ρ ∈ P athω (A) is accepting if {t | ρ ∈ (T ∗ · t)ω } ∈ Acc a word w is accepted if w = λ(ρ) for some accepting run ρ L(A) : set of accepted words
Theorem [Var85] For any ω -automaton A, L(A) is measurable. LPAR - 25 September 2003
#13
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
From LTL to ω -automata
Theorem [VW94] Given an LTL formula f , one can build a Büchi ω -automaton Af , with at most 2O(|f |) locations, such that L(f ) = L(Af ).
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#14
Outline 1. Introduction 2. Probabilistic systems 3. Linear Temporal Logic and ω -automata 4. LTL verification and evaluation problems 5. Our approach 6. Conclusion
LPAR - 25 September 2003
#15
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Verification and evaluation problems LTL probabilistic verification problem: Given M and f , does M almost surely satisfy f ?
LPAR - 25 September 2003
#15
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Verification and evaluation problems LTL probabilistic verification problem: Given M and f , does M almost surely satisfy f ?
“M |= f almost surely” = µM (P athω (M ) ∩ λ−1 (L(f ))) = 1
LPAR - 25 September 2003
#15
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Verification and evaluation problems LTL probabilistic verification problem: Given M and f , does M almost surely satisfy f ?
“M |= f almost surely” = µM (P athω (M ) ∩ λ−1 (L(f ))) = 1
“M |= f with positive probability” = µM (P athω (M ) ∩ λ−1 (L(f ))) > 0
LPAR - 25 September 2003
#15
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Verification and evaluation problems LTL probabilistic verification problem: Given M and f , does M almost surely satisfy f ?
“M |= f almost surely” = µM (P athω (M ) ∩ λ−1 (L(f ))) = 1
“M |= f with positive probability” = µM (P athω (M ) ∩ λ−1 (L(f ))) > 0
LTL probabilistic verification problem is PSPACE-complete [CY95]
LPAR - 25 September 2003
#15
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Verification and evaluation problems LTL probabilistic verification problem: Given M and f , does M almost surely satisfy f ?
“M |= f almost surely” = µM (P athω (M ) ∩ λ−1 (L(f ))) = 1
“M |= f with positive probability” = µM (P athω (M ) ∩ λ−1 (L(f ))) > 0
LTL probabilistic verification problem is PSPACE-complete [CY95] LTL probabilistic evaluation problem: Given M and f , compute µM (P athω (M ) ∩ λ−1 (L(f ))) LPAR - 25 September 2003
#16
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Existing automata-based approach [Var85] To check whether M |= f with positive probability: compute a Büchi automaton Af with L(Af ) = L(f ) |Af | in 2O(|f |)
LPAR - 25 September 2003
#16
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Existing automata-based approach [Var85] To check whether M |= f with positive probability: compute a Büchi automaton Af with L(Af ) = L(f ) |Af | in 2O(|f |)
compute a deterministic Street automaton A0f with L(A0f ) = L(f ) |A0f | in 22
O(|f |)
LPAR - 25 September 2003
#16
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Existing automata-based approach [Var85] To check whether M |= f with positive probability: compute a Büchi automaton Af with L(Af ) = L(f ) |Af | in 2O(|f |)
compute a deterministic Street automaton A0f with L(A0f ) = L(f ) |A0f | in 22
O(|f |)
compute the probabilistic system M ⊗A0f (synchronized product) |M ⊗A0f |
in O(|M |) · 2
2O(|f |)
LPAR - 25 September 2003
#16
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Existing automata-based approach [Var85] To check whether M |= f with positive probability: compute a Büchi automaton Af with L(Af ) = L(f ) |Af | in 2O(|f |)
compute a deterministic Street automaton A0f with L(A0f ) = L(f ) |A0f | in 22
O(|f |)
compute the probabilistic system M ⊗A0f (synchronized product) |M ⊗A0f |
in O(|M |) · 2
2O(|f |)
check whether M ⊗A0f has an accepted maximal SCC in time O(|M |) · 22
O(|f |)
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#17
Outline 1. Introduction 2. Probabilistic systems 3. Linear Temporal Logic and ω -automata 4. LTL verification and evaluation problems 5. Our approach 6. Conclusion
LPAR - 25 September 2003
#18
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Overview We use a similar approach: translate f into a non-deterministic ω -automaton |Af | in O(2|f | )
LPAR - 25 September 2003
#18
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Overview We use a similar approach: translate f into a non-deterministic ω -automaton |Af | in O(2|f | )
compute the ω -automaton M ⊗Af (synchronized product) |M ⊗Af | in O(|M | · 2|f | )
LPAR - 25 September 2003
#18
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Overview We use a similar approach: translate f into a non-deterministic ω -automaton |Af | in O(2|f | )
compute the ω -automaton M ⊗Af (synchronized product) |M ⊗Af | in O(|M | · 2|f | )
look for a “suitable” SCC in M ⊗Af in time O(|M | · 2|f | )
LPAR - 25 September 2003
#18
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Overview We use a similar approach: translate f into a non-deterministic ω -automaton |Af | in O(2|f | )
compute the ω -automaton M ⊗Af (synchronized product) |M ⊗Af | in O(|M | · 2|f | )
look for a “suitable” SCC in M ⊗Af in time O(|M | · 2|f | ) based on properties of the translation from LTL to ω -automaton
LPAR - 25 September 2003
#19
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Properties of ω -automata coming from LTL Optimized tableau based translation (slight variation of [Cou00]) Proposition Given an LTL formula f , one can build a multi-Büchi ω -automaton Af such that L(f ) = L(Af ), and whose size and computation time are in O(|Σ|) · 2O(|f |) .
Moreover Af is unambiguous and separated on each SCC.
LPAR - 25 September 2003
#19
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Properties of ω -automata coming from LTL Optimized tableau based translation (slight variation of [Cou00]) Proposition Given an LTL formula f , one can build a multi-Büchi ω -automaton Af such that L(f ) = L(Af ), and whose size and computation time are in O(|Σ|) · 2O(|f |) .
Moreover Af is unambiguous and separated on each SCC. where:
A is unambiguous = t1 6= t2 ∧
•
t1 = • t2 ∧ λ(t1 ) = λ(t2 )
⇒
L(A[t1 • ]) ∩ L(A[t2 • ]) = ∅
LPAR - 25 September 2003
#19
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Properties of ω -automata coming from LTL Optimized tableau based translation (slight variation of [Cou00]) Proposition Given an LTL formula f , one can build a multi-Büchi ω -automaton Af such that L(f ) = L(Af ), and whose size and computation time are in O(|Σ|) · 2O(|f |) .
Moreover Af is unambiguous and separated on each SCC. where:
A is unambiguous = t1 6= t2 ∧
•
t1 = • t2 ∧ λ(t1 ) = λ(t2 )
A is separated = q1 6= q2
⇒
⇒
L(A[t1 • ]) ∩ L(A[t2 • ]) = ∅
L(A[q1 ]) ∩ L(A[q2 ]) = ∅ LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#20
Synchronized product of M and Af M ⊗A = hS × Q, T⊗ , α⊗ , β⊗ , λ⊗ , S0 × Q0 , Acc⊗ i where: T⊗ = {(tM , tA ) ∈ TM × TA | λM (tM ) = λA (tA )} •
(tM , tA ) = (• tM , • tA ) and (tM , tA )• = (tM • , tA • )
λ⊗ is the projection from T⊗ to TM U ∈ Acc⊗ iff the projection of U on A is in Acc
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#20
Synchronized product of M and Af M ⊗A = hS × Q, T⊗ , α⊗ , β⊗ , λ⊗ , S0 × Q0 , Acc⊗ i where: T⊗ = {(tM , tA ) ∈ TM × TA | λM (tM ) = λA (tA )} •
(tM , tA ) = (• tM , • tA ) and (tM , tA )• = (tM • , tA • )
λ⊗ is the projection from T⊗ to TM U ∈ Acc⊗ iff the projection of U on A is in Acc
Proposition L(M ⊗A) = P athω (M ) ∩ λ−1 M (L(A))
LPAR - 25 September 2003
#20
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Synchronized product of M and Af M ⊗A = hS × Q, T⊗ , α⊗ , β⊗ , λ⊗ , S0 × Q0 , Acc⊗ i where: T⊗ = {(tM , tA ) ∈ TM × TA | λM (tM ) = λA (tA )} •
(tM , tA ) = (• tM , • tA ) and (tM , tA )• = (tM • , tA • )
λ⊗ is the projection from T⊗ to TM U ∈ Acc⊗ iff the projection of U on A is in Acc
Proposition L(M ⊗A) = P athω (M ) ∩ λ−1 M (L(A)) M |= f with positive probability iff µM [s] (L(M ⊗A[s, q])) > 0 from an initial location (s, q) ∈ S0 × Q0 LPAR - 25 September 2003
#21
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Synchronized product of M and Af (cont’d)
L(s, q) =
L(s, q) = L(M ⊗A[s, q]) (tM ,tA
)∈(s,q)•
tM · L(tM • , tA • )
V (s, q) = µM [s] (L(s, q)) V (s, q) > 0 iff V (s0 , q 0 ) > 0 for some (s0 , q 0 ) reachable from (s, q)
LPAR - 25 September 2003
#21
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Synchronized product of M and Af (cont’d)
L(s, q) =
L(s, q) = L(M ⊗A[s, q]) (tM ,tA
)∈(s,q)•
tM · L(tM • , tA • )
V (s, q) = µM [s] (L(s, q)) V (s, q) > 0 iff V (s0 , q 0 ) > 0 for some (s0 , q 0 ) reachable from (s, q)
An SCC C of M ⊗A is called: null if V (s, q) = 0 for all (s, q) ∈ C persistent if C is an SCC which is maximal among the non null SCCs, transient otherwise.
LPAR - 25 September 2003
#21
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Synchronized product of M and Af (cont’d)
L(s, q) =
L(s, q) = L(M ⊗A[s, q]) (tM ,tA
)∈(s,q)•
tM · L(tM • , tA • )
V (s, q) = µM [s] (L(s, q)) V (s, q) > 0 iff V (s0 , q 0 ) > 0 for some (s0 , q 0 ) reachable from (s, q)
An SCC C of M ⊗A is called: null if V (s, q) = 0 for all (s, q) ∈ C persistent if C is an SCC which is maximal among the non null SCCs, transient otherwise. Goal: check the existence of a reachable non null SCC LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#22
Local notions on SCCs
M ⊗A)|C = “restriction of M ⊗A to C LC (s, q) = L((M ⊗A)|C [s, q]) VC (s, q) = µM [s] (LC (s, q))
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#22
Local notions on SCCs
M ⊗A)|C = “restriction of M ⊗A to C LC (s, q) = L((M ⊗A)|C [s, q]) VC (s, q) = µM [s] (LC (s, q)) C is locally positive if VC (s, q) > 0 for all (s, q) ∈ C
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#22
Local notions on SCCs
M ⊗A)|C = “restriction of M ⊗A to C LC (s, q) = L((M ⊗A)|C [s, q]) VC (s, q) = µM [s] (LC (s, q)) C is locally positive if VC (s, q) > 0 for all (s, q) ∈ C
persistent ⇒ locally positive ⇒ non null
LPAR - 25 September 2003
#22
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Local notions on SCCs
M ⊗A)|C = “restriction of M ⊗A to C LC (s, q) = L((M ⊗A)|C [s, q]) VC (s, q) = µM [s] (LC (s, q)) C is locally positive if VC (s, q) > 0 for all (s, q) ∈ C
persistent ⇒ locally positive ⇒ non null
M |= f with positive probability iff there is a locally positive SCC reachable from an initial location (s, q) in S0 × Q0
LPAR - 25 September 2003
#23
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Caracterisation of locally positive SCCs C is accepted if its set of transitions is in Acc⊗ C is complete if every finite path of M starting in C is contained in C
LPAR - 25 September 2003
#23
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Caracterisation of locally positive SCCs C is accepted if its set of transitions is in Acc⊗ C is complete if every finite path of M starting in C is contained in C
Proposition If A is multi-Büchi or unambiguous, then locally positive
⇔
accepted ∧ complete
LPAR - 25 September 2003
#23
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Caracterisation of locally positive SCCs C is accepted if its set of transitions is in Acc⊗ C is complete if every finite path of M starting in C is contained in C
Proposition If A is multi-Büchi or unambiguous, then locally positive
⇔
accepted ∧ complete
Proposition when A is multi-Büchi, acceptance checking is in O(|Acc| · |C|) when A is unambiguous and separated on each SCC, completeness checking is in O(|C|)
LPAR - 25 September 2003
#24
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Main result
Theorem Given an LTL formula f , checking whether M |= f with positive probability can be done in O(|M | · |f | · 2|f | ).
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#25
Evaluation Proposition If A is unambiguous then P (tM ) · V (tM • , tA • )
V (s, q) = (tM ,tA )∈(s,q)•
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#25
Evaluation Proposition If A is unambiguous then P (tM ) · V (tM • , tA • )
V (s, q) = (tM ,tA )∈(s,q)•
Moreover, for every persistent SCC C , if C is deterministic then V (s, q) = 1 for all s, q ∈ C if C is separated then
q:(s,q)∈C
V (s, q) = 1 for all s ∈ C
LPAR - 25 September 2003
#25
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Evaluation Proposition If A is unambiguous then P (tM ) · V (tM • , tA • )
V (s, q) = (tM ,tA )∈(s,q)•
Moreover, for every persistent SCC C , if C is deterministic then V (s, q) = 1 for all s, q ∈ C if C is separated then
q:(s,q)∈C
V (s, q) = 1 for all s ∈ C
Equation system decomposed and solved for each component
LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#26
Outline 1. Introduction 2. Probabilistic systems 3. Linear Temporal Logic and ω -automata 4. LTL verification and evaluation problems 5. Our approach 6. Conclusion
LPAR - 25 September 2003
#27
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Experimentation: the ProbaTaf tool Probabilistic systems described by bounded Petri nets LTL formulas on the Petri net: transitions, markings and “dead” explicit description of the probabilistic system symbolic BDD-based representation of ω -automata on-the-fly verification algorithm [Cou99] simple Gauss elimination algorithm for evaluation application to several examples: biased dice game [KY76] randomized election algorithm [MSZ03] LPAR - 25 September 2003
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
#28
Experimentation: the ProbaTaf tool
LPAR - 25 September 2003
#29
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Conclusion and perspectives Optimal automata-based approach for LTL verification Allows evaluation Based on properties of ω -automata: separation and unambiguity Java implementation of the method
LPAR - 25 September 2003
#29
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
Conclusion and perspectives Optimal automata-based approach for LTL verification Allows evaluation Based on properties of ω -automata: separation and unambiguity Java implementation of the method Future work precision of the solver infinite-state probabilistic systems stochastic systems LPAR - 25 September 2003
#30
An Optimal Automata Approach to LTL Model Checking of Probabilistic Systems
References [Cou99]
Jean-Michel Couvreur. On-the-fly verification of linear temporal logic. In FM’99—Formal Methods, Volume I, volume 1708 of Lecture Notes in Computer Science, pages 253–271. Springer, 1999.
[Cou00]
Jean-Michel Couvreur. Un point de vue symbolique sur la logique temporelle linéaire. In Actes du Colloque LaCIM 2000, volume 27 of Publications du LaCIM, pages 131–140. Université du Québec à Montréal, August 2000.
[CY95]
Costas Courcoubetis and Mihalis Yannakakis. The complexity of probabilistic verification. Journal of the ACM, 42(4):857–907, July 1995.
[KY76]
Knuth and Yao. The complexity of nonuniform random number generation. In Algorithms and Complexity: New Directions and Recent Results, Ed. J. F. Traub. Academic Press, 1976.
[MSZ03] Yves Métivier, Nasser Saheb, and Akka Zemmari. A uniform randomized election in trees. In SIROCCO 10, volume 17 of Proceedings in Informatics, pages 259–274. Carleton Scientific, 2003. [Var85]
M. Y. Vardi. Automatic verification of probabilistic concurrent finite-state programs. In Proc. 26th IEEE Symp. Foundations of Computer Science (FOCS’85), Portland, OR, USA, Oct. 1985, pages 327–338, 1985.
[Var99]
M. Y. Vardi. Probabilistic linear-time model checking: An overview of the automata-theoretic approach. In Proc. 5th Int. AMAST Workshop Formal Methods for Real-Time and Probabilistic Systems (ARTS’99), Bamberg, Germany, May 1999, volume 1601 of Lecture Notes in Computer Science, pages 265–276. Springer, 1999.
[VW94]
Moshe Y. Vardi and Pierre Wolper. Reasoning about infinite computations. Information and Computation, 115(1):1–37, 1994. LPAR - 25 September 2003