Completed Projects:

See Also:

Interests

I have worked in a wide range of areas in the semantics and logic of computation, including concurrency, domain theory (especially domain theory in logical form), lambda calculus, semantics of programming languages, and abstract interpretation and program analysis. I have played a leading role in the development of game semantics and its applications to the semantics of programming languages, in interaction categories, and in geometry of interaction, and connections with traced monoidal categories and realizability. Over the past decade, I have become increasingly interested in connections between computer science and other scientific disciplines. I believe that the distinctive methods of computer science, above all compositional semantics and logic, have much to offer across a broad sweep of the physical and biological sciences, and to the modelling of complex systems. My first detailed venture into this new territory has been in the field of quantum information and computation.

I have been working on high-level methods for quantum computation and information. I pioneered categorical quantum mechanics with Bob Coecke. More recently, I have been working on a unified sheaf-theoretic approach to non-locality and contextuality. This has led to a number of developments, including a novel classification of mulitpartite entangled states, cohomological characterizations of non-locality and contextuality, a novel characterization of no-signalling involving signed measures (negative probabilities), and a unifying principle for Bell inequalities. There are also striking connections with a number of topics in computer science, including relational database theory, computational complexity and dependence logic. This is ongoing work, with a number of collaborators including Adam Brandenburger, Lucien Hardy, Shane Mansfield, Rui Soares Barbosa, Ray Lal, Phokion Kolaitis, Georg Gottlob, and Jouko Vaananen.

He has played a leading role in the development of game semantics, and its applications to the semantics of programming languages. Other notable contributions include his work on domain theory in logical form, the lazy lambda calculus, strictness analysis, concurrency theory, interaction categories, and geometry of interaction. More recently, he has been working on high-level methods for quantum computation and information.