Wed 6 Dec 2023 16:30 - 16:45 at Golden Gate C2 - Formal Verification Chair(s): Christoph Treude

Property-based testing (PBT) is often used by Rust developers to test functional correctness properties of their code. Since PBT uses randomized testing, its guarantees are limited: it can detect bugs but provides no formal guarantees of correctness. The Kani Rust Verifier uses the CProver verification framework to verify Rust code, given a specification in a Kani verification harness. However, developers must manually write Kani harnesses while avoiding model-checking-specific pitfalls like large memory usage or
timeouts.

We introduce propproof, a library that automatically converts proptest PBT harnesses into Kani harnesses which can be formally validated using Kani. We discuss the data-structure models we developed in order to optimize performance of these Kani verification harnesses. Using this library, we identified and fixed 2 issues in PROST, an AWS-developed protocol-buffer library with nearly 40 million downloads. propproof is being used in PROST’s CI. Our evaluation on 42 PBT harnesses from top-ranked open-source Rust libraries demonstrates propproof enabling the use of Kani to verify complex, user-defined properties on existing code with minimal user intervention.

Wed 6 Dec

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

16:00 - 18:00
16:00
15m
Talk
State Merging with Quantifiers in Symbolic Execution
Research Papers
David Trabish Tel Aviv University, Noam Rinetzky Tel Aviv University, Sharon Shoham Tel Aviv University, Vaibhav Sharma University of Minnesota
DOI Pre-print Media Attached
16:15
15m
Talk
Towards Strengthening Formal Specifications with Mutation Model Checking
Ideas, Visions and Reflections
Maxime Cordy SnT, University of Luxembourg, Sami Lazreg SnT, University of Luxembourg, Axel Legay Université Catholique de Louvain, Belgium, Pierre Yves Schobbens University of Namur
Media Attached
16:30
15m
Talk
PropProof: Free Model-Checking Harnesses from PBT
Industry Papers
Yoshiki Takashima Carnegie Mellon University
DOI Media Attached
16:45
15m
Talk
Engineering a Formally Verified Automated Bug Finder
Research Papers
Arthur Correnson CISPA Helmholtz Center for Information Security, Dominic Steinhöfel CISPA Helmholtz Center for Information Security
Media Attached
17:00
15m
Talk
LightF3: A Lightweight Fully-Process Formal Framework for Automated Verifying Railway Interlocking Systems
Industry Papers
Yibo Dong East China Normal University; Shanghai Trusted Industrial Control Platform, Xiaoyu Zhang East China Normal University, Yicong Xu East China Normal University, Chang Cai East China Normal University, Yu Chen East China Normal University, Weikai Miao East China Normal University, Jianwen Li East China Normal University, China, Geguang Pu East China Normal University
DOI Media Attached
17:15
15m
Talk
Speeding up SMT Solving via Compiler Optimization
Research Papers
Benjamin Mikek Georgia Institute of Technology, Qirun Zhang Georgia Institute of Technology
Media Attached
17:30
15m
Talk
[Remote] Detecting Atomicity Violations in Interrupt-Driven Programs via Interruption Points Selecting and Delayed ISR-Triggering
Research Papers
Bin Yu School of Computer Science and Technology, Xidian University, Cong Tian Xidian University, Hengrui Xing School of Computer Science and Technology, Xidian University, Zuchao Yang School of Computer Science and Technology, Xidian University, Jie Su School of Computer Science and Technology, Xidian University, Xu Lu School of Computer Science and Technology, Xidian University, Jiyu Yang School of Computer Science and Technology, Xidian University, Liang Zhao School of Computer Science and Technology, Xidian University, Xiaofeng Li Beijing Institute of Control Engineering, Zhenhua Duan Xidian University
Media Attached
17:45
7m
Talk
[Remote] P4b: A Translator from P4 Programs to Boogie
Demonstrations
Chong Ye Tsinghua University, Fei He Tsinghua University
Media Attached