Final-year projects

I can supervise all sorts of topics, provided they are not too far from my expertise, and, preferably, if they are within my research interests. I have supervised projects on mathematics (both applications of cs to maths, and of maths to cs), models of computation (automata, parsers, regular expressions), graphics (fractals, illumination models, realism), data structures and algorithms, system programming (operating systems, compilers, embedded systems, C, C++, file synchronization), computer aided design, functional programming (Haskell, ML), logic programming (Prolog), computer games, and many other things. (If you want to do a graphical computer game, you should be a very good and confident programmer.) Whatever topic you choose, it has to have scope for doing non-trivial things and using your own imagination and self-learning, in addition to the material you have learned from us.
My current research interests include topological methods in the theory of computation (including topology in higher-type computability theory), algorithmic topology of program types, domains and continuous lattices in analysis and topology , effective and constructive real analysis, exact real-number computation, locale theory, programming language semantics, domain theory, lambda-calculus, functional programming. This may sound daunting, but I have in fact supervised students in this area and they have done rather well.
I should warn you that I take my supervision duties very seriously, and will require weekly (email) reports from all project students. If you tend to leave things to the last minute then you will probably not enjoy working with me.
Martin Escardo
Last modified: Fri Jul 25 17:07:46 BST 2008