Refinement types: A tutorial

R Jhala, N Vazou - Foundations and Trends® in …, 2021 - nowpublishers.com
Refinement types enrich a language's type system with logical predicates that circumscribe
the set of values described by the type. These refinement predicates provide software …

Verus: Verifying rust programs using linear ghost types

A Lattuada, T Hance, C Cho, M Brun… - Proceedings of the …, 2023 - dl.acm.org
The Rust programming language provides a powerful type system that checks linearity and
borrowing, allowing code to safely manipulate memory without garbage collection and …

[PDF][PDF] Resources, concurrency, and local reasoning

PW O'hearn - Theoretical computer science, 2007 - Citeseer
Resources, Concurrency and Local Reasoning Page 1 To appear in Theoretical Computer
Science Resources, Concurrency and Local Reasoning ∗ Peter W. O’Hearn Queen Mary …

BI as an assertion language for mutable data structures

SS Ishtiaq, PW O'hearn - Proceedings of the 28th ACM SIGPLAN …, 2001 - dl.acm.org
Reynolds has developed a logic for reasoning about mutable data structures in which the
pre-and postconditions are written in an intuitionistic logic enriched with a spatial form of …

Checking interference with fractional permissions

J Boyland - International Static Analysis Symposium, 2003 - Springer
We describe a type system for checking interference using the concept of linear capabilities
(which we call “permissions”). Our innovations include the concept of “fractional” …

RefinedC: automating the foundational verification of C code with refined ownership types

M Sammler, R Lepigre, R Krebbers… - Proceedings of the …, 2021 - dl.acm.org
Given the central role that C continues to play in systems software, and the difficulty of
writing safe and correct C code, it remains a grand challenge to develop effective formal …

Observational determinism for concurrent program security

S Zdancewic, AC Myers - 16th IEEE Computer Security …, 2003 - ieeexplore.ieee.org
Noninterference is a property of sequential programs that is useful for expressing security
policies for data confidentiality and integrity. However, extending noninterference to …

[BUCH][B] Advanced topics in types and programming languages

BC Pierce - 2024 - books.google.com
A thorough and accessible introduction to a range of key ideas in type systems for
programming language. The study of type systems for programming languages now touches …

Flow-sensitive type qualifiers

JS Foster, T Terauchi, A Aiken - Proceedings of the ACM SIGPLAN 2002 …, 2002 - dl.acm.org
We present a system for extending standard type systems with flow-sensitive type qualifiers.
Users annotate their programs with type qualifiers, and inference checks that the …

Enforcing high-level protocols in low-level software

R DeLine, M Fähndrich - Proceedings of the ACM SIGPLAN 2001 …, 2001 - dl.acm.org
The reliability of infrastructure software, such as operating systems and web servers, is often
hampered by the mismanagement of resources, such as memory and network connections …