Ravencheck: Effectively-Propositional Reasoning for Rust
This program is tentative and subject to change.
SMT-based automated verification is a promising approach for ensuring software correctness, but it often suffers from unpredictability and proof instability due to the undecidability of the underlying logic. While tools like Liquid Haskell or F* provide automation, they either restrict logical expressivity to ensure decidability or sacrifice decidability and predictability for richer logic. In this paper, we present Ravencheck, a verification tool for Rust programs. Ravencheck occupies a unique design space: it supports specifications within an expressive fragment of Higher-Order Logic (HOL) while guaranteeing decidable verification outcomes. To achieve this, Ravencheck automatically encodes high-level Rust programs into the Extended Effectively Propositional (EEPR) fragment of first-order logic with relational abstraction. Ravencheck builds on prior EEPR-based modeling languages (e.g., Ivy) by integrating with the standard Rust toolchain. This integration supports a one-language workflow in which verification conditions are expressed using the same purely functional Rust syntax as the verified executable code, rather than introducing a separate modeling language.
This program is tentative and subject to change.
Tue 16 JunDisplayed time zone: Mountain Time (US & Canada) change
09:00 - 12:00 | |||
09:00 10mDay opening | Welcome and Opening Remarks SOAP | ||
09:10 60mKeynote | How Context-Sensitive Static Analysis Led to the Best Smart Contract Decompiler SOAP Yannis Smaragdakis University of Athens | ||
10:10 20mBreak | Coffee Break SOAP | ||
10:30 20mTalk | Exploring Locally Bounded Translation Validation SOAP Alborz Jelvani Rutgers University, Richard P. Martin Rutgers University, Santosh Nagarakatte Rutgers University | ||
10:50 20mTalk | Ravencheck: Effectively-Propositional Reasoning for Rust SOAP Kunha Kim University of Colorado Boulder, Nicholas V. Lewchenko University of Colorado Boulder, Bor-Yuh Evan Chang University of Colorado Boulder & Amazon, Gowtham Kaki University of Colorado at Boulder | ||
11:10 20mTalk | Compile-Time Java Stream Fusion via mapMulti SOAP | ||
11:30 20mTalk | Conditional Execution of Transpiler Passes Based on Per-Script Feature Detection SOAP Rishipal Singh Bhatia Google | ||