520 likes | 645 Views
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.
E N D
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 -perhaps a proof -perhaps some counterexamples
Model-Checking Program/ System Property/ Specification Formula Every request is followed by a grant Finite automaton Trace inclusion Yes/No
Model-Checking Program/ System Property/ Specification Formula Every request is followed by a grant Finite automaton Trace inclusion Yes/No - a trace is either good or bad Model-checking is boolean
Quantitative Analysis Program/ System Property/ Specification Formula Every request is followed by a grant Finite automaton Quantitative Analysis Value (R) • Measure of “fit” between system and spec • e.g. average number of requests immediately granted
Quantitative Analysis Program/ System #1 Program/ System #2 Finite automaton Every request is followed by a grant Quantitative Analysis Distance (R) • Comparing two implementations • e.g. cost or quality measure
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”
Quantitative languages A language is a boolean function: A quantitative language is a function: • L(w) can be interpreted as: • the amount of some resource needed by thesystem to produce w (power, energy, time consumption), • a reliability measure (the average number of “faults” in w).
Outline • Weighted automata • Expressive power • Closure properties
Weighted automata Weight function Quantitative languages are generated by weighted automata.
Weighted automata Weight function where is a value function Quantitative languages are generated by weighted automata. Value of a word w: max of {values of the runs r over w} Value of a run r: Val(r)
Some value functions (vi {0,1}) (reachability) (Büchi) (coBüchi)
Some value functions (vi {0,1}) (reachability) (Büchi) (coBüchi)
Outline • Weighted automata • Expressive power • Closure properties
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)
Some known facts (CSL’08) cannot be reduced to cannot be reduced to cannot be determinized. cannot be determinized.
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 p2 p1
Cut-point languages Disc: «disc. sum of a’s ≥ 1» is not ω-regular ambiguous word 1 p2 p1 From any two positions p1 and p2, there is a continuation accepted from p1 but not from p2
Cut-point Languages Cut-point languages of LimAvg and Discounted can be non-ω-regular Cut-point languages for deterministic LimAvg-automata are studied in [Alur/Degorre/Maler/Weiss’09] 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 LimAvg: s.c.c. decomposition Each s.c.c. defines an interval of values. Make accepting those s.c.c. with interval above
Cut-point Languages Disc: after sufficiently long prefix, decision can be taken Either value is , then accept or value is , the reject
Expressive power of {0,1}-automata is reducible to . is not reducible to .
Expressive power of {0,1}-automata is reducible to . B A Store the value
Expressive power of {0,1}-automata is reducible to . B A Store the value can take finitely many different values.
Expressive power of {0,1}-automata is reducible to . B A
Expressive power of {0,1}-automata is reducible to . B A
Expressive power of {0,1}-automata is reducible to . B A
Expressive power of {0,1}-automata is reducible to . B A
Expressive power of {0,1}-automata is reducible to . A B for all Therefore for
Outline • Weighted automata • Expressive power • Closure properties
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 Analogous results for boolean languages.
Closure properties 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). 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 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. Then, some word gets value >0…
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.
Closure properties min(L1,L2) = 1-max(1-L1,1-L2)
Closure properties By analogous arguments (analysis of cycles).
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 ?