Projects and Assignments in Pure Mathematics

Complexity Theory

This project examines not so much which functions can be computed, or which problems can be 'effectively' solved, as what is the cost of performing this computation or solution in terms of the number of steps taken. This is a major field in theoretical computer science.

The project may include some account of space and time complexity, measures of rate of growth of functions using O- and o-notations, some account of the P=NP problem (one of the millennium problems), with careful definitions of explanations of what these terms mean, and may also discuss algorithms for addition and multiplication of integers, or matrices, sorting and searching, or algorithms for solving problems in graph theory.

Books

A V Aho, J E Hopcroft, and J D Ullman, The design and analysis of computer algorithms, Addison-Wesley, 1974.
M R Garey and D S Johnson, Computers and intractibility: a guide to the theory of NP-completeness, Freeman, 1979
D E Knuth, The art of computer programming, 3rd edition, Addison-Wesley, 1997.
J K Truss, Discrete Mathematics for Computer Scientists, 2nd edition, Pearson, 1999.

Pure projects homepage