TypeDis: A Type System for Disentanglement
Alexandre Moine, Stephanie Balzer, Alex Xu, and Sam Westrick

TL;DR
TypeDis is a novel type system that automatically verifies disentanglement in parallel programs, reducing manual proof effort and ensuring safe memory management through static type checking.
Contribution
It introduces TypeDis, a type system with timestamp annotations supporting polymorphism and subtyping, enabling automatic disentanglement verification in parallel programs.
Findings
TypeDis guarantees disentanglement for well-typed programs.
The system is mechanized and verified in the Rocq proof assistant.
TypeDis supports polymorphism and timestamp subtyping, enhancing flexibility.
Abstract
Disentanglement is a runtime property of parallel programs guaranteeing that parallel tasks remain oblivious to each other's allocations. As demonstrated in the MaPLe compiler and run-time system, disentanglement can be exploited for fast automatic memory management, especially task-local garbage collection with no synchronization between parallel tasks. However, as a low-level property, disentanglement can be difficult to reason about for programmers. The only means of statically verifying disentanglement so far has been DisLog, an Iris-fueled variant of separation logic, mechanized in the Rocq proof assistant. DisLog is a fully-featured program logic, allowing for proof of functional correctness as well as verification of disentanglement. Yet its employment requires significant expertise and per-program proof effort. This paper explores the route of automatic verification via a type…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Logic, programming, and type systems · Distributed systems and fault tolerance
