CaV 2003 CbCb 1 Concurrency and Verification What? Why? How?

Slides:



Advertisements
Similar presentations
The Quest for Correctness Joseph Sifakis VERIMAG Laboratory 2nd Sogeti Testing Academy April 29th 2009.
Advertisements

Model Checking Lecture 1.
Clocked Mazurkiewicz Traces and Partial Order Reductions for Timed Automata D. Lugiez, P. Niebert, S. Zennou Laboratoire d Informatique Fondamentale de.
Real-Time Systems, DTU, Feb 15, 2000 Paul Pettersson, BRICS, Aalborg, Denmark. Timed Automata and Timed Computation Tree Logic Paul Pettersson
Real-Time Systems, DTU, Feb 29, 2000 Paul Pettersson, BRICS, Aalborg, Denmark. UPPAAL’s Modeling and Specification Language & Philips Bounded Retransmission.
UCb Symbolic Reachability and Beyound or how UPPAAL really works Kim Guldstrand Larsen
Dependable Embedded Software Systems Kim Guldstrand Larsen UCb.
M ODEL CHECKING -Vasvi Kakkad University of Sydney.
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
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.
Automatic Verification Book: Chapter 6. What is verification? Traditionally, verification means proof of correctness automatic: model checking deductive:
Game-theoretic approach to the simulation checking problem Peter Bulychev Vladimir Zakharov Lomonosov Moscow State University.
UPPAAL Introduction Chien-Liang Chen.
Hybrid Systems Presented by: Arnab De Anand S. An Intuitive Introduction to Hybrid Systems Discrete program with an analog environment. What does it mean?
Timed Automata.
Verification of Hybrid Systems An Assessment of Current Techniques Holly Bowen.
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.
Hybrid Approach to Model-Checking of Timed Automata DAT4 Project Proposal Supervisor: Alexandre David.
Model Checking for Probabilistic Timed Systems Jeremy Sproston Università di Torino VOSS Dagstuhl seminar 9th December 2002.
1 Formal Methods in SE Qaisar Javaid Assistant Professor Lecture 05.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
1 Modelling and Validation of Real Time Systems Kim Guldstrand Larsen Paul Pettersson
Model Checking. Used in studying behaviors of reactive systems Typically involves three steps: Create a finite state model (FSM) of the system design.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Sanjit A. Seshia and Randal E. Bryant Computer Science Department
Models of Computation for Embedded System Design Alvise Bonivento.
Programming Languages Structure
Embedded Systems Laboratory Department of Computer and Information Science Linköping University Sweden Formal Verification and Model Checking Traian Pop.
1 Formal Engineering of Reliable Software LASER 2004 school Tutorial, Lecture1 Natasha Sharygina Carnegie Mellon University.
A Simple Model Checker for CTL. The problem n We need efficient algorithms to solve the problems [1]M,s  [2]M,s  where M should have finitely many states,
MCAI 2.0 Model Checking in Ten Minutes Edmund Clarke School of Computer Science Carnegie Mellon University.
02/06/05 “Investigating a Finite–State Machine Notation for Discrete–Event Systems” Nikolay Stoimenov.
Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad Bansko, August 28, 2013.
Cheng/Dillon-Software Engineering: Formal Methods Model Checking.
1 Introduction to SMV and Model Checking Mostly by: Ken McMillan Cadence Berkeley Labs Small parts by: Brandon Eames ISIS/Vanderbilt.
UPPAAL Ghaith Haddad. Introduction UPPAAL is a tool for modeling, validation and verification of real-time systems. Appropriate for systems that can be.
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
Transformation of Timed Automata into Mixed Integer Linear Programs Sebastian Panek.
Section 10: Advanced Topics 1 M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi.
Copyright 2001, Matt Dwyer, John Hatcliff, and Radu Iosif. The syllabus and all lectures for this course are copyrighted materials and may not be used.
Computer-Aided Verification 計算機輔助驗證 (Spring 2006) 熊博安 國立中正大學資訊工程研究所
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
1 Computer-Aided Verification 電腦輔助驗證. Other names Formal methods Formal verification Automated verification.
CS5270 Lecture 41 Timed Automata I CS 5270 Lecture 4.
Lecture 81 Optimizing CTL Model checking + Model checking TCTL CS 5270 Lecture 9.
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
Program Design. The design process How do you go about writing a program? –It’s like many other things in life Understand the problem to be solved Develop.
Introduction to Model Checking
- 1 -  P. Marwedel, Univ. Dortmund, Informatik 12, 05/06 Universität Dortmund Validation - Formal verification -
1 Model Checking of of Timed Systems Rajeev Alur University of Pennsylvania.
Verification & Validation By: Amir Masoud Gharehbaghi
Abstract Priority-based FRP (P-FRP) is a functional programming formalism for reactive systems that guarantees real-time response. Preempted tasks in P-FRP.
ECE/CS 584: Verification of Embedded Computing Systems Model Checking Timed Automata Sayan Mitra Lecture 09.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
Model Checking Lecture 1. Model checking, narrowly interpreted: Decision procedures for checking if a given Kripke structure is a model for a given formula.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
CS5270 Lecture 41 Timed Automata I CS 5270 Lecture 4.
Victoria Ibarra Mat:  Generally, Computer hardware is divided into four main functional areas. These are:  Input devices Input devices  Output.
Speaker: Nansen Huang VLSI Design and Test Seminar (ELEC ) March 9, 2016 Simulation-Based Equivalence Checking.
Complexity of Compositional Model Checking of Computation Tree Logic on Simple Structures Krishnendu Chatterjee Pallab Dasgupta P.P. Chakrabarti IWDC 2004,
Presentation Title 2/4/2018 Software Verification using Predicate Abstraction and Iterative Refinement: Part Bug Catching: Automated Program Verification.
SS 2017 Software Verification Timed Automata
Timed Automata Formal Systems Pallab Dasgupta Professor,
Computer-Aided Verification 計算機輔助驗證 (Spring 2004)
Program correctness Model-checking CTL
Real-Time Systems, COSC , Lecture 18
Presentation transcript:

CaV 2003 CbCb 1 Concurrency and Verification What? Why? How?

CaV 2003 CbCb 2 What? Validation and Verification of software and hardware DESIGNS! (E.g., real time systems, embedded systems, communication protocols)

CaV 2003 CbCb 3 A REAL real time system

CaV 2003 CbCb 4 Embedded Systems SyncMaster 17GLsi Telephone Tamagotchi Mobile Phone Digital Watch

CaV 2003 CbCb 5 Why? zTesting/simulation of designs/implementations may not reveal error zFormal verification (=exhaustive testing) of design provides 100% coverage zTOOL support.

CaV 2003 CbCb 6 Tools Logic Temporal Logic Modal Logic MSOL Algorithmic (Timed) Automata Theory Graph Theory BDDs Polyhedra Manipulation Semantics Concurrency Theory Abstract Interpretation Compositionality Models for real-time & hybrid systems HOL TLP Applications PVS ALF SPIN MONAUPPAAL

CaV 2003 CbCb 7 Model Checking TOOL System Description A Requirement F Yes, Prototypes Executable Code Test sequences No! Debugging Information Tools: UPPAAL, CPN, SPIN, VisualSTATE, Statemate, Verilog, Formalcheck,...

CaV 2003 CbCb 8 System Description Unified Model = State Machine! a b x y a? b? x! y!b? Control states Input ports Output ports

CaV 2003 CbCb 9 Train Simulator 1421 machines transitions 2981 inputs 2667 outputs 3204 local states Declare state sp.: 10^476 BUGS ? VVS visualSTATE

CaV 2003 CbCb 10 ‘State Explosion’ problem a cb ,a 4,a 3,a4,a 1,b2,b 3,b4,b 1,c2,c 3,c4,c All combinations = exponential in no. of components M1 M2 M1 x M2

CaV 2003 CbCb 11 Intelligent Light Control OffLightBright press? WANT: if press is issued twice quickly then the light will get brighter; otherwise the light is turned off.

CaV 2003 CbCb 12 Intelligent Light Control OffLightBright press? Solution: Add real-valued clock x X:=0 X<=3 X>3

CaV 2003 CbCb 13 Timed Automata n m a Alur & Dill 1990 Clocks: x, y x 3 x := 0 Guard Boolean combination of comp with integer bounds Reset Action perfomed on clocks Transitions ( n, x=2.4, y= ) ( n, x=3.5, y= ) e(1.1) ( n, x=2.4, y= ) ( m, x=0, y= ) a State ( location, x=v, y=u ) where v,u are in R Action used for synchronization

CaV 2003 CbCb 14 Model Checking TOOL System Description A Requirement F Yes, Prototypes Executable Code Test sequences No! Debugging Information Tools: UPPAAL, CPN, SPIN, VisualSTATE, Statemate, Verilog, Formalcheck,...

CaV 2003 CbCb 15 Computation Tree Logic, CTL Clarke & Emerson 1980 Syntax

CaV 2003 CbCb 16 TCTL = CTL + Time E[  U  ], A[  U  ] - like in CTL No EX 

CaV 2003 CbCb 17 Infinite State Space?

CaV 2003 CbCb 18 Regions Alur & Dill: A Theory of Timed Automata, TCS 126, , 1994 Berthomieu & Menasche: An Enumerative Approach for Analyzing Timed Petri Nets, Information Processing 83, 1983 Berthomieu & Diaz: Modelling and Verification of Time Dependent Systems Using Time Petri Nets, IEEE Trans. on Soft. Eng. 17 (3), 1991

CaV 2003 CbCb 19 Roughly speaking.... Model checking a timed automata against a TCTL-formula amounts to model checking its region graph against a CTL-formula Model checking a timed automata against a TCTL-formula amounts to model checking its region graph against a CTL-formula

CaV 2003 CbCb 20 Complexity However S sys may be EXPONENTIAL in number of parallel components! -- FIXPOINT COMPUTATIONS may be carried out using ROBDD’s (Reduced Ordered Binary Decision Diagrams) Bryant, 86 However S sys may be EXPONENTIAL in number of parallel components! -- FIXPOINT COMPUTATIONS may be carried out using ROBDD’s (Reduced Ordered Binary Decision Diagrams) Bryant, 86

CaV 2003 CbCb 21 Problem to be solved   Model Checking TCTL is PSPACE-hard

CaV 2003 CbCb 22 Research opportunities zIndustrial Applications zApplications to Communication Protocols zApplication Area for Algorithmics zConcrete Projects: yVerification -> Testing ySpecifications with local modalities

CaV 2003 CbCb 23 Course material zJoost-Pieter Katoen: zConcepts, Algorithms, and Tools

CaV 2003 CbCb 24 Course structure zStudent presentations: zBrief overview of main contents zCritical assessment zExamples, applications zFollow-up on literature zSelection and solutions to exercises

CaV 2003 CbCb 25 Student presentations z1. Linear temporal logic, PLTL (47--66) z2. PLTL model checking ( ) z3. Computation tree logic, CTL ( ) z4. Real-time CTL, TCTL ( ) z5. State-space reduction ( )