~/talk

RustHornBelt: A Semantic Foundation for Functional Verification of Rust Programs with Unsafe Code

Talkat PLDI 2022 · 2022-06-13..06-17· [rust]
slides:none on file

RustHornBelt gives a formal, mechanized bridge between RustHorn-style automatic specs and RustBelt’s unsafe-code semantics: a Coq model built on Iris separation logic and a predicate-transformer type-spec system, plus a Coq mechanization proving soundness for RustHorn specs linked to unsafe implementations. It implements and verifies key APIs (Vec push and index_mut, Mutex, Cell) using parametric prophecies (a clairvoyant monad) to model mutable borrows, resolves prophecies at borrow release, and reports completed machine-checked proofs that the verified unsafe APIs soundly compose with automatic verification.

AI-written summary · about

  1. 0:00Intro
  2. 0:37Our High-level Goal: Rust Verification
  3. 1:38Two Lines of Prior Work on Rust Verification
  4. 3:39Our Work, RUSTHORNBELT
  5. 4:35Motivating Example for RUSTHORN
  6. 6:11RUSTHORN – Automated Verification
  7. 8:21Type-Spec System
  8. 9:01RUSTHORN-style Representation of Rust Objects
  9. 11:40RUSTHORN's Spec for push
  10. 12:40RUSTHORN's Spec for index_mut
  11. 13:53Parametric Prophecies
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.