+ All Categories
Home > Documents > Games and Automata: From Boolean to Quantitative Verification

Games and Automata: From Boolean to Quantitative Verification

Date post: 17-Jan-2016
Category:
Upload: ula
View: 47 times
Download: 0 times
Share this document with a friend
Description:
Games and Automata: From Boolean to Quantitative Verification. - Habilitation thesis defense -. Laurent Doyen CNRS. ENS Cachan, March 13th, 2012. Outline. Antichain Algorithms Finite automata, Büchi automata, alternating automata, partial-observation games, QBF - PowerPoint PPT Presentation
Popular Tags:
141
Games and Automata: From Boolean to Quantitative Verification Laurent Doyen CNRS ENS Cachan, March 13th, 2012 - Habilitation thesis defense -
Transcript
Page 1: Games and Automata: From Boolean to  Quantitative Verification

Games and Automata:From Boolean to

Quantitative Verification

Laurent DoyenCNRS

ENS Cachan, March 13th, 2012

- Habilitation thesis defense -

Page 2: Games and Automata: From Boolean to  Quantitative Verification

Outline

• Antichain Algorithms

Finite automata, Büchi automata, alternating automata, partial-observation games, QBF

• Quantitative Games

Energy games, mean-payoff games, partial- observation, energy parity, multi-dimension

• Quantitative Languages

Automata-based model, complexity, expressiveness, closure properties, mean-payoff automaton expression

Context and perspective

of a selection of results

Page 3: Games and Automata: From Boolean to  Quantitative Verification

Model-checking

[Clarke, Emerson, Pnueli, Sifakis,...]

Check if a Model satisfies a Property ?

…in an automated way

Page 4: Games and Automata: From Boolean to  Quantitative Verification

Model-checking

What kind of properties ?

Page 5: Games and Automata: From Boolean to  Quantitative Verification

Avoid failures !

Model-checking

What kind of properties ?

Page 6: Games and Automata: From Boolean to  Quantitative Verification

Ensure responsiveness !

Model-checking

What kind of properties ?

Page 7: Games and Automata: From Boolean to  Quantitative Verification

What kind of models ?

Model-checking

Page 8: Games and Automata: From Boolean to  Quantitative Verification

What kind of models ?

Model-checking

Reactive systems:

• Non-terminating• Safety-critical• Data abstraction

Page 9: Games and Automata: From Boolean to  Quantitative Verification

Model-checking

Page 10: Games and Automata: From Boolean to  Quantitative Verification

Example

Serverrequest

grant

Clients

Page 11: Games and Automata: From Boolean to  Quantitative Verification

Example

Serverr {r1,r2}

g {g1,g2}

1 21

Page 12: Games and Automata: From Boolean to  Quantitative Verification

Example

Serverr {r1,r2}

g {g1,g2}

1 21« Every request is eventually granted, no simultaneous grants »

Page 13: Games and Automata: From Boolean to  Quantitative Verification

Example

ω-automaton

Serverr {r1,r2}

g {g1,g2}

1 21« Every request is eventually granted, no simultaneous grants »

Page 14: Games and Automata: From Boolean to  Quantitative Verification

Example

ω-automaton

Serverr {r1,r2}

g {g1,g2}

1 21« Every request is eventually granted, no simultaneous grants »Closure

properties

Expressiveness

Decidability

Page 15: Games and Automata: From Boolean to  Quantitative Verification

Example

ω-automaton

LTL

Serverr {r1,r2}

g {g1,g2}

1 21« Every request is eventually granted, no simultaneous grants »Closure

properties

Expressiveness

Decidability

Translation to automata

Page 16: Games and Automata: From Boolean to  Quantitative Verification

Example

ω-automaton

LTLTrace inclusion

Serverr {r1,r2}

g {g1,g2}

1 21« Every request is eventually granted, no simultaneous grants »Closure

properties

Expressiveness

Decidability

Translation to automata

Yes/No answer

Page 17: Games and Automata: From Boolean to  Quantitative Verification

Example

ω-automaton

LTLTrace inclusion

Serverr {r1,r2}

g {g1,g2}

1 21« Every request is eventually granted, no simultaneous grants »Closure

properties

Expressiveness

Decidability

Translation to automata

Yes/No answerAutomata-based approach to model-checking [Vardi, Wolper,...]

Page 18: Games and Automata: From Boolean to  Quantitative Verification

OutlineFrom Boolean to quantitative

verification

Page 19: Games and Automata: From Boolean to  Quantitative Verification

Outline

• Boolean automata-based Verification

1. Techniques to speed up well-known verification algorithms by orders of magnitude

• Quantitative Verification

2. A surprising complexity result in game theory

3. A robust and decidable class of quantitative languages

-

From Boolean to quantitative verification

Page 20: Games and Automata: From Boolean to  Quantitative Verification

Algorithm ?

Page 21: Games and Automata: From Boolean to  Quantitative Verification

Translation to automata

Algorithm ?

Page 22: Games and Automata: From Boolean to  Quantitative Verification

Translation to automata

Closure properties

Algorithm ?

Page 23: Games and Automata: From Boolean to  Quantitative Verification

Translation to automata

Closure properties

This problem is PSPACE-complete

Algorithm ?

Page 24: Games and Automata: From Boolean to  Quantitative Verification

Translation to automata

Closure properties

This problem is PSPACE-complete

Algorithm ?

even if is given explicitly, even over finite words, and even if

Page 25: Games and Automata: From Boolean to  Quantitative Verification

Efficient Algorithm ?

iff

there is no path from inital to accepting states in Ac.

(over finite words)

Page 26: Games and Automata: From Boolean to  Quantitative Verification

Efficient Algorithm ?

iff

there is no path from inital to accepting states in Ac.

Subset construction

(over finite words)

(state-explosion problem)

Page 27: Games and Automata: From Boolean to  Quantitative Verification

Subset Construction

Page 28: Games and Automata: From Boolean to  Quantitative Verification

Subset Construction

Page 29: Games and Automata: From Boolean to  Quantitative Verification

Subset Construction

Page 30: Games and Automata: From Boolean to  Quantitative Verification

. . . .

Subset Construction

Page 31: Games and Automata: From Boolean to  Quantitative Verification

. . . .

Subset Construction

Page 32: Games and Automata: From Boolean to  Quantitative Verification

. . . .

. . . .

Subset Construction

Page 33: Games and Automata: From Boolean to  Quantitative Verification

. . . .

. . . .

Subset Construction

Page 34: Games and Automata: From Boolean to  Quantitative Verification

. . . .

. . . .

Pruning is sound: either or

Subset Construction

Page 35: Games and Automata: From Boolean to  Quantitative Verification

. . . .

. . . .

or

Subset Construction

Pruning is sound: either

Page 36: Games and Automata: From Boolean to  Quantitative Verification

Subset Construction

Page 37: Games and Automata: From Boolean to  Quantitative Verification

Subset Construction

Page 38: Games and Automata: From Boolean to  Quantitative Verification

Subset Construction

Page 39: Games and Automata: From Boolean to  Quantitative Verification

Init Final

Reachability

Is there a (finite) path from Init to Final ?

Page 40: Games and Automata: From Boolean to  Quantitative Verification

Reachability

Is there a (finite) path from Init to Final ?

Page 41: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs

Init Final

Page 42: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs

Init Final

Graph is partially ordered…

Page 43: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs

Init Final

FinalGraph is monotone…

Page 44: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Page 45: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

is a backward simulation relation in Ac

Page 46: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

Use to prune the search

Page 47: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

Use to prune the search

Page 48: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

Use to prune the search

Page 49: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

Use to prune the search

Page 50: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

Use to prune the search

Page 51: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

Use to prune the search

Page 52: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

Use to prune the search

Page 53: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

Use to prune the search

Antichain of promising states

Page 54: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations:

is a backward simulation relation in Ac

is a forward simulation relation in Ac

Page 55: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

is a backward simulation relation in Ac

iff post(.) preserves -upward closure

post*(.) computes a sequence of -upward sets

Page 56: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

is a backward simulation relation in Ac

iff post(.) preserves -upward closure

post*(.) computes a sequence of -upward sets

Page 57: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

is a backward simulation relation in Ac

iff post(.) preserves -upward closure

post*(.) computes a sequence of -upward sets

Page 58: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

is a backward simulation relation in Ac

iff post(.) preserves -upward closure

post*(.) computes a sequence of -upward sets

Page 59: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

is a backward simulation relation in Ac

iff post(.) preserves -upward closure

post*(.) computes a sequence of -upward sets

Page 60: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

is a backward simulation relation in Ac

iff post(.) preserves -upward closure

post*(.) computes a sequence of -upward sets

Antichains as a symbolic representation (minimal elements)

Page 61: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

is a backward simulation relation in Ac

iff post(.) preserves -upward closure

post*(.) computes a sequence of -upward sets

Antichains as a symbolic representation (minimal elements)

Page 62: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

is a backward simulation relation in Ac

iff post(.) preserves -upward closure

post*(.) computes a sequence of -upward sets

Antichains as a symbolic representation (minimal elements)

Page 63: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

is a backward simulation relation in Ac

iff post(.) preserves -upward closure

post*(.) computes a sequence of -upward sets

Antichains as a symbolic representation (minimal elements)

Page 64: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

is a backward simulation relation in Ac

iff post(.) preserves -upward closure

post*(.) computes a sequence of -upward sets

Antichains as a symbolic representation (minimal elements)

Page 65: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations:

is a backward simulation relation in Ac

Symbolic representation

is a forward simulation relation in Ac

Promising states

Page 66: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

Promising states

Here the two interpretations coincide!

is a backward simulation relation in Ac

Symbolic representation

Page 67: Games and Automata: From Boolean to  Quantitative Verification

Structure in graphs. . . .

. . . .Key property

Two interpretations: is a forward simulation relation in Ac

Promising states

Works with ANY backward simulation!

Works with ANY forward simulation!

is a backward simulation relation in Ac

Symbolic representation

Page 68: Games and Automata: From Boolean to  Quantitative Verification

Antichains everywhere!Partial-observation Reachability/Parity games

Finite automata (language inclusion, universality)Büchi automata (language inclusion, universality)LTL satisfiability and model-checkingQBF

...

HSCC’06, CSL’06,CONCUR’08, Inf&Comp’10CAV’06TACAS’07, LMCS’09 TACAS’08 ATVA’11

Page 69: Games and Automata: From Boolean to  Quantitative Verification

Antichains everywhere!Partial-observation Reachability/Parity games

Finite automata (language inclusion, universality)Büchi automata (language inclusion, universality)LTL satisfiability and model-checkingQBF

...

HSCC’06, CSL’06,CONCUR’08, Inf&Comp’10CAV’06TACAS’07, LMCS’09 TACAS’08 ATVA’11

J-F. Raskin

M. De Wulf

N. Maquet

T. Henzinger

D. Berwanger

...

Page 70: Games and Automata: From Boolean to  Quantitative Verification

Antichains everywhere!Partial-observation Reachability/Parity games

Finite automata (language inclusion, universality)Büchi automata (language inclusion, universality)LTL satisfiability and model-checkingQBF

...

Finite Tree Automata [Bouajjani et al. 08] Program Termination [Vardi et al. 09]Minimizing Alternating Büchi [Abdulla et al. 09]LTL synthesis [Raskin et al. 09]Büchi universality [Vardi et al. 10]Simulation Subsumption [Abdulla et al. 10,11]

HSCC’06, CSL’06,CONCUR’08, Inf&Comp’10CAV’06TACAS’07, LMCS’09 TACAS’08 ATVA’11

Page 71: Games and Automata: From Boolean to  Quantitative Verification

Tools

http://www.antichains.be

ATVA’08

TACAS’09

Raskin et al.

Page 72: Games and Automata: From Boolean to  Quantitative Verification

Tools

0

2

4

6

8

10

12

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000

Number of states

Exe

cuti

on

tim

e (s

)

dk.brics

Alaska

NFA universality

Page 73: Games and Automata: From Boolean to  Quantitative Verification

Tools

Reachability/Parity games with imperfect informationFinite automata (language inclusion, universality)Büchi automata (language inclusion, universality)LTL satisfiability and model-checkingLTL synthesis

2006 2006 2007 2008 2009

50 times faster than nuSMV…

LTL model-checking

Page 74: Games and Automata: From Boolean to  Quantitative Verification

Outline

• Boolean Verification

1. Techniques to speed up well-known verification algorithms by orders of magnitude

• Quantitative Verification

2. A surprising complexity result in game theory

3. A robust and decidable class of quantitative languages

-

From Boolean to quantitative verification

Page 75: Games and Automata: From Boolean to  Quantitative Verification

Model-checking

[Clarke, Emerson, Sifakis,...]

Check if a Model satisfies a Property ?

…in an automated way

Page 76: Games and Automata: From Boolean to  Quantitative Verification

Model-checking

[Clarke, Emerson, Sifakis,...]

Check if a Model satisfies a Property ?

…in an automated wayGeneralisation ?

Page 77: Games and Automata: From Boolean to  Quantitative Verification

From graphs to games

Serverrequest

grant

Clients« Every request is eventually granted, no simultaneous grants »

Page 78: Games and Automata: From Boolean to  Quantitative Verification

?request

grant

Clients« Every request is eventually granted, no simultaneous grants »

(Part of) the Model is not given

From graphs to games

Page 79: Games and Automata: From Boolean to  Quantitative Verification

?request

grant

Clients« Every request is eventually granted, no simultaneous grants »

(Part of) the Model is not given

Construct a correct system(typically reduces to game

solving)

From graphs to games

[Church, Büchi, Landweber, Rabin, Pnueli,...]

Page 80: Games and Automata: From Boolean to  Quantitative Verification

?request

grant

Clients« Every request is eventually granted, no simultaneous grants »

(Part of) the Model is not given

Construct a correct system(typically reduces to game

solving)

From graphs to games

[Church, Büchi, Landweber, Rabin, Pnueli,...]

Page 81: Games and Automata: From Boolean to  Quantitative Verification

From Boolean to Quantitative spec

Serverrequest

grant

Clients« Every request is eventually granted, no simultaneous grants »Solution 1: grant within 106

yearsSolution 2: grant even if no request

Page 82: Games and Automata: From Boolean to  Quantitative Verification

Boolean specs do not distinguish correct systems

From Boolean to Quantitative spec

Serverrequest

grant

Clients« Every request is eventually granted, no simultaneous grants »Solution 1: grant within 106

yearsSolution 2: grant even if no request

Page 83: Games and Automata: From Boolean to  Quantitative Verification

From Boolean to Quantitative spec

Serverrequest

grant

Clients« Every request is eventually granted, no simultaneous grants »Solution 1: grant within 106

yearsSolution 2: grant even if no request

« Minimize delays for pending requests, minimize number of grants »

Switch to Quantitative Spec

Page 84: Games and Automata: From Boolean to  Quantitative Verification

Boolean specs do not distinguish wrong systems either!

From Boolean to Quantitative spec

Serverrequest

grant

Clients« Every request is eventually granted, no simultaneous grants »Wrong solution 1: no grant at all

Wrong solution 2: 99% request granted

Page 85: Games and Automata: From Boolean to  Quantitative Verification

From Boolean to Quantitative spec

Serverrequest

grant

Clients« Every request is eventually granted, no simultaneous grants »Wrong solution 1: no grant at all

Wrong solution 2: 99% request granted

« Maximize average number of granted requests »

Switch to Quantitative Spec

Page 86: Games and Automata: From Boolean to  Quantitative Verification

From Boolean to…

E.g., (co)Büchi, Muller, parity, etc.

Boolean acceptance conditions separate good and bad runs:

{0,1}ω {0,1}

Page 87: Games and Automata: From Boolean to  Quantitative Verification

From Boolean to…

E.g., (co)Büchi, Muller, parity, etc.

Quantitative value functions assign value to runs:

Rω R

Boolean acceptance conditions separate good and bad runs:

{0,1}ω {0,1}

Page 88: Games and Automata: From Boolean to  Quantitative Verification

Some value functions

(reachability)

(Büchi)

(coBüchi)

(vi {0,1})

Page 89: Games and Automata: From Boolean to  Quantitative Verification

Some value functions

(reachability)

(Büchi)

(coBüchi)

(vi {0,1})

Page 90: Games and Automata: From Boolean to  Quantitative Verification

Outline

• Boolean Verification

1. Techniques to speed up well-known verification algorithms by orders of magnitude

• Quantitative Verification

2. Mean-payoff parity games are in NP coNP

3. A robust and decidable class of quantitative languages

-

From Boolean to quantitative verification

Page 91: Games and Automata: From Boolean to  Quantitative Verification

ExampleMean-payoff parity games

Page 92: Games and Automata: From Boolean to  Quantitative Verification

ExampleMean-payoff parity games

ω-regular specifications(reactivity, liveness,…)

Page 93: Games and Automata: From Boolean to  Quantitative Verification

ExampleMean-payoff parity games

ω-regular specifications(reactivity, liveness,…)

• Memoryless strategies

• NP coNP

Page 94: Games and Automata: From Boolean to  Quantitative Verification

ExampleMean-payoff parity games

ω-regular specifications(reactivity, liveness,…)

Quantitative specification(cost optimization,…)

• Memoryless strategies

• NP coNP

• Memoryless strategies

• NP coNP

Page 95: Games and Automata: From Boolean to  Quantitative Verification

ExampleMean-payoff Büchi games

Visit q0 infinitely often,and maximize mean-payoff

Page 96: Games and Automata: From Boolean to  Quantitative Verification

Example

Visit q0 infinitely often,and maximize mean-payoff

Optimal strategy: spend more and more time in q1

Requires infinite memory…

Mean-payoff Büchi games

Page 97: Games and Automata: From Boolean to  Quantitative Verification

ExampleMean-payoff parity games

• Memoryless strategies

• still in NP coNP

Page 98: Games and Automata: From Boolean to  Quantitative Verification

ExampleMean-payoff parity games

• Memoryless strategies

• still in NP coNP

1. Reduction to parity games with positive counter2. Finite-memory strategies suffice

Page 99: Games and Automata: From Boolean to  Quantitative Verification

ExampleMean-payoff parity games

• Memoryless strategies

• still in NP coNP

1. Reduction to parity games with positive counter2. Finite-memory strategies suffice

3. Winning strategies can be decomposed into memoryless strategies, and combined using counters.

4. Decomposition can be guessed in NP

Page 100: Games and Automata: From Boolean to  Quantitative Verification

ExampleMean-payoff parity games

• Memoryless strategies

• still in NP coNP

ICALP’10

K. Chatterjee

Page 101: Games and Automata: From Boolean to  Quantitative Verification

Outline

• Boolean Verification

1. Techniques to speed up well-known verification algorithms by orders of magnitude

• Quantitative Verification

2. Mean-payoff parity games are in NP coNP

3. A robust and decidable class of quantitative languages

-

From Boolean to quantitative verification

Page 102: Games and Automata: From Boolean to  Quantitative Verification

Quantitative Languages

Page 103: Games and Automata: From Boolean to  Quantitative Verification

Long-term goal

Is there a Quantitative Framework with

- an appealing mathematical formulation, - useful expressive power, robustness and - good algorithmic properties ?

(Like the boolean theory of -regularity.)

Note: “Quantitative” is more than “timed” and “probabilistic”

[Henzinger,...]

Page 104: Games and Automata: From Boolean to  Quantitative Verification

Quantitative languages

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).

A quantitative language is a function:

Page 105: Games and Automata: From Boolean to  Quantitative Verification

Quantitative languages

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).

A quantitative language is a function:

Classical Boolean languages are the special case where

Page 106: Games and Automata: From Boolean to  Quantitative Verification

Languages & AutomataBoolean languages are generated by finite automata.

Page 107: Games and Automata: From Boolean to  Quantitative Verification

Languages & AutomataBoolean languages are generated by finite automata.

Quantitative languages are generated by weighted automata,

LA(w) =

A is deterministic: value of (unique) run A is non-deterministic: sup of run values A is universal: inf of run values A is alternating: value of game-outcome run (sup inf) …

Page 108: Games and Automata: From Boolean to  Quantitative Verification

Quantitative Languages

20 classes of quantitative languages...

Page 109: Games and Automata: From Boolean to  Quantitative Verification

Quantitative Languages

1. Decision problems

2. Expressiveness

3. Closure properties

Page 110: Games and Automata: From Boolean to  Quantitative Verification

Given weighted automata A, and

decide

Decision problems

Quant. emptinessQuant. universality

Page 111: Games and Automata: From Boolean to  Quantitative Verification

Given weighted automata A, and

decide

Decision problems

Quant. emptinessQuant. universalityQuant. inclusion

Quant. equivalence

Page 112: Games and Automata: From Boolean to  Quantitative Verification

Given weighted automata A, and

decide

Decision problems

Quant. emptinessQuant. universalityQuant. inclusion

Quant. equivalence

CSL’08, CSL’10, ToCL’10

Page 113: Games and Automata: From Boolean to  Quantitative Verification

Given weighted automata A, and

decide

Decision problems

Quant. emptinessQuant. universalityQuant. inclusion

Quant. equivalence

Undecidable for LimAvg.

Open question for Disc.

CSL’08, CSL’10, ToCL’10

Page 114: Games and Automata: From Boolean to  Quantitative Verification

Quantitative Languages

1. Decision problems

2. Expressiveness

3. Closure properties

Page 115: Games and Automata: From Boolean to  Quantitative Verification

Expressiveness

Compare classes of quantitative languages defined by weighted automata

O(20 x 20) comparisons…

Page 116: Games and Automata: From Boolean to  Quantitative Verification

Expressiveness

and cannot be determinized.

LICS’09, LMCS’10

Compare classes of quantitative languages defined by weighted automata

O(20 x 20) comparisons…

Page 117: Games and Automata: From Boolean to  Quantitative Verification

Quantitative Languages

1. Decision problems

2. Expressiveness

3. Closure properties

Page 118: Games and Automata: From Boolean to  Quantitative Verification

Operations

Operations on quantitative languages:

• max(L1,L2)

• min(L1,L2)

• complement(L1) = 1-L1

• L1 + L2

Page 119: Games and Automata: From Boolean to  Quantitative Verification

Operations

Operations on quantitative languages:

• max(L1,L2)

• min(L1,L2)

• complement(L1) = 1-L1

• L1 + L2

Note L1 L2 iff L1 + (1-L2) 1

Page 120: Games and Automata: From Boolean to  Quantitative Verification

LimAvg Automata

LICS’09, FCT’09

Page 121: Games and Automata: From Boolean to  Quantitative Verification

LimAvg Automata

LICS’09, FCT’09

Page 122: Games and Automata: From Boolean to  Quantitative Verification

Beyond Weighted Automata

Page 123: Games and Automata: From Boolean to  Quantitative Verification

LimAvg Automata

Page 124: Games and Automata: From Boolean to  Quantitative Verification

E ::= A | max(E,E) | min(E,E) | Sum(E,E)

LimAvg Automaton Expressions

LimAvg-automaton expressions are defined by:

where A is a deterministic LimAvg-automaton.

Page 125: Games and Automata: From Boolean to  Quantitative Verification

E ::= A | max(E,E) | min(E,E) | Sum(E,E)

LimAvg Automaton Expressions

LimAvg-automaton expressions are defined by:

E.g.: max(A1 + A2, min(A3, A4))

where A is a deterministic LimAvg-automaton.

Page 126: Games and Automata: From Boolean to  Quantitative Verification

E ::= A | max(E,E) | min(E,E) | Sum(E,E)

LimAvg Automaton Expressions

LimAvg-automaton expressions are defined by:

where A is a deterministic LimAvg-automaton.

Closure properties:

Page 127: Games and Automata: From Boolean to  Quantitative Verification

LimAvg Automaton Expressions

Decision problems: all questions reduce to quant. emptiness

E ::= A | max(E,E) | min(E,E) | Sum(E,E)

LimAvg-automaton expressions are defined by:

where A is a deterministic LimAvg-automaton.

Page 128: Games and Automata: From Boolean to  Quantitative Verification

Value set

Solve decision problems using the value set:

Value Set = { (LA1(w),LA2

(w),LA3(w),LA4

(w)) | w Σω}

R4

How to compute this set ?

E.g.: E = max(A1 + A2, min (A3, A4))

Page 129: Games and Automata: From Boolean to  Quantitative Verification

Value set

Solve decision problems using the value set:

Value Set = { (LA1(w),LA2

(w),LA3(w),LA4

(w)) | w Σω}

R4

How to compute this set ?

Uses arguments in computational geometry, yields 4EXPTIME complexity for emptiness.

E.g.: E = max(A1 + A2, min (A3, A4))

Page 130: Games and Automata: From Boolean to  Quantitative Verification

Value set

Solve decision problems using the value set:

Value Set = { (LA1(w),LA2

(w),LA3(w),LA4

(w)) | w Σω}

R4

E(Σω) = { max(x+y, min(z,t)) | (x,y,z,t) Value Set}is a finite union of intervals.

Find maximum of E(Σω) to solve emptiness

E.g.: E = max(A1 + A2, min (A3, A4))

Page 131: Games and Automata: From Boolean to  Quantitative Verification

LimAvg Automaton Expressions

LimAvg-automaton expression

LimAvg-automaton expression

Quant. inclusion

Closure properties

Expressiveness

Decidability

Page 132: Games and Automata: From Boolean to  Quantitative Verification

LimAvg Automaton Expressions

LimAvg-automaton expression

LimAvg-automaton expression

Quant. inclusion

Closure properties

Expressiveness

Decidability

CONCUR’10

K. Chatterjee H.

Edelsbrunner

T. Henzinger

P. Rannou

Page 133: Games and Automata: From Boolean to  Quantitative Verification

Conclusion

Page 134: Games and Automata: From Boolean to  Quantitative Verification

Conclusion – Key results

1. Efficient antichain algorithms

2. Quantitative games

Mean-payoff parity games in NP coNP

3. Quantitative generalization of languages

LimAvg automaton expressions: robust and decidable

0

2

4

6

8

10

12

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000

Number of states

Execu

tio

n t

ime (

s)

dk.brics

Alaska

Page 135: Games and Automata: From Boolean to  Quantitative Verification

1. Efficient antichain algorithms

0

2

4

6

8

10

12

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000

Number of states

Execu

tio

n t

ime (

s)

dk.brics

Alaska

Perspectives

Can we predict the performance of antichain algorithms ?

Complexity theory beyond worst-case…

Page 136: Games and Automata: From Boolean to  Quantitative Verification

2. Quantitative games

Mean-payoff parity games in NP coNP

• Multi-dimensional mean-payoff games – complexity

• New classes of quantitative stochastic games

in progress, PhD thesis of Mahsa Shirmohammadi

• New classes of games on counter systems

in progress, PhD thesis of Julien Reichert

Perspectives

Page 137: Games and Automata: From Boolean to  Quantitative Verification

3. Quantitative generalization of languages

LimAvg automaton expressions: robust and decidable

• Discounted-sum “expressions” ?

• Incorporate Boolean conditions

• Theory of quantitative regularity

- analogous of Borel hierarchy

- safety vs. liveness

- logical characterization

Perspectives

Page 138: Games and Automata: From Boolean to  Quantitative Verification

Acknowledgments

The work in this thesis has been carried out in the following teams:

• Tom Henzinger (EPFL, 2006-2008)

• Jean-François Raskin (ULB, 2009)

• Alain Finkel (LSV, 2009-now)

J-F. Raskin

T. Henzinger

A. Finkel

Page 139: Games and Automata: From Boolean to  Quantitative Verification

Credits

With the following co-authors (students in blue):

• Dietmar Berwanger• Thomas Brihaye• Lubos Brim• Véronique Bruyère• Jakub Chaloupka• Krishnendu Chatterjee• Aldric Degorre• Martin De Wulf• Marc Ducobu• Herbert Edelsbrunner

• Gilles Geeraerts• Raffaella Gentilini• Hugo Gimbert• Tom Henzinger• Barbara Jobstmann• Axel Legay• Nicolas Maquet• Nicolas Markey• Thierry Massart• Dejan Nickovic

• Joël Ouaknine • Tatjana Petrov• Sangram Raje• Philippe Rannou• Jean-François Raskin• Julien Reichert• Mahsa Shirmohammadi• Rohit Singh• Szymon Torunczyk• James Worrell

Page 140: Games and Automata: From Boolean to  Quantitative Verification

Credits

With the following co-authors:

• Dietmar Berwanger• Thomas Brihaye• Lubos Brim• Véronique Bruyère• Jakub Chaloupka• Krishnendu Chatterjee• Aldric Degorre• Martin De Wulf• Marc Ducobu• Herbert Edelsbrunner

• Gilles Geeraerts• Raffaella Gentilini• Hugo Gimbert• Tom Henzinger• Barbara Jobstmann• Axel Legay• Nicolas Maquet• Nicolas Markey• Thierry Massart• Dejan Nickovic

• Joël Ouaknine • Tatjana Petrov• Sangram Raje• Philippe Rannou• Jean-François Raskin• Julien Reichert• Mahsa Shirmohammadi• Rohit Singh• Szymon Torunczyk• James Worrell

Page 141: Games and Automata: From Boolean to  Quantitative Verification

Thank you !

Questions ?

The end


Recommended