Model Based Testing -- FSM based testing

Size: px
Start display at page:

Download "Model Based Testing -- FSM based testing"

Transcription

1 Model Based Testing -- FSM based testing Brian Nielsen

2 Automated Model Based Conformance Testing x>=2 Model DBLclick! click? x:=0 click? x<2 Test Test Generator tool Test Generator tool tool tool Selection & optimization Test suite Test Test execution tool tool Event mapping Driver pass fail Implementation Implementation Relation Under Test Does the behavior of the (blackbox) implementation comply to that of the specification?

3 Mealy FSM q 1 cof-but / cof coin / - q 2 coin / - q 3 Inputs = {cof-but, tea-but, coin} Outputs = {cof,tea} States: {q 1,q 2,q 3 } Initial state = q 1 Transitions= { (q 1, coin, -, q 2 ), (q 2, coin, -, q 3 ), (q 3, cof-but, cof, q 1 ), (q 3, tea-but, tea, q 1 ) } tea-but / tea condition current state Sample run: input q 1 coin q 2 q 2 coin - q 3 q 3 cof-but cof q 1 q 3 tea-but tea - output effect q 1 next state coin/ - coin/- cof-but / cof coin/ - q 1 q 2 q 3 q 1 q 2 coin/ - q 3 cof-but / cof q 1

4 State Machine : FSM Model FSM - Finite State Machine - or Mealy Machine is 5-tuple M = ( S, I, O, δ, λ ) S I O δ : S x I S λ : S x I O finite set of states finite set of inputs finite set of outputs transfer function output function Natural extension to sequences : δ : S x I* S λ : S x I* O*

5 Concepts Two states s and t are (language) equivalent iff s and t accepts same language has same traces: tr(s) = tr(t) Two Machines M0 and M1 are equivalent iff initial states are equivalent A minimized / reduced M is one that has no equivalent states for no two states s,t, s!=t, s equivalent t

6 Fundamental Results Every FSM may be determinized accepting the same language (potential explosion in size). For each FSM there exist a language-equivalent minimal deterministic FSM. FSM s are closed under and FSM s may be described as regular expressions (and vise versa)

7 Conformance Testing Reference FSM M s Tester test sequence SUT FSM M I Given a specification FSM M S a ( black box ) implementation FSM M I determine whether M I conforms to M S. i.e., M I behaves in accordance with M S i.e., whether outputs of M I are the same as of M S i.e., whether the reduced M I is equivalent to M S Today: Deterministic Specifications SUT is an (unknown) deterministic FSM (testing hypothesis)

8 Restrictions FSM restrictions: deterministic δ : S x I S and λ : S x I O are functions completely specified δ : S x I S and λ : S x I O are complete functions ( empty output is allowed; sometimes implicit completeness ) strongly connected from any state any other state can be reached reduced there are no equivalent states

9 Possible Errors q 1 q 1 q 1 cof-but / - coin / - coin / - tea-but / vodka cof-but / cof q 2 q 2 tea-but / tea coin / - tea-but / tea cof-but / cof q 2 coin / - coin / - coin / - q 3 q 3 q 3 output fault (wrong or missing) extra or missing states transition fault to other state to new state coin / - q 4

10 Desired Properties Nice, but rare / problematic status messages: Assume that tester can ask implementation for its current state (reliably!!) without changing state reset: reliably bring SUT to initial state set-state: reliably bring SUT to any given state status? currentstate=s10! reset? SUT Grey-box FSM M I set-state S10?

11 FSM Transition Testing Make test case for every transition in spec separately: S1 a? / x! S2 Test transition : 1. Go to state S1 2. Apply input a? 3. Check output x! 4. Verify state S2 ( optionally ) Test purpose: Test whether the system, when in state S1, produces output x! on input a? and goes to state S2

12 Coffee Machine FSM Model coin? / - coffee? / coffee? / - coin? / - token? / - coffee? / coffee! token? / coin! 10 token? / token! coin? / coin!

13 Transition Testing 1 To test token? / coin! : go to state 5 : set-state 5 give input token? check output coin! verify state: send status? check status=10 coin? / - coffee? / - 0 coin? / - 5 coffee? / - coffee? / coffee! token? / - token? / token! 10 coin? / coin! token? / coin! Test case : set-state 5/ * - token? / coin! - status? / 10! S * I test cases remaining

14 FSM Transition Tour Make Transition Tour that covers every transition (in spec) coin? / - coffee? / - 0 coin? / - 5 coffee? / - token? / - coffee? / coffee! 10 token? / coin! token? / token! coin? / coin! Test input sequence : reset? coffee? coin? coffee? coin? coin? token? coffee? token? coffee? coin? token? coffee? + check expected outputs and target state by status message

15 Transition Testing -1 Go to state S5 : No Set-state property??? use reset property if available go from S0 to S5 ( always possible because of determinism and completeness ) or: synchronizing sequence brings machine to particular known state, say S0, from any state ( but synchronizing sequence may not exist )

16 Transition Testing -1 synchronizing sequence : token? coffee? coin? / - coffee? / - coffee? coffee? / / coin? / - 5 coffee? / - token? / - coffee? / coffee! token? / token! 10 token? / coin! coin? / coin! To test token? / coin! : go to state 5 by : token? coffee? coin?

17 Transition Testing 2,3 To test token? / coin! : 1. go to state 5 by : token? coffee? coin? 2. give input token? 3. check output coin! 4. verify that machine is in state 10 coin? / - coffee? / - 0 coin? / - 5 coffee? / - coffee? / coffee! token? / - token? / token! 10 coin? / coin! token? / coin!

18 Transition Testing-4 No Status Messages?? State identification: What state am I in?? State verification : Am I in state s? Apply sequence of inputs in the current state of the FSM such that from the outputs we can identify that state where we started; or verify that we were in a particular start state Different kinds of sequences UIO sequences ( Unique Input Output sequence, SIOS) Distinguishing sequence ( DS ) W - set ( characterizing set of sequences ) UIOv SUIO MUIO Overlapping UIO

19 Transition Testing-4 State check : UIO sequences (verification) sequence x s that distinguishes state s from all other states : for all t s : λ ( s, x s ) λ ( t, x s ) each state has its own UIO sequence UIO sequences may not exist Distinguishing sequence (identification) sequence x that produces different output for every state : for all pairs t, s with t s : λ ( s, x ) λ ( t, x ) a distinguishing sequence may not exist W - set of sequences (identification) set of sequences W which can distinguish any pair of states : for all pairs t s there is x W : λ ( s, x ) λ ( t, x ) W - set always exists for reduced FSM

20 Transition Testing-4: UIO UIO sequences coin? / - coffee? / - 0 coin? / - 5 coffee? / - coffee? / coffee! token? / - token? / token! 10 coin? / coin! token? / coin! state 0 : coin? / - coffee? / - state 5 : token? / coin! state 10 : coffee? / coffee!

21 Transition Testing-4: DS DS sequence coin? / - coffee? / - 0 coin? / - 5 coffee? / - coffee? / coffee! token? / - token? / token! 10 coin? / coin! token? / coin! DS sequence : token? output state 0 : - output state 5 : coin! output state 10 : token!

22 Transition Testing 4 done To test token? / coin! : go to state 5 : token? coffee? coin? give input token? check output coin! Apply UIO of state 10 : coffee? / coffee! coin? / - coffee? / - 0 coin? / - 5 coffee? / - coffee? / coffee! token? / - token? / token! 10 coin? / coin! token? / coin! Test case : token? / * coffee? / * coin? / - token? / coin! coffee? / coffee!

23 Transition Testing - done coin? / - coffee? / - 0 coin? / - 5 coffee? / - coffee? / coffee! token? / - token? / token! 10 coin? / coin! token? / coin! - 9 transitions / test cases for coffee machine - if end-state of one corresponds with start-state of next then concatenate - different ways to optimize and remove overlapping / redundant parts - there are (academic) tools to support this

24 FSM Transition Testing Test transition : Go to state S1 Apply input a? Check output x! Verify state S2 Checks every output fault and transfer fault (to existing state) If we assume that the number of states of the implementation machine M I is less than or equal to the number of states of the specification machine to M S. then testing all transitions in this way leads to equivalence of reduced machines, i.e., complete conformance If not: exponential growth in test length in number of extra states.

25 Object Testing-1 Class PuckSupply{ int _count=10; Public: }; puck * get(){ if(_count>0) { _count--;return get_puck(); } else { return NULL; } A Test case s=new PuckSupply; Assert(s.get()== apuck); Assert(s.get()== apuck); Assert(s.get()== apuck); Assert(s.get()== apuck); Assert(s.get()== apuck); Assert(s.get()== apuck); Assert(s.get()== apuck); Assert(s.get()== apuck); Assert(s.get()== apuck); Assert(s.get()== apuck); Assert(s.get()==NULL); Assert(s.get()==NULL); s10 get() / puck s9 get() / puck s8 s1 get() / puck s0 get() / NULL

26 Object Testing-2 Class PuckSupply{ int _count=10; Public: //test helpers int getstate() {return _count;} void setstate(int count) { }; _count=count; alloc_puks(); } puck * get(){ if(_count>0) { _count--;return new puck(); } else { return NULL; } Assert(s.get()==aPuck); Assert(s.getState()==9); s.setstate(1); Assert(s.get()==aPuck); Assert(s.getState()==0); Assert(s.get()==NULL); Assert(s.getState()==0); Assert(s.get()==NULL); Assert(s.getState()==0); s10 get() / puck s9 get() / puck s8 s1 get() / puck s0 get() / NULL

27 Object Testing-2 Class PuckSupply{ int _count=10; Public: //test helpers int getstate() {return _count;} void setstate(int count) { }; _count=count; alloc_puks(); } puck * get(){ if(_count>0) { _count--;return new puck(); } else { return NULL; } Assert(s.get()==aPuck); Assert(s.getState()==9); s.setstate(1); Assert(s.get()==aPuck); Assert(s.getState()==0); Assert(s.get()==NULL); Assert(s.getState()==0); Assert(s.get()==NULL); Assert(s.getState()==0); s10 get() / puck s9 get() / puck s8 s1 get() / puck s0 get() / NULL How many states in corresponding FSM?

28 Object Testing 3: Partitioning Class PuckSupply{ int _count=10; Public: }; puck * get(){ if(_count>0) { _count--;return new puck(); } else { return NULL; } n=init n>1 get() / puck n-- n>1 getpuck() / puck n-- n 1 n==1 get() / puck n-- get() / NULL n=0 n==1 get() / puck n-- Generate tests systematically from more abstract descriptions, e.g., the quivalence classes to select reasonably number of tests

29 Test Generation using Class PuckSupply{ int _count=10; Public: Uppaal??!! }; puck * get(){ if(_count>0) { _count--;return new puck(); } else { return NULL; }

30 Test Generation using UppAal

31 Touch-sensitive Light- Controller Patient user: Wait= Impatient: Wait=15

32 Object Testing and Test Generation Using Uppaal

33 Timed Tests T_sw=4 T_idle=20 EXAMPLE test cases for Interface Epsilon=200ms Delta=500ms 0 grasp! 210 release! touch?.pass 0 grasp! 317 release! touch? 2½ grasp! 220 release! touch? PASS 1000 grasp! 517 starthold? 100 release! endhold? PASS INFINITELY MANY SEQUENCES!!!!!!

34 Test Purposes 1 A specific test objective (or observation) the tester wants to make on SUT Environment model System model Wait= mindelay=0 TP1: Check that the light can become bright: E<> L==10 Shortest (and fastest) Test: out(igrasp);silence(500);in(osetlevel,0);silence(1000); in(osetlevel,1);silence(1000);in(osetlevel,2); silence(1000); in(osetlevel,3);silence(1000);in(osetlevel,4);silence(1000); in(osetlevel,5);silence(1000);in(osetlevel,6);silence(1000); in(osetlevel,7);silence(1000);in(osetlevel,8);silence(1000); in(osetlevel,9);silence(1000);in(osetlevel,10); out(irelease);

35 Test Purposes 2 TP2: Check that controller can enter location DnPassive : E<> Dim.DnPassive DnPassive If delay=1000 Shortest (and fastest) Test: out(igrasp); silence(500); in(osetlevel,0); out(irelease); out(igrasp); silence(500);

36 Test Purposes 2 TP2: Check that controller can enter location DnPassive : E<> Dim.DnPassive DnPassive If delay=40? Shortest Test: Fastest Test: out(igrasp); silence(500); in(osetlevel,0); out(irelease); out(igrasp); silence(500); out(igrasp);silence(500);in(osetlevel,0);silence(40); in(osetlevel,1);silence(40);in(osetlevel,2); silence(40); in(osetlevel,3);silence(40);in(osetlevel,4); silence(40); in(osetlevel,5);silence(40);in(osetlevel,6); silence(40); in(osetlevel,7);silence(40);in(osetlevel,8); silence(40); in(osetlevel,9);silence(40);in(osetlevel,10);silence(40);

37 Test Purposes 2 TP2: Check that controller can enter location DnPassive : E<> Dim.DnPassive DnPassive If Wait=1500 and mindelay=400? Ask a tool

38 Test Purposes 3 TP3: Check that controller re-sets light level to previous value after switch-on. E<> Purpose1.goal out(igrasp); //set level to 5 silence(500); in(osetlevel,0); silence(1000); in(osetlevel,1); silence(1000); in(osetlevel,2); silence(1000); in(osetlevel,3); silence(1000); in(osetlevel,4); silence(1000); in(osetlevel,5); out(irelease); out(igrasp); //touch To Off silence(200); out(irelease); in(osetlevel,0); out(igrasp); //touch To On silence(200); out(irelease); in(osetlevel,5); silence(2000);

39 Other Environments Slow User: T_react=2 T_react=2 T_sw=4 T_pause=5 T_idle=20 TP1: Fastest Test: 0 touch! 0 dim? 2 touch! 0 bright?? PASS Pausing User: max 2 successive quick touches

40 Coverage Based Test Generation Multi purpose testing Cover measurement Examples: Location coverage, Edge coverage, Definition/use pair coverage l 1 a? x:=0 b! l 2 c! x 2 a? x<2 l 4 l 3

41 Coverage Based Test Generation Multi purpose testing Cover measurement Examples: Location coverage, Edge coverage, Definition/use pair coverage l 1 a? x:=0 b! l 2 c! x 2 a? x<2 l 4 l 3

42 Coverage Based Test Generation Multi purpose testing Cover measurement Examples: Location coverage, Edge coverage, Definition/use pair coverage l 1 a? x:=0 b! l 2 c! x 2 a? x<2 l 4 l 3

43 Coverage Based Test Generation Multi purpose testing Cover measurement Examples: Location Coverage, Edge Coverage, Definition/Use Pair Coverage c! l 1 a? x:=0 b! x 2 l 2 x<2 l 4 l 3

44 Location Coverage Test sequence traversing all locations Encoding: Enumerate locations l 0,,l n Add an auxiliary variable l i for each location Label each ingoing edge to location i l i :=true Mark initial visited l 0 :=true Check: E<>( l 0 =true l n =true ) l j :=true l j l j :=true

45 Edge Coverage Test sequence traversing all edges Encoding: Enumerate edges e 0,,e n Add auxiliary variable e i for each edge Label each edge e i :=true Check: E<>( e 0 =true e n =true ) a? x:=0 e0:=1 l 1 l 2 x 2 b! e1:=1 c! e4:=1 x<2 l 4 l e3:=1 3 a? e2:=1

46 Fastest Edge Coverage Cost=12600 ms out(igrasp); //touch:switch light on silence(200); out(irelease); in(osetlevel,0); out(igrasp); // touch: switch light off silence(200); out(irelease);//touch in(osetlevel,0); //9 out(igrasp); //Bring dimmer from ActiveUp silence(500); //hold //To Passive DN (level=0) in(osetlevel,0); out(irelease); Page 1 //13 out(igrasp); //@900 // Bring dimmer PassiveDn->ActiveDN-> silence(500);//hold // ActiveUP+increase to level 10 silence(1000); in(osetlevel,1); silence(1000); in(osetlevel,2); silence(1000); in(osetlevel,3); silence(1000); in(osetlevel,4); silence(1000); in(osetlevel,5); silence(1000); in(osetlevel,6); silence(1000); in(osetlevel,7); silence(1000); in(osetlevel,8); silence(1000); in(osetlevel,9); silence(1000); in(osetlevel,10 silence(1000); in(osetlevel,9); //bring dimm State to ActiveDN out(irelease); //check release->grasp is ignored out(igrasp); //@12400 out(irelease); silence(dftolerance); Page 2

47 Definition/Use Pair Coverage Dataflow coverage technique Def/use pair of variable x: x:=0 definition... no defs x 4 use Encoding:.. v d { false} { e 0,, e n }, initially false Boolean array du of size E x E At definition on edge i: v d :=e i At use on edge j: if( v d )thendu[v d,e j ]:=true

48 Definition/Use Pair Coverage Dataflow coverage technique Def/use pair of variable x: x:=0... x 4 du: 0 0 n-1 definition no defs use i Encoding: v d { false} { e 0,, e n }, initially false Boolean array du of size E x E n-1 j At definition on edge i: v d :=e i At use on edge j: if( v d )thendu[v d,e j ]:=true Check: E<>( all du[i,j] = true )

49 Test Suite Generation In general a set of test cases is needed to cover a test criteria Add global reset of SUT and environment model and associate a cost (of system reset) initial R x=c x C x:=0 reset? reset Same encodings and min-cost reachability Test sequence σ = ε 0,i 0,,ε 1, i 1, reset ε 2,i 2,,ε 0,i 0,reset,ε 1, i 1,ε 2,i 2, Test suite T = {σ 1,, σ n } with minimum cost σ i

50 Optimal Tests 1W 50W 1W 100W Shortest test for max light?? Fastest test for max light?? Fastest edge-covering test suite?? Least power consuming test??

Model Based Testing of Embedded Systems

Model Based Testing of Embedded Systems Model Based Testing of Embedded Systems Brian Nielsen Arne Skou {bnielsen ask}@cs.auc.dk Automated Model Based Conformance Testing x>=2 Model DBLclick! click? x:=0 click? x

More information

Testing of real-time systems IOCO

Testing of real-time systems IOCO Testing of real-time systems IOCO Brian Nielsen bnielsen@cs.aau.dk With Kim Larsen, Marius Mikucionis, Arne Skou Automated Model Based Conformance Testing x>=2 Model DBLclick! click? x:=0 click? x

More information

Embedded systems specification and design

Embedded systems specification and design Embedded systems specification and design David Kendall David Kendall Embedded systems specification and design 1 / 21 Introduction Finite state machines (FSM) FSMs and Labelled Transition Systems FSMs

More information

Model-Based Testing: Testing from Finite State Machines

Model-Based Testing: Testing from Finite State Machines Model-Based Testing: Testing from Finite State Machines Mohammad Mousavi University of Leicester, UK IPM Summer School 2017 Mousavi FSM-Based Testing IPM 2017 1 / 64 Finite State Machines Outline 1 Finite

More information

Real-time Systems Part 4: Online Testing

Real-time Systems Part 4: Online Testing Model-based d Testing of Real-time Systems Part 4: Online Testing Brian Nielsen bnielsen@cs.aau.dk With Kim Larsen, Marius Mikucionis, Arne Skou Automated Model Based Conformance Testing x>=2 Model DBLclick!

More information

Introduction to FSM-modelling and test. Brian Nielsen Department of Computer Science, Aalborg University, Denmark CSS

Introduction to FSM-modelling and test. Brian Nielsen Department of Computer Science, Aalborg University, Denmark CSS Introduction to FSM-modelling and test Brian Nielsen bnielsen@cs.auc.dk Department of Computer Science, Aalborg University, Denmark CSS 1010111011010101 1011010101110111 Menu Basic definitions and fundamental

More information

Testing Distributed Systems

Testing Distributed Systems Testing Distributed Systems R. M. Hierons Brunel University, UK rob.hierons@brunel.ac.uk http://people.brunel.ac.uk/~csstrmh Work With Jessica Chen Mercedes Merayo Manuel Nunez Hasan Ural Model Based Testing

More information

TESTING is one of the most important parts of the

TESTING is one of the most important parts of the IEEE TRANSACTIONS 1 Generating Complete Controllable Test Suites for Distributed Testing Robert M. Hierons, Senior Member, IEEE Abstract A test suite is m-complete for finite state machine (FSM) M if it

More information

Testing from a Finite State Machine: An introduction 1

Testing from a Finite State Machine: An introduction 1 Testing from a Finite State Machine: An introduction 1 The use of Finite State Machines (FSM) to model systems has lead to much interest in deriving tests from them. Having derived a test sequence from

More information

An introduction to Uppaal and Timed Automata MVP5 1

An introduction to Uppaal and Timed Automata MVP5 1 An introduction to Uppaal and Timed Automata MVP5 1 What is Uppaal? (http://www.uppaal.com/) A simple graphical interface for drawing extended finite state machines (automatons + shared variables A graphical

More information

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Discrete Systems Lecture: Automata, State machines, Circuits Stavros Tripakis University of California, Berkeley Stavros

More information

A General Testability Theory: Classes, properties, complexity, and testing reductions

A General Testability Theory: Classes, properties, complexity, and testing reductions A General Testability Theory: Classes, properties, complexity, and testing reductions presenting joint work with Luis Llana and Pablo Rabanal Universidad Complutense de Madrid PROMETIDOS-CM WINTER SCHOOL

More information

A Simplified Approach for Testing Real-Time Systems Based on Action Refinement

A Simplified Approach for Testing Real-Time Systems Based on Action Refinement A Simplified Approach for Testing Real-Time Systems Based on Action Refinement Saddek Bensalem, Moez Krichen, Lotfi Majdoub, Riadh Robbana, Stavros Tripakis Verimag Laboratory, Centre Equation 2, avenue

More information

Modelling Real-Time Systems. Henrik Ejersbo Jensen Aalborg University

Modelling Real-Time Systems. Henrik Ejersbo Jensen Aalborg University Modelling Real-Time Systems Henrik Ejersbo Jensen Aalborg University Hybrid & Real Time Systems Control Theory Plant Continuous sensors actuators Task TaskTask Controller Program Discrete Computer Science

More information

PDF hosted at the Radboud Repository of the Radboud University Nijmegen

PDF hosted at the Radboud Repository of the Radboud University Nijmegen PDF hosted at the Radboud Repository of the Radboud University Nijmegen The following full text is a preprint version which may differ from the publisher's version. For additional information about this

More information

Using a Minimal Number of Resets when Testing from a Finite State Machine

Using a Minimal Number of Resets when Testing from a Finite State Machine Using a Minimal Number of Resets when Testing from a Finite State Machine R. M. Hierons a a Department of Information Systems and Computing, Brunel University, Uxbridge, Middlesex, UB8 3PH, United Kingdom

More information

Homing and Synchronizing Sequences

Homing and Synchronizing Sequences Homing and Synchronizing Sequences Sven Sandberg Information Technology Department Uppsala University Sweden 1 Outline 1. Motivations 2. Definitions and Examples 3. Algorithms (a) Current State Uncertainty

More information

The State Explosion Problem

The State Explosion Problem The State Explosion Problem Martin Kot August 16, 2003 1 Introduction One from main approaches to checking correctness of a concurrent system are state space methods. They are suitable for automatic analysis

More information

Formal Methods in Software Engineering

Formal Methods in Software Engineering Formal Methods in Software Engineering Modeling Prof. Dr. Joel Greenyer October 21, 2014 Organizational Issues Tutorial dates: I will offer two tutorial dates Tuesdays 15:00-16:00 in A310 (before the lecture,

More information

Finite Automata - Deterministic Finite Automata. Deterministic Finite Automaton (DFA) (or Finite State Machine)

Finite Automata - Deterministic Finite Automata. Deterministic Finite Automaton (DFA) (or Finite State Machine) Finite Automata - Deterministic Finite Automata Deterministic Finite Automaton (DFA) (or Finite State Machine) M = (K, Σ, δ, s, A), where K is a finite set of states Σ is an input alphabet s K is a distinguished

More information

Exam Computability and Complexity

Exam Computability and Complexity Total number of points:... Number of extra sheets of paper:... Exam Computability and Complexity by Jiri Srba, January 2009 Student s full name CPR number Study number Before you start, fill in the three

More information

Dependable Computer Systems

Dependable Computer Systems Dependable Computer Systems Part 3: Fault-Tolerance and Modelling Contents Reliability: Basic Mathematical Model Example Failure Rate Functions Probabilistic Structural-Based Modeling: Part 1 Maintenance

More information

Bridging the Semantic Gap Between Heterogeneous Modeling Formalisms and FMI

Bridging the Semantic Gap Between Heterogeneous Modeling Formalisms and FMI Bridging the Semantic Gap Between Heterogeneous Modeling Formalisms and FMI Stavros Tripakis Aalto University and University of California, Berkeley Abstract FMI (Functional Mockup Interface) is a standard

More information

Introduction: Computer Science is a cluster of related scientific and engineering disciplines concerned with the study and application of computations. These disciplines range from the pure and basic scientific

More information

Model Based Testing : principles and applications in the context of timed systems

Model Based Testing : principles and applications in the context of timed systems A. Rollet - ETR2011 - Brest (France) - August 2011 1/63 Model Based Testing : principles and applications in the context of timed systems Antoine Rollet Université de Bordeaux - LaBRI (UMR CNRS 5800),

More information

Software Specification 2IX20

Software Specification 2IX20 Software Specification 2IX20 Julien Schmaltz (with slides jointly with J. Tretmans, TNO&RUN) Lecture 11: Introduction to Model-Based Testing Context & Motivation Testing Testing: checking or measuring

More information

Automatic Synthesis of Distributed Protocols

Automatic Synthesis of Distributed Protocols Automatic Synthesis of Distributed Protocols Rajeev Alur Stavros Tripakis 1 Introduction Protocols for coordination among concurrent processes are an essential component of modern multiprocessor and distributed

More information

Equivalence of Regular Expressions and FSMs

Equivalence of Regular Expressions and FSMs Equivalence of Regular Expressions and FSMs Greg Plaxton Theory in Programming Practice, Spring 2005 Department of Computer Science University of Texas at Austin Regular Language Recall that a language

More information

The Underlying Semantics of Transition Systems

The Underlying Semantics of Transition Systems The Underlying Semantics of Transition Systems J. M. Crawford D. M. Goldschlag Technical Report 17 December 1987 Computational Logic Inc. 1717 W. 6th St. Suite 290 Austin, Texas 78703 (512) 322-9951 1

More information

hal , version 1-10 Sep 2013

hal , version 1-10 Sep 2013 Verification of Modular Systems with Unknown Components Combining Testing and Inference Roland Groz 1, Keqin Li 2, Alexandre Petrenko 3 1 Université de Grenoble, LIG Lab, France. Roland.Groz@imag.fr 2

More information

DISTINGUING NON-DETERMINISTIC TIMED FINITE STATE MACHINES

DISTINGUING NON-DETERMINISTIC TIMED FINITE STATE MACHINES DISTINGUING NON-DETERMINISTIC TIMED FINITE STATE MACHINES Maxim Gromov 1, Khaled El-Fakih 2, Natalia Shabaldina 1, Nina Yevtushenko 1 1 Tomsk State University, 36 Lenin Str.. Tomsk, 634050, Russia gromov@sibmail.com,

More information

Formal Testing from Timed Finite State Machines

Formal Testing from Timed Finite State Machines Formal Testing from Timed Finite State Machines Mercedes G. Merayo a, Manuel Núñez a and Ismael Rodríguez a a Departamento de Sistemas Informáticos y Computación Universidad Complutense de Madrid, E-28040

More information

Timed Automata. Semantics, Algorithms and Tools. Zhou Huaiyang

Timed Automata. Semantics, Algorithms and Tools. Zhou Huaiyang Timed Automata Semantics, Algorithms and Tools Zhou Huaiyang Agenda } Introduction } Timed Automata } Formal Syntax } Operational Semantics } Verification Problems } Symbolic Semantics & Verification }

More information

Time and Timed Petri Nets

Time and Timed Petri Nets Time and Timed Petri Nets Serge Haddad LSV ENS Cachan & CNRS & INRIA haddad@lsv.ens-cachan.fr DISC 11, June 9th 2011 1 Time and Petri Nets 2 Timed Models 3 Expressiveness 4 Analysis 1/36 Outline 1 Time

More information

September 7, Formal Definition of a Nondeterministic Finite Automaton

September 7, Formal Definition of a Nondeterministic Finite Automaton Formal Definition of a Nondeterministic Finite Automaton September 7, 2014 A comment first The formal definition of an NFA is similar to that of a DFA. Both have states, an alphabet, transition function,

More information

Bridging the Semantic Gap Between Heterogeneous Modeling Formalisms and FMI

Bridging the Semantic Gap Between Heterogeneous Modeling Formalisms and FMI Bridging the Semantic Gap Between Heterogeneous Modeling Formalisms and FMI Stavros Tripakis David Broman Electrical Engineering and Computer Sciences University of California at Berkeley Technical Report

More information

Design and Analysis of Distributed Interacting Systems

Design and Analysis of Distributed Interacting Systems Design and Analysis of Distributed Interacting Systems Organization Prof. Dr. Joel Greenyer April 11, 2013 Organization Lecture: Thursdays, 10:15 11:45, F 128 Tutorial: Thursdays, 13:00 13:45, G 323 first

More information

DISTINGUISHABILITY RELATIONS BETWEEN INITIALIZED NONDETERMINISTIC FSMs. Nina Yevtushenko Tomsk State University, Russia April, 12, 2011

DISTINGUISHABILITY RELATIONS BETWEEN INITIALIZED NONDETERMINISTIC FSMs. Nina Yevtushenko Tomsk State University, Russia April, 12, 2011 DISTINGUISHABILITY RELATIONS BETWEEN INITIALIZED NONDETERMINISTIC FSMs Nina Yevtushenko Tomsk State University, Russia April, 12, 2011 Outline 1. Why do we need distinguishability relations? 2. External

More information

Asynchronous Communication 2

Asynchronous Communication 2 Asynchronous Communication 2 INF4140 22.11.12 Lecture 11 INF4140 (22.11.12) Asynchronous Communication 2 Lecture 11 1 / 37 Overview: Last time semantics: histories and trace sets specification: invariants

More information

Formal Conformance Testing 2006

Formal Conformance Testing 2006 Formal Conformance Testing 2006 Lecture 1 14th Sep 2006 Welcome! This is T-79.5304: Formal Conformance Testing Lectures from 10 to 12 am, no regular tutorials Cancellations and other notes at the web page

More information

CISC 4090: Theory of Computation Chapter 1 Regular Languages. Section 1.1: Finite Automata. What is a computer? Finite automata

CISC 4090: Theory of Computation Chapter 1 Regular Languages. Section 1.1: Finite Automata. What is a computer? Finite automata CISC 4090: Theory of Computation Chapter Regular Languages Xiaolan Zhang, adapted from slides by Prof. Werschulz Section.: Finite Automata Fordham University Department of Computer and Information Sciences

More information

CpE358/CS381. Switching Theory and Logical Design. Class 16

CpE358/CS381. Switching Theory and Logical Design. Class 16 CpE358/CS38 Switching Theory and Logical Design Class 6 CpE358/CS38 Summer- 24 Copyright 24-585 Today Fundamental concepts of digital systems (Mano Chapter ) inary codes, number systems, and arithmetic

More information

Compilers. Lexical analysis. Yannis Smaragdakis, U. Athens (original slides by Sam

Compilers. Lexical analysis. Yannis Smaragdakis, U. Athens (original slides by Sam Compilers Lecture 3 Lexical analysis Yannis Smaragdakis, U. Athens (original slides by Sam Guyer@Tufts) Big picture Source code Front End IR Back End Machine code Errors Front end responsibilities Check

More information

CSE 311 Lecture 23: Finite State Machines. Emina Torlak and Kevin Zatloukal

CSE 311 Lecture 23: Finite State Machines. Emina Torlak and Kevin Zatloukal CSE 3 Lecture 3: Finite State Machines Emina Torlak and Kevin Zatloukal Topics Finite state machines (FSMs) Definition and examples. Finite state machines with output Definition and examples. Finite state

More information

UNIT-II. NONDETERMINISTIC FINITE AUTOMATA WITH ε TRANSITIONS: SIGNIFICANCE. Use of ε-transitions. s t a r t. ε r. e g u l a r

UNIT-II. NONDETERMINISTIC FINITE AUTOMATA WITH ε TRANSITIONS: SIGNIFICANCE. Use of ε-transitions. s t a r t. ε r. e g u l a r Syllabus R9 Regulation UNIT-II NONDETERMINISTIC FINITE AUTOMATA WITH ε TRANSITIONS: In the automata theory, a nondeterministic finite automaton (NFA) or nondeterministic finite state machine is a finite

More information

Test Generation for a Protocol Specified in SDL with Complex Loops by Event-based EFSM Modeling

Test Generation for a Protocol Specified in SDL with Complex Loops by Event-based EFSM Modeling 122 IJCSNS International Journal of Computer Science and Network Security, VOL.8 No.3, March 2008 Test Generation for a Protocol Specified in SDL with Complex Loops by Event-based EFSM Modeling Tae-Hyong

More information

Enhancing Active Automata Learning by a User Log Based Metric

Enhancing Active Automata Learning by a User Log Based Metric Master Thesis Computing Science Radboud University Enhancing Active Automata Learning by a User Log Based Metric Author Petra van den Bos First Supervisor prof. dr. Frits W. Vaandrager Second Supervisor

More information

Software Specification 2IX20

Software Specification 2IX20 Software Specification 2IX20 Julien Schmaltz (with slides jointly with J. Tretmans, TNO&RUN) Lecture 13: Model-Based Testing III (real-timed systems) Correctness Implementation Relation ioco i ioco s =

More information

Basic Problems in Multi-View Modeling

Basic Problems in Multi-View Modeling Basic Problems in Multi-View Modeling Jan Reineke Stavros Tripakis Electrical Engineering and Computer Sciences University of California at Berkeley Technical Report No. UCB/EECS-2014-4 http://www.eecs.berkeley.edu/pubs/techrpts/2014/eecs-2014-4.html

More information

Introduction to Computers & Programming

Introduction to Computers & Programming 16.070 Introduction to Computers & Programming Theory of computation: What is a computer? FSM, Automata Prof. Kristina Lundqvist Dept. of Aero/Astro, MIT Models of Computation What is a computer? If you

More information

Property Checking of Safety- Critical Systems Mathematical Foundations and Concrete Algorithms

Property Checking of Safety- Critical Systems Mathematical Foundations and Concrete Algorithms Property Checking of Safety- Critical Systems Mathematical Foundations and Concrete Algorithms Wen-ling Huang and Jan Peleska University of Bremen {huang,jp}@cs.uni-bremen.de MBT-Paradigm Model Is a partial

More information

Logic Model Checking

Logic Model Checking Logic Model Checking Lecture Notes 10:18 Caltech 101b.2 January-March 2004 Course Text: The Spin Model Checker: Primer and Reference Manual Addison-Wesley 2003, ISBN 0-321-22862-6, 608 pgs. the assignment

More information

Computational Models: Class 1

Computational Models: Class 1 Computational Models: Class 1 Benny Chor School of Computer Science Tel Aviv University October 19, 2015 Based on slides by Maurice Herlihy, Brown University, and modifications by Iftach Haitner and Yishay

More information

EEE2135 Digital Logic Design

EEE2135 Digital Logic Design EEE2135 Digital Logic Design Chapter 7. Sequential Circuits Design 서강대학교 전자공학과 1. Model of Sequential Circuits 1) Sequential vs. Combinational Circuits a. Sequential circuits: Outputs depend on both the

More information

Before We Start. The Pumping Lemma. Languages. Context Free Languages. Plan for today. Now our picture looks like. Any questions?

Before We Start. The Pumping Lemma. Languages. Context Free Languages. Plan for today. Now our picture looks like. Any questions? Before We Start The Pumping Lemma Any questions? The Lemma & Decision/ Languages Future Exam Question What is a language? What is a class of languages? Context Free Languages Context Free Languages(CFL)

More information

6. Finite State Machines

6. Finite State Machines 6. Finite State Machines 6.4x Computation Structures Part Digital Circuits Copyright 25 MIT EECS 6.4 Computation Structures L6: Finite State Machines, Slide # Our New Machine Clock State Registers k Current

More information

Automata Theory CS S-FR2 Final Review

Automata Theory CS S-FR2 Final Review Automata Theory CS411-2015S-FR2 Final Review David Galles Department of Computer Science University of San Francisco FR2-0: Halting Problem e(m) e(w) Halting Machine takes as input an encoding of a Turing

More information

Counting Two-State Transition-Tour Sequences

Counting Two-State Transition-Tour Sequences Counting Two-State Transition-Tour Sequences Nirmal R. Saxena & Edward J. McCluskey Center for Reliable Computing, ERL 460 Department of Electrical Engineering, Stanford University, Stanford, CA 94305

More information

Deterministic Finite Automata

Deterministic Finite Automata Deterministic Finite Automata COMP2600 Formal Methods for Software Engineering Ranald Clouston Australian National University Semester 2, 2013 COMP 2600 Deterministic Finite Automata 1 Pop quiz What is

More information

Specialised Test Strategies

Specialised Test Strategies Grant Agreement: 287829 Comprehensive Modelling for Advanced Systems of Systems Specialised Test Strategies Technical Note Number: D34.2 Version: 2.1 Date: September 2013 Public Document http://www.compass-research.eu

More information

DIAGNOSING MULTIPLE FAULTS IN COMMUNICATING FINITE STATE MACHINES

DIAGNOSING MULTIPLE FAULTS IN COMMUNICATING FINITE STATE MACHINES DIAGNOSING MULTIPLE FAULTS IN COMMUNICATING FINITE STATE MACHINES Khaled El-Fakih+, Nina Yevtushenko++ and Gregor v. Bochmann+ +School of Information Technology and Engineering,University of Ottawa, ON,

More information

Course Runtime Verification

Course Runtime Verification Course Martin Leucker (ISP) Volker Stolz (Høgskolen i Bergen, NO) INF5140 / V17 Chapters of the Course Chapter 1 Recall in More Depth Chapter 2 Specification Languages on Words Chapter 3 LTL on Finite

More information

Chapter 3. Digital Design and Computer Architecture, 2 nd Edition. David Money Harris and Sarah L. Harris. Chapter 3 <1>

Chapter 3. Digital Design and Computer Architecture, 2 nd Edition. David Money Harris and Sarah L. Harris. Chapter 3 <1> Chapter 3 Digital Design and Computer Architecture, 2 nd Edition David Money Harris and Sarah L. Harris Chapter 3 Chapter 3 :: Topics Introduction Latches and Flip-Flops Synchronous Logic Design Finite

More information

Context Free Languages: Decidability of a CFL

Context Free Languages: Decidability of a CFL Theorem 14.1 Context Free Languages: Decidability of a CFL Statement: Given a CFL L and string w, there is a decision procedure that determines whether w L. Proof: By construction. 1. Proof using a grammar

More information

Decentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication

Decentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication Decentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication Stavros Tripakis Abstract We introduce problems of decentralized control with communication, where we explicitly

More information

Finite-State Machines (Automata) lecture 12

Finite-State Machines (Automata) lecture 12 Finite-State Machines (Automata) lecture 12 cl a simple form of computation used widely one way to find patterns 1 A current D B A B C D B C D A C next 2 Application Fields Industry real-time control,

More information

PRINCIPLES AND METHODS OF TESTING FINITE STATE MACHINES A SURVEY. David Lee. Mihalis Yannakakis. AT&T Bell Laboratories Murray Hill, New Jersey

PRINCIPLES AND METHODS OF TESTING FINITE STATE MACHINES A SURVEY. David Lee. Mihalis Yannakakis. AT&T Bell Laboratories Murray Hill, New Jersey PRINCIPLES AND METHODS OF TESTING FINITE STATE MACHINES A SURVEY David Lee Mihalis Yannakakis AT&T Bell Laboratories Murray Hill, New Jersey ABSTRACT With advanced computer technology, systems are getting

More information

Peled, Vardi, & Yannakakis: Black Box Checking

Peled, Vardi, & Yannakakis: Black Box Checking Peled, Vardi, & Yannakakis: Black Box Checking Martin Leucker leucker@it.uu.se Department of Computer Systems,, Sweden Plan Preliminaries State identification and verification Conformance Testing Extended

More information

COMPUTER SCIENCE TRIPOS

COMPUTER SCIENCE TRIPOS CST.2014.2.1 COMPUTER SCIENCE TRIPOS Part IA Tuesday 3 June 2014 1.30 to 4.30 pm COMPUTER SCIENCE Paper 2 Answer one question from each of Sections A, B and C, and two questions from Section D. Submit

More information

Path Testing and Test Coverage. Chapter 9

Path Testing and Test Coverage. Chapter 9 Path Testing and Test Coverage Chapter 9 Structural Testing Also known as glass/white/open box testing Structural testing is based on using specific knowledge of the program source text to define test

More information

6.852: Distributed Algorithms Fall, Class 10

6.852: Distributed Algorithms Fall, Class 10 6.852: Distributed Algorithms Fall, 2009 Class 10 Today s plan Simulating synchronous algorithms in asynchronous networks Synchronizers Lower bound for global synchronization Reading: Chapter 16 Next:

More information

Computer Science, Informatik 4 Communication and Distributed Systems. Simulation. Discrete-Event System Simulation. Dr.

Computer Science, Informatik 4 Communication and Distributed Systems. Simulation. Discrete-Event System Simulation. Dr. Simulation Discrete-Event System Simulation Chapter 9 Verification and Validation of Simulation Models Purpose & Overview The goal of the validation process is: To produce a model that represents true

More information

Path Testing and Test Coverage. Chapter 9

Path Testing and Test Coverage. Chapter 9 Path Testing and Test Coverage Chapter 9 Structural Testing Also known as glass/white/open box testing Structural testing is based on using specific knowledge of the program source text to define test

More information

The efficiency of identifying timed automata and the power of clocks

The efficiency of identifying timed automata and the power of clocks The efficiency of identifying timed automata and the power of clocks Sicco Verwer a,b,1,, Mathijs de Weerdt b, Cees Witteveen b a Eindhoven University of Technology, Department of Mathematics and Computer

More information

Model Checking: An Introduction

Model Checking: An Introduction Model Checking: An Introduction Meeting 3, CSCI 5535, Spring 2013 Announcements Homework 0 ( Preliminaries ) out, due Friday Saturday This Week Dive into research motivating CSCI 5535 Next Week Begin foundations

More information

Models for Efficient Timed Verification

Models for Efficient Timed Verification Models for Efficient Timed Verification François Laroussinie LSV / ENS de Cachan CNRS UMR 8643 Monterey Workshop - Composition of embedded systems Model checking System Properties Formalizing step? ϕ Model

More information

Timo Latvala. March 7, 2004

Timo Latvala. March 7, 2004 Reactive Systems: Safety, Liveness, and Fairness Timo Latvala March 7, 2004 Reactive Systems: Safety, Liveness, and Fairness 14-1 Safety Safety properties are a very useful subclass of specifications.

More information

Finite State Machines. CS 447 Wireless Embedded Systems

Finite State Machines. CS 447 Wireless Embedded Systems Finite State Machines CS 447 Wireless Embedded Systems Outline Discrete systems Finite State Machines Transitions Timing Update functions Determinacy and Receptiveness 1 Discrete Systems Operates in sequence

More information

MA/CSSE 474 Theory of Computation

MA/CSSE 474 Theory of Computation MA/CSSE 474 Theory of Computation CFL Hierarchy CFL Decision Problems Your Questions? Previous class days' material Reading Assignments HW 12 or 13 problems Anything else I have included some slides online

More information

A Theory of History Dependent Abstractions for Learning Interface Automata

A Theory of History Dependent Abstractions for Learning Interface Automata A Theory of History Dependent Abstractions for Learning Interface Automata Fides Aarts, Faranak Heidarian, and Frits Vaandrager Institute for Computing and Information Sciences, Radboud University Nijmegen

More information

Abstractions and Decision Procedures for Effective Software Model Checking

Abstractions and Decision Procedures for Effective Software Model Checking Abstractions and Decision Procedures for Effective Software Model Checking Prof. Natasha Sharygina The University of Lugano, Carnegie Mellon University Microsoft Summer School, Moscow, July 2011 Lecture

More information

Complexity. Complexity Theory Lecture 3. Decidability and Complexity. Complexity Classes

Complexity. Complexity Theory Lecture 3. Decidability and Complexity. Complexity Classes Complexity Theory 1 Complexity Theory 2 Complexity Theory Lecture 3 Complexity For any function f : IN IN, we say that a language L is in TIME(f(n)) if there is a machine M = (Q, Σ, s, δ), such that: L

More information

PC Control / Touch Control

PC Control / Touch Control PC Control / Touch Control Version 6.0 / 5.840.0150 New Features Manual 8.840.8007EN Metrohm AG CH-9101 Herisau Switzerland Phone +41 71 353 85 85 Fax +41 71 353 89 01 info@metrohm.com www.metrohm.com

More information

1 Introduction. 1.1 The Problem Domain. Self-Stablization UC Davis Earl Barr. Lecture 1 Introduction Winter 2007

1 Introduction. 1.1 The Problem Domain. Self-Stablization UC Davis Earl Barr. Lecture 1 Introduction Winter 2007 Lecture 1 Introduction 1 Introduction 1.1 The Problem Domain Today, we are going to ask whether a system can recover from perturbation. Consider a children s top: If it is perfectly vertically, you can

More information

Scalable and Accurate Verification of Data Flow Systems. Cesare Tinelli The University of Iowa

Scalable and Accurate Verification of Data Flow Systems. Cesare Tinelli The University of Iowa Scalable and Accurate Verification of Data Flow Systems Cesare Tinelli The University of Iowa Overview AFOSR Supported Research Collaborations NYU (project partner) Chalmers University (research collaborator)

More information

Methods for the specification and verification of business processes MPB (6 cfu, 295AA)

Methods for the specification and verification of business processes MPB (6 cfu, 295AA) Methods for the specification and verification of business processes MPB (6 cfu, 295AA) Roberto Bruni http://www.di.unipi.it/~bruni 17 - Diagnosis for WF nets 1 Object We study suitable diagnosis techniques

More information

for System Modeling, Analysis, and Optimization

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

More information

A Scalable Jointree Algorithm for Diagnosability

A Scalable Jointree Algorithm for Diagnosability A Scalable Jointree Algorithm for Diagnosability Anika Schumann Advanced Computing Research Centre University of South Australia Mawson Lakes, SA 5095, Australia anika.schumann@cs.unisa.edu.au Jinbo Huang

More information

Polynomial-Time Reductions

Polynomial-Time Reductions Reductions 1 Polynomial-Time Reductions Classify Problems According to Computational Requirements Q. Which problems will we be able to solve in practice? A working definition. [von Neumann 1953, Godel

More information

Time(d) Petri Net. Serge Haddad. Petri Nets 2016, June 20th LSV ENS Cachan, Université Paris-Saclay & CNRS & INRIA

Time(d) Petri Net. Serge Haddad. Petri Nets 2016, June 20th LSV ENS Cachan, Université Paris-Saclay & CNRS & INRIA Time(d) Petri Net Serge Haddad LSV ENS Cachan, Université Paris-Saclay & CNRS & INRIA haddad@lsv.ens-cachan.fr Petri Nets 2016, June 20th 2016 1 Time and Petri Nets 2 Time Petri Net: Syntax and Semantic

More information

CS 5114: Theory of Algorithms

CS 5114: Theory of Algorithms CS 5114: Theory of Algorithms Clifford A. Shaffer Department of Computer Science Virginia Tech Blacksburg, Virginia Spring 2014 Copyright c 2014 by Clifford A. Shaffer CS 5114: Theory of Algorithms Spring

More information

NP and Computational Intractability

NP and Computational Intractability NP and Computational Intractability 1 Polynomial-Time Reduction Desiderata'. Suppose we could solve X in polynomial-time. What else could we solve in polynomial time? don't confuse with reduces from Reduction.

More information

Luay H. Tahat Computer Science Department Gulf University for Science & Technology Hawally 32093, Kuwait

Luay H. Tahat Computer Science Department Gulf University for Science & Technology Hawally 32093, Kuwait Luay H. Tahat Computer Science Department Gulf University for Science & Technology Hawally 0, Kuwait tahaway@iit.edu Regression Test Suite Prioritization Using System Models Bogdan Korel Computer Science

More information

Automata Theory CS Complexity Theory I: Polynomial Time

Automata Theory CS Complexity Theory I: Polynomial Time Automata Theory CS411-2015-17 Complexity Theory I: Polynomial Time David Galles Department of Computer Science University of San Francisco 17-0: Tractable vs. Intractable If a problem is recursive, then

More information

Formal Verification Techniques. Riccardo Sisto, Politecnico di Torino

Formal Verification Techniques. Riccardo Sisto, Politecnico di Torino Formal Verification Techniques Riccardo Sisto, Politecnico di Torino State exploration State Exploration and Theorem Proving Exhaustive exploration => result is certain (correctness or noncorrectness proof)

More information

An Introduction to Hybrid Systems Modeling

An Introduction to Hybrid Systems Modeling CS620, IIT BOMBAY An Introduction to Hybrid Systems Modeling Ashutosh Trivedi Department of Computer Science and Engineering, IIT Bombay CS620: New Trends in IT: Modeling and Verification of Cyber-Physical

More information

Spiking Neural P Systems with Anti-Spikes as Transducers

Spiking Neural P Systems with Anti-Spikes as Transducers ROMANIAN JOURNAL OF INFORMATION SCIENCE AND TECHNOLOGY Volume 14, Number 1, 2011, 20 30 Spiking Neural P Systems with Anti-Spikes as Transducers Venkata Padmavati METTA 1, Kamala KRITHIVASAN 2, Deepak

More information

Appendix B. Review of Digital Logic. Baback Izadi Division of Engineering Programs

Appendix B. Review of Digital Logic. Baback Izadi Division of Engineering Programs Appendix B Review of Digital Logic Baback Izadi Division of Engineering Programs bai@engr.newpaltz.edu Elect. & Comp. Eng. 2 DeMorgan Symbols NAND (A.B) = A +B NOR (A+B) = A.B AND A.B = A.B = (A +B ) OR

More information

Chapter 3. Chapter 3 :: Topics. Introduction. Sequential Circuits

Chapter 3. Chapter 3 :: Topics. Introduction. Sequential Circuits Chapter 3 Chapter 3 :: Topics igital esign and Computer Architecture, 2 nd Edition avid Money Harris and Sarah L. Harris Introduction Latches and Flip Flops Synchronous Logic esign Finite State Machines

More information

Last lecture Counter design Finite state machine started vending machine example. Today Continue on the vending machine example Moore/Mealy machines

Last lecture Counter design Finite state machine started vending machine example. Today Continue on the vending machine example Moore/Mealy machines Lecture 2 Logistics HW6 due Wednesday Lab 7 this week (Tuesday exception) Midterm 2 Friday (covers material up to simple FSM (today)) Review on Thursday Yoky office hour on Friday moved to Thursday 2-:2pm

More information