My main interest is in theoretical computer science, that is I am very happy to supervise projects in the intersection of Mathematics and Computer Science. For example you could use a computer system like Coq or Agda (I prefer the latter) to formalize some mathematical theory, or verify an algorithm. If you are like me interested in the foundations of formal reasoning have a look at Type Theory (the base of Coq and Agda)- in particular the new book on Homotopy type Theory (or short HoTT) in which I have been involved. In general it is best if we meet and discuss the details.

Having said this - I started as a programmer and still like programming, especially functional programming. Hence, if you like to write some programs in Haskell or (less pure) in F# or CAML, I may be your man.

In general I am also open to supervise other types of project as long as they involve some serious programming and I feel compfortable that I am able to supervise it. I like board games, hence if you are thinking about implementing a multi-player board game online (e.g. Diplomacy) I'd be interested. Also 2-person games like go or chess could be interesting. I have an iphone, hence if you are thinking about a project where we both learn some iphone programming that may be interesting too.

If your project idea is on something like a webpage with a database using php - I may not be the ideal supervisor for you.

Thorsten Altenkirch Last modified: Wed May 4 10:30:47 BST 2005