0% found this document useful (0 votes)
214 views18 pages

CS-850: Advanced Theory of Computation: Adnan Rashid

This document provides an overview of the CS-850: Advanced Theory of Computation course to be taught in Spring 2020. It introduces the main topics to be covered in the course, including computability theory, complexity theory, and automata theory. The course objectives are to understand the limitations of computation and how to determine if problems are computationally feasible, infeasible, or impossible to solve. The grading policy and expectations around homework, exams, attendance and academic honesty are also outlined.
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)
214 views18 pages

CS-850: Advanced Theory of Computation: Adnan Rashid

This document provides an overview of the CS-850: Advanced Theory of Computation course to be taught in Spring 2020. It introduces the main topics to be covered in the course, including computability theory, complexity theory, and automata theory. The course objectives are to understand the limitations of computation and how to determine if problems are computationally feasible, infeasible, or impossible to solve. The grading policy and expectations around homework, exams, attendance and academic honesty are also outlined.
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/ 18

CS-850: Advanced

Theory of Computation
(Spring 2020)

Lecture 1
Adnan Rashid

Adnan Rashid Advanced Theory of Computation 1


Course Description
▪ A foundational course in computer science
▪ Purpose of this course is to ask very
fundamental questions about computations

▪ The main questions addressed:


1. What is a computation?
2. What is the exact definition of an algorithm?

Adnan Rashid Advanced Theory of Computation 2


Questions to be
addressed
3. Which problems can be solved computationally?
4. Are there any problems that cannot be solved
computationally?
5. How much resources are needed to solve a
problem?
6. Can we identify problems that can be solved in
principle (given a lot of resources) but cannot be
solved in practice?

Adnan Rashid Advanced Theory of Computation 3


Course Objectives
▪ To recognize the problems that are
computationally feasible, infeasible or
impossible to solve.
▪ To understand the limitations of computation
and how to select the appropriate algorithm for
a given problem.
▪ To use the knowledge of time complexity and
NP‐completeness in problem solving.

Adnan Rashid Advanced Theory of Computation 4


Books
▪ Michael Sipser, Introduction to the Theory of
Computation, 3rd Edition, Cengage Learning,
2013. ISBN:978–1–133–18779–0
▪ Hopcroft, Ullman and Motwani, Introduction
to Automata Theory, Languages, and
Computation, 3rd Edition.

Adnan Rashid Advanced Theory of Computation 5


Tentative Grading Policy

▪ 30% Two One-Hour Exams (OHT)

▪ 15% Quizzes

▪ 05% Assignments

▪ 10% Project

▪ 40% Final Exam

Adnan Rashid Advanced Theory of Computation 6


Tentative Grading Policy

▪ 30% Two One-Hour Exams (OHT)

▪ 15% Quizzes

▪ 15% Assignments

▪ 40% Final Exam

Adnan Rashid Advanced Theory of Computation 7


Homework/Assignment
Policy
▪ All homework assignments must be done individually
or as directed
• May also require uploading a soft-copy on LMS (for
plagiarism check)
▪ Plagiarized submission
• Copying homework of others,
• Solutions copied from the internet
• Solutions copied from the solution manuals

Adnan Rashid Advanced Theory of Computation 8


Homework/Assignment
Policy
▪ Late Submissions
• Late submission will get a 20% penalty up to one day
• 40% penalty up to 2 days (No acceptation after 2 days from
deadline)
• Contact instructor at least 03 days before the deadline, if
case of emergency
▪ Any deviation from the above rule will be considered
cheating and will be subject to the SEECS academic
dishonesty policy
http://seecs.nust.edu.pk/Internal/downloads/downloads/SEECS_Plagiarism_Policy_Dec2010_v1.0.pdf

Adnan Rashid Advanced Theory of Computation 9


Attendance Policy

▪ 75-100% required at the end of semester!

▪ Attendance will be taken at any moment

▪ No compensation for attendance

Adnan Rashid Advanced Theory of Computation 10


About Instructor
▪ Dr. Adnan Rashid, PhD (Formal Methods)

▪ Contact: [email protected]
▪ Web: http://save.seecs.nust.edu.pk/adnanrashid/
▪ Address: System Analysis and Verification (SAVe) Lab,
Opposite Account Office, Ground Floor, PG Block, SEECS
▪ Office Hours: Wednesday and Friday 05:00-06:00pm (By
Appointment)

Adnan Rashid Advanced Theory of Computation 11


Details about Class
MS(CS)-8
Day Time (Venue)

Wednesday 06:00pm-06:50pm (CR # 05)

Friday 07:00pm-07:50pm (CR # 05)

Friday 08:00pm-08:50pm (CR # 05)

▪ Consult LMS for:


• Lecture Notes, Quizzes, Assignments and Project
• Online Feedback
▪ Consult CMS for:
• Attendance and Grades
Adnan Rashid Advanced Theory of Computation 12
Theory of Computation
Theory of Computation (ToC) can be divided into
three areas:
▪ Computability theory
▪ Complexity theory
▪ Automata theory
Linking question:
What are the fundamental capabilities and
limitation of Computers?
Adnan Rashid Advanced Theory of Computation 13
Complexity Theory
▪ To classify problems as easy ones and hard
ones.
▪ Study of how much time/space an algorithm
will take to solve a problem?
▪ For example, a Travelling Salesman Problem
will take millions of years for 50 cities.

Adnan Rashid Advanced Theory of Computation 14


Computability Theory
▪ There are certain problems that cannot be
solved by computers.
▪ Computability theory studies whether a
problem is computable (at the first place)

▪ Example: No general algorithm exist for


solving the Diophantine equations
• (Reading: Hilbert Tenth Problem @ Wikipedia)

Adnan Rashid Advanced Theory of Computation 15


Automata Theory
▪ Deals with definitions and properties of
Mathematical Models of Computations
▪ Two models:
• Finite automaton is used in compilers
• Context Free Grammar used in AI

• Example: Language is regular, if it has a DFA

Adnan Rashid Advanced Theory of Computation 16


Acknowledgement
▪ Michael Sipser, MIT

▪ Konstantin (Costas) Busch, LSU

Adnan Rashid Advanced Theory of Computation 17


Thank you!

Adnan Rashid Advanced Theory of Computation 18

You might also like