F* PoP Up Seminar: Mechanised Verification of an OCaml-style Garbage Collector

20 views
Skip to first unread message

Nikhil Swamy

unread,
Nov 4, 2023, 8:32:49 PM11/4/23
to fstar-mai...@googlegroups.com, Sheera Shamsu
Online meeting on Zoom:

Mechanised Verification of an OCaml-style Garbage Collector


Sheera Shamsu, IIT Madras


Programming languages with managed runtimes often provide memory safety with the help of a garbage collector (GC). GCs are often implemented in an unsafe language like C and utilise low-level memory operations. Bugs in the GC implementation affects the memory safety guarantees of the managed language.

In this work, we present a specification and verification framework for GCs operating over OCaml-style objects. Unlike prior work, our correctness conditions are based on graph reachability, which permits evolution of the GC without having to rewrite the core safety specifications. Our framework is developed in F*, a proof-oriented solver-aided programming language, and its subset Low*, which facilitates extraction of verified C code. Using this framework, we have verified a stop-the-world mark and sweep GC which is compatible with OCaml. Our experimental results illustrates that the extracted verified code performs on par with a handwritten GC implementation.


invite.ics
Reply all
Reply to author
Forward
0 new messages