Event-Clock Visibly Pushdown Automata Mizuhito Ogawa (JAIST) with Nguyen Van Tang SOFSEM 2009.1.27.

Slides:



Advertisements
Similar presentations
Timed Automata Rajeev Alur University of Pennsylvania SFM-RT, Bertinoro, Sept 2004.
Advertisements

Theory of Computation CS3102 – Spring 2014 A tale of computers, math, problem solving, life, love and tragic death Nathan Brunelle Department of Computer.
Chapter 5 Pushdown Automata
Lecture 24 MAS 714 Hartmut Klauck
Deterministic Finite Automata (DFA)
Pushdown Automata Chapter 12. Recognizing Context-Free Languages Two notions of recognition: (1) Say yes or no, just like with FSMs (2) Say yes or no,
Pushdown Automata Chapter 12. Recognizing Context-Free Languages We need a device similar to an FSM except that it needs more power. The insight: Precisely.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen Department of Computer Science University of Texas-Pan American.
Determinization of Büchi Automata
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.
CS21 Decidability and Tractability
1 Introduction to Computability Theory Lecture3: Regular Expressions Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture12: Decidable Languages Prof. Amos Israeli.
Regular operations Sipser 1.1 (pages 44 – 47). CS 311 Mount Holyoke College 2 Building languages If L is a language, then its complement is L’ = {w |
Finite Automata Great Theoretical Ideas In Computer Science Anupam Gupta Danny Sleator CS Fall 2010 Lecture 20Oct 28, 2010Carnegie Mellon University.
Reducibility Sipser 5.1 (pages ). CS 311 Fall Reducibility.
1 Introduction to Computability Theory Lecture4: Regular Expressions Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture3: Regular Expressions Prof. Amos Israeli.
CFG => PDA Sipser 2 (pages ).
CFG => PDA Sipser 2 (pages ). CS 311 Fall Formally… A pushdown automaton is a sextuple M = (Q, Σ, Γ, δ, q 0, F), where – Q is a finite set.
Languages. A Language is set of finite length strings on the symbol set i.e. a subset of (a b c a c d f g g g) At this point, we don’t care how the language.
On the Use of Automata Techniques to Decide Satisfiability Mia Minnes May 3, 2005.
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
Reachability Analysis for Some Models of Infinite-State Transition Systems Oscar H. Ibarra, Tevfik Bultan, and Jianwen Su Department of Computer Science.
Languages. A Language is set of finite length strings on the symbol set i.e. a subset of (a b c a c d f g g g) At this point, we don’t care how the language.
Today Chapter 1: RE = Regular Languages, nonregular languages RL pumping lemma Chapter 2: Context-Free Languages (CFLs)
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
Model Checking Lecture 5. Outline 1 Specifications: logic vs. automata, linear vs. branching, safety vs. liveness 2 Graph algorithms for model checking.
Nathan Brunelle Department of Computer Science University of Virginia Theory of Computation CS3102 – Spring 2014 A tale.
Great Theoretical Ideas in Computer Science.
A summary of our activities about WSI Philippe Giabbanelli CMPT 894 – Spring 2008.
Basics of automata theory
Languages of nested trees Swarat Chaudhuri University of Pennsylvania (with Rajeev Alur and P. Madhusudan)
DECIDABILITY OF PRESBURGER ARITHMETIC USING FINITE AUTOMATA Presented by : Shubha Jain Reference : Paper by Alexandre Boudet and Hubert Comon.
Visibly Pushdown Languages Philippe Giabbanelli CMPT 894 – Spring 2008.
Pushdown Automata CS 130: Theory of Computation HMU textbook, Chap 6.
Pushdown Automata (PDAs)
Great Theoretical Ideas in Computer Science.
Pushdown Automata Part I: PDAs Chapter Recognizing Context-Free Languages Two notions of recognition: (1) Say yes or no, just like with FSMs (2)
DETERMINISTIC CONTEXT FREE LANGUAGES
Algorithmic Software Verification Rajeev Alur University of Pennsylvania ARO Review, May 2005.
PushDown Automata. What is a stack? A stack is a Last In First Out data structure where I only have access to the last element inserted in the stack.
Deterministic Finite Automata COMPSCI 102 Lecture 2.
An Introduction to Rabin Automata Presented By: Tamar Aizikowitz Spring 2007 Automata Seminar.
1 Pushdown Automata There are context-free languages that are not regular. Finite automata cannot recognize all context-free languages.
Machines That Can’t Count CS Lecture 15 b b a b a a a b a b.
Lecture Notes 
Great Theoretical Ideas in Computer Science for Some.
Algorithms for hard problems Automata and tree automata Juris Viksna, 2015.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen Department of Computer Science University of Texas-Pan American.
Finite Automata Great Theoretical Ideas In Computer Science Victor Adamchik Danny Sleator CS Spring 2010 Lecture 20Mar 30, 2010Carnegie Mellon.
THE CONVENTIONS 2 simple rules: Rule # 1: Rule # 2: RR “move to the right until you find  “ Note: first check. Then move (think of a “while”) “Never.
Pushdown Automata Hopcroft, Motawi, Ullman, Chap 6.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen.
 2004 SDU Lecture4 Regular Expressions.  2004 SDU 2 Regular expressions A third way to view regular languages. Say that R is a regular expression if.
Finite Automata A simple model of computation. 2 Finite Automata2 Outline Deterministic finite automata (DFA) –How a DFA works.
Tree Automata First: A reminder on Automata on words Typing semistructured data.
Lecture 11  2004 SDU Lecture7 Pushdown Automaton.
Pushdown Automata - like NFA-  but also has a stack - transition takes the current state, the current input symbol, and the top-of-the-stack symbol (which.
Recap: Nondeterministic Finite Automaton (NFA) A deterministic finite automaton (NFA) is a 5-tuple (Q, , ,s,F) where: Q is a finite set of elements called.
Deterministic FA/ PDA Sequential Machine Theory Prof. K. J. Hintz
PDAs Accept Context-Free Languages
Turing Machines Acceptors; Enumerators
Hierarchy of languages
Summary.
Timed Automata Formal Systems Pallab Dasgupta Professor,
Great Theoretical Ideas in Computer Science
Closure Properties of Regular Languages
Chapter 1 Regular Language
Instructor: Aaron Roth
Presentation transcript:

Event-Clock Visibly Pushdown Automata Mizuhito Ogawa (JAIST) with Nguyen Van Tang SOFSEM

Model checking as an inclusion problem Paths generated by a model M is those that allowed by a specification S –L( M ) ⊆ L( S ) ⇔ L( M ) ∩ L( S ) C = φ Possible combinations –M, S : Finite Automata –M : Pushdown Automaton, S : Finite Automaton –M, S : Pushdown Automata Possible extensions –Timed constraints ? –S : beyond finite automata ? OK

Timed automata (Alur, et.al. 94) OffOnMenu press next press x:=0 x ≧ 1? x < 1? y:=0 y ≦ 5?; y:=0 y > 5? y ≦ 5?; y:=0 y ≦ 5? y > 5? y ≦ 5? Press quickly twice, it will enter to “menu”. –Add time constraints : e.g., quickly = “less-than 1” –It sleeps (“Off”) when left “more-than 5”. Remark: Time constraints contains integers only. Accepts: (press,2) (press, 2.5) (next,3) (next,4.4) (press,8) Dense time

Decidable properties of Timed Automata Boolean operations –Decidable: Union, intersection, emptiness –Undecidable: Complement, universality (2 clocks) Inclusion L( M ) ⊆ L( S ) –S has ≦ 1 clock : decidable (Ouaknine, et.al. 04) –S has > 1 clocks : undecidable (Alur, et.al. 94)

Event-clock automata (Alur, et.al. 94) q0q0 q1q1 q2q2 a b b x a =1 L 1 = {(a,t 1 )(b,t 2 )…(b,t n )| t n –t 1 =1} q0q0 q1q1 q2q2 a a b y b <1 L 2 ={(a,t 1 )…(a,t n-1 )(b,t n ) | t n – t 1 <1} Def. The event-clock for a ∈ Σ is a pair of clocks x a, y a x a : event-recording ⇔ record time since last “a” y a : event-predicting ⇔ record time until next “a” e.g., e.g., Spec. like “ack must come in 1” can be described.

Properties of ECA Boolean operations –Decidable : all boolean operations. –Determinizable (subset construction works) Language class relation –ECA ⊂ TA (An ECA can be encoded as a TA.) –The class of ECA is incomparable to the class of deterministic TA.

Encoding ECA to TA (Alur, et.al. 94) Event-recording clocks C R = { x a | a ∈ Σ } –Reset x a ∈ C R when “a” is read. Event-predicting clocks C P = { y a | a ∈ Σ } –Let Φ P be the set of all event-predicting constraints. –The set Q of states enlarged to Q×Φ P. –Add fresh clocks z (y a ~c) for each y a ~c ∈ Φ P. yaya c “y a ~c” made“a” read z (y a ~c) 0c 0 Memorize event-predicting constraints “z (y a ~c) ~c is valid”. (i.e., next “a” has not yet read.)

Interval alphabet (D’Souza 03) Notation. Let ν(a i,t i ) be a vector of clock values at t i –uw((a 1,t 1 )…(a n,t n )) = (a 1,I 1 )…(a n,I n ) with ν(a i,t i ) ∈ I i –tw((a 1,I 1 )…(a n,I n )) = { (a 1,t 1 )…(a n,t n ) | ν(a i,t i ) ∈ I i } Lemma. If ν(t i ) depends only on an input timed word –For v ∈ Π*, tw(v) ≠φ implies uw(tw(v)) = v –For a timed word w, w ∈ tw(uw(w)) Def. Interval alphabet Π = Σ× Intv |C Σ | where C Σ = { x a, y a | a ∈ Σ} : clocks Intv ={ [r i,r i ], (r i,r i+1 ), (r n,∞) | 0 ≦ r 1 < … < r n } All integers appearing in event-clock constraints

Untimed Translation q0q0 q2q2 q1q1 a, x a <10 b, y a >5 q0q0 q1q1 (a,((0,5),*)) (a,([0,0],*)) (a,([5,5],*)) (a,((5,10),*)) q0q0 q2q2 (b,(*,(5,10))) (b,(*,[10,10])) (b,(*,(10,∞))) M ut(M) Translate event-clock constraints to interval alphabet e.g., Intv = {[0,0], (0,5), [5,5], (5,10), [10,10], (10,∞)} C = { x a, y a }

Timed Translations a, (5 < x a ∧ x a < 10)? ec(ut(M))ut(M) Translate Interval alphabet to event-clock constraints Lemma. L(ec(ut(M))) = L(M) for an ECA M. q0q0 q2q2 (a,(5,10)) q0q0 q2q2

Model checking as an inclusion problem (again) Paths generated by a model M is those that allowed by a specification S –L( M ) ⊆ L( S ) ⇔ L( M ) ∩ L( S ) C = φ Possible combinations –M, S : Finite Automata –M : Pushdown Automaton, S : Finite Automaton –M, S : Pushdown Automata Possible extensions –Timed constraints ? → Event-clock constraints –S : beyond finite automata ? OK

Visibly Pushdown Automata (Alur, et.al. 04) Visibility implies height-deterministic and synchronous. (Only an input word decides the stack height.) → Product construction (intersection) works! q Y Z q’ X Z aiai Z Y Y a c / X a r / Y Z a c ∈ Σ c (call) a i ∈ Σ i (local) a r ∈ Σ r (return) Classification is universal ( visibility )

VPL examples –{a n b n } (with a ∈ Σ c, b ∈ Σ r ) –Dyck language (well-balanced parantheses) (with left/right parantheses as in Σ c / Σ r ) e.g. (.. [.. (..).. ].. ) OK, (.. [.. {.. ].. }.. ) no. VPL is a proper subclass of DPDA –{a n b a n } is not a VPL. –words with equal number of a and b is not a VPL, e.g., abab, abba, baab, … Visibly pushdown languages (VPL)

Properties of VPA and TVPA (Timed VPA) Boolean operations (of VPA) –Decidable : all boolean operations –Determinizable Boolean operations (of TVPA) –Decidable : union, intersection, emptiness –Undecidable: Complement, universality (1 clock) Inclusion L( M ) ⊆ L( S ) –M,S : (untimed) VPA decidable –M: TVPA, S: TVPA undecidable (Emmi, et.al. 06)

Event-Clock Visibly Pushdown Automata Proof (idea): L(M) ⊆ L(S) ⇔ L(M)∩ L(ec(ut(S) c )) = φ S : ECVPA (untimed translation) → ut(S) : VPA (complement) → ut(S) c : VPA (timed translation) → ec(ut(S) c ) : ECVPA with L(S) c = L(ec(ut(S) c )) Def. ECVPA = VPA + event clock constraints Th 1. The inclusion problem for ECVPAs is decidable.

Inclusion between TVPA and ECVPA Proof (idea) : L(M) ⊆ L(S) ⇔ L(M) ∩ L(S’) = φ S : ECVPA (untimed translation) → ut(S) : VPA (complement) → ut(S) c : VPA (timed translation) → ec(ut(S) c ) : ECVPA (encoding EC-constraints) → S’ : TVPA with L(S) c = L(S’) Th 2. For a TVPA M and an ECVPA S, the inclusion problem L(M) ⊆ L(S) is decidable.

Conclusion We showed that L(M) ⊆ L(S) –M, S: ECVPA decidable –M: TVPA, S: ECVPA decidable Compare : L(M) ⊆ L(S) when S has 1 clock –M, S: TA decidable (Oukline, et.al.04) –M, S: TVPA undecidable (Emmi, et.al. 06) –M, S: Buchi TA undecidable (Abdulla, et.al. 05) Simple untimed / timed translations avoid complex subset construction argument of VPA. –Buchi extensions of ECVPA are straight forward.