CSE_Unit 5_ToC_Basic Complexity.pptx
CSE_Unit 5_ToC_Basic Complexity.pptx
CSE ( CET2008B)
TY BTech
Unit V
Basic Introduction to Complexity
Unit V
Basic Introduction of Complexity
Course Objective & Course Outcomes
• Course Objectives:
1. To Study computing machines by describing, classifying and comparing
different types of computational models.
2. Encourage students to study Theory of Computability and Complexity.
• Course Outcomes:
After successful completion of this course students will be able to:
1. Construct finite state machines to solve problems in computing
2. Write mathematical expressions for the formal languages
3. Apply well defined rules for syntax verification
4. Construct and analyze Push Down, Post and Turing Machine for formal
languages
5. Express the understanding of the decidability and Undecidability problems
6. Express the understanding of computational complexity.
Text Books & Reference Books
• Text Books
1. Michael Sipser “Introduction to the Theory of Computation” CENGAGE
Learning, 3rd Edition ISBN-13:978-81-315-2529-6
2. Vivek Kulkarni, “Theory of Computation”, Oxford University Press,
ISBN-13: 978-0-19-808458-7
• Reference Books
1. Hopcroft Ulman, “Introduction To Automata Theory, Languages And
Computations”, Pearson Education Asia, 2nd Edition
2. Daniel. A. Cohen, “Introduction to Computer Theory” Wiley-India,
ISBN:978-81-265-1334-5
3. K.L.P Mishra ,N. Chandrasekaran ,“Theory Of Computer Science (Automata,
Languages and Computation)”, Prentice Hall India,2nd Edition
4. John C. Martin, “Introduction to Language and Theory of Computation”, TMH,
3rd Edition ISBN: 978-0-07-066048-9
5. Kavi Mahesh, “Theory of Computation: A Problem Solving Approach”,
Wiley-India, ISBN: 978-81-265-3311-4
Turing Machine
A Turing Machine is represented by a 7-tuple
T = (Q, Σ, Γ, δ, q0, qaccept, qreject):
Q is a finite set of states
Σ is the input alphabet, where Z0∉ Σ
Γ is the tape alphabet, a superset of Σ; Z0 ∈
Γ
q0 ∈ Q is the start
state
qaccept ∈ Q is the accept
state
Solvable and Semi-Solvable Problems
🙣 Solvable problem: TM when applied to such a problem, always
eventually terminates with the correct “yes” or “no” answer
🙣 A class of all such problems is called as Recursive language
🙣 The mathematical functions that denote these type of problems are called as
Total Recursive Functions
🙣 Simple Examples - multiplication, addition, concatenation and many other
• the halting problem is undecidable over Turing machines. It is one of the first examples of a
decision problem.
• Proof by contradiction
• There is a Turing machine T that will decide the halting
problem.<M> this is the description of Turing machine M
and string W . T write "accept" when M halts on w, and
reject If M does not halts on W
Proof :-Halting problem is undecidable
PC-solution:
Post Correspondence Problem
Post Correspondence Problem
Post Correspondence Problem
Hamiltonian cycle
Difference between N and NP