Upload
lacey-blackburn
View
22
Download
2
Tags:
Embed Size (px)
DESCRIPTION
Expressiveness and Closure Properties for Quantitative Languages. Krishnendu Chatterjee, IST Austria Laurent Doyen, ULB Belgium Tom Henzinger, EPFL Switzerland. LICS 2009. Model-Checking. Program/ System. Property/ Specification. Satisfaction Relation. Yes / No. - PowerPoint PPT Presentation
Citation preview
Expressiveness and Closure Properties for
Quantitative Languages
Krishnendu Chatterjee, IST Austria
Laurent Doyen, ULB Belgium
Tom Henzinger, EPFL Switzerland
LICS 2009
Model-Checking
Property/ Specification
Yes / No
Satisfaction Relation
Program/ System
-perhaps a proof -perhaps some counterexamples
Model-Checking
Property/ Specification
Yes/No
Trace inclusion
Program/ System
Formula
Every request is followed by a grant
Finite automaton
Model-Checking
Property/ Specification
Yes/No
Trace inclusion
Program/ System
Finite automaton
Model-checking is boolean
Formula
Every request is followed by a grant
- a trace is either good or bad
Quantitative Analysis
Property/ Specification
Value (R)
Quantitative Analysis
Program/ System
Finite automaton
Formula
Every request is followed by a grant
-Measure of “fit” between system and spec
-e.g. average number of requests immediately granted
Distance (R)
Quantitative Analysis
Quantitative Analysis
Program/ System #1
Finite automaton
- Comparing two implementations
e.g. cost or quality measure
Program/ System #2
Every request is followed by a grant
Quantitative Model-checking
Is there a Quantitative Framework with
- an appealing mathematical formulation, - useful expressive power, and
- good algorithmic properties ?
(Like the boolean theory of -regularity.)
Note: “Quantitative” is more than “timed” and “probabilistic”
A language is a boolean function:
Quantitative languages
A quantitative language is a function:
L(w) can be interpreted as:
• the amount of some resource needed by the system to produce w (power, energy, time consumption),
• a reliability measure (the average number of “faults” in w).
Weighted automata
Quantitative languages are generated by weighted automata.
Weight functionValue of a word w: max of {values of the runs r over w}Value of a run r: Val(r)
where is a value function
Reducibility
A class C of weighted automata can be reduced to a class C’ of weighted automata if
for all A C, there is A’ C’ such that LA = LA’.
Reducibility
A class C of weighted automata can be reduced to a class C’ of weighted automata if
for all A C, there is A’ C’ such that LA = LA’.
E.g. for boolean languages:
• Nondet. coBüchi can be reduced to nondet. Büchi
• Nondet. Büchi cannot be reduced to det. Büchi
(nondet. Büchi cannot be determinized)
cannot be determinized.
cannot be determinized.
Some known facts (CSL’08)
cannot be reduced to
cannot be reduced to
Cut-point languages
Words with value above some threshold:
ω-regular for Sup, LimSup, LimInf
can be non-ω-regular for LimAvg and Discounted
Cut-point languages
LimAvg:
«average number of a’s = 1»
is not ω-regular
A deterministic automaton for would accept (anb)ω for some n
Cut-point languages
Disc:
«disc. sum of a’s ≥ 1»
is not ω-regular
ambiguous word
1
From any two positions p1 and p2, there is a continuation accepted from p1 but not from p2
p1 p2
Cut-point Languages
Cut-point languages for deterministic LimAvg-automata are studied in [Alur/Degorre/Maler/Weiss’09]
Cut-point languages of LimAvg and Discounted can be non-ω-regular
Cut-point languages are not robust w.r.t. transition weights.
Cut-point Languages
isolated cut-point
Isolated cut-point languages are robust
Isolated cut-point languages are ω-regular(for deterministic automata)
Cut-point Languages
Each s.c.c. defines an interval of values.
Make accepting those s.c.c. with interval above
LimAvg:
s.c.c. decomposition
Either value is , then accept
or value is , the reject
Cut-point Languages
Disc:
after sufficiently long prefix, decision can be taken
is reducible to .
Expressive power of {0,1}-automata
A
B
can take finitely many different values.
Store the value
Operations
Operations on quantitative languages:
• shift(L1,c)(w) = L1(w) + c
• scale(L1,c)(w) = c·L1(w) (c>0)
Operations
Operations on quantitative languages:
• shift(L1,c)(w) = L1(w) + c
• scale(L1,c)(w) = c·L1(w) (c>0)
• max(L1,L2)(w) = max(L1(w),L2(w))
• min(L1,L2)(w) = min(L1(w),L2(w))
• complement(L1)(w) = 1-L1(w)
Operations
Operations on quantitative languages:
• shift(L1,c)(w) = L1(w) + c
• scale(L1,c)(w) = c·L1(w) (c>0)
• max(L1,L2)(w) = max(L1(w),L2(w))
• min(L1,L2)(w) = min(L1(w),L2(w))
• complement(L1)(w) = 1-L1(w)
• sum(L1,L2)(w) = L1(w) + L2(w)
Closure properties
All classes of weighted automata are closed under shift and scale.
All classes of nondeterministic weighted automata are closed under max.
Closure properties
There is no nondeterministic LimAvg automaton for the language Lm = min(La,Lb).
Assume that L is definable by a LimAvg automaton C.
Closure properties
There is no nondeterministic LimAvg automaton for the language Lm = min(La,Lb).
Assume that L is definable by a LimAvg automaton C.
Then, some a-cycle or b-cycle in C has average weight >0.
(consider the word for large)
Closure properties
Assume that L is definable by a LimAvg automaton C.
Then, some a-cycle or b-cycle in C has average weight >0.Then, some word gets value >0…
There is no nondeterministic LimAvg automaton for the language Lm = min(La,Lb).
Closure properties
There is no nondeterministic LimAvg automaton for the language Lm = min(La,Lb).
There is no nondeterministic Discounted automaton for the language Lm = min(La,Lb).
Proof: analogous argument.
Conclusion
• Quantitative generalization of languages to model programs/systems more accurately.
• Expressive power:
• Cut-point languages;
• {0,1} automata.
• Closure properties.
• Outlook: other/equivalent formalisms for quantitative specification ?