< Retour au sommaire
Melocoton: A Program Logic for Verified Interoperability Between OCaml and C
Armaël Guéneau le
Lieu: Amphi 33
Suivre en visio
Abstract
In recent years, there has been tremendous progress on developing
program logics for verifying the correctness of programs in a rich and
diverse array of languages. Thus far, however, such logics have assumed
that programs are written entirely in a single programming language. In
practice, this assumption rarely holds since programs are often composed
of components written in different programming languages, which interact
with one another via some kind of foreign function interface (FFI).
In this talk, I will present our first steps towards the goal of
developing program logics for multi-language verification. Specifically,
I will present Melocoton, a multi-language program verification system
for reasoning about OCaml, C, and their interactions through the OCaml
FFI. Melocoton consists of the first formal semantics of (a large subset
of) the OCaml FFI—previously only described in prose in the OCaml
manual—as well as the first program logic to reason about the
interactions of program components written
in OCaml and C.
Melocoton is fully mechanized in Coq on top of the Iris separation logic
framework.