As in other branches of applied mathematics and engineering, improvements in the practice of programming require determined and meticulous application of methods of mathematical understanding, calculation and proof.

Recognising this, this full-time, twelve-month MSc has been designed to teach the mathematical principles of specification, design and efficient implementation of both software and hardware.

The MSc is designed to combine theory and practice. It teaches the advanced techniques and ideas that are being developed in application domains (such as graphics, visualisation, and computer security) and the rich and diverse theories that underpin them. These include models of computation and data, and mathematical analysis of programs and algorithms.