Chapter 3 - Automata
Chapter 3 - Automata
CHAPTER 3
Non-Deterministic Finite Automaton
In NDFA, for a particular input symbol, the machine can move to any combination of the states in the machine.
In other words, the exact state to which the machine moves cannot be determined. Hence, it is called Non-
deterministic Automaton. As it has finite number of states, the machine is called Non-deterministic Finite
Machine or Non- deterministic Finite Automaton.
Example
Let a non-
• Q = {a, b, c}
• Σ = {0, 1}
• q0 = {a}
• F={c}
a b
0, 1 0, 1
0 0, 1
NDFA – Graphical Representation
DFAvs NDFA
The following table lists the differences between DFA and NDFA
DFA NDFA
The transition from a state is to a single The transition from a state can be to multiple next
particular next state for each input symbol. states for each input symbol. Hence it is called
Hence it is called deterministic. non-deterministic.
Acceptor (Recognizer)
An automaton that computes a Boolean function is called an acceptor. All the states of an acceptor is either
accepting or rejecting the inputs given to it.
Classifier
A classifier has more than two final states and it gives a single output when it terminates.
Transducer
An automaton that produces outputs based on current input and/or previous state is called a transducer.
Transducers can be of two types:
• Mealy Machine
The output depends both on the current state and the current input.
• Moore Machine
The output depends only on the current state.
A string is accepted by a DFA/NDFA iff the DFA/NDFA starting at the initial state ends in an
accepting state (any of the final states) after reading the string wholly.
A string S is accepted by a DFA/NDFA (Q, Σ, δ, q0, F), iff
δ*(q0, S) ∈ F
The language L accepted by DFA/NDFA is
{S | S ∈ Σ* and δ*(q0, S) ∈ F}
A string S′ is not accepted by a DFA/NDFA (Q, Σ, δ, q0, F), iff
δ*(q0, S′) ∉ F
The language L′ not accepted by DFA/NDFA (Complement of accepted language L) is {S
| S ∈ Σ* and δ*(q0, S) ∉ F}
Example
Let us consider the DFA shown in Figure 1.3. From the DFA, the acceptable strings can be
derived.
0 1