Push Down Automata That Flip Their Stacks Presented By, Bhargavi Belathur Ramalingaiah.

Slides:



Advertisements
Similar presentations
Restricted Machines Presented by Muhannad Harrim.
Advertisements

Chapter 5 Pushdown Automata
Pushdown Automata Section 2.2 CSC 4170 Theory of Computation.
1 Pushdown Automata (PDA) Informally: –A PDA is an NFA-ε with a stack. –Transitions are modified to accommodate stack operations. Questions: –What is a.
THE CHURCH-TURING T H E S I S “ TURING MACHINES” Pages COMPUTABILITY THEORY.
C O N T E X T - F R E E LANGUAGES ( use a grammar to describe a language) 1.
Pushdown Automata CPSC 388 Ellen Walker Hiram College.
Introduction to Computability Theory
1 Introduction to Computability Theory Lecture7: PushDown Automata (Part 1) Prof. Amos Israeli.
Costas Busch - RPI1 Pushdown Automata PDAs. Costas Busch - RPI2 Pushdown Automaton -- PDA Input String Stack States.
Theory of Computation What types of things are computable? How can we demonstrate what things are computable?
Courtesy Costas Busch - RPI1 Pushdown Automata PDAs.
Foundations of (Theoretical) Computer Science Chapter 2 Lecture Notes (Section 2.2: Pushdown Automata) Prof. Karen Daniels, Fall 2009 with acknowledgement.
Fall 2004COMP 3351 Pushdown Automata PDAs. Fall 2004COMP 3352 Pushdown Automaton -- PDA Input String Stack States.
CS 490: Automata and Language Theory Daniel Firpo Spring 2003.
Fall 2005Costas Busch - RPI1 Pushdown Automata PDAs.
Grammars, Languages and Finite-state automata Languages are described by grammars We need an algorithm that takes as input grammar sentence And gives a.
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.
CSCI 2670 Introduction to Theory of Computing September 21, 2005.
CS490 Presentation: Automata & Language Theory Thong Lam Ran Shi.
1 An Introduction to Formal Languages and Automata Provided by : Babak Salimi webAdd:
CSE202: Introduction to Formal Languages and Automata Theory Chapter 9 The Turing Machine These class notes are based on material from our textbook, An.
Pushdown Automata CS 130: Theory of Computation HMU textbook, Chap 6.
Pushdown Automata (PDAs)
Introduction to CS Theory Lecture 15 –Turing Machines Piotr Faliszewski
Push-down Automata Section 3.3 Fri, Oct 21, 2005.
THE CHURCH-TURING T H E S I S “ TURING MACHINES” Part 1 – Pages COMPUTABILITY THEORY.
Complexity and Computability Theory I Lecture #11 Instructor: Rina Zviel-Girshin Lea Epstein.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
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.
Foundations of (Theoretical) Computer Science Chapter 2 Lecture Notes (Section 2.2: Pushdown Automata) Prof. Karen Daniels, Fall 2010 with acknowledgement.
Lecture 11UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 11.
CSCI 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Pushdown.
Lecture 14 Push Down Automata (PDA) Topics:  Definition  Moves of the PDA  Languages of the PDA  Deterministic PDA’s June 18, 2015 CSCE 355 Foundations.
Donghyun (David) Kim Department of Mathematics and Physics North Carolina Central University 1 Chapter 2 Context-Free Languages Some slides are in courtesy.
1 Turing Machines - Chap 8 Turing Machines Recursive and Recursively Enumerable Languages.
Lecture 16b Turing Machines Topics: Closure Properties of Context Free Languages Cocke-Younger-Kasimi Parsing Algorithm June 23, 2015 CSCE 355 Foundations.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Pushdown.
Pushdown Automata Hopcroft, Motawi, Ullman, Chap 6.
Copyright © Curt Hill Other Automata Pushdown through Turing machines.
Summary of Previous Class There are languages that are not decidable –(we have not proved this yet) Why not extend Turing machines just as we did with.
1 8.4 Extensions to the Basic TM Extended TM’s to be studied: Multitape Turing machine Nondeterministic Turing machine The above extensions make no increase.
1 Unit – 5 : STATE MACHINES Syllabus: Languages and Grammars – Finite State Machines State machines and languages – Turing Machines – Computational Complexity.
CS6800 Advance Theory of Computation Spring 2016 Nasser Alsaedi
CSCI 2670 Introduction to Theory of Computing September 22, 2004.
8. Introduction to Turing Machines
Pushdown Automata PDAs
Pushdown Automata PDAs
Pushdown Automata PDAs
Pushdown Automata PDAs
PUSHDOWN AUTOMATA. PUSHDOWN AUTOMATA Hierarchy of languages Regular Languages  Finite State Machines, Regular Expression Context Free Languages 
Theory of Computation Lecture #27-28.
COSC 3340: Introduction to Theory of Computation
Principles of Computing – UFCFA3-30-1
Summary.
By John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman
8. Introduction to Turing Machines
Non Deterministic Automata
Context-Free Languages
Pushdown automata a_introduction.htm.
CS21 Decidability and Tractability
Decidability and Tractability
… NPDAs continued.
Pushdown automata The Chinese University of Hong Kong Fall 2011
Recap lecture 37 New format for FAs, input TAPE, START, ACCEPT , REJECT, READ states Examples of New Format of FAs, PUSHDOWN STACK , PUSH and POP states,
COSC 3340: Introduction to Theory of Computation
Presentation transcript:

Push Down Automata That Flip Their Stacks Presented By, Bhargavi Belathur Ramalingaiah

Topics to be covered  Introduction  Push Down Automata  Formal Model/Definition  A Hierarchy of Languages  Conclusion

Introduction  A pushdown automata is a finite automata equipped with an auxiliary storage device in the form of stack.  An additional power to the automata by allowing it to flip stacks, it allows the automata to read and write at both ends of the stack-double ended queue.  De-queue can simulate two stacks and hence the computational model becomes equivalent to the Turing machine model.

Push Down Automata  It is like a NFA but has an extra component called stack.  Stack has an unlimited memory and restricted access.  Access to the stack, for both reading and writing, done only at the top (LIFO) input NFA PDA Stack ` State control aabb X Y Z.. State control aabb

PDA P with {WW R : W belongs to {0,1} * }, as per class note

Formal Model /Definition of Flip stack PDA: The formal computational model is a flip stack pushdown automata(FPDA) defined as follows,  The FPDA is defined by a six-tuple PDA P= (Q, Σ,Γ,δ,q0,F) Where, Q is a finite set of states, Σ is a finite input alphabet, Γ is a finite stack alphabet, δ is the transition function (A Stack-flip function – ∆) q0 is the initial state, F is the set of final states.  Such that – FPDA F= ( P,∆)

Flip stack Pushdown Automata PDA Flip-PDA aabb Stack control z Y X W.. Stack Control aabb W x Y z

Contd..  The word can be pushed or popped from both the ends when the stack is flipped.  The language can be accepted by FPDA Language L={ww:w ∈ {0,1}*} is not a CFL. Suppose, W = “100” and the stack is flipped once then it becomes double ended queue where we can push or pop from both the ends hence we can pop the word = “100” in a same order hence we can obtain the language “WW” through Flip stack pushdown automata.

 Using FPDA, a hierarchy of languages is defined for k≥0, where k=number of flips allowed:  L(k)={ L:L=L( F(k)), for some FPDA F} and for k unlimited number of flips:  L( ∝ )={L:L = L( F), for some FPDA F) A Hierarchy of Languages

Proposition 3.1  Prove the following: 1. L(0) ≡ CFL 2. L( ∝ ) ≡ All recursively enumerable languages  1. It is clear that a stack that cannot be flipped is equivalent to the stack in a PDA.  2. Proving that the FPDA with infinite flips is equivalent to a Turing Machine is equivalent to proving part 2.

Contd.. PDA with 2-stacks,then it can accept any language as Turing machines. Input S1 Stack S2 State control

Contd..  There is a discussion in the textbook of how a Turing Machine is equivalent to a two-stack PDA. Clearly, a two- stack PDA is equivalent to the FPDA F,where for each movement of P, the machine F will require one stack reversal.  When all the inputs symbols are pushed onto stack S1,once the last symbol of w has been read.  Pop S1 and push the symbols one by one to S2(next state)  Once it’s done,move onto next state and Pop S2  If all inputs are exhausted, input string is accepted.

Turing Machines  Turing machine can simulate k-flips PDA easily. read-write head infinite tape TM has an infinite-input tape for both read write the elements wherein 2- stack PDA is just a special case of a 3-tape TM that uses it’s tapes restricted way. TM is more flexible and accurate model,which can do everything as a real computer do. State control AAB---…

Theorem 3.2 The language class (0) is properly contained in the language class (1). Show that L ∈ L(1). In other words, that it can be described by a PDA that flips its stack once.  When the stack is flipped once,given string of the form ww,the FPDA accepts it as proved in earlier slide. Thus L ∈ L(1).

Contd..  L(1) proves that L={ww:w ∈ {0,1}*} accepted FPDA.  CFL= L(0) ⊆ L(1) ⊆ L(2) ⊆... L ⊆ ( ∝ )=r.e. (recursively enumerable)  It’s known that CFL=L(0) And also L(k) ⊆ L(k+1) wherein Languages which are in L(k+1) could not be in L(k),but L(k+1) consists of L(k) and also defines extra language.

How do we show that each language class in the hierarchy is non- empty?! For each k, define a language Lk as follows:  L0 = {x1x1r : x1 ∈ {0,1}*}, as proved earlier  L1 = {x1x1 : x1 ∈ {0,1}*}, as proved earlier  L2 = {x1x2x1x2r : x1, x2 ∈ {0,1}*}  L3 = {x1x2x3x1x3x2r : x1, x2, x3 ∈ {0,1}*} …  L2t = {x1x2 …x2t x1x2tx2rx2t-1r… xtxt+1r : x ∈ i {0,1}*} (even)  L2t+1 = {x1x2… x2t+1x1x2t+1rx2rx2tr…xt-1x2txt+1r : x ∈ i {0,1}*} (odd)

Contd..  Each language class in the hierarchy is non empty as each levels will define the language for their levels.  Each level will define the previous levels and also with extra sync.  Suppose, if L(k) defines k then L(k+1) defines L(k) plus additional languages hence each levels in hierarchy is non empty.

 Turing Machines RE

Conclusion  Stack with no flips is equivalent to machines that produce Context Free Languages.  Stack with infinite flips is equivalent to machines that produce recursively enumerable languages (Turing Machine).  A hierarchy of languages can be formed where the languages with no flips ( L(0)) is contained within languages with one flip, two flips, etc. ( L(1), L(2)... )

Reference 1.Pushdown automaton with the ability to flip it’s stack paper by Palash Sarkar : 2.Introduction to Automata Theory, Languages, and Computation by John E. Hopcroft,Rajeev Motwani and Jeffrey D. Ullman. 3.Class notes

Thank You!