# Theory of Computation

Automata concept (also acknowledged as Theory Of Computation) is a theoretical department of Computer Science and Mathematics, which mostly offers with the common sense of computation with appreciate to easy machines, referred to as automata.

Automata* allows the scientists to apprehend how machines compute the features and remedy problems. The principal motivation in the back of creating Automata Theory used to be to enhance strategies to describe and analyse the dynamic conduct of discrete systems.

Automata is originated from the phrase “Automaton” which is intently associated to “Automation”.

Now, let’s recognize the primary terminologies, which are essential and regularly used in Theory of Computation.

Symbol: Symbol(often additionally known as character) is the smallest constructing block, which can be any alphabet, letter or any picture.

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

String: String is a finite sequence of symbols from some alphabet. String is normally denoted as w and size of a string is denoted as |w|.
Note: Σ* is set of all feasible strings(often energy set(need no longer be special right here or we can say multi set) of string) So this implies that language is a subset of Σ*.

Empty string is the string with
zero incidence of symbols,
represented as ε.

Number of Strings (of size 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 size n, variety of
strings can be generated = 2n.
Note – If the variety of Σ’s is represented through |Σ|, then range of strings of size n, feasible over Σ is |Σ|n.
Language: A language is a set of strings, chosen from some Σ* or we can say- ‘A language is a subset of Σ* ‘. A language which can be shaped over ‘ Σ ‘ can be Finite or Infinite.