# Distinguish between Finite Automata and Turing Machine

Data Structure AlgorithmsComputer ScienceComputers

Best Seller

89 Lectures 11.5 hours

#### Practical Data Science using Python

22 Lectures 6 hours

#### Data Science and Data Analysis with Python

50 Lectures 3.5 hours

Before understanding the differences between the finite automata (FA) and the turing machine (TM), let us learn about these concepts.

## Finite Automata

Finite automata is an abstract computing device

It is a mathematical model of a system with discrete inputs, outputs, states and set of transitions from state to state that occurs on input symbol from alphabet Σ

## Finite Automata Representation

FA can be represented as following in the theory of computation (TOC) −

• Graphical (Transition diagram)

• Tabular (Transition table)

• Mathematical (Transition function)

## Formal definition of Finite Automata

A Finite automata is a five 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

## Turing Machine

Turing machines are more powerful than both finite automata and pushdown automata. They are as powerful as any computer we have ever built.

## Formal Definition of Turing Machine

A Turing machine can be formally described as seven tuples ( Q,X, Σ,δ,q0,B,F)

Where,

• Q is a finite set of states

• X is the tape alphabet

• Σ is the input alphabet

• δ is a transition function: δ:QxX→QxXx{left shift, right shift}

• q0 is the initial state

• B is the blank symbol

• F is the final state.

## Differences

The major differences between Finite automata and Turing machine are given below −

Sr. no.Finite State machineTuring machine
1Finite state machines describe the class of regular languages.Turing Machines describe a much larger class of languages, the class of recursively enumerable languages.
2Finite state machines describe a small class of languages where no memory is needed.Turing Machines are the mathematical description of a computer and accept a much larger class of languages than FSMs do.
3Finite state machines have lower computational power than the Turing machine.Turing Machines have has more computational power than FSM
4A finite state machine is just a set of states and transitions. The only memory it has is what state it is in. Thus, the number of memory states is... finite.A Turing machine is a finite state machine plus a tape memory. Each transition may be accompanied by an operation on the tape (move, read, write). Its total possible configurations are arbitrarily large, regardless of the size of the program; it expands towards infinity.
Updated on 15-Jun-2021 12:06:32