Do you want to carry out a PhD in program verification and proof assistants? And help to scale it up to the verification of realistic systems software?
You will be working on the semantics and verification of systems software (libraries for concurrency, efficient data structures, compilers, and/or operating systems) using type systems, separation logic, and proof assistants. As part of this PhD project, you will contribute to one or more topics:
- The type-theoretical foundations and implementation of the Coq proof assistant to make it suitable for the embedding of verification techniques that scale to fully-fledged languages and software.
- The foundations and implementation of new program logics, type systems, and algorithms for interactive and automated verification.
- The semantics of challenging aspects of low-level/systems programming, e.g. concurrency and memory models of languages such as C, Rust, LLVM, and Assembly.
- The application of existing or new techniques to verify challenging systems software.
As a PhD candidate you will use and contribute to the
Iris and
Coq projects. You will be supervised by Robbert Krebbers.
As a PhD candidate you will spend 10% of your time on contributing to teaching, and you will have the opportunity to develop yourself by taking courses, visiting summer schools, etc.
The start of the project is flexible, preferably in autumn 2024. If you have not fully completed your Master's studies but are excited about this position, please do not hesitate to apply or to contact us.