splst'20098/26/2009 1 good to know about the efficiency of state space methods mikko tiusanen...
Post on 20-Jan-2018
212 Views
Preview:
DESCRIPTION
TRANSCRIPT
SPLST'2009 8/26/2009
1
Good to Know about theEfficiency of State Space Methods
Mikko Tiusanen & Antti ValmariTampere University of TechnologyDepartment of Software Systems
P.O. Box 553, FI-33101 Tampere, FINLANDFirstname.Lastname@tut.fi
SPLST'2009 8/26/2009
2
Contents
• Verification of Concurrent Systems: State Explosion
• Concepts• On Complexity of Verification • How Should We React to High Complexity?
• Dense Storage Schemes: Representing Large Sets in Small Space
• Question-type-specific Reductions
• Conclusions
SPLST'2009 8/26/2009
3
Verification of Concurrent Systems:State Explosion
• Concurrency errors: hard to reproduce, locate, fix verify
• Generate the graph of reachable states, the state space
• Many ways; versatile, easy to understand: - Suffer from state explosion - Narrow? Mutually incompatible?
• Know your methods; know the state explosion problem!
• Criterion: How to do with (very) finite memory and time?
SPLST'2009 8/26/2009
4
Concepts
• State: all information-preservers; initial, reachable,...
• Transition: atomic changes of state; structural, semantic,...
• State space: labelled graph; labelled transition system; Kripke structure
• Action: transition label in process algebras; (in)visible; abstraction
SPLST'2009 8/26/2009
5
On Complexity of Verification
• Verification is complex, due not only to concurrency
• Complexity theory: shape of growth, not of instances
• NP-, PSPACE-, EXPSPACE-complete; undecidable
• Avoid undecidability due to data (Collatz sequence)
• Undecidable concurrency: 1 unbounded FIFO, 1 process
• State space or question PSPACE-complete problems - Asymmetry: questions small, but lead to harder problems
SPLST'2009 8/26/2009
6
How Should We React toHigh Complexity?
• Worst-case: how likely?
• Inherent complexity: verification vs. expressiveness
• Exploit properties of system or verification question!
SPLST'2009 8/26/2009
7
Dense Storage Schemes:Represent Large Sets in Small Space
Binary decision diagrams (BDDs) - Boolean functions as DAGs; order of variables fixed - Representing characteristic function of a set, relation - Set-at-a-time, forward or backward state space search - BDDs are no panacea
SPLST'2009 8/26/2009
8
Dense Storage Schemes:Represent Large Sets in Small Space
• Prospects of dense storage schemes - Magnitude of the problem: describable systems are few - Interesting small state space representation? Useful? - Random sets: bit vectors optimal; BDDs not bad, either - BDDs not bad for practical sets, some methods are
• Dense storage of “small” sets - Being small is exploitable: explicit representation - Lower bound: nb - n log2 n + 1.44n on average
- Bit of information theory a help for new representations
SPLST'2009 8/26/2009
9
Question-type-specific Reductions
• Throw info away; transparent / not; how to extract answer!• Process-algebraic reductions: equivalence, minimisation - CCS vs. CSP: appearances may deceive - Compositional, stepwise reductions - Minimisation may have alternatives - Weaker semantics is a resource Observational Equivalence vs. Traces• Stubborn sets: when order of concurrent transitions
insignificant - There are other ‘partial order’ methods, too - Overview: strong properties, less reduction - Semantics’ relation to some temporal logics
SPLST'2009 8/26/2009
10
Question-type-specific Reductions
SPLST'2009 8/26/2009
11
Conclusions
• State explosion: performance problem for verification
• Picking your questions pays
• Goal: not to waste space; can’t waste time, either
• Unnecessarily distinct state spaces waste space
• How not waste space to represent uninteresting systems?
• Approximations or non-transparent methods not discussed
top related