Push Down Automata
Push Down Automata
Stack
For push
Top d
c
Stack
For pop a
Top
b
Stack
Component of push down automata
A PDA is described by:
1. A finite set of states (Q, typically).
2. An input alphabet (Σ, typically).
3. A stack alphabet (Γ, typically).
4. A transition function (δ, typically).
5. A start state (q0, in Q, typically).
6. A start symbol (Z0, in Γ, typically).
7. A set of final states (F ⊆ Q, typically).
9
Actions of the Example PDA
000111
Z0
10
Actions of the Example PDA
00111
X
Z0
11
Actions of the Example PDA
0111
X
X
Z0
12
Actions of the Example PDA
111
X
X
X
Z0
13
Actions of the Example PDA
11
X
X
Z0
14
Actions of the Example PDA
1
X
Z0
15
Actions of the Example PDA
Z0
16
Actions of the Example PDA
Z0
17
Type of push down Automata
There are two types of push down automata
1. Non deterministic push down automata (NPDA)
2. Deterministic push down automata (DPDA)
Non deterministic push down automata (NDPA) : A
NDPA is a PDA that can be in multiple states at the
same time, and it can be transition with the same
input symbol and top of the stack.
Deterministic push down automata (DPDA): A DPDA
is a PDA that can only be in one state at a time , and it
can transition to top of the stack.
Deterministic Push down Automata
Use of PDA
Push down automata is used in several fields,
including computer science and artificial intelligence.
They are used to recognize and generate context –free
languages, which are used in natural language
processing and grammar analysis.
In computer science, push down automata are used to
design and analyze programming languages and
complier. They are also used in the theory of
computation to study the limits of computation and
the complexity of algorithms.
Conclusion
In summery, push down automata are type of
automata are a type of finite state machine that are
used to recognize context free language. They consist
of a finite set of states, a stack ,an input tape and a set
of transition rules. They are used in several fields,
including computer science and artificial intelligence.
It is important tools for studying the limits of
computation.