270 likes | 373 Views
COSC 3340: Introduction to Theory of Computation. University of Houston Dr. Verma Lecture 11. Push Down Automaton (PDA). Language Acceptor Model for CFLs It is an NFA with a stack. Finite State control. Input. Accept/Reject. Stack. PDA (contd.). In one move the PDA can :
E N D
COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 11 UofH - COSC 3340 - Dr. Verma
Push Down Automaton (PDA) • Language Acceptor Model for CFLs • It is an NFA with a stack. Finite State control Input Accept/Reject Stack UofH - COSC 3340 - Dr. Verma
PDA (contd.) • In one move the PDA can : • change state, • consume a symbol from the input tape or ignore it • pop a symbol from the stack or ignore it • push a symbol onto the stack or not • A string is accepted provided the machine when started in the start state consumes the string and reaches a final state. UofH - COSC 3340 - Dr. Verma
PDA (contd.) • If PDA in state q can consume u, pop x from stack, change state to p, and push w on stack we show it as u, x w q0 q1 u, x ; w In JFLAP UofH - COSC 3340 - Dr. Verma
Example of a PDA • PDA L = {anbn|n 0} Push S to the stack in the beginning and then pop it at the end before accepting. UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
JFLAP Simulation UofH - COSC 3340 - Dr. Verma
Definition of PDA • Formally, a PDAM = (K, , , , s, F), where • K -- finite set of states • -- is the input alphabet • -- is the tape alphabet • sK -- is the start state • FK -- is the set of final states • (K X X ) X (K X ) UofH - COSC 3340 - Dr. Verma
Definition of L(M) • Define * as: (1) *(q, w, x) = {(q, w, x)} {(p, w, x) | ((q, , ), (p, )) } (2) *(q, uv, xy) = U {*(p, v, wy) | ((q, u, x), (p, w)) } [at least one of u, x, w is not equal to ] • i.e., first compute * for all successor configurations and then take the union of all those sets • Macceptsw if (f, , x) in *(s, w, ) • Alternative: if (f, , )in *(s, w, ) [we use] • L(M) = {w* | M accepts w} UofH - COSC 3340 - Dr. Verma
Example • What is L(M)? Push S to the stack in the beginning and then pop it at the end before accepting. UofH - COSC 3340 - Dr. Verma