PhD student position in compositional verification, Rennes (Frances)
Project RIOT-fp is an Inria Challenge with the objective of developing future-proof operating system libraries for application to IoT: RIOT. Our PhD project is interested in one of the futures of RIOT: RIOT-rs, implemented in Rust. This computing base provides access to a vast ecosystem of analysis, code generation, verification and proof tools. It offers us to rethink a system software validation process that would suit both system programming and verification requirements (as one may expect from using, e.g., a theorem prover). Our project will focus on the development of a modular validation flow by case-studying the core of RIOT's implementation in Rust [riot-rs-core]. We define and exercise this workflow to characterize and validate global requirements ranging from race-condition, deadlock avoidance, priority management and schedulability, and/or memory isolation, faul isolation, information flow control.
The project will be implemented with teams Tea and Celtique at Inria, Rennes, in close collaboration with teams Tribe and Prosecco at Inria, Paris. It requires a Master degree with solid background in proof theory and mathematical logic, programming languages and type theory, as well as motivation and interest in both the implementation and verification of operating systems. Prior knowledge and experiences with both Rust, F*, Coq, Lean will stand out. The project will require weekly multi-center meetings and hence excellent communication and team-working skills in both french and english. Keywords: theorem proving, programming languages, operating systems, formal verification, dependent types, theory of contracts.