CS3052
Computational Complexity
2024-2025
15
7
SCQF level 9
2
Academic year(s): 2024-2025
SCOTCAT credits : 15
ECTS credits : 7
Level : SCQF level 9
Semester: 2
Planned timetable:
This module introduces Turing machines, non-determinism and pushdown automata, followed by study of decidability, simulation and the Halting problem. It builds upon finite state machines, context-free grammars and big-O notation from second year. The complexity classes P, NP, co-NP, NP-hard, etc., are described via analysis of SAT and graph isomorphism. Strengths and limitations of the abstract approach to complexity are discussed, followed by an in-depth introduction to practical complexity: flops, worst- and average-case analysis, approximate solutions, and case studies.
Pre-requisite(s): Before taking this module you must pass CS2002 and pass CS3050 and ( pass CS2101 or pass CS2001 )
Anti-requisite(s): You cannot take this module if you take MT3852
Weekly contact: 2 lectures (x 11 weeks) and fortnightly tutorial.
Scheduled learning hours: 28
Guided independent study hours: 122
As used by St Andrews: 3-hour Examination = 40%, Coursework = 60%
Re-assessment: 3-hour Examination = 40%, Existing Coursework = 60%