SPLST'20098/26/2009 1 Good to Know about the Efficiency of State Space Methods Mikko Tiusanen & Antti Valmari Tampere University of Technology Department.

Slides:



Advertisements
Similar presentations
Model Checking Lecture 4. Outline 1 Specifications: logic vs. automata, linear vs. branching, safety vs. liveness 2 Graph algorithms for model checking.
Advertisements

The Quest for Correctness Joseph Sifakis VERIMAG Laboratory 2nd Sogeti Testing Academy April 29th 2009.
Copyright 2000 Cadence Design Systems. Permission is granted to reproduce without modification. Introduction An overview of formal methods for hardware.
Bounded Model Checking of Concurrent Data Types on Relaxed Memory Models: A Case Study Sebastian Burckhardt Rajeev Alur Milo M. K. Martin Department of.
Automated Theorem Proving Lecture 1. Program verification is undecidable! Given program P and specification S, does P satisfy S?
Automatic Verification Book: Chapter 6. How can we check the model? The model is a graph. The specification should refer the the graph representation.
Modeling issues Book: chapters 4.12, 5.4, 8.4, 10.1.
Tintu David Joy. Agenda Motivation Better Verification Through Symmetry-basic idea Structural Symmetry and Multiprocessor Systems Mur ϕ verification system.
1 Title Page Implicit and Explicit Reachable State Space Exploration Of Esterel Logical Circuits Advisor :
Representing Boolean Functions for Symbolic Model Checking Supratik Chakraborty IIT Bombay.
M ODEL CHECKING -Vasvi Kakkad University of Sydney.
CS 267: Automated Verification Lecture 8: Automata Theoretic Model Checking Instructor: Tevfik Bultan.
Partial Order Reduction: Main Idea
Lecture 24 MAS 714 Hartmut Klauck
Hardware and Petri nets Symbolic methods for analysis and verification.
1 Model checking. 2 And now... the system How do we model a reactive system with an automaton ? It is convenient to model systems with Transition systems.
Planning based on Model Checking Dept. of Information Systems and Applied CS Bamberg University Seminar Paper Svetlana Balinova.
Automatic Verification Book: Chapter 6. What is verification? Traditionally, verification means proof of correctness automatic: model checking deductive:
An Introduction to the Model Verifier verds Wenhui Zhang September 15 th, 2010.
ECE Synthesis & Verification - L271 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Systems Model Checking basics.
Game-theoretic approach to the simulation checking problem Peter Bulychev Vladimir Zakharov Lomonosov Moscow State University.
Efficient Reachability Analysis for Verification of Asynchronous Systems Nishant Sinha.
SYMBOLIC MODEL CHECKING: STATES AND BEYOND J.R. Burch E.M. Clarke K.L. McMillan D. L. Dill L. J. Hwang Presented by Rehana Begam.
Digitaalsüsteemide verifitseerimise kursus1 Formal verification: Property checking Property checking.
Review of topics Final exam : -May 2nd to May 7 th - Projects due on May 7th.
CSEP590 – Model Checking and Software Verification University of Washington Department of Computer Science and Engineering Summer 2003.
Formal Methods of Systems Specification Logical Specification of Hard- and Software Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt.
Peter van Emde Boas: Imperfect Information Games; what makes them Hard to Analyze. IMPERFECT INFORMATION GAMES; what makes them Hard to Analyze ? Peter.
Model Checking. Used in studying behaviors of reactive systems Typically involves three steps: Create a finite state model (FSM) of the system design.
1 Carnegie Mellon UniversitySPINFlavio Lerda SPIN An explicit state model checker.
Analysis of Software Eric Feron From "Semantic Foundations of Program Analysis" by P. Cousot in "Program Flow Analysis Theory and Applications" Muchnik.
NP-complete and NP-hard problems
ECE Synthesis & Verification - L211 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Systems Verification Equivalence checking.
1 Formal Engineering of Reliable Software LASER 2004 school Tutorial, Lecture1 Natasha Sharygina Carnegie Mellon University.
CS 267: Automated Verification Lecture 13: Bounded Model Checking Instructor: Tevfik Bultan.
Formal verification Marco A. Peña Universitat Politècnica de Catalunya.
Daniel Kroening and Ofer Strichman Decision Procedure
272: Software Engineering Fall 2012 Instructor: Tevfik Bultan Lecture 4: SMT-based Bounded Model Checking of Concurrent Software.
Model Checking and Related Techniques
MCAI 2.0 Model Checking in Ten Minutes Edmund Clarke School of Computer Science Carnegie Mellon University.
Cheng/Dillon-Software Engineering: Formal Methods Model Checking.
Compressing Multiresolution Triangle Meshes Emanuele Danovaro, Leila De Floriani, Paola Magillo, Enrico Puppo Department of Computer and Information Sciences.
1 Introduction to SMV and Model Checking Mostly by: Ken McMillan Cadence Berkeley Labs Small parts by: Brandon Eames ISIS/Vanderbilt.
Binary Decision Diagrams (BDDs)
Model Checking Lecture 4 Tom Henzinger. Model-Checking Problem I |= S System modelSystem property.
R. Banach, School of Computer Science, University of Manchester, UK M. Bozzano, Fondazione Bruno Kessler, FBK-IRST, Trento, Italy 11. FSAP and the Model.
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
CS6133 Software Specification and Verification
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View BDDs.
Lecture 81 Optimizing CTL Model checking + Model checking TCTL CS 5270 Lecture 9.
1 CSEP590 – Model Checking and Automated Verification Lecture outline for August 6, 2003.
- 1 -  P. Marwedel, Univ. Dortmund, Informatik 12, 05/06 Universität Dortmund Validation - Formal verification -
Verification & Validation By: Amir Masoud Gharehbaghi
Verifying Programs with BDDs Topics Representing Boolean functions with Binary Decision Diagrams Application to program verification class-bdd.ppt
Properties as Processes : FORTE slide Properties as Processes: their Specification and Verification Joel Kelso and George Milne School of Computer.
Products of MSC-Graphs Philippe Darondeau Blaise Genest Loïc Hélouët IRISA Laboratory / CNRS&INRIA Rennes, France.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
NP-Completeness  For convenience, the theory of NP - Completeness is designed for decision problems (i.e. whose solution is either yes or no).  Abstractly,
Bounded Model Checking A. Biere, A. Cimatti, E. Clarke, Y. Zhu, Symbolic Model Checking without BDDs, TACAS’99 Presented by Daniel Choi Provable Software.
Complexity of Compositional Model Checking of Computation Tree Logic on Simple Structures Krishnendu Chatterjee Pallab Dasgupta P.P. Chakrabarti IWDC 2004,
Basic concepts of Model Checking
Abstraction and Refinement for Large Scale Model Checking
Information Complexity Lower Bounds
SS 2017 Software Verification Bounded Model Checking, Outlook
Review for the Midterm Exam
Over-Approximating Boolean Programs with Unbounded Thread Creation
Discrete Controller Synthesis
An explicit state model checker
CSE 6408 Advanced Algorithms.
Lecture 10, Computer Networks (198:552)
Presentation transcript:

SPLST'20098/26/ Good to Know about the Efficiency of State Space Methods Mikko Tiusanen & Antti Valmari Tampere University of Technology Department of Software Systems P.O. Box 553, FI Tampere, FINLAND

SPLST'20098/26/ 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'20098/26/ 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'20098/26/ 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'20098/26/ 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'20098/26/ How Should We React to High Complexity? Worst-case: how likely? Inherent complexity: verification vs. expressiveness Exploit properties of system or verification question!

SPLST'20098/26/ 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'20098/26/ 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 log 2 n n on average - Bit of information theory a help for new representations

SPLST'20098/26/ 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'20098/26/ Question-type-specific Reductions

SPLST'20098/26/ 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