Reasoning about Timed Systems Using Boolean Methods

Size: px
Start display at page:

Download "Reasoning about Timed Systems Using Boolean Methods"

Transcription

1 Reasoning about Timed Systems Using Boolean Methods Sanjit A. Seshia EECS, UC Berkeley Joint work with Randal E. Bryant (CMU) Kenneth S. Stevens (Intel, now U. Utah)

2 Timed System A system whose correctness depends not only on its functionality (what results it generates), but also on its timeliness (the time at which results are generated). 2

3 Real-Time Embedded Systems 3

4 Self-Timed Circuits 4

5 Modeling & Verification Verify model Model Timed System 5

6 Challenges with Timed Systems State has 2 components: Boolean variables (V):( model discrete state Real-valued variables (X):( measure real time Infinitely-many states Has a finite representation (regions graph) But grows worse than X X Verification is hard! 6

7 Modeling & Verification Verify model Model Checking Model Timed Automaton Timed System Self-Timed Circuit 7

8 Message of This Talk: Leverage Boolean Methods Modeling Use Boolean variables to model timing, where possible Verification Use symbolic Boolean representations and algorithms operating on them Binary Decision Diagrams (BDDs( BDDs), Boolean satisfiability solvers (SAT) Why? Systems have complex Boolean behavior anyway Great progress made in finite-state model checking, SAT solving, etc. over last 15 years 8

9 Talk Outline Motivating Problem: Verifying Self-Timed Circuits Generalized Relative Timing Circuits Timed Automata Model Checking Timed Automata Case Studies Future Directions & Related Research 9

10 Self-Timed (Asynchronous) Circuits Many design styles use timing assumptions Relative Timing Delay Independent Burst Mode Gate-level Metric Timing Relative Timing: [Stevens et al. ASYNC 99, TVLSI 03] Circuit behavior constrained by relative ordering of signal transitions u v 10

11 Relative Timing (RT) Verification Methodology: 2 Steps 1. Check circuit functionality under timing assumptions Search the constrained state space Model checking 2. Verify timing assumptions themselves Size circuit path delays appropriately Static timing analysis 11

12 Pros and Cons of RT Advantages: + Applies to many design styles + Incremental addition of timing constraints + No conservatively set min-max max delays Disadvantages: Cannot express metric timing More work to be done on verification Scaling up Validating timing constraints themselves 12

13 Our Contributions Generalized RT Can express some metric timing [Seshia, Stevens, & Bryant, ASYNC 05] Applied Fully Symbolic Verification Techniques Model circuits using timed automata Metric timing modeled using real-valued variables Non-metric with Booleans Performed Case Sudies Including Global STP circuit (published version of Pentium-4 4 ALU ckt.) 13

14 Talk Outline Motivating Problem: Verifying Self-Timed Circuits Generalized Relative Timing Circuits Timed Automata Model Checking Timed Automata Case Studies Future Directions & Related Research 14

15 Generalizing Relative Timing Relative Timing Delay Independent Burst Mode Gate-level Metric Timing 15

16 Circuit Model Variables (signals): v 1, v 2,, v n Events (signal transitions): e i Rules E i (v 1, v 2,, v n ) e i is v i or v i Timing Constraints 16

17 Generalized Relative Timing (GRT) Constraint : Time between e j and previous occurrence of e i Δ(e i, e j ) : Time between e i e j Form of GRT constraint: Δ(e i, e j ) Δ(e i, e k ) + d e i e i e j e k 17

18 Special Case: Common Point-of- Divergence (PoD) PoD constraint: Δ(e i, e j ) Δ(e i, e k ) Written as: e i e j e k e i e j e k An RT constraint traced back to its source 18

19 Example: Point-of-Divergence (PoD) Constraint c ac b 19

20 Example: Metric Timing Δ(data_in, data_in_aux) Δ(enable, trigger) 20

21 Do We Need Metric Timing? Useful for modular specification of timing constraints Also when delays are explicitly used 21

22 Verifying Generalized Relative Timing Constraints Use static timing analysis to compute min-max max path delays To verify: Δ(e i, e j ) Δ(e i, e k ) + d We verify that: max-delay( e i à e j ) min-delay( e i à e k ) + ) + d 22

23 Talk Outline Motivating Problem: Verifying Self-Timed Circuits Generalized Relative Timing Circuits Timed Automata Model Checking Timed Automata Case Studies Future Directions & Related Research 23

24 Modeling Timed Circuits Need to model: Rules ( Boolean behavior) and Timing Our formalism: Timed Automata [Alur Generalization of finite automata State variables: Alur & Dill, 90] Boolean (circuit signals) Real-valued timers or clocks (impose timing constraints) Operations: (1) compare with constant, (2) reset to zero We model non-metric timing with Booleans 24

25 Enforcing Timing with Booleans c ac b 1.c sets a bit ac resets it 3.b cannot occur while the bit is set 3. 25

26 Enforcing Timing with Timer Variables Δ(data_in, data_in_aux) Δ(enable, trigger) 26

27 Enforcing Timing with Timer Variables Δ(data_in, data_in_aux) Δ(enable, trigger) data_in sets x 1 to 0 data_in_aux must occur while x 1 c enable sets x 2 to 0 trigger can only occur if x 2 c c determined just as in other metric timing styles 27

28 Booleans vs. Timers Most timing constraints tend to be PoD So few real-valued timer variables used in practice 28

29 Talk Outline Motivating Problem: Verifying Self-Timed Circuits Generalized Relative Timing Circuits Timed Automata Model Checking Timed Automata Case Studies Future Directions & Related Research 29

30 State Boolean part: assignment to signals v 1 = 0, v 2 = 1, v 3 = 0,... Real-valued part: relation between timers x 2 x 1 0 x 2 0 x 1 x 2 x 1 symbolic representation 30

31 Symbolic Model Checking of Timed Automata,,,,,, Examples: ATACS [Myers et al.], Kronos [Yovine, Maler, et al.], Uppaal [Larsen, Yi, et al.], 31

32 Fully Symbolic Model Checking Symbolically represent sets of signal assignments with corresponding relations between timers v 1 v 2 x 1 0 x 2 0 x 1 x 2,... 32

33 Our Approach to Fully Symbolic Model Checking [Seshia & Bryant, CAV 03] Based on algorithm given by Henzinger et al. Core model checking operations Image computation Quantifier elimination in quantified difference logic Termination check Satisfiability checking of difference logic et al.(1994) Our Approach: Use Boolean encodings Quantified difference logic Quantified Boolean logic Difference logic Boolean logic Use BDDs,, SAT solvers 33

34 Example: Termination Check Have we seen all reachable states of the systems?? Satisfiability solving in Difference Logic 34

35 Solving Difference Logic via SAT x y y z z x+1 e 1 x y e 1 e 2 e 3 e 2 y z Overall Boolean Encoding e 3 z x+1 e 1 e 2 e 3 Transitivity Constraint 35

36 A More Realistic Situation x y... y z z x+1 x y y z z x+1... is a term in the SOP (DNF) 36

37 Talk Outline Motivating Problem: Verifying Self-Timed Circuits Generalized Relative Timing Circuits Timed Automata Model Checking Timed Automata Case Studies Future Directions & Related Research 37

38 Case Studies Global STP Circuit Self-resetting domino ckt.. in Pentium-4 4 ALU Analyzed published ckt. [Hinton et al., JSSC [Hinton et al., JSSC 01] GasP FIFO Control [Sutherland & Fairbanks, ASYNC 01] STAPL Left-Right Buffer [Nystrom & Martin, 02] STARI [Greenstreet, 93] 38

39 Footed and Unfooted Domino Inverters 39

40 Global STP Circuit (simplest version at gate-level) ck res out 40

41 Global STP Circuit: Sample Constraint res ck ck res ck ck res out 41

42 Global STP Circuit: An Error We want: red < blue 7 transitions < 5 transitions ck r s out 42

43 Comparison with ATACS Model checking for absence of short-circuits Circuit Global STP GasP-10 stages STAPL-3 stages Number of Signals Time for our model checker, TMV (in sec.) ATACS did not finish within 3600 sec. on any 43

44 Comparison with ATACS on STARI 44

45 Related Work Modeling Gate-level Metric Timing Timed Petri Nets, TEL, [Myers, Timed Automata-based [Maler Chain Constraints [Negulescu Relative Timing [Stevens et al.] Lazy transition systems [Pena et al.] Symbolic Gate Delays [Clariso [Myers, Yoneda,, et al.] Maler, Pnueli,, et al.] Negulescu & Peeters] Clariso & Cortadella] Verification For circuits, mostly restricted to just symbolic techniques [e.g., ATACS] 45

46 Talk Outline Motivating Problem: Verifying Self-Timed Circuits Generalized Relative Timing Circuits Timed Automata Model Checking Timed Automata Case Studies Future Directions & Related Research 46

47 Summary Leverage Boolean Methods for Timed Systems Modeling: generalized relative timing Verification: fully symbolic model checking Using BDDs,, SAT Demonstrated Application: Modeling and Verifying Self-Timed Circuits 47

48 Future Directions: Model Generation Model Timed System Needs to be automated Main Challenge: Automatic generation of timing constraints Idea: Machine learning from simulated runs (successful and failing) 48

49 Future Directions: New Applications Distributed Real-time Embedded Systems E.g., sensor networks Operate asynchronously Lots of concurrency Timeliness important Will generalized relative timing work for this application? 49

50 Related Research Project UCLID Modeling & Verifying Infinite-State Systems Focus: Integer arithmetic, Data Structures (arrays, memories, queues, etc.), Bit-vector operations, Applications: Program verification, Processor verification, Analyzing security properties E.g., detecting if a piece of code exhibits malicious behavior (worm/virus) Also based on Boolean Methods Problems in first-order logic translated to SAT Programming Systems seminar, Oct

51 More information at Thank you! 51

Unbounded, Fully Symbolic Model Checking of Timed Automata using Boolean Methods

Unbounded, Fully Symbolic Model Checking of Timed Automata using Boolean Methods Appeared at CAV 03 Unbounded, Fully Symbolic Model Checking of Timed Automata using Boolean Methods Sanjit A. Seshia and Randal E. Bryant School of Computer Science, Carnegie Mellon University, Pittsburgh,

More information

EECS 219C: Formal Methods Binary Decision Diagrams (BDDs) Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Formal Methods Binary Decision Diagrams (BDDs) Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Formal Methods Binary Decision Diagrams (BDDs) Sanjit A. Seshia EECS, UC Berkeley Boolean Function Representations Syntactic: e.g.: CNF, DNF (SOP), Circuit Semantic: e.g.: Truth table, Binary

More information

Kronos: A Model-Checking Tool for Real-Time Systems*

Kronos: A Model-Checking Tool for Real-Time Systems* Kronos: A Model-Checking Tool for Real-Time Systems* Marius Bozga ], Conrado Daws 1, Oded Maler 1, Alfredo Olivero 2, Stavros Tripakis 1 and Sergio Yovine 3 ~ 1 VERIMAG, Centre ]~quation, 2 avenue de Vignate,

More information

AN ABSTRACTION TECHNIQUE FOR REAL-TIME VERIFICATION

AN ABSTRACTION TECHNIQUE FOR REAL-TIME VERIFICATION AN ABSTRACTION TECHNIQUE FOR REAL-TIME VERIFICATION Edmund M. Clarke, Flavio Lerda, Muralidhar Talupur Computer Science Department Carnegie Mellon University Pittsburgh, PA 15213 {flerda,tmurali,emc}@cs.cmu.edu

More information

Overview. Discrete Event Systems - Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for?

Overview. Discrete Event Systems - Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for? Computer Engineering and Networks Overview Discrete Event Systems - Verification of Finite Automata Lothar Thiele Introduction Binary Decision Diagrams Representation of Boolean Functions Comparing two

More information

Timed Circuit Verification Using TEL Structures

Timed Circuit Verification Using TEL Structures IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 20, NO. 1, JANUARY 2001 129 Timed Circuit Verification Using TEL Structures Wendy Belluomini, Member, IEEE, Chris J.

More information

COMP 763. Eugene Syriani. Ph.D. Student in the Modelling, Simulation and Design Lab School of Computer Science. McGill University

COMP 763. Eugene Syriani. Ph.D. Student in the Modelling, Simulation and Design Lab School of Computer Science. McGill University Eugene Syriani Ph.D. Student in the Modelling, Simulation and Design Lab School of Computer Science McGill University 1 OVERVIEW In the context In Theory: Timed Automata The language: Definitions and Semantics

More information

More on Verification and Model Checking

More on Verification and Model Checking More on Verification and Model Checking Wednesday Oct 07, 2015 Philipp Rümmer Uppsala University Philipp.Ruemmer@it.uu.se 1/60 Course fair! 2/60 Exam st October 21, 8:00 13:00 If you want to participate,

More information

EECS 219C: Computer-Aided Verification Introduction & Overview. Sanjit A. Seshia EECS, UC Berkeley. What we ll do today

EECS 219C: Computer-Aided Verification Introduction & Overview. Sanjit A. Seshia EECS, UC Berkeley. What we ll do today EECS 219C: Computer-Aided Verification Introduction & Overview Sanjit A. Seshia EECS, UC Berkeley What we ll do today Introductions: to Sanjit and others Brief Intro. to Model Checking, SAT, and Satisfiability

More information

Binary Decision Diagrams and Symbolic Model Checking

Binary Decision Diagrams and Symbolic Model Checking Binary Decision Diagrams and Symbolic Model Checking Randy Bryant Ed Clarke Ken McMillan Allen Emerson CMU CMU Cadence U Texas http://www.cs.cmu.edu/~bryant Binary Decision Diagrams Restricted Form of

More information

Symbolic Verification of Timed Asynchronous Hardware Protocols

Symbolic Verification of Timed Asynchronous Hardware Protocols Symbolic Verification of Timed Asynchronous Hardware Protocols Krishnaji Desai and Kenneth S. Stevens Electrical and Computer Engineering University of Utah, USA Email: krishnaji.desai@utah.edu, kstevens@ece.utah.edu

More information

Introduction to Embedded Systems

Introduction to Embedded Systems Introduction to Embedded Systems Sanjit A. Seshia UC Berkeley EECS 149/249A Fall 2015 2008-2015: E. A. Lee, A. L. Sangiovanni-Vincentelli, S. A. Seshia. All rights reserved. Chapter 3: Discrete Dynamics,

More information

An Introduction to UPPAAL. Purandar Bhaduri Dept. of CSE IIT Guwahati

An Introduction to UPPAAL. Purandar Bhaduri Dept. of CSE IIT Guwahati An Introduction to UPPAAL Purandar Bhaduri Dept. of CSE IIT Guwahati Email: pbhaduri@iitg.ernet.in OUTLINE Introduction Timed Automata UPPAAL Example: Train Gate Example: Task Scheduling Introduction UPPAAL:

More information

Overview of Timed Automata and UPPAAL

Overview of Timed Automata and UPPAAL Overview of Timed Automata and UPPAAL Table of Contents Timed Automata Introduction Example The Query Language UPPAAL Introduction Example Editor Simulator Verifier Conclusions 2 Introduction to Timed

More information

hal , version 1-9 Apr 2009

hal , version 1-9 Apr 2009 Author manuscript, published in "Computer Aided Verification 10th International Conference, CAV'98, Vancouver, BC : Canada (1998)" DOI : 10.1007/BFb0028779 Kronos: a model-checking tool for real-time systems?

More information

Sciduction: Combining Induction, Deduction and Structure for Verification and Synthesis

Sciduction: Combining Induction, Deduction and Structure for Verification and Synthesis Sciduction: Combining Induction, Deduction and Structure for Verification and Synthesis (abridged version of DAC slides) Sanjit A. Seshia Associate Professor EECS Department UC Berkeley Design Automation

More information

Quantitative Verification and Synthesis of Systems

Quantitative Verification and Synthesis of Systems Quantitative Verification and Synthesis of Systems Sanjit A. Seshia Assistant Professor EECS, UC Berkeley Software-at-Scale Workshop August 2010 Quantitative Analysis / Verification Does the brake-by-wire

More information

From synchronous models to distributed, asynchronous architectures

From synchronous models to distributed, asynchronous architectures From synchronous models to distributed, asynchronous architectures Stavros Tripakis Joint work with Claudio Pinello, Cadence Alberto Sangiovanni-Vincentelli, UC Berkeley Albert Benveniste, IRISA (France)

More information

Verification in Continuous Time Recent Advances

Verification in Continuous Time Recent Advances Verification in Continuous Time Recent Advances Hongyang Qu Department of Automatic Control and Systems Engineering University of Sheffield 10 March 2017 Outline Motivation Probabilistic models Real-time

More information

Modeling Asynchronous Circuits in ACL2 Using the Link-Joint Interface

Modeling Asynchronous Circuits in ACL2 Using the Link-Joint Interface Modeling Asynchronous Circuits in ACL2 Using the Link-Joint Interface Cuong Chau ckcuong@cs.utexas.edu Department of Computer Science The University of Texas at Austin April 19, 2016 Cuong Chau (UT Austin)

More information

Efficient Synthesis of Production Schedules by Optimization of Timed Automata

Efficient Synthesis of Production Schedules by Optimization of Timed Automata Efficient Synthesis of Production Schedules by Optimization of Timed Automata Inga Krause Institute of Automatic Control Engineering Technische Universität München inga.krause@mytum.de Joint Advanced Student

More information

Introduction to Electronic Design Automation. Model of Computation. Model of Computation. Model of Computation

Introduction to Electronic Design Automation. Model of Computation. Model of Computation. Model of Computation Introduction to Electronic Design Automation Model of Computation Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Spring 03 Model of Computation In system design,

More information

Timed Automata From Theory to Implementation

Timed Automata From Theory to Implementation Timed Automata From Theory to Implementation Patricia Bouyer LSV CNRS & ENS de Cachan France Chennai january 2003 Timed Automata From Theory to Implementation p.1 Roadmap Timed automata, decidability issues

More information

Specification and Analysis of Real-Time Systems Using Real-Time Maude

Specification and Analysis of Real-Time Systems Using Real-Time Maude Specification and Analysis of Real-Time Systems Using Real-Time Maude Peter Csaba Ölveczky1,2 and José Meseguer 1 1 Department of Computer Science, University of Illinois at Urbana-Champaign 2 Department

More information

TIMES A Tool for Modelling and Implementation of Embedded Systems

TIMES A Tool for Modelling and Implementation of Embedded Systems TIMES A Tool for Modelling and Implementation of Embedded Systems Tobias Amnell, Elena Fersman, Leonid Mokrushin, Paul Pettersson, and Wang Yi Uppsala University, Sweden. {tobiasa,elenaf,leom,paupet,yi}@docs.uu.se.

More information

Model Checking. Automatic Verification Model Checking. Process A Process B. when not possible (not AI).

Model Checking. Automatic Verification Model Checking. Process A Process B. when not possible (not AI). Sérgio Campos scampos@dcc.ufmg.br Why? Imagine the implementation of a complex hardware or software system: A 100K gate ASIC perhaps 100 concurrent modules; A flight control system dozens of concurrent

More information

The UPPAAL Model Checker. Julián Proenza Systems, Robotics and Vision Group. UIB. SPAIN

The UPPAAL Model Checker. Julián Proenza Systems, Robotics and Vision Group. UIB. SPAIN The UPPAAL Model Checker Julián Proenza Systems, Robotics and Vision Group. UIB. SPAIN The aim of this presentation Introduce the basic concepts of model checking from a practical perspective Describe

More information

Voting Machines and Automotive Software: Explorations with SMT at Scale

Voting Machines and Automotive Software: Explorations with SMT at Scale Voting Machines and Automotive Software: Explorations with SMT at Scale Sanjit A. Seshia EECS Department UC Berkeley Joint work with: Bryan Brady, Randy Bryant, Susmit Jha, Jon Kotker, John O Leary, Alexander

More information

Parametric Real Time System Feasibility Analysis Using Parametric Timed Automata

Parametric Real Time System Feasibility Analysis Using Parametric Timed Automata Parametric Real Time System Feasibility Analysis Using Parametric Timed Automata PhD Dissertation Yusi Ramadian Advisor : Luigi Palopoli Co advisor : Alessandro Cimatti 1 Real Time System Applications

More information

Stochastic Petri nets

Stochastic Petri nets Stochastic Petri nets 1 Stochastic Petri nets Markov Chain grows very fast with the dimension of the system Petri nets: High-level specification formalism Markovian Stochastic Petri nets adding temporal

More information

An MTBDD-based Implementation of Forward Reachability for Probabilistic Timed Automata

An MTBDD-based Implementation of Forward Reachability for Probabilistic Timed Automata An MTBDD-based Implementation of Forward Reachability for Probabilistic Timed Automata Fuzhi Wang and Marta Kwiatkowska School of Computer Science, University of Birmingham, Birmingham B15 2TT, United

More information

Graphical Tool For SC Automata.

Graphical Tool For SC Automata. Graphical Tool For SC Automata. Honours Project: 2000 Dr. Padmanabhan Krishnan 1 Luke Haslett 1 Supervisor Abstract SC automata are a variation of timed automata which are closed under complementation.

More information

Xuandong Li. BACH: Path-oriented Reachability Checker of Linear Hybrid Automata

Xuandong Li. BACH: Path-oriented Reachability Checker of Linear Hybrid Automata BACH: Path-oriented Reachability Checker of Linear Hybrid Automata Xuandong Li Department of Computer Science and Technology, Nanjing University, P.R.China Outline Preliminary Knowledge Path-oriented Reachability

More information

Research Collection. Formal background and algorithms. Other Conference Item. ETH Library. Author(s): Biere, Armin. Publication Date: 2001

Research Collection. Formal background and algorithms. Other Conference Item. ETH Library. Author(s): Biere, Armin. Publication Date: 2001 Research Collection Other Conference Item Formal background and algorithms Author(s): Biere, Armin Publication Date: 2001 Permanent Link: https://doi.org/10.3929/ethz-a-004239730 Rights / License: In Copyright

More information

Modal Models in Ptolemy

Modal Models in Ptolemy Modal Models in Ptolemy Edward A. Lee Stavros Tripakis UC Berkeley Workshop on Equation-Based Object-Oriented Modeling Languages and Tools 3rd International Workshop on Equation-Based Object-Oriented Modeling

More information

Action Language Verifier, Extended

Action Language Verifier, Extended Action Language Verifier, Extended Tuba Yavuz-Kahveci 1, Constantinos Bartzis 2, and Tevfik Bultan 3 1 University of Florida 2 Carnegie Mellon University 3 UC, Santa Barbara 1 Introduction Action Language

More information

Editor. Analyser XML. Scheduler. generator. Code Generator Code. Scheduler. Analyser. Simulator. Controller Synthesizer.

Editor. Analyser XML. Scheduler. generator. Code Generator Code. Scheduler. Analyser. Simulator. Controller Synthesizer. TIMES - A Tool for Modelling and Implementation of Embedded Systems Tobias Amnell, Elena Fersman, Leonid Mokrushin, Paul Pettersson, and Wang Yi? Uppsala University, Sweden Abstract. Times is a new modelling,

More information

Automated Refinement Checking of Asynchronous Processes. Rajeev Alur. University of Pennsylvania

Automated Refinement Checking of Asynchronous Processes. Rajeev Alur. University of Pennsylvania Automated Refinement Checking of Asynchronous Processes Rajeev Alur University of Pennsylvania www.cis.upenn.edu/~alur/ Intel Formal Verification Seminar, July 2001 Problem Refinement Checking Given two

More information

EECS 219C: Formal Methods Syntax-Guided Synthesis (selected/adapted slides from FMCAD 13 tutorial by R. Alur) Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Formal Methods Syntax-Guided Synthesis (selected/adapted slides from FMCAD 13 tutorial by R. Alur) Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Formal Methods Syntax-Guided Synthesis (selected/adapted slides from FMCAD 13 tutorial by R. Alur) Sanjit A. Seshia EECS, UC Berkeley Solving SyGuS Is SyGuS same as solving SMT formulas with

More information

Model Checking Revision: Model Checking for Infinite Systems Revision: Traffic Light Controller (TLC) Revision: 1.12

Model Checking Revision: Model Checking for Infinite Systems Revision: Traffic Light Controller (TLC) Revision: 1.12 Model Checking mc Revision:.2 Model Checking for Infinite Systems mc 2 Revision:.2 check algorithmically temporal / sequential properties fixpoint algorithms with symbolic representations: systems are

More information

MODEL-BASED DESIGN OF CODE FOR PLC CONTROLLERS

MODEL-BASED DESIGN OF CODE FOR PLC CONTROLLERS Krzysztof Sacha Warsaw University of Technology, Nowowiejska 15/19, 00-665 Warszawa, Poland k.sacha@ia.pw.edu.pl Keywords: Abstract: Automatic program generation, Model verification, Finite state machine,

More information

Formal Verification using Probabilistic Techniques

Formal Verification using Probabilistic Techniques Formal Verification using Probabilistic Techniques René Krenz Elena Dubrova Department of Microelectronic and Information Technology Royal Institute of Technology Stockholm, Sweden rene,elena @ele.kth.se

More information

Boolean Functions (Formulas) and Propositional Logic

Boolean Functions (Formulas) and Propositional Logic EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving Part I: Basics Sanjit A. Seshia EECS, UC Berkeley Boolean Functions (Formulas) and Propositional Logic Variables: x 1, x 2, x 3,, x

More information

Modeling and Verification of Priority Assignment in Real-Time Databases Using Uppaal

Modeling and Verification of Priority Assignment in Real-Time Databases Using Uppaal Modeling and Verification of Priority Assignment in Real-Time Databases Using Uppaal Martin Kot Martin Kot Center for Applied Cybernetics, Department of Computer Science, FEI, Center for Applied VSBCybernetics,

More information

Verification of Timed Systems Using POSETs

Verification of Timed Systems Using POSETs Verification of Timed Systems Using POSETs Wendy Belluomini and Chris J. Myers Computer Science Department Electrical Engineering Department University of Utah Salt Lake City, UT 84112 Abstract. This paper

More information

want turn==me wait req2==0

want turn==me wait req2==0 Uppaal2k: Small Tutorial Λ 16 October 2002 1 Introduction This document is intended to be used by new comers to Uppaal and verification. Students or engineers with little background in formal methods should

More information

Modeling and Verification of Networkon-Chip using Constrained-DEVS

Modeling and Verification of Networkon-Chip using Constrained-DEVS Modeling and Verification of Networkon-Chip using Constrained-DEVS Soroosh Gholami Hessam S. Sarjoughian School of Computing, Informatics, and Decision Systems Engineering Arizona Center for Integrative

More information

Timing Analysis of Distributed End-to-End Task Graphs with Model-Checking

Timing Analysis of Distributed End-to-End Task Graphs with Model-Checking Timing Analysis of Distributed End-to-End Task Graphs with Model-Checking Zonghua Gu Department of Computer Science, Hong Kong University of Science and Technology Abstract. Real-time embedded systems

More information

Towards Validated Real-Time Software

Towards Validated Real-Time Software Towards Validated Real-Time Software Valérie BERTIN, Michel POIZE, Jacques PULOU France Télécom - Centre National d'etudes des Télécommunications 28 chemin du Vieux Chêne - BP 98-38243 Meylan cedex - France

More information

MANY real-time applications need to store some data

MANY real-time applications need to store some data Proceedings of the International Multiconference on Computer Science and Information Technology pp. 673 678 ISBN 978-83-60810-14-9 ISSN 1896-7094 Modeling Real-Time Database Concurrency Control Protocol

More information

Boolean Satisfiability Solving Part II: DLL-based Solvers. Announcements

Boolean Satisfiability Solving Part II: DLL-based Solvers. Announcements EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving Part II: DLL-based Solvers Sanjit A. Seshia EECS, UC Berkeley With thanks to Lintao Zhang (MSR) Announcements Paper readings will be

More information

Lecture 2. Decidability and Verification

Lecture 2. Decidability and Verification Lecture 2. Decidability and Verification model temporal property Model Checker yes error-trace Advantages Automated formal verification, Effective debugging tool Moderate industrial success In-house groups:

More information

Sequential Logic Synthesis

Sequential Logic Synthesis Sequential Logic Synthesis Logic Circuits Design Seminars WS2010/2011, Lecture 9 Ing. Petr Fišer, Ph.D. Department of Digital Design Faculty of Information Technology Czech Technical University in Prague

More information

Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay

Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay Lecture 40 VLSI Design Verification: An Introduction Hello. Welcome to the advance

More information

OUTLINE SYSTEM-ON-CHIP DESIGN. GETTING STARTED WITH VHDL September 3, 2018 GAJSKI S Y-CHART (1983) TOP-DOWN DESIGN (1)

OUTLINE SYSTEM-ON-CHIP DESIGN. GETTING STARTED WITH VHDL September 3, 2018 GAJSKI S Y-CHART (1983) TOP-DOWN DESIGN (1) September 3, 2018 GETTING STARTED WITH VHDL 2 Top-down design VHDL history Main elements of VHDL Entities and architectures Signals and processes Data types Configurations Simulator basics The testbench

More information

Program verification. Generalities about software Verification Model Checking. September 20, 2016

Program verification. Generalities about software Verification Model Checking. September 20, 2016 Program verification Generalities about software Verification Model Checking Laure Gonnord David Monniaux September 20, 2016 1 / 43 The teaching staff Laure Gonnord, associate professor, LIP laboratory,

More information

Model checking pushdown systems

Model checking pushdown systems Model checking pushdown systems R. Ramanujam Institute of Mathematical Sciences, Chennai jam@imsc.res.in Update Meeting, IIT-Guwahati, 4 July 2006 p. 1 Sources of unboundedness Data manipulation: integers,

More information

Timed Automata with Asynchronous Processes: Schedulability and Decidability

Timed Automata with Asynchronous Processes: Schedulability and Decidability Timed Automata with Asynchronous Processes: Schedulability and Decidability Elena Fersman, Paul Pettersson and Wang Yi Uppsala University, Sweden Abstract. In this paper, we exend timed automata with asynchronous

More information

HECTOR: Formal System-Level to RTL Equivalence Checking

HECTOR: Formal System-Level to RTL Equivalence Checking ATG SoC HECTOR: Formal System-Level to RTL Equivalence Checking Alfred Koelbl, Sergey Berezin, Reily Jacoby, Jerry Burch, William Nicholls, Carl Pixley Advanced Technology Group Synopsys, Inc. June 2008

More information

A Formalization of Global Simulation Models for Continuous/Discrete Systems

A Formalization of Global Simulation Models for Continuous/Discrete Systems A Formalization of Global Simulation Models for Continuous/Discrete Systems L. Gheorghe, F. Bouchhima, G. Nicolescu, H. Boucheneb Ecole Polytechnique Montréal luiza.gheorghe@polymtl.ca Keywords: Co-Simulation,

More information

Proc. XVIII Conf. Latinoamericana de Informatica, PANEL'92, pages , August Timed automata have been proposed in [1, 8] to model nite-s

Proc. XVIII Conf. Latinoamericana de Informatica, PANEL'92, pages , August Timed automata have been proposed in [1, 8] to model nite-s Proc. XVIII Conf. Latinoamericana de Informatica, PANEL'92, pages 1243 1250, August 1992 1 Compiling Timed Algebras into Timed Automata Sergio Yovine VERIMAG Centre Equation, 2 Ave de Vignate, 38610 Gieres,

More information

Improved BDD-based Discrete Analysis of Timed Systems

Improved BDD-based Discrete Analysis of Timed Systems Improved BDD-based Discrete Analysis of Timed Systems Truong Khanh Nguyen 1, Jun Sun 2, Yang Liu 1, Jin Song Dong 1 and Yan Liu 1 1 School of Computing National University of Singapore 2 Information System

More information

Lecture 9: Reachability

Lecture 9: Reachability Lecture 9: Reachability Outline of Lecture Reachability General Transition Systems Algorithms for Reachability Safety through Reachability Backward Reachability Algorithm Given hybrid automaton H : set

More information

TSIF: Transition System Interchange Format

TSIF: Transition System Interchange Format TSIF: Transition System Interchange Format E. Pastor and M.A. Peña Jan 2004 Department of Computer Architecture Technical University of Catalonia (UPC) Barcelona, Spain Modeling Transition System A model

More information

A Hybrid SAT-Based Decision Procedure for Separation Logic with Uninterpreted Functions

A Hybrid SAT-Based Decision Procedure for Separation Logic with Uninterpreted Functions Appeared at DAC 03 A Hybrid SAT-Based Decision Procedure for Separation Logic with Uninterpreted Functions Sanjit A. Seshia sanjit.seshia@cs.cmu.edu Shuvendu K. Lahiri shuvendu@ece.cmu.edu Randal E. Bryant

More information

Model-based Analysis of Event-driven Distributed Real-time Embedded Systems

Model-based Analysis of Event-driven Distributed Real-time Embedded Systems Model-based Analysis of Event-driven Distributed Real-time Embedded Systems Gabor Madl Committee Chancellor s Professor Nikil Dutt (Chair) Professor Tony Givargis Professor Ian Harris University of California,

More information

Past Pushdown Timed Automata and Safety Verification

Past Pushdown Timed Automata and Safety Verification Past Pushdown Timed Automata and Safety Verification Zhe Dang, Tevfik Bultan, Oscar H. Ibarra, and Richard A. Kemmerer Abstract We consider past pushdown timed automata that are discrete pushdown timed

More information

Automatic Synthesis of Computation Interference Constraints for Relative Timing Verification

Automatic Synthesis of Computation Interference Constraints for Relative Timing Verification Automatic Synthesis of Computation Interference Constraints for Relative Timing Verification Yang Xu and Kenneth S. Stevens Electrical and Computer Engineering Department University of Utah {yxu, kstevens}@ece.utah.edu

More information

System Design and Methodology/ Embedded Systems Design (Modeling and Design of Embedded Systems)

System Design and Methodology/ Embedded Systems Design (Modeling and Design of Embedded Systems) Design&Methodologies Fö 1&2-1 Design&Methodologies Fö 1&2-2 Course Information Design and Methodology/ Embedded s Design (Modeling and Design of Embedded s) TDTS07/TDDI08 Web page: http://www.ida.liu.se/~tdts07

More information

Lazy Transition Systems and Asynchronous Circuit Synthesis With Relative Timing Assumptions

Lazy Transition Systems and Asynchronous Circuit Synthesis With Relative Timing Assumptions IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 21, NO. 2, FEBRUARY 2002 109 Lazy Transition Systems and Asynchronous Circuit Synthesis With Relative Timing Assumptions

More information

EECS 219C: Formal Methods Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Formal Methods Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Formal Methods Boolean Satisfiability Solving Sanjit A. Seshia EECS, UC Berkeley The Boolean Satisfiability Problem (SAT) Given: A Boolean formula F(x 1, x 2, x 3,, x n ) Can F evaluate to 1

More information

Motivation. CS389L: Automated Logical Reasoning. Lecture 5: Binary Decision Diagrams. Historical Context. Binary Decision Trees

Motivation. CS389L: Automated Logical Reasoning. Lecture 5: Binary Decision Diagrams. Historical Context. Binary Decision Trees Motivation CS389L: Automated Logical Reasoning Lecture 5: Binary Decision Diagrams Işıl Dillig Previous lectures: How to determine satisfiability of propositional formulas Sometimes need to efficiently

More information

Verilog for High Performance

Verilog for High Performance Verilog for High Performance Course Description This course provides all necessary theoretical and practical know-how to write synthesizable HDL code through Verilog standard language. The course goes

More information

TiPEX: A Tool Chain for Timed Property Enforcement During execution

TiPEX: A Tool Chain for Timed Property Enforcement During execution TiPEX: A Tool Chain for Timed Property Enforcement During execution Srinivas Pinisetty, Yliès Falcone, Thierry Jéron, Hervé Marchand To cite this version: Srinivas Pinisetty, Yliès Falcone, Thierry Jéron,

More information

Petri Nets ~------~ R-ES-O---N-A-N-C-E-I--se-p-te-m--be-r Applications.

Petri Nets ~------~ R-ES-O---N-A-N-C-E-I--se-p-te-m--be-r Applications. Petri Nets 2. Applications Y Narahari Y Narahari is currently an Associate Professor of Computer Science and Automation at the Indian Institute of Science, Bangalore. His research interests are broadly

More information

Computing Delay with Coupling Using Timed Automata

Computing Delay with Coupling Using Timed Automata Computing Delay with Coupling Using Timed Automata Serdar Taşıran, Yuji Kukimoto and Robert K. Brayton Department of Electrical Engineering and Computer Sciences, University of California, Berkeley Deep

More information

Property-based design with HORUS / SYNTHORUS

Property-based design with HORUS / SYNTHORUS Property-based design with HORUS / SYNTHORUS Dominique Borrione, Negin Javaheri, Katell Morin-Allory, Yann Oddos, Alexandre Porcher Radboud University, Nijmegen 1 March 27, 2013 Functional specifications

More information

An Programming Language with Fixed-Logical Execution Time Semantics for Real-time Embedded Systems

An Programming Language with Fixed-Logical Execution Time Semantics for Real-time Embedded Systems An Programming Language with Fixed-Logical Execution Time Semantics for Real-time Embedded Systems embedded systems perspectives and visions Dr. Marco A.A. Sanvido University of California at Berkeley

More information

DPLL(T ):Fast Decision Procedures

DPLL(T ):Fast Decision Procedures DPLL(T ):Fast Decision Procedures Harald Ganzinger George Hagen Robert Nieuwenhuis Cesare Tinelli Albert Oliveras MPI, Saarburcken The University of Iowa UPC, Barcelona Computer Aided-Verification (CAV)

More information

opaal: A Lattice Model Checker

opaal: A Lattice Model Checker opaal: A Lattice Model Checker Andreas Engelbredt Dalsgaard, René Rydhof Hansen, Kenneth Yrke Jørgensen, Kim Gulstrand Larsen, Mads Chr. Olesen, Petur Olsen, and Jiří Srba Department of Computer Science,

More information

Testing Digital Systems I

Testing Digital Systems I Testing Digital Systems I Lecture 6: Fault Simulation Instructor: M. Tahoori Copyright 2, M. Tahoori TDS I: Lecture 6 Definition Fault Simulator A program that models a design with fault present Inputs:

More information

FPGA for Software Engineers

FPGA for Software Engineers FPGA for Software Engineers Course Description This course closes the gap between hardware and software engineers by providing the software engineer all the necessary FPGA concepts and terms. The course

More information

Software Testing IV. Prof. Dr. Holger Schlingloff. Humboldt-Universität zu Berlin

Software Testing IV. Prof. Dr. Holger Schlingloff. Humboldt-Universität zu Berlin Software Testing IV Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin and Fraunhofer Institute of Computer Architecture and Software Technology FIRST Outline of this Lecture Series 2006/11/24:

More information

Bounded Model Checking with Parametric Data Structures

Bounded Model Checking with Parametric Data Structures Bounded Model Checking with Marc Herbstritt (joint work with Erika Ábrahám, Bernd Becker, Martin Steffen) www.avacs.org August 15 2006 4th International Workshop on Bounded Model Checking Context Automated

More information

Qualification of Verification Environments Using Formal Techniques

Qualification of Verification Environments Using Formal Techniques Qualification of Verification Environments Using Formal Techniques Raik Brinkmann DVClub on Verification Qualification April 28 2014 www.onespin-solutions.com Copyright OneSpin Solutions 2014 Copyright

More information

Fundamental Algorithms for System Modeling, Analysis, and Optimization

Fundamental Algorithms for System Modeling, Analysis, and Optimization Fundamental Algorithms for System Modeling, Analysis, and Optimization Stavros Tripakis, Edward A. Lee UC Berkeley EECS 144/244 Fall 2014 Copyright 2014, E. A. Lee, J. Roydhowdhury, S. A. Seshia, S. Tripakis

More information

Overview of SRI s. Lee Pike. June 3, 2005 Overview of SRI s. Symbolic Analysis Laboratory (SAL) Lee Pike

Overview of SRI s. Lee Pike. June 3, 2005 Overview of SRI s. Symbolic Analysis Laboratory (SAL) Lee Pike June 3, 2005 lee.s.pike@nasa.gov Model-Checking 101 Model-checking is a way automatically to verify hardware or software. For a property P, A Model-checking program checks to ensure that every state on

More information

erics: A Tool for Verifying Timed Automata and Estelle Specifications

erics: A Tool for Verifying Timed Automata and Estelle Specifications erics: A Tool for Verifying Timed Automata and Estelle Specifications Piotr Dembiński, Agata Janowska, Pawe l Janowski, Wojciech Penczek,5, Agata Pó lrola, Maciej Szreter,Bożena Woźna 4, and Andrzej Zbrzezny

More information

Combinational Equivalence Checking Using Incremental SAT Solving, Output Ordering, and Resets

Combinational Equivalence Checking Using Incremental SAT Solving, Output Ordering, and Resets ASP-DAC 2007 Yokohama Combinational Equivalence Checking Using Incremental SAT Solving, Output ing, and Resets Stefan Disch Christoph Scholl Outline Motivation Preliminaries Our Approach Output ing Heuristics

More information

Segment 1A. Introduction to Microcomputer and Microprocessor

Segment 1A. Introduction to Microcomputer and Microprocessor Segment 1A Introduction to Microcomputer and Microprocessor 1.1 General Architecture of a Microcomputer System: The term microcomputer is generally synonymous with personal computer, or a computer that

More information

References: Thomas A. Henzinger (1996): The theory of hybrid automata In: Annual IEEE Symposium on Logic in Computer Science

References: Thomas A. Henzinger (1996): The theory of hybrid automata In: Annual IEEE Symposium on Logic in Computer Science Hybrid Systems Modeling In today's fast evolving technologies where the line between analog and digital systems is getting blurred, systems consist of a mix of continuous and discrete components. A discrete

More information

Lecture 2: Symbolic Model Checking With SAT

Lecture 2: Symbolic Model Checking With SAT Lecture 2: Symbolic Model Checking With SAT Edmund M. Clarke, Jr. School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 (Joint work over several years with: A. Biere, A. Cimatti, Y.

More information

Temporal Refinement Using SMT and Model Checking with an Application to Physical-Layer Protocols

Temporal Refinement Using SMT and Model Checking with an Application to Physical-Layer Protocols Temporal Refinement Using SMT and Model Checking with an Application to Physical-Layer Protocols Lee Pike (Presenting), Galois, Inc. leepike@galois.com Geoffrey M. Brown, Indiana University geobrown@cs.indiana.edu

More information

Set Manipulation with Boolean Functional Vectors for Symbolic Reachability Analysis

Set Manipulation with Boolean Functional Vectors for Symbolic Reachability Analysis Set Manipulation with Boolean Functional Vectors for Symbolic Reachability Analysis Amit Goel Department of ECE, Carnegie Mellon University, PA. 15213. USA. agoel@ece.cmu.edu Randal E. Bryant Computer

More information

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 Anurag Dwivedi Digital Design : Bottom Up Approach Basic Block - Gates Digital Design : Bottom Up Approach Gates -> Flip Flops Digital

More information

Cuts from Proofs: A Complete and Practical Technique for Solving Linear Inequalities over Integers

Cuts from Proofs: A Complete and Practical Technique for Solving Linear Inequalities over Integers Cuts from Proofs: A Complete and Practical Technique for Solving Linear Inequalities over Integers Isil Dillig, Thomas Dillig, and Alex Aiken Computer Science Department Stanford University Linear Arithmetic

More information

System Correctness. EEC 421/521: Software Engineering. System Correctness. The Problem at Hand. A system is correct when it meets its requirements

System Correctness. EEC 421/521: Software Engineering. System Correctness. The Problem at Hand. A system is correct when it meets its requirements System Correctness EEC 421/521: Software Engineering A Whirlwind Intro to Software Model Checking A system is correct when it meets its requirements a design without requirements cannot be right or wrong,

More information

Parametric Schedulability Analysis of Fixed Priority Real-Time Distributed Systems

Parametric Schedulability Analysis of Fixed Priority Real-Time Distributed Systems FTSCS 2013 30th October 2013 Queenstown, New Zealand Parametric Schedulability Analysis of Fixed Priority Real-Time Distributed Systems Youcheng Sun 1, Romain Soulat 2, Giuseppe Lipari 1,2, Étienne André

More information

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving Sanjit A. Seshia EECS, UC Berkeley Project Proposals Due Friday, February 13 on bcourses Will discuss project topics on Monday Instructions

More information

On the Language Inclusion Problem for Timed Automata: Closing a Decidability Gap

On the Language Inclusion Problem for Timed Automata: Closing a Decidability Gap SVC On the Language Inclusion Problem for Timed Automata 1 On the Language Inclusion Problem for Timed Automata: Closing a Decidability Gap Joël Ouaknine Computer Science Department, Carnegie Mellon University

More information