~/talk

Recursive Mutexes in Separation Logic

Talkat RocqPL 2026 · on Saturday, 2026-01-17· [concurrency, software-architecture]
name:Ke Du
links:none on file
links:none on file
links:none on file
links:none on file
slides:none on file

Develops a separation-logic specification for recursive mutex built on the Brick logic and derived from a lower-level logically-atomic spec, with a per-thread holds predicate that stores an acquisition count and an args vector of existential state to preserve information across reentrant borrows. Verifies concrete C++ examples and proves update A, update B and a transfer function (modulo integer overflow), and proves the resource spec against the atomic spec; specs and code are available in the open-source standard-library spec repo.

AI-written summary · about

  1. 0:00Recursive mutexes in C++
  2. 1:25Standard library support in C++
  3. 2:51Separation logic for mutexes
  4. 5:40Recursive mutex differences
  5. 7:48Formalizing recursive mutex
  6. 10:14Preserving info on recursive lock
  7. 11:57Proving mutex operations correct
  8. 12:59Open-source stdlib specs project
  9. 13:43Q&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.