~/talk

Thrust: A Prophecy-Based Refinement Type System for Rust

Talkat PLDI 2025 · 2025-06-16..06-20· [software-architecture]
links:none on file
links:none on file
slides:none on file

A new Rust verifier called Thrust implements a dependent refinement type system plus an inference pipeline that emits Constrained Horn Clauses to a CHC solver, synthesizes inductive invariants for loops and recursion, and uses prophecy variable annotations to propagate mutable-borrow updates back to owners and enable sound strong updates. It ships as a Rustc plugin, runs fully automated or semi-automated with per-function annotations, verifies RustHorn benchmarks plus 32 additional cases, and matches RustHorn’s runtime on most examples.

AI-written summary · about

  1. 0:00Thrust introduction and goals
  2. 1:07Single mutability rule in Rust
  3. 2:53Comparison with verification tools
  4. 3:37Thrust design goals
  5. 4:18Dependent types in Thrust
  6. 6:04Mutation with refinement types
  7. 7:28Challenge of strong updates
  8. 8:10Two typing contexts in Thrust
  9. 9:36Mutable references challenges
  10. 11:01Introducing prophecies
  11. 12:25How prophecies work
  12. 13:47Soundness proof and well-boundedness
  13. 14:30Automation with inference
  14. 15:13Evaluation on benchmarks
  15. 16:40Q&A
~/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.