Module overview
Aims and Objectives
Learning Outcomes
Knowledge and Understanding
Having successfully completed this module, you will be able to demonstrate knowledge and understanding of:
- The relationship between the regular, context-free and recursively enumerable classes of languages, and the state-machines that accept them
- The nature and examples of undecidable problems
- The diagonalisation proof technique
- The complexity of algorithms and problems, and key complexity classes
Subject Specific Intellectual and Research Skills
Having successfully completed this module you will be able to:
- Use polynomial-time reduction to reason about the complexity class of a problem
- Ascertain and prove whether or not a given language is regular
- Analyse the complexity of a given algorithm or problem
- Use the reduction technique to show that a problem is undecidable
- Ascertain and prove whether or not a given language is context-free
Syllabus
Learning and Teaching
Teaching and learning methods
| Type | Hours |
|---|---|
| Preparation for scheduled sessions | 6 |
| Revision | 18 |
| Completion of assessment task | 10 |
| Wider reading or practice | 50 |
| Lecture | 36 |
| Follow-up work | 18 |
| Tutorial | 12 |
| Total study time | 150 |
Resources & Reading list
Textbooks
J. Hein (2002). Discrete Structures, Logic and Computability. Jones and Bartlett.
A.J.G. Hey (1996). Feynman Lectures on Computation. Addison Wesley.
N.D. Jones (1999). Computability and Complexity. MIT Press.
D.C. Kozen (1999). Automata and Computability. Springer.
M. Sipser (1997). Introduction to the Theory of Computation. PWS.
D. Cohen (1996). Introduction to Computer Theory. Wiley.
A.K. Dewdney (2001). The (new) Turing Omnibus. Henry Holt.
J. Barwise and J. Etchemendy (1993). Turing's World. Stanford.
D. Harel (1992). Algorithmics: The Spirit of Computing. Addison Wesley.
J. Gruska (1996). Foundations of Computing. Thomson.
Assessment
Assessment strategy
This module is assessed by a combination of problem sheets and a final assessment in the form of a written examination.Summative
This is how we’ll formally assess what you have learned in this module.
| Method | Percentage contribution |
|---|---|
| Examination | 90% |
| Problem Sheets | 10% |