Uniqueness is Separation

๐Ÿ“… 2026-02-06
๐Ÿ“ˆ Citations: 0
โœจ Influential: 0
๐Ÿ“„ PDF
๐Ÿค– AI Summary
A key challenge in designing efficient and verifiable systems lies in reconciling the value independence guarantees of uniqueness types with the mutable semantics of separation logic in programs that support local mutability. This work proposes a novel approach that precisely encodes the value independence ensured by uniqueness types as assertions within separation logic, thereby bridgingโ€” for the first timeโ€”the semantic gap between functional reasoning and imperative verification. The method preserves the efficiency of in-place updates while enabling end-to-end formal verification of programs that mix immutability and mutability. Furthermore, it facilitates concise and reliable verification of uniqueness-typed programs featuring escape mechanisms, as demonstrated through implementation in a proof assistant.

Technology Category

Application Category

๐Ÿ“ Abstract
Value independence is enormously beneficial for reasoning about software systems at scale. These benefits carry over into the world of formal verification. Reasoning about programs algebraically is a simple affair in a proof assistant, whereas programs with unconstrained mutation necessitate much more complex techniques, such as Separation Logic, where invariants about memory safety, aliasing, and state changes must be established by manual proof. Uniqueness type systems allow programs to be compiled to code that uses mutation for efficiency, while retaining a semantics that enjoys value independence for reasoning. The restrictions of these type systems, however, are often too onerous for realistic software. Thus, most uniqueness type systems include some"escape hatch"where the benefits of value independence for reasoning are lost, but the restrictions of uniqueness types are lifted. To formally verify a system with such mixed guarantees, the value independence guarantees from uniqueness types must be expressed in terms of imperative, mutable semantics. In other words, we ought to express value independence as an assertion in Separation Logic.
Problem

Research questions and friction points this paper is trying to address.

uniqueness types
value independence
Separation Logic
formal verification
mutable semantics
Innovation

Methods, ideas, or system contributions that make the work stand out.

Uniqueness Types
Value Independence
Separation Logic
Formal Verification
Mutable Semantics
๐Ÿ”Ž Similar Papers
No similar papers found.