Towards a model-checker for counter systems
- S. Demri1
- A. Finkel1
- V. Goranko2
- G. van Drimmelen2
1LSV, CNRS & ENS Cachan & INRIA Futurs 2University of Witwatersrand, Johannesburg
Towards a model-checker for counter systems S. Demri 1 A. Finkel 1 V. - - PowerPoint PPT Presentation
Towards a model-checker for counter systems S. Demri 1 A. Finkel 1 V. Goranko 2 G. van Drimmelen 2 1 LSV, CNRS & ENS Cachan & INRIA Futurs 2 University of Witwatersrand, Johannesburg ATVA, October 2006, Beijing Motivations Presburger
1LSV, CNRS & ENS Cachan & INRIA Futurs 2University of Witwatersrand, Johannesburg
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Counter systems (CS) Fast success story
◮ Embedded systems/protocols, Petri nets, . . . ◮ Programs with pointer variables.
◮ Broadcast protocols.
◮ Logics for data words.
◮ Checking safety properties for CS is undecidable. ◮ Checking liveness properties for CS is Σ1
1-hard.
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Counter systems (CS) Fast success story
◮ Reversal-bounded CS.
◮ Flat relational CS.
◮ Flat linear CS.
◮ Petri nets.
◮ Acceleration method, . . .
◮ Flatness is central in the verification of CS.
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Counter systems (CS) Fast success story
◮ Flat CS with Presburger-definable reachability sets. ◮ Homomorphisms between CS and flat CS preserving the
◮ Complete procedure in Fast to enumerate flattenings.
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Counter systems (CS) Fast success story
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Counter systems (CS) Fast success story
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Counter systems (CS) Fast success story
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Presburger counter systems Specification language Problems
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Presburger counter systems Specification language Problems
◮ x = x1, x2, x3 (current values). ◮ x′ = x′
1, x′ 2, x′ 3 (next values).
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Presburger counter systems Specification language Problems
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Presburger counter systems Specification language Problems
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Presburger counter systems Specification language Problems
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Presburger counter systems Specification language Problems
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Presburger counter systems Specification language Problems
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Presburger counter systems Specification language Problems
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Presburger counter systems Specification language Problems
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Presburger counter systems Specification language Problems
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Presburger counter systems Specification language Problems
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Presburger counter systems Specification language Problems
◮ C: PCS ; q, a: configuration ◮ ϕ: formula
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Admissible CS Translation into PA
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Admissible CS Translation into PA
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Admissible CS Translation into PA
◮ flat linear PCSs.
◮ PCSs (Matrix = Id).
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Admissible CS Translation into PA
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Admissible CS Translation into PA
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Admissible CS Translation into PA
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Admissible CS Translation into PA
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Admissible CS Translation into PA
◮ every control path has a unique control path description. ◮ a configuration path is determined by
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Admissible CS Translation into PA
◮ Past-time operators S, X−1. ◮ CQDD-based temporal operators `
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Flattening Completeness
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Flattening Completeness
def
def
def
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Flattening Completeness
def
def
def
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Flattening Completeness
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Flattening Completeness
◮ C′, q′ is a f -flattening of C, q. ◮ Preservation of sets of traces:
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Flattening Completeness
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks Flattening Completeness
Towards a model-checker for counter systems
Motivations Presburger temporal logic Decision procedure Procedure Concluding remarks
◮ Extension to bisimulation-flattening (preserving CTL⋆
◮ What are the trace-flattable systems in the literature? ◮ Decidability status of model-checking “Presburger
◮ Complexity of local model checking admissible PCS over
Towards a model-checker for counter systems