Timed Automata Rajeev Alur University of Pennsylvania www.cis.upenn.edu/~alur/ SFM-RT, Bertinoro, Sept 2004.

Slides:



Advertisements
Similar presentations
Model Checking From Tools to Theory University of Pennsylvania
Advertisements

Model Checking Lecture 3. Specification Automata Syntax, given a set A of atomic observations: Sfinite set of states S 0 Sset of initial states S S transition.
Model Checking Lecture 2. Three important decisions when choosing system properties: 1automata vs. logic 2branching vs. linear time 3safety vs. liveness.
Complexity Classes: P and NP
CS 267: Automated Verification Lecture 8: Automata Theoretic Model Checking Instructor: Tevfik Bultan.
Lecture 24 MAS 714 Hartmut Klauck
1 University of Pennsylvania Grigoris Karvounarakis February 2004 Conversation Specification: A New Approach to Design and Analysis of E- Service Composition.
1 Model checking. 2 And now... the system How do we model a reactive system with an automaton ? It is convenient to model systems with Transition systems.
Automatic Verification Book: Chapter 6. What is verification? Traditionally, verification means proof of correctness automatic: model checking deductive:
Equivalence of Extended Symbolic Finite Transducers Presented By: Loris D’Antoni Joint work with: Margus Veanes.
Game-theoretic approach to the simulation checking problem Peter Bulychev Vladimir Zakharov Lomonosov Moscow State University.
UPPAAL Introduction Chien-Liang Chen.
Hybrid Systems Presented by: Arnab De Anand S. An Intuitive Introduction to Hybrid Systems Discrete program with an analog environment. What does it mean?
Timed Automata.
The Big Picture Chapter 3. We want to examine a given computational problem and see how difficult it is. Then we need to compare problems Problems appear.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
The Language Theory of Bounded Context-Switching Gennaro Parlato (U. of Illinois, U.S.A.) Joint work with: Salvatore La Torre (U. of Salerno, Italy) P.
Complexity 11-1 Complexity Andrei Bulatov Space Complexity.
1 Introduction to Computability Theory Lecture12: Decidable Languages Prof. Amos Israeli.
Discrete Abstractions of Hybrid Systems Rajeev Alur, Thomas A. Henzinger, Gerardo Lafferriere and George J. Pappas.
Validating Streaming XML Documents Luc Segoufin & Victor Vianu Presented by Harel Paz.
Normal forms for Context-Free Grammars
Theory of Computing Lecture 22 MAS 714 Hartmut Klauck.
Model Checking Lecture 5. Outline 1 Specifications: logic vs. automata, linear vs. branching, safety vs. liveness 2 Graph algorithms for model checking.
Abstract Verification is traditionally done by determining the truth of a temporal formula (the specification) with respect to a timed transition system.
Regular Model Checking Ahmed Bouajjani,Benget Jonsson, Marcus Nillson and Tayssir Touili Moran Ben Tulila
Finite-State Machines with No Output
Lexical Analysis — Part II: Constructing a Scanner from Regular Expressions Copyright 2003, Keith D. Cooper, Ken Kennedy & Linda Torczon, all rights reserved.
Theory of Computing Lecture 15 MAS 714 Hartmut Klauck.
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
Model Checking Lecture 3 Tom Henzinger. Model-Checking Problem I |= S System modelSystem property.
Languages of nested trees Swarat Chaudhuri University of Pennsylvania (with Rajeev Alur and P. Madhusudan)
Lexical Analysis — Part II: Constructing a Scanner from Regular Expressions.
1 Unit 1: Automata Theory and Formal Languages Readings 1, 2.2, 2.3.
Visibly Pushdown Languages Philippe Giabbanelli CMPT 894 – Spring 2008.
Automating Construction of Lexers. Example in javacc TOKEN: { ( | | "_")* > | ( )* > | } SKIP: { " " | "\n" | "\t" } --> get automatically generated code.
Lexical Analysis Constructing a Scanner from Regular Expressions.
CIS 842: Specification and Verification of Reactive Systems Lecture Specifications: LTL Model Checking Copyright , Matt Dwyer, John Hatcliff,
CS5270 Lecture 41 Timed Automata I CS 5270 Lecture 4.
Theory of Computing Lecture 21 MAS 714 Hartmut Klauck.
2. Regular Expressions and Automata 2007 년 3 월 31 일 인공지능 연구실 이경택 Text: Speech and Language Processing Page.33 ~ 56.
MPRI 3 Dec 2007Catuscia Palamidessi 1 Why Probability and Nondeterminism? Concurrency Theory Nondeterminism –Scheduling within parallel composition –Unknown.
1 Turing’s Thesis. 2 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
1 Model Checking of of Timed Systems Rajeev Alur University of Pennsylvania.
CS 208: Computing Theory Assoc. Prof. Dr. Brahim Hnich Faculty of Computer Sciences Izmir University of Economics.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Strings Basic data type in computational biology A string is an ordered succession of characters or symbols from a finite set called an alphabet Sequence.
UNIT - I Formal Language and Regular Expressions: Languages Definition regular expressions Regular sets identity rules. Finite Automata: DFA NFA NFA with.
ECE/CS 584: Verification of Embedded Computing Systems Model Checking Timed Automata Sayan Mitra Lecture 09.
Chapter 5 Finite Automata Finite State Automata n Capable of recognizing numerous symbol patterns, the class of regular languages n Suitable for.
Relational String Verification Using Multi-track Automata.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen.
LECTURE 5 Scanning. SYNTAX ANALYSIS We know from our previous lectures that the process of verifying the syntax of the program is performed in two stages:
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
CS5270 Lecture 41 Timed Automata I CS 5270 Lecture 4.
Prof. Dr. Holger Schlingloff 1,2 Dr. Esteban Pavese 1
Summary.
Relatively Complete Refinement Type System for Verification of Higher-Order Non-deterministic Programs Hiroshi Unno (University of Tsukuba) Yuki Satake.
Lexical Analysis — Part II: Constructing a Scanner from Regular Expressions Copyright 2003, Keith D. Cooper, Ken Kennedy & Linda Torczon, all rights reserved.
Timed Automata Formal Systems Pallab Dasgupta Professor,
Alternating tree Automata and Parity games
Lexical Analysis — Part II: Constructing a Scanner from Regular Expressions Copyright 2003, Keith D. Cooper, Ken Kennedy & Linda Torczon, all rights reserved.
CSE322 CONSTRUCTION OF FINITE AUTOMATA EQUIVALENT TO REGULAR EXPRESSION Lecture #9.
4. Properties of Regular Languages
Lexical Analysis — Part II: Constructing a Scanner from Regular Expressions Copyright 2003, Keith D. Cooper, Ken Kennedy & Linda Torczon, all rights reserved.
Instructor: Aaron Roth
Instructor: Aaron Roth
Instructor: Aaron Roth
Instructor: Aaron Roth
Presentation transcript:

Timed Automata Rajeev Alur University of Pennsylvania SFM-RT, Bertinoro, Sept 2004

Model Checker Advantages Automated formal verification, Effective debugging tool Moderate industrial success In-house groups: Intel, Microsoft, Lucent, Motorola… Commercial model checkers: FormalCheck by Cadence Obstacles Scalability is still a problem (about 500 state vars) Effective use requires great expertise model temporal property yes error-trace Still, a great success story for CS theory impacting practice, and a vibrant area of research

Automata in Model Checking  Automata Theory provides foundations for model checking  Automata / state machines to model components  Intersection, projection model operations  Verification is inclusion: is System contained in Spec?  Classical: Finite-state automata (regular languages)  Pushdown automata  Counter automata  Probabilistic automata ….  Timed automata as a foundation for real-time systems (automata + timing constraints

Course Overview  Timed Automata Model  Reachability Preliminaries: Transition Systems and Equivalences Region Graph Construction Decidability Boundary  Timed Regular Languages Closure Properties and Complementation Deterministic and Two-way Automata Robustness Inclusion

OffLightBright Press WANT: if press is issued twice quickly then the light will get brighter; otherwise the light is turned off. Simple Light Control

OffLightBright Solution: Add a real-valued clock x x:=0 x<=3 x>3 Press Adding continuous variables to state machines

Timed Automata n m a Clocks: x, y x 3 x := 0 Guard Boolean combination of comparisons with Integer/rational bounds Reset Action performed on clocks ( n, x=2.4, y= ) ( n, x=3.5, y= ) wait(1.1) Transitions ( n, x=2.4, y= ) ( m, x=0, y= ) a State ( location, x=v, y=u ) where v,u are in R Action used for synchronization

n m a Clocks: x, y x 3 x := 0 Transitions ( n, x=2.4, y= ) ( n, x=3.5, y= ) wait(1.1) ( n, x=2.4, y= ) wait(3.2) x<=5 y<=10 Location Invariants g1 g2 g3 g4 Invariants ensure progress!! Adding Invariants

Timed Automata: Syntax  A finite set V of locations  A subset V 0 of initial locations  A finite set  of labels (alphabet)  A finite set X of clocks  Invariant Inv(l) for each location: (clock constraint over X)  A finite set E of edges. Each edge has  source location l, target location l’  label a in  (  labels also allowed)  guard g (a clock constraint over X)  a subset of clocks to be reset

Timed Automata: Semantics  For a timed automaton A, define an infinite- state transition system S(A)  States Q: a state q is a pair (l,v), where l is a location, and v is a clock vector, mapping clocks in X to R, satisfying Inv(l)  (l,v) is initial state if l is in V 0 and v(x)=0  Elapse of time transitions: for each nonnegative real number d, (l,v)-d->(l,v+d) if both v and v+d satisfy Inv(l)  Location switch transitions: (l,v)-a->(l’,v’) if there is an edge (l,a,g,,l’) such that v satisfies g and v’=v[ :=0]

Product Construction A B x<4 x:=0 x>3 a b a | a,x:=0 ab c C D y<4 y:=0 y>3 b b| b,y:=0 bc AC BC x<4 x:=0 x>3 a b, y:=0 a| a,x:=0 AD y<4 y>3 c BD x<4 y<4 x>3, b| x>3, b,y:=0 a| a, x:=0 y>3 c a, x:=0

Verification  System modeled as a product of timed automata  Verification problem reduced to reachability or to temporal logic model checking  Applications  Real-time controllers  Asynchronous timed circuits  Scheduling  Distributed timing-based algorithms

Course Overview Timed Automata Model  Reachability Preliminaries: Transition Systems and Equivalences Region Graph Construction Decidability Boundary  Timed Regular Languages Closure Properties and Complementation Deterministic and two-way Automata Robustness Inclusion

Reachability for Timed Automata Is finite state analysis possible? Is reachability problem decidable?

Finite Partitioning Goal: To partition state-space into finitely many equivalence classes so that equivalent states exhibit similar behaviors

Labeled Transition System T  Set Q of states  Set I of initial states  Set  of labels  Set  of labeled transitions of the form q –a-> q’

Partitions and Quotients  Let T=(Q,I, ,  ) be a transition system and  be a partitioning of Q (i.e. an equivalence relation on Q)  Quotient T/  is transition system: 1. States are equivalence classes of  2. A state P is initial if it contains a state in I 3. Set of labels is  4. Transitions: P –a-> P’ if q-a->q’ for some q in P and some q’ in P’

Language Equivalence  Language of T: Set of possible finite strings over  that can be generated starting from initial states  T and T’ are language-equivalent iff they generate the same language  Roughly speaking, language equivalent systems satisfy the same set of “safety” properties

Bisimulation  Relation  on QXQ’ is a bisimulation iff whenever q  q’ then if q-a->u then for some u’, u  u’ and q’-a->u’, and if q’-a->u’ then for some u, u  u’ and q-a->u.  Transition systems T and T’ are bisimilar if there exists bisimulation  on QXQ’ such that For every q in I, there is q’ in I’, q  q’ and vice versa  Many equivalent characterizations (e.g. game-theoretic)  Roughly speaking, bisimilar systems satisfy the same set of branching-time properties (including safety)

Bisimulation Vs Language equivalence Language equivalent but not bisimilar Bisimilarity -> Language equivalence aa bc a bc

Timed Vs Time-Abstract Relations  Transition system associated with a timed automaton: Labels on continuous steps are delays in R: Timed Actual delays are suppressed (all continuous steps have same label): Time-abstract  Two versions of language equivalence and two versions of bisimulation  Time-abstract relations enough to capture untimed properties (e.g. reachability, safety)

Time-abstract Vs Timed Time-abstract equivalent but not timed equivalent Timed equivalence -> Time-abstract equivalence ab a x:=0 x>10 b

Regions Finite partitioning of state space x y Definition An equivalence class (i.e. a region) in fact there is only a finite number of regions!! w  w ’ iff they satisfy the same set of constraints of the form x i < c, x i = c, x i – x j < c, x i –x j =c for c <= largest const relevant to x i Alur, Dill, 90

Region Operations x y An equivalence class (i.e. a region) Successor regions, Succ(r) r Reset regions r[y:=0] r[x:=0]

Properties of Regions  The region equivalence relation  is a time-abstract bisimulation: –Action transitions: If w  v and (l,w) -a-> (l ’,w ’ ) for some w ’, then  v ’  w ’ s.t. (l,v) -a-> (l ’,v ’ ) –Delay transitions: If w  v then for all real numbers d, there exists d ’ s.t. w+d  v+d ’  If w  v then (l,w) and (l,v) satisfy the same temporal logic formulas

Region graph of a simple timed automata

Region Graphs (Summary)  Finite quotient of timed automaton that is time-abstract bisimilar  Number of regions: (# of locations) times (product of all constants) times (factorial of number of clocks)  Precise complexity class of reachability problem: PSPACE (basically, exponential dependence of clocks/constants unavoidable)  PSPACE-hard even for bounded constants or for bounded number of clocks

Multi-rate Automata  Modest extension of timed automata Dynamics of the form dx = const (rate of a clock is same in all locations) Guards and invariants: x const Resets: x := const  Simple translation to timed automata that gives time-abstract bisimilar system by scaling dx = 2 dy = 3 x>5 and y <1 du = 1 dv = 1 u>5/2 and v <1/3

Rectangular Automata  Interesting extension of timed automata Dynamics of the form dx in const interval (rate-bounds of a clock same in all locations) Guards/invariants/resets as before  Translation to multi-rate automata that gives time-abstract language-equiv system dx in [2,3] x>5 x<2 du = 2 dv = 3 v>5, u:=5 u<2, v:=2 HKPV 95

Rectangular Automata may not have finite bismilar quotients! dx =1 dy in [1,2] x<=1 y<=1 x=1, a, x:=0 y=1, b, y:=0

Decidable Problems  Model checking branching-time properties (TCTL) of timed automata  Reachability in rectangular automata  Timed bisimilarity: are given two timed automata bisimilar?  Optimization: Compute shortest paths (e.g. minimum time reachability) in timed automata with costs on locations and edges  Controller synthesis: Computing winning strategies in timed automata with controllable and uncontrollable transitions

Limit Reachability  Given A and error , define A  to be the rectangular automaton in which every clock x has rate in the interval [1- ,1+  ]  A location l is limit reachable if l is reachable in A  for every  > 0  Limit reachability is decidable Puri 98 AB x 1

Undecidable Reachability Problems  Linear expressions as guards  Guards that compare clocks with irrational constants  Updates of the form x := x-1  Multi-rate automata with comparisons among clocks as guards  Timed automata + stop-watches (i.e. clocks that can have rates 0 or 1) Many such results Proofs by encoding Turing machines/2-counter machines Sharp boundary for decidability understood

Course Overview Timed Automata Model Reachability Preliminaries: Transition Systems and Equivalences Region Graph Construction Decidability Boundary  Timed Regular Languages Closure Properties and Complementation Deterministic and Two-way Automata Robustness Inclusion

Timed Languages  A timed word over  is a sequence (a 0,t 0 ),(a 1,t 1 )…(a k,t k ) with a i in , t i in R, and t 0 <=t 1 <=…<=t k (monotonicity of time)  A timed language is a set of timed words  Timed automata with final locations can be viewed as generators/acceptors of timed languages: A accepts (a 0,t 0 ),(a 1,t 1 )…(a k,t k ) if for some initial state q, final state q’, there is a run q-t 0 ->-a 0 ->-(t 1 -t 0 )->-a 1 ->…-a k ->q’  A timed language L is timed regular if there is a timed automaton whose timed language is L

Example Words of the form (abcd)* such that c occurs after a delay of at least 2 wrt last b, and d occurs within 3 of last a a,x:=0b,y:=0 x<3,d y>2,c This timed language cannot be captured by any timed automaton with just 1 clock. In fact, expressiveness strictly increases with the number of clocks.

Untiming  Given a timed language L over  the language Untime(L) consists of words a 0,a 1,…a k such that there exists a timed word (a 0,t 0 ),(a 1,t 1 )…(a k,t k ) in L  Thm: If L is timed regular, then Untime(L) is regular.  proof by region construction

Not timed regular  Delay between first and second event is the same as the delay between second and third.  Can compare delays only with constant bounds  Every a symbol is followed by some b symbol after a delay of 1  Due to denseness, there can be unbounded number of a symbols in a unit interval  Complement of this language is timed regular  Untimed language is {a n b n | n is an integer}

Properties of Timed Regular languages  Set of timed regular languages is closed under union, intersection, but not under complementation  For every k, there is a timed regular language that cannot be expressed using only k clocks (strict hierarchy)  Epsilon-labeled switches contribute to expressive power  the language “symbols occur only at integer times” crucially uses epsilon-labeled edges

Non-closure under complementation  L contains timed words w s.t. there is a at some time t, and no event at time t+1  Claim: ~L is not timed regular  Let L’ contain timed words w s.t. untimed word is in a*b*, all a symbols are before time 1, and no two a events happen simultaneously  A word a n b m is in Untime(~L & L’) iff m>=n  ~L & L’ is not timed regular, but L’ is. So ~L cannot be timed regular a, x:=0 a, b a, b, ~(x=1)

Undecidability  Universality problem (given a timed automaton A, does it accept all timed words) is undecidable  Proof by reduction from halting problem for 2-counter machines  Symbols in time interval [k, k+1) encode the k-th configuration of a run of the machine  Denseness of time ensures configurations can be of unbounded lengths  Crux: how to relate successive configurations  Copying of a symbols: every a at time t in one interval has a matching a in the next interval at time t+1  Absence of such copying can be guessed by a timed automaton

Do we have the “ right ” class?  Corollary: Inclusion and Equivalence problems are undecidable for timed automata  Hierarchical verification using automata-theoretic setting not possible  Closed under union, intersection, projection, concatenation, but not complementation  Maybe the source of undecidability and non-closure under complementation is ability to model precise time constraints  some two a symbols are time 1 apart

Search for a “ better ” class  Complementable subclasses  (Bounded two-way) Deterministic automata  (Recursive) Event-clock automata  Semantics  (Inverse) Digitization, Open/closed automata  Robust timed automata  Alternative characterizations  Timed regular expressions  Monadic second order theory + distance  Linear temporal logics with real-time

Deterministic Timed Automata  A timed automaton is deterministic if  Only one initial location  No edges labeled with  (some relaxation possible)  Two edges with same source and same label have disjoint guards  Key property: At most one run on a given timed word  To complement, complete & complement final locations a, x<1 a, x>=1 b

Properties of DTA Languages  Closed under union, intersection, complement, but not projection  Emptiness, universality, inclusion, equivalence all decidable in PSPACE  Strictly less expressive than nondeterministic  There exists i and j s.t. t j =t i +1  Open problem: Given a timed automaton A, is L(A) a DTA-language? (see Tripakis00)

Two-way Deterministic Timed Automata  Languages of deterministic timed automata not closed under “reverse”  Deterministically identified b is followed by a after 1 unit is a DTA-language  Deterministically identified b is preceded by a before 1 unit is not a DTA language  More tricky example: Every a is followed by some b within a delay of [1,2] (see AFH96) b 1 a a 1 Alur, Henzinger, 92

Properties of two-way automata  Bounded reversal two-way timed automata: k- bounded automaton visits any symbol at most k times  Every k-bounded automaton can be simulated by a forward non-deterministic one  DTA k : Languages of k-bounded deterministic timed automata  DTA k is closed under union, intersection, complementation, and has decidable inclusion/equivalence problems  DTA k forms a strict hierarchy with increasing k

Robust Timed Automata  Intuition: Rule out the ability to relate events “accurately” by forcing fuzziness in semantics  Accept/reject a word only if a dense subset around it is accepted/rejected  For two timed words w and w’ with same untimed word, d(w,w’)= max i |t i -t’ i |  Use this metric to define open/closed sets  Robust language of A is interior of the smallest closed set containing L(A) GHJ 97

Robust acceptance  Robust language of this automaton is all timed words  Isolated words cannot be accepted/rejected  Open timed automata: Timed automata where all guards are strict (x c)  Given a timed automaton A, one can construct an open timed automaton B with the same robust language, which is empty iff L(B) is empty  Emptiness of robust language is decidable a, x:=0 a, b a, b, ~(x=1)

Robust timed automata  Robustness unfortunately does not solve non-complementability and undecidability of inclusion [HR00]  L contains timed words w s.t. untimed word is a*b*, and there exist consecutive a symbols at times t and t’ with no b in [t+1,t’+1]  L is a robust timed language, but its complement is not  Universality of robust timed automata is undecidable

Back to Language Inclusion  Given timed automata A and B, checking if L(A) is contained in L(B) is decidable if  B has only 1 clock or  All constraints in B use the constant 0  B cannot be determinized, and one has to consider potentially unbounded copies of the clock of B, but termination uses well-founded ordering on the configurations  Any relaxation on resources of B leads to undecidability Ouaknine Lics ’ 04

Resource-bounded Inclusion  Critical resources of a timed automaton  Granularity 1/m (all constants are multiples of this granularity)  Number of clocks k  An observer C distinguishes automata A and B if L(A)&L(C) is non-empty but L(B)&L(C) is empty  Resource bounded inclusion: Given A, B, and resource bound (k,1/m) check if there is an observer C with k clocks, granularity 1/m, and distinguishes A and B  Resource bounded inclusion is decidable

Topics Not Covered  Timed  -languages  Linear/Branching-time real-time logics  Connections to monadic logics, regular expressions, circuits  Timed branching-time equivalences  Efficient implementations, tools, applications  Adding probabilities  Concurrency: Process algebras, Petri nets  Timed automata + Parameters  Games and controller synthesis

Open Problems  There is no “final” answer to “what is the right class of timed languages”  Perturbation by adding drifts to clocks?  Are there subclasses of timed automata for which reachability is less than PSPACE  Automata with “small” strongly-connected components  Games on weighted timed graphs  See a recent paper ABM04 [ICALP]