Skip to main content

Educational activities

Members of the Division of Theory and Foundations (FoCS) are involved in a variety of teaching and educational activities related to Algorithms, Data Structures, Complexity Theory, Discrete Mathematics, Logic, Automata and Formal Verification.

Our research aims at providing understanding of fundamental problems arising in Computer Science and to design mathematical tools and better algorithms to solve these problems. In particular, we study the inherent limits which determine what can (and what cannot) be efficiently computed. The method of our research is to consider particular computational problems and, for each problem, (1) to study the limits which determine how quickly the problem can be solved on a computer, and (2) to develop algorithms for solving the problem which are as efficient as possible.

As one of the leading international research groups in Theoretical Computer Science in the United Kingdom, our teaching combines a mix of the standard computer science education in Foundations of Computer Science, Algorithms and Computational Complexity, and Logic, with the cutting edge scientific expertize that bring to the students the most recent advances in this subject. Our aim is to provide our students with an insight into the problems and challenges in theoretical foundations of Computer Science, thereby gaining the skills critical to the modern Computing.


The following is the list of modules currently taught by the members of the Division of Theory and Foundations (FoCS):


The Division of Theory and Foundations (FoCS) participates also in the following more research oriented activities: