# 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 ).