Model Based Testing -- FSM based testing
|
|
- Flora Horton
- 5 years ago
- Views:
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 Brian Nielsen Arne Skou {bnielsen ask}@cs.auc.dk Automated Model Based Conformance Testing x>=2 Model DBLclick! click? x:=0 click? x
More informationTesting 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 informationEmbedded 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 informationModel-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 informationReal-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 informationIntroduction 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 informationTesting 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 informationTESTING 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 informationTesting 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 informationAn 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 informationEECS 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 informationA 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 informationA 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 informationModelling 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 informationPDF 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 informationUsing 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 informationHoming 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 informationThe 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 informationFormal 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 informationFinite 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 informationExam 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 informationDependable 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 informationBridging 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 informationIntroduction: 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 informationModel 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 informationSoftware 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 informationAutomatic 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 informationEquivalence 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 informationThe 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 informationhal , 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 informationDISTINGUING 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 informationFormal 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 informationTimed 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 informationTime 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 informationSeptember 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 informationBridging 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 informationDesign 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 informationDISTINGUISHABILITY 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 informationAsynchronous 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 informationFormal 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 informationCISC 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 informationCpE358/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 informationCompilers. 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 informationCSE 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 informationUNIT-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 informationTest 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 informationEnhancing 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 informationSoftware 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 informationBasic 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 informationIntroduction 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 informationProperty 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 informationLogic 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 informationComputational 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 informationEEE2135 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 informationBefore 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 information6. 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 informationAutomata 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 informationCounting 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 informationDeterministic 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 informationSpecialised 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 informationDIAGNOSING 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 informationCourse 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 informationChapter 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 informationContext 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 informationDecentralized 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 informationFinite-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 informationPRINCIPLES 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 informationPeled, 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 informationCOMPUTER 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 informationPath 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 information6.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 informationComputer 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 informationPath 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 informationThe 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 informationModel 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 informationModels 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 informationTimo 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 informationFinite 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 informationMA/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 informationA 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 informationAbstractions 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 informationComplexity. 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 informationPC 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 information1 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 informationScalable 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 informationMethods 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 informationfor 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 informationA 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 informationPolynomial-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 informationTime(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 informationCS 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 informationNP 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 informationLuay 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 informationAutomata 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 informationFormal 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 informationAn 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 informationSpiking 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 informationAppendix 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 informationChapter 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 informationLast 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