Last Minute Notes – Theory of Computation

28 Jun, 2021
See Last Minute Notes on all subjects here.
We will discuss the important key points useful for GATE exams in summarized form. For details you may refer this.
 
Finite Automata: It is used to recognize patterns of specific type input. It is the most restricted type of automata which can accept only regular languages (languages which can be expressed by regular expression using OR (+), Concatenation (.), Kleene Closure(*) like a*b*, (a+b) etc.)
 
Deterministic FA and Non-Deterministic FA: In deterministic FA, there is only one move from every state on every input symbol but in Non-Deterministic FA, there can be zero or more than one move from one state for an input symbol.
Note:
Language accepted by NDFA and DFA are same.
Power of NDFA and DFA is same.
No. of states in NDFA is less than or equal to no. of states in equivalent DFA.
For NFA with n-states, in worst case, the maximum states possible in DFA is 2n
Every NFA can be converted to corresponding DFA.
 Identities of Regular Expression :
Φ + R = R + Φ = RΦ * R = R * Φ = Φε * R = R * ε = Rε* = εΦ* = εε + RR* = R*R + ε = R*
(a+b)* = (a* + b*)* = (a* b*)* = (a* + b)* = (a + b*)* = a*(ba*)* = b*(ab*)*
Moore Machine: Moore machines are finite state machines with output value and its output depends only on present state.Mealy Machine: Mealy machines are also finite state machines with output value and its output depends on present state and current input symbol.  Push Down Automata: Pushdown Automata has extra memory called stack which gives more power than Finite automata. It is used to recognize context free languages.
 
Deterministic and Non-Deterministic PDA: In deterministic PDA, there is only one move from every state on every input symbol but in Non-Deterministic PDA, there can be more than one move from one state for an input symbol.
Note:
Power of NPDA is more than DPDA.
It is not possible to convert every NPDA to corresponding DPDA.
Language accepted by DPDA is subset of language accepted by NPDA.
The languages accepted by DPDA are called DCFL (Deterministic Context Free Languages) which are subset of NCFL (Non Deterministic CFL) accepted by NPDA.
 
Linear Bound Automata: Linear Bound Automata has finite amount of memory called tape which can be used to recognize Context Sensitive Languages.
LBA is more powerful than Push down automata.
 FA < PDA < LBA < TM 
 
Turing Machine: Turing machine has infinite size tape and it is used to accept Recursive Enumerable Languages.
Turing Machine can move in both directions. Also, it doesn’t accept ε .
If the string inserted in not in language, machine will halt in non-final state.
 
Deterministic and Non-Deterministic Turing Machines: In deterministic turing machine, there is only one move from every state on every input symbol but in Non-Deterministic turing machine, there can be more than one move from one state for an input symbol.
Note:
Language accepted by NTM, multi-tape TM and DTM are same.
Power of NTM, Multi-Tape TM and DTM is same.
Every NTM can be converted to corresponding DTM.
 
 
Chomsky Classification of Languages:
A→ρ where A ∈ N
and ρ ∈ (T∪N)*
α →β where α, β ∈ (T∪N)* and α contains atleast 1 non-terminal
Relationship between these can be represented as:
 
Decidable and Undecidable Problems:
A language is Decidable or Recursive if a Turing machine can be constructed which accepts the strings which are part of language and rejects others. e.g.; A number is prime or not is a decidable problem.
A language is Semi–Decidable or Recursive Enumerable if a turing machine can be constructed which accepts the strings which are part of language and it may loop forever for strings which are not part of language.
A problem is undecidable if we can’t construct an algorithms and Turing machine which can give yes or no answer. e.g.; Whether a CFG is ambiguous or not is undecidable.
 Countability :
Set of all strings over any finite alphabet are countable.
Every subset of countable set is either finite or countable.
Set of all Turing Machines are countable.
The set of all languages that are not recursive enumerable is Uncountable.
Marketing
Theory of Computation & Automata
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Boyer-Moore Majority Voting Algorithm
Introduction of Pushdown Automata
Difference between Mealy machine and Moore machine
Construct Pushdown Automata for given languages
Converting Context Free Grammar to Chomsky Normal Form
Conversion from NFA to DFA
Minimization of DFA
Recursive and Recursive Enumerable Languages in TOC
Variation of Turing Machine
Design 101 sequence detector (Mealy machine)