- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to convert context free grammar to push down automata?
A context-free grammar (CFG) consisting of a finite set of grammar rules is a quadruple (V, T, P, S) where,
V is a variable (non terminals).
T is a set of terminals.
P is a set of rules, P: V→ (V ∪ T)*, i.e., the left-hand side of the production rules P does have any right context or left context.
S is the start symbol.
Push down automata
A push down automata (PDA) consists of the following −
A finite non-empty set of states denoted by Q.
A finite non empty set of input symbols denoted by∑.
A finite non empty set of push down symbol ┌.
A special state is called the initial state denoted by q0.
A special symbol called the initial symbol on the push down store denoted by Z0.
The set of the final subset of Q denoted by F.
The transition function ∂= QX(∑U{^})X┌ to the set of finite subsets of QX┌*.
Example
The CFG is as follows −
S->aSa
S->aSa
S->c
Design a Push down automata to accept the string
To convert CFG to PDA first write the production rules and then pop.
The rules for the conversion are as follows −
S(q0, ɛ, ɛ)=(q0, ɛ)
S(q0, ɛ,S)=(q0,aSa)
S(q0, ɛ,S)=(q0,bsb)
(q0, ɛ,S)=(q0,c)
Now start pop to convert
S(q0,a,a)=(q1, ɛ)
S(q1,b,b)=(q2, ɛ)
S(q2,c,c)=(q3, ɛ)
Transition table
The transition table with regards to converting CFG to PDA is as follows −
Sno | State | Unread input | Stack | Transition |
---|---|---|---|---|
1 | q0 | abbccbba | Ε | 1 |
2 | q0 | abbcbba | S | 1 |
3 | q0 | abbcbba | aSa | 2 |
4 | q1 | bbcbba | Sa | 5 |
5 | q0 | bbcbba | bSba | 3 |
6 | q2 | bcbba | Sba | 6 |
7 | q0 | bcbba | bsbba | 3 |
8 | q2 | cbba | Sbba | 6 |
9 | q0 | cbba | cbba | 4 |
10 | q3 | bba | bba | 7 |
11 | q2 | ba | ba | 6 |
12 | q1 | ɛ | ɛ | 5 |
Whenever you reach the final state by using PDA then we can say that the context free grammar converts into Push down automata.
- Related Articles
- Convert the given Context free grammar to CNF
- How to generate the language for context free grammar?
- What is Context-Free Grammar?
- Compare Push down automata and Linear bounded automata
- What is Push down automata in TOC?
- What is context free grammar? Explain with examples
- Explain about CYK Algorithm for Context Free Grammar
- Explain removing unit productions in context free grammar
- Explain non-deterministic push down automata in TOC?
- Explain the simplification of context free grammar in TOC
- Generate a CNF for a given context free grammar
- Generate a Context-free grammar for the language L = {anbm| m≠n}?
- Explain if the CFG is recognized by Non-deterministic push down automata
- How to convert right linear grammar to left linear grammar?
- How to convert left linear grammar to right linear grammar?
