Categories: research
Research
Introduction
I work on program verification, formal methods and theorem proving. In general, I am interested in what we can prove about the systems we can build, and what those proofs say about the systems we should build. My current focus is on:
- reasoning directly with operational semantics (see publications)
- weak memory
- parsing
- (verified) filesystems
- tools to support formal definitions, Ott and Lem
- verified computational complexity of real-world algorithm implementations
- (staged) meta-programming
Please look at my publications and software
Past projects
2008-2009 Relaxed memory models, supervised by Matthew Parkinson of Microsoft Research, Cambridge (also in conjunction with Peter Sewell’s group).
2005-2008 NetSem project, formalizing TCP/IP, at the Computer Laboratory, University of Cambridge.
Related posts:
- 2020-05-01 John Whitington PhD viva
- 2020-02-05 On the need for PhD viva chairs
- 2020-01-20 SQLite assumptions, or how to corrupt an SQLite database
- 2019-12-18 VeTSS annual summary
- 2019-08-30 B-tree random write performance
- 2019-08-21 ML'19 Workshop at ICFP: A key-value store for OCaml
- 2018-07-02 Funded PhD places
- 2018-06-14 A typed DSL for parsing
- 2018-05-30 Potential improvements in filesystem performance
- 2018-05-22 First Python program: an Earley parser!
- 2018-02-01 New OCaml library: path resolution
- 2017-09-06 ICFP most influential paper from 10 years ago
- 2017-03-16 tjr-btree: a CoW B-tree library in OCaml
- 2015-04-27 Why operational models?
- 2014-11-26 Isabelle on 64bit ubuntu with 32bit libraries