Course Outline - CMPT 308 - Computability
Information
Subject
Catalog Number
Section
Semester
Title
Instructor(s)
Campus
CMPT
308
D100
2022 Fall (1227)
Computability
Valentine Kabanets
Burnaby Mountain Campus
Calendar Objective/Description
Computability
Instructor's Objectives
This course focuses on the inherent "complexity" of solving problems using a computer. The goal is to understand why some seemingly simple problems cannot be solved on computers and others have no efficient (ie fast) solution. In the course, we will see the formal notions of computers, computability and complexity. At the successful completion of this course students will understand why, for example, computer viruses are so pervasive and why no one will ever write a perfect virus checker. We will see how these concepts are related to logic, in particular, the famous Incompleteness Theorem of Godel. Finally, we will see a few surprising results from modern complexity, in particular, the results making use of randomness in computation.
Prerequisites
see go.sfu.ca
Topics
- Turing Machines as a formalization of the intuitive notion of an algorithm.
- Computability (Does a program exist?): basic computability (checking if a program is in an infinite loop), reducibilities and oracles, the Recursion Theorem (existence of computer viruses).
- Review of Logic and Godel's Incompleteness Theorem.
- Complexity Theory: Non-determinism, the class NP, reductions.
- Randomness in Computation: Interactive Proofs.
- Approximation algorithms and hardness of approximation: Probabilistically Checkable Proofs and the PCP Theorem.
Grading
There will be 4 assignments, 2 midterms and a final examination. The exact grade distribution will be announced at the start of classes.
Students must attain an overall passing grade on the weighted average of exams in the course in order to obtain a clear pass (C- or better).
Required Books
- Introduction to the Theory of Computation, Michael Sipser, Cengage Learning, 2012, 9781133187790, 3rd Edition
Reference Books
- Introduction to Automata Theory, Languages and Computation - 3rd Edition, J.E. Hopcroft , Rajeev Motwani, J.D. Ullman, , Addison Wesley, 2006, 9780321455369
Academic Honesty Statement
Academic honesty plays a key role in our efforts to maintain a high standard of academic excellence and integrity. Students are advised that ALL acts of intellectual dishonesty will be handled in accordance with the SFU Academic Honesty and Student Conduct Policies ( http://www.sfu.ca/policies/gazette/student.html ).