0% found this document useful (0 votes)
25 views

Intro To TOC

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views

Intro To TOC

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

CS501

Thery of Computation
Department of CSE Faculty Name: Dr. Santosh Varshney Slide No. 1

What is Theory of Computation ?

• Fundamental questions in computer science: ➢What


is the complexity of a problem – Complexity ➢ What can

be computed and what cannot – Computability

➢What different models of computation machines can do and


can not do - Automata

Department of CSE Faculty Name: Dr. Santosh Varshney Slide No. 2

What is Theory of Computation ?


Complexity Theory:

➢ Complexity theory deals with analysing computational problems in terms of


their time and space requirements.

➢ It classifies problems into different complexity classes, such as P, NP, and NP


complete.

➢ Complexity theory aids in understanding the inherent difficulty of solving


specific problems and guides the development of algorithms with optimal
efficiency.

Department of CSE Faculty Name: Dr. Santosh Varshney Slide No. 3

What is Theory of Computation ?


Computability Theory:

➢ Computability theory focuses on the fundamental question of what can be


computed and what cannot.

➢ It explores the limits of computation by studying Turing machines, recursive


functions, and other models of computation.

➢ Computability theory helps identify solvable problems and those that are
inherently unsolvable.

Department of CSE Faculty Name: Dr. Santosh Varshney Slide No. 4

What is Theory of Computation ?


Automata Theory:

➢ The study of abstract machines and the computational problems that can be
solved using these machines.

➢ It investigates different types of automata, such as finite automata,


pushdown automata, and Turing machines.

➢ Automata theory enables computer scientists to understand how machines


process information and solve computational problems.

➢ Understand and classify formal languages based on their generative power

Department of CSE Faculty Name: Dr. Santosh Varshney Slide No. 5


(A pioneer of automata theory)

Alan Turing (1912-1954)


• Father of Modern
Computer Science • English
mathematician
• Studied abstract machines called
Turing machines even before
computers existed
• Heard of the Turing test?

Department of CSE Faculty Name: Dr. Santosh Varshney Slide


No. 6

Theory of Computation: A
Historical Perspective
1930s • Alan Turing studies Turing machines
• Decidability
• Halting problem

1940-1950s
• “Finite automata” machines studied •
Noam Chomsky proposes the
“Chomsky Hierarchy” for formal
languages

1969 Cook introduces “intractable” problems


or “NP-Hard” problems
Modern computer science: compilers,
1970-
computational & complexity theory evolve

Department of CSE Faculty Name: Dr. Santosh Varshney Slide No. 7


WHAT IS AUTOMATA?
An Automaton (pl. Automata) is an
abstract model of a digital computer.
It has a mechanism for reading input (string
over a given alphabet) from an input file (divided
into cells each holding one symbol).
It can produce output of some form.
It may have a temporary storage device
(consists of unlimited no. of cells each holding
one symbol).
Finally, it has a control unit (can be in any one of
a finite no. of internal states, & can change state in
some defined manner).2

Department of CSE Faculty Name: Dr. Santosh Varshney Slide No. 8


Automata is an abstract model of a digital
computer
Department of CSE Faculty Name: Dr. Santosh Varshney Slide No. 9

You might also like