The time table includes slots for lectures, and slots for tutorials. This division may not be followed exactly: questions will be asked during lectures, and there may be some lecturing during tutorials.
Please read the recommended texts before coming to the lectures.
Week | Topics | Slides |
---|---|---|
1 | Introduction. Injections, surjections and bijections. Countable and uncountable sets. Diagonalisation. The halting problem. Models of computation. The Church-Turing thesis. | 1 |
Inductive definitions, functions defined by primitive recursion, and proofs by structural induction. | 2 | |
2 | Two models of computation: PRF and the recursive functions. | 3 |
3 | Χ: Concrete and abstract syntax; operational semantics; several variants of the halting problem; representing inductively defined sets. | 4 |
4 | Χ-computability. A self-interpreter for χ. Reductions. More problems that are or are not computable. More about coding. | 5 |
5 | Rice’s theorem. Turing machines: Abstract syntax; operational semantics; variants; representing inductively defined sets; Turing-computability. | 6 |
6 | Representing Turing machines. A self-interpreter (a universal Turing machine). The halting problem. A Turing machine that is a χ interpreter. The Post correspondence problem. | 7 |
7 | Repetition (mainly). Course evaluation. | 8 |
Answers to quizzes.