- 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
What are different types of finite automata?
Finite automata is an abstract computing device. It is a mathematical model of a system with discrete inputs, outputs, states and a set of transitions from state to state that occurs on input symbols from the alphabet Σ.
Formal definition of Finite Automata
Finite automata is defined as a 5-tuples
M=(Q, Σ, δ,q0,F)
Where,
- Q: Finite set called states.
- Σ: Finite set called alphabets.
- δ: Q × Σ → Q is the transition function.
- q0 ∈ Q is the start or initial state.
- F: Final or accept state.
Types
The different types of Finite Automata are as follows −
- Finite Automata without output
- Deterministic Finite Automata (DFA).
- Non-Deterministic Finite Automata (NFA or NDFA).
- Non-Deterministic Finite Automata with epsilon moves (e-NFA or e-NDFA).
- Finite Automata with Output
- Moore machine.
- Mealy machine.
Definition of different automata (DFA)
A Deterministic Finite automata is defined as a 5-tuples
M=(Q, Σ, δ,q0,F)
Where,
- Q: Finite set called states.
- Σ: Finite set called alphabets.
- δ: Q × Σ → Q is the transition function.
- q0 ∈ Q is the start or initial state.
- F: Final or accept state.
Non-deterministic finite automata (NFA)
NFA also have five states which are same as DFA, but with different transition function, as shown follows −
δ: Q X Σ -> 2Q
Non-deterministic finite automata is defined as a 5 tuple,
M=(Q, Σ, δ,q0,F)
Where,
- Q: Finite set of states
- Σ: Finite set of the input symbol
- q0: Initial state
- F: Final state
- δ: Transition function: Q X Σ -> 2Q
Mealy Machine
The Mealy machine described by 6 tuples (Q, q0, Σ, O, δ, λ')
Where,
- Q: Finite set of states
- q0: Initial state of machine
- Σ: Finite set of input alphabet
- O: Output alphabet
- δ: Transition function where Q × Σ → Q
- λ': Output function where Q × Σ →O
Moore Machine
Moore machine described by 6 tuples (Q, q0, Σ, O, δ, λ)
where,
- Q: Finite set of states
- q0: Initial state of machine
- Σ: Finite set of input symbols
- O: Output alphabet
- δ: Transition function where Q × Σ → Q
- λ: Output function where Q → O
Advertisements