HOME | DEUTSCH | IMPRESSUM | KIT

masters thesis (finished): Simple Verification of Rust Programs via Functional Purification

Imperative programming, and aliasing in particular, represents a major obstacle in formally reasoning about everyday code. By utilizing restrictions the imperative programming language Rust imposes on mutable aliasing, we present a scheme for shallowly embedding a substantial part of the Rust language into the purely functional language of the Lean theorem prover. We use this scheme to verify the correctness of real-world examples of Rust code without the need for special semantics or logics. We furthermore show the extensibility of our transformation by incorporating an analysis of asymptotic runtimes. 

Publications

Publication
Simple Verification of Rust Programs via Functional Purification

Advisors

Department Head
Prof. Gregor Snelting

Students

Former Staff Member
Dr.-Ing. Sebastian Ullrich