Sun 20 Oct 2024 14:00 - 14:30 at Pacific A - Papers 2 Chair(s): Jonathan Aldrich

Rust aims to be a safe programming language applicable to systems programming applications. In particular, its type system has strong guardrails to prevent a variety of issues, such as memory safety bugs and data races. However, these guardrails can be sidestepped via the unsafe keyword, allowing more expressive control of memory at the cost of bearing responsibility to prevent undefined behaviour. This motivates a need to verify programs for an absence of safety issues in the presence of unsafe code. Moreover, safety aside, programs also need to be verified for functional correctness, ensuring that they meet their specifications.

In this research proposal, we explore what it means to do Rust verification. Specifically, we explore which properties are worth verifying for Rust; what techniques exist to verify them; and which code is worth verifying. In doing so, we motivate an effort to verify safety properties of the Rust standard library, presenting the relevant challenges along with ideas to address them.

Sun 20 Oct

Displayed time zone: Pacific Time (US & Canada) change

14:00 - 15:30
Papers 2HATRA at Pacific A
Chair(s): Jonathan Aldrich Carnegie Mellon University
14:00
30m
Talk
Surveying the Rust Verification Landscape
HATRA
Alex Le Blanc University of Waterloo, Patrick Lam University of Waterloo
Link to publication
14:30
30m
Talk
Toward a Corpus Study of the Dynamic Gradual Type
HATRA
Dibri Nsofor University of Utah, Ben Greenman University of Utah
Link to publication