Overview to
Theory of
Computation
Presented by:
Subrata Paul
M.Tech(CS)
History
Automata Theory: Study of abstract computing
devices (conceptual / theoretical model of
computing hw and sw system), or “machines”
Alan Turing (1912-1954) Studied abstract
machines called Turing machines (1930’s) even
before computers existed.
Noam Chomsky proposes the “Chomsky
Hierarchy” (1950’s) for formal languages
Basic Concepts
An alphabet is a finite, non-empty set of symbols
symbol ∑ (sigma) - denote an alphabet
Examples:
Binary: ∑ = {0,1}
All lower case letters: ∑ = {a, b, c,…, z}
Alphanumeric: ∑ = {a-z, A-Z, 0-9}
A string or word is a finite sequence of symbols chosen from ∑
Empty string is (or “epsilon”)
Length of a string w, denoted by “|w|”, is equal to the number of (non- ) characters in the
string
E.g., x = 010100 |x| = 6
x = 01 0 1 00 |x| = ?
xy = concatentation of two strings x and y
L is a said to be a language over alphabet ∑, only if L ∑*
this is because ∑* is the set of all strings (of all possible length including 0) over the given
alphabet ∑
Examples: Let L be the language of all strings consisting of n 0’s followed by n 1’s:
L = {, 01, 0011, 000111,…}
Chomsky Hierarchy
Chomsk Grammar Automata Languages
y
Type-0 Unrestricted Turing machines Recursive
enumerable
Type-1 Context sensitive Linear bounded Context sensitive
Type-2 Context free PDA Context Free
Type-3 Regular FSM (DFA, NFA, regular
- NFA)
DFA, NFA, - NFA
A DFA is defined by the 5-tuple:
{Q, ∑ , q0,F, δ }
Input: a word w in ∑* w={0101101111}
Question: Is w acceptable by the DFA?
An NFA is also defined by the 5-tuple:
{Q, ∑ , q0,F, δ }
Input: a word w in ∑*
Question: Is w acceptable by the NFA?
• -NFAs are those NFAs with at least one explicit -transition defined.
{Q, ∑ , q0,F, δ }
ECLOSE(q)
Regular Language
Languages for DFA, NFA, - NFA
Described by regular expn – symbols – alphabets
in ∑ , operators concatenation (.) , union(+),
closure(*)
Ex – a* , (a+b)*, (a+b)*aa(a+b)*
Arden’s theorem: R=Q+RP R=QP*
FSM with Output
Moore and Mealy machine
• Moore - {Q, ∑ , Δ, δ ,q0,λ’ } transition and mapping
functions
• Q x ∑→ Q Q to Δ
• Mealy - {Q, ∑ , Δ, δ ,q0,λ’ } transition and
mapping functions
• Q x ∑→ Q Q x ∑→ Δ
• Inter-conversions possible
Minimization of DFA
Dead State – non final
Inaccessible state
Indistinguishable state
Distinguishable state
Myhill – Nerode Theorem
CFG
G=(V,T,P,S) P: α→β
Left linear and Right Linear
Derivation tree – left and right
Derivation – leftmost and rightmost
Ambiguity in CFG
Minimization of CFG – eliminate useless, -
productions, unit productions
CNF: A → BC|a GNF: A→aV|a
PDA
FA not capable – remembering wcw^R
P=(Q, ∑ ,τ, δ ,S,F) δ: (Q X ∑ *X τ*)→ (Q X τ*)
CFG to PDA, PDA to CFG inter-conversions
possible
TM =(Q, ∑ ,τ, δ ,Q0,h) δ: (Q X τ)→ (Q X τ X
{L,R,N})
Thank You