# TOC | Introduction of Theory of Computation

**Automata** theory (also known as **Theory Of Computation**) is a theoretical branch of Computer Science and Mathematics, which mainly deals with the logic of computation with respect to simple machines, referred to as automata.

Automata* enables the scientists to understand how machines compute the functions and solve problems. The main motivation behind developing Automata Theory was to develop methods to describe and analyse the dynamic behavior of discrete systems.

Automata is originated from the word “Automaton” which is closely related to “Automation”.

Now, let’s understand the basic terminologies, which are important and frequently used in Theory of Computation.

**Symbol:**Symbol is the smallest building block, which can be any alphabet, letter or any picture.

**Alphabets**(**Σ**)**:**Alphabets are set of symbols, which are always.**finite**

**String:**String is asequence of symbols from some alphabet. String is generally denoted as*finite*and length of a string is denoted as*w*.*|w|*Empty string is the string with zero occurrence of symbols, represented as ε.

**Number of Strings (of length 2) that can be generated over the alphabet {a, b}**-**- -**a a a b b a b b Length of String |w| = 2 Number of Strings = 4**Conclusion:**For alphabet {a, b} with length**n**, number of strings can be generated =**2**.^{n}**Note –**If the number of Σ’s is represented by |Σ|, then number of strings of length n, possible over Σ is**|Σ|**.^{n}**Language:**A language is a*set of strings*, chosen form some Σ* or we can say-**‘**A language is a subset of Σ***‘**. A language which can be formed over ‘ Σ ‘ can be**Finite**or**Infinite**.

__Powers of ‘ Σ ‘ :__

Say Σ = {a,b} then

**Σ ^{0}** = Set of all strings over Σ of length 0. {ε}

**Σ**= Set of all strings over Σ of length 1. {a, b}

^{1}**Σ**= Set of all strings over Σ of length 2. {aa, ab, ba, bb}

^{2}i.e. |Σ

^{2}|= 4 and Similarly, |Σ

^{3}| = 8

ΣΣ^{*}is a Universal Set.^{*}= Σ^{0}U Σ^{1}U Σ^{2}.......... = {ε} U {a, b} U {aa, ab, ba, bb} = ............. //infinite language.

**References –**

cs.stanford.edu

Wikipedia

## Recommended Posts:

- Theory of Computation | Finite Automata Introduction
- Theory of Computation | Conversion from NFA to DFA
- Theory of Computation | Minimization of DFA
- Theory of Computation | Arden's Theorem
- Theory of Computation | Applications of various Automata
- Theory of Computation | Decidability and Undecidability
- Theory of Computation | Decidability table
- Theory of Computation | L-graphs and what they represent
- Theory of Computation | Pushdown Automata
- Theory of Computation | Chomsky Hierarchy
- Theory of computation | Halting Problem
- Theory of Computation | Pumping Lemma
- Last Minute Notes - Theory of Computation
- Theory of Computation | Relationship between grammar and language
- Theory of computation | Decidable and undecidable problems

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.