RustHorn: CHC-based Verification for Rust Programs (full version)

02/20/2020
by   Yusuke Matsushita, et al.
0

Reduction to the satisfiability problem for constrained Horn clauses (CHCs) is a widely studied approach to automated program verification. The current CHC-based methods for pointer-manipulating programs, however, are not very scalable. This paper proposes a novel translation of pointer-manipulating Rust programs into CHCs, which clears away pointers and memories by leveraging ownership. We formalize the translation for a simplified core of Rust and prove its correctness. We have implemented a prototype verifier for a subset of Rust and confirmed the effectiveness of our method.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset