Durham University
Programme and Module Handbook

Undergraduate Programme and Module Handbook 2012-2013 (archived)

Module COMP3391: THEORETICAL COMPUTER SCIENCE III

Department: Computer Science

COMP3391: THEORETICAL COMPUTER SCIENCE III

Type Open Level 3 Credits 20 Availability Available in 2014/15 onwards Module Cap None. Location Durham

Prerequisites

  • Theory of Computation

Corequisites

  • None

Excluded Combination of Modules

  • None.

Aims

  • The aim of the module is to equip students with the ability to use techniques and methods to efficiency solve fundamental problems in Computer Science and also to identify barriers to efficient solutions.

Content

  • Topics to be selected from:
  • Advanced sorting and searching.
  • Greedy algorithms.
  • Dynamic programming.
  • Network flow algorithms.
  • String algorithms.
  • Introduction to algorithmics for hard problems.
  • Automated reasoning, SAT solving.
  • Core complexity classes.
  • Reductions and completeness.
  • Alternation and the Polynomial-Time Hierarchy.
  • Randomness in computation.

Learning Outcomes

Subject-specific Knowledge:
  • On completion of this module, students will be able to demonstrate:
  • an understanding of the inherent limitations of computation through appreciation of the topic areas
  • an appreciation of computational parameters and models of computation relevant to the efficient solution of problems
  • a knowledge about various important problem solving paradigms.
Subject-specific Skills:
  • On completion of this module, students will be able to demonstrate:
  • an ability to apply techniques and methods from the relevant topics to tackle the computational solution of fundamental problems in Computer Science
  • an ability to conduct review and self-study to further their knowledge beyond the taught material.
Key Skills:
  • On completion of this module, students will be able to demonstrate:
  • an ability to think critically
  • an ability to work with abstract problems
  • an ability to undertake general problem solving.

Modes of Teaching, Learning and Assessment and how these contribute to the learning outcomes of the module

  • Lectures provide the material required to be learned and the application of the theory to practical examples.
  • Coursework identify areas where futher independent study should be conducted.
  • Summative assessments test the knowledge acquired and the students' ability to use this knowledge to solve complex problems.

Teaching Methods and Learning Hours

Activity Number Frequency Duration Total/Hours
lectures 44 2 per week 1 hour 44
problems classes 11 1 per 2 weeks 1 hour 11
preparation and reading 145
Total 200

Summative Assessment

Component: Examination Component Weighting: 66%
Element Length / duration Element Weighting Resit Opportunity
Examination 2 hours 100% No
Component: Coursework Component Weighting: 34%
Element Length / duration Element Weighting Resit Opportunity
Practical work 100% No

Formative Assessment:

Example formative exercises given during the course. Additional revison lectures may be arranged in the modules lecture slots in the 3rd term.


Attendance at all activities marked with this symbol will be monitored. Students who fail to attend these activities, or to complete the summative or formative assessment specified above, will be subject to the procedures defined in the University's General Regulation V, and may be required to leave the University