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.

Slides:



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

Chapter 5 Pushdown Automata
Lecture 24 MAS 714 Hartmut Klauck
Pushdown Automata Section 2.2 CSC 4170 Theory of Computation.
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.
1/25 An Infinite Automaton Characterization of Double Exponential Time Gennaro Parlato University of Illinois at Urbana-Champaign Università degli Studi.
Reducing Context-bounded Concurrent Reachability to Sequential Reachability Gennaro Parlato University of Illinois at Urbana-Champaign Salvatore La Torre.
The Tree-Width of auxiliary storage Gennaro Parlato (University of Southampton, UK) Joint work: P. Madhusudan – UIUC, USA.
Pushdown Automata Part II: PDAs and CFG Chapter 12.
Introduction to Computability Theory
1 Introduction to Computability Theory Lecture12: Decidable Languages Prof. Amos Israeli.
On Sequentializing Concurrent Programs Ahmed Bouajjani LIAFA, University of Paris 7, France LIAFA, University of Paris 7, France Michael Emmi LIAFA, University.
1 Introduction to Computability Theory Lecture2: Non Deterministic Finite Automata Prof. Amos Israeli.
Introduction to Computability Theory
1 Introduction to Computability Theory Lecture7: PushDown Automata (Part 1) Prof. Amos Israeli.
Introduction to Computability Theory
The Tree-Width of automata with auxiliary storage Gennaro Parlato (LIAFA, CNRS, Paris, France) joint work with P. Madhusudan (Univ of Illinois at Urbana-Champaign,
1 … NPDAs continued. 2 Pushing Strings Input symbol Pop symbol Push string.
1 Introduction to Computability Theory Lecture2: Non Deterministic Finite Automata (cont.) Prof. Amos Israeli.
1 Normal Forms for Context-free Grammars. 2 Chomsky Normal Form All productions have form: variable and terminal.
Foundations of (Theoretical) Computer Science Chapter 2 Lecture Notes (Section 2.2: Pushdown Automata) Prof. Karen Daniels, Fall 2009 with acknowledgement.
1/25 Context-Bounded Analysis of Concurrent Queue Systems Gennaro Parlato University of Illinois at Urbana-Champaign Università degli Studi di Salerno.
A temporal logic for calls and returns P. Madhusudan University of Pennsylvania Joint work with Rajeev Alur and Kousha Etessami Talk at HCES 2004, Philadelphia.
CS5371 Theory of Computation Lecture 8: Automata Theory VI (PDA, PDA = CFG)
Theory of Computing Lecture 22 MAS 714 Hartmut Klauck.
Fall 2005Costas Busch - RPI1 Pushdown Automata PDAs.
1 Pushdown Automata PDAs. 2 Pushdown Automaton -- PDA Input String Stack States.
CS 3240: Languages and Computation Pushdown Automata & CF Grammars NOTE: THESE ARE ONLY PARTIAL SLIDES RELATED TO WEEKS 9 AND 10. PLEASE REFER TO THE TEXTBOOK.
Scope-Bounded Pushdown Languages Salvatore La Torre Università degli Studi di Salerno joint work with Margherita Napoli Università degli Studi di Salerno.
Regular Model Checking Ahmed Bouajjani,Benget Jonsson, Marcus Nillson and Tayssir Touili Moran Ben Tulila
CSCI 2670 Introduction to Theory of Computing September 21, 2005.
Languages of nested trees Swarat Chaudhuri University of Pennsylvania (with Rajeev Alur and P. Madhusudan)
Scope-Bounded Pushdown Languages Salvatore La Torre Università degli Studi di Salerno joint work with Margherita Napoli Università degli Studi di Salerno.
The Tree-Width of Decidable Problems 1 Gennaro Parlato (U. Southampton, UK) joint work with: P. Madhusudan (UIUC, USA) Salvatore La Torre (U. Salerno,
TM Design Universal TM MA/CSSE 474 Theory of Computation.
Visibly Pushdown Languages Philippe Giabbanelli CMPT 894 – Spring 2008.
Pushdown Automata CS 130: Theory of Computation HMU textbook, Chap 6.
Scope-bounded Multistack Pushdown Systems: - fixed-point - sequentialization - tree-width 1 Salvatore La Torre Gennaro Parlato (U. Salerno, Italy) (U.
Pushdown Automata (PDAs)
Computing languages by (bounded) local sets Dora Giammarresi Università di Roma “Tor Vergata” Italy.
Algorithmic Software Verification Rajeev Alur University of Pennsylvania ARO Review, May 2005.
Foundations of (Theoretical) Computer Science Chapter 2 Lecture Notes (Section 2.2: Pushdown Automata) Prof. Karen Daniels, Fall 2010 with acknowledgement.
Event-Clock Visibly Pushdown Automata Mizuhito Ogawa (JAIST) with Nguyen Van Tang SOFSEM
The decidability of Presburger Arithmetic By Guillermo Guillen 04/13/05 Dr. Smith COT 6421 FIU Spring 2005.
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Pushdown.
Pushdown Automata Hopcroft, Motawi, Ullman, Chap 6.
Grammar Set of variables Set of terminal symbols Start variable Set of Production rules.
Complexity and Computability Theory I Lecture #5 Rina Zviel-Girshin Leah Epstein Winter
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,
1 Chapter Pushdown Automata. 2 Section 12.2 Pushdown Automata A pushdown automaton (PDA) is a finite automaton with a stack that has stack operations.
CS6800 Advance Theory of Computation Spring 2016 Nasser Alsaedi
Lecture 11  2004 SDU Lecture7 Pushdown Automaton.
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.
On Sequentializing Concurrent Programs
CSE 105 theory of computation
Sequentializing Parameterized Programs
Deterministic FA/ PDA Sequential Machine Theory Prof. K. J. Hintz
Pushdown Automata PDAs
Pushdown Automata PDAs
Pushdown Automata PDAs
PDAs Accept Context-Free Languages
Pushdown Automata PDAs
Chapter 7 PUSHDOWN AUTOMATA.
Turing Machines Acceptors; Enumerators
Summary.
CSE322 CONSTRUCTION OF FINITE AUTOMATA EQUIVALENT TO REGULAR EXPRESSION Lecture #9.
… NPDAs continued.
Chapter 1 Regular Language
Presentation transcript:

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. Madhusudan (U. of Illinois, U.S.A.)

What is this talk about?  Our work is motivated by the verification of concurrent programs with recursive procedures communicating through shared variables  Reachability/Emptiness is undecidable for such programs  Restricted reachability has gained a lot of attention in the literature for programs with variable ranging over finite domain  Reachability within a fixed number of context-switches is decidable  Many errors manifest themselves within few context-switches  We undertake a language- and automata-theoretic study of concurrent programs under bounded context-switches  Multi-stack Pushdown Automata are a natural model for such programs

Multi-stack Visibly Pushdown Automata (MVPAs) … stack-1stack-2stack-n Finite Control Finite number of states - including an initial state & set of final states Moves only the symbol a - Internal move for stack i if a  Int i - Push move onto stack i if a  Push i - Pop move from stack i if a  Pop i The symbol of ∑ determines the kind of move to make VISIBLE ALPHABET Each stack has its own alphabet - Push i, Pop i, Int i (disjoint sets) ∑ i = (Push i U Pop i U Int i ) is the alphabet of stack i Symbols describe the behavior of the automaton ∑ i and ∑ j are pairwise disjoint for i  j ∑ = ∑ 1 U∑ 2 U … U ∑ n is the input alphabet

Bounded round executions  We consider only executions going through k rounds A round is a word in the language Round = ∑ 1 +. ∑ 2 +. … ∑ n + Round k is the set of all k-round words  A k-round word can be seen as a matrix A row is a round The concatenation of the word on column i is the stack i projection of the input word w round 1 w 11 w 12 w 13 … w 1n round 2 w 21 w 22 w 23 … w 2n … … … … … round k w k1 w k2 w k3 … w kn w= w 11 w 12 w 13 … w 1n w 21 w 22 w 23 … w 2n …. w k1 w k2 w k3 … w kn

A k-round execution can be seen as w 11 w 21 w 31 w k1 w 12 w 22 w 32 w k2 w 1n w 2n w 3n w kn round 1 round 2 round 3 round k stack 1stack 2stack n q 11 q 21 q 31 q k1 q’ 12 q’ 22 q’ 32 q’ k2 q’ 11 q’ 21 q’ 31 q’ k1 q 12 q 22 q 32 q k2 q 1n q 2n q 3n q kn q’ 1n q’ 2n q’ 3n q’ kn

Example: a language recognized by a 2-round MVPA  L= { a i x j b i y j | i,j > 0 } Push $ onto stack 1 reading a onto stack 2 reading x Pop $ form stack 1 reading b from stack 2 reading y (The first symbol pushed onto each stack is encoded differently to check later whether the stack is empty)  L can be accepted by a 2-round MVPA  L is not context-free language  All recognized languages are context-sensitive (La Torre, Madhusudan, Parlato, LICS’07)

Bounded-round MVPLs Class of languages accepted by bounded-round MVPAs  A sub-class of context-sensitive languages  Visibily implies closure under Union Intersection  Nondeterministic and deterministic versions are equivalent  Closed under complement (through Determinizability)  Decidable Emptiness and Membership problems  Universality and inclusion problems are decidable closure under Boolean operations decidability of the emptiness problem

Related Work  Visibly pushdown automata (Alur, Madhusudan, STOC’04)  Bounded-phase multi-stack visibly push-down automata (not determinizable) (La Torre, Madhusudan, Parlato, LICS’07)  Visibly ordered pushdown automata (NOT determinizable, wrong determinizability proof is given) (Carotenuto, Murano, Peron, DLT’07)

Determinization (main technical result)

Deterministic bounded-round VMPAs  A VMPA is deterministic if for any state, and for any input symbol at most one move is allowed  Bounded-round VMPAs are determinizable: If A is a k-round MVPA, then there exists a k-round MVPA A D such that L(A)=L(A D ) Boundedness of the number of rounds is crucial for our proof The class of MVPAs is not closed under determinization (La Torre, Madhusudan, Parlato, LICS’07)  Determinization construction …

A run can be seen as … w 11 w 21 w 31 w k1 w 12 w 22 w 32 w k2 w 1n w 2n w 3n w kn round 1 round 2 round 3 round k stack 1stack 2stack n q 11 q 21 q 31 q k1 q’ 12 q’ 22 q’ 32 q’ k2 q’ 11 q’ 21 q’ 31 q’ k1 q 12 q 22 q 32 q k2 q 1n q 2n q 3n q kn q’ 1n q’ 2n q’ 3n q’ kn … … … …… …

Interfaces w 1j w 2j w 3j w kj round 1 round 2 round 3 round k IN i q’ 1i q’ 2ii q’ 3i q’ ki q 1i q 2i q 3i q ki An interface of stack i Is definded w.r.t. a word of stack i w 1i # w 2i # w 3i # … # w ki (# represents a context-switch) It corresponds to the pair (IN i, OUT i ) where - In i = ( q 1j, q 2j, q 3j, … q kj ) - OUT i = ( q’ 1j, q’ 2j, q’ 3j, … q’ kj ) Interfaces of stack i can be computed by a non deterministic VPA A i STATES: (q, Interface, round) -q is any A state -Interface is an encoding of the interface computed until now - round tracks the round under simulation MOVES: - All A’s moves on stack i symbols - internal moves on the fresh symbol # -update q with any q’ (guess the state at next round) -update Interface storing q and q’ -increment round … … … … OUT i

Why consider interfaces w 11 w 21 w 31 w k1 w 12 w 22 w 32 w k2 w 1n w 2n w 3n w kn round 1 round 2 round 3 round k stack 1stack 2stack n q 11 q 21 q 31 q k1 q’ 12 q’ 22 q’ 32 q’ k2 q’ 11 q’ 21 q’ 31 q’ k1 q 12 q 22 q 32 q k2 q 1n q 2n q 3n q kn q’ 1n q’ 2n q’ 3n q’ kn … … … …… … Theorem (accepting condition): A k-round word w is accepted by A iff there is an interface Int i, one for each stack i on the word w i, such that Int 1 composes Int 2 composes … composes Int n Int n wraps Int 1 q 11 is the initial state & q’ kn is a final state

Construction of a deterministic MVPA A D  A i can be determinized (A i D ) (Alur, Madhusudan, STOC’04)  Every A i D state encodes the set of all possible interfaces on any k-round word w i (w i is the subword of w composed only by symbols of stack i)  The deterministic automaton A D simulates in parallel all the A i D independently, switching from one to another reading the input word It does not care if interfaces compose/wrap Composition and wrapping is checked only at the end of the computation for acceptance (see accepting condition)

Idea of the simulation w 11 w 21 w 31 w k1 w 12 w 22 w 32 w k2 w 1n w 2n w 3n w kn round 1 round 2 round 3 round k stack 1stack 2stack n q 11 q 21 q 31 q k1 q’ 12 q’ 22 q’ 32 q’ k2 q’ 11 q’ 21 q’ 31 q’ k1 q 12 q 22 q 32 q k2 q 1n q 2n q 3n q kn q’ 1n q’ 2n q’ 3n q’ kn … … … …… …  Reading a symbol of w ij, except the first one, simulate A j D  Reading the first symbol of w ij, simulate in parallel (# is not in ∑ ) A j-1 D on the symbol #, and A j D on the first symbol of w ij A D is deterministic

… going back to the construction of A D  A i can be determinized (A i D ) (Alur, Madhusudan, STOC’04)  Every A i D state encodes the set of all possible interfaces on the k-round word w i  The deterministic automaton A D simulates in parallel all the A i D switching from one A i D to another reading the input word  After reading w every A i D has computed the set of all possible interfaces on w i  Final states: A D accepts a word w iff there is a set of interfaces, one for each stack, that satisfy the accepting condition

Conclusion

 We have defined a robust sub-class of context-sensitive languages Determinazable  (we conjecture that finding a larger class in terms of patterns is unlikely) Closed under all Boolean operations Decidable emptiness, universality and inclusion problems MSO characterization, Parikh theorem (La Torre, Madhusudan, Parlato, LICS’07)  Same results if we consider bounded context-switch words instead of bounded round words